不会写代码如何进行大数据文本分析——主题分析篇

2020-03-31
admin
摘要:今天这一期文章,我们将以疫情期间采集到的近千条第一财经相关报道为例,介绍文章内容LDA主题模型分析的详细教程。

上一期文章中,锐研团队为大家介绍了不会写代码如何进行词频统计并生成词云图。(《不会写代码如何进行大数据文本分析——词频统计篇》)事实上,这只是大数据文本分析中的冰山一角,词频统计只是简单地对文本内容进行了描述性分析,属于较为常规的数据分析,能揭示出一些问题,概括、表述事物状况。简单的描述性分析之后是更为深度的文本数据分析,从大量非结构的数据中提炼出模式,也就是有用的信息或知识的半自动化过程。


该系列的文本分析介绍主要涉及文章内容LDA主题模型分析、基于关键词的主题抽取、主题分析、文本分类、词向量/关联词分析。今天这一期文章,我们将以疫情期间采集到的近千条第一财经相关报道为例,介绍文章内容LDA主题模型分析的详细教程。


一、什么是LDA主题模型


要解释什么是LDA主题模型,由于它属于概率主题模型的子类,首先要解释概率主题模型。

 

概率主题模型(Statistical Topic Models)是一类从文本文档中提取潜在语义信息的有效方法,基本原理是认为文档是若干主题的混合概率分布,而每个主题又是一个关于单词的混合概率分布,可以看作是文档的一种生成模型。在概率主题的各项方法当中,潜在狄利克雷分配模型(LDA model)是最为有效的模型之一。

 

LDA是一种典型的无监督(也就是每段文本没有标签,我们事先不知道文本内容)、基于统计学习的词袋模型,即它认为一篇文本内容是由一组词构成的一个集合,词与词之间没有顺序以及先后的关系。一篇文本可以包含多个主题,文本中每一个词都由其中的一个主题生成。主题模型通过分析文本中的词来发现文本中的主题、主题之间的联系方式和主题的发展,通过主题模型可以使我们组织和总结无法人工标注的海量文本。


二、LDA主题模型与人工编码的区别


在人大新闻系RUC新闻坊的报道《2286篇肺炎报道观察:谁在新闻里发声?》中,研究者梳理了新冠肺炎疫情相关的2286条原创报道,参照赵亚男(2015)针对西方媒体对埃博拉疫情的报道研究中对报道内容的分类,将报道主题进行事先分类,最终通过人工编码的方式对报道内容进行了分析。

 

利用传统人工编码可以对小批量文本内容进行主题分析,前提是需要在分析前人工设定好主题类目,以及训练一批具备专业素养的编码员。这和LDA模型的逻辑其实是恰恰相反的。传统人工编码需要事先建立规则,再对每一篇文本进行编码;而LDA模型则是一种典型的“无监督学习”(也就是每段文本没有标签,我们事先不知道文本内容)、基于复杂算法的模型。


换句话说,对文本内容没有事先了解的情况下,也可以通过建构LDA主题模型对海量文本进行主题分析。


三、如何实现主题分析


了解了什么是LDA主题模型后,我们回到需要研究的问题上,不会写代码,如何进行大数据分析?在这里,我们依然以爬取到的来自第一财经官网新冠肺炎疫情相关板块的文章为例,为大家介绍如何使用锐研云文析平台对文本内容进行主题分析。

 

数据采集的时间区间为2019.12.31~2020.2.20,共计1733篇,包括原创及转载。采集的字段为标题、作者、来源、摘要、内容以及发布日期。最终得到的数据如下:



Step 1 导入数据


首先我们将数据导入文本库,并对文本进行了数据清洗(见上期),在分析模块中选择【主题分析】



Step 2 建立主题分析


LDA模型的主题数需要人工来确定,云文析平台支持用户自定义主题参数,进行不同尝试后选出最佳主题数。我们分别尝试了将主题数定义为5、8、10,进行了主题分析。



Step 3 提炼主题


为了确保分类的准确性,我们对不同数量的主题分类进行了对比,通过以下两个标准来判断该分类是否合理:

(1)主题的关键词是否能够有明显的区分

(2)每个文章至少与一个主题有比较高的对应关系

 

以主题数量为5时得到的分类结果为例,如下图所示:

如图所示,主题数量为5时,分类结果区域分为三部分,【主题文本数量统计图】中点击柱状图可查看各主题文本数量;在【分析结果】中,各主题分类结果下系统提供的关键词之间没有大量重复关键词,能够较直观的概括出主题;同时,通过查看【文本概率详情】可以发现,每一篇文章都有一个主题概率最高的得分,且大部分都大于0.5,能够较明显地区分该文章主题。


主题分类数为5时的文本概率


然而,当主题分类数分别为8和10时,每篇文章在其中一个主题下的概率比较小,很多甚至只有0.2、0.3不等,不能明显区分该文章主题:

主题分类数为8时的文本概率

主题分类数为10时的文本概率



通过上述对比可知,当主题分类数为5时分类结果最优,我们对分析结果进行了提炼,结合财经类媒体的特性,我们认为,以下五类主题能够较为全面地概括此次疫情期间新闻报道:

主题1-疫情对经济的影响;

主题2-企业生产情况;

主题3-疫情现状;

主题4-中国对新型冠状病毒的临床研究情况;

主题5-救援物资情况。


各主题分类比例


如果想要对主题分类结果做进一步分析,云文析还支持导出文本概率详情:


由于本次主题分析数据来源于第一财经官网新冠肺炎疫情相关板块,采集的时间区间为2019.12.31~2020.2.20,我们想要进一步分析不同报道主题随着时间的推移,每天的新闻报道情况如何。根据导出的文本概率详情文件,结合文本发布时间,我们在excel里对不同主题的新闻报道情况做了数量和比例上的分析,具体如下:

各主题新闻报道数量变化趋势


各主题新闻报道占比变化趋势



由于1月20日前疫情相关新闻报道数量较小,我们选择了1月20日之后的数据,可以看出,主题1-疫情对经济的影响,随着武汉封城之后新闻报道量逐步增加;主题5-救援物资,前期关注较多,后期增幅平缓,但也保持着持续的关注。


—————————————————————————————————————————————————

锐研·云文析作为文本大数据分析与挖掘云平台,可应用自然语言处理、机器学习、人工智能等技术对大规模文本数据进行分析挖掘,并呈现可视化分析结果。今后,锐研团队会分享更多数据分析相关实用工具及案例,希望此文能为您提供一些帮助。


疫情期间,锐研云文析开放个人用户注册,有相关研究意向,欢迎扫描下方二维码联系我们的官方客服,为您开通更多权限。锐研·云文析网址:https://wx.ringdata.com

发表评论
评论通过审核后显示。