- 博客(56)
- 资源 (4)
- 收藏
- 关注
原创 中文分词的原理——正、逆向最大长度匹配法、处理未登录字符串(JAVA)
中文分词的原理——正、逆向最大长度匹配法、处理未登录字符串(JAVA)中文分词就是对中文断句,这样能消除文字的部分歧义。除了基本的分词功能,为了消除歧义还可以进行更多的加工。中文分词可以分成如下几个子任务:分词:把输入的标题或者文本内容等分成词。词性标注(POS):给分出来的词标注上名词或动词等词性。词性标注可以部分消除词的歧义,例如“行”作为量词和作为形容词表示的意思不一样。语义标注...
2019-02-26 14:36:29
1155
1
原创 文本分类入门(五)——关于开方检验和信息增益特征选择算法
文本分类入门(五)——关于开方检验和信息增益特征选择算法1.开方检验 前文提到过,除了分类算法以外,为分类文本作处理的特征提取算法也对最终效果有巨大影响,而特征提取算法又分为特征选择和特征抽取两大类,其中特征选择算法有互信息,文档频率,信息增益,开方检验等等十数种,这次先介绍特征选择算法中效果比较好的开方检验方法。大家应该还记得,开方检验其实是数理统计中一种常用的检验两个变量...
2019-01-31 12:45:14
532
原创 文本分类入门(三)——相关概念总结
文本分类入门(三)——相关概念总结学习方法:使用样例(或称样本,训练集)来合成计算机程序的过程称为学习方法[22]。监督学习:学习过程中使用的样例是由输入/输出对给出时,称为监督学习[22]。最典型的监督学习例子就是文本分类问题,训练集是一些已经明确分好了类别文档组成,文档就是输入,对应的类别就是输出。非监督学习:学习过程中使用的样例不包含输入/输出对,学习的任务是理解数据产生的过程 [...
2019-01-31 12:40:10
561
原创 文本分类入门(二)——训练
文本分类入门(二)——训练1.定义训练,简单的说就是让计算机从给定的一堆文档中自己学习分类的规则。开始训练之前,再多说几句关于VSM这种文档表示模型的话。举个例子,假设说把我正在写的“文本分类入门”系列文章的第二篇抽出来当作一个需要分类的文本,则可以用如下的向量来表示这个文本,以便于计算机理解和处理。w2=(文本,5,统计学习,4,模型,0,……)w_{2}=(文本,5,统计学习,4,...
2019-01-31 12:38:59
1071
原创 文本分类入门(一)——定义、方法、分类、统计学习方法
文本分类入门(一)——定义、方法、分类、统计学习方法1. 文本分类问题的定义 一个文本(以下基本不区分“文本”和“文档”两个词的含义)分类问题就是将一篇文档归入预先定义的几个类别中的一个或几个,而文本的自动分类则是使用计算机程序来实现这样的分类。通俗点说,就好比你拿一篇文章,问计算机这文章要说的究竟是体育,经济还是教育,计算机答不上就揍它。注意这个定义当中着重强调的两个事...
2019-01-31 12:35:06
990
1
原创 TF-IDF和TextRank算法抽取关键词源码分析
TF-IDF和TextRank算法抽取关键词源码分析jieba分词的关键词抽取功能,是在jieba/analyse目录下实现的。其中,__ init__.py主要用于封装jieba分词的关键词抽取接口;tfidf.py实现了基于TF-IDF算法抽取关键词;textrank.py实现了基于TextRank算法抽取关键词。1.TF-IDF算法基于TF-IDF算法抽取关键词的主调函数...
2019-01-23 19:53:30
1807
2
原创 jieba-基于TextRank关键词提取的实现
jieba-基于TextRank关键词提取的实现对每个句子进行分词和词性标注处理过滤掉除指定词性外的其他单词,过滤掉出现在停用词表的单词,过滤掉长度小于2的单词将剩下的单词中循环选择一个单词,将其与其后面4个单词分别组合成4条边。例如:[‘有’,‘媒体’, ‘曝光’,‘高圆圆’, ‘和’, ‘赵又廷’,‘现身’, ‘台北’, ‘桃园’,‘机场’,‘的’, ‘照片’]对于‘媒体‘这个单...
2019-01-23 19:51:39
2399
2
原创 TextRank算法获取文本关键词
TextRank算法获取文本关键词1.PageRank在了解TextRank前,首先一定要知道PageRank,实质上个人认为可以把TextRank当做PageRank2.0。谷歌的两位创始人的佩奇和布林,借鉴了学术界评判学术论文重要性的通用方法,“那就是看论文的引用次数”。由此想到网页的重要性也可以根据这种方法来评价。于是PageRank的核心思想就诞生了:如果一个网页被很多其他网页链...
2019-01-23 19:48:23
1072
原创 jieba-基于 TF-IDF 算法的关键词抽取
jieba-基于 TF-IDF 算法的关键词抽取通过上述三篇文章的介绍(详见其他的博客),接下来将对TF-IDF算法的实现进行介绍。jieba.analyse.extract_tags(sentence, topK=20, withWeight=False, allowPOS=())sentence 为待提取的文本topK 为返回几个 TF/IDF 权重最大的关键词,默认值为 20...
2019-01-20 20:31:46
5947
3
原创 TF-IDF与余弦相似性的应用(三):自动摘要
TF-IDF与余弦相似性的应用(三):自动摘要有时候,很简单的数学方法,就可以完成很复杂的任务。仅仅依靠统计词频,就能找出关键词和相似文章,这两部分就是很好的例子。虽然它们算不上效果最好的方法,但肯定是最简便易行的方法。本文讨论如何通过词频,对文章进行自动摘要(Automatic summarization)。1.分簇如果能从3000字的文章,提炼出150字的摘要,就可以为读者节省大量...
2019-01-20 20:21:26
369
原创 TF-IDF与余弦相似性的应用(二):找出相似文章
TF-IDF与余弦相似性的应用(二):找出相似文章今天,我们再来研究另一个相关的问题。有些时候,除了找到关键词,我们还希望找到与原文章相似的其他文章。比如,"百度新闻"在主新闻下方,还提供多条相似的新闻。为了找出相似的文章,需要用到"余弦相似性"(cosine similiarity)。为了能够更好的理解这个概念,我们先从句子着手。句子A:我喜欢看电视,不喜欢看电影句子B:我不喜欢看电视...
2019-01-20 20:14:47
331
原创 TF-IDF与余弦相似性的应用(一):自动提取关键词
TF-IDF与余弦相似性的应用(一):自动提取关键词 如何完全不加人工干预,正确做到从一篇很长的文章中提取它的关键词(Automatic Keyphrase extraction)? 这个问题涉及到数据挖掘、文本处理、信息检索等很多计算机前沿领域,但是出乎意料的是,有一个非常简单的经典算法,可以给出令人相当满意的结果,这就是我今天想要介绍的TF-IDF算法。...
2019-01-20 20:11:38
397
原创 jieba——分词、添加词典、词性标注、Tokenize
jieba——分词、添加词典、词性标注、Tokenize1.分词jieba.cut 方法接受三个输入参数: 需要分词的字符串;cut_all 参数用来控制是否采用全模式;HMM 参数用来控制是否使用 HMM 模型jieba.cut_for_search 方法接受两个参数:需要分词的字符串;是否使用 HMM 模型。该方法适合用于搜索引擎构建倒排索引的分词,粒度比较细待分词的字符串可以是 ...
2019-01-16 21:51:53
18630
1
原创 基于Python的jieba中文分词包的安装
基于Python的jieba中文分词包的安装“结巴”中文分词:做最好的 Python 中文分词组件1.特点支持三种分词模式:精确模式,试图将句子最精确地切开,适合文本分析;全模式,把句子中所有的可以成词的词语都扫描出来, 速度非常快,但是不能解决歧义;搜索引擎模式,在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎分词。支持繁体分词支持自定义词典MIT 授...
2019-01-16 21:41:55
1644
1
原创 中文分词工具jieba中的词性类型
中文分词工具jieba中的词性类型jieba为自然语言语言中常用工具包,jieba具有对分词的词性进行标注的功能,词性类别如下:Ag形语素形容词性语素。形容词代码为 a,语素代码g前面置以A。a形容词取英语形容词 adjective的第1个字母。ad副形词直接作状语的形容词。形容词代码 a和副词代码d并在一起。an名形词具有名词功能的形容词。形容词...
2019-01-16 21:34:28
508
1
原创 Tomcat安装及配置教程
Tomcat安装及配置教程1.TomcatWeb服务器可以解析(handles)HTTP协议。当Web服务器接收到一个HTTP请求(request),会返回一个HTTP响应 (response),例如送回一个HTML页面。为了处理一个请求(request),Web服务器可以响应(response)一个静态页面或图片, 进行页面跳转(redirect),或者把动态响应(dynamic resp...
2019-01-13 18:17:40
63909
12
原创 JAVA——贪吃蛇
使用JAVA制作一个贪吃蛇小游戏1.要求本实例用Applet实现4种级别的玩法,可以通过方向键控制蛇的运动来靠近前面的食物并吃掉食物,当碰到墙壁时作为游戏失败。2.原理实现4个级别,分别为 PRIMARY(初级)、 INTERMEDIATE(中级)、 SENIOR(高级)和 EXTRA(特级),选择级别进入游戏界面。方向键用来控制蛇的运动。小蛇向着食物的方向前进,如果不小心碰到墙壁则游...
2019-01-11 21:29:53
669
1
原创 JAVA——CBC方式的解密与加密
CBC方式的解密与加密一、创建对称密钥现代密码算法的过程非常复杂,加密和解密使用相同的密钥,称为对称密钥算法。Java中已经提供了常用的加密算法,我们不需要了解算法的细节就可以直接使用这些算法实现加密。每一种算法所用的密钥都有所不同,本实例演示如何运用Java中提供的方法创建对称密钥,并通过对象序列化方式保存在文件中。1.原理首先获取密钥生成器,然后密钥的生成,最后对密钥进行保存。2....
2018-12-04 15:22:35
3557
原创 JAVA——一个简单的加密和解密程序(凯撒密码)
一个简单的加密和解密程序(凯撒密码)1.凯撒密码凯撒密码是罗马扩张时期朱利斯·凯撒( Julius Caesar)创造的,用于加密通过信使传递的作战命令。加密的过程是将字母表中的字母移动一定位置,从而实现文本的加密。如果将字母表中的字母向右移动2位,则字母A将变为C,字母B将变为D,以此类推,一个明文字符串Hello就被加密成Jgnq。之后解密,就会返回原字符串。这里,移动的位数2是加密和解...
2018-10-23 20:33:06
16788
1
原创 JAVA——多线程(碰撞的球)
多线程(碰撞的球)1.要求本实例运用多线程控制球的运动,通过窗口中的滑条,对球的大小和颜色进行选择后,随机从窗口左右两方择一进入,小球在遇到障碍或边界后会折回。2.原理多线程是为了使得多个线程并行地工作以完成多项任务,以提高系统的效率。线程是在同一时间需要完成多项任务的时候被实现的。碰撞的小球运用多线程实现,球的运动速度随着时间的变动可能加快,这也是体现多线程的好处之一。从左右两侧出...
2018-10-20 16:49:05
931
原创 JAVA—— 运用ArrayList实现逻辑推理题(谁养鱼)
运用ArrayList实现逻辑推理题(谁养鱼)1.穷举法穷举法的基本思想是根据题目的部分条件确定答案的大致范围,并在此范围内对所有可能的情况逐一验证,直到全部情况验证完毕。若某个情况验证符合题目的全部条件,则为本问题的一个解;若全部情况验证后都不符合题目的全部条件,则本题无解。2.谁养鱼穷举的速度比用笔还慢,《谁养鱼》是爱因斯坦在20世纪初出的谜语,他说世界上有百分之98的人答不出来。你...
2018-10-18 13:10:52
864
原创 JAVA——点对面通信(Socket基于TCP/IP协议)
点对面通信(Socket基于TCP/IP协议)1.要求大多情况下,网络通信经常需要多个客户机同一个服务器进行通信,如FTP服务器是同时接收多个客户访问的服务器。本例介绍点对面通信,即一个服务器监听多个客户端的请求的通信。2.原理创建多客户连接的Sockets通信方式是在服务器端创建客户连接请求的监听线程,一且客户端发起请求,则服务器端创建用于与此客户端通信的线程和Socket,服务器把...
2018-10-16 16:29:53
1136
原创 JAVA Applet——绘制心形曲线
绘制心形曲线1.要求非常有名的笛卡尔曲线数学公式:(x2+y2−2ax)2=4a2(x2+y2)(x^{2}+y^{2}-2ax)^{2}=4a^{2}(x^{2}+y^{2})(x2+y2−2ax)2=4a2(x2+y2) 即心形曲线,本例通过Applet绘制出笛卡尔曲线。2.实现过程笛卡尔曲线是一个圆在同样半径的圆周上滚动,在滚动的过程中一定会形成轨迹曲线。它的数学方程为x=a(2c...
2018-10-09 15:34:00
2057
1
原创 JAVA——求出指定范围内所有的质数
求出指定范围内所有的质数1.要求在窗口输出指定范围内所有的质数,并对所有输出的质数个数进行计数。2.质数在所有比1大的整数中,除了1和它本身以外,不再有别的因数,这种整数叫做质数或素数。还可以说成质数只有1和它本身两个约数。3.实现过程具体做法是:先把N个自然数按次序排序起来。1不是质数,也不是合数,要划去。第二个数是质数留下来,而把2后面的所有能被2整除的数都划去。2后面第一个没划...
2018-10-09 15:02:30
7565
1
原创 JAVA——实现杨辉三角的指定行数输出
实现杨辉三角的指定行数输出1.要求杨辉三角是一个由数字排列的三角形数表,此方法介绍如何实现控制台输出杨辉三角形。2.杨辉三角杨辉三角最本质的特征是:除两侧元素均为1以外,其余每个位置上的元素值为其正上方元素与左上角元素之和,用数组来描述则为:a[i][j]=a[i−1][j−1]+a[i+1][j]a[i][j]=a[i-1][j-1]+a[i+1][j]a[i][j]=a[i−1][...
2018-10-07 01:13:33
2856
原创 拓展——各类用于测试的API接口整理
API接口整理API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。1.APIWindows系统除了协调应用程序的执行、内存的分配、系统资源的管理外,同时他也是一个很大的服务中心。调用这个服务中心的各种服务(每一种服务...
2018-10-06 00:05:01
2255
1
原创 JAVA——建立HTTP通信(GET/POST方式)
建立HTTP通信(GET/POST方式)1.要求此程序可以建立HTTP通信,以GET方式和POST方式向WEB服务器提交信息,并接收WEB服务器返回的响应。2.GET和POST请求GET请求GET查询字符串(名称/值对)是在 GET 请求的 URL 中发送的:GET 请求可被缓存GET 请求保留在浏览器历史记录中GET 请求可被收藏为书签GET 请求不应在处理敏感数据时使用...
2018-10-06 00:02:02
2979
原创 JAVA——基于UDP协议的文本聊天程序
基于UDP协议的文本聊天程序1.要求使用JAVA完成一个基于TCP协议的文本聊天程序,建立TCP客户端套接字,分别为服务端和客户端,并使两端可以互联。2.UDP协议在UDP协议中,没有TCP中所谓的服务器端和客户端,而是有数据的发送端和接收端。也就是说UDP发送数据就好像发电报一般,对于一段需要发送的数据,每次都生成一个“数据包”实例,然后发出去。3.语法与UDP相关的类,除了在本人...
2018-10-04 20:48:35
2342
原创 JAVA——基于TCP协议的文本聊天程序
基于TCP/IP网络的文本聊天程序1.要求使用JAVA完成一个基于TCP/IP网络的文本聊天程序,建立TCP客户端套接字,分别为服务端和客户端,并使两端可以互联。2.TCP协议在TCP协议中,有服务器端(Server端)和客户端(Client端)的概念。TCP传输数据的过程是:服务器端程序在本机的某个端口上监听,等待客户端连接到此端口,一旦客户端连接到了此端口,服务器端和客户端就可以进行...
2018-09-27 20:29:16
1658
1
原创 JAVA——编写时钟程序
编写时钟程序1.要求创建一个窗口并实时显示当前时间,每1秒时钟内容更新一次,在界面中包含数字式和表盘式的显示。2.语法Java.util.Calendar包的使用绘制时钟图形GregorianCalendar()的用法Calender now=new GregorianCalendar();绘制图形Graphics2D g2D=(Graphics2D)g;,Graphics强制...
2018-09-23 21:42:26
10378
原创 拓展——Microsoft Office Visio下载
Microsoft Office Visio下载Office Visio 是office软件系列中的负责绘制流程图和示意图的软件,是一款便于IT和商务人员就复杂信息、系统和流程进行可视化处理、分析和交流的软件。使用具有专业外观的 Office Visio 图表,可以促进对系统和流程的了解,深入了解复杂信息并利用这些知识做出更好的业务决策。标准图表使用现有的数据,您可以生成许多种类的 Vi...
2018-09-22 17:08:05
4022
121
原创 JAVA——基本字符操作(四)
基本字符操作(四)本文通过一些实例,介绍了与字符串有关的数值转换、字节数组转换和格式化字符串。读者若想查阅其他类型的操作,可参考以下博客。两个字符集合间的对比:https://blog.csdn.net/Atishoo_13/article/details/82667128相加、比较、包含和替换:https://blog.csdn.net/Atishoo_13/article/detai...
2018-09-21 21:53:34
532
原创 JAVA——基本字符操作(三)
基本字符操作(三)本文通过一些实例,介绍了与字符串有关的相加、比较及包含三种操作。读者若想查阅其他类型的操作,可参考以下博客。https://blog.csdn.net/Atishoo_13/article/details/82628698https://blog.csdn.net/Atishoo_13/article/details/826671281.使预先设定的两个字符串相加合成为...
2018-09-21 21:20:10
569
原创 拓展——RGB颜色查询对照表
RGB颜色查询对照表RGB色彩模式是工业界的一种颜色标准,是通过对红®、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,RGB即是代表红、绿、蓝三个通道的颜色,这个标准几乎包括了人类视力所能感知的所有颜色,是目前运用最广的颜色系统之一。1.原理RGB是从颜色发光的原理来设计定的,通俗点说它的颜色混合方式就好像有红、绿、蓝三盏灯,当它们的光相互叠合的时候,色...
2018-09-20 15:51:41
3632
原创 JAVA——对任何类型文件进行文件移动
JAVA——对任何类型文件进行文件移动1.要求通过二进制流的操作方式把程序调整为可以实现对任何类型文件进行文件移动 。2.方法throws是方法可能抛出异常的声明。(用在声明方法时,表示该方法可能要抛出异常)语法:(修饰符)(方法名)([参数列表])[throws(异常类)]{…}如: public void function() throws Exception{…}当某个方...
2018-09-17 22:12:02
814
原创 拓展——计算机存储单位
计算机存储单位存储单位是一种计量单位。指在某一领域以一个特定量,或标准做为一个记录(计数)点。再以此点的某个倍数再去定义另一个点,而这个点的代名词就是计数单位或存储单位。例如卡车的载重量是吨,也就是这辆卡车能存储货物的数量,吨就是它的单位量词。1.定义二进制序列用以表示计算机、电子信息数据容量的量纲,基本单位为字节B,字节向上分别为KB、MB、GB、TB,每级为前一级的1024倍,...
2018-09-17 19:56:45
1043
原创 JAVA——对任何类型文件进行文件复制
JAVA——对任何类型文件进行文件复制1.要求通过二进制流的操作方式把程序调整为可以实现对任何类型文件进行文件复制。2.方法FileInputStream类是文件输入流,根据文件路径可以构造一个FileInputStream对象。FileInputStream的read实例方法从文件输入流中读取数据,即读取文件内容。FileOutputStream类是文件输出流,根据文件...
2018-09-15 20:55:39
1662
原创 JAVA——写入指定文本内容(字符)
JAVA——写入指定文本内容(字符)1.要求以文本方式向某一指定路径指定文件名的文本文件写入指定文本内容。2.方法WriteFileByBytes()方法以字节为单位将内容写到文件中。通过FileOutputStream的write()方法将指定数组字节写入缓冲的输出流中。用JAVA写文件有很多方法,对于不同类型的数据,有不同的写入方法的技术要点如下: (1)FileOu...
2018-09-13 20:55:55
3627
原创 JAVA——读取文本文件内容(行)
JAVA——读取文本文件内容(行)1.目的对文本文件按行进行读取,每读取一行后显示此行,最后显示总的行数。2.方法以行为单位读取文件,常用于读面向行的格式化文件。 ReadFileByLines()方法中,声明缓存流BufferedReader,可以提高字符流处理的效率和速度,使用readLine()方法可以一行一行地读取文本,当遇到null时读取文件结束。3.代码所...
2018-09-12 21:17:32
3814
1
原创 JAVA——基本字符操作(二)
JAVA——基本字符操作、本文通过一个例子,来展示两个字符集合间的对比结果。1.要求设有两字串构成的集合,字符串内容值为 A:{a,b,c,d,e,f,g,in,off,about,get} B:{f,g,a,come,get,go} 求出:(1)AB集合的交集。 (2)只在A集中出现的字串集合。 (3)AB集合的并集...
2018-09-12 19:45:41
474
使用JAVA实现简单的贪吃蛇小程序
2019-01-11
JAVA运用ArrayList实现逻辑推理题(谁养鱼)
2018-10-18
使用JAVA编制时钟程序
2018-09-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人