小白也能懂文本挖掘之LDA主题模型及代码详解
创作时间:
作者:
@小白创作中心
小白也能懂文本挖掘之LDA主题模型及代码详解
引用
CSDN
1.
https://m.blog.csdn.net/Hou556/article/details/144915890
LDA(Latent Dirichlet Allocation)主题模型是一种常用的文本挖掘技术,能够帮助我们从大量文档中自动发现潜在的主题结构。本文将从零开始,通过简单的代码示例,带你一步步掌握LDA主题模型的原理和应用。
一、LDA模型的基本概念
LDA模型认为一篇文档是由多个主题混合而成的,而每个主题又是由若干词语混合而成的。这里,“混合”的意思是每个文档或每个主题中的词语都按照一定的概率分布出现。换句话说,LDA模型将文档的构造过程看作是一个概率过程:首先以一定的概率选择某个主题,然后再在这个主题下以一定的概率选择某个词语,不断重复这个过程,就生成了整篇文章。需要注意的是,LDA模型中假设词与词之间是没有顺序的,即所有词无序地堆放在一个大袋子中,这种方式可以使算法相对简化。
二、代码拆解
主要讲代码分成6个部分 1.数据处理 2.LDA模型的建立 3. 输出每个主题的关键词 4.输出每个句子所属主题并保存到excel中 5.各个主题词云图绘制 6.LDA可视化展示
1.数据处理
读取数据,并进行去停用词和分词操作
2.LDA模型的建立
机器学习模型只能分析数字数据,所以要对文本数据进行转化,CountVectorizer会将文本中的单词转换为词频特征,即统计每个单词在文档中出现的次数。
参数解释:
- max_df=0.95:这个参数用于过滤掉在太多文档中出现的单词。0.95意味着如果一个单词在超过85%的文档中出现,那么它将被忽略。这有助于去除那些太常见、对主题区分帮助不大的单词(如“的”、“是”等)。
- min_df=2:这个参数用于过滤掉在太少文档中出现的单词。2意味着如果一个单词在少于2个文档中出现,那么它将被忽略。这有助于去除那些太罕见、可能是拼写错误或特定上下文的单词。
- max_features=1000:这个参数用于限制词频矩阵中的特征数量(即单词的数量)。在这里,1000意味着只保留词频最高的1000个单词作为特征,其余单词将被忽略。这有助于减少计算量,并可能提高模型的性能(尽管有时可能会丢失一些有用的信息)。
3.输出每个主题的关键词
代码逻辑也很简单,用了一个循环进行遍历,然后用LDA自带函数进行输出
4.输出每个句子所属主题并保存到excel中
使用循环遍历,输出每个句子所属主题,并保存到excel中
5.各个主题词云图绘制
6.LDA可视化展示
三、完整代码展示
热门推荐
老年人饮食的四大原则:均衡、适量、多样化和易消化
关于老年人的营养与健康 那些你应该知道的事儿
胖猫事件:一场网络暴力背后的性别歧视
如何有效去除车里汽油味
车内有汽油味怎么办?如何消除车内汽油味?
分手后如何重建自我价值
数据“跃动”,“新”力量重塑商业格局
氢氧化钙:性质、用途与安全指南
蒸饺面怎么和皮软又劲道
童年影像中流动的真挚情感:《少年闰土》解读
肚子左边一阵一阵疼是什么情况
“哪吒” 名字的由来和含义
犀牛角:珍稀生物遗产的多重价值与保护
诺如病毒感染最常见的症状是:腹泻及引起的
南昌自驾七天贵州游:自由行攻略与六日游路线指南
自查简历只需要这六步
为什么DNS检测工具是你网站优化的必备利器?
结婚手续长什么样:中国婚姻登记的法律规定与实务指南
上海最新生育数据公布:平均初育年龄31.66岁!
“敌草快”中毒案例频发,网购农药监管漏洞何时能堵上?
普洱旅游住宿攻略:哪里住宿最便捷舒适,满足不同需求
北京对外开放的大学食堂:美食与知识的交融
牙隐裂的早期症状及应对策略,帮你及时识别并采取相应措施!
牙隐裂的症状有哪些?牙隐裂悄悄来袭牙齿敏感|咬合疼痛|牙龈肿胀你都中招了吗?
Dropout:防止神经网络过拟合的简单方法
甲状腺囊肿多发
孕妇桂圆能吃吗
风险补偿的实施方法是什么?这种实施方法的效果如何评估?
转移风险的方法包括哪些
小白也能懂的 UI 布局技巧,轻松打造专业界面