CN108932222B - 一种获取词语相关度的方法及装置 - Google Patents
一种获取词语相关度的方法及装置 Download PDFInfo
- Publication number
- CN108932222B CN108932222B CN201710362164.2A CN201710362164A CN108932222B CN 108932222 B CN108932222 B CN 108932222B CN 201710362164 A CN201710362164 A CN 201710362164A CN 108932222 B CN108932222 B CN 108932222B
- Authority
- CN
- China
- Prior art keywords
- word
- words
- identification code
- synonym
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Machine Translation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种获取词语相关度的方法及装置,涉及通信领域。该获取词语相关度的方法包括:构建基于同义词词林的词向量集合,其中所述同义词词林中记录了预定词语和所述预定词语的标识编码集;根据所述同义词词林,分别获取第一目标词语的第一标识编码集和第二目标词语的第二标识编码集;根据所述第一标识编码集、所述第二标识编码集和所述词向量集合,获得所述第一目标词语和所述第二目标词语的目标相关度。本发明的方案,解决了现有的语义相关度计算方法,对于同义词、低频同现词和一词多义的情况下,会出现相关度计算结果不准确的问题。
Description
技术领域
本发明涉及通信领域,特别是指一种获取词语相关度的方法及装置。
背景技术
计算机和互联网技术的飞速发展使得网络上的数据资源呈指数级增长,这些数据信息对于计算机来说非常难于理解和应用,而人们又希望从中迅速有效地获取所需要的信息,所以对信息的智能、自动化的处理需求越来越迫切,这些自动处理的核心问题之一是语义相关度计算问题。
语义相关度是表示两个词语相关程度的一个概念,它反映的是词语的关联程度。和语义相关度相对应的是语义相似度,表示各概念间的相似程度,即两个概念本身之间具有某些共同特性。例如,汽车和自行车都继承于车这个概念,即具有车这个概念的共同特性。所以,汽车和自行车两个概念是相似的。而汽车和汽油两个概念并没有共同的父概念,但两个概念却有紧密联系,是相关的。因此语义相关度在范围上包含语义相似度,两个概念之间相似,则一定相关;两个概念相关,却不一定相似。
语义相关度计算作为自然语言处理领域的重要研究方向,是语义网、信息检索、数据挖掘、信息集成、知识管理、文本分类、词义消歧、基于实例的机器翻译等多种自然语言处理技术的重要基础,因此语义相关度的研究具有很重要的意义。目前,语义相关性计算方面的研究主要为基于词向量模型的语义相关度计算方法。
基于词向量模型的语义相关度计算方法,通过对语料库(如wiki语料库、Google语料库和Sogou语料库等)进行分词,然后结合词语的邻域利用深度学习算法为每个分词后的词语训练一个固定维数的实向量,然后利用向量之间的余弦距离作为词汇之间相关度的衡量标准。其中词向量模型中,最为知名的是word2vec模型。word2vec是Google推出的一款基于Deep Learning的开源的学习工具。word2vec通过在给定语料库上训练一个模型,将单词转换成向量形式的工具。词向量具有良好的语义特性,是表示词语特征的常用方式。词向量每一维的值代表一个具有一定的语义和语法上解释的特征。通过词向量训练,可以把对文本内容的处理简化为向量空间中的向量运算,计算出向量空间上词与词之间的相关度,来表示词语语义上的相关度。word2vec常用的训练模型为连续词袋CBOW。CBOW基于神经网络模型,包含输入层、投影层和输出层,通过上下文来预测当前词。
然而,基于word2vec词向量模型的语义相关度计算方法,对于同义词、低频同现词和一词多义的情况下,会出现相关度计算结果不准确的问题,如下表1、表2和表3所示。
表1
词1 | 词2 | 人为评分(0-10) | word2vec(0-1) |
西红柿 | 番茄 | 9.5 | 0.592 |
西红柿 | 黄瓜 | 8.0 | 0.850 |
番茄 | 黄瓜 | 7.5 | 0.507 |
表1中的“西红柿”和“番茄”为同义词,但是两个词在模型中有不同的词向量。而且SimVec(西红柿,番茄)<SimVec(西红柿,黄瓜),说明黄瓜比番茄和西红柿的相关度更大,这和人主观的相关性判断存在明显分歧。
表2
词1 | 词2 | 人为评分(0-10) | word2vec(0-1) |
旅行 | 宾馆 | 8 | 0.057 |
钱 | 金融 | 7.7 | 0.120 |
医生 | 责任 | 8.8 | 0.035 |
疾病 | 医院 | 8.3 | 0.176 |
由于word2vec在训练过程中,一个词的词向量只受邻域窗口范围内的词的影响,因此窗口外的词对于词向量的影响非常小,因此造成一个词与窗口外的词语相关性相对人为判断较低。另外受语言表达习惯的影响,表达同一意思的不同词语,有些被频繁使用,有些则使用频率较低。因此虽然表达的意思相同,但出现频率高的词和其它词的相关度相对出现频率低的词与其它词的相关度更高。表2中给出了低频同现词的相关度计算实例,和人为评分相比,明显偏小。
表3
词1 | 词2 | 人为评分(0-10) | word2vec(0-1) |
骄傲 | 自负 | 8.5 | 0.490 |
骄傲 | 光荣 | 7.5 | 0.400 |
表3中“骄傲”一词拥有正面和负面两个意思,当“骄傲”在语料库中的邻域为正面词汇时,词向量会向这些正面词汇靠近。当“骄傲”在语料库中的邻域为负面词汇时,词向量又往负面词汇靠近。最终“骄傲”的词向量所在的空间位置是多个词义下的一个折中,因此相关度的计算结果相对认为评分存在偏差。
发明内容
本发明的目的是提供一种获取词语相关度的方法及装置,以解决现有的语义相关度计算方法,对于同义词、低频同现词和一词多义的情况下,会出现相关度计算结果不准确的问题。
为达到上述目的,本发明的实施例提供一种获取词语相关度的方法,包括:
构建基于同义词词林的词向量集合,其中所述同义词词林中记录了预定词语和所述预定词语的标识编码集;
根据所述同义词词林,分别获取第一目标词语的第一标识编码集和第二目标词语的第二标识编码集;
根据所述第一标识编码集、所述第二标识编码集和所述词向量集合,获得所述第一目标词语和所述第二目标词语的目标相关度。
其中,所述构建基于同义词词林的词向量集合的步骤,包括:
依次选择语料库中的词语作为待处理词语;
在所述待处理词语为所述同义词词林中的预定词语时,获取所述待处理词语的第三标识编码集;
根据所述第三标识编码集以及所述待处理词语在所述语料库的位置,确定所述待处理词语的当前语义编码,并记录在所述语料库中;
根据所述语料库中所有词语的当前语义编码,进行预定词向量模型训练,得到所述词向量集合。
其中,所述根据所述第三标识编码集以及所述待处理词语在所述语料库的位置,确定所述待处理词语的当前语义编码,并记录在所述语料库中的步骤,包括:
根据所述待处理词语在所述语料库的位置,获取与所述待处理词语相邻的、预设数量的相邻词语,得到相邻词语集U;其中,U={U1,U2,……,Uw},w为所述预设数量;
根据所述第三标识编码集和所述相邻词语集,获取每个相邻词语分别与所述待处理词语的每个同义词语之间的语义相关度,并将对应同一同义词语的语义相关度求和取平均值,确定最大平均值所对应的同义词语的编码为当前语义编码;
将所述当前语义编码和所述待处理词语组合后,替换所述语料库中的所述待处理词语。
其中,所述根据所述第三标识编码集和所述相邻词语集,获取每个相邻词语分别与所述待处理词语的每个同义词语之间的语义相关度,并将对应同一同义词语的语义相关度求和取平均值,确定最大平均值所对应的同义词语的编码为当前语义编码的步骤,包括:
S={D1,D2,……,Dk},S为所述第三标识编码集,k为所述第三标识编码集中标识编码的个数,Di为所述第三标识编码集中第i个标识编码,为所述第三标识编码集中第i个标识编码所对应的第h个词语,nk为所述第三标识编码集中第i个标识编码所对应的词语的个数,Uj为所述相邻词语集中第j个词语,为计算是否为单义词的函数。
其中,根据所述第一标识编码集、所述第二标识编码集和所述词向量集合,获得所述第一目标词语和所述第二目标词语的目标相关度的步骤,包括:
根据所述第一标识编码集,确定所述第一目标词语的第一同义词词语集;
根据所述第二标识编码集,确定所述第二目标词语的第二同义词词语集;
根据所述词向量集合,分别计算所述第一目标词语与所述第二同义词词语集中各个词语的语义相关度,所述第二目标词语与所述第一同义词词语集中各个词语的语义相关度,以及所述第一目标词语与所述第二目标词语的语义相关度;
选取得到的最大语义相关度作为所述第一目标词语和所述第二目标词语的目标相关度。
为达到上述目的,本发明的实施例还提供了一种获取词语相关度的装置,包括:
构建模块,用于构建基于同义词词林的词向量集合,其中所述同义词词林中记录了预定词语和所述预定词语的标识编码集;
获取模块,用于根据所述同义词词林,分别获取第一目标词语的第一标识编码集和第二目标词语的第二标识编码集;
处理模块,用于根据所述第一标识编码集、所述第二标识编码集和所述词向量集合,获得所述第一目标词语和所述第二目标词语的目标相关度。
其中,所述构建模块包括:
选择子模块,用于依次选择语料库中的词语作为待处理词语;
获取子模块,用于在所述待处理词语为所述同义词词林中的预定词语时,获取所述待处理词语的第三标识编码集;
第一确定子模块,用于根据所述第三标识编码集以及所述待处理词语在所述语料库的位置,确定所述待处理词语的当前语义编码,并记录在所述语料库中;
训练子模块,用于根据所述语料库中所有词语的当前语义编码,进行预定词向量模型训练,得到所述词向量集合。
其中,所述第一确定子模块包括:
获取单元,用于根据所述待处理词语在所述语料库的位置,获取与所述待处理词语相邻的、预设数量的相邻词语,得到相邻词语集U;其中,U={U1,U2,……,Uw},w为所述预设数量;
处理单元,用于根据所述第三标识编码集和所述相邻词语集,获取每个相邻词语分别与所述待处理词语的每个同义词语之间的语义相关度,并将对应同一同义词语的语义相关度求和取平均值,确定最大平均值所对应的同义词语的编码为当前语义编码;
替换单元,用于将所述当前语义编码和所述待处理词语组合后,替换所述语料库中的所述待处理词语。
S={D1,D2,……,Dk},S为所述第三标识编码集,k为所述第三标识编码集中标识编码的个数,Di为所述第三标识编码集中第i个标识编码,为所述第三标识编码集中第i个标识编码所对应的第h个词语,nk为所述第三标识编码集中第i个标识编码所对应的词语的个数,Uj为所述相邻词语集中第j个词语,为计算是否为单义词的函数。
其中,根据所述处理模块包括:
第二确定子模块,用于根据所述第一标识编码集,确定所述第一目标词语的第一同义词词语集;
第三确定子模块,用于根据所述第二标识编码集,确定所述第二目标词语的第二同义词词语集;
处理子模块,用于根据所述词向量集合,分别计算所述第一目标词语与所述第二同义词词语集中各个词语的语义相关度,所述第二目标词语与所述第一同义词词语集中各个词语的语义相关度,以及所述第一目标词语与所述第二目标词语的语义相关度;
选取子模块,用于选取得到的最大语义相关度作为所述第一目标词语和所述第二目标词语的目标相关度。
本发明的上述技术方案的有益效果如下:
本发明实施例的获取词语相关度的方法,通过先基于记录了预定词语以及该预定词语的同义词词林,构建词向量集合;然后,在该同义词词林中分别查找到对应第一目标词语的第一标识编码集,第二目标词语的第二标识编码集;之后,即可由所构建的词向量集合,以及查找到的第一标识编码集、第二标识编码集,来获得目标相关度,提高了获取目标词语相关度时结果的准确度。
附图说明
图1为本发明实施例的获取词语相关度的方法的步骤流程图一;
图2为本发明实施例的获取词语相关度的方法的步骤流程图二;
图3为本发明实施例的获取词语相关度的方法的步骤流程图三;
图4为本发明实施例的获取词语相关度的方法的步骤流程图四;
图5为本发明实施例的获取词语相关度的装置的结构示意图一;
图6为本发明实施例的获取词语相关度的装置的结构示意图二;
图7为本发明实施例的获取词语相关度的装置的结构示意图三;
图8为本发明实施例的获取词语相关度的装置的结构示意图四。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
本发明针对现有的语义相关度计算方法,对于同义词、低频同现词和一词多义的情况下,会出现相关度计算结果不准确的问题,提供了一种获取词语相关度的方法,通过同义词词林并结合上下文信息为词语训练唯一的词向量,进而进行相关度的获取,提高了结果的准确度。
如图1所示,本发明实施例的一种获取词语相关度的方法,包括:
步骤101,构建基于同义词词林的词向量集合,其中所述同义词词林中记录了预定词语和所述预定词语的标识编码集;
步骤102,根据所述同义词词林,分别获取第一目标词语的第一标识编码集和第二目标词语的第二标识编码集;
步骤103,根据所述第一标识编码集、所述第二标识编码集和所述词向量集合,获得所述第一目标词语和所述第二目标词语的目标相关度。
本发明实施例的获取词语相关度的方法,通过上述步骤101-步骤103,首先,基于记录了预定词语以及该预定词语的同义词词林,构建词向量集合;然后,在该同义词词林中分别查找到对应第一目标词语的第一标识编码集,第二目标词语的第二标识编码集;之后,即可由所构建的词向量集合,以及查找到的第一标识编码集、第二标识编码集,来获得目标相关度。
这样,由于同义词词林中根据预定方式会将预定词语基于词义进行分类并编码,一个词语能够因其词义差异具有多个标识编码,而不同词语因其词义相同也会具有同一标识编码,从而结合同义词词林能够构建更佳的词向量集合,由该词向量集合进行目标相关度计算时,得到更准确的结果。而在目标相关度获取过程中,还通过同义词词林中第一目标词语的第一标识编码集和第二目标词语的第二标识编码集,来对第一目标词语和第二目标词语的词义进行扩展,进一步提高了结果的准确度。
优选的,该同义词词林为哈工大《同义词词林扩展版》,其中收录词语近7万条,全部按词义(词语意义)进行特定编码,是一部树状的层次结构同义类词典。该同义词词林具有5层编码格式,如下表4所示。
表4
其中,第1级用大写英文字母表示;第2级用小写英文字母表示;第3级用二位十进制整数表示;第4级用大写英文字母表示;第5级用二位十进制整数表示。第8位的标记有3种,分别是“=”,代表“相等”“同义”;“#”代表“不等但同类”,属于相关词;“@”代表“自我封闭”或“独立”,它在词典中既没有同义词,也没有相关词。同一个词可能具有不同的词义,因此,同一个词可能对应多个编码。
具体的同义词词林结构为“Ae15A01=医生医师医大夫郎中先生白衣战士卫生工作者”,该编码“Ae15A01=”多应同义的多个词语“医生医师医大夫郎中先生白衣战士卫生工作者”。当然,还有如“Ba01A03@万物”“Ba01B08#固体液体气体流体半流体”的同义词词林结构,在此不再一一列举。
应该知道的是,在语料库中,存在着大量一词多义的现象,若直接对预处理后语料库进行预定词向量模型训练,则对一个多义词的不同含义只训练出一个词向量,无法区分不同的词义,影响到语义相关度的计算准确性。因此,本发明实施例中,具体的,如图2所示,步骤101包括:
步骤1011,依次选择语料库中的词语作为待处理词语;
步骤1012,在所述待处理词语为所述同义词词林中的预定词语时,获取所述待处理词语的第三标识编码集;
步骤1013,根据所述第三标识编码集以及所述待处理词语在所述语料库的位置,确定所述待处理词语的当前语义编码,并记录在所述语料库中;
步骤1014,根据所述语料库中所有词语的当前语义编码,进行预定词向量模型训练,得到所述词向量集合。
语料库中存放的是在语言的实际使用中真实出现过的语言材料,因此,需经预处理(如分词、去掉重复文章等),该实施例中所使用的语料库,是预处理后的语料库。这里,在构建词向量集合时,会依次选择该语料库中的词语作为待处理词语,当该待处理词语为同义词词林中的预定词语时,就能够获取到该待处理词语的第三标识编码集,从而,由该第三标识编码集以及该待处理词语在语料库的位置,确定该待处理词语的当前语义编码,并记录在语料库,最终,进行预定词向量模型训练,得到词向量集合。这样,基于同义词词林和预定词向量模型,对包含多个词义的多义词训练多个词向量,提高了一词多义的相关度计算质量。
在该实施例中,在同义词词林中获取一词语x的标识编码集的过程可由编码获取函数findCode(x)得到。因此,待处理词语c的第三标识编码集S,S=findCode(c)={D1,D2,……,Dk},Dk为待处理词语c的其中一个标识编码,k为S中标识编码的个数(即待处理词语c在同义词词林中的同义项个数,k=|findCode(c)|)。而每个标识编码会对应多个词语,集合S中的元素表示为: 其中表示待处理词语c在同义词词林中标识编码Dk所对应的第nk个词语。还可定义单义词函数sign(x),x为一个词语,其中x若不在同义词词林中,则|findCode(x)|=0。sign(x)=0表示词语x是多义词,即词语x在同义词词林中具有多个编码。sign(x)=1表示词语x是单义词,即词语x在同义词词林中只有一个编码或者词语x不在同义词词林中。
而为结合该待处理词语在语料库的位置,了解到待处理词语的具体语义,进一步具体的,如图3所示,步骤1013包括:
步骤10131,根据所述待处理词语在所述语料库的位置,获取与所述待处理词语相邻的、预设数量的相邻词语,得到相邻词语集U;其中,U={U1,U2,……,Uw},w为所述预设数量;
步骤10132,根据所述第三标识编码集和所述相邻词语集,获取每个相邻词语分别与所述待处理词语的每个同义词语之间的语义相关度,并将对应同一同义词语的语义相关度求和取平均值,确定最大平均值所对应的同义词语的编码为当前语义编码;
步骤10133,将所述当前语义编码和所述待处理词语组合后,替换所述语料库中的所述待处理词语。
这里,如步骤10131,先由该待处理词语c在语料库的位置,获取其相邻的预设数量w个相邻词语,得到相邻词语集U,U={U1,U2,……,Uw}。然后,由第三标识编码集S和相邻词语集U,获取每个相邻词语分别与该待处理词语的每个同义词语之间的语义相关度,并将对应同一同义词语的语义相关度求和取平均值,确定最大平均值所对应的同义词语的编码为当前语义编码,也就能够确定该待处理词语在当前位置的最适宜语义。之后,使用该当前语义编码和待处理词语的组合替换语料库中的该待处理词语。
当预处理后的语料库中,包括该待处理词语c的一行词语集合可记为C={C1,C2,……,Cl,……,Cm},共有m个词语,Cl为C中第l个词语,1≤l≤m。基于编码获取函数和单义词函数,通过滑动窗口的方式,在该一行词语集合C中获取该待处理词语c上下文的相邻词语集U,U={U1,U2,……,Uw},可设置邻域窗口大小为w,较佳地,w为偶数, 为c的上文的邻域集合,为c的下文的邻域集合。
在得到相邻词语集U后,结合第三标识编码集S来确定当前语义编码的步骤10132,包括:
S={D1,D2,……,Dk},S为所述第三标识编码集,k为所述第三标识编码集中标识编码的个数,Di为所述第三标识编码集中第i个标识编码,为所述第三标识编码集中第i个标识编码所对应的第h个词语,nk为所述第三标识编码集中第i个标识编码所对应的词语的个数,Uj为所述相邻词语集中第j个词语,为计算是否为单义词的函数。
这里,将c的相邻词语集U={U1,U2,……,Uw}中的词语Uj与c的第三标识编码集S={D1,D2,……,Dk}中的每个标识编码Di下的词语集合 中的单义词进行语义相关度计算(使用语义相关度计算公式sim=cos(x,y)),然后将同一个标识编码Di下的语义相关度求和,并除以Di下的词语集合中单义词的个数,即得到同一个标识编码Di下每个单义词与相邻词语集U的平均语义相关度,而最大平均语义相关度对应的标识编码即为待处理词语c当前语义编码D,明确其在语料库出现位置的语义。
在得到当前语义编码,将其与待处理词语的组合,可使用定义的组合函数group(x,code),group(x,code)=code+x,x为一个词语,code为该词语x在同义词词林中的一个标识编码。所以,将组合后的group(c,D),将语料库中该位置的c替换。
之后,如步骤1014,对替换后的语料库进行预定词向量模型训练。
优选的,预定词向量模型为word2vec模型,使用连续词袋CBOW进行向量模型的训练,通过逻辑回归迭代的训练词的邻域内上下文相关的n(n=5)个词进行词向量训练,生成词向量训练后的模型,最后的词向量维度为400维。一个词f的词向量的表达式为f=(f1,f2,……,fi,……,f400),fi为浮点数,代表词语上下文的语义特征。训练出来的词向量模型举例:
时间=(-0.878781 -2.112356 1.204208 1.041078 -1.249182 0.272419……-1.952982 2.179033 -0.258987 1.129659 0.363234)
大学=(0.033173 -0.252127 -0.794737 -1.141235 0.678041 2.522937 -0.833398……1.822892 0.152297 -1.032652 -0.725105 0.790077)。
使用word2vec训练出的词向量计算两个词的词向量的余弦距离,余弦值越大,语义相关度越大。计算给定的两个词语x与y之间的语义相关度的计算公式:simVec=cos(x,y)。
当然,该预定词向量模型也可由其他基于神经网络的词向量模型如glove来实现,在此不再一一列举。
继而,如图4所示,步骤103包括:
步骤1031,根据所述第一标识编码集,确定所述第一目标词语的第一同义词词语集;
步骤1032,根据所述第二标识编码集,确定所述第二目标词语的第二同义词词语集;
步骤1033,根据所述词向量集合,分别计算所述第一目标词语与所述第二同义词词语集中各个词语的语义相关度,所述第二目标词语与所述第一同义词词语集中各个词语的语义相关度,以及所述第一目标词语与所述第二目标词语的语义相关度;
步骤1034,选取得到的最大语义相关度作为所述第一目标词语和所述第二目标词语的目标相关度。
这里,经步骤102,已分别获取到第一目标词语a和第二目标词语b的标识编码集:第一目标词语a的第一标识编码集A=findcode(a)={A1,A2,……,An},n为A中标识编码的个数;第二目标词语b的第二标识编码集B=findcode(b)={B1,B1,……,Bm},m为B中标识编码的个数。所以,首先如步骤1031和步骤1032,可分别确定a和b的同义词词语集。该实施例中,定义同义词获取函数syn(x,code),syn(x,code)表示在同义词词林中,词语x在标识编码为code下的所有同义词,通过syn(x,code),得到a的第一同义词词语集A’,b的第二同义词词语集B’。之后,如步骤1033,根据词向量集合来分别计算a与B’中各个词语的语义相关度,b与A’中各个词语的语义相关度,以及a与b的语义相关度。最终,如步骤1034,选取得到的最大语义相关度作为a和b的目标相关度。
其中,在计算a与B’中各个词语的语义相关度时,具体的,首先将a与其对应的每个标识编码Ai进行组合,即group(a,Ai);然后,依次获取b在每个标识编码为Bj下的所有同义词syn(b,Bj),可对于syn(b,Bj)中的任意一个词语g进行组合group(g,Bj);最后,对于每一对group(a,Ai)与group(g,Bj)计算word2vec语义相关度,然后取最大值,具体公式如下:
类似的,在计算b与A’中各个词语的语义相关度时,具体的,首先将b其对应的每个标识编码Bj进行组合,即group(b,Bj);然后,依次获取a在每个标识编码为Ai下的所有同义词syn(a,Ai),可对于syn(a,Ai)中的任意一个词语g进行组合group(g,Ai);最后,对于每一对group(b,Bj)与group(g,Ai)计算word2vec语义相关度,然后取最大值,具体公式如下:
在计算的a和b的语义相关度时,a与每个标识编码Ai进行组合,即group(a,Ai);b与每个标识编码Bj进行组合,即group(b;Bj);然后将每个group(a,Ai)与每个group(b;Bj)进行语义相关度计算,然后取最大值,具体公式如下:
最终,选取上述三种情况中最大语义相关度,作为a和b的目标相关度,具体公式如下:
{SimVec(group(a,Ai),group(b,Bj))}}
可见,本发明实施例的获取词语相关度的方法,一方面利用同义词词林对语料库中的多义词替换为“标识编码(同义词词林中记录的)+词语”的单义词,然后基于替换后的语料库训练词向量,将一词多义情况下的多义词替换为多个同义词词林标识编码标注的单义词,即一词多义词语不同的词义分别对应一个词向量,从而更明确地表达出不同上下文中词语要表达的真正语义。另一方面,在计算相关度的过程中,利用同义词词林下同一标识编码中同义词进行语义扩展,取其最大值作为目标相关度,解决了同义词和低频同现词语义相关度准确性差的情况。
综上所示,本发明实施例的获取词语相关度的方法,通过先基于记录了预定词语以及该预定词语的同义词词林,构建词向量集合;然后,在该同义词词林中分别查找到对应第一目标词语的第一标识编码集,第二目标词语的第二标识编码集;之后,即可由所构建的词向量集合,以及查找到的第一标识编码集、第二标识编码集,来获得目标相关度,提高了获取目标词语相关度时结果的准确度。
如图5所示,本发明的实施例提供了一种获取词语相关度的装置,包括:
构建模块501,用于构建基于同义词词林的词向量集合,其中所述同义词词林中记录了预定词语和所述预定词语的标识编码集;
获取模块502,用于根据所述同义词词林,分别获取第一目标词语的第一标识编码集和第二目标词语的第二标识编码集;
处理模块503,用于根据所述第一标识编码集、所述第二标识编码集和所述词向量集合,获得所述第一目标词语和所述第二目标词语的目标相关度。
可选地,在图5的基础上,如图6所示,所述构建模块501包括:
选择子模块5011,用于依次选择语料库中的词语作为待处理词语;
获取子模块5012,用于在所述待处理词语为所述同义词词林中的预定词语时,获取所述待处理词语的第三标识编码集;
第一确定子模块5013,用于根据所述第三标识编码集以及所述待处理词语在所述语料库的位置,确定所述待处理词语的当前语义编码,并记录在所述语料库中;
训练子模块5014,用于根据所述语料库中所有词语的当前语义编码,进行预定词向量模型训练,得到所述词向量集合。
可选地,在图6的基础上,如图7所示,所述第一确定子模块5013包括:
获取单元50131,用于根据所述待处理词语在所述语料库的位置,获取与所述待处理词语相邻的、预设数量的相邻词语,得到相邻词语集U;其中,U={U1,U2,……,Uw},w为所述预设数量;
处理单元50132,用于根据所述第三标识编码集和所述相邻词语集,获取每个相邻词语分别与所述待处理词语的每个同义词语之间的语义相关度,并将对应同一同义词语的语义相关度求和取平均值,确定最大平均值所对应的同义词语的编码为当前语义编码;
替换单元50133,用于将所述当前语义编码和所述待处理词语组合后,替换所述语料库中的所述待处理词语。
S={D1,D2,……,Dk},S为所述第三标识编码集,k为所述第三标识编码集中标识编码的个数,Di为所述第三标识编码集中第i个标识编码,为所述第三标识编码集中第i个标识编码所对应的第h个词语,nk为所述第三标识编码集中第i个标识编码所对应的词语的个数,Uj为所述相邻词语集中第j个词语,为计算是否为单义词的函数。
可选地,在图5的基础上,如图8所示,根据所述处理模块503包括:
第二确定子模块5031,用于根据所述第一标识编码集,确定所述第一目标词语的第一同义词词语集;
第三确定子模块5032,用于根据所述第二标识编码集,确定所述第二目标词语的第二同义词词语集;
处理子模块5033,用于根据所述词向量集合,分别计算所述第一目标词语与所述第二同义词词语集中各个词语的语义相关度,所述第二目标词语与所述第一同义词词语集中各个词语的语义相关度,以及所述第一目标词语与所述第二目标词语的语义相关度;
选取子模块5034,用于选取得到的最大语义相关度作为所述第一目标词语和所述第二目标词语的目标相关度。
该获取词语相关度的装置通过先基于记录了预定词语以及该预定词语的同义词词林,构建词向量集合;然后,在该同义词词林中分别查找到对应第一目标词语的第一标识编码集,第二目标词语的第二标识编码集;之后,即可由所构建的词向量集合,以及查找到的第一标识编码集、第二标识编码集,来获得目标相关度,提高了获取目标词语相关度时结果的准确度。
需要说明的是,该装置是应用了上述获取词语相关度的方法的装置,上述获取词语相关度的方法的实施例的实现方式适用于该装置,也能达到相同的技术效果。
进一步需要说明的是,此说明书中所描述的许多功能部件都被称为模块,以便更加特别地强调其实现方式的独立性。
本发明实施例中,模块可以用软件实现,以便由各种类型的处理器执行。举例来说,一个标识的可执行代码模块可以包括计算机指令的一个或多个物理或者逻辑块,举例来说,其可以被构建为对象、过程或函数。尽管如此,所标识模块的可执行代码无需物理地位于一起,而是可以包括存储在不同位里上的不同的指令,当这些指令逻辑上结合在一起时,其构成模块并且实现该模块的规定目的。
实际上,可执行代码模块可以是单条指令或者是许多条指令,并且甚至可以分布在多个不同的代码段上,分布在不同程序当中,以及跨越多个存储器设备分布。同样地,操作数据可以在模块内被识别,并且可以依照任何适当的形式实现并且被组织在任何适当类型的数据结构内。所述操作数据可以作为单个数据集被收集,或者可以分布在不同位置上(包括在不同存储设备上),并且至少部分地可以仅作为电子信号存在于系统或网络上。
在模块可以利用软件实现时,考虑到现有硬件工艺的水平,所以可以以软件实现的模块,在不考虑成本的情况下,本领域技术人员都可以搭建对应的硬件电路来实现对应的功能,所述硬件电路包括常规的超大规模集成(VLSI)电路或者门阵列以及诸如逻辑芯片、晶体管之类的现有半导体或者是其它分立的元件。模块还可以用可编程硬件设备,诸如现场可编程门阵列、可编程阵列逻辑、可编程逻辑设备等实现。
上述范例性实施例是参考该些附图来描述的,许多不同的形式和实施例是可行而不偏离本发明精神及教示,因此,本发明不应被建构成为在此所提出范例性实施例的限制。更确切地说,这些范例性实施例被提供以使得本发明会是完善又完整,且会将本发明范围传达给那些熟知此项技术的人士。在该些图式中,组件尺寸及相对尺寸也许基于清晰起见而被夸大。在此所使用的术语只是基于描述特定范例性实施例目的,并无意成为限制用。如在此所使用地,除非该内文清楚地另有所指,否则该单数形式“一”、“一个”和“该”是意欲将该些多个形式也纳入。会进一步了解到该些术语“包含”及/或“包括”在使用于本说明书时,表示所述特征、整数、步骤、操作、构件及/或组件的存在,但不排除一或更多其它特征、整数、步骤、操作、构件、组件及/或其族群的存在或增加。除非另有所示,陈述时,一值范围包含该范围的上下限及其间的任何子范围。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (8)
1.一种获取词语相关度的方法,其特征在于,包括:
构建基于同义词词林的词向量集合,其中所述同义词词林中记录了预定词语和所述预定词语的标识编码集;
根据所述同义词词林,分别获取第一目标词语的第一标识编码集和第二目标词语的第二标识编码集;
根据所述第一标识编码集、所述第二标识编码集和所述词向量集合,获得所述第一目标词语和所述第二目标词语的目标相关度;
其中,所述构建基于同义词词林的词向量集合的步骤,包括:
依次选择语料库中的词语作为待处理词语;
在所述待处理词语为所述同义词词林中的预定词语时,获取所述待处理词语的第三标识编码集;
根据所述第三标识编码集以及所述待处理词语在所述语料库的位置,确定所述待处理词语的当前语义编码,并记录在所述语料库中;
根据所述语料库中所有词语的当前语义编码,进行预定词向量模型训练,得到所述词向量集合。
2.根据权利要求1所述的获取词语相关度的方法,其特征在于,所述根据所述第三标识编码集以及所述待处理词语在所述语料库的位置,确定所述待处理词语的当前语义编码,并记录在所述语料库中的步骤,包括:
根据所述待处理词语在所述语料库的位置,获取与所述待处理词语相邻的、预设数量的相邻词语,得到相邻词语集U;其中,U={U1,U2,……,Uw},w为所述预设数量;
根据所述第三标识编码集和所述相邻词语集,获取每个相邻词语分别与所述待处理词语的每个同义词语之间的语义相关度,并将对应同一同义词语的语义相关度求和取平均值,确定最大平均值所对应的同义词语的编码为当前语义编码;
将所述当前语义编码和所述待处理词语组合后,替换所述语料库中的所述待处理词语。
3.根据权利要求2所述的获取词语相关度的方法,其特征在于,所述根据所述第三标识编码集和所述相邻词语集,获取每个相邻词语分别与所述待处理词语的每个同义词语之间的语义相关度,并将对应同一同义词语的语义相关度求和取平均值,确定最大平均值所对应的同义词语的编码为当前语义编码的步骤,包括:
4.根据权利要求1所述的获取词语相关度的方法,其特征在于,根据所述第一标识编码集、所述第二标识编码集和所述词向量集合,获得所述第一目标词语和所述第二目标词语的目标相关度的步骤,包括:
根据所述第一标识编码集,确定所述第一目标词语的第一同义词词语集;
根据所述第二标识编码集,确定所述第二目标词语的第二同义词词语集;
根据所述词向量集合,分别计算所述第一目标词语与所述第二同义词词语集中各个词语的语义相关度,所述第二目标词语与所述第一同义词词语集中各个词语的语义相关度,以及所述第一目标词语与所述第二目标词语的语义相关度;
选取得到的最大语义相关度作为所述第一目标词语和所述第二目标词语的目标相关度。
5.一种获取词语相关度的装置,其特征在于,包括:
构建模块,用于构建基于同义词词林的词向量集合,其中所述同义词词林中记录了预定词语和所述预定词语的标识编码集;
获取模块,用于根据所述同义词词林,分别获取第一目标词语的第一标识编码集和第二目标词语的第二标识编码集;
处理模块,用于根据所述第一标识编码集、所述第二标识编码集和所述词向量集合,获得所述第一目标词语和所述第二目标词语的目标相关度;
其中,所述构建模块包括:
选择子模块,用于依次选择语料库中的词语作为待处理词语;
获取子模块,用于在所述待处理词语为所述同义词词林中的预定词语时,获取所述待处理词语的第三标识编码集;
第一确定子模块,用于根据所述第三标识编码集以及所述待处理词语在所述语料库的位置,确定所述待处理词语的当前语义编码,并记录在所述语料库中;
训练子模块,用于根据所述语料库中所有词语的当前语义编码,进行预定词向量模型训练,得到所述词向量集合。
6.根据权利要求5所述的获取词语相关度的装置,其特征在于,所述第一确定子模块包括:
获取单元,用于根据所述待处理词语在所述语料库的位置,获取与所述待处理词语相邻的、预设数量的相邻词语,得到相邻词语集U;其中,U={U1,U2,……,Uw},w为所述预设数量;
处理单元,用于根据所述第三标识编码集和所述相邻词语集,获取每个相邻词语分别与所述待处理词语的每个同义词语之间的语义相关度,并将对应同一同义词语的语义相关度求和取平均值,确定最大平均值所对应的同义词语的编码为当前语义编码;
替换单元,用于将所述当前语义编码和所述待处理词语组合后,替换所述语料库中的所述待处理词语。
8.根据权利要求5所述的获取词语相关度的装置,其特征在于,所述处理模块包括:
第二确定子模块,用于根据所述第一标识编码集,确定所述第一目标词语的第一同义词词语集;
第三确定子模块,用于根据所述第二标识编码集,确定所述第二目标词语的第二同义词词语集;
处理子模块,用于根据所述词向量集合,分别计算所述第一目标词语与所述第二同义词词语集中各个词语的语义相关度,所述第二目标词语与所述第一同义词词语集中各个词语的语义相关度,以及所述第一目标词语与所述第二目标词语的语义相关度;
选取子模块,用于选取得到的最大语义相关度作为所述第一目标词语和所述第二目标词语的目标相关度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710362164.2A CN108932222B (zh) | 2017-05-22 | 2017-05-22 | 一种获取词语相关度的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710362164.2A CN108932222B (zh) | 2017-05-22 | 2017-05-22 | 一种获取词语相关度的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108932222A CN108932222A (zh) | 2018-12-04 |
CN108932222B true CN108932222B (zh) | 2021-11-19 |
Family
ID=64450097
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710362164.2A Active CN108932222B (zh) | 2017-05-22 | 2017-05-22 | 一种获取词语相关度的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108932222B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110263347A (zh) * | 2019-06-26 | 2019-09-20 | 腾讯科技(深圳)有限公司 | 一种同义词的构建方法及相关装置 |
CN110569503B (zh) * | 2019-08-28 | 2023-12-29 | 芽米科技(广州)有限公司 | 一种基于词统计与WordNet的义项表示与消歧方法 |
CN112528670B (zh) * | 2020-12-01 | 2022-08-30 | 清华大学 | 字词词义处理方法、装置、电子设备及存储介质 |
CN116432623B (zh) * | 2023-04-14 | 2023-09-22 | 嘉兴九州文化传媒有限公司 | 一种数字化分析的影视拍摄信息管理方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102955774A (zh) * | 2012-05-30 | 2013-03-06 | 华东师范大学 | 一种计算中文词语语义相似度的控制方法以及装置 |
CN104699667A (zh) * | 2015-02-15 | 2015-06-10 | 深圳市前海安测信息技术有限公司 | 改进的基于语义词典的词语相似度计算方法和装置 |
CN105868236A (zh) * | 2015-12-09 | 2016-08-17 | 乐视网信息技术(北京)股份有限公司 | 一种同义词数据挖掘方法和系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9898458B2 (en) * | 2015-05-08 | 2018-02-20 | International Business Machines Corporation | Generating distributed word embeddings using structured information |
-
2017
- 2017-05-22 CN CN201710362164.2A patent/CN108932222B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102955774A (zh) * | 2012-05-30 | 2013-03-06 | 华东师范大学 | 一种计算中文词语语义相似度的控制方法以及装置 |
CN104699667A (zh) * | 2015-02-15 | 2015-06-10 | 深圳市前海安测信息技术有限公司 | 改进的基于语义词典的词语相似度计算方法和装置 |
CN105868236A (zh) * | 2015-12-09 | 2016-08-17 | 乐视网信息技术(北京)股份有限公司 | 一种同义词数据挖掘方法和系统 |
Non-Patent Citations (2)
Title |
---|
word2vec词向量训练及中文文本相似度计算;Eastmount;《https://blog.csdn.net/Eastmount/article/details/50637476》;20160218;第1-11页 * |
基于同义词词林的词语相似度计算方法;田久乐 等;《吉林大学学报》;20111130;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN108932222A (zh) | 2018-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112214995B (zh) | 用于同义词预测的分层多任务术语嵌入学习 | |
US11436487B2 (en) | Joint embedding of corpus pairs for domain mapping | |
Gupta et al. | Beyond nouns: Exploiting prepositions and comparative adjectives for learning visual classifiers | |
Bollegala et al. | Joint word representation learning using a corpus and a semantic lexicon | |
Gasmi et al. | LSTM recurrent neural networks for cybersecurity named entity recognition | |
US10803108B2 (en) | Facilitation of domain and client-specific application program interface recommendations | |
CN108932222B (zh) | 一种获取词语相关度的方法及装置 | |
CN111291188B (zh) | 一种智能信息抽取方法及系统 | |
US10657189B2 (en) | Joint embedding of corpus pairs for domain mapping | |
CN109086265B (zh) | 一种语义训练方法、短文本中多语义词消歧方法 | |
CN112818676A (zh) | 一种医学实体关系联合抽取方法 | |
US10831772B2 (en) | Facilitation of domain and client-specific application program interface recommendations | |
CN107391565B (zh) | 一种基于主题模型的跨语言层次分类体系匹配方法 | |
US10642919B2 (en) | Joint embedding of corpus pairs for domain mapping | |
CN111582506A (zh) | 基于全局和局部标记关系的偏多标记学习方法 | |
CN115438674A (zh) | 实体数据处理、实体链接方法、装置和计算机设备 | |
CN112101029B (zh) | 一种基于bert模型的高校导师推荐管理方法 | |
Azzam et al. | A question routing technique using deep neural network for communities of question answering | |
CN113220900A (zh) | 实体消歧模型的建模方法和实体消歧预测方法 | |
Limbasiya et al. | Semantic textual similarity and factorization machine model for retrieval of question-answering | |
CN116680407A (zh) | 一种知识图谱的构建方法及装置 | |
Xu | Research on neural network machine translation model based on entity tagging improvement | |
CN117151089A (zh) | 新词发现方法、装置、设备和介质 | |
Sarkar et al. | Feature Engineering for Text Representation | |
CN111199154B (zh) | 基于容错粗糙集的多义词词表示方法、系统及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |