分词

jieba库对中文文本进行切割 python

匿名 (未验证) 提交于 2019-12-02 22:51:30
jieba是中文文本用于分词的库,有3种模式:精确模式、全模式(所有可能的分割)、搜索引擎模式(在精确模式基础上再进行分割) 具体参考 PYPI # coding=utf-8 import jieba #txt = open(u"D:\data\ebook\红楼梦.txt","r").read() #,encoding='utf-8' txt = open("D:\\data\\ebook\\1.txt","r",encoding='utf-8').read() words = jieba.lcut_for_search(txt) # 使用搜索引擎模式对文本进行分词 counts = {} # 通过键值对的形式存储词语及其出现的次数 for word in words: print(word) if len(word) == 1: # 长度为1的词语不计算在内 continue else: counts[word] = counts.get(word, 0) + 1 # 遍历所有词语,每出现一次其对应的值加 1 items = list(counts.items())#将键值对转换成列表 items.sort(key=lambda x: x[1], reverse=True) # 根据词语出现的次数进行从大到小排序 for i in range(5): word, count =

CountVectorizer方法对中文进行特征提取

匿名 (未验证) 提交于 2019-12-02 22:51:30
from sklearn.feature.extraction.text import CountVectorizer 这个方法根据分词进行数量统计继续文本分类 作用:对文本进行特征值化 sklearn.feature_extraction.text.CountVectorizer(stop_words = []) 返回:词频矩阵 CountVectorizer.fit_transform(X) X:文本或者包含文本字符串的可迭代对象 返回:sparse矩阵 在后面加上 .toarray() 可以转换为二维数组 CountVectorizer.inverse_transform(X) X:array数组或者sparse矩阵 返回:转换之前数据格 CountVectorizer.get_feature_names() 返回:单词列表,也可以说是返回特征名字 from sklearn.feature_extraction.text import CountVectorizer #中文 需要分词,否则是以整句作为一个词。英文则不需要,因为英文单词本来就有空格 def chinese_text_count_demo(): data = ["我 爱 北京 天安门", "天安门 上 太阳 升"] # 1、实例化一个转换器类(为什么叫转化器,因为是将 文本 转化为 数值) transfer =

python中的实例方法、静态方法、类方法、类变量和实例变量浅析

匿名 (未验证) 提交于 2019-12-02 22:51:30
用VScode代码调试Python python路径引用r的含义 Python类中的self到底是干啥的 【Python】使用codecs模块进行文件操作及消除文件中的BOM python之decode、encode及codecs模块 python使用jieba实现中文文档分词和去停用词 VS Code中python代码自动格式化方法 解决jieba分词 load_userdict 加载自定义词库太慢的问题 python 中os模块os.path.exists()含义 Python自然语言处理学习――jieba分词 sklearn+gensim|jieba分词、词袋doc2bow、TfidfVectorizer python中的实例方法、静态方法、类方法、类变量和实例变量浅析 Python的构造函数和默认值是是什么? python中字典的定义和操作 SiameseSentenceSimilarity,个人实现的基于Siamese bilstm模型的相似句子判定模型 来源:博客园 作者: 面包师 链接:https://www.cnblogs.com/cheng2015/p/11555644.html

编译安装开源免费中文分词scws

匿名 (未验证) 提交于 2019-12-02 21:59:42
一、 SCW S了解一下 : SCWS 是 Simple Chinese Word Segmentation 的首字母缩写(即:简易中文分词系统)。 这是一套基于词频词典的机械式中文分词引擎,它能将一整段的中文文本基本正确地切分成词。 词是中文的最小语素单位,但在书写时并不像英语会在词之间用空格分开, 所以如何准确并快速分词一直是中文分词的攻关难点。 SCWS 采用纯 C 语言开发,不依赖任何外部库函数,可直接使用动态链接库嵌入应用程序, 支持的中文编码包括 GBK、UTF-8 等。此外还提供了 PHP 扩展模块, 可在 PHP 中快速而方便地使用分词功能。 分词算法上并无太多创新成分,采用的是自己采集的词频词典,并辅以一定的专有名称,人名,地名, 数字年代等规则识别来达到基本分词,经小范围测试准确率在 90% ~ 95% 之间, 基本上能满足一些小型搜索引擎、关键字提取等场合运用。首次雏形版本发布于 2005 年底。 SCWS 由 hightman 开发, 并以 BSD 许可协议开源发布,源码托管在 github。 参考官方文档:http://www.xunsearch.com/scws/index.php 二、安装步骤: 1. 取得 scws-1.2.3 的代码 wget http://www.xunsearch.com/scws/down/scws-1.2.3.tar.bz2

jieba分词基础知识

北战南征 提交于 2019-12-02 19:52:09
安装: pip install jieba 导包: import jieba 精确模式 :试图将句子最精确地切开,适合文本分析(很像人类一样去分词)    jieba.cut(字符串) --> 返回 生成器 str = '小明硕士毕业于中国科学院计算所,后在日本京都大学深造' ret = jieba.cut(str) print(list(ret))    jieba.lcut(字符串) --> 返回 列表 str = '小明硕士毕业于中国科学院计算所,后在日本京都大学深造' ret = jieba.lcut(str) print(ret) 全模式 :把句子中所有的可以成词的词语都扫描出来,速度非常快,但是不能解决歧义(凡是词语全分)    jieba.cut(字符串, cut_all=True)   jieba.lcut(字符串, cut_all=True) str = '小明硕士毕业于中国科学院计算所,后在日本京都大学深造' ret = jieba.lcut(str, cut_all=True) print(ret) 搜索引擎模式: 在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎分词    jieba.cut_for_search(字符串)   jieba.lcut_for_search(字符串 ) str = '小明硕士毕业于中国科学院计算所

Solr安装及集成javaWeb

旧街凉风 提交于 2019-12-02 19:32:48
1.下载solr-4.7.1 http://www.apache.org/dyn/closer.cgi/lucene/solr/4.7.1 环境需求:java 1.6版本以上;solr运行需要java serverlet 容器,默认使用jetty,或者tomcat,jboss等等。 2. Tomcat部署solr: 1. 安装好jdk 1.6以上(我用是jdk 1.7.0_15) , 安装好tomcat(我用是 apache-tomcat-7.0.6),并配置环境变量。 2. 将解压包中的solr-4.7.1/dist/solr-4.7.1.war复制到tomcat_dir/webapps/目录,并命名为solr.war。 3. 将solr-4.7.1/example/lib/ext/目录下的jar文件复制到tomcat/lib目录下,将solr-4.7.1/example/resources/下的log4j.properties文件复制到tomcat_dir/lib目录下; 切把 solr-4.7.1/example/solr,复制到tomcat_dir/bin下。 4. 修改tomcat_dir/conf/server.xml <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000"

阿sa

回眸只為那壹抹淺笑 提交于 2019-12-02 19:10:13
# jieba库概述 .jieba是优秀的中文分词第三方库。需要额外安装。 pip install jieba # jieba库三种分词模式 精确模式:把文本精确的切分开,不存在冗余单词。 全模式:把文本中所有可能的词语都扫描出来,有冗余。 搜素引擎模式:在精确模式基础上,对长词再次切分。 # jieba库常用函数 jieba.cut(s) 精确模式,返回一个可迭代的数据类型 jieba.cut(s,cut_all=True) 全模式,输出文本S中所有可能单词 jieba.cut_for_search(s) 搜素引擎模式,适合搜素引擎建立索引的分词结果 jieba.lcut(s) 精确模式,返回一个列表类型,建议使用 jieba.lcut(s,cut_all=true) 全模式,返回一个列表类型,建议使用 jieba.lcut_for_search(s) 搜素引擎模式,返回一个列表类型,建议使用 jieba.add_word(w) 向分词词典中增加新词w # jieba实例 ```python import jieba txt_1 = "我说话真的不结巴啊,你信不信?" res = jieba.lcut(txt_1) #精确模式,返回一个列表类型,其中参数txt是表示文本的名字,吐字清晰版。 print('吐字清晰版') print(res) res_1 = jieba._lcut

Python3 jieba分词

北城以北 提交于 2019-12-02 17:15:25
参考文章: Github上的项目———jieba 中文分词 对于NLP(自然语言处理)来说,分词是一步重要的工作,市面上也有各种分词库, 11款开放中文分词系统比较 。 1.基于词典:基于字典、词库匹配的分词方法;(字符串匹配、机械分词法) 2.基于统计:基于词频度统计的分词方法; 3.基于规则:基于知识理解的分词方法。 第一类方法应用词典匹配、汉语词法或其它汉语语言知识进行分词,如:最大匹配法、最小分词方法等。这类方法简单、分词效率较高,但汉语语言现象复杂丰富,词典的完备性、规则的一致性等问题使其难以适应开放的大规模文本的分词处理。 第二类基于统计的分词方法则基于字和词的统计信息,如把相邻字间的信息、词频及相应的共现信息等应用于分词,由于这些信息是通过调查真实语料而取得的,因而基于统计的分词方法具有较好的实用性。 jieba分词,完全开源,有集成的python库,简单易用。 jieba分词是基于前缀词典实现高效的词图扫描,生成句子中汉字所有可能成词情况所构成的有向无环图 (DAG),动态规划查找最大概率路径, 找出基于词频的最大切分组合 安装jieba 在安装有python3 和 pip 的机子上,安装jieba库很简单,使用pip即可: pip install jieba jieba分词特性 支持三种分词模式: 精确模式,试图将句子最精确地切开,适合文本分析; 全模式

模块jieba库的使用

廉价感情. 提交于 2019-12-02 16:33:45
模块jieba库的使用 一 jieba库基本介绍 1.1 jieba库的概念 jieba库是优秀的中文分词第三方库 中文文本需要通过分词获得单个的词语 jieba是优秀的中文分词第三方库,需要额外安装 jieba库提供三种分词模式,最简单只需掌握一个函数 1.2 jieba库的安装 pip install jieba (cmd命令行) 1.3 jieba分词的原理 jieba分词依靠中文词库 利用一个中文词库,确定汉字之间的关系概念 汉字间概率大的组成词组,形成分词结果 除了分词,用户还可以添加自定义的词组 jieba库使用说明 2.1 jieba分词的三种模式 精确模式:把文本精确的切分开,不存在冗余单词 全模式:把文本中所有可能的词语都扫描出来,有冗余 搜索引擎模式:在精确模式基础上,对长词再次切分 2.2 jieba库常用函数 2.3 分词要点 下面是代码演示 import jieba txt = '中国,是以华夏文明为源泉、中华文化为基础,并以汉族为主体民族的多民族国家,通用汉语、汉字,汉族与少数民族被统称为“中华民族”,又自称为炎黄子孙、龙的传人。' # 精确模式 # res = jieba.cut(txt) # 获取可迭代对象 res = jieba.lcut(txt) # 生成的是一个列表 # 全模式 # res1 = jieba.cut(txt, cut_all

Elasticsearch:IK中文分词器

∥☆過路亽.° 提交于 2019-12-02 14:34:36
Elasticsearch内置的分词器对中文不友好,只会一个字一个字的分,无法形成词语,比如: POST /_analyze { "text": "我爱北京天安门", "analyzer": "standard" } 如果我们使用的是standard的分词器,那么结果就是: { "tokens" : [ { "token" : "我", "start_offset" : 0, "end_offset" : 1, "type" : "<IDEOGRAPHIC>", "position" : 0 }, { "token" : "爱", "start_offset" : 1, "end_offset" : 2, "type" : "<IDEOGRAPHIC>", "position" : 1 }, ... { "token" : "门", "start_offset" : 6, "end_offset" : 7, "type" : "<IDEOGRAPHIC>", "position" : 6 } ] } 显然这对中文来说并不友好,它显示的每一个汉字。好在Elastic的大拿medcl已经为我们做好IK中文分词器。下面我们来详细介绍如何安装并使用中文分词器。具体的安装步骤可以在地址 https://github.com/medcl/elasticsearch-analysis-ik 找到