分词

sklearn+gensim︱jieba分词、词袋doc2bow、TfidfVectorizer

北城余情 提交于 2019-12-04 20:58:09
分词这块之前一直用R在做,R中由两个jiebaR+Rwordseg来进行分词,来看看python里面的jieba. 之前相关的文章: R语言︱文本挖掘之中文分词包——Rwordseg包(原理、功能、详解) R语言︱文本挖掘——jiabaR包与分词向量化的simhash算法(与word2vec简单比较) . 文章目录 一、jieba分词功能 1、主要模式 支持自定义词典 . 2、算法 应用一:自定义词典或特定词识别 应用二:关键词提取 二、gensim的doc2bow实现词袋模型 分之一:BOW词袋模型 分支二:建立TFIDF 情况一:新的句子 . 情况二:tfidf模型的保存与内容查看 三 sklearn.feature_extraction抽取文本TFIDF特征 3.1 feature_extraction中几种情况 3.2 CountVectorizer与TfidfTransformer测试(合并为:TfidfVectorizer) 3.3 TfidfVectorizer 片段一:tfidf + LDA tfidf + sklearn的模型 3.4 HashingVectorizer 3.5 错误使用TfidfVectorizer方式,导致分类准确率一直为0.2 一、jieba分词功能 来源github:https://github.com/fxsjy/jieba 1、主要模式

学习下ElasticSearch

六月ゝ 毕业季﹏ 提交于 2019-12-04 14:30:01
ElasticSearch基础概念 Elasticsearch的Head插件安装 Elasticsearch在Centos 7上的安装常见的问题 使用场景:比如分库的情况下,你想统计所有数据的报表,就把所有数据都放在ElasticSearch上 关系型数据库 ElasticSearch 数据库Database 索引index,支持全文检索 表Table 类型Type 数据行Row 文档Document 数据列Column 字段Field 模式Schema 映射Mapping 用关系型数据库就会想到建立一张User表,再建字段等, 而在Elasticsearch的文件存储,Elasticsearch是面向文档型数据库,一条数据在这里就是一个文档,用JSON作为文档序列化的格式 在ES6.0之后,已经不允许在一个index下建不同的Type了,一个index下只有一个Type(以后版本中Type概念会去掉,可以直接把index类比成Table) 节点Node:   一个ElasticSearch运行的实列,集群构成的单元 集群Cluster:   由一个或多个节点组成,对外提供服务   Elasticsearch实现原理-倒排索引 ElasticSearch是基于倒排索引实现的 倒排索引(Inverted Index)也叫反向索引,有反向索引必有正向索引。 通俗地来讲

【NLP】【一】中文分词之jieba

假如想象 提交于 2019-12-04 11:07:42
声明:本文参考jieba官方文档而成,官方链接:https://github.com/fxsjy/jieba 【一】jieba安装 pip install jieba 【二】jieba简介 简介可见jieba官方说明:https://pypi.org/project/jieba/ 总而言之,jieba用于中文分词,支持的文本编码格式为utf-8,支持的功能包括:中文分词、关键字提取、词性标注 整体功能如下图: 【三】结巴使用之分词 1. 使用精确模式 # -*- coding:utf-8 -*- import jieba sentence = "我爱北京天安门" seg = jieba.cut(sentence=sentence) print("/".join(seg)) 结果如下: 我/爱/北京/天安门 2. 使用全模式 import jieba sentence = "我爱北京天安门" seg = jieba.cut(sentence=sentence,cut_all=True) print("/".join(seg)) 结果如下: 我/爱/北京/天安/天安门 3.使用搜索模式 # -*- coding:utf-8 -*- import jieba sentence = "我爱北京天安门" seg = jieba.cut_for_search(sentence=sentence

为Nutch 1.0添加JE中文分词

只谈情不闲聊 提交于 2019-12-04 11:07:30
为Nutch 1.0添加JE中文分词 文章来源网络 属于java 分类 电脑编程网整理 20091223 简介:这是为Nutch 1.0添加JE中文分词的详细页面,介绍了和java,有关的知识,加入收藏请按键盘ctrl+D,谢谢大家的观看!要查看更多有关信息,请点击此处 先下载Nutch 1.0的源文件: svn co http://svn.apache.org/repos/asf/lucene/nutch/tags/release-1.0 ./nutch-1.0 更改查询语法解析部分: 改变tokenize的方式(原来为中文单字识别) modify “src/java/org/apache/nutch/analysis/NutchAnalysis.jj”line 130: | > change to: | )+ > run “javacc” cd nutch-1.0/src/java/org/apache 来源: oschina 链接: https://my.oschina.net/u/98576/blog/7929

jieba笔记

坚强是说给别人听的谎言 提交于 2019-12-03 19:28:36
1.jieba,cut(需要分词的字符串,cut_all控制是否采用全模式,HMM控制是否使用HMM模型)---------返回一个可迭代的generator,可用for循环获得每个词语。 2.jieba.cut_for_search(需要分词的字符串,是否使用HMM模型)---------返回一个可迭代的generator,可用for循环获得每个词语。 3.jieba.lcut()和jieba.lcut_for_search()-------返回list 4.jieba.load_userdict(file_name):加载用户字典 5.jieba.add_word(word,freq=None,tag=None)和jieba.del_word(word)在程序中动态修改词典。 6.jieba.suggest_freq(segment,tun=True)可以调节单个词语的词频,使其能(或不能)被分出来。 7.基于TF-IDF算法抽取关键词:import jieba.analyse------jieba.analyse.extract_tags(待提取文本,topK=返回几个权重最大的关键词,默认20,withWeight=是否一并返回关键词的权重值,默认False,allowPOS=(仅包括指定词性的词,默认为空,不筛选))。 8.关键词提取所使用逆向文件频率(IDF

elasticsearch 和Ik 以及 logstash 同步数据库数据

六眼飞鱼酱① 提交于 2019-12-03 14:40:22
前文章有提到如何安装es ik是默认的中文分词是将每个字看成一个词,这显然是不符合要求的,所以我们需要安装中 文分词器来解决这个问题。 IK分词是一款国人开发的相对简单的中文分词器。虽然开发者自2012年之后就不在维护 了,但在工程应用中IK算是比较流行的一款!我们今天就介绍一下IK中文分词器的使用。 下面介绍安装ik插件和使用 下载ik压缩包地址 https://files.cnblogs.com/files/blackCatFish/elasticsearch-analysis-ik-5.6.8(1).zip (1)先将其解压,将解压后的elasticsearch文件夹重命名文件夹为ik (2)将ik文件夹拷贝到elasticsearch/plugins 目录下。 (3)重新启动,即可加载IK分词器 IK提供了两个分词算法ik_smart 和 ik_max_word 其中 ik_smart 为最少切分,ik_max_word为最细粒度划分 我们分别来试一下 (1)最小切分:在浏览器地址栏输入地址http://99.47.133.165:9200/_analyze?analyzer=ik_smart&pretty=true&text=我是程序员 结果如下: { "tokens" : [ { "token" : "我", "start_offset" : 0, "end

C#汉字转拼音,自动识别多音字,带声调,提供正向、逆向、双向分词算法的小程序

北慕城南 提交于 2019-12-03 14:12:58
用C#写了个汉字转拼音的小工具,和网上大部分工具不同,这个能通过分词算法,自动识别多音字,并且提供声调,可开可关。 比如,用"银行 行不行 行家说了算"举例,如果转拼音却不能识别多音字,就惨了。 而这个小工具的效果如图: 实现了3种分词算法: * 正向最大匹配 * 反向最大匹配 * 双向最大匹配 (其中,双向匹配的歧义处理办法,是本人小小创新的"双贪吃蛇法"。 算法详情参见: http://my.oschina.net/u/1270374/blog/164042 ) 软件下载: http://pan.baidu.com/s/1mTg3T -----------------源代码(含生成好的程序)-------------------- 百度网盘: http://pan.baidu.com/s/1ED1Ls 腾讯微云: http://url.cn/PnnMOU 源代码使用注意: * bin/release目录下,已经包含了生成的软件。 * 因为词库的中文单字非常不全,所以引用了微软的ChnCharInfo.dll,来获得一些单字拼音。这个库是要下载Visual Studio International Pack安装才会有,不想安装的话,可以 直接从bin/release里面找到,重新引用一下就行了。 * 词库来源:把 搜狗拼音词库备份bin文件,通过"深蓝词库转换工具",转成

中文 IKAnalyzer 分词

喜你入骨 提交于 2019-12-03 10:53:35
package NaviveBayesClassify; import java.io.IOException; import java.io.StringReader; import org.apache.lucene.analysis.Analyzer; import org.apache.lucene.analysis.TokenStream; import org.apache.lucene.analysis.tokenattributes.CharTermAttribute; import org.wltea.analyzer.lucene.IKAnalyzer; public class ChineseSpliter { /** * 对给定的文本进行中文分词 * * @param text * 给定的文本 * @param splitToken * 用于分割的标记,如"|" * @return 分词完毕的文本 * @throws IOException */ public static String split(String text, String splitToken) throws IOException { String result = null; // 创建分词对象 @SuppressWarnings("resource") Analyzer

用例建模Use Case Modeling

删除回忆录丶 提交于 2019-12-03 05:28:00
---恢复内容开始---   我的工程实践项目为《基于情感词典的文本情感分析》,情感分析是指通过机器学习或者自然语言处理技术,从文本中分析出人们对实体或属性所表达的观点、情感、评价、态度和情绪,情感分析也被称为情感挖掘、意见挖掘、观点抽取等。文本情感分析的主要任务是判断文本的情感倾向性,即对作者表达的情感是积极的还是消极的,正面的还是负面的,褒义的还是贬义的判断,因此也被情感分类。基于情感词典的文本情感分类,是对人的记忆和判断思维的最简单的模拟。其原理通过考察并分析文本中所有的具有情感色彩的词语,并对这些词语以及修饰词的情感强度进行量化加权来计算整个文本情感倾向的方法。其具体的实现方法为:首先对输入文本进行分词和去除停用词,然后将每个处理过的分词与构建的情感词典进行匹配,最后根据匹配结果得到文本的情感极性。主要的用例有: 获取数据集:本项目所针对的目标是京东电子商品评论,获取数据集的主要方式有网络爬虫,下载公开数据集、利用公开API获取。 数据预处理:主要的工作是对原始数据进行去重、缺失值处理、分词和去除停用词。 构建领域情感词典:领域情感词典的构建是本项目的主要工作,实现的方式为在公开的情感词典基础上利用语义的相识度来进行扩充,计算相识度的主要方法有word2vec、PMI算法 情感分析:主要的任务是利用文本分词与领域情感词典的匹配情况,得到情感值