版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、yLDAv-is是话题模型交互式可视化库.最初是在R语言社区的Carson SievertfllKenny Shirley开发的。他们俩的努力使得话题可视化成为可能.现在pyLDAvisuT以通过 python特别是jupyter notebook来分析并可视化话题模型。如果你对pyLDAW的运行原理感兴趣.建议你阅读这篇论文,LDA vis: A method far visualizing and interpreting topicshttps:nip Stanford edu/event$血心0Ll/p&per&MLL pdfpyLDAvi s 安装pip install pyldav
2、is一、pyLDAvis使用方法导入模型语法pyLDA需要先号入模型,支持的模型的来源有三种:skiear n :,Jld角模型gensiaffJldalS 型graphlab的Id角模型号入的语法import pyLDAvis data - pyLDAvis. sklearn. prepare(sklearn_lda, 3klearn_dtm, vectoriser)#data = pyLDAvis. gensim. prepare(gensm_lda, gen3im_dtm, dictionary)Udats = pyLDAvis. graphlab. prepare(topic_mode
3、l, docs)参数解读:skiearnlda gensi mlda:计算好的话题模型sklearndtmgensimdtm:文档词频矩阵v e ctori:er dictionary: 词语空 何topic_model: graphlab生成的话题模型docs:语料集graphlab我们没有学习,之后的课程可能会讲到。骅和sklearn我们都接触过.而且昨大我们分享的教程是gensim方式生成话题模型,今天我们主要是看看sklearn 方式生成的话题模型的可视化。其实不管哪一种模型生成方式.使用方法基本类似。可视化语法pyLDAvis. displace (data) 在notebook的o
4、utput cell中 显示在浏览器中心打开一个界面pyLDAvis. show(data)二、实战我们做pyLDAvisi舌题模型可视化.步骤分为: 数据读取预处理生成文档词频矩阵生成LDA模型pyLDAvis仰视化数据读取昨天我分享的内容作为诂题分析实际上略微有些牵强,因为对渚时健先生讨论其实主要是他的不认输精神本质上话题之间界限很模糊。今天我专门从知乎上采集了大 学生创业、学术圈两种数据源。import pandas as pddf = pd. read_json(* data, json* , line3=True)U删除com ent字段31夏的数据df. drop-duplica*
5、es(subset=,content* , nplace=True)U内容存储在content列df content* . head 0运行我们假设现在数据在采集或者保存过程中,丢失了话题类别的标注。但是我们知道数据大概有四类,按照话题数等于2去做话题分析,理论上应该能区分开。整个dfcontent作为我们研究的语料库.语料座中的旬一行数据是一个文档。U航机的从content列中抽取5个文档 df content, . sample(5)运行1201清华计算机博士在诙。E新X/pXp沃德大呐我居然也有百赞的的回答了.324国家奖学金八与奖学金不可我得,如有助学金购助学金降档: 新鸿基等奖学金性
6、质助学金五.2019几年前.学院的副院长和正院长,一个喜欢搞女学生出了名,一个喜欢搞男学生出了名。.1099利益相关,匿名:爆一个学术1耕 的 禽兽大佬王。p2王红星/h.3!最全兼职汇总来袭! ! 深入分析17种兼职的优缺点网Name: content, dtype: object预处理数据预处理是文本分析的开始.也是最重要板费功夫的地方上面的数据我们看到有很多html标签.在这部分我们将剔除非中文字符,只保留中文。而且要保证退入语 料库中的文本是长文本(比如在这里我们只要长度大于20的文本保留到语料库中)。u4e00-u9a5j是匹配汉字的正则表达式Aule00-u9fa5j是匹配非汉字的
7、内容将非汉字替换为df content9 - df I* cont ent * . str. replace (* * u4e00u9fa5)df content . head (10)运行0统一回复了一些知友的问题清拉到文章底部大学赚真的IF甯简单不吹不作绝对母个人都能做到前提是你去补充统一回答知友评论和私信的问题清拉到本文底部本文多图毕业了快三个月呢盘算者要不要过个百天纪岁末年终以此回顾大学的爆苦岁月也为余下的半年不到时光开个新头十年间所赚的钱一万不止光学费和生史上最全兼职汇总来袭深入分析种兼职的优缺点网络蝙术超级干货高能预警先介绍自己年二本市场营销专为什么只赚一万块只赚-万块学费生活费是
8、有了那谈恋爱的花销你考虑没有还有学生时代的时间最是充沛9一直关注知乎很久了第一次答题小紧张本人大三在读中国传媒大学信息:程学院数字媒体技术专业女汉子14首先说一下我的情况我在读研期间贼万是我的第一桶金在大学没嫌多少钱主要裁奖学金养活哈哈因为大.19大学四年挣有来万元吧没花多少时间基本是靠技术挣钱的背景介绍本人是级本科生专业为计算机科学与.24这是更新的内容晓文在下面一觉醒来发现知乎己炸好多私信啊你问我滋不滋瓷啊呸你问我要卖不卖我当然.29看到这个话题我的兴趣就来了因为佛大毕业一年读书那会赚r左右做到现在累积都有了说说我赚的第一个.Name: content, dtype: object语料库中
9、可能因为剔除IF中文后内容己经非常简短.为防止短文本迎入语料库.我这里设置长度大丁 10的才能进入语料库中。def length_bigger_than_10(text):if len(text)=10:return Trueelse:return False#新建length列df length, J = df. agg (content* : length_bgger_than_10?)SfHlength列来保留长度大丁 10的文本.井将其放入新的dataframePnewdf = df :d : length* =True生成文档词频矩阵 做文本分析-尤其是涉及到3klgn机器学习以我们
10、需要将中文文本数据整理成sklearn能憧的形式,因为sklearn最初只是为西方语言设计的,而西方文本中的单词是以 空格间隔.而中文是所有的字词没有空格间隔。所以我们需要设计一个文本清洗函数: 先分词剔除无苞义词语和长度小于2的词语之后用空格间隔词语import nltk import jieba#停止词stopwords = nltk. corpus, stopwords, words ( Chinese* )def clean_text(text):wordlist = jieba. Icut(text)芹去除停用词和长度小于2的词语wordlist = w for w in wordl
11、ist if 宣 not in stopwords and len (w) 2芹将中文数据组织成类似西方于洋那样,词语之间以空格间隔document =*. join(wordlist)return documentU使Jlldataframe. agg对content列实行clean_text方法newdff content* = newdf. agg(* content* : clean_text)corpus = newdf: content, corpus, head ()运行0 请拉到非常简单不吹不作毒文先两万左右说真的干什么好好学习没什么几十年好好.请拉到盘算者纪念日 拼了命成功率
12、生活费双学位有利于奖学金歪打正右体力活答.十年间生活费沾沾白喜洋洋得意喜众君懵懵怪质一个月生活赞勉勉强强十几年淳零.深入分析 优缺点 市场营销 尽量避免 具体操作与赛克马赛克深入分析 优玦点适用范闱.一万块-万块生活费谈恋爰塞岩假年轻人雄心壮志两万块银行卡第一笔第二笔有 Name: content, dtype: object创建LDA话题模型在这里我们使用skleam生成LDA话题模型,一般做LDA时我们都有对研充数抿有大致的了解像我知道数据包含两类(大学生创业、学术固).所以这里我们将话题数 设置为 n_compocents=2import pyLDAvis import pyLDAvis
13、. sklearnfrom sklearn. feature_extraction. text import CountVectorizerfrom sklearn. decomposition import LatentDirichletAllocationvectorizer - CountVectorizer 0doc_t ermmatr i: = vectorizer. f i t_transf ora (corpus)lda_xodel = La*entDirichletAllocation(n_coziponents=2, random_state=SSS) lda_xodel.
14、fit(doctermmatrix)运行LatentDirichletAllocation(batch_3ize=12S, doc_topc_prior=None, evaluate_ever1, learnng_decay=O. 7, learning_method=,batch*, learnng_offset=10. 0, max_doc_update_iter=100. max_iter=10, mean_change_tol=0. 001, n_c omponent s=2, n_job3=None, n_topics=None, perp_tol=0. 1, random_31 a
15、t e=SSS, topi c_-s,ord-prior=None, total_3ample3=1000000.0, verbo3e=0)pyLDAvis可视化最后.我们使用pyLDAvis库进行话题的可视化。该库可以交互式的显示不I司话题,及每个话题的相关词语。号入模型方法pyLDAvis. sklearn. prepare(lda_model, doc_term_matrix, vectorize可视化方法pyLDAvis. displace (data) 在notebook的output cell中 显示 pyLDAvis. show (data) 在浏览器中心打开一个界面执行下方可视化
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 学校与学生安全协议书
- 建发房产定金合同范本
- 工程合同纠纷解协议书
- 抖音代发协议合同模板
- 安徽林地承包合同范本
- 房屋购买合同更改协议
- 建筑工程保险合同范本
- 工程送水送电合同范本
- 小学承包餐厅合同范本
- 承包焊接管道合同范本
- 人情世故培训课件
- 商品混凝土实验室操作手册
- 资金调拨拆借管理制度
- 装饰装修工程监理月报
- 超星尔雅学习通《美的历程:美学导论(中国社会科学院)》2025章节测试附答案
- 教学课件-积极心理学(第2版)刘翔平
- 2019人教版高中物理必修第一册《第二章 匀变速直线运动的研究》大单元整体教学设计2020课标
- DGTJ 08-2176-2024 沥青路面预防养护技术标准(正式版含条文说明)
- DB33 802-2013 铝合金铸件可比单位综合能耗限额及计算方法
- 移植后免疫监测技术-洞察分析
- 《车用动力电池液冷板技术条件》
评论
0/150
提交评论