内容简介:在使用jieba分词时,发现分词准确度不高。特别是一些专业词汇,比如首先安装pynlpir。pynlpir的相关说明可以参考https://pynlpir.readthedocs.io/en/latest/index.html。而后为jieba生成字典。jieba支持的字典格式为
在使用jieba分词时,发现分词准确度不高。特别是一些专业词汇,比如 堡垒机
,只能分出 堡垒
,并不能分出 堡垒机
。这样导致的问题是很多时候检索并不准确。
经过对比测试,发现 nlpir
进行分词效果更好。但是nlpir的效率和各种支持又没有jieba那么好,因此采用了一种折中的方案。
就是先用nlpir生成字典,然后使用jieba利用字典进行分词。
首先安装pynlpir。pynlpir的相关说明可以参考https://pynlpir.readthedocs.io/en/latest/index.html。
// 安装 $ pip install pynlpir // 证书更新 $ pynlpir update
而后为jieba生成字典。jieba支持的字典格式为 单词 词频
,中间用空格隔开,每行一个单词。
使用pynlpir生成词典的方式如下:
import pynlpir pynlpir.open() f = open("doc.txt", "r") s= f.readlines() s = '\n'.join(s) f.close() key_words = pynlpir.get_key_words(s, max_words=1000, weighted=True) for key_word in key_words: print '%s %s' % (key_word[0], int(key_word[1]*10))
这里之所以为每个 词频*10
,主要是为了加强其权重。而后再使用jieba利用该字典进行分词。至于jieba分词如何使用词典,可以参考https://github.com/fxsjy/jieba/blob/master/test/test_userdict.py。这里就不再重复了。
对于sphinx-doc,其最新版本也是使用的jieba分词。同样可以使用本方法来提升其分词的准确率。
中文分词引入可以参考https://www.chenyudong.com/archives/sphinx-doc-support-chinese-search.html。
在conf.py中,配置 html_search_options = {'dict': '/usr/lib/jieba.txt'}
,加入字典的路径。这里一定要绝对路径。相对路径不能生效。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- pkuseg-python:一个高准确度的中文分词工具包
- 随机森林算法预测法官判决,准确度优于人类水平
- 聊一聊rank-1和rank-5准确度
- AI阅读病历,推荐临床诊断,准确度超过年轻医生!
- CNN能同时兼顾速度与准确度吗?CMU提出AdaScale
- 基于海量公司分词ES中文分词插件
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Essential C++中文版
[美] Stanley B. Lippman / 侯捷 / 华中科技大学出版社 / 2001-8 / 39.80元
书中以4个面向来表现C++的本质:procedural(程序性的)、generic(泛型的)、object-based(个别对象的)、object-oriented(面向对象的),全书围绕着一系列逐渐繁复的程序问题,以及用以解决这些问题的语言特性。循此方式,读者不只学到C++的函数和结构,也会学习到它们的设计目的和基本原理。一起来看看 《Essential C++中文版》 这本书的介绍吧!