gensim_主题提取
# https://blog.csdn.net/whzhcahzxh/article/details/17528261
# gensim包中引用corpora,models, similarities,分别做语料库建立,模型库和相似度比较库 from gensim import corpora, models, similarities
import jieba
sentences = ["我喜欢吃土豆","土豆是个百搭的东西","我不喜欢今天雾霾的北京"]
words=[]
for doc in sentences:
words.append(list(jieba.cut(doc))) #得到的分词结果构造词典
dic = corpora.Dictionary(words) # 词典生成好之后,就开始生成语料库了
corpus = [dic.doc2bow(word) for word in words] #TF-IDF变换
tfidf = models.TfidfModel(corpus)
corpus_tfidf = tfidf[corpus] # 训练LSI模型,假定三句话属于2个主题,
print('>>>>>>LSI>>>>>>>')
lsi = models.LsiModel(corpus_tfidf, id2word=dic, num_topics=2)
## 建立的两个主题模型内容
## lsiout=lsi.print_topics(2)
# 将文章投影到主题空间中
corpus_lsi = lsi[corpus_tfidf]
for doc in corpus_lsi:
print(doc) '''
[(0, -0.70861576320682107), (1, 0.1431958007198823)]
[(0, -0.42764142348481798), (1, -0.88527674470703799)]
[(0, -0.66124862582594512), (1, 0.4190711252114323)] '''
print('>>>>>>LDA>>>>>>>')
# 接着训练LDA模型,假定三句话属于2个主题,
lda = models.LdaModel(corpus_tfidf, id2word=dic, num_topics=2)
## 建立的两个主题模型内容
## ldaOut=lda.print_topics(2)
# 将文章投影到主题空间中
corpus_lda = lda[corpus_tfidf]
for doc in corpus_lda:
print(doc) # 输入一句话,查询属于LSI得到的哪个主题类型,先建立索引: index = similarities.MatrixSimilarity(lsi[corpus])
query = "雾霾很严重"
query_bow = dic.doc2bow(list(jieba.cut(query)))
query_lsi = lsi[query_bow]
print('query_lsi',query_lsi) # 比较和第几句话相似,用LSI得到的索引接着做,并排序输出 sims = index[query_lsi]
sort_sims = sorted(enumerate(sims), key=lambda item: -item[1])
print('sort_sims',sort_sims)
gensim_主题提取的更多相关文章
- LinkedIn文本分析平台:主题挖掘的四大技术步骤
作者 Yongzheng (Tiger) Zhang ,译者 木环 ,本人只是备份一下.. LinkedIn前不久发布两篇文章分享了自主研发的文本分析平台Voices的概览和技术细节.LinkedIn ...
- LDA提取信息
文本主题模型提取 如下程序将句子主题提取后,将权重值存入dataframe. #!/usr/bin/python # -*- coding:utf-8 -*- import pandas as pd ...
- R语言颜色综合运用与色彩方案共享
R语言颜色综合运用与色彩方案共享 小魔方 EasyCharts 2016-11-21 今天这篇主要讲解R语言颜色综合运用,主要跟大家介绍如何提取那些专业色彩包中的颜色搭配用于在基础绘图系统和高级绘图系 ...
- Boost(1.69.0) windows入门(译)
目录 Boost windows入门 1. 获得Boost源代码 2. Boost源代码组织 The Boost Distribution 3. 仅用头文件的库 Header-Only Librari ...
- 智慧金融时代,大数据和AI如何为业务赋能
前言:宜信技术人物专访是宜信技术学院推出的系列性专题,我们邀请软件研发行业的优秀技术人,分享自己在软件研发领域的实践经验和前瞻性观点. 第一期专访我们邀请到宜信科技中心AI中台负责人王东老师,从大数据 ...
- 第九周周四计划&&周三总结
今天由于自己的原因进度不是很大,今天整理了一下全网关联的思路流程(个人可能就是那种没自信,在思路不知道对不对的情况下不敢下手那种渣渣),和之前的一个学长讨论了一下大概思路流程,如下: (1)使用LDA ...
- 第九周周二总结&&第九周周三计划
周二的主题提取使用LDA模型进行了简单的测试,效果还可以.主要是提取的分词的结果,LDA:随机生成文章各个主题比例,再根据各个主题随机生成词,词与词之间的顺序关系被彻底忽略了,这就是LDA眼中世间所有 ...
- 科研伴我成长——上海交通大学ACM班学生在微软亚洲研究院的幸福实习生活
每一年,微软亚洲研究院都会迎来一批"特殊的"实习生--他们既不是从五湖四海汇聚而来,也不是在读的硕士和博士.他们相识已久,知道对方的小秘密.小八卦,也相互敬佩.惺惺相惜--他们就是 ...
- 基于Neo4j的个性化Pagerank算法文章推荐系统实践
新版的Neo4j图形算法库(algo)中增加了个性化Pagerank的支持,我一直想找个有意思的应用来验证一下此算法效果.最近我看Peter Lofgren的一篇论文<高效个性化Pagerank ...
随机推荐
- Spring设置动态定时任务
1.在Spring中经常会用到定时任务,一般会在业务方法上使用@Schedule(cron="定时执行规则"),无法实现从前台动态设置定时任务. 在java中固定频率的任务使用Sc ...
- python远程操作服务器
python远程控制 标签(空格分隔): 远程Linux python远程控制:方案: Paramiko Pexpect(主要Linux机器) 安装Paramiko pip install param ...
- msf客户端渗透(一):payload利用简单示范
针对Windows 开启侦听 查看payload选项 将1.exe传到网页上 win7访问网页并下载1.exe 下载好之后双击运行,在服务器端就获得了一个shell 针对linux 先获取到一个软 ...
- burpsuite的使用(二)
爬网 为了爬网更加顺畅,先关掉截断功能 先进行手动爬网 然后进到目标页面需要点的地方和输入的地方去操作一下,在spider下就能看到爬网的记录 自动爬网 当你爬网时需要登录身份验证时,提示输入,也可以 ...
- 解题5(StringMerge1)
题目描述 按照指定规则对输入的字符串进行处理. 详细描述: 将输入的两个字符串合并. 对合并后的字符串进行排序,要求为:下标为奇数的字符和下标为偶数的字符分别从小到大排序.这里的下标意思是字符在字符串 ...
- oracle学习--循环语句
oracle学习--循环语句 loop循环: create or replace procedure pro_test_loop is i number; begin i:=0; loop i:=i ...
- java 连接sqlserver数据库
1.ResultSet executeQuery(String sql):执行某条查询语句并返回结果public static void main(String[] args) throws Exce ...
- python 遍历enumerate
在python中enumerate的用法多用于在for循环中得到计数,本文即以实例形式向大家展现python中enumerate的用法.具体如下: enumerate参数为可遍历的变量,如 字符串,列 ...
- 对arm裸板调试的理解
由于arm芯片一般都包含的由jtag调试这项功能,cpu向外部发出信号时,一般都要同jtag发送出去,它就像一个路口的交警一样,能够控制车辆的运行,当然在arm中指的是cpu发出的数据和地址,我们在调 ...
- swift - 高斯模糊
/* case extraLight case light case dark @available(iOS 10.0, *) case regular @available(iOS 10.0, ...