小白也能懂文本挖掘之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可视化展示
三、完整代码展示
热门推荐
全责车险赔付全解析:流程、标准与注意事项
全面解析:车祸后的法律与赔偿选项
阿奇霉素滥用危害大,可致肝损和心脏毒性
巨灾保险和科技保险的预赔机制创新与实践
冬吃萝卜夏吃姜:传统养生智慧的现代解读
阿聪师教你挑选顶级芋头,变身选购达人
潮汕特色反沙芋头,你get√了吗?
潮汕风味:家庭版反沙芋头简易教程
甄嬛传:一个少女如何在后宫中学会权谋与利用
十三年后再聚首:《甄嬛传》主创团队重现经典场景
里尔客场战尼斯:9场不败球队遭遇主场龙
云上草原:安吉最美自然景观推荐
安吉古城遗址探秘:八亩墩的秘密
安吉旅游打卡圣地,这五个景点火了!
《甄嬛传里的诗词世界:如何塑造人物、推动剧情》
中医食疗讲究营养均衡,八味药材展现配伍智慧
四款养生茶助你温暖过冬,润肺止咳效果好
中医郁乐汤:疏肝解郁助眠,三步煎煮治疗焦虑抑郁
忌日祭拜礼仪:时间、祭品、流程全解析
回顾凌小娟案:为得财产杀姐姐一家四口,行刑前:请给我一个机会
孩子偷拿东西屡教不改怎么办
甄嬛传中的古诗词:4首经典诗句如何塑造人物命运
上海市基层社区卫生服务中心村卫生室中医药服务情况工作研讨会在本中心召开
迷你世界与我的世界:两款游戏的区别与特色
如何打造高转化率的海报文案:从目标受众到创意表达
如何设计出“一眼看出产品余生”的吸睛海报?
葱爷教你玩转系列海报设计:统一性与多样性的平衡艺术
浙江双龙洞跻身5A景区,1500年溶洞群焕发旅游新活力
海南省肿瘤医院:引进北京专家 助力胃肠肿瘤患者大病不出岛
女巫为什么骑扫帚?揭秘一个流传千年的神秘符号