高级检索

  • ISSN 1006-3080
  • CN 31-1691/TQ
引用本文:
Citation:

一种结合主题模型与段落向量的短文本聚类方法

    作者简介: 饶毓和(1995-),男,硕士生,主要研究方向为模式识别。E-mail:auto_ryh@foxmail.com;
    通讯作者: 凌志浩, zhhling@ecust.edu.cn
  • 中图分类号: TP391

A Short Text Clustering Method which Combining Topic Model and Paragraph Vector

    Corresponding author: Zhihao LING, zhhling@ecust.edu.cn
  • CLC number: TP391

  • 摘要: 为了在克服短文本的稀疏性和高维度性的同时提升文本聚类质量,提出了一种结合词对主题模型(Biterm Topic Model, BTM)与段落向量(Paragraph Vector, PV)的短文本聚类方法。该方法主要包括两个重要步骤:一是利用由词对主题模型所求出的词-文档-主题概率分布,并结合局部离群因子与JS散度对整个文本集合中的词语进行语义拆分;二是将经过词语语义拆分后的文本输入至向量化模型PV-DBOW(Distributed Bag of Words version of Paragraph Vector)得到段落向量,并将其与对应的文档-主题概率分布拼接起来构成文本特征向量。实验结果表明,本文方法得到的特征向量对短文本具有较强的区分能力,能有效改善短文本的聚类效果,同时也能避免受到短文本的稀疏性影响。
  • 图 1  短文本聚类过程

    Figure 1.  Process of short text clustering

    图 2  BTM概率图模型

    Figure 2.  Probabilistic graphical model of BTM

    图 3  聚类结果与随机选取出来进行拆分的词语数目之间的关系

    Figure 3.  Relation between clustering results and the number of randomly selected words to be splited

    图 4  本文方法与Doc2Vec的精确率对比(搜狗语料)

    Figure 4.  Precision comparison between DT2Vec and Doc2Vec (Sougou Corpus)

    图 5  本文方法与Doc2Vec的召回率对比(搜狗语料)

    Figure 5.  Comparison of recall rate between this method and Doc2Vec (Sougou Corpus)

    表 1  搜狗语料聚类结果对比

    Table 1.  Comparison of clustering results of Sogou corpus

    MethodV-measure/%F1-measure/%
    macro-F1micro-F1
    WM2Vec61.97377.41777.565
    SIF2Vec61.70676.83677.266
    Doc2Vec67.68983.23883.397
    BTM2Vec64.63373.89574.707
    DT2Vec71.07884.99285.091
    下载: 导出CSV

    表 2  复旦语料聚类结果对比

    Table 2.  Comparison of clustering results of Fudan corpus

    MethodV-measure/%F1-measure/%
    macro-F1micro-F1
    WM2Vec52.31169.88269.748
    SIF2Vec40.55659.50157.863
    Doc2Vec59.66782.09182.207
    BTM2Vec61.75581.00481.568
    DT2Vec64.71183.85784.152
    下载: 导出CSV
  • [1] YIN J H, WANG J Y. A Dirichlet multinomial mixture model-based approach for short text clustering[C]//The 20th ACM SIGKDD Internat- -ional Conference on Knowledge Discovery and Data Mining. New York: ACM, 2014: 233-242.
    [2] HU X, SUN N, ZHANG C, et al. Exploiting internal and external semantics for the clustering of short texts using world knowledge[C]//The 18th ACM Conference on Information and Knowledge Management. New York: ACM, 2009: 919-928.
    [3] WANG L, JIA Y, HAN W H. Instant message clustering based on extended vector space model[C]//Advances in Computation and Intelli- gence. Berlin: Springer, 2007: 435-443.
    [4] BANERJEE S, RAMANATHAN K, GUPTA A. Clustering short texts using Wikipedia[C]//The 30th Annual International ACM SIGIR Conference on Resear- ch and Development in Information Retrieval. New York: ACM, 2007: 787-788.
    [5] JIN O, LIU N N, ZHAO K, et al. Transferring topical knowledge from auxiliary long texts for short text clustering[C]//The 20th ACM Conference on Information and Knowledge Management. New York: ACM, 2011: 775-784.
    [6] JIA C Y, MATTHEW B C, WANG X Y, et al. Concept decompositions for short text clustering by identifying word communities[J]. Pattern Recognition, 2018, 76: 691-703. doi: 10.1016/j.patcog.2017.09.045
    [7] XU J, XU B, WANG P, et al. Self-taught convolutional neural networks for short text clustering[J]. Neural Networks, 2017, 88: 22-31. doi: 10.1016/j.neunet.2016.12.008
    [8] ZHENG C T, LIU C, WONG H S. Corpus-based topic diffusion for short text clustering[J]. Neurocom-puting, 2018, 275: 2444-2458. doi: 10.1016/j.neucom.2017.11.019
    [9] 刘欣, 佘贤栋, 唐永旺, 等. 基于特征词向量的短文本聚类算法[J]. 数据采集与处理, 2017, 32(5): 1052-1060.
    [10] YAN X, GUO J, LAN Y, et al. A biterm topic model for short texts[C]//The 22nd International Conference on World Wide Web. New York: ACM, 2013: 1445-1456.
    [11] BARZ BJÖRN, RODNER E, GARCIA Y G, et al. Detecting regions of maximal divergence for spatio-temporal anomaly detection[J]. IEEE Transacti-ons on Pattern Analysis and Machine Intelligence, 2018, 41(5): 1088-1101.
    [12] MARKUS M B, HANS-PETER K, RAYMOND T N, et al. LOF: Identifying density-based local outliers[C]//The 2000 ACM SIGMOD International Conference on Management of Data. New York: ACM, 2000: 93-104.
    [13] GOLDBERG Y, HIRST G. Neural Network Methods for Natural Language Processing[M].California: Morgan & Claypool, 2017.
    [14] LE Q V, Mikolov T. Distributed representations of sentences and documents[C]//International Conference on Machine Learning. Beijing: ACM, 2014: 1188-1196
    [15] ARORA S, LIANG Y Y, MA T Y. A simple but tough-to-beat baseline for sentence embeddings[C]// 5th International Conference on Learning Representations. Toulon, France: ICLR, 2017:
  • [1] 王学武闵永顾幸生 . 基于密度聚类的多目标粒子群优化算法. 华东理工大学学报(自然科学版), doi: 10.14135/j.cnki.1006-3080.20180321005
    [2] 席孝敏景希玮徐健公维光郑柏存 . CMC取代度对负极浆料流变性及分散稳定性的影响. 华东理工大学学报(自然科学版), doi: 10.14135/j.cnki.1006-3080.20180718003
    [3] 高源安琦 . 轴承座同心度误差对深沟球轴承-转子系统振动性能的影响. 华东理工大学学报(自然科学版), doi: 10.14135/j.cnki.1006-3080.20180415001
    [4] 金志超高大启朱昌明王喆 . 基于权重的多视角全局和局部结构风险最小化分类器. 华东理工大学学报(自然科学版), doi: 10.14135/j.cnki.1006-3080.20180704001
    [5] 赵鸿山范贵生虞慧群 . 基于归一化文档频率的文本分类特征选择方法. 华东理工大学学报(自然科学版), doi: 10.14135/j.cnki.1006-3080.20180914005
    [6] 王宁曹萃文 . 基于XGBoost模型的炼油厂氢气网络动态多输出预测模型. 华东理工大学学报(自然科学版), doi: 10.14135/j.cnki.1006-3080.20181104001
    [7] 周倩李莉张涛付智楠郭旭虹 . 基于磁性球形聚电解质刷制备可回收的银纳米催化剂. 华东理工大学学报(自然科学版), doi: 10.14135/j.cnki.1006-3080.20180705001
    [8] 高炳舒刘士荣 . 基于BoW模型的RGB-D SLAM算法的运动轨迹估计. 华东理工大学学报(自然科学版), doi: 10.14135/j.cnki.1006-3080.20180419001
    [9] 张剑超杜文莉覃水 . 基于新型自适应采样算法的催化重整过程代理模型. 华东理工大学学报(自然科学版), doi: 10.14135/j.cnki.1006-3080.20180915001
    [10] 马芳芳熊达孙铁栋欧阳福生 . 乙烯装置裂解气压缩机性能预测模型研究. 华东理工大学学报(自然科学版), doi: 10.14135/j.cnki.1006-3080.20191226002
    [11] 齐莉莉刘济 . 基于改进CKF算法的一类有色噪声污染的线性观测系统的状态估计. 华东理工大学学报(自然科学版), doi: 10.14135/j.cnki.1006-3080.20180427002
    [12] 解冰朱宏擎 . 一种基于选择性卷积特征和最大后验高斯混合模型的细粒度图像分类算法. 华东理工大学学报(自然科学版), doi: 10.14135/j.cnki.1006-3080.20180603001
    [13] 王瑞许妍霞宋兴福吴非克于建国 . 降膜结晶分离提纯对二甲苯. 华东理工大学学报(自然科学版), doi: 10.14135/j.cnki.1006-3080.20180424003
    [14] 田甜王以群蔡灵婷吴小玉 . 热处理对阿富汗黄绿色和粉色碧玺颜色的改善. 华东理工大学学报(自然科学版), doi: 10.14135/j.cnki.1006-3080.20180419004
    [15] 杨家鹏熊文莉安琦 . 滚子直径误差对双列调心轴承疲劳寿命的影响. 华东理工大学学报(自然科学版), doi: 10.14135/j.cnki.1006-3080.20180411001
    [16] 顾烨晨杨家鹏安琦 . 空调贯流风扇转子振动对支承轴承受力及寿命影响. 华东理工大学学报(自然科学版), doi: 10.14135/j.cnki.1006-3080.20180604001
    [17] 徐茜袁荞龙黄发荣 . 炔丙氧基侧基对酚醛型氰酸酯固化反应和性能的影响. 华东理工大学学报(自然科学版), doi: 10.14135/j.cnki.1006-3080.20190321004
    [18] 李君兰沈君浩王宏裴改梅徐世爱 . 表面化学镀镍对丝网印版膜耐磨性能的影响. 华东理工大学学报(自然科学版), doi: 10.14135/j.cnki.1006-3080.20180719001
    [19] 熊文莉杨家鹏安琦 . 轴承滚子加工精度对高速电主轴动力学性能的影响. 华东理工大学学报(自然科学版), doi: 10.14135/j.cnki.1006-3080.20180613002
    [20] 程雅文豆伟涛陈国荣 . 二硫化钼复合材料的构建与对Aβ的灵敏检测. 华东理工大学学报(自然科学版), doi: 10.14135/j.cnki.1006-3080.20180720001
  • 加载中
图(5)表(2)
计量
  • 文章访问数:  8890
  • HTML全文浏览量:  2090
  • PDF下载量:  22
  • 被引次数: 0
出版历程
  • 收稿日期:  2019-04-30
  • 网络出版日期:  2019-06-27

一种结合主题模型与段落向量的短文本聚类方法

    作者简介:饶毓和(1995-),男,硕士生,主要研究方向为模式识别。E-mail:auto_ryh@foxmail.com
    通讯作者: 凌志浩, zhhling@ecust.edu.cn
  • 华东理工大学化工过程先进控制和优化技术教育部重点实验室,上海 200237

摘要: 为了在克服短文本的稀疏性和高维度性的同时提升文本聚类质量,提出了一种结合词对主题模型(Biterm Topic Model, BTM)与段落向量(Paragraph Vector, PV)的短文本聚类方法。该方法主要包括两个重要步骤:一是利用由词对主题模型所求出的词-文档-主题概率分布,并结合局部离群因子与JS散度对整个文本集合中的词语进行语义拆分;二是将经过词语语义拆分后的文本输入至向量化模型PV-DBOW(Distributed Bag of Words version of Paragraph Vector)得到段落向量,并将其与对应的文档-主题概率分布拼接起来构成文本特征向量。实验结果表明,本文方法得到的特征向量对短文本具有较强的区分能力,能有效改善短文本的聚类效果,同时也能避免受到短文本的稀疏性影响。

English Abstract

  • 随着互联网日益深入人们的日常生活,以互动交流为特点的Web2.0技术进入了高速发展阶段,其中包括Twitter、微博、Facebook以及各种即时信息工具等多种互联网新媒体平台。这些平台每时每刻都在产生着大量的内容简短、特征稀疏的半结构性或非结构性文本数据,如何处理这些短文本数据进而从中提取出有价值的信息已经成为当下互联网领域的技术热点。

    文本聚类是文本信息挖掘领域的一个常见方向,目前已被广泛用于信息检索、搜索引擎等方面,然而对于短文本而言,其所具有的高维度性和特征稀疏性使得短文本聚类面临着诸多挑战。稀疏性带来了包括上下文信息不足、词共现信息不足等问题,具体来说,由于短文本所包含的单词数量很少,且大部分单词只出现一次,如果继续使用传统的向量空间模型(Vector Space Model, VSM)来表示短文本,极度稀疏的高维特征向量将会导致内存与计算时间的过度开销。另外,由于单词数量过少,词频统计将失去意义,所以常用的词频–逆文档频率加权(Term Frequency – Inverse Document Frequency, TF-IDF)也不适用于短文本[1]

    为了克服短文本的稀疏性和高维度性,相关学者已经进行了大量研究,比如引入外部信息源或重新构建新的针对短文本的模型等。然而,在如何进一步提升短文本聚类质量方面的研究目前还有待深入。文本聚类的关键在于对文本特征的提取,而现有常用的文本特征大都存在所含信息单一且信息量较少的缺陷,进而导致文本聚类时特征对短文本的区分能力不强,聚类效果有待改善。本文在前人研究的基础上,从统计学与神经网络算法的角度出发,提出了一种结合词对主题模型与段落向量的短文本聚类方法,旨在将主题信息融入由神经网络算法得到的文本特征向量中,以期能结合二者的优点加强文本特征向量对短文本的区分能力,同时避免受到短文本稀疏性而造成的影响。

    • 针对短文本聚类时所面临的稀疏性等问题,相关研究大致分为两个方向,一种是引入外部知识源,如利用WordNet[2]、HowNet[3]、Wikipedia[4]以及其他用户自行构建的知识库[5]将短文本扩展为长文本,但是该方案存在两个问题,一是需要保证外部知识源的时效性,比如对于微博中所讨论的新热门话题是难以第一时间在诸如百度百科这样的外部资料中找到的,所以这就需要对外部知识源及时更新与维护,不过由此产生的相关成本和代价很高;二是如何保证外部加入信息的正确性以及如何正确地使用这些信息,这已经成为了该方案所带来的新的挑战,而处理这些问题自身已经相当复杂[6]

      因此,研究者们将目光放在了对传统的普通文本处理方法的改进或是对新模型的设计上,以此来应对短文本的稀疏性。Xu等[7]提出了一种利用词向量与自学习的动态卷积神经网络来提取短文本特征进而实现短文本聚类的方法,该方法能将原本用高维词袋模型表示的短文本转化为用低维稠密向量表示;Yin等[1]利用Dirichlet多项式混合模型进行短文本聚类,结果表明该方法能有效克服短文本的稀疏性和高维度问题;文献[8]假定在给定的短文本语料库中词与主题之间存在一个固定的语义结构,在此基础上可以推断出文本的主题比例向量,然后根据主题比例向量和主题在单词上的分布生成额外的单词以扩充短文本,由于额外扩充的单词来自于数据集本身,所以该文中的扩充集不需要外部知识源;文献[9]通过定义基于词性和词长度加权的特征词提取公式并提取特征词来表示短文本,然后利用词向量与词语游走距离(Word Mover’s Distance, WMD)计算短文本间的相似度并将其应用到层次聚类算法中实现短文本聚类。纵观这些方法可知,其中的一类基于统计学,另一类则是主要依赖于神经网络的单一方法,而本文则是将基于统计的主题模型(BTM)和基于神经网络的文本向量化方法(PV-DBOW)结合起来,以达到改善短文本聚类效果的目的。

    • 在实际的短文本处理中,时常会遇到这样一种情况:同一个词在不同主题下的语义相差甚远,比如单词“苹果”,它在“水果”主题下和在“信息技术”主题下分别表达的是“一种水果”和“一家信息科技公司”两种意思,这种同一个词受不同主题影响的情形,本文称其为“主题歧义”。如果能有效地区分出这些歧义,无疑能改善文本聚类的效果。为此,本文提出了一种利用主题信息对特定词语进行语义拆分的方法,直观的理解就是利用主题信息将上述例子中的“苹果”分别拆分成“水果中的苹果”和“信息技术中的苹果”这样两个词,使得后续步骤进行文本向量化时能对二者有所区分。

      为了获取单词的主题信息,本文使用了一种既适合于长文本也适合短文本的词对主题模型,流程如图1所示。主要步骤描述如下:

      图  1  短文本聚类过程

      Figure 1.  Process of short text clustering

      (1)利用通过词对主题模型求出的词-文档-主题概率分布结合局部离群因子与JS散度对整个文本集合中的词语进行语义拆分;

      (2)将经过词语拆分后的文档输入文本向量化模型PV-DBOW得到对应的段落向量,再将段落向量与对应的文档-主题概率分布拼接起来构成文本特征向量;

      (3)在整个特征向量集中使用K-means算法完成短文本聚类。

    • BTM由隐Dirichlet分布(Latent Dirichlet Allocation, LDA)改进而来,与LDA不同,BTM不是直接对文档进行建模,而是对整个文本集合中的词对进行建模,并认为集合中的所有词对共享一个主题分布,这样能依靠整个文本集合来估计这个主题分布,从而有效缓解因文档单词数量过少所带来的主题推理中的稀疏问题[10]

    • 在BTM中,将同一文档内特定大小窗口中的词两两结对,称其为词对,BTM的主要内容就是从文本集合中抽取出所有词对,然后基于词对建立概率模型。模型生成过程如下:

      (1)确定短文本集合的全局主题概率分布θ~Dirichlet(α)。

      (2)确定每一个主题z所对应的词概率分布φ~Dirichlet(β)。

      (3)对于词对集合B中的每一个词对b=(wi,wj),重复以下操作:

      (a)从全局主题概率分布θ中抽取一个主题zz~Multinomial(θ);

      (b)从主题z所对应的词分布φ中抽取两个词,则wi,wj~Multinomial(φ)。

      BTM概率图模型如图2所示,图中K表示主题数目,|B|表示整个文本集合中词对的数目,αβ是Dirichlet分布的超参数。

      图  2  BTM概率图模型

      Figure 2.  Probabilistic graphical model of BTM

      由上述过程可知,整个文本集合中的所有词对共享一个主题概率分布θ,而每一个主题和所有的词又构成了一个多项式(Multinomial)分布φ,由此可得词对b的联合概率计算公式如下:

      式中:${\theta _z} = P(z)$表示在多项式分布$\theta $下的主题$z$的概率;${\varphi _{i|z}} = P({w_i}|z)$表示主题$z$中词${w_i}$所占的概率,这里的$\varphi $即为上文提及的主题-词所对应的多项式概率分布。则对于整个词对集,有

      由于BTM是针对文本集合中的词对进行建模,为了得到文档d的主题概率分布,则需要将词对作为中间量并利用全概率公式,推导如下:

      其中,P(z|b)可由Bayes公式计算得到:

      而对于式(3)中的P(b|d),由于词对b与文档d均为可观察变量,因此可直接使用频率来估计概率,即

      式中:nd(b)为文档d中词对b的出现次数,在此称其为词对频数,而文档$d$可视作词对所构成的集合,故而将特定词对频数除以总词对频数即可得到对于文档$d$而言词对$b$的概率。

      和其他主题模型类似,BTM的目标也是根据已有的文本集来估计全局主题概率分布θ和主题-词概率分布φ,可通过Gibbs采样求出。

      获得θφ后,即可由式(3)、式(4)、式(5)求得文档-主题的概率分布P(z|d)。

    • 为了实现对词语进行语义上的拆分,首先通过BTM求取每一个词在当前所在文档下的主题信息,即先求出当前的词-文档-主题的概率分布。

      通过如下Bayes公式获得每个词wi的主题概率分布:

      考虑到本文的主要研究对象是短文本,因此可近似认为同一个词在同一段短文档下的主题概率分布是一致的,同时假定词的生成与文档的生成是独立的,那么当前词wi在该文档下的近似主题分布为

      运用式(6)、式(7)即可求出每一个词在某一文档下的主题概率分布,在此称之为词-文档-主题概率分布。

    • 前文已经提及,对于具有“主题歧义”的单词,需要对其进行语义区分以提升聚类的精度。本文采用结合词-文档-主题概率分布与局部离群因子的方法将同一个词按不同主题进行拆分。考虑到同一个词在同一短文本中的主题信息基本保持不变,所以该方法实际上针对的是单词在不同文本中的语义拆分。

    • 首先需要定义词-文档-主题概率分布的距离度量方式,目前常用于描述两个概率分布之间差异的方法是KL散度(Kullback Leibler Divergence),其定义如下:

      式中:P代表被比较的概率分布;Q表示需要与P进行比较的分布。尽管KL散度从直观上看是一个距离函数,但因为它不具有对称性[11],所以并不符合作为距离度量的要求,因此本文采用KL散度的对称版本JS散度(Jensen Shannon Divergence)作为距离函数,其定义如下:

      其中:$M = \dfrac{1}{2}(P + Q) $

    • 为了根据词-文档-主题概率分布对词语进行拆分,本文借鉴了局部异常因子算法(Local Outlier Factor, LOF)中用于判别样本点周围相对密度的参数:局部离群因子[12],通过将其作为簇中心判断参数得到对不同文档的同一个词的语义划分。局部离群因子的相关定义如下:

      (1)样本集合:指整个文本集合中由同一个词语的词-文档-主题概率分布所组成的集合,单个样本点对应的是该词语在某一文档下的主题概率分布;

      (2)d(p,o):表示两个样本点po之间的距离,本文距离度量使用的是式(9)所示的JS散度;

      (3)dk(p):点p的第k距离定义如下:

      dk(p)=d(p,o),并且要求满足:

      (a)在集合中至少有不包括p在内的k个点o'∈C{xp},满足d(p,o')≤d(p,o);

      (b)在集合中最多有不包括p在内的k−1个点o'∈C{xp},满足d(p,o')<d(p,o);

      所以样本点p的第k距离实际上就是p到离pk远的样本点的距离;

      (4)Nk(p):第k距离邻域,表示点p的第k距离以内的所有点,包括第k距离的点,因此点p的第k距离邻域的样本点的个数|Nk(p)|≥k,记作:

      (5)reachdistk(p,o):表示点o到点p的第k可达距离,该距离为点o的第k距离以及点op间的实际距离二者的最大值,记作:

      这意味着,对于离点o最近的k个点而言,点o到它们的第k可达距离被认为是相等的,且都等于dk(o);

      (6)lrdk(p):表示点p的局部可达密度,

      该参数的意义在于,如果点p和其第k距离邻域内的点是同一簇,则邻域点到点p的第k可达距离更有可能取的是dk(o),使得邻域可达距离之和较小,局部可达密度也就更高;反之如果点p与邻域点不是同一簇,则邻域点到点p的第k可达距离更有可能取的是d(p,o),这样邻域可达距离之和相对来说更大,体现在局部可达密度上的变化就是密度值更小;

      (7)LOFk(p):表示点p的局部离群因子,

      显然,局部离群因子表示的是点p的邻域Nk(p)的局部可达密度均值与点p的局部可达密度的比值。若该值接近于1,则说明点p与其邻域点的局部可达密度非常接近,p很可能与邻域属于同一簇;而如果局部离群因子越小于1,则说明p的密度相对其邻域点更高,点p越有可能处于某个簇的密集处,这正是本文使用局部离群因子的原因。

    • 为了应对单词的“主题歧义”问题,本文利用主题信息(即词-文档-主题概率分布)结合局部离群因子对同一个词按不同主题进行拆分。考虑到同一个词在同一短文本中的主题信息基本保持不变,所以这里的不同主题实际上是针对整个文本集合中不同文档里的同一个词。

      令整个文本集合D中的所有词语构成集合为W={w1,w2,…,wN};文本集合D={dj|dj$ \subseteq $W,1≤jM},即对于D中的每一个文本dj,它都可看作是若干个词所组成的集合;特殊的,令词$w$的文本所构成的集合为${D_w} = \{ {d_j}|w \in {d_j},{d_j} \in D\} $;所有的主题构成集合$Z = \{ {z_1},{z_2}, \cdots ,{z_K}\} $;令$P({{z}}|{w_i},{d_j})$为一个K维向量,具体定义为$P({\rm{z}}|{w_i},{d_j}) = ({v_1},{v_2}, \cdots ,{v_K}),{v_k} = P({z_k}|{w_i},{d_j})$,其中${z_k} \in Z$${w_i} \in W$${d_j} \in {D_{{w_i}}}$,该向量即为包含了所有主题在内的词-文档-主题概率分布。而词-文档-主题概率分布所组成的集合为$P = {\rm{\{ }}P({{z}}|{w_i},{d_j})|{w_i} \in W,{d_j} \in $${D_{{w_i}}}\} $,特殊的,对于词$w$而言,${P_w} = {\rm{\{ }}P({{z}}|w,{d_j})|{d_j} \in {D_w}\} $

      词语拆分步骤描述如下:

      输入:文本集合D,词语集合W,主题概率分布集合P,距离阈值α,局部离群因子阈值β

      输出:经词语拆分后的文本集合D'

      Step 1 从集合W中取出一个新词作为wi,若集合W中所有词均已被取出过,则跳转至Step 10,否则创建一个空的中心点集合Cwi

      Step 2 遍历整个集合Dwi,每次从中取出两个不一样的文本djdk,求出$P({{z}}|{w_i},{d_j})$$P({{z}}|{w_i},{d_k})$的距离,这里距离的度量使用式(9)所示的JS散度,然后将所有距离值按顺序存入矩阵distMat中,保证${\bf{distMat}}_{{{d_j},{d_k}}} = {\rm{JS}}(P({{z}}|{w_i},{d_j})||P({{z}}|{w_i},{d_k}))$

      Step 3 查询distMat的最大值,若最大值小于α,则跳转至Step 1;

      Step 4 找出distMat的最大值所对应的文本ab,同时遍历中心点集合Cwi,每次从中取出一个中心点c,只要存在c使得distMatc,a小于α,就将flagA置为假,否则将flagA置为真;同样,只要存在c使得distMatc,b小于α,就将flagB置为假,否则将flagB置为真;

      Step 5 若flagA为假,则跳转至Step 7;

      Step 6 利用式(10)式(11)式(12)求出$P({{z}}|{w_i},a)$在集合${P_{{w_i}}}$中的局部离群因子,若其离群因子小于β,则将a加入中心点集合Cwi

      Step 7 若flagB为假,则跳转至Step 9;

      Step 8 求出$P({{z}}|{w_i},b)$在集合${P_{{w_i}}}$中的局部离群因子,若其离群因子小于β,则将b加入中心点集合Cwi

      Step 9 将distMat当前的最大值置为零,然后跳转至Step 3;

      Step 10 从集合W中取出一个新词作为wi,若集合W中所有词均已被取出过,则输出经词语划分后的文本集合D'并退出程序;

      Step11 对于词wi,若其对应的中心点集合Cwi为空,则认为词wi无论在文本集合D内的哪个文档中都具有同一个语义,无须对其进行拆分;若Cwi不为空,则将Dwi中每一个文档dj所对应的主题概率分布$P({{z}}|{w_i},{d_j})$按最近原则划分至距其最近的中心点所代表的簇中。具体来说,就是找出ckCwi,使得

      $\begin{gathered} {\rm{ JS}}(P({{z}}|{w_i},{d_j})||P({\rm{z}}|{w_i},{c_k})){\rm{ = }} \\ {\rm{ }}\min \{{\rm{ JS}}(P({{z}}|{w_i},{d_j})||P({\rm{z}}|{w_i},{c_l}))|{c_l} \in {C_{{w_i}}}\} \\ \end{gathered} $

      则词wi在文档dj中的语义属于第k类,同时将文档dj中的词wi替换为带有语义类别标记的词,记作〈wi, k〉,对不同类别来说,标记是不同的,这样就能通过〈wi, k〉这一新词起到在语义上区分wi的作用,这个过程本文称为语义拆分;

      Step 12 完成对当前词wi的语义拆分后,程序跳转至Step 10。

      在上述步骤中,Step1~Step 9是利用JS散度和局部离群因子作为判断依据来获取词wi在整个文本集合中的各个语义中心的过程,而Step10~Step12是为经过语义判断后的词wi添加语义类别标记的过程。

    • 在得到经词语划分后的文本集合D'后,需要对文本进行向量化以方便后续的聚类操作。在目前现有的基于深度学习技术的文本处理系统中,词向量和句向量已成为事实上的基石之一,利用词、句嵌入算法得到单词和句子相应的低维、稠密的分布式表示,有助于后续利用日益成熟的深度神经网络算法对文本的进一步处理[13]。因此,本文采用了目前较为常用的文本向量模型PV-DBOW将D'中的短文本表示为段落向量。

      PV-DBOW是一种由词向量模型Skip gram改进的无监督文本向量化模型,与Skip gram相比,其在训练过程中新增了Paragraph ID,即训练语料中每个输入文档都有一个唯一的ID,Paragraph ID被视作与普通的单词一样,也是先映射成一个向量,即段落向量,其最终可通过不断训练得到[14],由于本文输入PV-DBOW的是经词语划分后的文本集合,与由原文本集合得到的段落向量相比,对包含有“主题歧义”单词的这类文档来说,由于前期已经对“歧义词”作了拆分,因此本文方法所得的段落向量对该类文档的区分能力更强。

      此外,为了增强聚类时各个文档之间的区分能力,在得到段落向量后,将其与式(3)所示的文档-主题概率分布连接起来,共同组成最终的文本特征向量。

      令原文本集合为$D = \{ {d_1},{d_2}, \cdots ,{d_M}\} $;经过词语拆分后的文本集合为$D' = \{ {d_1}^\prime ,{d_2}^\prime , \cdots ,{d_M}^\prime \} $,注意D' 中的各个元素与D中的元素是一一对应的,比如${d_1}^\prime $指的是${d_1}$进行词语拆分后的文本;每一个文本${d_j}^\prime $所对应的段落向量的集合为$X = \{ x({d_j}^\prime )|{d_j}^\prime \in D'\} $;所有的主题构成集合$Z = \{ {z_1},{z_2}, \cdots ,{z_K}\} $;令$P({{z}}|{d_j})$为一个K维向量,具体定义为$P({{z}}|{d_j}) = ({v_1},{v_2}, \cdots ,{v_K}),$${v_k} = $$P({z_k}|{d_j})$,其中${z_k} \in Z$${d_j} \in D$,该向量即为包含了所有主题在内的文档-主题概率分布。

      将由文档-主题概率分布组成的集合设为$P' = \{ P({{z}}|{d_j})|{d_j} \in D\} $;令向量${{a}} = ({a_1},{a_2}, \cdots {a_m})$${{b}} = ({b_1}, $${b_2}, \cdots ,{b_n})$

      本文最终所得文本特征向量的集合为

      式中:⊕为连接运算,目的是将两个向量头尾相连组成一个长向量;λ表示权重系数,平衡段落向量与文档-主题概率分布的数量级。

      $\bar x = {\rm{mean}}(X) = {\rm{mean}}(\{ x({d_j}^\prime )|{d_j}^\prime \in D'\} )$$\bar P = $${\rm{mean}}(P') = {\rm{mean}}(\{ P({{z}}|{d_j})|{d_j} \in D\} ), $,为了保证计算Euclid距离时段落向量与文档-主题概率分布在同一数量级上,需满足

      则由式(16)可得

      式中:${\rm{mean}}( \cdot )$表示均值函数;$o( \cdot )$表示求取量级的函数;n为段落向量的维数;k为文档-主题概率分布的维数,也即主题个数。

    • 常用的聚类算法包括基于划分、基于层次、基于密度以及基于模型的聚类算法等,综合对时间复杂度以及对本文的短文本特征向量的考量,本文使用最基本的基于划分的聚类算法K-means,特征向量之间的距离度量选择Euclid距离。

    • 实验使用了2个带有主题标签的语料库:(1)搜狗实验室新闻语料库,从中选取了互联网、教育、金融、军事、汽车、体育、娱乐7个主题,每个主题选取了2 000条短新闻共14 000条文本;(2)复旦大学文本分类语料库,从中选取了金融、农业、体育、艺术、政治5个主题,每个主题各选取2 500条一共12 500条短文本。

    • 为了验证本文方法所得的特征向量对短文本具有更强的区分能力,使用几个常用的且同样是无监督学习的文本向量化方法与之对比。

      (1)词向量算术平均。通过Skip gram模型求出文本集合中所有词语对应的词向量,然后将每一个文档中的所有词的词向量累加并求算术平均作为该文档的文本向量,该方法没有考虑到有考虑词序信息,为了方便叙述,将该方法称为WM2Vec(Word Mean to Vector)。

      (2)词向量加权平均。参考文献[15],先得到所有词语的词向量,然后将文档中的词向量进行加权平均,得到平均向量,这里的权重使用的是平滑逆词频(Smooth Inverse Frequency, SIF),最后移除平均向量在所有文本向量所组成矩阵的第一主成分(Principal Component)上的投影,并将移除主成分后的平均向量作为文本向量,本文将该方法称为SIF2Vec。

      (3)PV-DBOW。直接利用PV-DBOW模型得到文本集合中的各个文档的段落向量,本文将该方法称为Doc2Vec(Document to Vector)。

      (4)BTM。指利用BTM求出文本集合的文档-主题概率分布,然后对于每一个文档而言,将其文档-主题概率分布作为其特征向量,本文将该方法称为BTM2Vec。

      为了得到短文本的聚类结果,上述方法(1)、(2)、(3)均采用K-means算法结合Euclid距离进行聚类,而方法(4)可直接将文档的主题概率分布中的最大概率值所对应的主题作为该文档的主题类别进而完成聚类。

    • 本文选取常用的V-measure和F1值评价指标作为聚类效果衡量标准。V-measure综合考虑了聚类结果的同质性(Homogeneity)与完整性(Completeness),令K代表聚类结果中每个簇对应的样本集合,C代表实际类别中每一类对应的样本集合,则

      式中:n代表样本总数;ncnk分别代表属于类c和簇k的样本数目;nc,k表示分配给簇k而实际属于类c的样本数目。对于H(K|C)与H(K)也是以同样方式定义,不再赘述。则V-measure可由式(16)得到:

      F1值综合考虑了精确率P(Precision)与召回率R(Recall)。由于本文实验所用语料库具有多个类别,所以这里使用的是基于微平均法与宏平均法所得的宏F1值(Macro-F1)和微F1值(Micro-F1)。

    • 为了测试本文提出的词语拆分方法对最终短文本聚类的影响,对从搜狗新闻语料选取出的文本经过分词去停用词等预处理后,首先对其进行不同数目的词语拆分操作与对比实验,一共进行7轮实验,每轮实验除了随机选取进行拆分的词语数目不同以外,其他设定均一致。

      第1轮到第7轮实验从整个文本集合中分别随机抽取10 000、20 000、30 000、40 000、50 000、60 000以及64 854个词语作为备选词语集合,去除其中的高低频词以及非名词以后,对词语集合进行语义拆分,之后经文本向量化与拼接操作得到特征向量。为了不干扰实验结果,7轮实验对于λ值均设置为0.01,最终聚类所得评价结果如图3所示。按照本文的预想,进行语义拆分步骤的词语越多,则拆分后文本集合中的“主题歧义”现象就越少,文本之间也就越容易区分。从图3可以看出,随着随机选择进行语义拆分的词语数目逐渐增加,V-measure与宏F1值都在上升,证实了本文提出的词语语义拆分的方法确实能有效加强特征向量对文本的区分能力。

      图  3  聚类结果与随机选取出来进行拆分的词语数目之间的关系

      Figure 3.  Relation between clustering results and the number of randomly selected words to be splited

    • 为了获得相对客观、稳定的实验结果,所有方法在使用K-means聚类时初始值选取的次数都取值足够大(300次)以保证收敛,此外,每种方法都进行10轮聚类,取10次结果的算术平均值作为最终的实验结果。

      在具体的参数设置上,距离阈值α取为0.3,局部离群因子阈值β取为0.95,对于搜狗语料,特征向量权重系数λ设置为2.5,对于复旦语料,λ设置为7。基于搜狗语料库的实验结果如表1所示,基于复旦语料的实验结果如表2所示。为了便于叙述,将本文方法称为DT2Vec(Document with Topic Information to Vector)。

      MethodV-measure/%F1-measure/%
      macro-F1micro-F1
      WM2Vec61.97377.41777.565
      SIF2Vec61.70676.83677.266
      Doc2Vec67.68983.23883.397
      BTM2Vec64.63373.89574.707
      DT2Vec71.07884.99285.091

      表 1  搜狗语料聚类结果对比

      Table 1.  Comparison of clustering results of Sogou corpus

      MethodV-measure/%F1-measure/%
      macro-F1micro-F1
      WM2Vec52.31169.88269.748
      SIF2Vec40.55659.50157.863
      Doc2Vec59.66782.09182.207
      BTM2Vec61.75581.00481.568
      DT2Vec64.71183.85784.152

      表 2  复旦语料聚类结果对比

      Table 2.  Comparison of clustering results of Fudan corpus

      表1表2可见,在5种方法中,词粒度的方法(WM2Vec和SIF2Vec)表现最差,这是因为无论是直接对词向量作算术平均还是作加权平均,所得的文本向量都仅与文档中所含单词有关,而如果两篇短文档中的单词重合度较小,即使它们描述的是同一主题的内容(实际的文本中经常出现用不同的词描述同一类事物的情形),也极有可能被划分为两类,因此实验结果中这2种方法的聚类效果和其他3种方法相比出现了明显差距。

      基于主题的BTM2Vec和基于段落向量的Doc2Vec则好于前2种方法,这是因为这2种方法利用了更为全面的信息:前者使用了文本集合中所有的词对作为主题信息,而后者则相对词向量而言加入了综合全段落主旨的段落向量。

      本文方法在5种方法中获得了最好的聚类效果。对于搜狗语料来说,本文方法在V-measure和F1值上分别至少提升了4.0%与1.75%;而对于复旦语料,则分别至少提升了2.9%和2.85%;与前4种方法相比,DT2Vec所得的特征向量包含了最多的文本特征信息,包括由BTM所获得的主题信息和由段落向量所获得的段落主旨信息,二者得到了有效的融合,这也就给予了特征向量对短文本更强的区分能力,所以本文方法能有效改善短文本的聚类效果。

      为了深入观察本文方法与其他方法相比的改进之处,在实验部分给出本文方法与Doc2Vec在各个主题上聚类结果的详细对比,采用的对比指标为精确率与召回率。图4为本文方法与Doc2Vec在搜狗语料上的聚类结果精确率对比,图5为本文方法与Doc2Vec的聚类结果召回率对比。

      图  4  本文方法与Doc2Vec的精确率对比(搜狗语料)

      Figure 4.  Precision comparison between DT2Vec and Doc2Vec (Sougou Corpus)

      图  5  本文方法与Doc2Vec的召回率对比(搜狗语料)

      Figure 5.  Comparison of recall rate between this method and Doc2Vec (Sougou Corpus)

      图4图5可知,本文方法相对Doc2Vec的聚类结果而言,7个主题的聚类精确率与召回率绝大部分都得到了提升,再次验证了本文方法的有效性。因为前期已经利用主题信息对“主题歧义词”作了语义拆分,因此使用本文方法所得的段落向量对含“歧义词”文档的区分能力更强,再加上与文档-主题概率分布的拼接,最终所得的特征向量有效结合了主题信息与段落向量,在保证维度基本不变的前提下丰富了文本特征所携带的信息量,所以利用该文本特征能更好的区分不同主题的文档,具体表现就是对各个主题而言,相应的聚类精确率与召回率都在提升。

      另外,从图4图5中可以注意到“金融”主题的精确率相比其他主题而言较低,只有64.7%(Doc2Vec)和66.6%(本文方法);而“汽车”主题的召回率也同样只有59.9%(Doc2Vec)和61.9%(本文方法),不难推测“汽车”和“金融”相互影响,很多“汽车”主题的短新闻在聚类时被划分到了“金融”主题下,从侧面反映了这两个主题之间的彼此辨识度不高,这符合实际生活中的情况,有很多短文本如新闻之类的是同时具备多个主题的,比如描述汽车行业的市场销售值这类新闻,它与“汽车”和“金融”都相关,实际上不应单独将其直接划入“汽车”或是“金融”主题下,解决这类问题的方法之一是为这类短文本提供多个主题标签,这也是本文的后续研究方向。

    • 针对目前短文本聚类常用的文本特征大都存在所含信息单一且信息量较少这一缺陷,提出了一种结合词对主题模型与神经网络算法用于短文本聚类的方法,通过利用主题信息对文本集合中的词语作语义拆分、拼接文档-主题概率分布这两种方式将主题信息融入文本特征向量,在保证特征维度较低的前提下丰富了文本特征所携带的信息量,有效地加强了特征向量对文本的区分能力,同时也能避免受到短文本的稀疏性影响,从实验结果来看,短文本最终的聚类效果得到有效改善,证实了上述观点。本文方法为信息检索、搜索引擎等领域提供了一种新的建立短文本特征向量以及文本聚类的思路。另外,在实验过程中,遇到了多主题短文本的情况,这类短文本实际上不应单独划分至某个主题下,因此下一步考虑研究如何为这类短文本提供多个主题标签。

(5)  表(2) 参考文献 (15) 相关文章 (20)

目录

    /

    返回文章