一种同义词的挖掘方法及装置与流程

文档序号:12465983阅读:241来源:国知局
一种同义词的挖掘方法及装置与流程
本发明涉及互联网
技术领域
,尤其涉及一种同义词的挖掘方法及装置。
背景技术
:在搜索引擎中,用户查询项和文档之间往往会因为词语不匹配而不能查到相关文档,同义词可以用来解决同义词语不匹配的问题,搜索引擎需要大量的同义词、同义短语等扩大检索召回和提升搜索质量,故同义词词典是搜索引擎的重要基础数据,同义词挖掘也是搜索引擎的关键技术之一。传统的同义词挖掘方法主要为基于共同点击的挖掘方法,是利用用户的点击行为,如果各种不同的查询项点击了同一个文档,则将这些查询项对齐后,比对出不同的部分,作为潜在的同义词对。但这种挖掘方法会挖掘出大量的同位词、反义词等噪音词语,如“诸葛亮”和“郭嘉”、“人教版”和“北师版”等均为同位词,而不是同义词。可见,现有技术中的同义词挖掘方法存在准确率低的技术问题。技术实现要素:鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的网站关键词的确定方法及装置。第一方面,本申请提供一种同义词的挖掘方法,包括:生成第一词的第一近邻词集合和第二词的第二近邻词集合,其中,所述第一词与所述第一近邻词集合中的词的相关性满足预设要求,所述第二词与所述第二近邻词集合中的词的相关性满足所述预设要求;比对所述第一近邻词集合与所述第二近邻词集合的相似度,获得比对结果;根据所述比对结果,确定所述第一词和所述第二词是否为同义词。可选的,所述生成第一词的第一近邻词集合和第二词的第二近邻词集合之前,还包括:挖掘出第一查询项和第二查询项,其中,所述第一查询项与所述第二查询项对应有相同的点击文档;比对所述第一查询项和所述第二查询项,从所述第一查询项和所述第二查询项中分别提取出所述第一词和所述第二词。可选的,所述生成第一词的第一近邻词集合和第二词的第二近邻词集合,包括:根据最邻近算法,生成第一词的第一近邻词集合和第二词的第二近邻词集合。可选的,所述比对所述第一近邻词集合与所述第二近邻词集合的相似度,获得比对结果,包括:根据拓补数据分析方法,生成所述第一近邻词集合的第一持续性图和所述第二近邻词集合的第二持续性图;计算所述第一持续性图和所述第二持续性图的相似度,以所述相似度作为所述比对结果。可选的,所述计算所述第一持续性图和所述第二持续性图的相似度,包括:计算所述第一持续性图和所述第二持续性图的环相似度和连通图相似度。可选的,所述根据所述相似度确定所述第一词和所述第二词是否为同义词,包括:当所述环相似度小于等于预设环相似度值,且所述连通图相似度小于等于预设连通图相似度时,所述第一词和所述第二词为同义词;当所述环相似度大于所述预设环相似度值,和/或所述连通图相似度大于所述预设连通图相似度时,所述第一词和所述第二词为非同义词。可选的,所述比对所述第一近邻词集合与所述第二近邻词集合的相似度,获得比对结果,包括:计算所述第一近邻词集合与所述第二近邻词集合的杰卡德相似度,以所述杰卡德相似度作为所述比对结果。第二方面,提供一种同义词的挖掘装置,包括:生成模块,用于生成第一词的第一近邻词集合和第二词的第二近邻词集合,其中,所述第一词与所述第一近邻词集合中的词的相关性满足预设要求,所述第二词与所述第二近邻词集合中的词的相关性满足所述预设要求;比对模块,用于比对所述第一近邻词集合与所述第二近邻词集合的相似度,获得比对结果;确定模块,用于根据所述比对结果,确定所述第一词和所述第二词是否为同义词。可选的,所述装置还包括:挖掘模块,用于挖掘出第一查询项和第二查询项,其中,所述第一查询项与所述第二查询项对应有相同的点击文档;提取模块,用于比对所述第一查询项和所述第二查询项,从所述第一查询项和所述第二查询项中分别提取出所述第一词和所述第二词。可选的,所述生成模块还用于:根据最邻近算法,生成第一词的第一近邻词集合和第二词的第二近邻词集合。可选的,所述比对模块还用于:根据拓补数据分析方法,生成所述第一近邻词集合的第一持续性图和所述第二近邻词集合的第二持续性图;计算所述第一持续性图和所述第二持续性图的相似度,以所述相似度作为所述比对结果。可选的,所述比对模块还用于:计算所述第一持续性图和所述第二持续性图的环相似度和连通图相似度。可选的,所述确定模块还用于:当所述环相似度小于等于预设环相似度值,且所述连通图相似度小于等于预设连通图相似度时,所述第一词和所述第二词为同义词;当所述环相似度大于所述预设环相似度值,和/或所述连通图相似度大于所述预设连通图相似度时,所述第一词和所述第二词为非同义词。可选的,所述比对模块还用于:计算所述第一近邻词集合与所述第二近邻词集合的杰卡德相似度,以所述杰卡德相似度作为所述比对结果。本申请实施例中提供的技术方案,至少具有如下技术效果或优点:本申请实施例提供的方法及装置,利用词语的全局性信息,生成词语对中每个词的近邻词集合,再从整体上比较各个词的近邻词集合的相似度,从而判断所述词语对是否为同义词对,有效的提升了同义词挖掘的准确率,进一步,该方法可以与当前的各种同义词挖掘方法结合使用,可扩展性好。上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1为本发明实施例中同义词的挖掘方法的流程图;图2为本发明实施例中“安徽”和“安徽省”两个词近邻词集合的两维平面图;图3为本发明实施例中“朝晖”和“曙光”两个词近邻词集合的两维平面图;图4为本发明实施例中拓扑特征的生存期示意图;图5为本发明实施例中“县令”的近邻词集合的拓扑特征可视化图;图6为本发明实施例中“知县”的近邻词集合的拓扑特征可视化图;图7为本发明实施例中“麻雀”的近邻词集合的拓扑特征可视化图;图8为本发明实施例中“金丝雀”的近邻词集合的拓扑特征可视化图;图9为本发明实施例中查询项对齐示意图;图10为本发明实施例中同义词的挖掘装置的结构示意图。具体实施方式本申请实施例中的技术方案,总体思路如下:需要确定两个词是否是同义词时,利用词语的全局性信息,通过挖掘数据先分别生成两个词的近邻词集合,再比对两个近邻词集合的相似度,根据比对结果来确定这两个词是否为同义词。即通过挖掘数据集的大结构,充分利用了词语的全局性信息,生成词语对中每个词的近邻词集合,再从整体上比较各个词的近邻词集合的相似度,从而判断所述词语对是否为同义词对,有效的提升了同义词挖掘的准确率,另外,该方法可以与当前的各种同义词挖掘方法结合使用,作为其他同义词挖掘方法的进一步筛选方法,可扩展性好。下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。实施例一本实施例提供一种同义词的挖掘方法,请参考图1,图1为本申请实施例中同义词挖掘方法的流程图,如图1所示,该方法包括:步骤S101,生成第一词的第一近邻词集合和第二词的第二近邻词集合,其中,所述第一词与所述第一近邻词集合中的词的相关性满足预设要求,所述第二词与所述第二近邻词集合中的词的相关性满足所述预设要求;步骤S102,比对所述第一近邻词集合与所述第二近邻词集合的相似度,获得比对结果;步骤S103,根据所述比对结果,确定所述第一词和所述第二词是否为同义词。需要说明的是,本申请中的所述第一词和所述第二词均可以是中文词、英文词、阿拉伯数字、中文数字、罗马数字、单个字符的词或多个字符的词,在此均不作限制。进一步,所述第一词和所述第二词的字符数和/或语言类型可以不相同,例如:所述第一词是中文词,所述第二词是英文词;或者,所述第一词是单字符,所述第二词是双字符;或者,所述第一词是阿拉伯数字,所述第二词是罗马数字,在此不再一一列举。下面,结合图1详细介绍本申请实施例提供的方法的具体实现步骤:在执行步骤S101之前,需要先确定所述第一词和所述第二词,在本申请实施例中,确定所述第一词和所述第二词的方法很多,下面列举三种为例:第一种,人工导入的初始词,即先接收工作人员手工导入的大量词语,再对所述大量词语进行任意组词对进行分析,组成的每一词对中即包括所述第一词和所述第二词;第二种,基于规则的挖掘方法挖掘出的潜在同义词对,即利用百科或网页内容的语言描述特征等设计挖掘规则,通过内容里面的括弧,百科里面的“别称、又称、别名、又叫、又名”等语言特征词,来挖掘出的具有潜在同义关系的所述第一词和所述第二词;第三种,基于共同点击的挖掘方法挖掘出的潜在同义词对,即利用用户的点击行为,获取点击了同一个文档的不同的查询项,将这些查询项对齐后,不同的部分有可能是潜在的同义词对。具体来讲,即所述生成第一词的第一近邻词集合和第二词的第二近邻词集合之前,还包括:挖掘出第一查询项和第二查询项,其中,所述第一查询项与所述第二查询项对应有相同的点击文档,再比对所述第一查询项和所述第二查询项,从所述第一查询项和所述第二查询项中分别提取出所述第一词和所述第二词。当然,在具体实施过程中,确定所述第一词和所述第二词的方法很多,不限于上述三种,根据计算时间要求、精确度要求和场景要求的不同,可以选择不同的确定方法,具体可以采用现有的任意同义词挖掘方法或无规则词库来确定所述第一词和所述第二词,在此不作限制。在确定了所述第一词和所述第二词之后,执行步骤S101,生成第一词的第一近邻词集合和第二词的第二近邻词集合,其中,所述第一词与所述第一近邻词集合中的词的相关性满足预设要求,所述第二词与所述第二近邻词集合中的词的相关性满足所述预设要求。需要说明的是,某个词的近邻词集合是通过收集该词的全局性信息,来获取的与该词的相关度或邻近度满足预设要求的词语的集合。在具体实施过程中,所述相关性满足预设要求,可以是近邻词集合中的词与该词出现在同一文档的频率高于预设频率,还可以是近邻词集合中的词是该词的上位词或下位词,还可以是近邻词集合中的词是该词的翻译词,还可以是近邻词集合中的词与该词为同一类词,还可以是近邻词集合中的词为该词的描述词,在此不再一一列举。例如:“重庆”的近邻词可以有“直辖市”、“小面”、“成都”、“武隆”、“热”“雾都”等等。在具体实施过程中,生成近邻词集合的方法有多种,下面列举两种为例:第一种,K最近邻(k-NearestNeighbor,kNN)分类算法。在本申请实施例中,所述生成第一词的第一近邻词集合和第二词的第二近邻词集合,包括:根据最邻近算法,生成第一词的第一近邻词集合和第二词的第二近邻词集合。第二种,判别类域法。即先判别待生成近邻词集合的目标词的大类别领域,再进一步判断所述目标词的更小类别领域,再获取所述更小类别领域的其他词语作为所述目标词的近邻词,收入目标词的近邻词集合。当然,在具体实施过程中,根据全局信息量及需求的不同,可以选择不同的近邻词集合生成方法,在此不作限制。再下来,执行步骤S102和步骤S103,比对所述第一近邻词集合与所述第二近邻词集合的相似度,获得比对结果;并根据所述比对结果,确定所述第一词和所述第二词是否为同义词。在本申请实施例中,比对所述第一近邻词集合与所述第二近邻词集合的相似度,确定所述第一词和所述第二词是否为同义词的方法,可以有多种,下面列举三种为例:第一种,根据拓补数据分析方法,比对持续性图。即所述比对所述第一近邻词集合与所述第二近邻词集合的相似度,获得比对结果,包括:根据拓补数据分析方法,生成所述第一近邻词集合的第一持续性图和所述第二近邻词集合的第二持续性图;计算所述第一持续性图和所述第二持续性图的相似度,以所述相似度作为所述比对结果。具体来讲,考虑到近邻词集合为词语的点集,故比较两个词生成的近邻词集合(点集),可以将词语映射到多维的高维空间中,例如,300维或400维空间,每个词语是高维空间中的一个点,采用拓扑数据分析的方法,确定高维空间中的数据集的大结构,放大辨别特征的区分度,分别计算两个近邻词集合的持续性图,并计算两个持续性图的相似度。如“安徽”和“安徽省”,两个词近邻词集合的一些列连续拓扑特征应该是相似的,很接近的,请参考图2,图2为“安徽”和“安徽省”持续性图的两维平面图,横坐标和纵坐标是词向量的数值,比如:“皖北”的两维向量(62.3,46.8),两维是从300维空间采用特征降维(PrincipalComponentAnalysis,PCA)方法得到的。如图2所示,“安徽”和“安徽省”两个词近邻词集合的重合度高,即相似度高,则可以确定“安徽”和“安徽省”两个词是同义词。再如“朝晖”和“曙光”,请参考图3,图3为“朝晖”和“曙光”持续性图的两维平面图。如图3所示,“朝晖”和“曙光”两个词近邻词集合的重合度很低,则可以确定“朝晖”和“曙光”为非同义词对。需要说明的是,图2和图3的两维平面图仅适用于两个持续性图的相似度的初略比较,为了获取更精确的相似度比对结果,需要计算环相似度和连通图相似度来进行比对,即所述计算所述第一持续性图和所述第二持续性图的相似度,包括:计算所述第一持续性图和所述第二持续性图的环相似度和连通图相似度。具体来讲,需要先将近邻词集合中的词语映射到高维空间中,每个词语就是其中的一个点,再基于拓扑数据分析的方法计算点集的持续性图,即某一拓扑特征的生存期。生存期是指当半径不断增长时,拓扑特征的出现和消亡的时刻列表。如图4所示,围绕一个点的圆,当半径从小到大增长时,圆周向外扩张,如果与其它点的圆有交集,这两个点就生成一条连接边,若干个点构成联通图或环,随着半径的增长,连通图或环发生合并构成更大的结构,每一次生成或消亡对应一个时刻,也就是拓扑特征的生存期。在具体实施过程中,可以采用C++libraryDionysus工具,计算点集的连通图和环的持续性图,即计算连通图和环的拓扑特征的生存期。具体使用ripsDiag函数,经研究发现将ripsDiag函数的参数ripsfiltration设置为3或21时,连通体(dimension=0)和环(dimension=1)的相似度的区分度最好。例如,基于拓扑数据分析的方法计算“安徽”和“安徽省”的近邻词集合点集的持续性图,设置参数ripsfiltration设置为3时,得出其一部分拓扑特征的生存期如表1和2所示,其中,每列数据对应一次生存和消亡,loops列表示生存和消亡周期的次数,birth列表示生存时间点,death列表示消亡时刻点:No.(times)loopsbirthdeath[501,]118.51605221.000000[502,]118.69264821.000000[503,]119.52449521.000000[504]119.81326721.000000[505,]120.06221521.000000表1:“安徽”近邻词集合的拓扑特征的生存期No.(times)loopsbirthdeath[501,]118.69264821.000000[502,]120.31047521.000000[503,]120.37650421.000000[504]120.53692421.000000[505,]116.15551519.688889表2:“安徽省”近邻词集合的拓扑特征的生存期在分别确定所述第一近邻词集合和所述第二近邻词集合拓扑特征的生存期之后,即在确定环和连通体这两个特征的出现时刻,消亡时刻之后,再对所述第一近邻词集合和所述第二近邻词集合的拓补特征进行可视化,生成拓补特征图,再比对所述第一近邻词集合和所述第二近邻词集合的拓补特征图,以计算出所述第一近邻词集合和所述第二近邻词集合的环相似度和连通图相似度。例如,基于拓扑数据分析的方法计算“县令”和“知县”的近邻词集合点集的环和连通性图拓扑特征的生存期,再进行可视化,分别生成图5和图6的拓补特征图,其中,图5的三张图为“县令”近邻词集合的拓补特征图,描述其环和连通体两个特征的出现时刻和消亡时刻,其中,最右侧图的纵坐标为生成的拓补特征序列。图6的三张图为“知县”近邻词集合的拓补特征图,描述其环和连通体两个特征的出现时刻和消亡时刻,其中,最右侧图的纵坐标为生成的拓补特征序列。由图5和图6可见,“县令”近邻词集合的三张图和“知县”近邻词集合的三张图非常接近,通过现有比对算法,可比对计算出,“县令”和“知县”的近邻词集合的环相似度是0.6703212,连通体图相似度是3.40197。再例如,基于拓扑数据分析的方法计算“麻雀”和“金丝雀”的近邻词集合点集的环和连通性图拓扑特征的生存期,再进行可视化,分别生成图7和图8的拓补特征图,其中,图7的三张图为“麻雀”近邻词集合的拓补特征图,描述其环和连通体两个特征的出现时刻和消亡时刻,其中,最右侧图的纵坐标为生成的拓补特征序列。图8的三张图为“金丝雀”近邻词集合的拓补特征图,描述其环和连通体两个特征的出现时刻和消亡时刻,其中,最右侧图的纵坐标为生成的拓补特征序列。由图7和图8可见,“麻雀”近邻词集合的三张图和“金丝雀”近邻词集合的三张图差异很大,通过现有比对算法,可比对计算出,“麻雀”和“金丝雀”的近邻词集合的环相似度是0.9837349,连通体图相似度是7.778811。在确定了环相似度和连通图相似度后,需要根据环相似度和连通图相似度确定所述第一词和所述第二词是否为同义词,在本申请实施例中,所述根据所述相似度确定所述第一词和所述第二词是否为同义词,包括:当所述环相似度小于等于预设环相似度值,且所述连通图相似度小于等于预设连通图相似度时,所述第一词和所述第二词为同义词;当所述环相似度大于所述预设环相似度值,和/或所述连通图相似度大于所述预设连通图相似度时,所述第一词和所述第二词为非同义词。具体来讲,经发明人研究发现,两个持续性图的环相似度和连通图相似度值近似服从高斯分布,同义词对的相似度较小,方差较小;非同义词对,即噪音词对的相似度数值较大,方差也较大。进一步,为了获得更准确的同义词对确定结果,本申请设置:环相似度为0.5~1.0,且连通图相似度为2.5~3.5时,所述第一词和所述第二词为同义词;环相似度均值大于1.0,且连通图相似度大于3.5时,所述第一词和所述第二词为非同义词,即噪音词对。例如:如表3和表4所示,其中,表3为筛选出的同义词对,表4为筛选出的噪音词对。词对环相似度连通图相似度安徽~安徽省0.69126773.194666县令~知县0.67032123.40197友情~友谊0.53156222.716811表3:同义词对表4:噪音词对可见,采用根据拓补数据分析方法,比对持续性图确定同义词对和筛除噪音词对的准确率很高。第二种,比对杰卡德(Jaccard)相似度。即所述比对所述第一近邻词集合与所述第二近邻词集合的相似度,获得比对结果,包括:计算所述第一近邻词集合与所述第二近邻词集合的Jaccard相似度,以所述杰卡德相似度作为所述比对结果。需要说明的是,采用Jaccard相似度比对所述第一近邻词集合和所述第二近邻词集合来确定同义词dngamer也是优于现有同义词确定方法的,但可扩展性和准确度不如前述第一种,根据拓补数据分析方法,比对持续性图确定同义词。第三种,比对相同词数量。即比对所述第一近邻词集合和所述第二近邻词集合中有多少数量的相同词语,根据相同词语的数量来确定所述第一词和所述第二词是否为同义词。例如,先设置近邻词集合的词语数量为500,则相同词语数量大于350时,确认为同义词对,反之为噪音词对。各取500个近邻词构建“安徽”和“安徽省”的近邻词集合,经比对,两个近邻词集合中有400个词相同,确定“安徽”和“安徽省”为同义词对。各取500个近邻词构建“麻雀”和“金丝雀”的近邻词集合,经比对,两个近邻词集合中有150个词相同,确定“麻雀”和“金丝雀”为噪音词对。当然,在具体实施过程中,比对近邻词集合来确定是否为同义词的方法很多,不限于以上三种,根据准确度、计算时间、数据处理能力或全局信息量等要求的不同,可以选择采用不同的近邻词集合比对方法来确定同义词,在此不作限制。在介绍了本实施例提供的方法的详细流程后,为了便于进一步理解本实施例提供的方法的具体实施过程,下面,以一具体实例来说明本申请提供方法的完整实施流程:首先,基于共同点击的挖掘方法,从至当前一年内的搜索引擎的查询会话日志中挖掘出查询项数据,获取点击了同一个文档的查询项对。其中,将所述查询项数据输出到query.txt文本,query.txt文本中每行记录一个查询项和查询项的搜索次数;将所述查询项对输出到query_url_clicked.txt文本,query_url_clicked.txt文本中每行记录一个查询项对和查询项对的点击次数,具体记录格式如:query\turl\tclick_count;然后,对query.txt文本进行分词和词嵌入训练,即将中文分词后的语料直接用于词嵌入训练,得到两份300维的词向量文件term_w2v_300.dict,包含约1000万个词语的词向量,词嵌入训练的参数是“-cbow1-size300-window8-negative25-hs0-sample1e-4-threads24-binary0-iter15”。同样,对query_url_clicked.txt文本也按该方法进行分词和词嵌入训练。接下来,通过query_url_clicked.txt文本,分别统计qwei和dwei两个指标。其中,qwei是指查询项对应的点击网页的权重分布,dwei是指网页在指定查询项下的权重分布,具体来讲,共同点击相同网页的查询项形成一个查询项集合,qwei表达一个查询项在查询项集合中的权重。dwei是指网页的权重,即网页在指定查询项下的权重分布。在点击同一个网页的查询项集合内,两两组合查询项,形成若干个查询项对,根据qwei和dwei计算查询项对的语义相关度qqwei,作为潜在同义词对的相似度,并记录所述相似度,生成query_query_pair.txt文件。其中,语义相关度qqwei的计算方法为:先计算出第一查询项的qwei和dwei,其中,其中,click_count为查询项给网页带来的点击次数,search_count为查询项给网页带来的搜索展示次数,q是表征查询项,d是表征网页,co-click_url是表征有共同点击的查询项集合,url_clicked是表征相同查询项点击的网页集合。再采用同样方法计算出第二查询项的qwei和dwei,通过公式计算出第一查询项和第二查询项的相似度,其中,i上表表征第一查询项的参数,j上标表征第二查询项的参数。将相似度稿的查询项作为潜在查询项对。再下来,将潜在查询项对对齐,提取出潜在同义词对,如潜在查询项对,“海米怎样吃最好吃”和“请问虾仁怎样做最好吃”,对齐后如图9所示,得到两组潜在同义词对,分别是“海米、虾仁”和“吃、做”,其中后者属于上下文相关的同义词对,在“怎样、最好吃”等上下文中才有可能是同义词对。第二个查询项中的“请问”找不到对齐的词,作为上下文信息。然后,输出潜在同义词对和潜在的上下文信息,生成文件latent_synom_align.txt,行格式为“synom_word_1\tsynom_word_2\tcontext_word\talign_wei”,其中,synom_word_1和tsynom_word_2为潜在同义词对,context_word为上下文相关词,align_wei为上下文相关词与所述潜在同义词对的关联权重,例如图9对齐得到的潜在同义词对输出为“海米虾仁请问0.0018”、“海米虾仁怎样0.0071”、“海米虾仁最好吃0.0194”,align_wei的计算方法为query_query_pairs是表征相同查询项对集合。在确定出潜在同义词对“海米”和“虾仁”后,执行步骤S101,使用KNN算法生成“海米”的近邻词集合和“虾仁”的近邻词集合,近邻词集合对应着拓扑学中的点集,可以选择前500个近邻词构造双方的点集。然后,执行步骤S102,将“海米”的近邻词集合和“虾仁”的近邻词集合映射到300维的高维空间中,每个词语就是其中的一个点,基于拓扑数据分析的方法计算两个点集的持续性图,获得其环和连通体图两个拓补特征的出现时刻和消亡时刻数据;再将其环和连通体图两个拓补特征可视化后,计算出“海米”的近邻词集合和“虾仁”的近邻词集合的环相似度为0.6258321,连通体图相似度为3.27691;最后执行步骤S103,分析0.6258321小于1,且3.27691小于3.5,故确定“海米”和“虾仁”为同义词。具体来讲,本申请提供的方法综合考虑词对的全局性信息,对有潜在同义关系的两个词,分别构造各自的近邻词集合,通过比对近邻词集合的相似度来确定两个词是否为同义词,相较传统仅比较两个词本身的局部特征,更具准确性。基于同一发明构思,本发明实施例还提供了实施例一中方法对应的装置,见实施例二。实施例二本实施例提供一种同义词的挖掘装置,如图10所示,包括:生成模块1001,用于生成第一词的第一近邻词集合和第二词的第二近邻词集合,其中,所述第一词与所述第一近邻词集合中的词的相关性满足预设要求,所述第二词与所述第二近邻词集合中的词的相关性满足所述预设要求;比对模块1002,用于比对所述第一近邻词集合与所述第二近邻词集合的相似度,获得比对结果;确定模块1003,用于根据所述比对结果,确定所述第一词和所述第二词是否为同义词。在本申请实施例中,所述装置还包括:挖掘模块,用于挖掘出第一查询项和第二查询项,其中,所述第一查询项与所述第二查询项对应有相同的点击文档;提取模块,用于比对所述第一查询项和所述第二查询项,从所述第一查询项和所述第二查询项中分别提取出所述第一词和所述第二词。在本申请实施例中,所述生成模块1001还用于:根据最邻近算法,生成第一词的第一近邻词集合和第二词的第二近邻词集合。在本申请实施例中,所述比对模块1002还用于:根据拓补数据分析方法,生成所述第一近邻词集合的第一持续性图和所述第二近邻词集合的第二持续性图;计算所述第一持续性图和所述第二持续性图的相似度,以所述相似度作为所述比对结果。在本申请实施例中,所述比对模块1002还用于:计算所述第一持续性图和所述第二持续性图的环相似度和连通图相似度。在本申请实施例中,所述确定模块1003还用于:当所述环相似度小于等于预设环相似度值,且所述连通图相似度小于等于预设连通图相似度时,所述第一词和所述第二词为同义词;当所述环相似度大于所述预设环相似度值,和/或所述连通图相似度大于所述预设连通图相似度时,所述第一词和所述第二词为非同义词。在本申请实施例中,所述比对模块1002还用于:计算所述第一近邻词集合与所述第二近邻词集合的杰卡德相似度,以所述杰卡德相似度作为所述比对结果。由于本发明实施例二所介绍的装置,为实施本发明实施例一的同义词的挖掘方法所采用的装置,故而基于本发明实施例一所介绍的方法,本领域所属人员能够了解该装置的具体结构及变形,故而在此不再赘述。凡是本发明实施例一的方法所采用的装置都属于本发明所欲保护的范围。本申请实施例中提供的技术方案,至少具有如下技术效果或优点:本申请实施例提供的方法及装置,利用词语的全局性信息,生成词语对中每个词的近邻词集合,再从整体上比较各个词的近邻词集合的相似度,从而判断所述词语对是否为同义词对,有效的提升了同义词挖掘的准确率,进一步,该方法可以与当前的各种同义词挖掘方法结合使用,可扩展性好。在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的网关、代理服务器、系统中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1