码迷,mamicode.com
首页 > 其他好文 > 详细

gensim使用方法以及例子

时间:2018-06-16 13:21:00      阅读:437      评论:0      收藏:0      [点我收藏+]

标签:方法   text   词向量   https   单词   save   detail   class   根据   

来自:https://blog.csdn.net/u014595019/article/details/52218249

gensim是一个Python的自然语言处理库,能够将文档根据TF-IDF,LDA,LSI等模型转换成向量模式,此外,gensim还实现了word2vec,能够将单词转换为词向量。

1. corpora和dictionary

1.1 基本概念和用法

corpora是gensim中的一个基本概念,是文档集的表现形式。corpora就是一个二维矩阵。举例:

1 hurry up
2 rise up

这两篇文档总共就3个词,hurry,rise,up。如果将这3个词映射到数字,比如说hurry, rise, up分别对应1,2,3,那么上述的文档集的一种表现形式可以是:

1 1,0,1
2 0,1,1

 这种方法只考虑词频,不考虑词语间的位置关系。因为第一个文档中的两个词分别编号1,3且都只出现了一次,所以第1个和第3个为1,第2个为0。

在实际运行中,单词数量极多(上万甚至10万级别),而一篇文档的单词数是有限的,这时采用密集矩阵来表示的话,会造成极大的内存浪费,所以gensim内部是用稀疏矩阵的形式来表示。

 

如何将文档转化为上述形式?

这里就要提到词典的感念(dictionary)。词典是所有文档中所有单词的集合,而且记录了各词的出现次数等信息。

对于字符串形式的文档,首先要将字符串分割成词语列表。如:"hurry up"要分割成[‘hurry‘, ‘up‘]。对于中文来讲,一般用jieba。

将文档分割成词语之后,使用dictionary = corpora.Dictionary(texts)生成词典,并可以使用save函数将词典持久化。

生成词典后corpus = [dictionary.doc2bow(text) for text in texts]转化为向量形式。

 

gensim使用方法以及例子

标签:方法   text   词向量   https   单词   save   detail   class   根据   

原文地址:https://www.cnblogs.com/keye/p/9190304.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!