永发信息网

lda 数据量大怎么办 python

答案:1  悬赏:10  手机版
解决时间 2021-11-26 13:36
  • 提问者网友:浩歌待明月
  • 2021-11-25 13:58
lda 数据量大怎么办 python
最佳答案
  • 五星知识达人网友:掌灯师
  • 2021-11-25 15:11
jieba"结巴"中文分词:做最好的Python中文分词组件"Jieba"(Chinesefor"tostutter")Chinesetextsegmentation:builttobethebestPythonChinesewordsegmentationmodule.ScrolldownforEnglishdocumentation.Feature支持三种分词模式:精确模式,试图将句子最精确地切开,适合文本分析;全模式,把句子中所有的可以成词的词语都扫描出来,速度非常快,但是不能解决歧义;搜索引擎模式,在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎分词。支持繁体分词支持自定义词典在线演示/huaban/jieba-analysisAlgorithm基于Trie树结构实现高效的词图扫描,生成句子中汉字所有可能成词情况所构成的有向无环图(DAG)采用了动态规划查找最大概率路径,找出基于词频的最大切分组合对于未登录词,采用了基于汉字成词能力的HMM模型,使用了Viterbi算法功能1):分词jieba.cut方法接受两个输入参数:1)第一个参数为需要分词的字符串2)cut_all参数用来控制是否采用全模式jieba.cut_for_search方法接受一个参数:需要分词的字符串,该方法适合用于搜索引擎构建倒排索引的分词,粒度比较细注意:待分词的字符串可以是gbk字符串、utf-8字符串或者unicodejieba.cut以及jieba.cut_for_search返回的结构都是一个可迭代的generator,可以使用for循环来获得分词后得到的每一个词语(unicode),也可以用list(jieba.cut())转化为list代码示例(分词)#encoding=utf-8importjiebaseg_list=jieba.cut("我来到北京清华大学",cut_all=True)print"FullMode:","/".join(seg_list)#全模式seg_list=jieba.cut("我来到北京清华大学",cut_all=False)print"DefaultMode:","/".join(seg_list)#精确模式seg_list=jieba.cut("他来到了网易杭研大厦")#默认是精确模式print",".join(seg_list)seg_list=jieba.cut_for_search("小明硕士毕业于中国科学院计算所,后在日本京都大学深造")#搜索引擎模式print",".join(seg_list)Output:【全模式】:我/来到/北京/清华/清华大学/华大/大学【精确模式】:我/来到/北京/清华大学【新词识别】:他,来到,了,网易,杭研,大厦(此处,“杭研”并没有在词典中,但是也被Viterbi算法识别出来了)【搜索引擎模式】:小明,硕士,毕业,于,中国,科学,学院,科学院,中国科学院,计算,计算所,后,在,日本,京都,大学,日本京都大学,深造功能2):添加自定义词典开发者可以指定自己自定义的词典,以便包含jieba词库里没有的词。虽然jieba有新词识别能力,但是自行添加新词可以保证更高的正确率用法:jieba.load_userdict(file_name)#file_name为自定义词典的路径词典格式和dict.txt一样,一个词占一行;每一行分三部分,一部分为词语,另一部分为词频,最后为词性(可省略),用空格隔开范例:之前:李小福/是/创新//主任/也/是/云/计算/方面/的/专家/加载自定义词库后: 李小福/是/创新/主任/也/是/云计算/方面/的/专家/自定义词典:/fxsjy/jieba/blob/master/test/test_userdict.py"通过用户自定义词典来增强歧义纠错能力"---/fxsjy/jieba/blob/master/test/extract_tags.py功能4):词性标注标注句子分词后每个词的词性,采用和ictclas兼容的标记法用法示例>>>importjieba.possegaspseg>>>words=pseg.cut("我爱北京天安门")>>>forwinwords:printw.word,w.flag我r爱v北京ns天安门ns功能5):并行分词原理:将目标文本按行分隔后,把各行文本分配到多个python进程并行分词,然后归并结果,从而获得分词速度的可观提升基于python自带的multiprocessing模块,目前暂不支持windows用法:jieba.enable_parallel(4)#开启并行分词模式,参数为并行进程数jieba.disable_parallel()#关闭并行分词模式例子:/fxsjy/jieba/blob/master/test/parallel/test_file.py实验结果:在4核3.4GHzLinux机器上,对金庸全集进行精确分词,获得了1MB/s的速度,是单进程版的3.3倍。功能6):Tokenize:返回词语在原文的起始位置注意,输入参数只接受unicode默认模式result=jieba.tokenize(u'永和服装饰品有限公司')fortkinresult:print"word%s\t\tstart:%d\t\tend:%d"%(tk[0],tk[1],tk[2])word永和start:0end:2word服装start:2end:4word饰品start:4end:6word有限公司start:6end:10搜索模式result=jieba.tokenize(u'永和服装饰品有限公司',mode='search')fortkinresult:print"word%s\t\tstart:%d\t\tend:%d"%(tk[0],tk[1],tk[2])word永和start:0end:2word服装start:2end:4word饰品start:4end:6word有限start:6end:8word公司start:8end:10word有限公司start:6end:10功能7):ChineseAnalyzerforWhoosh搜索引擎引用:fromjieba.analyseimportChineseAnalyzer用法示例:/fxsjy/jieba/raw/master/extra_dict/dict.txt.big下载你所需要的词典,然后覆盖jieba/dict.txt即可或者用jieba.set_dictionary('data/dict.txt.big')模块初始化机制的改变:lazyload(从0.28版本开始)jieba采用延迟加载,"importjieba"不会立即触发词典的加载,一旦有必要才开始加载词典构建trie。如果你想手工初始jieba,也可以手动初始化。importjiebajieba.initialize()#手动初始化(可选)在0.28之前的版本是不能指定主词典的路径的,有了延迟加载机制后,你可以改变主词典的路径:
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯