随笔分类 -  自然语言处理

摘要:中文分词是中文文本处理的一个基础性工作,结巴分词利用进行中文分词。其基本实现原理有三点:基于Trie树结构实现高效的词图扫描,生成句子中汉字所有可能成词情况所构成的有向无环图(DAG)采用了动态规划查找最大概率路径, 找出基于词频的最大切分组合对于未登录词,采用了基于汉字成词能力的HMM模型,使用了... 阅读全文
posted @ 2015-01-17 14:22 jihite 阅读(4197) 评论(0) 推荐(0) 编辑
摘要:古德-图灵估计可以解决n元语法模型(n-gram)中的数据的稀疏问题。主要的思想是把非零的n元语法的概率降低匀给一些低概率n元语法,以修改最大似然估计与真实概率之间的偏离。是实用比较多的平滑算法。 图:从左到右的变化:把一部分看得见的事件的概率匀给未看见的事件 ... 阅读全文
posted @ 2014-12-20 22:56 jihite 阅读(6927) 评论(0) 推荐(1) 编辑
摘要:s = "[零|一|二|三|四|五|六|七|八|九|0|1|2|3|4|5|6|7|8|9]"s = "[零|一|二|三|四|五|六|七|八|九|十|百|千|万|亿]" 阅读全文
posted @ 2014-11-20 12:50 jihite 阅读(708) 评论(0) 推荐(0) 编辑
摘要:1. 字典(依赖文件)2. 可执行文件名字 阅读全文
posted @ 2014-09-02 19:30 jihite 阅读(633) 评论(0) 推荐(0) 编辑
摘要:Linux环境1. 安装方法一:下载:http://www.crummy.com/software/BeautifulSoup/bs4/download/4.2/解压:tar -xzvfbeautifulsoup4-4.2.0.tar.gz安装:进入解压后的目录python setup.py bui... 阅读全文
posted @ 2014-05-12 22:00 jihite 阅读(23877) 评论(0) 推荐(2) 编辑
摘要:分类和回归区别在于输出变量的类型。定量输出称为回归,或者说是连续变量预测;定性输出称为分类,或着说是离散变量预测。举个栗子:预测明天气温多少——回归问题;预测明天晴天还是阴天——分类问题。注:定量、定型区别(举例)一个人向东走,这是定性描述。一个人向东走300米,这是定量描述。定量比定性更加精确详细... 阅读全文
posted @ 2014-04-16 21:43 jihite 阅读(932) 评论(0) 推荐(0) 编辑
摘要:1. 序词是句子组成的基本单元,不像英语句子已经分好词了,中文处理的第一步就是中文分词。分词中面临的三大基本问题分词规范分词歧义未登录词的识别中文分词算法大概分为两大类第一类:基于字符串匹配 即扫描字符串,如果发现字符串的子串和词相同,就算匹配。这类分词通常会加入一些启发式规则,比如“正向/反向最... 阅读全文
posted @ 2014-03-29 11:02 jihite 阅读(11324) 评论(0) 推荐(2) 编辑
摘要:安装系统需要安装Java1.6+http://nlp.stanford.edu/software/tagger.shtml下载Download full Stanford Tagger version 3.3.1[155 MB]使用说明标注器有三个模式:标注、训练、测试这里我们用已经训练好的标注模型, 对于中文有两个(model目录下)chinese-distsim.tagger(性能比较好)chinese-nodistsim.tagger二者区别使用java -mx300m -classpath stanford-postagger.jar edu.stanford.nlp.tagger.m 阅读全文
posted @ 2014-03-14 11:20 jihite 阅读(10593) 评论(3) 推荐(0) 编辑
摘要:近年来,随着计算机本身以及信息高速公路的飞速发展,人们开始更加重视语义的研究。各国都致力于可用于自然语言处理的大规模语义词典或大规模知识库的建设。例如:普林斯顿大学的英语Wordnet,微软的Mindnet,欧洲有基于Wordnet的Eurowordnet,日本的日语和英语的概念词典,韩国的Koreanwordnet,中国有以Wordnet为框架而研制的现代汉语概念词典――中文概念辞书(CCD)和董振东、董强的Hownet(知网)。 Wordnet是一个在线的英语词汇数据库(词汇参照系统),而Hownet是一个以汉语和英语的词语所代表的概念为描述对象,以揭示概念与概念之间以及概念所具有的属.. 阅读全文
posted @ 2014-02-26 15:42 jihite 阅读(15870) 评论(0) 推荐(2) 编辑
摘要:缘起在自然语言处理过程中,全角、半角的的不一致会导致信息抽取不一致,因此需要统一。转换说明全角半角转换说明有规律(不含空格):全角字符unicode编码从65281~65374 (十六进制 0xFF01 ~ 0xFF5E)半角字符unicode编码从33~126 (十六进制 0x21~ 0x7E)特例:空格比较特殊,全角为 12288(0x3000),半角为 32(0x20)除空格外,全角/半角按unicode编码排序在顺序上是对应的(半角 + 0x7e= 全角),所以可以直接通过用+-法来处理非空格数据,对空格单独处理。注:1. 中文文字永远是全角,只有英文字母、数字键、符号键才有全角半角的 阅读全文
posted @ 2014-02-18 17:05 jihite 阅读(45469) 评论(1) 推荐(1) 编辑
摘要:传送门: http://www.iteye.com/news/26184-jieba 阅读全文
posted @ 2013-11-26 17:17 jihite 阅读(1755) 评论(0) 推荐(0) 编辑
摘要:在信息检索和文本挖掘中,需要对一个词的不同形态进行归并,即词形规范化,从而提高文本处理的效率。例如:词根run有不同的形式running、ran另外runner也和run有关。这里涉及到两个概念:词形变化:把一个任何形式的语言词汇还原为一般形式。(比如:cats--->cat,did--->do)词... 阅读全文
posted @ 2013-11-24 19:18 jihite 阅读(15167) 评论(2) 推荐(3) 编辑
摘要:train为训练语料,用于模型训练; dev为开发集,用于模型参数调优; test用于测试 阅读全文
posted @ 2013-10-21 22:29 jihite 阅读(5028) 评论(0) 推荐(1) 编辑
摘要:简介WordNet::Similarity是一个Perl实现的软件包,可以用来计算两个概念(或者word sense)之间的语义相似度,它提供了六种计算相似度和三种计算概念之间关联度的方法,所有的这些方法都是基于WordNet这个词汇数据库。依附WordNetDigest-SHA1WordNet::QueryDataText-Similarity下载位置WordNet:http://wordnet.princeton.edu/wordnet/download/current-version/其他:http://search.cpan.org/安装WordNet1. sudo apt-get i 阅读全文
posted @ 2013-10-15 20:02 jihite 阅读(4290) 评论(1) 推荐(2) 编辑
摘要:阮一峰老师的博客写的相当详细了,非常佩服,在这里记录一下链接一):自动提取关键词url: http://www.ruanyifeng.com/blog/2013/03/tf-idf.html笔记:分母+1目的是防止所有文档都不包含该词(未登录词)利用tf-idf方法:优点 是简单快速,结果比较符合实际情况。缺点 是这种算法无法体现词的位置信息,出现位置靠前的词与出现位置靠后的词,都被视为重要性相同,这是不正确的。(一种解决方法是,对全文的第一段和每一段的第一句话,给予较大的权重。二):找出相似文章url: http://www.ruanyifeng.com/blog/2013/03/cosin 阅读全文
posted @ 2013-10-12 16:20 jihite 阅读(876) 评论(0) 推荐(0) 编辑
摘要:本文分为两部分搜索关键词权重的科学度量TF-IDF利用python的工具包计算文本的TF-IDF1. 搜索关键词权重的科学度量TF-IDF查询:原子能的应用首先进行分词:原子能、的、应用根据直觉知道:包含这三个词较多的网页比包含少的网页与我们的需求相关性更好漏洞:内容多的比内容少的占优势改进:归一化。即用关键词的个数除以网页总的词数,商称为”单文本词频“TF(Term Frequency)。比如”原子能、的、应用“三个词出现的词数分别为2、35、5,网页中一共有1000个词,那么三个词的TF分别为:0.002、0.035、0.005。查询与网页的相关度即总词频公式如下。那么三者之和0.042就 阅读全文
posted @ 2013-09-18 23:12 jihite 阅读(2359) 评论(1) 推荐(1) 编辑
摘要:WordNet是面向语义的英语词典,类似于传统字典。它是NLTK语料库的一部分,可以被这样调用:更简洁的写法:1.单词查看一个单词的同义词集用synsets(); 它有一个参数pos,可以指定查找的词性。这里得到的同义词集是同义词集的集合,即里面不是单纯的词,是同义词的集合.注:一个synset(同义词集:指意义相同的词条的集合)被一个三元组描述:(单词.词性.序号)。这里的’dog.n.01’指:dog的第一个名词意思;’chase.v.01’指:chase的第一个动词意思pos可为:NOUN、VERB、ADJ、ADV…2.同义词集注:一些关系的获得只能通过Lemmas,比如反义词:3. S 阅读全文
posted @ 2013-06-21 22:46 jihite 阅读(10081) 评论(8) 推荐(0) 编辑
摘要:linux环境下,没有首先安装python_Levenshtein,用法如下:重点介绍几个该包中的几个计算字串相似度的几个函数实现。1. Levenshtein.hamming(str1, str2)计算汉明距离。要求str1和str2必须长度一致。是描述两个等长字串之间对应位置上不同字符的个数。如2. Levenshtein.distance(str1, str2)计算编辑距离(也成Levenshtein距离)。是描述由一个字串转化成另一个字串最少的操作次数,在其中的操作包括插入、删除、替换。如算法实现 参考动态规划整理:http://www.cnblogs.com/kaituorenshe 阅读全文
posted @ 2013-05-18 22:38 jihite 阅读(26740) 评论(2) 推荐(2) 编辑
摘要:隐马尔可夫模型的学习问题:给定一个输出序列O=O1O2...OT,如何调节模型μ=(A,B,π)的参数,使得P(O|M)最大。 最大似然估计是一种解决方法,如果产生的状态序列为Q=q1q2...qT,根据最大似然估计,可以通过以下公式推算: πi‘ = δ(q1,si) aij... 阅读全文
posted @ 2012-12-06 22:18 jihite 阅读(9581) 评论(4) 推荐(1) 编辑
摘要:重新回顾: 前向变量αt(i):在时刻t,在已知模型μ=(A,B,π)的条件下,状态处于si,输出序列为O102...Ot,前向变量为αt(i) 后向变量βt(i):在时刻t,在已知模型μ=(A,B,π)和状态处于si的条件下,输出序列为Ot+1Ot+2...OT,后向变量为βt(i) 公式推导: 阅读全文
posted @ 2012-12-05 15:17 jihite 阅读(4603) 评论(1) 推荐(1) 编辑