当前位置: 首页 > 专利查询>武汉大学专利>正文

一种基于Doc2vec的相似实体挖掘方法技术

技术编号:17541603 阅读:40 留言:0更新日期:2018-03-24 18:37
本发明专利技术属于自然语言处理中的相似文档挖掘问题,涉及到词嵌入表达、文档关键词提取、文档嵌入表达、高维空间中最近邻快速计算等技术领域。本发明专利技术提出了一种基于Doc2vec的相似实体挖掘方法。通过实体的描述文档,使用Word2vec词嵌入表达、TFIDF文档关键词提取、使用Doc2vec将实体描述文档转换为连续稠密的向量,使用Balltree数据结构,高效的挖掘相似实体。

A method of mining similar entity based on Doc2vec

The invention belongs to the similar document mining problem in Natural Language Processing, which involves the technical fields of word embedding, expression, keyword extraction, document embedding and expression, and nearest neighbor fast computation in high dimensional space. This invention puts forward a method of similar entity mining based on Doc2vec. Through entity description documents, we use Word2vec words to embed expressions, extract keywords from TFIDF documents, use Doc2vec to transform entity description documents into continuous dense vectors, and use Balltree data structure to efficiently mine similar entities.

【技术实现步骤摘要】
一种基于Doc2vec的相似实体挖掘方法
本专利技术属于自然语言处理中的相似文档挖掘问题,涉及到词嵌入表达、文档关键词提取、文档嵌入表达、高维空间中最近邻快速计算等

技术介绍
在搜索、机器阅读理解、用户画像、推荐系统等诸多领域内,相似词挖掘、相似文档挖掘以及更具体的相似APP或相似公众号挖掘起着关键的作用。而进行相似挖掘,一种最直接的方法需要先将词语或文档映射一个高维空间中,即词嵌入或文档嵌入。目前词嵌入(wordembeddings)最主流以及最成功的方法是Word2Vec技术。该技术是一种神经概率语言模型,该模型首先由BengioY等人提出。神经概率语言模型是想通过上下文来预测下一个词的概率,其认为在文档中一个位置词语的概率分布可以由该位置的上下文词语来确定。通过使目标函数即预测词的概率最大化,该模型的嵌入层的输出结果可以作为词的一种连续稠密向量表达。基于该模型,MikolovT等人提出了著名的Word2Vec技术,包括CBOW(continuousbagofwords)与Skip-gram两种模型。并且基于多层softmax(hierarchicalsoftmax)和负采样(negativesampling,NEG)等方法加快了模型训练。词嵌入作为自然语言处理中的一种通用方法,用途广泛,特别是其在词语相似性计算中的应用。但是在特定领域内,如用户画像和推荐系统中,用户使用的APP或关注的公众号是刻画用户的重要标签,因此APP或公众号的相似性计算尤为关键,但由于APP或公众号名称的歧义性和有些名称无法通过通用的分词工具从文本中切分出来等因素,使得直接通过word2vec来计算其相似性效果不佳。本专利技术使用APP或公众号的描述文档训练出的文档向量作为APP或公众号的向量表示,其表示结果相比word2vec信息更具体,且不受名称歧义以及分词的影响。因此在APP或公众号相似性刻画方面表现优于word2vec。自从word2vec方法出现之后,学术界也在寻求一种文档的连续稠密向量表示方法,即doc2vec。目前主流的doc2vec方法有word2vec+idf,该方法思想是想先通过tf-idf计算文档的关键词,然后通过文档关键词的向量表示得到文档的向量表示。这种方法的其中一个优势是训练出来的文档的向量可以直接和词语的向量做比较。QuocLe等人通过改变wod2vec的训练方式,提出了一种称为paragraph2vec的方法。该方法在训练词向量时,对于每篇文档,同时训练一个全局的文档向量。文档向量在同一篇文档里面共享,词向量在所有文档中共享。文档向量用于补全局部的词所不能提供的全局文档信息。该方法的缺点是,对于一篇新的文档,要在固定的词向量下重新训练其文档向量,不利于扩展。Kiros等人提出了一种称为Skip-thoughtVectors的方法。该方法将word2vec的Skip-gram模型扩展到了句子的层级,其得到的句子的向量表示在自然语言处理的各方面应用都有优秀的表现。ChenM最近提出了一种新的称为doc2vecC的方法。该方法在训练词向量时,引入一个依赖于词分布的正则项,该正则项使常见的词和对上下文预测没有提供信息的词的向量趋于0。之后对文档的所有向量进行简单的求平均就可以得到文档的向量。以该方法训练出的文档向量作为特征做文档分类,在Idmb的数据集上达到了业界最高水平。在对文档进行向量表示后,就可以通过余弦距离或欧几里得距离等来表示文档之间的相似性。通过按相似性排序可以得到每个文档背会对应的实体的最相似的实体。但是由于实体众多,经常可以达到数亿的级别,分别两两计算实体间的相似性在进行排序计算复杂度太高。因此需要一种特别的数据结构来减少计算复杂度。在KNN中,一种常用的计算最近邻的方式是使用KDTree数据结构来存储数据点。KDTree在构造时,迭代的对数据的每一个轴,寻找其中位点作为切分点将数据分到两个子节点内。这种结构显著的减少了最近邻的计算复杂度,但是随着数据维度的增加,通常当维度达到20以上时,由于维数灾难(curseofdimensionality)的影响,KDTree的计算效率急剧下降。另外一种适合计算高维空间中最近邻的数据结构是Balltree。与KDTree每次通过一个轴切分数据不同的是,Balltree将数据切分到一系列给定中心和半径的超球体中。这使得树在构造时更加复杂,但是计算最近邻时非常高效,即使是在很高的维度下。DolatshahM等人,对Balltree进行改进,提出Ball*-tree。其在构造时,考虑数据点在空间中的分布,计算效率进一步提高。
技术实现思路
在信息时代,用户从互联网上获得信息主要来自搜索和推荐两个方面。无论哪种方法,实体间相似性的计算以及最近邻计算都尤为关键,而相似性的计算依赖于实体的嵌入表示。本专利技术对于一个实体,从其描述文档出发,使用其描述文档训练出的文档向量作为实体的嵌入表示。然后使用一种称为Balltree的数据结构,高效计算与每个实体最相似的实体。为完成以上目标,本专利技术提出的方案步骤见图1,具体步骤如下:一种基于Doc2vec的相似实体挖掘方法,其特征在于,包括以下步骤:步骤1,对通用语料进行分词,使用Skip-gram模型计算词向量,该模型的目标函数是其中,p(wt+j|wt)表示在文本中,已知位置t的词语是wt时,位置t+j的词语是wt+j的后验概率,通过softmax函数求得其中,V表示所有词语组成的词汇表,表示词语wi在嵌入层的向量表示,为其转置,表示词语wi的在输出层的向量表示;使用Adam优化器对目标函数进行迭代优化,使用hierarchicalsoftmax方法加速模型的训练;步骤2,对实体描述文档进行分词与词性标注,并使用TF-IDF算法计算文档关键词及权重,词语wi在文档dj中的权重weighti,j=TFi,j×IDFi其中,TFi,j表示词频,即词语i在文档j中的出现的次数,DFi表示文档频率,即包含词语i的文档的个数,IDF为DF的对数的倒数通过词语在文档中的位置positioni,j与词语词性POS对权重进行修正weight′i,j=weighti,j×positioni,j×POS计算出每篇文档中每个词的权重weight′i,j后,对权重按从大到小排序,取topK个词作为文档关键词;步骤3,根据步骤1中词向量与步骤2中文档关键词及权重,计算文档向量并进行归一化,其中,文档向量vdj的值由其topK个关键词集合Keydj中词语的向量加权求得对文档向量进行归一化基于以下公式:上式中与其转置与相乘得到该向量的长度,用该向量除以其长度得到长度为1且方向与之前相同的归一化之后的文档向量步骤4,使用文档向量,进行相似实体挖掘,实体的相似性通过实体对应的文档向量的欧式距离表示,向量a与向量b的欧式距离为(a-b)T(a-b)使用以上的欧式距离计算公式,文档di与dj的欧式距离为的模为1,因此distance(di,dj)在[0,2]间,通过欧式距离计算出位于[0,1]之间的相似性因此,本专利技术具有如下优点:1.使用定长的向量表示实体,将非结构化的数据结构化表示,使不同实体间的比较得以方便的实现。2.实体的表示不仅只使用了本文档来自技高网
...
一种基于Doc2vec的相似实体挖掘方法

【技术保护点】
一种基于Doc2vec的相似实体挖掘方法,其特征在于,包括以下步骤:步骤1,对通用语料进行分词,使用Skip‑gram模型计算词向量,该模型的目标函数是

【技术特征摘要】
1.一种基于Doc2vec的相似实体挖掘方法,其特征在于,包括以下步骤:步骤1,对通用语料进行分词,使用Skip-gram模型计算词向量,该模型的目标函数是其中,p(wt+j|wt)表示在文本中,已知位置t的词语是wt时,位置t+j的词语是wt+j的后验概率,通过softmax函数求得其中,V表示所有词语组成的词汇表,表示词语wi在嵌入层的向量表示,为其转置,表示词语wi的在输出层的向量表示;使用Adam优化器对目标函数进行迭代优化,使用hierarchicalsoftmax方法加速模型的训练;步骤2,对实体描述文档进行分词与词性标注,并使用TF-IDF算法计算文档关键词及权重,词语wi在文档dj中的权重weighti,j=TFi,j×IDFi其中,TFi,j表示词频,即词语i在文档j中的出现的次数,DFi表示文档频率,即包含词语i的文档的个数,IDF为DF的对数的倒数通过词...

【专利技术属性】
技术研发人员:李石君刘杰杨济海李号号余伟余放李宇轩
申请(专利权)人:武汉大学
类型:发明
国别省市:湖北,42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1