CN112560425B - 模板生成方法、装置、电子设备及存储介质 - Google Patents
模板生成方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN112560425B CN112560425B CN202011556696.8A CN202011556696A CN112560425B CN 112560425 B CN112560425 B CN 112560425B CN 202011556696 A CN202011556696 A CN 202011556696A CN 112560425 B CN112560425 B CN 112560425B
- Authority
- CN
- China
- Prior art keywords
- candidate
- word
- historical search
- template
- sample set
- 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
- 238000000034 method Methods 0.000 title claims abstract description 71
- 230000011218 segmentation Effects 0.000 claims description 57
- 238000004590 computer program Methods 0.000 abstract description 12
- 230000008569 process Effects 0.000 description 26
- 238000012545 processing Methods 0.000 description 24
- 238000012546 transfer Methods 0.000 description 22
- 230000006870 function Effects 0.000 description 15
- 238000001914 filtration Methods 0.000 description 11
- 230000007704 transition Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 4
- 238000000605 extraction Methods 0.000 description 4
- 238000013145 classification model Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 235000019013 Viburnum opulus Nutrition 0.000 description 2
- 244000071378 Viburnum opulus Species 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- PCTMTFRHKVHKIS-BMFZQQSSSA-N (1s,3r,4e,6e,8e,10e,12e,14e,16e,18s,19r,20r,21s,25r,27r,30r,31r,33s,35r,37s,38r)-3-[(2r,3s,4s,5s,6r)-4-amino-3,5-dihydroxy-6-methyloxan-2-yl]oxy-19,25,27,30,31,33,35,37-octahydroxy-18,20,21-trimethyl-23-oxo-22,39-dioxabicyclo[33.3.1]nonatriaconta-4,6,8,10 Chemical compound C1C=C2C[C@@H](OS(O)(=O)=O)CC[C@]2(C)[C@@H]2[C@@H]1[C@@H]1CC[C@H]([C@H](C)CCCC(C)C)[C@@]1(C)CC2.O[C@H]1[C@@H](N)[C@H](O)[C@@H](C)O[C@H]1O[C@H]1/C=C/C=C/C=C/C=C/C=C/C=C/C=C/[C@H](C)[C@@H](O)[C@@H](C)[C@H](C)OC(=O)C[C@H](O)C[C@H](O)CC[C@@H](O)[C@H](O)C[C@H](O)C[C@](O)(C[C@H](O)[C@H]2C(O)=O)O[C@H]2C1 PCTMTFRHKVHKIS-BMFZQQSSSA-N 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000007711 solidification Methods 0.000 description 1
- 230000008023 solidification Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/186—Templates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/253—Grammatical analysis; Style critique
-
- 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/289—Phrasal analysis, e.g. finite state techniques or chunking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开提供了一种模板生成方法、装置、电子设备、存储介质及计算机程序产品,涉及智能搜索、智能推荐等领域。具体实现方案为:获取M个历史搜索文本以及所述M个历史搜索文本分别对应的点击资源;M为大于等于1的整数;基于所述M个历史搜索文本分别对应的所述点击资源的相关信息对所述M个历史搜索文本进行聚类,得到N个样本集;N为大于等于1的整数;基于所述N个样本集中分别包含的多个历史搜索文本,确定所述N个样本集分别相关的目标模板以及所述目标模板的词槽中包含的同类词语。
Description
技术领域
本公开涉及计算机技术领域。本公开尤其涉及智能搜索、智能推荐领域。
背景技术
在搜索领域中,通过对用户搜索文本的统计分析,当用户对于某种信息或资源有特定意图时,使用的搜索文本会符合某种特定的模式。将这些具有相同模式的文本归纳起来形成一种模板的形式,使用模板可以比较方便地识别用户的意图。然而,如何高效并且准确的生成模板就成为需要解决的问题。
发明内容
本公开提供了一种模板生成方法、装置、电子设备、存储介质及计算机程序产品。
根据本申请的第一方面,提供了一种模板生成方法,包括:
获取M个历史搜索文本以及所述M个历史搜索文本分别对应的点击资源;M为大于等于1的整数;
基于所述M个历史搜索文本分别对应的所述点击资源的相关信息对所述M个历史搜索文本进行聚类,得到N个样本集;N为大于等于1的整数;
基于所述N个样本集中分别包含的多个历史搜索文本,确定所述N个样本集分别相关的目标模板以及所述目标模板的词槽中包含的同类词语。
根据本申请的第二方面,提供了一种模板生成装置,包括:
信息获取模块,用于获取M个历史搜索文本以及所述M个历史搜索文本分别对应的点击资源;M为大于等于1的整数;
聚类模块,用于基于所述M个历史搜索文本分别对应的所述点击资源的相关信息对所述M个历史搜索文本进行聚类,得到N个样本集;N为大于等于1的整数;
生成模块,用于基于所述N个样本集中分别包含的多个历史搜索文本,确定所述N个样本集分别相关的目标模板以及所述目标模板的词槽中包含的同类词语。
根据本申请的第三方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述方法。
根据本申请的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行上述方法。
根据本申请的第五方面,提供了一种计算机程序产品,包括计算机程序,该计算机程序在被处理器执行时实现上述方法。
采用本申请的技术方案,就可以基于具备点击资源的历史搜索文本进行样本集的生成,进而根据样本集中包含的历史搜索文本确定对应的目标模板以及目标模板中的词槽所包含的同类词语。如此,通过自动的对历史搜索样本及其对应的点击资源进行分析,最终得到目标模板以及其词槽中的同类词语,提升了生成模板的准确性以及生成效率,为后续使用模板进行模板树以及词槽树的更新或构建以及进行预测等处理也更加准确以及高效。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开实施例的模板生成方法流程示意图;
图2是根据本公开实施例的分词词典中添加新词的处理流程示意图;
图3是根据本公开实施例的词槽树的组成示意图;
图4是根据本公开实施例的模板树的组成示意图;
图5是根据本公开实施例的基于词槽树以及模板树进行交替处理的示意图;
图6是根据本公开实施例的模板生成装置组成结构示意图一;
图7是根据本公开实施例的模板生成装置组成结构示意图二;
图8是是用来实现本公开实施例的模板生成方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
本公开实施例提供了一种模板生成方法,如图1所示,包括:
S101:获取M个历史搜索文本以及所述M个历史搜索文本分别对应的点击资源;M为大于等于1的整数;
S102:基于所述M个历史搜索文本分别对应的所述点击资源的相关信息对所述M个历史搜索文本进行聚类,得到N个样本集;N为大于等于1的整数;
S103:基于所述N个样本集中分别包含的多个历史搜索文本,确定所述N个样本集分别相关的目标模板以及所述目标模板的词槽中包含的同类词语。
本实施例可以应用于电子设备,可以是具备图像处理功能的设备,比如,终端设备、服务器等等。
本实施例中,所述M个历史搜索文本的获取方式可以包括:获取预设时长内的全部历史搜索文本,从所述全部历史搜索文本中提取具备相应的点击资源的M个历史搜索文本。
其中,所述M个历史搜索文本中的任意一个历史搜索文本所对应的点击资源可以指的是,用户输入历史搜索文本后,基于该历史搜索文本召回了一个或多个候选的数据资源;用户从所述一个或多个候选的数据资源中选取并点击了一个数据资源,将用户点击的数据资源作为所述历史搜索文本所对应的点击资源。
具体来说,所述数据资源可以是搜索引擎中已索引可被检索的数据。所述数据资源可以为满足用户对信息检索和网站寻址的需求的数据资源;示例性的所述数据资源可以包括:文档数据、网站资源中任意之一。举例来说,所述文档数据的主要文本内容可以包括题目以及内容;所述网站资源的主要文本内容可以包括题目、概述、统一资源定位符(Uniform Resource Locator,URL)等等。
所述点击资源的相关信息,可以包括有以下至少一种:所述点击资源的标签、点击资源的类别、点击资源的来源。
所述点击资源的标签的数量可以为一个或多个;所述点击资源的类别通常为一个,根据实际情况可能具备多个;所述点击资源的来源可以包括有来源于官网或非官网等等。
所述点击资源的相关信息为预先配置好的,比如,可以是预先通过二分类模型预测得到每一个点击资源的类别;还可以基于关键词提取方法确定所述点击资源的标签等等。
所述N个样本集中的每一个样本集中包含多个历史搜索文本。
也就是说,基于所述M个历史搜索文本分别对应的所述点击资源的相关信息对所述M个历史搜索文本进行聚类,将所述点击资源的类别、标签、来源中至少之一相同的历史搜索文本添加至同一个样本集中。
所述基于所述N个样本集中分别包含的多个历史搜索文本,确定所述N个样本集分别相关的目标模板以及所述目标模板中的词槽包含的目标同类词语,可以包括:
对所述N个样本集中的第j个样本集中包含的多个历史搜索文本进行分词处理,得到所述多个历史搜索文本的分词结果;
基于所述多个历史搜索文本的分词结果确定候选模板,并确定所述候选模板中一个或多个词槽中每一个词槽包含的候选同类词语;
基于所述候选模板分别对应的置信度,确定所述第j个样本集对应的目标模板;
基于所述第j个样本集对应的目标模板中的每一个词槽包含的候选同类词语的词语置信度,确定所述每一个词槽的目标同类词语。
上述第j个样本集可以为N个样本集中的任意之一。
所述第j个样本集所对应的候选模板可以有一个或多个;所述第j个样本集对应的目标模板也可以有一个或多个;所述每一个词槽中的候选同类词语以及目标同类词语的数量也可以是大于等于1的整数。
进而,本实施例提供的方案,还可以基于全部N个样本集分别对应的目标模板以及目标模板中词槽包含的目标同类词语,构建或更新模板树以及词槽树。
基于所述模板树以及所述词槽树,可以对获取到的当前搜索文本进行分析,得到所述当前搜索文本所对应的意图识别结果。
可见,通过采用上述方案,就可以基于具备点击资源的历史搜索文本进行样本集的生成,进而根据样本集中包含的历史搜索文本确定对应的目标模板以及目标模板中的词槽所包含的同类词语。如此,通过自动的对历史搜索样本及其对应的点击资源进行分析,最终得到目标模板以及其词槽中的同类词语,提升了生成模板的准确性以及生成效率,为后续使用模板进行模板树以及词槽树的更新或构建以及进行预测等处理也更加准确以及高效。
所述基于所述M个历史搜索文本分别对应的所述点击资源的相关信息对所述M个历史搜索文本进行聚类,得到N个样本集,包括:
基于所述M个历史搜索文本分别对应的所述点击资源的相关信息对所述M个历史搜索文本进行聚类,得到K个候选样本集;K为大于等于N的整数;
从所述K个候选样本集中,选取所述N个样本集。
这里,所述点击资源的相关信息,可以包括所述点击资源的标签和/或类别。另外,所述点击资源的相关信息,除了上述类别以及标签之外,还可以包括有所述点击资源的来源,比如,是否来源于官网。
需要指出的是,所述点击资源的标签可以有一个或多个,所述点击资源的类别可以有一个或多个。另外,所述点击资源的标签和/或类别均可以为预先确定的。
具体来说,确定所述点击资源的标签的方式可以是通过关键词提取的方式来确定的。比如,可以是对所述点击资源所对应的文档的内容进行关键词提取,确定所述点击资源的标签。示例性的,基于所述点击资源所对应的文档标题进行关键词提取,可以得到所述点击资源的一个或多个标签。
举例来说,点击资源1对应了文档1,文档1的标题为“ABCDE”,通过关键词提取可以确定两个关键词“AB”和“DE”,则所述点击资源1的标签为“AB”和“DE”。
确定所述点击资源的类别的方式可以是通过一个或多个二分类模型预测得到的。其中,所述一个或多个二分类模型均为预先训练得到的,关于所述一个或多个二分类模型的生成方式,本实施例不进行限定。所述点击资源的类别可以是一个或多个候选类别。
示例性的,所述候选类别可以包括有技术、新闻、行政、人力等等。需要理解的是,实际处理中可能存在更多可能的候选类别,只是本实施例不进行穷举。
前述M个历史搜索文本,可以为在预设时长内的全部历史搜索文本中的一部分。优选的,所述M个历史搜索文本为具备相应的点击资源的历史搜索文本。其中,M可以为大于等于1的整数。
也就是说,可以每个预设时长就定期整理在该预设时长内的具备相应的点击资源的历史搜索文本。进一步地,根据每一个历史搜索文本对应的点击资源的类别、标签、来源中至少之一,对所述M个历史搜索文本进行聚类得到N个样本集。
以下表为例进行说明:
将点击资源为相同类别以及相同标签的历史搜索文本1、2、3、4整合为一个样本集α。
将点击资源的来源相同(都来自官网)的历史搜索文本5、6、7、8整合为一个样本集β。
可见,通过采用上述处理就能够基于点击资源的相关信息对历史搜索文本进行聚类,进而得到由多个历史搜索文本组成的样本集;如此,能够使得后续对每一个样本集中的历史搜索文本进行分词最终得到模板的处理更加高效并且准确。
在前述得到候选样本集的情况下,可以进一步对候选样本集进行过滤,具体来说,所述从所述K个候选样本集中,选取所述N个样本集,包括以下至少之一:
对所述K个候选样本集中的第i个候选样本集中包含的历史搜索文本的数量进行统计,在所述历史搜索文本的数量达到第一预设数量的情况下,将所述第i个候选样本集作为所述N个样本集中之一;i为大于等于1且小于等于K的整数;
对所述K个候选样本集中的第i个候选样本集中包含的目标类型的历史搜索文本的数量进行统计,在所述目标类型的历史搜索文本的数量达到第二预设数量的情况下,将所述第i个候选样本集作为所述N个样本集中之一:
获取所述K个候选样本集中的第i个候选样本集中包含的历史搜索文本所关联的用户标识,对所述历史搜索文本所关联的用户标识去重后得到用户标识的数量,在所述用户标识的数量达到第三预设数量的情况下,将所述第i个候选样本集作为所述N个样本集中之一。
分别来说,第一种方式:对所述K个候选样本集中的第i个候选样本集中包含的历史搜索文本的数量进行统计,在所述历史搜索文本的数量达到第一预设数量的情况下,将所述第i个候选样本集作为所述N个样本集中之一;i为大于等于1且小于等于K的整数。
其中,所述第一预设数量可以根据实际情况设置,比如可以为500.
也就是,分别对每一个候选样本集中包含的历史搜索文本的数量进行统计,如果候选样本集中包含的历史搜索文本的数量大于第一预设数量,则作为最终使用的样本集;否则,可以删除该候选样本集。
第二种方式中,对所述K个候选样本集中的第i个候选样本集中包含的目标类型的历史搜索文本的数量进行统计,在所述目标类型的历史搜索文本的数量达到第二预设数量的情况下,将所述第i个候选样本集作为所述N个样本集中之一。
其中,所述目标类型的历史搜索文本可以为唯一的历史搜索文本,也就是说,该历史搜索文本与其他历史搜索文本均不相同。
所述第二预设数量可以为根据实际情况设置的,比如,可以为100。
也就是,分别对每一个候选样本集中包含的目标类型的历史搜索文本的数量进行统计,如果候选样本集中包含的历史搜索文本的数量大于第二预设数量,则作为最终使用的样本集;否则,可以删除该候选样本集。
第三种方式:获取所述K个候选样本集中的第i个候选样本集中包含的历史搜索文本所关联的用户标识,对所述历史搜索文本所关联的用户标识去重后得到用户标识的数量,在所述用户标识的数量达到第三预设数量的情况下,将所述第i个候选样本集作为所述N个样本集中之一。
所述第三预设数量可以根据实际情况进行设置,比如可以为100。
比如,第i个候选样本集中包含了600条历史搜索文本,其中有200条历史搜索文本关联了用户标识-1,另外200条历史搜索文本关联了用户标识-2,100条历史搜索文本关联用户标识-3,还有100条关联用户标识-4,也就是第i个候选样本集中的历史搜索文本关联的用户标识的数量为4个,小于所述第三预设数量,则第i个候选样本集需要删除。这样可以避免几个用户的频繁操作的情况,进一步保证了最终得到的样本集的泛化性。
上述三种方式可以全部使用,也可以仅使用其中一个或其中两个,其组合方式这里不做穷举。
如此,通过对候选样本集进行过滤,可以避免最终使用的样本集置信度较低的情况,保证了样本集的泛化性,从而为后续基于样本集中包含的历史搜索文本进行模板的确定,提供更加准确的信息。
所述基于所述N个样本集中分别包含的多个历史搜索文本,确定所述N个样本集分别相关的目标模板以及所述目标模板的词槽中包含的同类词语,包括:
基于所述N个样本集中的第j个样本集包含的L个历史搜索文本,确定所述第j个样本集相关的候选模板以及所述候选模板的词槽中包含的候选同类词语;j为大于等于1且小于等于N的整数;L为大于等于1的整数;
从所述候选模板中选取模板置信度大于模板置信度阈值的候选模板作为所述第j个样本集相关的目标模板;以及从所述第j个样本集相关的所述目标模板的所述词槽中包含的所述候选同类词语中选取词语置信度大于词语置信度阈值的候选同类词语作为所述目标模板的所述词槽中包含的所述同类词语。
所述第j个样本集为所述N个样本集中的任意之一,由于对所述N个样本集的处理均相同,因此不做一一赘述。
所述第j个样本集相关的候选模板以及所述候选模板的词槽中包含的候选同类词语,具体为:所述第j个样本集相关的多个候选模板以及所述多个候选模板中每一个候选模板的词槽中包含的候选同类词语。
进一步地,所述每一个候选模板的词槽可以包括有一个或多个,相应的,一个或多个词槽中的每一个词槽可以包含有一个或多个候选同类词语。
上述候选模板的模板置信度,可以为根据在处理过程中所述候选模板的使用频次确定的;上述候选同类词语的词语置信度,可以是根据在处理过程中候选同类词语的出现频次确定的。
举例来说,第j个样本集中一共有100个历史搜索文本,候选模板1在处理过程中使用了50次,也就是可以匹配到50个历史搜索文本,则候选模板的模板置信度为50/100;候选模板1中的词槽1包含的一个词语1,在候选模板1与50个历史搜索文本匹配的过程中出现了30次,则该词语1的置信度为30/50。
从所述候选模板中选取模板置信度大于模板置信度阈值的候选模板作为所述第j个样本集相关的目标模板,具体可以为:判断每一个候选模板的模板置信度是否超过模板置信度阈值,若超过,则作为所述第j个样本集相关的目标模板,否则,删除该候选模板。
这里,所述模板置信度阈值可以根据实际情况设置,比如可以设置为0.35,或者更高或更低,本实施例不对其进行限定。
从所述第j个样本集相关的所述目标模板的所述词槽中包含的所述候选同类词语中选取词语置信度大于词语置信度阈值的候选同类词语作为所述目标模板的所述词槽中包含的所述同类词语,具体可以为:
判断每一个词槽中包含的每一个候选同类词语的词语置信度是否大于词典置信度,若大于,则将其作为所述目标模板中的词槽包含的同类词语,否则,删除该候选同类词语。
所述词典置信度可以根据实际情况设置,比如,可以设置为0.15,或者可以设置更大或更小,本实施例不对其进行限定。
可见,通过采用上述方案,就可以在基于每一个样本集的历史搜索文本确定候选模板以及候选模板中包含的候选同类词语之后,进一步基于候选模板的模板置信度以及候选同类词语的词语置信度进行过滤,得到目标模板以及目标模板中词槽的同类词语。如此,可以使得得到的目标模板以及词槽中的同类词语更加准确,进而保证基于目标模板以及词槽中的同类词语构建或更新的模板树更加准确。
所述基于所述第j个样本集包含的所述L个历史搜索文本分别对应的分词结果之前,还可以包括:
对所述第j个样本集包含的所述L个历史搜索文本分别进行分词处理,得到所述L个历史搜索文本分别对应的分词结果。
其中,所述L个历史搜索文本分别对应的分词结果中,每一个历史搜索文本对应的分词结果可以包括:每一个历史搜索文本划分得到的一个或多个词语。比如,一个历史搜索文本为“ABCD”划分可以得到3个词语“AB”、“C”和“D”。
上述分词处理是中文NLP(Natural Langunge Possns,自然语言处理)处理中常见的一个处理步骤,如果分词效果差,往往会影响模型最终的效果。所以,本实施例使用jieba分词器,通过使用jieba分词器自带的词条权重功能,来尽可能保证分词效果的准确性。
举例来说,在分词词典中配置[ABC 1000]前后,分词变化如下:
在分词词典中配置[ABC 1000]前:query=ABC jieba分词:AB/C;
在分词词典中配置[ABC 1000]后:query=ABC jieba分词:ABC。
其中,需要指出的是,[ABC 1000]中ABC为词条或词语,1000为该词条或词语的权重。jieba分词器在分词时,会遍历输入字符串的全部分词分法后,对每种分法,根据一个基于term(名词)长度和权重的公式进行计算,然后保留得分最高的一种分词分法并输出。
前述使用分词工具进行分词的处理过程中,为所述分词工具配置有大量词条和权重的分词词典是极其重要的。前述分词词典中词条的获取,可以包括:对每一个原始数据进行特征计算,得每一个原始数据包含的一个或多个候选词语;基于一个或多个候选词语更新分词工具中的词条及其权重。具体的,可以参见图2,可以包括:
S201:对原始数据进行预处理,得到预处理后的原始数据;
这里,所述对原始数据进行预处理可以包括:将所述原始数据中包含的预设类型的部分删除;所述预设类型的部分可以包括:标点符号、停止词、空格等,也就是说,可以将所述原始数据中的标点符号、停止词、空格等内容删除。
S202:对所述预处理后的所述原始数据进行特征提取,得到所述预处理后的所述原始数据中包含的一个或多个候选词语分别对应的特征信息;
其中,所述特征信息可以包括词频、自由度、凝固度等。
S203:基于所述一个或多个候选词语分别对应的特征信息,对所述一个或多个候选词语进行过滤得到一个或多个待添加词语,将所述一个或多个待添加词语添加至所述分词词典。
其中,所述过滤的处理可以通过模型以及词典进行过滤;具体的,可以是先通过模型对所述一个或多个候选词语进行过滤,得到一个或多个预选词语;将模型过滤后得到的所述一个或多个预选词语进行词典过滤,得到所述一个或多个待添加词语。
所述通过模型对所述一个或多个候选词语进行过滤的处理可以是将每一个候选词语输入到模型中,得到模型输出的识别结果,比如可以是候选词语为真或假,将识别结果表征该候选词语为真的作为预选词语,将识别结果表征该候选词语为假的删除。
所述将模型过滤后得到的所述一个或多个预选词语进行词典过滤,得到所述一个或多个待添加词语,具体可以为:基于已有词库以及通用词,与每一个预选词语进行匹配,若所述已有词库或所述通用词中包含所述预选词语,则删除该预选词语,否则,将该预选词语作为所述待添加词语。
通过上述能得到一批专有名词和新词(即前述待添加词语),将这些词放入jieba分词器的分词词典中。
所述基于所述N个样本集中的第j个样本集包含的L个历史搜索文本,确定所述第j个样本集相关的候选模板以及所述候选模板的词槽中包含的候选同类词语,包括:
基于所述第j个样本集包含的所述L个历史搜索文本分别对应的分词结果,确定第k组共现词;k为大于等于1的整数;
将所述第j个样本集中包含所述第k组共现词的P个历史搜索文本作为第k个子样本集;P为大于等于1且小于等于L的整数;
基于所述第k个子样本集的所述P个历史搜索文本分别对应的分词结果确定除所述第k组共现词之外的第一类词语,基于所述第k组共现词以及所述第一类词语,确定第k组候选模板以及所述第k组候选模板中各个候选模板的词槽中的初始词语;
基于所述第j个样本集中的所述L个历史搜索文本分别对应的分词结果、以及所述第k组候选模板中所述各个候选模板的词槽中的初始词语,确定所述第k组候选模板中所述各个候选模板的所述词槽中分别包含的所述候选同类词语。
所述第k组共现词中可以包括有一个或多个共现词。
所述基于所述第j个样本集包含的所述L个历史搜索文本分别对应的分词结果,确定第k组共现词,可以为:
从所述第j个样本集包含的所述L个历史搜索文本分别对应的分词结果中,查找出现频次超过频次阈值的词语作为共现词,将所述共现词中的一个或多个作为所述第k组共现词。
所述频次阈值可以根据实际情况设置,比如可以为0.2,比如,100个历史搜索文本中,某一个词语出现了10次,则其出现频次为10/100小于0.2,该词语不是共现词;若某一个词语出现了34次,其出现频次为34/100,大于0.2,该词语可以作为共现词。
另外,需要指出的是,将所述共现词中的一个或多个作为所述第k组共现词,可以指的是,若当前查找出来的共现词为多个,可以分别将每一个共现词作为一组共现词;还可以将多个共现词中的两个或三个或更多作为一组共现词。所述第k组共现词可以为上述多组共现词中任意之一。
举例来说,所述第j个样本集包含100条历史搜索文本,其中“词语a”在所述100条历史搜索文本的分词结果中出现了30次,“词语b”出现了20次,剩余词语出现的词语较少,则“词语a”可以为第k组共现词。
再举例来说,所述第j个样本集包含100条历史搜索文本,其中“词语a”在所述100条历史搜索文本的分词结果中出现了30次,“词语b”出现了30次,剩余词语出现的词语较少,则“词语a”以及“词语b”可以共同作为第k组共现词。
所述将所述第j个样本集中包含所述第k组共现词的P个历史搜索文本作为第k个子样本集,具体可以包括:遍历所述第j个样本集包含的所述L个历史搜索文本,按照所述第k组共现词将所述L个历史搜索文本进行数据分桶,得到包含所述第k组共现词的P个历史搜索文本的单桶数据,将该单通数据成为第k个子样本集。
所述基于所述第k个子样本集的所述P个历史搜索文本分别对应的分词结果确定除所述第k组共现词之外的第一类词语,包括:从所述第k个子样本集的所述P个历史搜索文本分别对应的分词结果中,获取除所述第k组共现词之外的其他词语;基于所述其他词语的相似度,从所述其他词语中选择所述第一类词语。
其中,所述相似度的确定方式可以是基于编辑距离和/或字义相似度来确定的。所述编辑距离可以指的是两个词语之间,由一个转成另一个所需的最少编辑操作次数。所述字义相似度可以为基于字义识别模型得到的,比如,可以将两个其他词语输入所述字义识别模型,得到所述字义识别模型输出的识别结果,若识别结果为真,可以表征两个其他词语相似,否则即为不相似。
示例性的,所述基于所述其他词语的相似度,从所述其他词语中选择所述第一类词语,可以包括:将所述其他词语中相同的词语的出现次数统计,将出现次数最多的相同的词语,作为所述第一类词语。其中,所述相同的词语可以指的前述编辑距离为0。举例来说,P为30,即第k个子样本集中包含30个历史搜索文本,除第k组共现词之外30个历史搜索文本还包括有其他词语,比如,可以有词语A、词语B以及词语C等等,其中,词语A出现了20次,词语B出现了1次,词语C出现了15次,则词语A可以为出现次数最多的相同词语,该词语A即为所述第一类词语。
基于所述第k组共现词以及所述第一类词语,确定第k组候选模板、以及所述第k组候选模板中各个候选模板的词槽中的初始词语,具体可以包括:
基于所述第k组共现词以及所述第一类词语,确定所述第k组候选模板中每一个候选模板中的一个或多个词槽;并且确定所述每一个候选模板中每一个词槽中的初始词语。
举例来说,一个候选模板为WD1WD2W,其中,D1中的初始词语可以为共现词,D2中的初始词语可以为所述第一类词语。
基于所述第j个样本集中的所述L个历史搜索文本分别对应的分词结果、以及所述第k组候选模板中所述各个候选模板的词槽中的初始词语,确定所述第k组候选模板中所述各个候选模板的所述词槽中分别包含的所述候选同类词语,具体来说:
遍历所述第j个样本集中的所述L个历史搜索文本,从所述L个历史搜索文本中搜索与所述每一个候选模板中的每一个词槽中的初始词语类别相同的候选词语,将该候选词语添加至对应的所述词槽中,最终得到所述每一个候选模板中每一个词槽中包含的一个或多个候选同类词语。
本实施例提供的方案中,模板识别的处理可以为使用Snowball(雪球)的思路。提供一种示例性的说明,可以包括:
将多个样本集中的第j个样本集中的所述L个历史搜索文本做分词处理,得到所述第j个样本集包含的所述L个历史搜索文本分别对应的分词结果。这里,可以将所述第j个样本集包含的所述L个历史搜索文本分别对应的分词结果中的每一个分词作为一个实体。
遍历所述第j个样本集,查找包含有第k组共现词(或可以称为共同/共现实体)的历史搜索文本进行数据分桶;也就是得到第k个子样本集。比如,将所述L个历史搜索文本中有共现词A的放在一个分桶,有共现词B的放在一个分桶,有共现词A+共现词B的放在一个分桶,需要理解的是,不同组的共现词所对应的分桶中可能存在部分历史搜索文本是相同的。
还需要指出的是,在寻找共现词时可以依次以1个共同词、2个共现词、3个共现词进行处理,在使用不同数量的共现词得到候选的候选模板的时候可以分别对应候选模板W-D-W、W-D-W-D-W、W-D-W-D-W-D-W,当然,一组共现词可以得到的候选模板的数量可以为一个也可以为多个,本实施例不做限定。
基于所述第k组共现词所对应的第k个子样本集(即第k组共现词所对应的单桶数据)中包含的P个历史搜索文本所对应的分词结果,分析所述P个历史搜索文本所对应的分词结果中除所述第k组共现词(或单边实体)以外的文本的相似程度,找到共同范式作为第k组候选模板。
利用所述第k组候选模板遍历所述第j个样本集,从所述第j个样本集中包含的所述L个历史搜索文本中寻找与所述第k组共现词相同类别的词语(或称为同类实体);将所述与所述第k组共现词相同类别的词语添加至所述第k组候选模板的对应的词槽中。
再重复,遍历所述第j个样本集,查找包含有第k+1组共现词(或可以称为共同/共现实体)的历史搜索文本进行数据分桶;也就是得到第k+1个子样本集。后续的处理与前述第k组共现词的处理是相同的,不做赘述。
在上述处理中,还会记录每一个候选模板匹配到历史搜索文本的频次,基于该频次确定所述每一个候选模板的模板置信度;还会记录每一个候选模板在匹配到的历史搜索文本的情况下,所述候选模板中的每一个候选同类词语出现的频次,基于该频次确定所述每一个候选同类词语的词语置信度。根据置信度得分给出候选集,也就是基于所述候选模板的模板置信度确定所述第j个样本集相关的目标模板;基于所述目标模板的词槽中包含的候选同类词语的词语置信度,确定所述目标模板中的词槽包含的同类词语。
举例来说,假设第j个样本集为点击了会议室寻址站点的一批7个历史搜索文本分别如下:会议室A怎么走;会议室A在哪;会议室B在哪;会议室B位置;会议室A的位置;会议室C;会议室A。
对上述7个历史搜索文本进行分词,分词结果如下:
会议室A怎么走-->会议室A/怎么/走
会议室A在哪-->会议室A/在哪
会议室B在哪-->会议室B/在哪
会议室B位置-->会议室B/位置
会议室A位置-->会议室A/位置
会议室C-->会议室C
会议室A-->会议室A
首先可以找到一个出现频次最高的词语作为第1组共现词,即会议室A;
遍历第j个样本集,将包含会议室A的历史搜索文本进行聚类,得到4个历史搜索文本组成的第1个子样本集。
通过该第1个子样本集发现4个历史搜索文本中除了[会议室A]以外文本的有[位置]、[在哪]、[怎么走];由于这三个词的出现频次相同,可以分别作为第一类词语进行后续处理。
得到候选模板可以包括有两个一个为:WDW,D=[会议室A];另一个为WD1WD2W,其中D1=[会议室A],D2=[位置][在哪]、[怎么走]。
基于上述候选模板对所述第j个样本集包含的7个历史搜索文本进行遍历,得到D1的同类词语可以包括会议室B。
最终,通过上述第j个样本集,可以得到结果为:
目标模板1:W-D-W,D=[会议室A 4/6、会议室B 2/6],模板置信度=6/7;其中“会议室A 4/6”中的“4/6”为“会议室A”这个候选同类词语的词语置信度。
目标模板2:W-D1-W-D2-W,D1=[会议室A、会议室B],D2=[位置、在哪、怎么走],模板置信度=5/7。
通过采用上述方案,就可以基于具备点击资源的历史搜索文本进行样本集的生成,进而根据样本集中包含的历史搜索文本确定对应的目标模板以及目标模板中的词槽所包含的同类词语。如此,通过自动的对历史搜索样本及其对应的点击资源进行分析,最终得到目标模板以及其词槽中的同类词语,可以减少模板生成的处理中人为因素的影响,保证最终生成模板的准确性以及生成效率,为后续使用模板进行模板树以及词槽树的更新或构建以及进行预测等处理也更加准确以及高效。
完成上述处理之后,所述方法还包括:基于所述N个样本集分别相关的所述目标模板更新模板树;基于所述N个样本集分别相关的所述目标模板的所述词槽中包含的所述同类词语更新词槽树。
也就是说,将全部样本集中每一个样本集对应的全部目标模板均用于构建或更新所述模板树;并且,将全部目标模板中的全部词槽包含的全部同类词语用于构建或更新所述词槽树。
所述目标模板为文本表述模板,可以表示搜索文本所对应的意图。比如,一个模板A包括“[城市]到[城市]的[交通方式]”就是一个具有购票意图的常见模板。
所述目标模板中包含有一个或多个词槽;其中,所述一个或多个词槽中每一个词槽包含相同类别的一个或多个词语,或者将每一个词槽中的相同类别的一个或多个词语称为该词槽对应的词典。需要理解的是,目标模板中包含的每一个词槽,具体可以称为同类词语的词槽,关于词槽的词语类别,可以是根据词槽中包含的同类词语设置的。
比如,上述模板A“[城市]到[城市]的[交通方式]”中的[城市]、[交通方式]即为词槽;词槽[城市]的词典可以包括:北京,上海,承德,等等,这里不做穷举。
基于本实施例得到的全部目标模板,可以构建或更新模板树。
所述模板树为:将模板以字典(trie)树的形式进行组装得到的;所述词槽树可以为:将词槽以trie树的形式进行组装得到的。
基于字典(trie)树来实现模式匹配的处理中,字典(trie)树中每一个节点代表状态,叶子节点代表模板匹配成功。节点之间的边代表转移条件。若转移条件成功匹配当前字符串,则从当前状态的节点进入该前缀所对应的边(或转移条件)所指向的下一状态的节点。
对所述词槽树进行说明,所述词槽树中的每一个节点代表一个状态:根节点代表初始状态,叶节点代表一次成功的匹配,而中间节点则代表匹配的过程的中间状态。从一个节点到其子节点的边,称为状态转移条件。这里的状态转移条件为一个词语中的单个汉字或字符。
假设当前词典中包含的词语如下:
[D:city](即[D:城市],表示城市类词语的词槽):北京,北京西,承德
[D:transportation](即[D:交通工具],表示交通工具类词语的词槽):火车
[D:到]:到
[D:的]:的
基于以上词典中包含的词语构建出的词槽树即如图3所示:
北京:1-2-7
北京西:1-2-7-10
承德:1-3-8
到:1-4
的:1-5
火车:1-6-9。
并且,通过图3还可以看出,在结束叶子节点中,还会包含有该词语所对应的词槽,具体来说对应的为一类词语的词槽。
所述模板树和词槽树的构建原理一致。假设一个目标模板为:[D:city][D:到][D:city][D:的][D:transportation];则基于该目标模板构建出的字典树中的一个路径为图4中所示的1-2-5-8-10-11。在基于目标模板更新或构建模板树的处理中,将每一个词语类型的词槽依次作为一个转移条件执行下一个状态节点,直至最后的结束节点。需要指出的是,在结束节点还设置有该目标模板所对应的意图,该意图可以是基于所述目标模板中包含的多个词语类型所分别对应的词槽来确定的。比如,图4中节点11中有该目标模板的最终意图为——买票意图intention(意图)=[@BUY_TICKETS](买票)。
通过采用上述方案,就可以基于具备点击资源的历史搜索文本进行样本集的生成,进而根据样本集中包含的历史搜索文本确定对应的目标模板以及目标模板中的词槽所包含的同类词语,并进而基于目标模板以及同类词语更新模板树以及词槽树。如此,通过自动的对历史搜索样本及其对应的点击资源进行分析,最终得到目标模板以及其词槽中的同类词语,可以减少模板生成的处理中人为因素的影响,保证最终生成模板的准确性以及生成效率,并且基于目标模板以及同类词语更新模板树以及词槽,也可以使得模板树以及词槽树适用的范围可以较快的更新,使得模板树以及词槽树可以更加准确以及高效进行意图识别。
进一步地,本实施例提供的方案中,所述方法还包括:在接收到当前搜索文本的情况下,基于所述词槽树以及所述模板树确定所述当前搜索文本所对应的意图识别结果。
基于所述词槽树以及所述模板树确定所述当前搜索文本所对应的意图识别结果的匹配过程分为两个层次:第一层是模板树中的匹配,第二层是词库中的匹配。
可以由模板树的任意一个节点(比如可以是根节点或叶子节点)触发进入所述词槽树的根节点,获取所述词槽树返回的匹配结果;在所述词槽树返回的匹配结果与所述模板树的当前节点的转移条件匹配的情况下,进入模板树的下一个节点。如图5所示,从模板树的节点1,也就是根节点,然后触发进入词槽树的根节点,直至得到所述词槽树返回的第一匹配结果;在满足模板树节点1的目标转移条件的情况下,可以进入模板树的节点2;然后触发进入词槽树的根节点,直至得到所述词槽树返回的第二匹配结果;在所述词槽树本次返回的匹配结果满足模板树节点2的目标转移条件的情况下,可以进入模板树的节点3;以此类推,不做穷举。
具体的,当前处于所述模板树的第y个节点的情况下(y为大于等于1的整数),处理过程可以包括:
进入所述词槽树的根节点,从当前搜索文本的当前剩余字符中获取当前待匹配字符,基于当前待匹配字符与所述词槽树中的根节点的至少一个转移条件进行匹配;
在与至少一个转移条件中的目标转移条件匹配的情况下,进入该目标转移条件所对应的下一个节点;在所述词槽树的下一个节点指示有该词槽的词语类型的情况下,保存该词槽的词语类型;
在与至少一个转移条件中的目标转移条件不匹配的情况下,返回所述模板树的第y个节点。
所述模板树的第y个节点可以为所述模板树中的任意一个节点,这里不对每一个节点所对应的处理一一进行赘述。
进一步地,在与至少一个转移条件中的目标转移条件匹配的情况下,进入该目标转移条件所对应的下一个节点之后,还可以包括:
将所述下一个节点作为当前节点;
再次从当前搜索文本的当前剩余字符中获取当前待匹配字符,基于当前待匹配字符与所述词槽树中的当前节点的至少一个转移条件进行匹配。
以此类推,直至得到当前搜索文本中全部字符的处理,最终可以得到与所述模板树的目标路径的匹配结果。
需要指出的是,所述模板树的所述目标路径可以包括有至少一个转移状态,以及意图识别结果。另外,还可以包括:每一个转移状态所对应的具体词语。
示例性的,结合图3、4进行说明,假设当前搜索文本为:“北京西到承德的火车”,整个匹配流程如下:
首先进入所述模板树的根节点1;进入所述词槽树的根节点1;转移条件“北”,进入节点2;转移条件“京”,进入节点7,匹配出“北京”,即[D:city];转移条件“西”,进入节点10,匹配出“北京西”,即[D:city];“到”并非转移条件,终止,退出所述词槽树,返回所述模板树;
在所述模板树匹配目标转移条件:“北京”为[D:city],进入所述模板树的下一节点,待匹配字符串为“西到承德的火车”;进入所述词槽树的根节点1;“西”并非转移条件,终止,退出所述词槽树,返回所述模板树的根节点1;
在所述模板树匹配目标转移条件:“北京西”为[D:city],进入所述模板树的下一节点;
此时,所述当前搜索词的剩余待匹配字符串为“到承德的火车”;再次进入所述词槽树的根节点1;匹配到所述词槽树中的目标转移条件“到”,进入下一节点4,匹配出“到”,即[D:到];“承”并非转移条件,终止,退出所述词槽树,返回所述模板树;
在所述模板树匹配目标转移条件:“到”为[D:到],进入所述模板树的下一节点;此时,所述当前搜索词的剩余待匹配字符串为“承德的火车”。
重复上述的过程,直到状态转移至叶子节点。最后所述模板树输出的匹配结果为:[D:city]:北京西,[D:到]:到,[D:city]:承德,[D:的]:的,[D:transportation]:火车。
还需要补充说明的是,在上述模板树以及词槽树还可以为了满足工具的泛化性需求,增加通配符识别功能以及函数识别功能,比如可以包括有W(通配符)语法以及F(函数)语法。
分别来说,W(通配符)语法形式如下:[W:x1-x2],表示匹配任意x1-x2个字节字符;其中,x1小于x2,均为正整数。
比如,[W:2-10],表示匹配任意2-10个字节字符。
通过使用该W(通配符)语法,可以在走模板树的每个节点时,设当前搜索文本的剩余字符长度为长度-1,如果这个节点上有通配符[W:2-10],则截取2-10长度后,再分别递归遍历。
F(函数)语法中的函数形式即匹配能被对应的函数识别的字符串。如:[F:num]匹配数字类文本。
使用该F(函数)语法,可以在走模板树的每个节点时,如果这个节点上有通配符[F:func],则截取给定范围长度或直到句尾长度的文本,分别用该函数func递归遍历。比如,可以是调用该通配符[F:func]中的函数从读取的词语开始在当前搜索文本中进行识别,如果识别结果满足预设的函数要求,则确定两者匹配。
本实施例提供的上述方案,可以通过候选模板的模板置信度、以及候选同类词语的词语置信度进行初步过滤,得到目标模板以及目标同类词语;然后可以进行人工校验,并根据目标模板对来自的样本集的点击资源的相关信息确认对应意图;进一步地,可以基于不同目标模板所对应的意图,设计前端展示效果和交互样式;最终进行上线测试,比如,可以以点击次数来确定是否满足要求,假设意图识别较为准确,那么用户可以通过较少的点击次数就可以找到所需的目标资源,因此,可以通过某一次搜索的过程中用户的点击次数来对本次更新或构建的模板树以及词槽树的准确性进行评估。
可见,通过采用上述方案,就可以模板树以及词槽树对当前搜索文本进行意图识别。如此,由于模板树以及词槽树均基于前述目标模板以及目标同类词语更新或构建,其适用的范围可以更新较快,因此使得模板树以及词槽树对当前搜索文本进行识别可以更加准确以及高效进行意图识别。
根据本申请的实施例的第二方面,本申请还提供了一种模板生成装置,如图6所示,包括:
信息获取模块301,用于获取M个历史搜索文本以及所述M个历史搜索文本分别对应的点击资源;M为大于等于1的整数;
聚类模块302,用于基于所述M个历史搜索文本分别对应的所述点击资源的相关信息对所述M个历史搜索文本进行聚类,得到N个样本集;N为大于等于1的整数;
生成模块303,用于基于所述N个样本集中分别包含的多个历史搜索文本,确定所述N个样本集分别相关的目标模板以及所述目标模板的词槽中包含的同类词语。
其中,所述聚类模块302,用于基于所述M个历史搜索文本分别对应的所述点击资源的相关信息对所述M个历史搜索文本进行聚类,得到K个候选样本集;K为大于等于N的整数;从所述K个候选样本集中,选取所述N个样本集。
所述聚类模块302,用于执行以下至少之一:
对所述K个候选样本集中的第i个候选样本集中包含的历史搜索文本的数量进行统计,在所述历史搜索文本的数量达到第一预设数量的情况下,将所述第i个候选样本集作为所述N个样本集中之一;i为大于等于1且小于等于K的整数;
对所述K个候选样本集中的第i个候选样本集中包含的目标类型的历史搜索文本的数量进行统计,在所述目标类型的历史搜索文本的数量达到第二预设数量的情况下,将所述第i个候选样本集作为所述N个样本集中之一:
获取所述K个候选样本集中的第i个候选样本集中包含的历史搜索文本所关联的用户标识,对所述历史搜索文本所关联的用户标识去重后得到用户标识的数量,在所述用户标识的数量达到第三预设数量的情况下,将所述第i个候选样本集作为所述N个样本集中之一。
所述生成模块303,用于基于所述N个样本集中的第j个样本集包含的L个历史搜索文本,确定所述第j个样本集相关的候选模板以及所述候选模板的词槽中包含的候选同类词语;j为大于等于1且小于等于N的整数;L为大于等于1的整数;从所述候选模板中选取模板置信度大于模板置信度阈值的候选模板作为所述第j个样本集相关的目标模板;以及从所述第j个样本集相关的所述目标模板的所述词槽中包含的所述候选同类词语中选取词语置信度大于词语置信度阈值的候选同类词语作为所述目标模板的所述词槽中包含的所述同类词语。
所述生成模块303,用于基于所述第j个样本集包含的所述L个历史搜索文本分别对应的分词结果,确定第k组共现词;k为大于等于1的整数;将所述第j个样本集中包含所述第k组共现词的P个历史搜索文本作为第k个子样本集;P为大于等于1且小于等于L的整数;基于所述第k个子样本集的所述P个历史搜索文本分别对应的分词结果确定除所述第k组共现词之外的第一类词语,基于所述第k组共现词以及所述第一类词语,确定第k组候选模板以及所述第k组候选模板中各个候选模板的词槽中的初始词语;基于所述第j个样本集中的所述L个历史搜索文本分别对应的分词结果、以及所述第k组候选模板中所述各个候选模板的词槽中的初始词语,确定所述第k组候选模板中所述各个候选模板的所述词槽中分别包含的所述候选同类词语。
在图6的基础上,如图7所示,本实施例提供的所述装置,还包括:
更新模块304,用于基于所述N个样本集分别相关的所述目标模板更新模板树;基于所述N个样本集分别相关的所述目标模板的词槽中包含的同类词语更新词槽树。
所述装置还包括:意图识别模块305,用于在接收到当前搜索文本的情况下,基于所述词槽树以及所述模板树确定所述当前搜索文本所对应的意图识别结果。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图8示出了可以用来实施本公开的实施例的示例电子设备500的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或要求的本公开的实现。
如图8所示,电子设备500包括计算单元501,其可以根据存储在只读存储器(ROM)502中的计算机程序或者从存储单元508加载到随机访问存储器(RAM)503中的计算机程序来执行各种适当的动作和处理。在RAM 503中,还可存储设备500操作所需的各种程序和数据。计算单元501、ROM 502以及RAM 503通过总线504彼此相连。输入输出(I/O)接口505也连接至总线504。
电子设备500中的多个部件连接至I/O接口505,包括:输入单元506,例如键盘、鼠标等;输出单元507,例如各种类型的显示器、扬声器等;存储单元508,例如磁盘、光盘等;以及通信单元509,例如网卡、调制解调器、无线通信收发机等。通信单元509允许电子设备500通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元501可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元501的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元50执行上文所描述的各个方法和处理,例如模板生成方法。例如,在一些实施例中,模板生成方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元508。在一些实施例中,计算机程序的部分或者全部可以经由ROM 502和/或通信单元509而被载入和/或安装到电子设备500上。当计算机程序加载到RAM 503并由计算单元501执行时,可以执行上文描述的模板生成方法的一个或多个步骤。备选地,在其他实施例中,计算单元501可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行模板生成方法。
本文中以上描述的***和技术的各种实施方式可以在数字电子电路***、集成电路***、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上***的***(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程***上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储***、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储***、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行***、装置或设备使用或与指令执行***、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体***、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的***和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入、或者触觉输入来接收来自用户的输入。
可以将此处描述的***和技术实施在包括后台部件的计算***(例如,作为数据服务器)、或者包括中间件部件的计算***(例如,应用服务器)、或者包括前端部件的计算***(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的***和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算***中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将***的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机***可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (16)
1.一种模板生成方法,包括:
获取M个历史搜索文本以及所述M个历史搜索文本分别对应的点击资源;M为大于等于1的整数;
基于所述M个历史搜索文本分别对应的所述点击资源的相关信息对所述M个历史搜索文本进行聚类,得到N个样本集;N为大于等于1的整数;
基于所述N个样本集中分别包含的多个历史搜索文本,确定所述N个样本集分别相关的目标模板以及所述目标模板的词槽中包含的同类词语。
2.根据权利要求1所述的方法,其中,所述基于所述M个历史搜索文本分别对应的所述点击资源的相关信息对所述M个历史搜索文本进行聚类,得到N个样本集,包括:
基于所述M个历史搜索文本分别对应的所述点击资源的相关信息对所述M个历史搜索文本进行聚类,得到K个候选样本集;K为大于等于N的整数;
从所述K个候选样本集中,选取所述N个样本集。
3.根据权利要求2所述的方法,其中,所述从所述K个候选样本集中,选取所述N个样本集,包括以下至少之一:
对所述K个候选样本集中的第i个候选样本集中包含的历史搜索文本的数量进行统计,在所述历史搜索文本的数量达到第一预设数量的情况下,将所述第i个候选样本集作为所述N个样本集中之一;i为大于等于1且小于等于K的整数;
对所述K个候选样本集中的第i个候选样本集中包含的目标类型的历史搜索文本的数量进行统计,在所述目标类型的历史搜索文本的数量达到第二预设数量的情况下,将所述第i个候选样本集作为所述N个样本集中之一:
获取所述K个候选样本集中的第i个候选样本集中包含的历史搜索文本所关联的用户标识,对所述历史搜索文本所关联的用户标识去重后得到用户标识的数量,在所述用户标识的数量达到第三预设数量的情况下,将所述第i个候选样本集作为所述N个样本集中之一。
4.根据权利要求1所述的方法,其中,所述基于所述N个样本集中分别包含的多个历史搜索文本,确定所述N个样本集分别相关的目标模板以及所述目标模板的词槽中包含的同类词语,包括:
基于所述N个样本集中的第j个样本集包含的L个历史搜索文本,确定所述第j个样本集相关的候选模板以及所述候选模板的词槽中包含的候选同类词语;j为大于等于1且小于等于N的整数;L为大于等于1的整数;
从所述候选模板中选取模板置信度大于模板置信度阈值的候选模板作为所述第j个样本集相关的目标模板;以及从所述第j个样本集相关的所述目标模板的所述词槽中包含的所述候选同类词语中选取词语置信度大于词语置信度阈值的候选同类词语,作为所述目标模板的所述词槽中包含的所述同类词语。
5.根据权利要求4所述的方法,其中,所述基于所述N个样本集中的第j个样本集包含的L个历史搜索文本,确定所述第j个样本集相关的候选模板以及所述候选模板的词槽中包含的候选同类词语,包括:
基于所述第j个样本集包含的所述L个历史搜索文本分别对应的分词结果,确定第k组共现词; k为大于等于1的整数;
将所述第j个样本集中包含所述第k组共现词的P个历史搜索文本作为第k个子样本集;P为大于等于1且小于等于L的整数;
基于所述第k个子样本集的所述P个历史搜索文本分别对应的分词结果确定除所述第k组共现词之外的第一类词语,基于所述第k组共现词以及所述第一类词语,确定第k组候选模板以及所述第k组候选模板中各个候选模板的词槽中的初始词语;
基于所述第j个样本集中的所述L个历史搜索文本分别对应的分词结果、以及所述第k组候选模板中所述各个候选模板的词槽中的初始词语,确定所述第k组候选模板中所述各个候选模板的所述词槽中分别包含的所述候选同类词语。
6.根据权利要求1-5任一项所述的方法,其中,所述方法还包括:
基于所述N个样本集分别相关的所述目标模板更新模板树;基于所述N个样本集分别相关的所述目标模板的所述词槽中包含的所述同类词语更新词槽树。
7.根据权利要求6所述的方法,其中,所述方法还包括:
在接收到当前搜索文本的情况下,基于所述词槽树以及所述模板树确定所述当前搜索文本所对应的意图识别结果。
8.一种模板生成装置,包括:
信息获取模块,用于获取M个历史搜索文本以及所述M个历史搜索文本分别对应的点击资源;M为大于等于1的整数;
聚类模块,用于基于所述M个历史搜索文本分别对应的所述点击资源的相关信息对所述M个历史搜索文本进行聚类,得到N个样本集;N为大于等于1的整数;
生成模块,用于基于所述N个样本集中分别包含的多个历史搜索文本,确定所述N个样本集分别相关的目标模板以及所述目标模板的词槽中包含的同类词语。
9.根据权利要求8所述的装置,其中,所述聚类模块,用于基于所述M个历史搜索文本分别对应的所述点击资源的相关信息对所述M个历史搜索文本进行聚类,得到K个候选样本集;K为大于等于N的整数;
从所述K个候选样本集中,选取所述N个样本集。
10.根据权利要求9所述的装置,其中,所述聚类模块,用于执行以下至少之一:
对所述K个候选样本集中的第i个候选样本集中包含的历史搜索文本的数量进行统计,在所述历史搜索文本的数量达到第一预设数量的情况下,将所述第i个候选样本集作为所述N个样本集中之一;i为大于等于1且小于等于K的整数;
对所述K个候选样本集中的第i个候选样本集中包含的目标类型的历史搜索文本的数量进行统计,在所述目标类型的历史搜索文本的数量达到第二预设数量的情况下,将所述第i个候选样本集作为所述N个样本集中之一:
获取所述K个候选样本集中的第i个候选样本集中包含的历史搜索文本所关联的用户标识,对所述历史搜索文本所关联的用户标识去重后得到用户标识的数量,在所述用户标识的数量达到第三预设数量的情况下,将所述第i个候选样本集作为所述N个样本集中之一。
11.根据权利要求8所述的装置,其中,所述生成模块,用于基于所述N个样本集中的第j个样本集包含的L个历史搜索文本,确定所述第j个样本集相关的候选模板以及所述候选模板的词槽中包含的候选同类词语;j为大于等于1且小于等于N的整数;L为大于等于1的整数;从所述候选模板中选取模板置信度大于模板置信度阈值的候选模板作为所述第j个样本集相关的目标模板;以及从所述第j个样本集相关的所述目标模板的所述词槽中包含的所述候选同类词语中选取词语置信度大于词语置信度阈值的候选同类词语作为所述目标模板的所述词槽中包含的所述同类词语。
12.根据权利要求11所述的装置,其中,所述生成模块,用于基于所述第j个样本集包含的所述L个历史搜索文本分别对应的分词结果,确定第k组共现词;k为大于等于1的整数;将所述第j个样本集中包含所述第k组共现词的P个历史搜索文本作为第k个子样本集;P为大于等于1且小于等于L的整数;基于所述第k个子样本集的所述P个历史搜索文本分别对应的分词结果确定除所述第k组共现词之外的第一类词语,基于所述第k组共现词以及所述第一类词语,确定第k组候选模板以及所述第k组候选模板中各个候选模板的词槽中的初始词语;基于所述第j个样本集中的所述L个历史搜索文本分别对应的分词结果、以及所述第k组候选模板中所述各个候选模板的词槽中的初始词语,确定所述第k组候选模板中所述各个候选模板的所述词槽中分别包含的所述候选同类词语。
13.根据权利要求8-12任一项所述的装置,其中,所述装置还包括:
更新模块,用于基于所述N个样本集分别相关的所述目标模板更新模板树;基于所述N个样本集分别相关的所述目标模板的所述词槽中包含的所述同类词语更新词槽树。
14.根据权利要求13所述的装置,其中,所述装置还包括:
意图识别模块,用于在接收到当前搜索文本的情况下,基于所述词槽树以及所述模板树确定所述当前搜索文本所对应的意图识别结果。
15. 一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的方法。
16.一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011556696.8A CN112560425B (zh) | 2020-12-24 | 2020-12-24 | 模板生成方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011556696.8A CN112560425B (zh) | 2020-12-24 | 2020-12-24 | 模板生成方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112560425A CN112560425A (zh) | 2021-03-26 |
CN112560425B true CN112560425B (zh) | 2024-04-09 |
Family
ID=75034066
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011556696.8A Active CN112560425B (zh) | 2020-12-24 | 2020-12-24 | 模板生成方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112560425B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114153963A (zh) * | 2021-11-30 | 2022-03-08 | 北京达佳互联信息技术有限公司 | 文档推荐方法、装置、计算机设备及介质 |
CN114444514B (zh) * | 2022-02-08 | 2023-01-24 | 北京百度网讯科技有限公司 | 语义匹配模型训练、语义匹配方法及相关装置 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105095187A (zh) * | 2015-08-07 | 2015-11-25 | 广州神马移动信息科技有限公司 | 一种搜索意图识别方法及装置 |
CN109063221A (zh) * | 2018-11-02 | 2018-12-21 | 北京百度网讯科技有限公司 | 基于混合策略的查询意图识别方法和装置 |
CN110059163A (zh) * | 2019-04-29 | 2019-07-26 | 百度在线网络技术(北京)有限公司 | 生成模板的方法和装置、电子设备、计算机可读介质 |
CN110245348A (zh) * | 2019-05-17 | 2019-09-17 | 北京百度网讯科技有限公司 | 一种意图识别方法及*** |
CN111444722A (zh) * | 2020-03-06 | 2020-07-24 | 中国平安人寿保险股份有限公司 | 基于投票决策的意图分类方法、装置、设备及存储介质 |
CN111488426A (zh) * | 2020-04-17 | 2020-08-04 | 支付宝(杭州)信息技术有限公司 | 一种查询意图确定方法、装置及处理设备 |
WO2020161505A1 (en) * | 2019-02-08 | 2020-08-13 | All Street Research Limited | Improved method and system for text based searching |
CN111831821A (zh) * | 2020-06-03 | 2020-10-27 | 北京百度网讯科技有限公司 | 文本分类模型的训练样本生成方法、装置和电子设备 |
CN111950254A (zh) * | 2020-09-22 | 2020-11-17 | 北京百度网讯科技有限公司 | 搜索样本的词特征提取方法、装置、设备以及存储介质 |
-
2020
- 2020-12-24 CN CN202011556696.8A patent/CN112560425B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105095187A (zh) * | 2015-08-07 | 2015-11-25 | 广州神马移动信息科技有限公司 | 一种搜索意图识别方法及装置 |
CN109063221A (zh) * | 2018-11-02 | 2018-12-21 | 北京百度网讯科技有限公司 | 基于混合策略的查询意图识别方法和装置 |
WO2020161505A1 (en) * | 2019-02-08 | 2020-08-13 | All Street Research Limited | Improved method and system for text based searching |
CN110059163A (zh) * | 2019-04-29 | 2019-07-26 | 百度在线网络技术(北京)有限公司 | 生成模板的方法和装置、电子设备、计算机可读介质 |
CN110245348A (zh) * | 2019-05-17 | 2019-09-17 | 北京百度网讯科技有限公司 | 一种意图识别方法及*** |
CN111444722A (zh) * | 2020-03-06 | 2020-07-24 | 中国平安人寿保险股份有限公司 | 基于投票决策的意图分类方法、装置、设备及存储介质 |
CN111488426A (zh) * | 2020-04-17 | 2020-08-04 | 支付宝(杭州)信息技术有限公司 | 一种查询意图确定方法、装置及处理设备 |
CN111831821A (zh) * | 2020-06-03 | 2020-10-27 | 北京百度网讯科技有限公司 | 文本分类模型的训练样本生成方法、装置和电子设备 |
CN111950254A (zh) * | 2020-09-22 | 2020-11-17 | 北京百度网讯科技有限公司 | 搜索样本的词特征提取方法、装置、设备以及存储介质 |
Non-Patent Citations (2)
Title |
---|
A Scalable Automated System to Measure User Experience on Smart Devices;Zongyi (Joe) Liu.etc;《2019 IEEE International Conference on Consumer Electronics》;20190113;第第2019年卷卷;全文 * |
基于模板用户信息搜索行为和统计分析的共谋销量欺诈识别;王忠群;《现代图书情报技术》;20151130(第11期);第41-50页 * |
Also Published As
Publication number | Publication date |
---|---|
CN112560425A (zh) | 2021-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10997370B2 (en) | Hybrid classifier for assigning natural language processing (NLP) inputs to domains in real-time | |
CN105095204B (zh) | 同义词的获取方法及装置 | |
WO2020108063A1 (zh) | 特征词的确定方法、装置和服务器 | |
CN111967262A (zh) | 实体标签的确定方法和装置 | |
CN112395385B (zh) | 基于人工智能的文本生成方法、装置、计算机设备及介质 | |
CN112115232A (zh) | 一种数据纠错方法、装置及服务器 | |
CN112860866A (zh) | 语义检索方法、装置、设备以及存储介质 | |
CN112989208B (zh) | 一种信息推荐方法、装置、电子设备及存储介质 | |
CN113836314B (zh) | 知识图谱构建方法、装置、设备以及存储介质 | |
CN112560425B (zh) | 模板生成方法、装置、电子设备及存储介质 | |
CN112926308B (zh) | 匹配正文的方法、装置、设备、存储介质以及程序产品 | |
CN111783861A (zh) | 数据分类方法、模型训练方法、装置和电子设备 | |
CN111538815A (zh) | 一种文本查询方法、装置、设备及存储介质 | |
CN113850080A (zh) | 一种押韵词推荐方法、装置、设备及存储介质 | |
CN113220835A (zh) | 文本信息处理方法、装置、电子设备以及存储介质 | |
CN114595686A (zh) | 知识抽取方法、知识抽取模型的训练方法及装置 | |
CN113836316B (zh) | 三元组数据的处理方法、训练方法、装置、设备及介质 | |
CN112699237B (zh) | 标签确定方法、设备和存储介质 | |
CN113919424A (zh) | 文本处理模型的训练、文本处理方法、装置、设备和介质 | |
CN112948573B (zh) | 文本标签的提取方法、装置、设备和计算机存储介质 | |
CN115248890A (zh) | 用户兴趣画像的生成方法、装置、电子设备以及存储介质 | |
CN113609847A (zh) | 信息抽取方法、装置、电子设备及存储介质 | |
CN112925912A (zh) | 文本处理方法、同义文本召回方法及装置 | |
CN110705285A (zh) | 一种政务文本主题词库构建方法、装置、服务器及可读存储介质 | |
CN113807102B (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 |