您的位置:首页 > 其它

Gensim做中文主题模型(LDA)

2015-08-27 16:03 489 查看
中文语料来自http://www.sogou.com/labs/dl/c.html 的精简版(tar.gz格式) 24M

jerry@hq:/u01/jerry/Reduced$ ls

C000008 C000010 C000013 C000014 C000016 C000020 C000022 C000023 C000024

各个文件夹的分类:

C000007 汽车

C000008 财经

C000010 IT

C000013 健康

C000014 体育

C000016 旅游

C000020 教育

C000022 招聘

C000023 文化

C000024 军事

步骤如下:

import jieba, os

from gensim import corpora, models, similarities

train_set = []

walk = os.walk('/u01/jerry/Reduced')

for root, dirs, files in walk:

for name in files:

f = open(os.path.join(root, name), 'r')

raw = f.read()

word_list = list(jieba.cut(raw, cut_all = False))

train_set.append(word_list)

dic = corpora.Dictionary(train_set)

corpus = [dic.doc2bow(text) for text in train_set]

tfidf = models.TfidfModel(corpus)

corpus_tfidf = tfidf[corpus]

lda = models.LdaModel(corpus_tfidf, id2word = dic, num_topics = 10)

corpus_lda = lda[corpus_tfidf]

>>> for i in range(0, 10):

... print lda.print_topic(i)

...

0.000*康宁 + 0.000*sohu2 + 0.000*wmv + 0.000*bbn7 + 0.000*mmst + 0.000*cid + 0.000*icp + 0.000*沙尘 + 0.000*性骚扰 + 0.000*乌里韦

0.000*media + 0.000*mid + 0.000*stream + 0.000*bbn7 + 0.000*mmst + 0.000*sohu2 + 0.000*cid + 0.000*icp + 0.000*wmv + 0.000*that

0.012* + 0.000*米兰 + 0.000*老板 + 0.000*男人 + 0.000*女人 + 0.000*她 + 0.000*小说 + 0.000*病人 + 0.000*我 + 0.000*女性

0.002*& + 0.002*nbsp + 0.001*0 + 0.001*; + 0.001*西安 + 0.001*报名 + 0.001*1 + 0.001*∶ + 0.001*00 + 0.001*5

0.002*手机 + 0.002*孩子 + 0.001*球 + 0.001*国家队 + 0.001*胜 + 0.001*教练 + 0.001*; + 0.001*名单 + 0.001*阅读 + 0.001*高校

0.001*' + 0.000* + 0.000*= + 0.000*var + 0.000*height + 0.000*width + 0.000*NewWin + 0.000*} + 0.000*{ + 0.000*+

0.003* + 0.002*比赛 + 0.002*我 + 0.002*  + 0.001*; + 0.001*- + 0.001*, + 0.001*他 + 0.001*& + 0.001*―

0.000*航班 + 0.000*劳动合同 + 0.000*最低工资 + 0.000*农民工 + 0.000*养老保险 + 0.000*劳动者 + 0.000*用人单位 + 0.000*养老 + 0.000*上调 + 0.000*锦江

0.000*面板 + 0.000*碘 + 0.000*食物 + 0.000*维生素 + 0.000*营养 + 0.000*皮肤 + 0.000*蛋白质 + 0.000*药物 + 0.000*症状 + 0.000*体内

0.000* + 0.000*EMC + 0.000*包机 + 0.000*基金 + 0.000*陆纯初 + 0.000*南越 + 0.000*Kashya + 0.000*西沙群岛 + 0.000*Clariion + 0.000*西沙

感觉最终的主题模型不太理想, 可以需要多增加参数num_topics的数量。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: