文档章节

初试python gensim 库

Digimon
 Digimon
发布于 2017/07/02 22:21
字数 540
阅读 97
收藏 0

做文本主题抽取,刚开始觉得word2vec挺厉害的,打算试一试,发现word2vec的函数包都在gensim里面。pip 安装以后就上路了。

import logging
#这是一个日志输出
logging.basicConfig(format='%(asctime)s:%(levelname)s: %(message)s',level=logging.INFO)
from gensim.models import word2vec
sentences=word2vec.Text8Corpus(u'E:\PyProgramma\GCTest\Source\\newtest.txt')
model=word2vec.Word2Vec(sentences,size=200)
print(model)
model.save(u'test.model')
try:
    y1=model.similarity(u"切合/v",u"实际/n")
except KeyError:
    y1=0
print(y1)

这里语料库是随便找了一个测测试用的,所以里面已经做过分词处理并且还做过磁性标注了,但是对跑通程序的影响是不大的。做出来还可以,测出来这两个词语相似度是0.6……算是跑通了。然后开始测自己做的语料库。 嗯,我自己的语料库是前面一个数字表示词是第几段话的,第二个是真实的词,中间空格读出

# coding:utf-8
f=open('E:\PyProgramma\GCTest\Source\\orign.txt','r',encoding='utf-8')
fin=open('E:\PyProgramma\GCTest\Source\\w2vo.txt','w',encoding='utf-8')
line=f.readline()
num=0
while line:
    #print(line)
    newnum,word=line.split()
    if(newnum!=num):
        print(word)
        word=word+'\n'
        fin.write(word)
    else:
        print(word,end=' ')
        word=word+' '
        fin.write(word)
    num=newnum
    line=f.readline()
    print(line)
f.close()
fin.close()

然而带入刚刚测好的代码里却发现基本所有参数都是0,原因是之前的测试语料库挺大的,约莫50M,而自己的才几个K…… 查了下API,http://radimrehurek.com/gensim/models/word2vec.html 发现word2vec还是用在词语检测比较好……但发现了gensim这个库有大量主题模型,很专注主题模型的样子…… 嗯,反正语料还没弄出来,就顺便看了下lda的包

from gensim import corpora,models,similarities
from gensim.models import word2vec,LdaModel
from gensim.corpora import Dictionary
from gensim.models.atmodel import AuthorTopicModel
train=[]
f=codecs.open('E:\PyProgramma\GCTest\Source\\w2vo.txt','r',encoding='utf8')
for line in f:
    line=line.split()
    train.append([w for w in line])
dictionary=corpora.Dictionary(train)
corpus=[dictionary.doc2bow(text) for text in train]
lda=LdaModel(corpus=corpus,id2word=dictionary,num_topics=10)
lda.print_topics(10)
lda.print_topic(10)

同样,自己的语料库太少了,跑出来是0,然而大语料库跑出来半天没反应……会很慢 导入文件是写作utf8而不是utf-8……报了好久的格式错误,半天才发现……

© 著作权归作者所有

Digimon
粉丝 43
博文 20
码字总数 16060
作品 0
成都
程序员
私信 提问
主题模型工具包 Gensim 3.4.0 发布,提速再提速

Gensim 是用于主题模型、文档索引和海量文本的相似检索的 Python 库,目标受众是自然语言处理(NLP)和信息检索(IR)社区。 Gensim 3.4.0 已发布,主要更新如下: 新增 cython 版 gensim.m...

王练
2018/03/03
1K
0
Gensim 3.1.0 发布,主题模型 Python 工具包

Gensim 是用于主题模型、文档索引和海量文本的相似检索的 Python 库,目标受众是自然语言处理(NLP)和信息检索(IR)社区。 Gensim 3.1.0 已发布,主要更新如下: 大幅度优化 LSI 模型训练 ...

王练
2017/11/12
926
0
【火炉炼AI】机器学习042-NLP文本的主题建模

【火炉炼AI】机器学习042-NLP文本的主题建模 (本文所使用的Python库和版本号: Python 3.6, Numpy 1.14, scikit-learn 0.19, matplotlib 2.2, NLTK 3.3) 文本的主题建模时用NLP来识别文本文档...

炼丹老顽童
2018/10/18
0
0
Gensim 3.0.1 发布,主题模型 Python 工具包

Gensim 是用于主题模型、文档索引和海量文本的相似检索的 Python 库,目标受众是自然语言处理(NLP)和信息检索(IR)社区。 Gensim 3.0.1 已发布,更新如下: Bug 修复: 修复 Keras 导入,加...

王练
2017/10/13
883
0
NLP自然语言处理库系列教程——gensim库

Gensim是一款开源的第三方Python工具包,用于从原始的非结构化的文本中,无监督地学习到文本隐层的主题向量表达。它支持包括TF-IDF,LSA,LDA,和word2vec在内的多种主题模型算法,支持流式训...

luanpeng825485697
2018/05/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

学习记录(day05-标签操作、属性绑定、语句控制、数据绑定、事件绑定、案例用户登录)

[TOC] 1.1.1标签操作v-text&v-html v-text:会把data中绑定的数据值原样输出。 v-html:会把data中值输出,且会自动解析html代码 <!--可以将指定的内容显示到标签体中--><标签 v-text=""></......

庭前云落
44分钟前
7
0
VMware vSphere的两种RDM磁盘

在VMware vSphere vCenter中创建虚拟机时,可以添加一种叫RDM的磁盘。 RDM - Raw Device Mapping,原始设备映射,那么,RDM磁盘是不是就可以称作为“原始设备映射磁盘”呢?这也是一种可以热...

大别阿郎
今天
10
0
【AngularJS学习笔记】02 小杂烩及学习总结

本文转载于:专业的前端网站☞【AngularJS学习笔记】02 小杂烩及学习总结 表格示例 <div ng-app="myApp" ng-controller="customersCtrl"> <table> <tr ng-repeat="x in names | orderBy ......

前端老手
昨天
14
0
Linux 内核的五大创新

在科技行业,创新这个词几乎和革命一样到处泛滥,所以很难将那些夸张的东西与真正令人振奋的东西区分开来。Linux内核被称为创新,但它又被称为现代计算中最大的奇迹,一个微观世界中的庞然大...

阮鹏
昨天
17
0
【Medium 万赞好文】ViewModel 和 LIveData:模式 + 反模式

原文作者: Jose Alcérreca 原文地址: ViewModels and LiveData: Patterns + AntiPatterns 译者:秉心说 View 和 ViewModel 分配责任 理想情况下,ViewModel 应该对 Android 世界一无所知。...

秉心说
昨天
17
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部