药品安全话题发现技术研究

2019-05-24 14:17徐静张文学
软件导刊 2019年5期

徐静 张文学

摘 要:运用中文信息处理方法,从大量医药新闻报道中进行有价值话题挖掘,为后续话题跟踪提供训练测试文本。从医药新闻特点入手,使用轮廓系数评价法对k-means的聚类性能进行评估,选取最佳聚类中心数。利用LDA对选取的最佳主题进行提取,从而得到相应的话题。轮廓系数评价法与k-means方法相结合,有助于从海量信息中筛选出有价值的话题。当样本量足够大、聚类效果不好时,人工标记可在一定程度上改善聚类效果。

关键词:医药新闻;k-means;LDA;话题发现

DOI:10. 11907/rjdk. 182740

中图分类号:TP319 文献标识码:A 文章编号:1672-7800(2019)005-0151-04

Abstract: By using the method of Chinese information processing, valuable topics are mined from a large number of medical news reports, and training test texts are provided for follow-up topic tracking. Starting from the characteristics of medical news, the clustering performance of K-means is evaluated by using contour coefficient evaluation method, and the optimal number of clustering centers is selected. Then we use LDA to extract the best topics and get the corresponding topics. The combination of contour coefficient evaluation method and K-means method is helpful to select valuable topics from mass information. When the sample size is large enough and the clustering effect is not good, artificial markers can improve the clustering effect to a certain extent.

Key Words: Medical News; k-means; LDA; Topic discovery

0 引言

大数据时代,药品生产企业的药品安全舆情动态是企业决策的重要依据,从网络媒体发布的药品安全事件、药品安全监管及药品安全形势等医药新闻报道中发现价值,进行快速、准确、有效的数据收集与分析具有重要意义。从海量网络信息中发掘出有价值的药品安全相关话题,给药品生产企业提供决策引导,需应用话题发现技术。

话题发现技术集中在算法改进及新闻分类语料利用两个方面。路荣等[1]通过利用隐主题分析技术及混合聚类方法实现微博客中新闻话题的发现,并通过实验验证算法的可行性;孙红光等[2]通过改进Single-Pass算法并以话题为粒度组织新闻信息,实现对网络新闻话题的发现。其改进方法充分考虑了网络新闻的实时性、特征词不同位置的权重比例及话题的相似度计算3个方面,验证了改进算法的准确性及有效性;车蕾等[3]通过融合新闻标题、段落、文本语义等特征实现多特征融合的新闻话题发现模型;魏德志等[4]提出基于時间序列的热点话题发现模型和算法,在改进算法的基础上以网页内容相似度和页面链接分析为依据,按照权重值大小获取话题。鉴于药品安全领域相关语料分析缺乏,话题发现技术是直接采用分类语料这一现状,本文尝试通过k-means方法对大量无标记医药新闻进行聚类分析,帮助药品生产企业从医药新闻数据中识别出药品生产市场发展动态及重要政策方针等有价值信息,在进行分类训练后对药品生产企业关注的问题进行有效跟踪,从而为企业相关决策提供有力的信息支撑。

1 话题发现流程

本文药品安全话题发现框架如图1所示,包含数据预处理、文本表示和话题发现技术3个部分。

1.1 数据预处理

在网站上采集到医药新闻语料后,需要对这些原始新闻网页信息进行预处理,为后续文本聚类作准备。数据预处理步骤如下:

(1)数据清洗。对采集到的网页信息进行噪声数据清除[5],去掉网页链接、重复数据、多余标签等无用信息,实现数据去噪目的,保留有效信息。

(2)预处理。是进行自然语言处理的基本过程,包含中文分词、停用词过滤、词性标注3部分:①进行中文分词[6],即对文本内容中的句子按照词的含义进行切分,是对文本内容进行处理的一项基础性工作;②对停用词进行过滤[7],去除文本中的标点符号及无意义的虚词。文本中出现频率很高的虚词如冠词、感叹词、介词、连词等,它们在构建语法时并不能独立承担句子成分,没有实在意义。去除这些虚词,不仅可以减少对文本中有效信息的噪声干扰,提高检测精度,而且可以减轻算法开销,降低后续处理难度;③对词性进行标注[8],即对分词后的每个词汇确定词性并标注。通过词性标注可以消除歧义,强化单词特征,保证句法分析的精确率。

由于中文分词技术并不是本文重点研究内容,因此直接选用Python开发的中文分词模块——jieba分词进行文本预处理。jieba分词具有开源性和灵活性,可以完成文本内容的中文分词和词性标注,并通过调用包含1 893个符号和词的停用词表剔除标点符号及无意义的虚词。语料库预处理效果如表1所示。

1.2 文本表示

(1)特征选择及权重计算。原始语料在经过预处理后其维度得到有效降低,但由于词、词组和短语构成的词条数量众多,存在很多无效词,因此需要去掉无效词构造较为精简的特征空间。医药新闻文本中不同的词对主题的贡献度不同,需要根据重要程度赋予对应权重。在进行文本向量化之前,通过词频统计方法对预处理后文档中词语出现的频数进行统计,并从中抽取出标识性的特征词,利用词频-逆文档频率[9](TF-IDF)方法得出词向量的权重值。TF-IDF体现了词语对文本的区分能力,过滤掉文本中出现频率低和对聚类作用权重值较小的词,使主要特征词成为后续文本表示模型中有效的数据输入。这样既可以对特征进行有效降维,又有助于提高聚类效率和精度 [10]。

(2)文本向量化。指既能将文本表示成计算机可以理解的形式,又能将文本描述的内容进行完整表示的模型。潜在狄利克雷分布模型(LDA)[11]认为一篇文档对应多个主题,而每个主题又对应着不同的词,从而形成文档-主题矩阵和主题-词性矩阵。LDA是一种概率生成模型,可以将文档集中的每一篇文档主题按概率分布的形式给出[12]。

1.3 话题发现技术

1.3.1 k-means算法

k-means算法[13]是一种解决聚类问题的典型无监督学习算法,在处理无标记数据集方面可以极大减少工作量。通过该算法可以找到无标记数据集的模式特征,对不同数据所属类型进行分类。k-means聚类的输入是一组无标记样本,在坚持组内距离最小化和组间距离最大化原则下,根据数据自身距离将其分成若干组[14],实现流程如图2所示:①给聚类中心分配点。从数据对象中选择k个点作为聚类中心,遍历数据集计算无标记数据点到聚类中心点的距离,将无标记数据点分配到距其最近的聚类中心点;②移动聚类中心。遍历所有聚类中心,将聚类中心移动到这个聚类的均值处;③重复上述步骤,直到聚类中心不再移动达到稳定分布为止。

K-means算法原理简单,计算复杂度小,容易实现[15]。但其过分依赖初始聚类中心k的选取,一旦k值选择不好会直接影响最后结果,造成无法得到有效聚类结果[16]。因此,预先给定k值是最困难的一步。

1.3.2 k-means算法改进

无监督学习算法一个显著优点是不需要对数据集进行标注,而轮廓系数[17](Silhouette Coefficient)可以在无标注数据集基础上对聚类算法的好坏进行有效度量。本文利用轮廓系数对聚类性能评估的优势,合理选择k-means的聚类中心,以解决k值设置不合理影响聚类结果的问题。

轮廓系数是1986年Peter J. Rousseeuw?在结合内聚度和分离度两种因素基础上提出的评价聚类效果好坏的一种方式,适用于实际类别信息未知的情形[18],可在原始数据相同的基础上,对不同算法或算法的不同运行方式对聚类结果产生的影响进行性能评价。轮廓系数取值介于[-1,1]之间,其中1表示完美的聚类,0表示聚类重叠,-1表示完全错误的聚类。轮廓系数评价法需根据不同类别数目下的轮廓系数走势寻找最佳的聚类数目,一般将畸变程度最大处作为最佳值[19]。轮廓系数指标构成如表2所示。

2 实验

2.1 实验数据

本文利用八爪鱼采集器[20]从某医药网获取2015年5月1日到2018年9月1日间15 910条医药新闻作为分析数据源,后续实验结果均由原始数据处理得到。

2.2 实验环境

本文在PC上搭建整体测试环境,以保证后续系统测试顺利进行。实验环境如表3所示。

2.3 模型参数确定

LDA模型的主题个数对模型推理和聚类质量影响较大,当主题个数较小时,主题会包含多重语义;当主题个数较大时,主题会缺乏明显语义信息。因此本文通过轮廓系数对k-means评估最佳主题数来选定LDA的理想主题数,避免主题数选取不合理问题。

2.4 实验结果分析

实验一:k-means算法参数。

本实验以医药新闻为研究对象,通过轮廓系数评价法对聚类效果性能进行评估,选取最佳聚类中心数。在k-means算法结构保持不变的前提下,将预处理后数据源控制在15 773例时,探讨数据集主题个数为5、10、11、12、13、14、15、20、25、40的聚类性能,实验结果见表4。

从表4可以看出,聚类结果比较一般。结合指标含义和数值表达意义,可以推测出原因可能是数据集质量不高,因此后续尝试通过选取一部分原始数据集进行人工标记,检验人工标记是否在一定程度上提高文章正确分类的准确性。

实验二:手工标记数据集后的参数。

在数据集主题个数分别为5、10、11、12、13、14、15、20、25、40时,以手工标记的方式从原始数据集中选取7类药品安全领域数据共5 637例,作为后续检验手工标记对聚类结果的影响。手工标记的实验数据类别分布情况如表5所示,实验结果如表6所示。

从表4和表6结果可以看出,手工标记的数据集在一定程度上可以提高聚类效果,说明在样本量足够大但聚类效果不好的情况下,对原始数据集进行手工标注是改善聚类效果的一种可行方式。手工标记数据集的轮廓系数在聚类个数不同时,聚类结果的畸变程度走势更为清晰。在考虑轮廓系数走势及其定义最佳主题数的基础上,最终选取聚类个数为12的主题数作为聚类初始中心的最佳值。

实验三:LDA模型对聚类主题的提取。

以轮廓系数评价法确定的最佳主题数12作为主题数进行实验,从每个类簇中提取权重值最大的10个主题词来限定主题,提高主题词的专指度并确定主题范围空间。通过LDA主题模型对每个类簇进行主题词提取后,可将主题限定在一定范围内,有助于各主题的概括。LDA模型提取的主題结果如表7所示。

3 结语

本文以医药新闻为数据源,通过话题聚类及相应的主题提取实验发现药品安全话题,取得一定效果。在聚类效果一般时,采用人工标记方式在一定程度上提高了聚类效果。文中对于药品安全话题的聚类只是检测出了话题类簇,未进行后续话题跟踪。如果进一步追踪话题发展规律和趋势,将更有利于相关决策制定。

参考文献:

[1] 路荣,项亮,刘明荣,等. 基于隐主题分析和文本聚类的微博客中新闻话题的发现[J]. 模式识别与人工智能,2012,25(3):382-387.

[2] 孙红光,高星,孙铁利,等. 基于改进Single-Pass算法的网络新闻话题发现[J]. 吉林大学学报:理学版,2018,56(1):114-118.

[3] 车蕾,杨小平. 多特征融合文本聚类的新闻话题发现模型[J]. 国防科技大学学报,2017,39(3):85-90.

[4] 魏德志,陈福集,林丽娜. 一种基于时间序列的热点话题发现模型和算法[J]. 情报科学,2017,35(10):142-146.

[5] 米允龙,米春桥,刘文奇. 海量数据挖掘过程相关技术研究进展[J]. 计算机科学与探索,2015,9(6):641-659.

[6] 刘泽文,丁冬,李春文. 基于条件随机场的中文短文本分词方法[J]. 清华大学学报:自然科学版,2015,55(8):906-910,915.

[7] 范佳健. 微博评论信息的聚类分析[D]. 合肥:安徽大学,2017.

[8] 王国龙,杜建强,郝竹林,等. 中医诊断古文的词性标注与特征重组[J]. 计算机工程与设计,2015,36(3):835-841.

[9] 唐明,朱磊,邹显春. 基于Word2Vec的一种文档向量表示[J]. 计算机科学,2016,43(6):214-217,269.

[10] 商宪丽,王学东. 微博话题识别中基于动态共词网络的文本特征提取方法[J]. 图书情报知识,2016(3):80-88.

[11] 陈晓美,高铖,关心惠. 网络舆情观点提取的LDA主题模型方法[J]. 图书情报工作,2015,59(21):21-26.

[12] 王鹏,高铖,陈晓美. 基于LDA模型的文本聚类研究[J]. 情报科学,2015,33(1):63-68.

[13] 周润物,李智勇,陈少淼,等. 面向大数据处理的并行优化抽样聚类K-means算法[J]. 计算机应用,2016,36(2):311-315,329.

[14] 李亚,刘丽平,李柏青,等. 基于改进K-Means聚类和BP神经网络的台区线损率计算方法[J]. 中国电机工程学报,2016,36(17):4543-4552.

[15] 朱晓峰,陈楚楚,尹婵娟. 基于微博舆情监测的K-Means算法改进研究[J]. 情报理论与实践,2014,37(1):136-140.

[16] 翟东海,鱼江,高飞,等. 最大距离法选取初始簇中心的K-means文本聚类算法的研究[J]. 计算机应用研究,2014,31(3):713-715,719.

[17] 刘睿伦,叶文豪,高瑞卿,等. 基于大数据岗位需求的文本聚类研究[J]. 数据分析与知识发现,2017,1(12):32-40.

[18] 王学贺. 一种基于改进微粒群和轮廓系数的划分聚类方法[J]. 云南民族大学学报:自然科学版,2016,25(4):367-371.

[19] 朱连江,马炳先,赵学泉. 基于轮廓系数的聚类有效性分析[J]. 计算机应用,2010,30(S2):139-141,198.

[20] 崔玉洁,廖坤. 借助八爪鱼采集器实现过刊网刊元数据的自动提取[J]. 编辑学报,2016,28(5):485-488.

(责任編辑:杜能钢)