基于HybridDL模型的文本相似度检测方法
摘要: 为了提高文本相似度检测算法的准确度,提出一种结合潜在狄利克雷分布(Latent Dirichlet Allocation,LDA)与Doc2Vec模型的文本相似度检测方法,并把该算法得到的模型命名为HybridDL模型。该算法通过Doc2Vec对文档训练得到文档向量,再利用LDA模型得到文档主题与各个主题下特征词出现的概率,对文档中各主题及特征词计算概率加权和,映射到Doc2Vec文档向量中。实验结果表明,新算法模型比传统的Doc2Vec模型对相似文本的判断更加敏感,在文本相似度检测上具有更高的准确度。
0 引言
在当下这个信息时代,互联网已经成为人们生活中不可或缺的一部分,在机器计算能力大幅度提高的同时,获得的数据也呈爆炸式增长。文本数据作为数据中的重要组成部分,量大且关键。因此,从大量的文本数据中高效地提取出满足人们需要的信息成为了当下的热门话题。在自然语言处理领域,通过计算机处理文本数据时,由于语言的多样性,相同的词语在不同的句子或者语境中表达出来的意思可能会存在差异,导致计算机无法直接并准确地获取文本特征[1]。所以,如何从语料中学习到好的文本表示,如何提升文本表示模型的性能,对于后续自然语言处理的相关研究,如机器翻译、文本分类[2]、情感分析[3]、问答系统、文本检索等,具有十分深远的意义。
建立文本表示模型包括对词、主题、语句、文档等各个级别任务进行建模。对于词级别的文本表示模型,通常使用被称作词向量的数学表示方法来处理。词向量顾名思义是一种通过向量来表示句子中词语的方法,向量中的每一维都在实数范围内进行取值操作[4]。
词向量最早由BENGIO Y、DUCHARME R、VINCENT P等人提出[5],其传统做法是One-hot表示方法,即将不同词用相对应的维度很高的向量来表示,其中,向量的维度对应字典大小,在各个词的向量中只存在一个位置为1,其余位置为0。该表示模型十分简洁,便于理解,但是由于数据稀疏会造成维数灾难,并且该模型没有考虑词与词之间的关联性,准确度不高。
近年来,被称作词的分布式表示的向量表示得到了较为广泛的应用,理论思路是通过训练,将句子中的各词语映射到N维向量空间中。该方法在One-hot的基础上,联系了前后文的语义信息,使语义相近词语所映射得到的词向量比较接近,而One-hot法得到的是毫无关联的词向量。即可以通过词与词在空间中的距离计算词与词在语义上的相关性,距离越小则语义越相关,距离越大则越无关。2013年,MIKOLOV T等人提出利用神经网络模型来训练分布式词向量[6],所得到的模型被称作Word2Vec,该模型可以通过前后文的词汇预测中心词或者通过中心词来预测前后文的词汇。它相当于一个里程碑,现在也被广泛使用。Doc2Vec是Word2Vec的扩展,于2014年由MIKOLOV T等人提出[7],同样用于学习文档表示。该模型在构建的过程中,在获取上下文单词信息的同时,增加了一个段落标记,能够更精确地表示原始文本。但是在实际应用中Doc2Vec需要大量数据进行训练才能有较好的效果,当数据量不足时,提取信息不充分,结果产生的偶然性较大。
主题模型由于可以发掘深层次的语义信息,因此在构建文本表示模型时也可以达到较好的效果。2003年BLEI D M、JORDAN M I等人提出了潜在狄利克雷分布[8],首次将狄利克雷先验分布加入到文档、主题、词的多项式分布中,效果显著。LDA是一种从大量文档中发现潜在主题的概率主题模型,它从文本的统计学特性入手,将文本语料库映射到各个主题空间中,从而发掘文本中各主题与词语之间的对应关系,得到文本的主题分布[9]。它通常被认为是一种通过对不同主题中的单词进行分组的特征约简方法,因此可以将文档映射到更低的维度空间。但LDA没有考虑词语的前后文关联,构建出的文本向量比较稀疏,在表示原始文本的信息方面效果一般。
本文尝试将LDA和Doc2Vec进行融合。LDA从每个文档到所有主题的全局关系建模,而Doc2Vec则通过从目标单词的上下文中学习来捕获这些关系。发挥这两种模型各自的优点,从而产生比传统模型更高的准确率判断。