CN112395867B - 同义词挖掘方法、装置、存储介质及计算机设备 - Google Patents
同义词挖掘方法、装置、存储介质及计算机设备 Download PDFInfo
- Publication number
- CN112395867B CN112395867B CN202011278772.3A CN202011278772A CN112395867B CN 112395867 B CN112395867 B CN 112395867B CN 202011278772 A CN202011278772 A CN 202011278772A CN 112395867 B CN112395867 B CN 112395867B
- Authority
- CN
- China
- Prior art keywords
- sentence
- synonym
- pair
- sentences
- pairs
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/247—Thesauruses; Synonyms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Machine Translation (AREA)
Abstract
本发明公开了一种同义词挖掘方法、装置、存储介质及计算机设备,涉及大数据分析领域。其中方法包括:获取目标语句,并通过全文搜索引擎对所述目标语句进行搜索,得到目标语句的第一相近语句,其中,所述目标语句和所述第一相近语句包含至少一个相同词语;根据所述目标语句和所述第一相近语句,创建相近句子对;对所述相近句子对进行相似度评分,并根据相似度评分得到同义句对,以及对所述同义句对进行词语对齐提取,得到同义词对;将所述同义词对和所述目标语句输入所述全文搜索引擎中进行迭代搜索和迭代提取,得到多个同义句对和多个同义词对。上述方法可以显著提高同义词和同义句的挖掘数量和挖掘质量,降低了同义词挖掘的局限性和技术实现难度。
Description
技术领域
本发明涉及大数据分析领域,尤其是涉及一种同义词挖掘方法、装置、存储介质及计算机设备。
背景技术
同义词挖掘是自然语言处理中一个较为基础的问题,同义词可以利用在机器人的对话生成、机器翻译、句子改写等各个领域中。现有的同义词挖掘方法主要有三种,分别为结构化数据中抽取方法、点击日志挖掘方法和word2vec相似度匹配方法。
其中,结构化抽取的方法是指利用百度百科,金山词霸等字典寻找词语的“别称”和“又称”等特征词来抽取同义词,该方法抽取同义词较为局限,抽取到同义词均是一些通用领域的同义词;而点击日志挖掘方法是指利用用户查询query和用户点击的title频次,频次高的query-title对很可能就包含有同义词,该方法的前提条件是有大批量的点击数据,符合该条件的公司只有像百度、谷歌等大型搜索引擎公司才能拥有如此大批量的点击数据,对于专业领域的公司来说,并没有大批量用户点击数据的积累,因此技术实施难度较大;Word2vec相似度匹配方法是指利用语义相近的词的上下文也相似的原理,训练每个词的词向量表达,再利用该词向量寻找与其距离较近的词,但是该方法获取的同义词准确度较低。此外,利用以上方法挖掘同义词往往是一次性的工作,除非挖掘算法有改进,否则无法通过反复挖掘找出更多的同义词。
基于此,目前亟需一种准确度高且可以自动提升同义词挖掘数量和挖掘质量的同义词挖掘方法。
发明内容
有鉴于此,本申请提供了一种同义词挖掘方法、装置、存储介质及计算机设备,主要目的在于解决同义词挖掘的准确度低且无法自动提升同义词挖掘数量和质量技术问题。
根据本发明的第一个方面,提供了一种同义词挖掘方法,该方法包括:
获取目标语句,并通过全文搜索引擎对所述目标语句进行搜索,得到目标语句的第一相近语句,其中,所述目标语句和所述第一相近语句包含至少一个相同词语;
根据目标语句和第一相近语句,创建相近句子对;
对相近句子对进行相似度评分,并根据相似度评分得到同义句对,以及对同义句对进行词语对齐提取,得到同义词对;
将同义词对和目标语句输入全文搜索引擎中进行迭代搜索和迭代提取,得到多个同义句对和多个同义词对。
根据本发明的第二个方面,提供了一种同义词挖掘装置,该装置包括:
目标语句获取模块,用于获取目标语句,并通过全文搜索引擎对目标语句进行搜索,得到目标语句的第一相近语句,其中,目标语句和第一相近语句包含至少一个相同词语;
句子对创建模块,用于根据目标语句和第一相近语句,创建相近句子对;
同义词抽取模块,用于对相近句子对进行相似度评分,并根据相似度评分得到同义句对,以及对同义句对进行词语对齐提取,得到同义词对;
同义词迭代抽取模块,用于将同义词对和目标语句输入全文搜索引擎中进行迭代搜索和迭代提取,得到多个同义句对和多个同义词对。
根据本发明的第三个方面,提供了一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述同义词挖掘方法。
根据本发明的第四个方面,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述同义词挖掘方法。
本发明提供的一种同义词挖掘方法、装置、存储介质及计算机设备,首先利用全文搜索引擎对目标语句进行搜索,得到包含至少一个相同词语的目标语句的第一相近语句,然后根据目标语句和第一相近语句创建相近句子对,继而对相近句子对进行相似度评分得到同义句对,以及对同义句对进行词语对齐提取得到同义词对,最后将挖掘出的同义词对和目标语句重新输入到全文搜索引擎中进行迭代搜索和迭代提取,最终得到多个同义句对和多个同义词对。上述方法通过全文搜索引擎、句子对相似度评分和词语对齐提取等多种技术手段挖掘同义词,可以使挖掘出的同义词和同义句更符合自身系统的专业要求,提高了同义词挖掘的准确度,同时,上述自循环的同义词挖掘方法可以显著提高同义词和同义句的挖掘数量和挖掘质量,摆脱了以往从同义词林等结构化数据中挖掘的同义词的局限性,也降低了需依赖大量点击数据的技术实现难度。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1示出了本发明实施例提供的一种同义词挖掘方法的流程示意图;
图2示出了本发明实施例提供的另一种同义词挖掘方法的流程示意图;
图3示出了本发明实施例提供的一种同义词挖掘装置的结构示意图;
图4示出了本发明实施例提供的另一种同义词挖掘装置的结构示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
在一个实施例中,如图1所示,提供了一种同义词挖掘方法,以该方法应用于客户端或服务器等计算机设备为例进行说明,包括以下步骤:
101、获取目标语句,并通过全文搜索引擎对目标语句进行搜索,得到至少一个相近语句。
其中,全文搜索引擎指的是从互联网上提取的各个网站的信息建立而成的数据库中,检索出与用户查询条件匹配的相关记录,然后按一定的排列顺序将结果返回给用户的搜索引擎。在本实施例中,全文搜索引擎对应的数据库是语料数据库,语料数据库中存储有系统在一些网站上获取到的语料数据,这些语料数据可以是全文搜索引擎在完成对语料数据搜集之后,经过一定的排名和分词处理之后存储在语料数据库中的,可以理解的是,语料数据库中的语料可以尽可能的丰富,从而提升同义词挖掘的广度,也可以是仅与某个具体的领域相关,从而提升同义词挖掘的深度,当用户在全文搜索引擎的搜索框中输入关键词进行查询时,全文搜索引擎会从庞大的语料数据库中查找到符合该关键词的所有语料数据或语料数据的索引,并按一定的排名规则呈现给用户。
具体的,计算机设备可以通过语句输入、语句导入以及随机获取等方式获取到目标语句,然后通过全文搜索引擎对该目标语句进行搜索,从而得到目标语句的至少一个第一相近语句,其中,第一相近语句和目标语句包含有至少一个相同词语。在本实施例中,可以使用开源的全文搜索引擎对目标语句进行搜索,也可以自建一个全文搜索引擎对目标语句进行搜索,如果使用自建的全文搜索引擎,则可以设定返回的搜索结果中具有相同词语个数多的相近语句排名在前,具有相同词语个数少的相近语句排名在后,且相同词语个数没有达到阈值的语句不在返回结果之列。
102、根据目标语句和第一相近语句,创建相近句子对。
具体的,计算机设备可以根据目标语句和第一相近语句之间一一对应的关系,创建若干个相近句子对,其中,每一个相近句子对均包含目标语句和第一相近语句共两个句子,可以理解的是,本实施例创建的相近句子对的数量与第一相近语句的数量相同。
103、对相近句子对进行相似度评分,并根据相似度评分得到同义句对,以及对同义句对进行词语对齐提取,得到同义词对。
其中,同义句对指的是一组具有相同或几乎相同含义、为表达同一目的的两个句子,同义词对指的是一组具有相同或几乎相同含义、表达同一概念的两个词语或词组,可以理解的是,同义关系作为一种典型的语义关系,有利于更好地理解丰富多变的语言文字、挖掘出文本中的重要信息。
具体的,计算机设备可以利用文本相似度算法计算相近句子对中两个句子的相似度值,如Jaacard相似度算法等,也可以利用训练好的同义句匹配模型计算相近句子对中两个句子的相似度值,其中,相似度值超过预定范围的相近句子对即可判定为是同义句对。进一步的,在得到同义句对之后,可以对同义句对中的两个句子进行词语对齐提取,如利用卡左右边界算法或机器翻译模型对同义句对中的词语进行对齐提取,从而得到同义句中各词语的对齐结果,进而利用词语对齐结果提取出同义句对中的同义词对。在本步骤中,通过利用机器学习算法,可以显著提升同义句对的认定准确度以及同义词的提取准确度。
104、将同义词对和目标语句输入全文搜索引擎中进行迭代搜索和迭代提取,得到多个同义句对和多个同义词对。
具体的,计算机设备在得到同义句对和同义词对之后,可以对同义句对和同义词对进行去冗余处理,以得到目标语句的多个同义句和多个同义词,然后,计算机设备可以再次利用全文搜索引擎对目标语句和目标语句的同义句和同义词进行检索,在检索时,可以将挖掘出的目标语句的同义句和/或目标语句的同义词以及目标语句本身一同输入到文本搜索引擎的搜索框中进行搜索,以搜索到更多的目标语句的相近语句,在得到新的相近语句时,首先需要判断新的相近语句是否与第一相近语句相重复,若重复,则不进行处理,若不重复,则继续执行步骤102和103的操作,以得到更多的目标语句的同义句和同义词,在得到更多的同义句和同义词之后,可以继续利用更多的同义句和同义词进行再次搜索,直至搜索出的新的相近语句与之前搜索的结果均重复,则可以停止迭代搜索和迭代提取,通过这种方式,可以挖掘出目标语句的多个同义句和同义词,更进一步的,挖掘出的同义句和同义词可以存储在语料数据库中,从而利用这些同义句和同义词提升全文搜索引擎的语料分析功能。
本实施例提供的同义词挖掘方法,首先利用全文搜索引擎对目标语句进行搜索,得到包含至少一个相同词语的目标语句的第一相近语句,然后根据目标语句和第一相近语句创建相近句子对,继而对相近句子对进行相似度评分得到同义句对,以及对同义句对进行词语对齐提取得到同义词对,最后将挖掘出的同义词对和目标语句重新输入到全文搜索引擎中进行迭代搜索和迭代提取,最终得到多个同义句对和多个同义词对。上述方法通过全文搜索引擎、句子对相似度评分和词语对齐提取等多种技术手段挖掘同义词,可以使挖掘出的同义词和同义句更符合自身系统的专业要求,提高了同义词挖掘的准确度,同时,上述自循环的同义词挖掘方法可以显著提高同义词和同义句的挖掘数量和挖掘质量,摆脱了以往从同义词林等结构化数据中挖掘的同义词的局限性,也降低了需依赖大量点击数据的技术实现难度。
进一步的,作为上述实施例具体实施方式的细化和扩展,为了完整说明本实施例的实施过程,提供了同义词挖掘方法,如图2所示,该方法包括以下步骤:
201、采集语料数据,并将语料数据导入到全文搜索引擎对应的语料数据库中。
具体的,计算机可以通过多种途径采集语料数据,例如,计算机设备可以收集自身系统网站中用户的问答语句作为语料数据,也可以将其他相关网站上搜集到的语句作为语料数据等等,然后,计算机设备可以分批次的将采集到的语料数据导入到全文搜索引擎对应的语料数据库中,并经过一定的排名和分词处理之后将每一条语料数据存储在语料数据库中的相应位置上。可以理解的是,语料数据库中的语料可以尽可能的丰富,从而提升同义词挖掘的广度,也可以是仅与某个具体的领域相关,从而提升同义词挖掘的深度,当用户在全文搜索引擎的搜索框中输入关键词进行查询时,全文搜索引擎会从庞大的语料数据库中查找到符合该关键词的所有语料数据或语料数据的索引,并按一定的排名规则呈现给用户。
举例来说,下面是几条语料数据的示例:①张三的老婆是谁?②李四的妻子是谁?③张三的爱人是谁?④张三的妻子是谁?⑤王五的老婆是谁?⑥沈六老婆是那位?
202、获取目标语句,并通过全文搜索引擎对目标语句进行搜索,得到至少一个相近语句。
具体的,计算机设备可以通过语句输入、语句导入以及从语料数据库中随机获取等方式获取到目标语句,然后通过全文搜索引擎对该目标语句进行搜索,从而得到目标语句的至少一个第一相近语句,其中,第一相近语句和目标语句包含有至少一个相同词语。在本实施例中,可以使用开源的全文搜索引擎对目标语句进行搜索,也可以自建一个全文搜索引擎对目标语句进行搜索,如果使用自建的全文搜索引擎,则可以设定返回的搜索结果中具有相同词语个数多的相近语句排名在前,具有相同词语个数少的相近语句排名在后,且相同词语个数没有达到阈值的语句不在返回结果之列。
举例来说,对于步骤201中的6条示例语句,假设目标语句为“①张三的老婆是谁?”,通过该语句的分词结果“张三”“谁”“老婆”等词语,可以从全文搜索引擎中检索出的相近语句为“③张三的爱人是谁?”、“④张三的妻子是谁?”和“⑤王五的老婆是谁?”。上述3个语句中,至少存在至少一个词语与目标语句是相同的。
203、根据目标语句和第一相近语句,创建相近句子对。
具体的,计算机设备可以根据目标语句和第一相近语句之间一一对应的关系,创建若干个相近句子对,其中,每一个相近句子对均包含目标语句和第一相近语句共两个句子,可以理解的是,本实施例创建的相近句子对的数量与第一相近语句的数量相同。
举例来说,在步骤202中,利用全文搜索引擎搜索出目标语句①的相近语句为③、④和⑤,则根据目标语句和第一相近语句创建相近句子对,可以得到相近句子对为(①,③)、(①,④)和(①,⑤)。
204、对相近句子对进行相似度评分,并根据相似度评分得到同义句对,以及对同义句对进行词语对齐提取,得到同义词对。
具体的,计算机设备可以利用文本相似度算法计算相近句子对中两个句子的相似度值,如Jaacard相似度算法等,也可以利用训练好的同义句匹配模型计算相近句子对中两个句子的相似度值,其中,相似度值超过预定范围的相近句子对即可判定为是同义句对。进一步的,在得到同义句对之后,可以对同义句对中的两个句子进行词语对齐提取,如利用卡左右边界算法或机器翻译模型对同义句对中的词语进行对齐提取,从而得到同义句中各词语的对齐结果,进而利用词语对齐结果提取出同义句对中的同义词对。
在一个可选的实施方式中,对相近句子对进行相似度评分,并根据相似度评分得到同义句对的具体方法可以包括以下步骤:首先通过同义句匹配模型对每一个相近句子对进行相似度评分,以得到每个相近句子对的相似度值,然后依次判断每个相近句子对的相似度值是否大于第一相似度阈值,若相近句子对的相似度值大于第一相似度阈值,则判定相近句子对为同义句对。本实施方式通过同义句匹配模型进行对同义句进行相似度判断,可以显著提升同义句对的认定准确度。
进一步的,上述实施方式中同义句匹配模型的训练方法可以包括如下方法:首先从全文搜索引擎对应的语料数据库中抽取出预设比例的样本语句,并将样本语句依次输入到全文搜索引擎中,得到样本语句的相近语句,然后根据样本语句和样本语句的相近语句,创建样本句子对,继而获取样本句子对的同义句标注结果(如果样本句子对中的两个句子是同义句,则标注结果为正类,如果样本句子对中的两个句子不是同义句,则标注结果为负类),并将样本句子对和样本句子对的标注结果输入到文本匹配模型中进行训练,最后得到同义句匹配模型,其中,文本匹配模型可以是ESIM、DSSM、ABCNN等各类型文本匹配模型,本实施例在此不做限定。在本实施方式中,训练好的同义句匹配模型可以对句子对中的两个句子进行相似度打分,其分值区间可以在0-1之间,分数越大则相似度越高。
举例来说,在步骤203中,根据目标语句和第一相近语句创建的相近句子对为(①,③)、(①,④)和(①,⑤),分别将三个句子对输入到训练好的文本匹配模型,可以得到三个句子对的相似度评分,将三个句子对的相似度评分与预设的第一相似度阈值进行比较,则可以得到相似句子对为(①,③)和(①,④)。
在一个可选的实施方式中,对同义句对进行词语对齐提取,得到同义词对的具体方法可以为:利用卡左右边界算法对同义句对中的词语进行对齐提取,其具体方法包括:首先对同义句对中的两个语句进行分词处理,并提取出两个语句的左边界词语的词向量和右边界词语的词向量,然后分别计算出两个语句的左边界词语的词向量的相似度值和右边界词语的词向量的相似度值,继而判断两个语句的左边界词语的词向量的相似度值和右边界词语的词向量的相似度值是否均大于第二相似度阈值,若两个语句的左边界词语的词向量的相似度值和右边界词语的词向量的相似度值均大于第二相似度阈值,则确定两个语句中左边界词语和右边界词语卡取出的中间词语为同义词对。
举例来说,对于同义句对中的两个句子“张三之妻子是谁”和“张三的老婆是谁”来说,可以首先对两个句子进行分词处理,并提取两个句子左边界分词后的词向量为“张三之”和“张三的”,然后取两个句子右边界分词后的词向量均为“是谁”,继而利用词向量加和求平均方法代替左右边界的表达,得到“张三之”和“张三的”的表达向量,并分别计算两个句子左右边界词向量表达的cosine相似度,通过设定阈值,比如大于0.9为相似,可以得到两个句子左右边界的词向量表达的相似度判定结果,如果两个句子左右边界的词向量表达结果都为相似,则可以卡出同义词“妻子”和“老婆”。
在一个可选的实施方式中,对同义句对进行词语对齐提取,得到同义词对的具体方法可以为:利用机器翻译模型对同义句对中的词语进行对齐提取,其具体方法包括:首先将同义句对依次输入到训练好的机器翻译模型中,得到同义句对中各词语对的对齐概率值,然后依次判断同义句中各词语对的对齐概率值是否大于对齐概率阈值,若同义句对中词语对的对齐概率值大于对齐概率阈值,则确定词语对为同义词对。在本实施例中,可以通过同义句匹配模型输出的同义句对对IBMMODE1等机器翻译模型进行训练,可以使训练好的同义词匹配模型可以识别出一个句子对中对齐概率值最大的一对词语作为同义词,通过这种方法,可以挖掘出同义句对中的很多同义词。
举例来说,对于句子对中的两个句子“张三的妻子是谁”和“张三的爱人是谁”来说,通过训练好的同义词匹配模型进行识别,可以提取中“妻子”和“爱人”这一对同义词。
205、将同义词对和目标语句输入全文搜索引擎中进行迭代搜索和迭代提取,得到多个同义句对和多个同义词对。
具体的,利用全文搜索引擎进行迭代搜索和迭代提取的方法具体可以包括以下步骤:首先将目标语句和同义词对输入到全文搜索引擎中,得到目标语句的第二相近语句,其中,第二相近语句和第一相近语句不重复,然后根据目标语句和第二相近语句,创建相近句子对,最后对相近句子对进行相似度评分,并根据相似度评分得到同义句对,以及对同义句对进行词语对齐提取,得到同义词对,重复上述三个步骤,直至全文搜索引擎搜索出的语句全部与第一相近语句或第二相近语句相重复,则可以停止搜索,在本实施例中,第一相近语句指的是第一次利用目标语句检索得到的相近语句,第二相近语句指的是后续多次利用同义词、同义句和目标语句共同检索得到的相近语句。
在本实施例中,在得到第二相近语句之后,可以再次根据目标语句和第二相近语句创建相近句子对,在这一步骤中,需要对已存在的相近句子对进行去重处理,以得到新的相近句子对,然后将新的相近句子对输入到文本匹配模型中,得到同义句对,继而将同义句对输入到机器翻译模型中,得到同义词对,最后再根据同义词进行再次搜索,得到更多的同义句和同义词,如此不断循环往复,直至没有新的相近句子对出现,即可认为同义词挖掘完毕。进一步的,在循环挖掘之后,可以对文本匹配模型输出的同义句对,以及机器翻译模型输出的同义词对进行整理,即可得到多个同义词和多个同义句。此外,在日后语料数据库更新之后,也可以继续利用迭代搜索和迭代提取的方法提取出更多的同义词和同义句。
举例来说,假设目标语句是“张三的妻子是谁”,通过迭代搜索和迭代提取的方式,不仅可以利用“张三”、“妻子”、“是谁”等词进行搜索,还可以携带挖掘好的同义词,如“爱人”,“媳妇”,“老婆”等词一起进行检索,如果没有带入同义词,而只利用“张三”、“妻子”、“是谁”这些词则无法检索出更多的句子。
本实施例提供的同义词挖掘方法,通过利用全文搜索引擎,以及借助文本匹配模型和机器翻译模型,可以从大量的语料数据出提取出对话生成、机器翻译、句子改写等各个领域亟需的同义词和同义句,同时,上述方法可以循环地增加同义词数据和质量,并通过同义词改善检索的质量,进而提升同义句以及同义词的质量,形成一个良性的同义词挖掘自循环过程。
进一步的,作为图1、图2所示方法的具体实现,本实施例提供了一种同义词挖掘装置,如图3所示,该装置包括:目标语句获取模块31、句子对创建模块32、同义词抽取模块33和同义词迭代模块34。
目标语句获取模块31,可用于获取目标语句,并通过全文搜索引擎对目标语句进行搜索,得到目标语句的第一相近语句,其中,目标语句和第一相近语句包含至少一个相同词语;
句子对创建模块32,可用于根据目标语句和第一相近语句,创建相近句子对;
同义词抽取模块33,可用于对相近句子对进行相似度评分,并根据相似度评分得到同义句对,以及对同义句对进行词语对齐提取,得到同义词对;
同义词迭代模块34,可用于将同义词对和目标语句输入全文搜索引擎中进行迭代搜索和迭代提取,得到多个同义句对和多个同义词对。
在具体的应用场景中,如图4所示,本装置还包括语料数据采集模块35,语料数据采集模块35具体可用于采集语料数据,并将语料数据导入到全文搜索引擎对应的语料数据库中。
在具体的应用场景中,同义词抽取模块33,具体可用于通过同义句匹配模型对每一个相近句子对进行相似度评分,得到每个相近句子对的相似度值;依次判断每个相近句子对的相似度值是否大于第一相似度阈值;若相近句子对的相似度值大于第一相似度阈值,则判定相近句子对为同义句对。
在具体的应用场景中,如图4所示,本装置还包括匹配模型训练模块36,匹配模型训练模块36具体可用于从全文搜索引擎对应的语料数据库中抽取出预设比例的样本语句,并将样本语句依次输入到全文搜索引擎中,得到样本语句的相近语句;根据样本语句和样本语句的相近语句,创建样本句子对;获取样本句子对的同义句标注结果,并将样本句子对和样本句子对的标注结果输入到文本匹配模型中进行训练,得到同义句匹配模型。
在具体的应用场景中,同义词抽取模块33,具体可用于对同义句对中的两个语句进行分词处理,并提取出两个语句的左边界词语的词向量和右边界词语的词向量;分别计算出两个语句的左边界词语的词向量的相似度值和右边界词语的词向量的相似度值;判断两个语句的左边界词语的词向量的相似度值和右边界词语的词向量的相似度值是否均大于第二相似度阈值;若两个语句的左边界词语的词向量的相似度值和右边界词语的词向量的相似度值均大于第二相似度阈值,则确定两个语句中左边界词语和右边界词语卡取出的中间词语为同义词对。
在具体的应用场景中,同义词抽取模块33,具体可用于将同义句对依次输入到训练好的机器翻译模型中,得到同义句对中各词语对的对齐概率值;依次判断同义句中各词语对的对齐概率值是否大于对齐概率阈值;若同义句对中词语对的对齐概率值大于对齐概率阈值,则确定词语对为同义词对。
在具体的应用场景中,同义词迭代模块34,具体可用于将目标语句和同义词对输入到全文搜索引擎中,得到目标语句的第二相近语句,其中,第二相近语句和第一相近语句不重复;根据目标语句和第二相近语句,创建相近句子对;对相近句子对进行相似度评分,并根据相似度评分得到同义句对,以及对同义句对进行词语对齐提取,得到同义词对;重复上述三个步骤,直至全文搜索引擎搜索出的语句全部与第一相近语句或第二相近语句相重复。
需要说明的是,本实施例提供的一种同义词挖掘装置所涉及各功能单元的其它相应描述,可以参考图1、图2中的对应描述,在此不再赘述。
基于上述如图1、图2所示方法,相应的,本实施例还提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述如图1、图2所示的同义词挖掘方法。
基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该待识别软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施场景所述的方法。
基于上述如图1、图2所示的方法,以及图3和图4所示的同义词挖掘装置实施例,为了实现上述目的,本实施例还提供了一种同义词挖掘的实体设备,具体可以为个人计算机、服务器、智能手机、平板电脑、智能手表、或者其它网络设备等,该实体设备包括存储介质和处理器;存储介质,用于存储计算机程序;处理器,用于执行计算机程序以实现上述如图1、图2所示的方法。
可选的,该实体设备还可以包括用户接口、网络接口、摄像头、射频(RadioFrequency,RF)电路,传感器、音频电路、WI-FI模块等等。用户接口可以包括显示屏(Display)、输入单元比如键盘(Keyboard)等,可选用户接口还可以包括USB接口、读卡器接口等。网络接口可选的可以包括标准的有线接口、无线接口(如WI-FI接口)等。
本领域技术人员可以理解,本实施例提供的一种同义词挖掘的实体设备结构并不构成对该实体设备的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件布置。
存储介质中还可以包括操作系统、网络通信模块。操作系统是管理上述实体设备硬件和待识别软件资源的程序,支持信息处理程序以及其它待识别软件和/或程序的运行。网络通信模块用于实现存储介质内部各组件之间的通信,以及与信息处理实体设备中其它硬件和软件之间通信。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可以借助软件加必要的通用硬件平台的方式来实现,也可以通过硬件实现。通过应用本申请的技术方案,首先利用全文搜索引擎对目标语句进行搜索,得到包含至少一个相同词语的目标语句的第一相近语句,然后根据目标语句和第一相近语句创建相近句子对,继而对相近句子对进行相似度评分得到同义句对,以及对同义句对进行词语对齐提取得到同义词对,最后将挖掘出的同义词对和目标语句重新输入到全文搜索引擎中进行迭代搜索和迭代提取,最终得到多个同义句对和多个同义词对。与现有技术相比,上述方法通过全文搜索引擎、句子对相似度评分和词语对齐提取等多种技术手段挖掘同义词,可以使挖掘出的同义词和同义句更符合专业要求,同时,上述自循环的同义词挖掘方法可以显著提高同义词和同义句的挖掘数量和挖掘质量,摆脱了以往从同义词林等结构化数据中挖掘的同义词的局限性,也降低了需依赖大量点击数据的技术实现难度。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本申请所必须的。本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本申请序号仅仅为了描述,不代表实施场景的优劣。以上公开的仅为本申请的几个具体实施场景,但是,本申请并非局限于此,任何本领域的技术人员能思之的变化都应落入本申请的保护范围。
Claims (7)
1.一种同义词挖掘方法,其特征在于,所述方法包括:
获取目标语句,并通过全文搜索引擎对所述目标语句进行搜索,得到目标语句的第一相近语句,其中,所述目标语句和所述第一相近语句包含至少一个相同词语;
根据所述目标语句和所述第一相近语句,创建相近句子对;
对所述相近句子对进行相似度评分,并根据相似度评分得到同义句对,以及对所述同义句对进行词语对齐提取,得到同义词对;
将所述同义词对和所述目标语句输入所述全文搜索引擎中进行迭代搜索和迭代提取,得到多个同义句对和多个同义词对;
其中,所述对相近句子对进行相似度评分,并根据相似度评分得到同义句对,包括:通过同义句匹配模型对每一个所述相近句子对进行相似度评分,得到每个所述相近句子对的相似度值;依次判断每个所述相近句子对的相似度值是否大于第一相似度阈值;若所述相近句子对的相似度值大于所述第一相似度阈值,则判定所述相近句子对为同义句对;
所述同义句匹配模型的训练方法包括:从所述全文搜索引擎对应的语料数据库中抽取出预设比例的样本语句,并将所述样本语句依次输入到所述全文搜索引擎中,得到样本语句的相近语句;根据所述样本语句和所述样本语句的相近语句,创建样本句子对;获取所述样本句子对的同义句标注结果,并将所述样本句子对和所述样本句子对的标注结果输入到文本匹配模型中进行训练,得到同义句匹配模型;
所述将同义词对和所述目标语句输入所述全文搜索引擎中进行迭代搜索和迭代提取,得到多个同义句对和多个同义词对,包括:将所述目标语句和所述同义词对输入到所述全文搜索引擎中,得到目标语句的第二相近语句,其中,所述第二相近语句和所述第一相近语句不重复;根据所述目标语句和所述第二相近语句,创建相近句子对;对所述相近句子对进行相似度评分,并根据相似度评分得到同义句对,以及对所述同义句对进行词语对齐提取,得到同义词对;重复上述三个步骤,直至所述全文搜索引擎搜索出的语句全部与所述第一相近语句或所述第二相近语句相重复。
2.根据权利要求1所述的方法,其特征在于,所述获取目标语句之前,所述方法还包括:
采集语料数据,并将所述语料数据导入到所述全文搜索引擎对应的语料数据库中。
3.根据权利要求1所述的方法,其特征在于,所述对同义句对进行词语对齐提取,得到同义词对,包括:
对所述同义句对中的两个语句进行分词处理,并提取出两个语句的左边界词语的词向量和右边界词语的词向量;
分别计算出所述两个语句的左边界词语的词向量的相似度值和右边界词语的词向量的相似度值;
判断所述两个语句的左边界词语的词向量的相似度值和右边界词语的词向量的相似度值是否均大于第二相似度阈值;
若所述两个语句的左边界词语的词向量的相似度值和右边界词语的词向量的相似度值均大于所述第二相似度阈值,则确定两个语句中左边界词语和右边界词语卡取出的中间词语为同义词对。
4.根据权利要求1所述的方法,其特征在于,所述对同义句对进行词语对齐提取,得到同义词对,包括:
将所述同义句对依次输入到训练好的机器翻译模型中,得到同义句对中各词语对的对齐概率值;
依次判断所述同义句中各词语对的对齐概率值是否大于对齐概率阈值;
若所述同义句对中词语对的对齐概率值大于所述对齐概率阈值,则确定所述词语对为同义词对。
5.一种同义词挖掘装置,其特征在于,所述装置包括:
目标语句获取模块,用于获取目标语句,并通过全文搜索引擎对所述目标语句进行搜索,得到目标语句的第一相近语句,其中,所述目标语句和所述第一相近语句包含至少一个相同词语;
句子对创建模块,用于根据所述目标语句和所述第一相近语句,创建相近句子对;
同义词抽取模块,用于对所述相近句子对进行相似度评分,并根据相似度评分得到同义句对,以及对所述同义句对进行词语对齐提取,得到同义词对;
同义词迭代模块,用于将所述同义词对和所述目标语句输入所述全文搜索引擎中进行迭代搜索和迭代提取,得到多个同义句对和多个同义词对;
所述同义词抽取模块,具体用于通过同义句匹配模型对每一个所述相近句子对进行相似度评分,得到每个所述相近句子对的相似度值;依次判断每个所述相近句子对的相似度值是否大于第一相似度阈值;若所述相近句子对的相似度值大于所述第一相似度阈值,则判定所述相近句子对为同义句对;
所述装置还包括匹配模型训练模块,所述匹配模型训练模块,用于从所述全文搜索引擎对应的语料数据库中抽取出预设比例的样本语句,并将所述样本语句依次输入到所述全文搜索引擎中,得到样本语句的相近语句;根据所述样本语句和所述样本语句的相近语句,创建样本句子对;获取所述样本句子对的同义句标注结果,并将所述样本句子对和所述样本句子对的标注结果输入到文本匹配模型中进行训练,得到同义句匹配模型;
所述同义词迭代模块,具体用于将所述目标语句和所述同义词对输入到所述全文搜索引擎中,得到目标语句的第二相近语句,其中,所述第二相近语句和所述第一相近语句不重复;根据所述目标语句和所述第二相近语句,创建相近句子对;对所述相近句子对进行相似度评分,并根据相似度评分得到同义句对,以及对所述同义句对进行词语对齐提取,得到同义词对;重复上述三个步骤,直至所述全文搜索引擎搜索出的语句全部与所述第一相近语句或所述第二相近语句相重复。
6.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的方法的步骤。
7.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011278772.3A CN112395867B (zh) | 2020-11-16 | 2020-11-16 | 同义词挖掘方法、装置、存储介质及计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011278772.3A CN112395867B (zh) | 2020-11-16 | 2020-11-16 | 同义词挖掘方法、装置、存储介质及计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112395867A CN112395867A (zh) | 2021-02-23 |
CN112395867B true CN112395867B (zh) | 2023-08-08 |
Family
ID=74599506
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011278772.3A Active CN112395867B (zh) | 2020-11-16 | 2020-11-16 | 同义词挖掘方法、装置、存储介质及计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112395867B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113157897B (zh) * | 2021-05-26 | 2024-06-11 | 中国平安人寿保险股份有限公司 | 语料生成方法、装置、计算机设备及存储介质 |
CN113343708A (zh) * | 2021-06-11 | 2021-09-03 | 北京声智科技有限公司 | 一种基于语义实现语句泛化的方法和装置 |
CN113486169B (zh) * | 2021-07-27 | 2024-04-16 | 平安国际智慧城市科技股份有限公司 | 基于bert模型的同义语句生成方法、装置、设备及存储介质 |
CN113761869A (zh) * | 2021-08-17 | 2021-12-07 | 中移(杭州)信息技术有限公司 | 资源覆盖率的检测方法、装置及计算机可读存储介质 |
CN114757214B (zh) * | 2022-05-12 | 2023-01-31 | 北京百度网讯科技有限公司 | 用于优化翻译模型的样本语料的选取方法、相关装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006251843A (ja) * | 2005-03-08 | 2006-09-21 | Advanced Telecommunication Research Institute International | 同義語対抽出装置及びそのためのコンピュータプログラム |
JP2007233446A (ja) * | 2006-02-27 | 2007-09-13 | Oki Electric Ind Co Ltd | 同義語対抽出装置及び同義語対抽出方法 |
JP2009223463A (ja) * | 2008-03-14 | 2009-10-01 | Nippon Telegr & Teleph Corp <Ntt> | 同義性判定装置、その方法、プログラム及び記録媒体 |
JP2014153857A (ja) * | 2013-02-07 | 2014-08-25 | Nippon Telegr & Teleph Corp <Ntt> | 同義述部抽出装置、方法、及びプログラム |
CN106202038A (zh) * | 2016-06-29 | 2016-12-07 | 北京智能管家科技有限公司 | 基于迭代的同义词挖掘方法及装置 |
WO2018153215A1 (zh) * | 2017-02-27 | 2018-08-30 | 芋头科技(杭州)有限公司 | 一种自动生成语义相近句子样本的方法 |
CN110457444A (zh) * | 2019-08-14 | 2019-11-15 | 山东浪潮人工智能研究院有限公司 | 一种基于深度文本匹配的同义句转换方法 |
CN111597800A (zh) * | 2019-02-19 | 2020-08-28 | 百度在线网络技术(北京)有限公司 | 同义句的获取方法及装置、设备及存储介质 |
-
2020
- 2020-11-16 CN CN202011278772.3A patent/CN112395867B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006251843A (ja) * | 2005-03-08 | 2006-09-21 | Advanced Telecommunication Research Institute International | 同義語対抽出装置及びそのためのコンピュータプログラム |
JP2007233446A (ja) * | 2006-02-27 | 2007-09-13 | Oki Electric Ind Co Ltd | 同義語対抽出装置及び同義語対抽出方法 |
JP2009223463A (ja) * | 2008-03-14 | 2009-10-01 | Nippon Telegr & Teleph Corp <Ntt> | 同義性判定装置、その方法、プログラム及び記録媒体 |
JP2014153857A (ja) * | 2013-02-07 | 2014-08-25 | Nippon Telegr & Teleph Corp <Ntt> | 同義述部抽出装置、方法、及びプログラム |
CN106202038A (zh) * | 2016-06-29 | 2016-12-07 | 北京智能管家科技有限公司 | 基于迭代的同义词挖掘方法及装置 |
WO2018153215A1 (zh) * | 2017-02-27 | 2018-08-30 | 芋头科技(杭州)有限公司 | 一种自动生成语义相近句子样本的方法 |
CN111597800A (zh) * | 2019-02-19 | 2020-08-28 | 百度在线网络技术(北京)有限公司 | 同义句的获取方法及装置、设备及存储介质 |
CN110457444A (zh) * | 2019-08-14 | 2019-11-15 | 山东浪潮人工智能研究院有限公司 | 一种基于深度文本匹配的同义句转换方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112395867A (zh) | 2021-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112395867B (zh) | 同义词挖掘方法、装置、存储介质及计算机设备 | |
CN106649818B (zh) | 应用搜索意图的识别方法、装置、应用搜索方法和服务器 | |
US10831769B2 (en) | Search method and device for asking type query based on deep question and answer | |
CN108319627B (zh) | 关键词提取方法以及关键词提取装置 | |
CN108280114B (zh) | 一种基于深度学习的用户文献阅读兴趣分析方法 | |
CN109783631B (zh) | 社区问答数据的校验方法、装置、计算机设备和存储介质 | |
CN109492081B (zh) | 文本信息搜索和信息交互方法、装置、设备及存储介质 | |
KR20150037924A (ko) | 제품 인식에 근거한 정보 분류 기법 | |
US11030251B2 (en) | Method and system for providing query suggestions based on personalized spelling correction | |
CN109815390B (zh) | 多语言信息的检索方法、装置、计算机设备及计算机存储介质 | |
CN113094519B (zh) | 一种基于文档进行检索的方法及装置 | |
CN114021577A (zh) | 内容标签的生成方法、装置、电子设备及存储介质 | |
CN112149422A (zh) | 一种基于自然语言的企业新闻动态监测方法 | |
Blanco et al. | Overview of NTCIR-13 Actionable Knowledge Graph (AKG) Task. | |
CN110705285B (zh) | 一种政务文本主题词库构建方法、装置、服务器及可读存储介质 | |
CN116049376B (zh) | 一种信创知识检索回复的方法、装置和系统 | |
CN108228802B (zh) | 一种输入联想的推荐方法及装置 | |
CN115563515A (zh) | 文本相似性检测方法、装置、设备及存储介质 | |
CN111310442B (zh) | 形近字纠错语料挖掘方法、纠错方法、设备及存储介质 | |
CN109408794A (zh) | 一种频次词典建立方法、分词方法、服务器和客户端设备 | |
CN111191448A (zh) | 词处理方法、装置、存储介质以及处理器 | |
CN115828893B (zh) | 非结构化文档问答的方法、装置、存储介质和设备 | |
Nikolić et al. | Modelling the System of Receiving Quick Answers for e-Government Services: Study for the Crime Domain in the Republic of Serbia | |
CN114861062B (zh) | 信息过滤方法和装置 | |
Che Alhadi et al. | An ensemble similarity model for short text retrieval |
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 |