Text Clustering & BERT - A Text Document Clustering Method Based on Weighted BERT Model

emmm..这个系列可能会有好几篇文章吧,用来弥补对黑色九月的无知..(2)

Li Y, Cai J, Wang J. A text document clustering method based on weighted Bert model[C]//2020 IEEE 4th Information Technology, Networking, Electronic and Automation Control Conference (ITNEC). IEEE, 2020, 1: 1426-1430.

摘要导读

传统的文本文档聚类方法表示使用非上下文化词嵌入和向量空间模型的文档表示,忽略了单词之间的多义性和语义关系。本文提出了一种处理这些问题的文本文档聚类方法。首先,利用预训练的语言表示模型BERT来生成句子嵌入。然后,设计了两个基于命名实体的句子级加权方案来增强文档聚类的性能。最后,利用k-means算法来得出最后的聚类结果。在4个数据集上的实验结果表明,所提出的加权方法比未加权平均法具有更高的精度。

模型浅析
The framework.

由上图可以看出,提出的模型主要分为Embedding、Weighting和Clustering三个模块。

  • Embedding Module
    在嵌入模块中,预训练的语言表示模型BERT用于在第一步中生成包含上下文语义的句子嵌入。这里选用的是12层的BERT-Base生成嵌入表示。
    因为提出的模型并没有进行基于任务的反调,为了避免最后一层输出的嵌入表示太过于接近BERT本身的预训练任务,这里作者选用的是第11层的嵌入表示用于后续的操作。
    对于包含l个token的句子,通过BERT之后可以得到l \times 768的表示矩阵。随后使用词方向的平均池化,将其转换为1 \times 768的句子表示。总结来说,此模块将文本文档中的每个可变长度句子映射到 768 维固定长度句子嵌入。
  • Weighting Module
    该模块是一个基于句子中实体确定每个句子在文档中权重的模块。由于包含更多信息词的句子更有价值,因此本文选择每个句子包含的特定类型的命名实体的数量作为句子级特征,以此来设计对句子的加权方法。值得注意的是,命名实体的类型最好仔细选择,并且因任务而异。该模块介绍了两种加权的方法:
    (1)Weighted Average
    计算文档d中的每个句子s的权重w_s
    其中,n_s是句子中包含实体的数量。为了保证每个句子都能参与文档的表示,在权重计算的时候保留了加1。因此,每个文档d的向量表示v_d由如下公式计算:

    (2)Weighted Removal
    文档d中的每个句子s的权重w_s计算方式如下:
    p(s)是句子s的概率:
    其中,N是整个文档集合D中所包含的特殊的实体的个数。a是一个与p(s)成比例的参数。
    在本文中,作者将a固定为10,将每个句子的权重控制在[1,1.11]之间。请注意,对于信息量更大的句子s ,权重w_s 更大,因此这自然会导致句子的权重增加。每个文档d的向量表示v_d由如下公式计算:

    对于集合 D 中的每个文档 d,删除第一个主组件以获得删除步骤中的最终文档表示形式。集合D可以表示成一个矩阵,它的列由\{v_d: d \in D\}组成,设 u 是它的first singular vector。D中的表示被修正为:

    在此 WR 方案中,第一步中每个句子的权重不仅反映了句子的重要性,而且还将句子所属的文档与整个文档集合相关联。在第二步中删除第一个原则组件,部分降低了所有文档之间的通用性,从而使所有文档之间的差异更加突出。

总结来说,提出的模型只是将BERT作为了一个模型抽取的工具,后续的句子加权方法与BERT之间是断层的,并且最终也没有基于聚类任务对BERT模型的微调。最主要的贡献是对文档中的句子设计了权重的重新分配方案,使得比无权重的方案聚类性能更好。值得注意的是,该模型的实验是在Reuters-21578中产生了4个数据集进行了实验,其他数据集特殊实体类型的选择可能会不太容易。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容