gensim文本主题模型推荐

用gensim包做中文文本的推荐

一、gensim是generate similar的简写,叫做普遍相似。对于gensim这个包建议新手直接使用anaconda工具进行集中安装

二、gensim包中做文本推荐要使用的几个重要的模块

     1、corpora  语料库(将文本文档转为文档向量(基于词频tfidf文档向量))

from gensim import corpora

import jieba

sentences = ["我喜欢吃土豆","土豆是个百搭的东西","我不喜欢今天雾霾的北京"]

texts=[]
for doc in sentences:
    words.append(list(jieba.cut(doc)))#分词
print words

dictionary = corpora.Dictionary(words)
print dictionary
print dic.token2id

{'\xe5\x8c\x97\xe4\xba\xac': 12, '\xe6\x90\xad': 6, '\xe7\x9a\x84': 9, '\xe5\x96\x9c\xe6\xac\xa2': 1, '\xe4\xb8\x8d': 10, '\xe4\xb8\x9c\xe8\xa5\xbf': 4, '\xe5\x9c\x9f\xe8\xb1\x86': 2, '\xe9\x9c\xbe': 14, '\xe6\x98\xaf': 7, '\xe4\xb8\xaa': 5, '\xe9\x9b\xbe': 13, '\xe7\x99\xbe': 8, '\xe4\xbb\x8a\xe5\xa4\xa9': 11, '\xe6\x88\x91': 3, '\xe5\x90\x83': 0}

#可以看到字符串为'\xe5\x8c\x97\xe4\xba\xac'(词)的编号为12,\xe4\xbb\x8a\xe5\xa4\xa9的编号为11....一共有15个词,编号从0到14

corpus = [dictionary.doc2bow(text) for text in words]
print corpus

[[(0, 1), (1, 1), (2, 1), (3, 1)], [(2, 1), (4, 1), (5, 1), (6, 1), (7, 1), (8, 1), (9, 1)], [(1, 1), (3, 1), (9, 1), (10, 1), (11, 1), (12, 1), (13, 1), (14, 1)]]

#这是一个镶嵌的列表,第一个子列表[(0, 1), (1, 1), (2, 1), (3, 1)]表示sentence中的第一个字符串的对应的文本向量,第二个子列表对应对应了第二个字符串的文本向量.....其中例如第一个子列表中(0,1)表示编号为0的词出现了一次........

#对curpus进行tfidf变换

  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值