基于随机森林和LDA的论文自动分类及主题挖掘研究

2018-01-04 11:35杨秀璋于小民李娜夏换
计算机时代 2018年11期
关键词:中国知网随机森林

杨秀璋 于小民 李娜 夏换

摘 要: 当前科研成果呈爆炸式增长,论文跨学科交叉分布不断深化,精准获取所需的论文需要耗费大量的时间和精力。文章提出一种基于随机森林的论文自动分类方法,实现对海量论文的自动分类;提出一种基于LDA模型的主题挖掘方法,提取论文关键词并进行词云展示。实验数据采用Selenium技术抓取中国知网九大主题的1710篇论文,实验结果表明,该论文分类方法在准确率、召回率和F值上都有所提升,有效地挖掘出各学科的主题词,为下一步引文分析、文本挖掘和知识图谱构建提供有效支撑。

关键词: 文本自动分类; LDA; 随机森林; 主题挖掘; 中国知网

中图分类号:TP391 文献标志码:A 文章编号:1006-8228(2018)11-14-05

Abstract: With the explosive growth of scientific research results, the cross-disciplinary distribution of papers has been deepened, and it takes a lot of time and effort to accurately acquire the required papers. In this paper, an automatic classification method based on random forest is proposed to realize the automatic classification of massive papers and a topic mining method based on LDA model is proposed to extract the keywords of the paper and display the word cloud. The experimental data used Selenium technology to capture 1710 papers on the nine themes of the CNKI. The experimental results show that the paper classification method has improved the precision, recall and F-measure, effectively mining the subjects of various disciplines. The keywords extracted provide effective support for the next citation analysis, text mining and knowledge graph construction.

Key words: automatic text classification; LDA; random forest; topic mining; CNKI

0 引言

随着科学技术快速发展,科研成果的数量也呈快速增长趋势,各学科的论文、专利、软件著作权等都朝着跨学科交叉分布深化,所蕴含的深层次语义信息也更为复杂。科研工作者如何从这些海量学术成果中寻找到自己需要的信息,获取论文的主题关键词,已经成为当今研究的重要内容。论文自动化分类旨在准确地划分论文学科类别,从而节约科研工作者的时间和精力,提高科研效率;论文主题挖掘旨在提取论文主干脉络,为论文关键词自动发现提供支撑。

目前国内外利用数据挖掘或机器学习发现论文主题词,对学术论文进行自动分类的方法包括词频计算、决策树、支持向量机(SVM)、最近邻算法(KNN)等,这些方法可以有效地对科研成果进行自动分类,但实验的效率和准确率较低,缺乏深层次语义理解,对跨学科的论文分类效果不理想,论文主题词识别不精准。针对这些问题,本文提出一种基于随机森林的论文自动分类方法,实现对海量论文的自动分类;同时,提出了一种基于LDA模型的主题挖掘方法,实现对论文关键词提取,并进行词云可视化分析。

本文的研究成果具有重要的理論意义和实用价值,一方面能高效精准地实现文本自动分类,为科研工作者讯速地提供所需的论文信息;另一方面能挖掘出论文的主题关键词,使文本的主题脉络更加清晰,为文本关键词的自动发现提供帮助。本文所提出的算法可以广泛应用于自动分类、引文分析和文本挖掘等领域,提高科研和工作效率。

1 相关研究

1.1 学术论文中的文本分析

当前科研成果的分析研究已经引起了社会和学术界的广泛关注和重视,所涉及的领域包括引文分析、论文自动分类、主题挖掘、学术成果测度、论文知识图谱构建等。本文主要是关于论文自动分类和主题关键词提取的研究,其中论文自动分类旨在预测论文的所属学科或主题,通常采用基于机器学习或自然语言处理中常用的文本分类技术解决;主题挖掘旨在通过算法识别出不同来源文本的主题或关键词,通常采用LSA或LDA算法计算概率来挖掘主题词。

近年,随着深度学习和机器学习的兴起,国内外学者对论文分析和主题挖掘花大量的时间做了大量的研究。王婷婷等[1]通过LDA模型和Word2Vec算法获取科技文献的主题词概率,并构建词义相关的T-WV矩阵识别主题;廖列法等[2]通过LDA模型对专利文本进行分类研究;逯万辉等[3]提出一种基于Doc2Vec和HMM算法的文本内容特征因子计算模型,研究学术论文主题;颜端武等[4]通过HDP模型研究主题文献并实现自动推荐;曾立梅[5]对硕士论文进行文本分类研究;王昊等[6]通过机器学习算法对中文期刊论文进行自动分类研究;刘浏等[7]基于KNN算法对社科类论文实现自动分类;Blei等[8]提出的LDA主题模型被广泛应用于各领域;王树义等[9]通过主题模型挖掘企业新闻文本及情感分析;苏金树等[10]通过机器学习算法对文本分类技术进行研究;周庆平等[11]提出了基于聚类改进的KNN文本分类算法;张晨逸等[12]提出了MB-LDA模型方法并挖掘微博主题与人物间的关系;Shi等[13]通过LDA主题建模分析了企业非结构化业务数据,量化企业在产品、市场和科技空间中的位置。

尽管论文分析和主题挖掘在算法创新和应用领域都有一些研究,但这些方法的效率和准确率仍然不高,缺乏深层次语义理解,对跨学科的论文分类效果不理想,无法获取深层次精准的主题信息。为了解决这些问题,本文提出了基于随机森林的论文自动分类方法和基于LDA模型的主题挖掘方法。

1.2 LDA模型

LDA(Latent Dirichlet Allocation)是一种文档主题生成模型,由Blei等[8]在2003年首次提出,是一种三层贝叶斯结构,包括主题、文档和主题词三层结构,其中文档到主题(D-T层面)、主题到词(T-W层面)都服从多项分布。LDA主题模型是文本挖掘和信息处理领域重要的文本建模模型,它将一篇文本的每个词都按照一定概率分布到某个主题上,并从这个主题中选择相关的词语集。

LDA主题模型提出了“主题”的概念,有效解决了“维数灾难”问题,在维度压缩的同时使得数据的表现能力增强,广泛应用于主题挖掘、文本分析、自然语言处理、情感分析等领域。

2 基于LDA和随机森林的论文自动分类及主题挖掘算法

2.1 算法总体流程

本文旨在对中国知网九个主题的学术论文进行分析,算法的总体流程如图1所示。

及主题挖掘算法总体流程

⑴ 调用Python、Selenium和XPath技术自动抓取中国知网九大主题共1710篇学术论文并存储至本地。

⑵ 对所抓取的论文摘要进行数据预处理,包括中文分词、停用词过滤、数据清洗等处理,这是文本数据分析的重要处理环节。

⑶ 将预处理之后的网页文本转换为特征词矩阵,涉及特征提取和权重计算。

⑷ 论文分析主要包括基于随机森林的论文自动分类和基于LDA模型的主题关键词挖掘,并进行词云可视化显示。

2.2 数据采集及预处理

本文旨在分析中国知网论文,涉及数据挖掘、数据分析、大数据、Python、民族、数学、文学、数据科学、机器学习九个主题。通过构建一个基于Python、Selenium和XPath技术的网页自动爬虫抓取数据集,包括论文标题、类型、关键字、发布时间、摘要等特征。

在进行数据分析之前,通常需要对所爬取的信息进行预处理操作,包括缺失值填充、异常值处理、数据清洗、中文分词、停用词过滤等步骤,其目标是得到高标准、高质量的数据,从而提升分析的结果。本文的数据预处理操作包括以下三种。

⑴ 缺失值填充。论文缺失字段采用Null标明缺失项,再进行数据定向爬取补全,少量字段采用手动填充。

⑵ 中文分词。分词旨在将汉语句子切分成单独的词序列,本文选用结巴(Jieba)分词工具,通过导入自定义词典实现专有名词和固定词组的分词。

⑶ 停用词过滤。原始语料中会存在“·”、“...”、“/”等特殊符号,也会存在如“你”、“吗”、“可以”等不影响文本主旨却出现频率很高的停用词,此时需要定义停用词表对这些词语进行过滤。

2.3 特征提取及TF-IDF

学术论文摘要数据预处理后,需要对文本信息进行特征提取。这里采用向量空间模型(VSM)技术实现,用向量(W1,W2,W3,…,Wk-1,Wk)来表示论文文本,其中Wi表示第i个特征词所对应的权重(i=1,2,3,…,k)。

为了尽可能多的保留影响程度更高的特征词,过滤掉一些常见却无关紧要的词语,本文采用TF-IDF技术表示权重。TF-IDF计算特征词的重要程度是依据特征词在文本中出现的次数和在整个数据集中出现的文档频率实现的。其中TF(Term Frequency)表示某个关键词在整篇文章中出现的频率;IDF(Invers Document Frequency)表示倒文本频率,它是文档频率的倒数。该技术用来降低所有文档中常见却对文档影响不大词语的作用。

TF-IDF的完整公式如下:

其中,特征詞ti在训练文本dj中出现的次数记为ni,j,文本dj中全部特征词的个数记为,语料对应所有文本的总数记为|D|,文本中包含特征词ti的数量记为|Dti|。tfidfi,j表示词频tfi,j和倒文本词频idfi的乘积,权重与特征项在文档中出现的频率成正比,与在整个语料中出现该特征项的文档数成反比。tfidfi,j值越大则该特征词对这个文本的重要程度越高。

2.4 基于随机森林的论文自动分类算法

该算法的优势是通过随机森林分类器提升实验的准确率、召回率和F值,更精准高效地实现文本自动分类。

算法:基于随机森林的论文自动分类算法

输入:中国知网论文文本摘要

输出:测试集的论文所属类别

⑴ 调用Selenium和XPath技术爬取中国知网论文信息,并提取每篇文章的摘要;

⑵ 对所获取的数据集进行预处理,包括中文分词、数据清洗、停用词过滤等;

⑶ 对语料进行特征提取操作,并结合TF-IDF技术将文本转换为数学向量的形式;

⑷ 将处理好的数据集随机划分为训练集和测试集,其中训练集共1000篇摘要,测试集共710篇摘要,均涉及九大主题;

⑸ 训练随机森林算法模型,其迭代次数设置为1000次,再对测试集进行实验分析,并获取每篇摘要的分类类标;

⑹ 采用准确率、召回率和F值评估实验结果,最终结果为10次实验结果的平均值。

3 实验结果与分析

⑴ 数据说明及预处理

本文数据集采用Python自定义爬虫随机抓取中国知网学术论文信息,涉及数据挖掘、数据分析、大数据、Python、民族、数学、文学、数据科学、机器学习九个主题,共1710篇论文(包括训练集1000篇,测试集710篇),详细信息如表1所示。

所爬取的论文信息共包含十個字段,如图2所示,包含论文主题、标题、作者、关键词、出版年份、出版社、引用次数、下载次数、摘要、类型等。本文对学术论文的摘要进行分析,经过中文分词后,导入停用词典进行数据清洗和降维,再进行特征提取和权重计算。

⑵ 评价指标

评价方法一般采用准确率(Precision)、召回率(Recall)和F值(F-measure),计算公式定义如下所示:

⑶ 论文自动分类实验

表2是采用随机森林算法对学术论文测试集进行文本自动分类的实验结果,其中文学、民族和数学的F值最高,分别为0.97、0.96和0.96。

图3是论文摘要的分类结果,它将数据挖掘、数据分析、大数据、Python、民族、数学、文学、数据科学、机器学习主题相关的文本聚集在一起。

接着分别对比了朴素贝叶斯、最近邻、决策树和随机森林算法的论文自动分类实验,其中各算法的实验结果如图4所示。从图中可以知,基于随机森林的论文自动分类方法的准确率、召回率和F值的实验效果都更为理想。整体体实验结果呈现出:随机森林>决策树>最近邻>朴素贝叶斯的趋势,基于随机森林算法的论文自动分类方法可以广泛应用于文本分类领域。

⑷ LDA主题挖掘实验

在基于LDA模型的论文主题挖掘实验中,设置的主题数(n_topic)为9,迭代次数(iterations)为500,调用Python环境下的LDA主题模型进行模拟训练,每个主题内的主题词根据其概率大小排序,获取各论文主题关键词如表3所示。

将LDA识别的主题关键词在经过词云可视化后,呈现如图5所示的结果。

从图5中可以看到,“文学批评”、“文学史”、“网络小说”等关键词与文学主题相关;“数据仓库”、“决策”、“数据挖掘”与数据分析主题相关;“支持向量”、“神经网络”、“人工智能”与机器学习主题相关;“文化”、“教育”、“少数民族”与民族主题相关。

4 结束语

本文的研究成果主要应用于论文自动分类和文本主题词挖掘领域,以中国知网九大主题的1710篇学术论文进行实验。提出了一种基于随机森林的论文自动分类方法,实现对海量论文的自动分类;提出了一种基于LDA模型的主题挖掘方法,实现对论文关键词提取,并进行词云可视化分析。

实验结果表明,本文提出的随机森林论文自动分类方法在准确率、召回率和F值上都有所提升,当给出一篇新的论文时,我们能及时对论文进行自动分类;通过LDA模型能有效地挖掘出各学科的主题词,使得论文主题脉络更清晰,文本主题词挖掘更加精确高效,为下一步引文分析、文本挖掘和知识图谱构建提供有效支撑,具有一定的应用前景和实用价值。

参考文献(References):

[1] 王婷婷,韩满,王宇.LDA模型的优化及其主题数量选择研究——以科技文献为例[J].数据分析与知识发现,2018.1:29-39

[2] 廖列法,勒孚刚,朱亚兰.LDA模型在专利文本分类中的应用[J].现代情报,2017.37(3):35-39

[3] 逯万辉,谭宗颖.学术成果主题新颖性测度方法研究——基于Doc2Vec和HMM算法[J].数据分析与知识发现,2018.3:22-29

[4] 颜端武,陶志恒,李兰彬.一种基于HDP模型的主题文献自动推荐方法及应用研究[J].情报理论与实践,2016.39(1):128-132

[5] 曾立梅.基于文本数据挖掘的硕士论文分类技术[J].重庆邮电大学学报:自然科学版,2010.22(5):669-672

[6] 王昊,叶鹏,邓三鸿.机器学习在中文期刊论文自动分类研究中的应用[J].现代图书情报技术,2014.3:80-87

[7] 刘浏,王东波.基于论文自动分类的社科类学科跨学科性研究[J].数据分析与知识发现,2018.3:30-38

[8] Blei D M, Ng A Y,Jordan M I. Latent Dirichlet Allocation[J].Journal of Machine Learning Research,2003.3:993-1022

[9] 王树义,廖桦涛,吴查科.基于情感分类的竞争企业新闻文本主题挖掘[J].数据分析与知识发现,2018.3:70-78

[10] 苏金树,张博锋,徐昕. 基于机器学习的文本分类技术研究进展[J].软件学报,2006.17(9):1848-1859

[11] 周庆平,谭长庚,王宏君,等. 基于聚类改进的KNN文本分类算法[J].计算机应用研究,2016.33(11):3374-3377

[12] 张晨逸,孙建伶,丁轶群.基于MB-LDA模型的微博主题挖掘[J].计算机研究与发展,2011.48(10):1795-1802

[13] Shi Z M,Lee G,Whinston A B. Toward a Better Measure of Business Proximity: Topic Modeling for Industry Intelligence[J].MIS Quarterly,2016.40(4):1035-1056

猜你喜欢
中国知网随机森林
随机森林在棉蚜虫害等级预测中的应用
基于二次随机森林的不平衡数据分类算法
《广西民族研究》创办30年来刊发文章的回顾与展望
拱坝变形监测预报的随机森林模型及应用
基于随机森林算法的飞机发动机故障诊断方法的研究
中国知网数据库涨价之对策分析
AMLC与PSDS检测医学论文重复率结果分析
利用VB读取中国知网过刊数据提取元数据的研究
基于数据库的咸阳职业技术学院科研论文统计分析
基于随机森林算法的B2B客户分级系统的设计