小白也能懂文本挖掘之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可视化展示
三、完整代码展示
热门推荐
胃息肉会变癌吗
天蝎座:性格特点、爱情与职业的影响
中草药卷烟对身体有害吗
如何通过每日自律计划表提升工作效率?
如何通过锻炼改善颈椎病病情
摄影技巧:如何拍出具有烟火气的生活照?
不缺锌补锌有没有坏处
护理专业主要学什么课程 学习难度大不大
备孕期间不能吃什么 吃什么有利于怀孕
无人机+交通执法:城市交管系统技术详解
孙颖莎累计144周排名世界第一,超越刘诗雯升至历史第六
丁俊晖领衔中国四将出战斯诺克球员锦标赛,雷佩凡资格待定,奥沙利文或缺席
褪黑素除了改善睡眠还有什么作用
中国医学顶尖双一流高校:综合/传统/区域/军队/新兴强校全解析
蒲地蓝消炎片说明书
经常这样干的人,大脑真的更年轻!快看你有没有这么做
瑜伽练习中如何保持专注力
国际讲坛:韩国现象级作家金草叶首访高雄城市书展
盗汗挂什么科室
北京为何不用乙醇汽油
崩坏:星穹铁道忘却之庭【鳞渊潮动其十二】关卡攻略
夫妻间车牌互换的条件和流程是什么?
离婚协议上注意什么
四川旅游景点作文300字左右:适合三年级学生写作指南
泡椒鸡爪的热量及其健康摄入建议
智慧环保平台建设方案
一文读懂什么是API

轻松教孩子刷牙!儿童刷牙步骤指南,从抗拒到喜欢只需这几步!
肝经在什么位置?详解肝经循行路径与保健方法
医院电子病历保存时间有法律规定吗