CN114510942A - 获取实体词的方法、模型的训练方法、装置及设备 - Google Patents
获取实体词的方法、模型的训练方法、装置及设备 Download PDFInfo
- Publication number
- CN114510942A CN114510942A CN202210134381.7A CN202210134381A CN114510942A CN 114510942 A CN114510942 A CN 114510942A CN 202210134381 A CN202210134381 A CN 202210134381A CN 114510942 A CN114510942 A CN 114510942A
- Authority
- CN
- China
- Prior art keywords
- character
- entity
- entity word
- text
- training
- 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.)
- Pending
Links
Images
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/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
- G06F40/295—Named entity recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24133—Distances to prototypes
- G06F18/24137—Distances to cluster centroïds
- G06F18/2414—Smoothing the distance, e.g. radial basis function networks [RBFN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/254—Fusion techniques of classification results, e.g. of results related to same input data
- G06F18/256—Fusion techniques of classification results, e.g. of results related to same input data of results relating to different input data, e.g. multimodal recognition
-
- 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
- G06F40/216—Parsing using statistical methods
-
- 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
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- 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
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种获取实体词的方法、模型的训练方法、装置及设备,属于计算机技术领域。该获取实体词的方法包括:获取查询文本;提取查询文本的编码特征,基于编码特征和实体词约束信息,获取查询文本对应的第一实体词,实体词约束信息用于使获取的第一实体词为标准实体词集合中的实体词,标准实体词集合中的任一实体词用于召回至少一个应答数据。此种方法,直接根据查询文本的编码特征和实体词约束信息获取查询文本对应的实体词,获取查询文本对应的实体词的效率较高。查询文本对应的实体词为标准实体词集合中的实体词,无论查询文本表达是否准确,根据获取的实体词均能够召回应答数据,获取的实体词的可靠性较高。
Description
技术领域
本申请实施例涉及计算机技术领域,特别涉及一种获取实体词的方法、模型的训练方法、装置及设备。
背景技术
随着计算机技术的发展,能够召回查询文本对应的应答数据的应用程序或网页越来越多。在召回查询文本对应的应答数据的过程中,会先获取查询文本对应的实体词,然后根据获取的实体词召回相关的应答数据。
相关技术中,先识别出查询文本中存在的实体词,然后对识别出的口语化实体词进行同义词替换,得到替换实体词,将替换实体词以及识别出的非口语化实体词作为查询文本对应的实体词。
此种方式,需要经过实体词识别以及同义词替换才能够得到查询文本对应的实体词,流程较为复杂,获取实体词的效率较低。此外,查询文本对应的实体词是基于查询文本中存在的实体词得到的,获取的实体词的可靠性取决于查询文本的表达准确性,若查询文本的表达准确性较差,则获取的实体词的可靠性较差,根据获取的实体词可能无法召回应答数据。
发明内容
本申请实施例提供了一种获取实体词的方法、模型的训练方法、装置及设备,可用于提高获取实体词的效率以及获取的实体词的可靠性。所述技术方案如下:
一方面,本申请实施例提供了一种获取实体词的方法,所述方法包括:
获取查询文本;
提取所述查询文本的编码特征;
基于所述编码特征和实体词约束信息,获取所述查询文本对应的第一实体词,所述实体词约束信息用于使获取的第一实体词为标准实体词集合中的实体词,所述标准实体词集合中的任一实体词用于召回至少一个应答数据。
还提供了一种实体词获取模型的训练方法,所述方法包括:
获取训练样本,所述训练样本包括训练文本和所述训练文本对应的一个训练实体词;
调用实体词获取模型提取所述训练文本的编码特征;
基于所述编码特征和第一实体字符,获取字符库中的候选字符在所述第一实体字符下对应的预测概率;基于所述候选字符在所述第一实体字符下对应的预测概率以及所述候选字符与所述第一实体字符的匹配关系,获取所述第一实体字符对应的损失,所述第一实体字符为所述训练实体词中的任一实体字符;
基于所述训练实体词中的各个实体字符对应的损失,获取目标损失;利用所述目标损失对所述实体词获取模型进行训练,得到目标实体词获取模型。
另一方面,提供了一种获取实体词的装置,所述装置包括:
第一获取单元,用于获取查询文本;
第一提取单元,用于提取所述查询文本的编码特征;
第二获取单元,用于基于所述编码特征和实体词约束信息,获取所述查询文本对应的第一实体词,所述实体词约束信息用于使获取的第一实体词为标准实体词集合中的实体词,所述标准实体词集合中的任一实体词用于召回至少一个应答数据。
在一种可能实现方式中,所述第二获取单元,用于基于所述编码特征和起始字符,获取字符库中的候选字符在起始字符下对应的预测概率;基于所述候选字符在所述起始字符下对应的预测概率以及所述实体词约束信息,获取字符序列;响应于当前获取的字符序列不满足第一条件,基于所述编码特征和所述当前获取的字符序列,获取所述候选字符在所述当前获取的字符序列下对应的预测概率;基于所述候选字符在所述当前获取的字符序列下对应的预测概率以及所述实体词约束信息,获取更新后的字符序列;响应于所述更新后的字符序列满足所述第一条件,基于所述更新后的字符序列,获取所述第一实体词。
在一种可能实现方式中,所述当前获取的字符序列的数量为多个,所述第二获取单元,用于基于所述实体词约束信息,在所述候选字符中确定第一字符序列对应的约束字符,所述第一字符序列为所述当前获取的多个字符序列中的任一字符序列;获取所述约束字符在所述第一字符序列下对应的目标概率,将在所述第一字符序列下对应的目标概率满足第二条件的约束字符作为所述第一字符序列对应的匹配字符,所述约束字符在所述第一字符序列下对应的目标概率基于所述约束字符在所述第一字符序列下对应的预测概率得到;基于当前获取的各个字符序列对应的匹配字符,获取所述更新后的字符序列。
在一种可能实现方式中,所述约束字符的数量为至少一个,所述第二获取单元,用于响应于第一约束字符命中所述查询文本中的查询字符,将所述第一约束字符在所述第一字符序列下对应的预测概率与所述查询文本中被命中的查询字符对应的增强概率之和,作为所述第一约束字符在所述第一字符序列下对应的目标概率,所述第一约束字符为至少一个约束字符中的任一约束字符;响应于所述第一约束字符未命中所述查询文本中的查询字符,将所述第一约束字符在所述第一字符序列下对应的预测概率作为所述第一约束字符在所述第一字符序列下对应的目标概率。
在一种可能实现方式中,所述约束字符的数量为至少一个,所述第二获取单元,用于获取第一约束字符在所述第一字符序列下对应的增强概率,所述第一约束字符为至少一个约束字符中的任一约束字符;将所述第一约束字符在所述第一字符序列下对应的预测概率与所述第一约束字符在所述第一字符序列下对应的增强概率之和,作为所述第一约束字符在所述第一字符序列下对应的目标概率。
在一种可能实现方式中,所述第二获取单元,用于基于所述编码特征,获取所述第一约束字符在所述查询文本中的各个查询字符下分别对应的分类概率;基于所述各个查询字符在所述第一字符序列下分别对应的注意力权重,对所述第一约束字符在所述各个查询字符下分别对应的分类概率进行加权求和,得到所述第一约束字符在所述第一字符序列下对应的增强概率。
在一种可能实现方式中,所述第二获取单元,用于基于当前获取的各个字符序列对应的匹配字符,获取所述各个字符序列对应的候选序列;将所述各个字符序列对应的候选序列中满足选取条件的候选序列,作为所述更新后的字符序列。
在一种可能实现方式中,所述第一获取单元,还用于基于所述标准实体词集合中的各个实体词对应的字符序列,构建前缀树,将所述前缀树作为所述实体词约束信息。
在一种可能实现方式中,所述第一提取单元,用于调用目标实体词获取模型提取所述查询文本的编码特征;
所述第二获取单元,用于调用所述目标实体词获取模型基于所述编码特征和所述实体词约束信息,获取所述查询文本对应的第一实体词。
在一种可能实现方式中,所述第二获取单元,还用于获取所述第一实体词与所述查询文本的匹配结果;基于匹配结果满足第三条件的第一实体词,获取所述查询文本对应的应答数据。
还提供了一种实体词获取模型的训练装置,所述装置包括:
第三获取单元,用于获取训练样本,所述训练样本包括训练文本和所述训练文本对应的一个训练实体词;
第二提取单元,用于调用实体词获取模型提取所述训练文本的编码特征;
第四获取单元,用于基于所述编码特征和第一实体字符,获取字符库中的候选字符在所述第一实体字符下对应的预测概率;基于所述候选字符在所述第一实体字符下对应的预测概率以及所述候选字符与所述第一实体字符的匹配关系,获取所述第一实体字符对应的损失,所述第一实体字符为所述训练实体词中的任一实体字符;
第五获取单元,用于基于所述训练实体词中的各个实体字符对应的损失,获取目标损失;
训练单元,用于利用所述目标损失对所述实体词获取模型进行训练,得到目标实体词获取模型。
在一种可能实现方式中,所述第五获取单元,用于基于所述编码特征,获取所述候选字符在所述训练文本中的各个文本字符下分别对应的分类概率;基于所述候选字符在所述各个文本字符下分别对应的分类概率,获取所述候选字符在所述训练文本下对应的分类概率;基于所述候选字符在所述训练文本下对应的分类概率以及所述候选字符与参考字符集合的匹配关系,获取第一损失,所述参考字符集合为所述训练文本中的文本字符以及所述训练实体词中的实体字符构成的集合;基于所述第一损失以及所述各个实体字符对应的损失,获取所述目标损失。
另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条计算机程序,所述至少一条计算机程序由所述处理器加载并执行,以使所述计算机设备实现上述任一所述的获取实体词的方法或实体词获取模型的训练方法。
另一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条计算机程序,所述至少一条计算机程序由处理器加载并执行,以使计算机实现上述任一所述的获取实体词的方法或实体词获取模型的训练方法。
另一方面,还提供了一种计算机程序产品,所述计算机程序产品包括计算机程序或计算机指令,所述计算机程序或所述计算机指令由处理器加载并执行,以使计算机实现上述任一所述的获取实体词的方法或实体词获取模型的训练方法。
本申请实施例提供的技术方案至少带来如下有益效果:
本申请实施例提供的技术方案,直接根据查询文本的编码特征和实体词约束信息获取查询文本对应的实体词,无需执行实体词识别的操作,也无需执行同义词替换的操作,获取查询文本对应的实体词的效率较高。此外,在考虑实体词约束信息的基础上,能够保证获取的实体词为标准实体词集合中的实体词,无论查询文本表达是否准确,根据获取的实体词均能够召回应答数据,获取的实体词的可靠性较高。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种实施环境的示意图;
图2是本申请实施例提供的一种获取实体词的方法的流程图;
图3是本申请实施例提供的一种前缀树的示意图;
图4是本申请实施例提供的一种调用目标实体词获取模型获取第一实体词的过程的示意图;
图5是本申请实施例提供的一种第一步获取过程的示意图;
图6是本申请实施例提供的一种第一步获取过程的示意图;
图7是本申请实施例提供的一种实体词的获取过程的示意图;
图8是本申请实施例提供的一种实体词获取模型的训练方法的流程图;
图9是本申请实施例提供的一种实体词过滤模型的训练方法的流程图;
图10是本申请实施例提供的一种实体词过滤模型的训练过程的示意图;
图11是本申请实施例提供的一种获取实体词的装置的示意图;
图12是本申请实施例提供的一种实体词获取模型的训练装置的示意图;
图13是本申请实施例提供的一种服务器的结构示意图;
图14是本申请实施例提供的一种终端的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在示例性实施例中,本申请实施例提供的获取实体词的方法以及实体词获取模型的训练方法可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、辅助驾驶等。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,人工智能企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习、自动驾驶、智慧交通等几大方向。
自然语言处理(Nature Language Processing,NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。在文本处理的过程中,可以获取查询文本对应的实体词,以进一步根据查询文本对应的实体词召回相关的应答数据。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服、车联网、自动驾驶、智慧交通等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
图1示出了本申请实施例提供的实施环境的示意图。该实施环境包括:终端11和服务器12。
本申请实施例提供的获取实体词的方法可以由终端11执行,也可以由服务器12执行,还可以由终端11和服务器12共同执行,本申请实施例对此不加以限定。对于本申请实施例提供的获取实体词的方法由终端11和服务器12共同执行的情况,服务器12承担主要计算工作,终端11承担次要计算工作;或者,服务器12承担次要计算工作,终端11承担主要计算工作;或者,服务器12和终端11二者之间采用分布式计算架构进行协同计算。
本申请实施例提供的实体词获取模型的训练方法可以由终端11执行,也可以由服务器12执行,还可以由终端11和服务器12共同执行,本申请实施例对此不加以限定。对于本申请实施例提供的实体词获取模型的训练方法由终端11和服务器12共同执行的情况,服务器12承担主要计算工作,终端11承担次要计算工作;或者,服务器12承担次要计算工作,终端11承担主要计算工作;或者,服务器12和终端11二者之间采用分布式计算架构进行协同计算。
获取实体词的方法的执行设备与实体词获取模型的训练方法的执行设备可以相同,也可以不同,本申请实施例对此不加以限定。
在一种可能实现方式中,终端11可以是任何一种可与用户通过键盘、触摸板、触摸屏、遥控器、语音交互或手写设备等一种或多种方式进行人机交互的电子产品,例如,PC(Personal Computer,个人计算机)、手机、智能手机、PDA(Personal Digital Assistant,个人数字助手)、可穿戴设备、PPC(Pocket PC,掌上电脑)、平板电脑、智能车机、智能电视、智能音箱、智能语音交互设备、智能家电、车载终端等。服务器12可以是一台服务器,也可以是由多台服务器组成的服务器集群,或者是一个云计算服务中心。终端11与服务器12通过有线或无线网络建立通信连接。
本领域技术人员应能理解上述终端11和服务器12仅为举例,其他现有的或今后可能出现的终端或服务器如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。
基于上述图1所示的实施环境,本申请实施例提供一种获取实体词的方法,该获取实体词的方法由计算机设备执行,该计算机设备可以为终端11,也可以为服务器12,本申请实施例对此不加以限定。如图2所示,本申请实施例提供的获取实体词的方法可以包括如下步骤201和步骤202。
在步骤201中,获取查询文本。
查询文本是基于交互对象所提出的问题生成的用于从数据库中进行查询(query)的文本。该查询文本也可以称为问题文本。可选地,在生成查询文本时,可以直接将交互对象所提出的问题作为查询文本,也可以对交互对象所提出的问题进行处理后生成查询文本。示例性地,若交互对象基于文本提出问题,则可以直接将交互对象所提出的问题作为上述查询文本;若交互对象基于图像提出问题,则对问题进行图文转换处理,以生成上述查询文本。需要说明的一点是,上述交互对象只是一个泛称。可选地,该交互对象可以为单个人、多人组成的团体、自动提出问题的人工智能等,本申请实施例对此不加以限定。
示例性地,交互对象能够从搜索引擎的前端页面中提出问题,以使显示有该搜索引擎的前端页面的终端获取到问题。可选地,上述问题可以是交互对象所输入的问题,也可以是交互对象从候选问题中所选择的问题。
示例性地,对于计算机设备为终端的情况,终端可以通过基于交互对象所提出的问题生成查询文本来获取查询文本。对于计算机设备为服务器的情况,服务器可以通过接收终端发送的查询文本来获取查询文本,也可以通过基于终端发送的交互对象所提出的问题生成查询文本来获取查询文本,本申请实施例对此不加以限定。
本申请实施例对查询文本涉及的领域不加以限定,这可以根据实际的应用场景灵活调整。示例性地,实际的应用场景为医疗知识搜索场景,则查询文本涉及的领域为医疗领域;示例性地,实际的应用场景为教育知识搜索场景,则查询文本涉及的领域为教育领域。本申请实施例以查询文本涉及的领域为目标领域为例进行说明,该目标领域可以为医疗领域、教育领域等。
在示例性实施例中,为实现本申请实施例提供的获取实体词的方法,除需要获取查询文本外,还需要获取实体词约束信息。实体词约束信息用于将获取的实体词约束在标准实体词集合中,也即用于使获取的实体词为标准实体词集合中的实体词。实体词约束信息是基于标准实体词集合获取的。标准实体词集合为预先设定的由多个实体词构成的集合。示例性地,对于查询文本涉及的领域为目标领域的情况,标准实体词集合中的多个实体词均为目标领域的实体词。
实体词是实体对应的词语,实体是指客观存在并且相互之间存在区别的对象或事物。实体词可以包括多种类型,例如可以包括地名、机构名或者专有名词等中的至少一种。专有名词可以包括多种类型中的至少一种。例如。在医疗领域中,专有名词可以包括用于描述疾病的名词、用于描述症状的名词、用于描述药品的名词、用于描述检查的名词等,比如实体词可以为用于描述疾病的名词中的“肺结核”。
标准实体词集合中的任一实体词用于召回至少一个应答数据。应答数据是指为查询文本反馈的相关的数据,示例性地,应答数据还可以称为回答数据。标准实体词集合通过对应答数据库中的应答数据进行分析得到。示例性地,对于查询文本所涉及的领域为目标领域的情况,应答数据库为该目标领域对应的应答数据库。示例性地,应答数据库中的应答数据可以通过对网页进行抓取得到,或者从即时通信记录中提取得到,或者采用其他方式进行收集。应答数据的类型包括但不限于文本、音频、视频等。
在获取实体词约束信息之前,需要先获取标准实体词集合。在一种可能实现方式中,获取标准实体词集合的过程包括:从应答数据库中的应答数据中,提取至少一个候选实体词;统计至少一个候选实体词出现的次数;将出现的次数满足次数约束条件的候选实体词构成的集合作为标准实体词集合。
本申请实施例对提取至少一个候选实体词的方式不加以限定。示例性地,对应答数据库中的应答数据对应的文本进行分词,将各个分词中出现的属于目标领域的实体词均作为候选实体词。例如,以目标领域为医疗领域为例,则可以将各个分词中出现的医疗相关的实体词(如,用于描述疾病的名词、用于描述症状的名词、用于描述药品的名词等)均作为候选实体词。
需要说明的是,若应答数据的类型为文本,则应答数据对应的文本是指应答数据本身;若应答数据的类型为音频或视频等非文本类型,则应答数据对应的文本是指应答数据的描述文本,应答数据的描述文本用于对应答数据进行描述,由应答数据的上传者提供。
在获取至少一个候选实体词后,能够统计各个候选实体词在各个分词出现的次数,进而根据出现的次数对候选实体词进行过滤,以便得到标准实体词集。示例性地,根据出现的次数对候选实体词进行过滤的方式为:将出现的次数满足次数约束条件的候选实体词保留,删除出现的次数不满足次数约束条件的候选实体词,也就是说,将出现的次数满足次数约束条件的候选实体词构成的集合作为标准实体词集合。
次数约束条件用于对构成标准实体词集合的候选实体词的出现次数进行约束,次数约束条件根据经验设置,或者根据应用场景灵活调整,本申请实施例对此不加以限定。在示例性实施例中,一个候选实体词的出现的次数满足次数约束条件可以是指该候选实体词的出现的次数不小于次数阈值,次数阈值根据经验设置,或者根据应用场景灵活调整,本申请实施例对此不加以限定。在示例性实施例中,一个候选实体词的出现的次数满足次数约束条件可以是指在按照出现的次数从大到小的顺序对各个候选实体词进行排列的情况下,该候选实体词位于前K(K为不小于1的整数)位;或者,在按照出现的次数从小到大的顺序对各个候选实体词进行排列的情况下,该候选实体词位于后K位。
需要说明的是,以上所述获取标准实体词集合的过程仅为一种示例性描述,本申请实施例并不局限于此。示例性地,还可以将基于应答数据库中的应答数据获取的至少一个候选实体词构成的集合作为标准实体词集合。本申请实施例对标准实体词集合中的实体词的数量不加以限定,这与实际情况有关,示例性地,标准实体词集合中的实体词的数量为3.3万。在示例性实施例中,在获取标准实体词集合后,可以将标准实体词集合进行存储。
实体词约束信息根据标准实体词集合获取得到,在获取标准实体词集合后,可以进一步获取实体词约束信息。在一种可能实现方式中,实体词约束信息的获取方式包括:基于标准实体词集合中的各个实体词对应的字符序列,构建前缀树,将前缀树作为实体词约束信息。
标准实体词集合中的每个实体词均对应一个字符序列,不同的实体词对应的字符序列不同。一个字符序列由至少一个字符依次排列得到。不同的实体词对应的字符序列中的字符的数量可以相同,也可以不同,本申请实施例对此不加以限定。需要说明的是,本申请实施例对实体词对应的字符序列中的字符的类型不加以限定,示例性地,实体词对应的字符序列中的字符可以为中文字符,也可以为英文字符,还可以为特殊字符等。
在示例性实施例中,每个实体词对应的字符序列中的第一个字符为“[BOS]”,最后一个字符为“[EOS]”,中间字符为实体词中的实体字符。“[BOS]”和“[EOS]”为两个特殊字符,其中,“[BOS]”用于标识一个字符序列开始,“[EOS]”用于标识一个字符序列结束。示例性地,“[BOS]”可以称为起始字符,“[EOS]”可称为终止字符。示例性地,实体词“发烧”对应的字符序列为“[BOS]-发-烧-[EOS]”。
前缀树(Trie树),也称为前缀匹配树或者字典树。前缀树是一种可以用于字符序列等数据的匹配查询的树形结构。前缀树可以视为一种确定有限状态机。前缀树包含以下特点:a、前缀树的根节点不包含字符或者包含一个公共字符,除根节点外其他每个节点都只包含一个字符。b、从根节点到某一节点,路径上经过的字符按照先后顺序连接起来,即为该节点对应的字符序列。c、每个节点的子节点包含的字符都不同。
基于标准实体词集合中的各个实体词对应的字符序列,能够构建一个前缀树。示例性地,以标准实体词集合中的实体词的数量为三个,这三个实体词分别为“头疼”、“头晕”和“手麻”为例,实体词“头疼”对应的字符序列为“[BOS]-头-疼-[EOS]”,实体词“头晕”对应的字符序列为“[BOS]-头-晕-[EOS]”,实体词“手麻”对应的字符序列为“[BOS]-手-麻-[EOS]”,基于上述三个字符序列,能够构建得到如图3所示的前缀树。
示例性地,构建得到如图3所示的前缀树的过程包括:在根节点中存储公共字符“[BOS]”,选取任一个字符序列,如“[BOS]-头-疼-[EOS]”,在根节点的所有子节点中查询存储有该字符序列中的字符“头”的节点,查询不存在,则建立根节点的子节点(记作节点1),及节点1的子节点(记作节点2)和节点2的子节点(记作节点3),在节点1、节点2、节点3中分别存储字符“头”、字符“疼”、字符“[EOS]”。
再选取任意一个字符序列,如“[BOS]-头-晕-[EOS]”,在根节点的所有子节点中查询存储有字符“头”的节点,查询到上述节点1,此时继续在节点1的子节点中查询存储有字符“晕”的节点,查询不存在,则建立节点1的子节点(记作节点4),及节点4的子节点(记作节点5),在节点4、节点5中分别存储字符“晕”、字符“[EOS]”。选取最后一个字符序列“[BOS]-手-麻-[EOS]”,在根节点的所有子节点中查询存储有字符“手”的节点,查询不存在,则建立根节点的子节点(记作节点6),及节点6的子节点(记作节点7)和节点7的子节点(记作节点8,在节点6、节点7、节点8中分别存储字符“手”、字符“麻”、字符“[EOS]”。
对于前缀树中的每个节点,它的子节点代表从根节点到该节点的前缀的条件下,允许确定出的字符。示例性地,对于图3所示的前缀树,存储字符“头”的节点(节点1)的子节点(节点2和节点3)代表在前缀“[BOS]-头”的条件下,只能确定出字符“疼”和字符“晕”,从而能够将获取的实体词约束到标准实体词集合中的“头疼”和“头晕”这两个实体词中。
需要说明的是,将前缀树作为实体词约束信息的方式仅为一种示例性描述,本申请实施例并不局限于此,还可以通过其他方式获取实体词约束信息,只要获取的实体词约束信息能够用于将获取的实体词约束在标准实体词集合中即可。示例性地,将标准实体词集合中的各个实体词的对应字符序列的字符之间的先后顺序信息作为实体词约束信息。
第一实体词通过逐步解码的方式获取,下一步获取的结果基于上一步获取的结果得到,在获取第一实体词的过程中引入实体词约束信息的约束,能够防止获取无效实体词。
在步骤202中,提取查询文本的编码特征;基于编码特征和实体词约束信息,获取查询文本对应的第一实体词,实体词约束信息用于使获取的第一实体词为标准实体词集合中的实体词,标准实体词集合中的任一实体词用于召回至少一个应答数据。
实体词约束信息以及标准实体词集合的相关介绍参见步骤201中的相关内容,此处不再加以赘述。
在获取查询文本后,提取查询文本的编码特征,查询文本的编码特征用于对查询文本进行表征。示例性地,查询文本的编码特征的表示形式为向量或者矩阵等。在提取查询文本的编码特征之后,基于编码特征和实体词约束信息,获取查询文本对应的第一实体词。由于实体词约束信息用于使获取的第一实体词为标准实体词集合中的实体词,且标准实体词集合中的每个实体词均能够召回至少一个应答数据,所以根据获取第一实体词能够召回一个或多个应答数据,第一实体词的可靠性较高。
在示例性实施例中,该步骤202可以通过运行预先编辑的计算机程序实现,也可以通过调用目标实体词获取模型实现,本申请实施例对此不加以限定。本申请实施例以该步骤202通过调用目标实体词获取模型实现为例进行说明。也就是说,调用目标实体词获取模型提取查询文本的编码特征;调用目标实体词获取模型基于编码特征和实体词约束信息,获取查询文本对应的第一实体词。
目标实体词获取模型为训练得到的用于获取查询文本对应的实体词的模型,训练得到目标实体词获取模型的过程参见图8所示的实施例,此处暂不赘述。本申请实施例对目标实体词获取模型的类型不加以限定,示例性地,目标实体词获取模型是一种Seq2Seq(Sequence-To-Sequence,序列到序列)模型,Seq2Seq模型的输入是一个序列,输出也是一个序列。在一些实施例中,该Seq2Seq模型的架构基于Transformer(一种基于自注意力机制的模型)得到,例如,BERT(Bidirectional Encoder Representation From Transformers,基于转换器的双向编码表示)模型。
在示例性实施例中,目标实体词获取模型包括编码器和解码器两个部分,提取查询文本的编码特征的过程由目标实体词获取模型中的编码器实现,基于编码特征和实体词约束信息,获取查询文本对应的第一实体词的过程由目标实体词获取模型中的解码器实现。
在将查询文本输入目标实体词获取模型中后,目标实体词获取模型中的编码器对查询文本进行编码,得到查询文本的编码特征。在示例性实施例中,计算机设备将查询文本输入目标实体词获取模型是指计算机设备将查询文本中的查询字符(Token)的字符特征输入目标实体词获取模型。
查询字符的字符特征用于对查询字符进行表征,本申请实施例对查询字符的字符特征的确定方式不加以限定,示例性地,查询字符的字符特征是指查询字符的字向量(Token Embedding)和位置向量(Position Embedding)之和。字向量为查询字符的向量化表示,基于字向量提取算法得到,例如,字向量提取算法包括但不限于Word2Vec(Word toVector,词语表达为向量)算法、N-Gram(N元语法)算法等。位置向量用于表征查询字符在查询文本中所处的位置,通过对查询字符在查询文本中所处的位置进行向量化表示得到。
在示例性实施例中,计算机设备在将查询文本中的查询字符的字符特征输入目标实体词获取模型的同时,还将字符“[BOS]”和“[EOS]”的字符特征输入目标实体词获取模型。其中,字符“[BOS]”的字符特征位于查询文本中的第一个查询字符的字符特征之前,字符“[EOS]”的字符特征位于查询文本中的最后一个查询字符的字符特征之后。
目标实体词获取模型中的编码器包括至少一个编码层,在将查询文本输入目标实体词获取模型后,该至少一个编码层依次进行编码处理,得到查询文本的编码特征。示例性地,查询文本的编码特征包括查询文本中的每个查询字符的编码子特征,不同查询字符的编码子特征的维度相同,该维度可以根据经验设置,本申请实施例对此不加以限定。例如,查询文本的编码特征表示为H=h1,h2,…,hn,其中,n(n为不小于1的整数)为查询文本中的查询字符的数量,h1,h2,…,hn分别表示每个查询字符的编码子特征。示例性地,编码特征还可以包括字符“[BOS]”和“[EOS]”的编码子特征。
在得到查询文本的编码特征后,由解码器基于编码特征和实体词约束信息,获取查询文本对应的第一实体词。在一种可能实现方式中,第一实体词基于多步获取过程得到,每经过一步获取过程,均得到一个或多个字符序列。当前步获取的字符序列是在前一步获取的字符序列的基础上得到的。示例性地,不同步获取的字符序列的数量可以相同,该数量根据经验设置,或者根据应用场景灵活调整,例如,该数量可以为1,也可以为5。对于该数量为1的情况,每步均获取1个字符序列;对于该数量为5的情况,每步均获取5个字符序列。当然,在一些实施例中,不同步获取的字符序列的数量也可以不同。示例性地,获取查询文本对应的第一实体词的过程可以基于Beam Search(集束搜索)算法实现。
示例性地,以不同步获取的字符序列的数量均为1为例,调用目标实体词获取模型获取第一实体词的过程如图4所示。查询文本为“小儿发烧什么原因”,将查询文本以字符序列“[BOS]-小-儿-发-烧-什-么-原-因-[EOS]”的形式输入目标实体词获取模型中。在将查询文本输入目标实体词获取模型后,目标实体词获取模型中的编码器提取查询文本的编码特征410。目标实体词获取模型中的解码器基于编码特征410以及前缀树依次执行各步获取过程,直至得到字符序列“[BOS]-小-儿-发-烧-[EOS]”,基于该字符序列,能够获取第一实体词“小儿发烧”。示例性地,编码器中包括概率预测层,该概率预测层用于预测字符库中的候选字符对应的预测概率。
在一种可能实现方式中,基于编码特征和实体词约束信息,获取查询文本对应的第一实体词的过程包括以下步骤2021至步骤2023。
步骤2021:基于编码特征和起始字符,获取字符库中的候选字符在起始字符下对应的预测概率;基于候选字符在起始字符下对应的预测概率以及实体词约束信息,获取字符序列。
示例性地,该步骤2021可视为第一步获取过程的执行过程。在第一步获取过程中,编码器根据编码特征和起始字符,预测候选字符在起始字符下对应的预测概率。起始字符为字符序列共有的第一个字符,全部的字符序列均是在起始字符的基础上得到的。示例性地,起始字符为前缀树的根节点包含的字符,如,“[BOS]”。候选字符为字符库中的各个字符,字符库根据经验设置,或者根据实际的应用场景灵活调整,本申请实施例对此不加以限定。示例性地,字符库还可以称为词典,或者词表等。字符库中具有多个字符,也就是说,候选字符的数量为多个,预测候选字符在起始字符下对应的预测概率是指预测每个候选字符在起始字符下对应的预测概率。
在预测得到候选字符在起始字符下对应的预测概率之后,编码器基于候选字符在起始字符下对应的预测概率以及实体词约束信息,获取字符序列。示例性地,基于候选字符在起始字符下对应的预测概率以及实体词约束信息,获取字符序列的过程包括以下步骤1至步骤3。
步骤1:基于实体词约束信息,在候选字符中确定第一字符。
其中,第一字符是指起始字符对应的约束字符。示例性地,基于实体词约束信息,在候选字符中确定第一字符的方式为:将候选字符中的命中起始字符对应的允许字符的候选字符作为第一字符,其中,起始字符对应的允许字符是指实体词约束信息指示的在起始字符的前缀下允许确定出的各个字符。第一字符的数量与候选字符中的命中起始字符对应的允许字符的候选字符的数量相同。
示例性地,将候选字符中的未命中起始字符对应的允许字符的候选字符进行mask(掩藏),以避免获取无效实体词。
步骤2:获取第一字符在起始字符下对应的目标概率。其中,第一字符在起始字符下对应的目标概率基于第一字符在起始字符下对应的预测概率得到。
在示例性实施例中,获取第一字符在起始字符下对应的目标概率的方式包括:在确定第一字符之后,实时基于第一字符在起始字符下对应的预测概率获取第一字符在起始字符下对应的目标概率。第一字符的数量为一个或多个,基于每个第一字符在起始字符下对应的预测概率获取每个第一字符在起始字符下对应的目标概率的原理相同,本申请实施例以基于任一第一字符在起始字符下对应的预测概率获取任一第一字符在起始字符下对应的目标概率为例进行说明。
在一种可能实现方式中,基于任一第一字符在起始字符下对应的预测概率获取任一第一字符在起始字符下对应的目标概率的方式包括但不限于以下方式1至方式3。
方式1:将任一第一字符在起始字符下对应的预测概率作为该任一第一字符在起始字符下对应的目标概率。
方式2:响应于任一第一字符命中查询文本中的查询字符,将该任一第一字符在起始字符下对应的预测概率与查询文本中被命中的查询字符对应的增强概率之和,作为该任一第一字符在起始字符下对应的目标概率;响应于任一第一字符未命中查询文本中的查询字符,将该任一第一字符在起始字符下对应的预测概率作为该任一第一字符在起始字符下对应的目标概率。
示例性地,任一第一字符命中查询文本中的查询字符是指该任一第一字符与查询文本中的一个查询字符相同;任一第一字符未命中查询文本中的查询字符是指该任一第一字符与查询文本中的各个查询字符均不相同。
查询文本中的每个查询字符均对应有一个增强概率,每个查询字符对应的增强概率根据经验设置,或者根据应用场景灵活调整,本申请实施例对此不加以限定。不同的查询字符对应的增强概率可以相同,也可以不同。若任一第一字符命中查询文本中的查询字符,则将该任一第一字符在起始字符下对应的预测概率与查询文本中被命中的查询字符对应的增强概率之和,作为该任一第一字符在起始字符下对应的目标概率,以增强命中查询文本中的查询字符的候选字符对应的概率;若任一第一字符未命中查询文本中的查询字符,则保持该任一候选字符在起始字符下对应的预测概率不变。此种获取目标概率的方式可称为基于查询文本的增强方式。
在获取查询文本对应的实体词的过程中,为了将交互对象偏门的表达转换到标准实体词上,通常会将查询文本对应到最接近的实体词上,也就是说,查询文本对应的实体词中的字符与查询文本中的查询字符有一定的重合。示例性地,历史查询文本以及已经获取的历史查询文本对应的实体词如表1所示,在表1中,粗体部分为历史查询文本与历史查询文本对应的实体词之间的公共字符。
表1
历史查询文本 | 实体词 |
腰抽筋一样疼 | 腰疼 |
看东西也模糊 | 视物模糊 |
月经期会延长 | 月经延长 |
上腹部胀痛 | 腹胀 |
基于查询文本对应的实体词的特点,本申请实施例提出基于查询文本增强的实体词获取方法,也就是说,在解码器解码每个字符的过程中,增强预测分布中命中查询文本中的查询字符的候选字符对应的概率,从而达到使获取的实体词与查询文本更接近的目的。该方法在获取查询文本对应的实体词的过程中使用,不需要重新训练目标实体词获取模型。示例性地,概率增强公式如公式1所示:
dt′(wi)=dt(wi)+α,wi∈Squery (公式1)
其中,Squery表示查询文本中的查询字符构成的集合;wi∈Squery说明候选字符wi命中查询文本中的查询字符;dt(wi)表示第t(t为不小于1的整数)步获取过程中预测得到的候选字符对应的预测概率;dt′(wi)表示在第t步获取过程中得到的候选字符对应的目标概率;α为各个查询字符共同对应的增强概率,α为预先设定的超参数。
若任一第一字符命中查询文本中的查询字符,则该任一第一字符在起始字符下对应的目标概率能够基于上述公式1计算得到。在基于上述公式1计算得到任一第一字符在起始字符下对应的目标概率的过程中,将公式1中的t的取值置为1。
示例性地,以每步获取过程得到1个字符序列为例,如图5所示,候选字符包括“什”、“小”、“感”、“发”、“么”、“冒”、“热”、“烧”,查询文本为“小儿发烧什么原因”,候选字符中命中查询文本中的查询字符的字符包括“什”、“小”、“发”、“么”、“烧”。在第一步获取过程中,解码器预测的候选字符在起始字符下对应的预测概率(d1)如501所示,通过增强命中查询文本中的查询字符的候选字符对应的概率,能够得到如502所示的候选字符在起始字符下对应的目标概率。α为各个查询字符共同对应的增强概率。根据502可知,字符“小”在起始字符下对应的目标概率最大,所以,第一步获取过程确定出的一个字符为字符“小”。字符“小”为第一步获取过程应该确定出的正确的字符。若直接根据预测概率进行确定,则会确定出错误的字符“感”。因此,此种基于查询文本的增强方式能够提高确定出的字符的准确率。
方式3:获取任一第一字符在起始字符下对应的增强概率;将任一第一字符在起始字符下对应的预测概率与任一第一字符在起始字符下对应的增强概率之和,作为任一第一字符在起始字符下对应的目标概率。
任一第一字符在起始字符下对应的增强概率为目标实体词获取模型自动确定的增强概率,此种方式无需人为设定增强概率,可靠性较高。示例性地,方式3所述的获取目标概率的方式可以称为基于多标签任务增强的方式。
在一种可能实现方式中,获取任一第一字符在起始字符下对应的增强概率的方式包括:基于编码特征,获取任一第一字符在查询文本中的各个查询字符下分别对应的分类概率;基于任一第一字符在查询文本中的各个查询字符下分别对应的分类概率,获取任一第一字符在起始字符下对应的增强概率。
示例性地,基于编码特征,获取任一第一字符在查询文本中的各个查询字符下分别对应的分类概率的实现方式包括:基于编码特征,获取候选字符在各个查询字符下分别对应的分类概率,从候选字符在各个查询字符下分别对应的分类概率中,提取任一第一字符在查询文本中的各个查询字符下分别对应的分类概率。示例性地,目标实体词获取模型中除了包括编码器和解码器外,还包括分类器,该分类器用于基于编码特征,获取候选字符在各个查询字符下分别对应的分类概率。
候选字符的数量为多个,分类器用于基于编码特征,获取每个候选字符在各个查询字符下分别对应的分类概率。示例性地,候选字符在各个查询字符下分别对应的分类概率可以称为分类结果,该分类结果中包括每个查询字符对应的一个分类子结果,任一查询字符对应的分类子结果包括各个候选字符在该任一查询字符下对应的分类概率。示例性地,分类结果可以表示为T=t1,t2,…,tn,其中,n(n为不小于1的整数)为查询字符的数量,ti(i为不小于1且不大于n的整数)表示第i个查询字符对应的分类子结果。示例性地,ti为一个向量,向量ti的维度为候选字符的数量,示例性地,候选字符为词典中的字符,则向量ti的维度为词典的大小。
需要说明的是,由于分类结果是基于编码特征获取的,在多步获取过程中,编码特征保持不变,所以分类结果也保持不变。
在获取任一第一字符在查询文本中的各个查询字符下分别对应的分类概率后,基于任一第一字符在查询文本中的各个查询字符下分别对应的分类概率,获取任一第一字符在起始字符下对应的增强概率。
任一第一字符在起始字符下对应的增强概率通过综合考虑该任一第一字符在各个查询字符下分别对应的分类概率得到。在一种可能实现方式中,基于任一第一字符在各个查询字符下分别对应的分类概率,获取任一第一字符在起始字符下对应的增强概率的方式为:计算任一第一字符在各个查询字符下分别对应的分类概率的平均值,将该平均值作为该任一第一字符在起始字符下对应的增强概率。此种方式下,由于在多步获取过程中,任一第一字符在各个查询字符下分别对应的分类概率保持不变,所以任一第一字符在不同步获取过程中对应的增强概率相同,可以仅在第一步获取过程中计算一次,在后续步获取过程中直接利用。
在一种可能实现方式中,基于任一第一字符在各个查询字符下分别对应的分类概率,获取任一第一字符在起始字符下对应的增强概率的方式为:基于各个查询字符在起始字符下分别对应的注意力权重,对任一第一字符在各个查询字符下分别对应的分类概率进行加权求和,得到任一第一字符在起始字符下对应的增强概率。各个查询字符在起始字符下分别对应的注意力权重由解码器根据编码特征和起始字符,利用注意力机制计算得到。
在基于各个查询字符在起始字符下分别对应的注意力权重,对任一第一字符在各个查询字符下分别对应的分类概率进行加权求和的过程中,任一第一字符在该任一查询字符下对应的分类概率的权重为该任一查询字符在起始字符下对应的注意力权重。
在示例性实施例中,获取第一字符在起始字符下对应的目标概率的方式包括:基于候选字符在起始字符下对应的预测概率,获取候选字符在起始字符下对应的目标概率;在确定第一字符后,从候选字符在起始字符下对应的目标概率中,提取第一字符在起始字符下对应的目标概率。此种情况下,需要预先基于候选字符在起始字符下对应的预测概率,获取候选字符在起始字符下对应的目标概率并存储,以便于在确定第一字符后,直接提取出第一字符在起始字符下对应的目标概率。
候选字符的数量为一个或多个,基于候选字符在起始字符下对应的预测概率,获取候选字符在起始字符下对应的目标概率是指基于每个候选字符在起始字符下对应的预测概率,获取每个候选字符在起始字符下对应的目标概率。基于任一候选字符在起始字符下对应的预测概率,获取任一候选字符在起始字符下对应的目标概率的方式包括但不限于以下方式一至方式三。
方式一:将任一候选字符在起始字符下对应的预测概率作为该任一候选字符在起始字符下对应的目标概率。
方式二:响应于任一候选字符命中查询文本中的查询字符,将该任一候选字符在起始字符下对应的预测概率与查询文本中被命中的查询字符对应的增强概率之和,作为该任一候选字符在起始字符下对应的目标概率;响应于任一候选字符未命中查询文本中的查询字符,将该任一候选字符在起始字符下对应的预测概率作为该任一候选字符在起始字符下对应的目标概率。
方式三:获取任一候选字符在起始字符下对应的增强概率;将任一候选字符在起始字符下对应的预测概率与任一候选字符在起始字符下对应的增强概率之和,作为任一候选字符在起始字符下对应的目标概率。
上述方式一至方式三的实现过程分别参见基于任一第一字符在起始字符下对应的预测概率,获取任一第一字符在起始字符下对应的目标概率的方式1至方式3,此处不再加以赘述。
示例性地,各个候选字符在起始字符下对应的增强概率可以一同计算得到。示例性地,各个查询字符在起始字符下分别对应的注意力权重可以记为各个候选字符在各个查询字符下分别对应的分类概率可以记为T=t1,t2,...,tn,各个候选字符在起始字符下对应的增强概率可以基于公式计算得到。ti包括各个候选字符在第i个查询字符下对应的分类概率,计算得到的f1包括各个候选字符在起始字符下对应的增强概率。示例性地,将候选字符在起始字符下对应的预测概率记为d1,则候选字符在起始字符下对应的目标概率可以基于p1=d1+f1计算得到。
示例性地,以每步获取过程得到1个字符序列为例,第一步获取过程如图6所示。将查询文本输入目标实体词获取模型后,目标实体词获取模型中的编码器提取查询文本的编码特征H;分类器基于编码特征H,获取分类结果T。解码器基于编码特征H,预测候选字符在起始字符下对应的预测概率(d1)以及各个查询字符在起始字符下分别对应的注意力权重(a1)。基于注意力权重和分类结果,获取候选字符在起始字符下对应的增强概率(f1)。基于各个候选字符在起始字符下对应的增强概率(f1)和候选字符在起始字符下对应的预测概率(d1),获取候选字符在起始字符下对应的目标概率,根据该目标概率能够正确确定出字符“小”。
无论哪种方式,均能够获取第一字符在起始字符下对应的目标概率,然后执行步骤3。
步骤3:基于目标概率满足参考条件的第一字符,获取字符序列。
参考条件用于对第一字符对应的目标概率进行约束。示例性地,任一第一字符对应的目标概率满足参考条件是指在按照目标概率从大到小的顺序对各个第一字符进行排列的情况下,该任一第一字符位于前Q(Q为不小于1的整数)位;或者,在按照目标概率从小到大的顺序对各个第一字符进行排列的情况下,该任一第一字符位于后Q位。Q的取值根据经验设置,或者根据应用场景调整,示例性地,Q的取值可以为1,也可以为5等,本申请实施例对此不加以限定。
基于目标概率满足参考条件的每个第一字符,均获取一个字符序列。示例性地,基于目标概率满足参考条件的任一第一字符获取的一个字符序列是指将起始字符作为该任一第一字符的前缀得到的字符序列。获取的字符序列的数量与目标概率满足参考条件的第一字符的数量相同。
示例性地,在获取字符序列后,计算获取的字符序列的序列衡量指标,序列衡量指标用于衡量字符序列的可靠性。示例性地,每个字符序列中的各个字符均具有各自的概率,计算每个字符序列的序列衡量指标的方式为:将每个字符序列中的各个字符具有的概率的乘积作为每个字符序列的序列衡量指标。每个字符序列中的起始字符具有的概率为默认概率,例如,默认概率为1;除起始字符外的字符具有的概率为字符在起始字符下对应的目标概率。
示例性地,在执行步骤2021之后、执行步骤2022之前,将通过执行步骤2021获取的字符序列作为当前获取的字符序列,然后判断当前获取的字符序列是否满足第一条件,若当前获取的字符序列不满足第一条件,则执行步骤2022。若当前获取的字符序列满足第一条件,则基于当前获取的字符序列,获取第一实体词。基于当前获取的字符序列,获取第一实体词的过程参见步骤2023中基于更新后的字符序列,获取第一实体词的过程,此处暂不赘述。
满足第一条件根据经验设置,或者根据应用场景灵活调整,本申请实施例对此不加以限定。在示例性实施例中,当前获取的字符序列满足第一条件是指当前获取的字符序列均为以字符“[EOS]”结尾的序列。在示例性实施例中,当前获取的字符序列满足第一条件是指得到当前获取的字符序列已经执行的获取过程的步数达到步数阈值,步数阈值根据经验设置,或者根据应用场景灵活调整,本申请实施例对此不加以限定。
步骤2022:响应于当前获取的字符序列不满足第一条件,基于编码特征和当前获取的字符序列,获取候选字符在当前获取的字符序列下对应的预测概率;基于候选字符在当前获取的字符序列下对应的预测概率以及实体词约束信息,获取更新后的字符序列。
当前获取的字符序列是指通过执行步骤2021获取的字符序列。需要说明的是,当前获取的字符序列的数量可能为一个,也可能为多个。对于当前获取的字符序列的数量为一个的情况,直接基于编码特征和当前获取的一个字符序列,获取候选字符在当前获取的一个字符序列下对应的预测概率,然后基于候选字符在当前获取的一个字符序列下对应的预测概率以及实体词约束信息,获取更新后的字符序列。在基于编码特征和当前获取的一个字符序列,获取候选字符在当前获取的一个字符序列下对应的预测概率的过程中,将编码特征和当前获取的一个字符序列的最后一个字符作为获取更新后的字符序列依据的输入信息。
在将编码特征和当前获取的一个字符序列的最后一个字符作为获取更新后的字符序列依据的输入信息的情况下,能够获取候选字符在当前获取的一个字符序列下对应的预测概率。在获取候选字符在当前获取的一个字符序列下对应的预测概率后,基于候选字符在当前获取的一个字符序列下对应的预测概率以及实体词约束信息,获取更新后的字符序列。基于候选字符在当前获取的一个字符序列下对应的预测概率以及实体词约束信息,获取更新后的字符序列的实现过程与步骤2021中基于候选字符在起始字符下对应的预测概率以及实体词约束信息,获取字符序列的实现过程的原理相同,此处不再加以赘述。
对于当前获取的字符序列的数量为多个的情况,基于编码特征和当前获取的字符序列,获取候选字符在当前获取的字符序列下对应的预测概率的实现过程包括:基于编码特征和第一字符序列,获取候选字符在第一字符序列下对应的预测概率。其中,第一字符序列为当前获取的多个字符序列中的任一字符序列。将编码特征和第一字符序列中的最后一个字符作为获取更新后的字符序列依据的一种输入信息,从而得到候选字符在第一字符序列下对应的预测概率。获取更新后的字符序列依据的输入信息的种数与当前获取的字符序列的数量相同,当前获取的每个字符序列均与编码特征构成获取更新后的字符序列依据的一种输入信息。
对于当前获取的字符序列的数量为多个的情况,基于候选字符在当前获取的字符序列下对应的预测概率以及实体词约束信息,获取更新后的字符序列的过程包括以下步骤A至步骤C。
步骤A:基于实体词约束信息,在候选字符中确定第一字符序列对应的约束字符。其中,第一字符序列为当前获取的多个字符序列中的任一字符序列。
根据实体词约束信息,能够确定在以第一字符序列为前缀的条件下,允许确定出的字符,将候选字符中命中上述允许确定出的字符的候选字符作为第一字符序列对应的约束字符。
步骤B:获取约束字符在第一字符序列下对应的目标概率,将在第一字符序列下对应的目标概率满足第二条件的约束字符作为第一字符序列对应的匹配字符。其中,约束字符在第一字符序列下对应的目标概率基于约束字符在第一字符序列下对应的预测概率得到。
在示例性实施例中,约束字符在第一字符序列下对应的目标概率的获取方式包括:在确定约束字符之后,实时基于约束字符在第一字符序列下对应的预测概率获取约束字符在第一字符序列下对应的目标概率。约束字符的数量为至少一个,基于每个约束字符在第一字符序列下对应的预测概率获取每个约束字符在第一字符序列下对应的目标概率的原理相同,本申请实施例以基于第一约束字符在第一字符序列下对应的预测概率获取第一约束字符在第一字符序列下对应的目标概率为例进行说明。其中,第一约束字符为至少一个约束字符中的任一约束字符。
在一种可能实现方式中,基于第一约束字符在第一字符序列下对应的预测概率获取第一约束字符在第一字符序列下对应的目标概率的方式包括但不限于以下方式a至方式c。
方式a:直接将第一约束字符在第一字符序列下对应的预测概率作为该第一约束字符在第一字符序列下对应的目标概率。
方式b:响应于第一约束字符命中查询文本中的查询字符,将该第一约束字符在第一字符序列下对应的预测概率与查询文本中被命中的查询字符对应的增强概率之和,作为该第一约束字符在第一字符序列下对应的目标概率;响应于第一约束字符未命中查询文本中的查询字符,将该第一约束字符在第一字符序列下对应的预测概率作为该第一约束字符在第一字符序列下对应的目标概率。
该方式b的实现原理与利用方式2获取任一第一字符对应的目标概率的实现原理相同,此处不再加以赘述。
方式c:获取第一约束字符在第一字符序列下对应的增强概率;将第一约束字符在第一字符序列下对应的预测概率与第一约束字符在第一字符序列下对应的增强概率之和,作为第一约束字符在第一字符序列下对应的目标概率。
示例性地,获取第一约束字符在第一字符序列下对应的增强概率的方式包括:基于编码特征,获取第一约束字符在查询文本中的各个查询字符下分别对应的分类概率;基于第一约束字符在查询文本中的各个查询字符下分别对应的分类概率,获取第一约束字符在第一字符序列下对应的增强概率。
示例性地,基于编码特征,获取第一约束字符在查询文本中的各个查询字符下分别对应的分类概率的实现方式包括:基于编码特征,获取候选字符在各个查询字符下分别对应的分类概率,从候选字符在各个查询字符下分别对应的分类概率中,提取第一约束字符在查询文本中的各个查询字符下分别对应的分类概率。示例性地,目标实体词获取模型中除了包括编码器和解码器外,还包括分类器,该分类器用于基于编码特征,获取候选字符在各个查询字符下分别对应的分类概率。
在一种可能实现方式中,基于第一约束字符在查询文本中的各个查询字符下分别对应的分类概率,获取第一约束字符在第一字符序列下对应的增强概率的方式为:计算第一约束字符在各个查询字符下分别对应的分类概率的平均值,将该平均值作为该第一约束字符在第一字符序列下对应的增强概率。
在一种可能实现方式中,基于第一约束字符在查询文本中的各个查询字符下分别对应的分类概率,获取第一约束字符在第一字符序列下对应的增强概率的方式为:基于各个查询字符在第一字符序列下分别对应的注意力权重,对第一约束字符在各个查询字符下分别对应的分类概率进行加权求和,得到第一约束字符在第一字符序列下对应的增强概率。各个查询字符在第一字符序列下分别对应的注意力权重由解码器根据编码特征和第一字符序列中的最后一个字符,利用注意力机制计算得到。
该方式c的实现原理与利用方式3获取任一第一字符对应的目标概率的实现原理相同,此处不再加以赘述。
需要说明的是,以上方式a至方式c介绍的是在确定约束字符之后,实时基于约束字符在第一字符序列下对应的预测概率获取约束字符在第一字符序列下对应的目标概率的情况下的实现方式,本申请实施例并不局限于此。在一些实施例中,还可以基于候选字符在第一字符序列下对应的预测概率,获取候选字符在第一字符序列下对应的目标概率;在确定约束字符后,从候选字符在第一字符序列下对应的目标概率中,提取约束字符在第一字符序列下对应的目标概率。
示例性地,以获取更新后的字符序列的过程为第t步获取过程,当前获取的字符序列的数量为一个为例,各个候选字符第一字符序列下对应的增强概率可以一同计算得到。示例性地,各个查询字符在第一字符序列下分别对应的注意力权重可以记为各个候选字符在各个查询字符下分别对应的分类概率可以记为T=t1,t2,...,tn,各个候选字符在第一字符序列下对应的增强概率可以基于公式计算得到。示例性地,将候选字符在第一字符序列下对应的预测概率记为dt,则候选字符在第一字符序列下对应的目标概率可以基于pt=dt+ft计算得到。在第t(t为不小于1的整数)步获取过程,取目标概率最大的字符作为第t步获取过程确定的字符,再加入到解码器的第(t+1)步获取过程中。
在获取约束字符在第一字符序列下对应的目标概率后,将在第一字符序列下对应的目标概率满足第二条件的约束字符作为第一字符序列对应的匹配字符。满足第二条件根据经验设置,或者根据应用场景灵活调整,本申请实施例对此不加以限定。
示例性地,一个约束字符在第一字符序列下对应的目标概率满足第二条件是指该一个约束字符在第一字符序列下对应的目标概率不小于参考阈值,参考阈值根据经验设置,或者根据应用场景灵活调整。
示例性地,一个约束字符在第一字符序列下对应的目标概率满足第二条件是指在按照目标概率从大到小的顺序对各个约束字符进行排列的情况下,该一个约束字符排在前M(M为不小于1的整数)位;或者,在按照目标概率从小到大的顺序对各个约束字符进行排列的情况下,该一个约束字符排在后M位。
步骤C:基于当前获取的各个字符序列对应的匹配字符,获取更新后的字符序列。
根据步骤A和步骤B的方式,能够获取当前获取的各个字符序列对应的匹配字符,然后基于当前获取的各个字符序列对应的匹配字符,获取更新后的字符序列。需要说明的是,当前获取的每个字符序列对应的匹配字符的数量可能为一个,也可能为多个,还可能为0个。当前获取的不同的字符序列对应的匹配字符的数量可能相同,也可能不同。
在示例性实施例中,基于当前获取的各个字符序列对应的匹配字符,获取更新后的字符序列的过程包括:基于当前获取的各个字符序列对应的匹配字符,获取当前获取的各个字符序列对应的候选序列;将当前获取的各个字符序列对应的候选序列中满足选取条件的候选序列,作为更新后的字符序列。
示例性地,基于当前获取的各个字符序列对应的匹配字符,获取当前获取的各个字符序列对应的候选序列是指基于当前获取的每个字符序列对应的匹配字符,获取当前获取的每个字符序列对应的候选序列。以基于第一字符序列对应的匹配字符,获取第一字符序列对应的候选序列为例进行说明,其中,第一字符序列为当前获取的各个字符序列中的任一字符序列。
第一字符序列对应的候选序列的数量与第一字符序列对应的匹配字符的数量相同,基于第一字符序列对应的每个匹配字符,均获取第一字符序列对应的一个候选序列。示例性地,基于第一字符序列对应的任一匹配字符,获取第一字符序列对应的一个候选序列的方式为:将第一字符序列作为该任一匹配字符的前缀,得到第一字符序列对应的一个候选序列。
参考获取第一字符序列对应的一个候选序列的方式,能够获取当前获取的各个字符序列对应的候选序列,然后将当前获取的各个字符序列对应的候选序列中满足选取条件的候选序列,作为更新后的字符序列。
在示例性实施例中,一个候选序列满足选取条件是指该候选序列的序列衡量指标满足指标约束条件。也就是说,将当前获取的各个字符序列对应的候选序列中序列衡量指标满足指标约束条件的候选序列,作为更新后的字符序列。在此种情况下,需要预先获取当前获取的各个字符序列对应的候选序列的序列衡量指标。以获取第一字符序列对应的任一候选序列的序列衡量指标为例进行说明。
在示例性实施例中,第一字符序列对应的任一候选序列中的每个字符均具有各自的概率,获取第一字符序列对应的任一候选序列的序列衡量指标方式包括:将第一字符序列对应的任一候选序列中的每个字符具有的概率的乘积作为第一字符序列对应的任一候选序列的序列衡量指标。其中,第一字符序列对应的任一候选序列中的起始字符具有的概率为默认概率,例如,默认概率为1;除起始字符外的其他字符具有的概率为在获取该任一候选序列的过程中对应的目标概率。
示例性地,每步获取字符序列后,均会计算字符序列的序列衡量指标并保存。也就是说,第一字符序列具有已知的序列衡量指标,获取第一字符序列对应的任一候选序列的序列衡量指标方式包括:将第一字符序列具有的序列衡量指标与得到该任一候选序列所依据的匹配字符在该第一字符序列下对应的目标概率的乘积,作为第一字符序列对应的任一候选序列的序列衡量指标。
参考获取第一字符序列对应的任一候选序列的序列衡量指标的方式,能够获取第一字符序列对应的候选序列的序列衡量指标。参考获取第一字符序列对的候选序列的序列衡量指标的方式,能够获取当前获取的各个字符序列对应的候选序列的序列衡量指标。然后将当前获取的各个字符序列对应的候选序列中序列衡量指标满足指标约束条件的候选序列,作为更新后的字符序列。
更新后的字符序列是综合考虑当前获取的各个字符序列对应的候选序列的序列衡量指标得到的,是当前获取的各个字符序列对应的候选序列中可靠性较高的字符序列。
满足指标约束条件根据经验设置,或者根据应用场景灵活调整,本申请实施例对此不加以限定。示例性地,一个候选序列的序列衡量指标满足指标约束条件是指该候选序列的序列衡量指标不小于第一衡量指标阈值。示例性地,一个候选序列的序列衡量指标满足指标约束条件是指在按照当前获取的各个字符序列对应的候选序列的序列衡量指标从大到小的顺序对各个字符序列对应的候选序列进行排列的情况下,该候选序列位于前L(L为不小于1的整数)位;或者,在按照当前获取的各个字符序列对应的候选序列的序列衡量指标从小到大的顺序对各个字符序列对应的候选序列进行排列的情况下,该候选序列位于后L(L为不小于1的整数)位。
更新后的字符序列的数量与选取条件的设置有关,本申请实施例对此不加以限定。在获取更新后的字符序列后,判断更新后的字符序列是否满足第一条件,若更新后的字符序列不满足第一条件,则将更新后的字符序列作为当前获取的字符序列,基于步骤2022的方式继续获取更新后的字符序列,直至更新后的字符序列满足第一条件。若更新后的字符序列满足第一条件,则执行步骤2023。示例性地,每获取一次更新后的字符序列,则完成一步获取过程。
步骤2023:响应于更新后的字符序列满足第一条件,基于更新后的字符序列,获取第一实体词。
若更新后的字符序列满足第一条件,则基于更新后的字符序列,获取第一实体词。示例性地,基于更新后的字符序列,获取第一实体词的方式包括:将更新后的字符序列中满足序列约束条件的字符序列构成的实体词作为第一实体词。示例性地,满足序列约束条件的字符序列是指以字符“[EOS]”结尾的字符序列。示例性地,满足序列约束条件的字符序列是指以字符“[EOS]”为结尾且序列衡量指标大于第二衡量指标阈值的字符序列。
示例性地,满足序列约束条件的字符序列以字符“[BOS]”开始,以字符“[EOS]”结尾,满足序列约束条件的字符序列构成的实体词是指由字符序列中除了“[BOS]”和“[EOS]”字符外的其他字符构成的词语。
示例性地,基于更新后的字符序列,获取第一实体词的方式包括:从更新后的字符序列中的满足序列约束条件的字符序列中选取指定数量的字符序列,将选取的指定数量的字符序列构成的实体词作为第一实体词。指定数量是指需要获取的查询文本对应的第一实体词的数量,指定数量根据经验设置,或者根据应用场景灵活调整,本申请实施例对此不加以限定。
本申请实施例对从更新后的字符序列中的满足序列约束条件的字符序列中选取指定数量的字符序列的方式不加以限定。示例性地,从更新后的字符序列中的满足序列约束条件的字符序列中随机选取指定数量的字符序列。示例性地,在按照更新后的字符序列中的满足序列约束条件的字符序列的序列衡量指标从大到小的顺序对更新后的字符序列中的满足序列约束条件的字符序列进行排列的情况下,选取排在前指定数量位的字符序列;或者,在按照更新后的字符序列中的满足序列约束条件的字符序列的序列衡量指标从小到大的顺序对更新后的字符序列中的满足序列约束条件的字符序列进行排列的情况下,选取排在后指定数量位的字符序列。
根据上述步骤201和步骤202,能够获取查询文本对应的第一实体词。查询文本对应的第一实体词的数量可能为一个,也可能为多个,本申请实施例对此不加以限定。
在示例性实施例中,在获取查询文本对应的第一实体词后,可以根据查询文本对应的第一实体词,进一步获取查询文本对应的应答数据。查询文本对应的应答数据为对查询文本进行反馈的数据,本申请实施例对应答数据的类型不加以限定,示例性地,应答数据的类型包括但不限于文本、视频、音频等。
在一种可能实现方式中,根据查询文本对应的第一实体词,获取查询文本对应的应答数据的方式包括:直接基于第一实体词,获取查询文本对应的应答数据。示例性地,查询第一实体词召回的应答数据,从第一实体词召回的应答数据中选取查询文本对应的应答数据。第一实体词的数量为一个或多个,第一实体词召回的应答数据是指各个第一实体词分别召回的应答数据。
任一第一实体词召回的应答数据是指应答数据库中与该任一第一实体词存在匹配关系的应答数据。示例性地,若应答数据的类型为文本,则与该任一第一实体词存在匹配关系的应答数据是指存在该任一第一实体词的应答文本。示例性地,若应答数据的类型为视频或音频,则与该任一第一实体词存在匹配关系的应答数据是指描述文本中存在该任一第一实体词的应答视频或者应答音频。视频或音频的描述文本用于对视频或音频进行描述,由视频或音频的上传者提供。
示例性地,从第一实体词召回的应答数据中选取查询文本对应的应答数据的方式包括:将第一实体词召回的全部的应答数据均作为查询文本对应的应答数据。
示例性地,从第一实体词召回的应答数据中选取查询文本对应的应答数据的方式包括:获取第一实体词召回的应答数据的相关度,将第一实体词召回的应答数据中的相关度满足相关度约束条件的应答数据作为查询文本对应的应答数据。
示例性地,一个应答数据的相关度可以是指召回该应答数据所依据的第一实体词在该应答数据对应的文本中出现的次数,也可以是指召回该应答数据所依据第一实体词在该应答数据对应的文本中出现的次数与该应答数据对应的文本中的分词的数量的比值。若应答数据的类型为文本,则应答数据对应的文本为应答数据本身;若应答数据的类型为视频或音频等非文本类型,则应答数据对应的文本是指应答数据的描述文本。
在获取第一实体词召回的应答数据的相关度后,将第一实体词召回的应答数据中的相关度满足相关度约束条件的应答数据作为查询文本对应的应答数据。示例性地,一个应答数据的相关度满足相关度约束条件是指该应答数据的相关度不小于相关度阈值。示例性地,一个应答数据的相关度满足相关度约束条件是指在按照相关度从大到小对各个应答数据进行排列的情况下,该应答数据位于前R(R为不小于1的整数)位;或者,在按照相关度从小到大对各个应答数据进行排列的情况下,该应答数据位于后R(R为不小于1的整数)位。
示例性地,从第一实体词召回的应答数据中选取查询文本对应的应答数据的方式包括:从第一实体词召回的应答数据中随机选取一定数量的应答数据作为查询文本对应的应答数据。该一定数量为需要反馈给交互对象的应答数据的数量。
在一种可能实现方式中,根据第一实体词,获取查询文本对应的应答数据的方式包括:获取第一实体词与查询文本的匹配结果;基于匹配结果满足第三条件的第一实体词,获取查询文本对应的应答数据。
第一实体词的数量为一个或多个,获取第一实体词与查询文本的匹配结果是指分别获取每个第一实体词与查询文本的匹配结果。示例性地,一个第一实体词与查询文本的匹配结果用于指示该第一实体词与查询文本在语义上是否匹配。示例性地,一个第一实体词与查询文本的匹配结果指示的含义有两种:该第一实体词与查询文本在语义上匹配;或者,该第一实体词与查询文本在语义上不匹配。本申请实施例对匹配结果的表示形式不加以限定。示例性地,匹配结果包括两个概率,一个概率表示第一实体词与查询文本在语义上匹配的概率,另外一个概率表示第一实体词与查询文本在语义上不匹配的概率。示例性地,匹配结果为第一值或第二值,其中,第一值表示第一实体词与查询文本在语义上匹配,第二值表示第一实体词与查询文本在语义上不匹配。例如,第一值为1,第二值为0。当然,在一些实施例中,第一值和第二值还可以为其他值,例如,第一值为0,第二值为1。示例性地,匹配结果为一个概率值,该概率值表示第一实体词与查询文本在语义上匹配的概率。
获取第一实体词与查询文本的匹配结果的过程可以通过运行预先编辑的计算机程序实现,也可以基于模型实现,本申请实施例对此不加以限定,本申请实施例以基于模型实现获取第一实体词与查询文本的匹配结果为例进行说明。
在一种可能实现方式中,基于模型实现获取第一实体词与查询文本的匹配结果的方式为:调用语义特征提取模型提取第一实体词的语义特征和查询文本的语义特征;计算第一实体词的语义特征和查询文本的语义特征之间的相似度,若相似度不小于相似度阈值,则将第一结果作为第一实体词与查询文本的匹配结果;若相似度小于相似度阈值,则将第二结果作为第一实体词与查询文本的匹配结果。其中,第一结果用于指示第一实体词与查询文本在语义上匹配,第二结果用于指示第一实体词与查询文本在语义上不匹配。
语义特征提取模型用于提取文本的语义特征,示例性地,语义特征提取模型可以基于训练文本以及训练文本对应的语义标签训练得到,本申请实施例对训练过程不加以限定。
在一种可能实现方式中,基于模型获取第一实体词与查询文本的匹配结果的方式为:调用目标实体词过滤模型获取第一实体词与查询文本的匹配结果。其中,目标实体词过滤模型用于获取实体词与文本的匹配结果,以便于根据匹配结果对实体词进行过滤。训练得到目标实体词过滤模型的过程参见图9所示的实施例,此处暂不赘述。
示例性地,目标实体词过滤模型获取查询文本的文本语义向量,以及第一实体词的实体词语义向量;根据文本语义向量和实体词语义向量,获取第一实体词与查询文本的匹配结果。
本申请实施例对目标实体词过滤模型的结构不加以限定,只要能够根据输入的文本以及文本对应的实体词,输出匹配结果即可。示例性地,目标实体词过滤模型的结构为BERT模型。
无论哪种方式,在获取第一实体词与查询文本的匹配结果之后,判断第一实体词与查询文本的匹配结果是否满足第三条件,然后基于匹配结果满足第三条件的第一实体词,获取查询文本对应的应答数据。匹配结果满足第三条件说明匹配结果指示第一实体词与查询文本在语义上匹配。示例性地,匹配结果满足第三条件的第一实体词可以认为是对第一实体词进行精排过滤后获取的实体词。
示例性地,对于匹配结果利用第一值或者第二值表示的情况,匹配结果满足第三条件是指匹配结果为第一值。示例性地,对于匹配结果利用两个概率表示的情况,匹配结果满足第三条件是指匹配结果中的两个概率中的第一实体词与查询文本在语义上匹配的概率大于概率阈值。示例性地,对于匹配结果利用一个概率表示的情况,匹配结果满足第三条件是指该一个概率大于概率阈值。
基于匹配结果满足第三条件的第一实体词,获取查询文本对应的应答数据的实现原理与直接基于第一实体词,获取查询文本对应的应答数据的实现原理相同,此处不再加以赘述。
在一种可能实现方式中,根据第一实体词,获取查询文本对应的应答数据的方式包括:获取查询文本对应的第三实体词;获取第一实体词与查询文本的匹配结果以及第三实体词与查询文本的匹配结果;基于匹配结果满足第四条件的第一实体词和第三实体词,获取查询文本对应的应答数据。
查询文本对应的第三实体词是指利用其他实体词获取方式获取的查询文本对应的实体词,示例性地,查询文本对应的第三实体词是基于语义匹配的方式获取的实体词,或者基于文本分类的方式获取的实体词等。此种方式,能够基于多路召回的方式获取查询文本对应的多个实体词,再进行精排过滤,有利于提高实体词的获取效果以及获取的应答数据的可靠性。
基于匹配结果满足第四条件的第一实体词和第三实体词,获取查询文本对应的应答数据的过程参见基于匹配结果满足第三条件的第一实体词,获取查询文本对应的应答数据的过程,此处不再加以赘述。
在示例性实施例中,在获取查询文本对应的应答数据后,将查询文本对应的应答数据反馈给交互对象。示例性地,获取查询文本对应的应答数据的过程由终端执行,则终端在显示页面中显示应答数据。示例性地,获取查询文本对应的应答数据的过程由服务器执行,则服务器将获取的应答数据发送至交互对象的终端,由交互对象的终端在显示页面中显示应答数据。
在获取查询文本对应的实体词的任务可称为query归一化任务,也即将口语化的表达转换成预先定义的标准实体词集合里,用相同语义且更标准的实体词进行搜索引擎下发检索。在query归一化任务中,由于实体词集合规模庞大,为了兼顾效率和精确率,通常采用粗召+精排二阶段的方法:先通过粗召从大规模实体词集合中尽可能召回相关的实体词,再通过精排进一步过滤,得到的实体词用于下发召回相关应答数据。在这个过程中,粗召阶段主要负责从大规模实体词集合中召回实体词,需要具备处理大规模实体词的能力,同时要尽可能地召回正确实体词。
示例性地,上述实施例中涉及的目标实体词获取模型可以称为粗召模型,目标实体词过滤模型可以称为精排模型。
本申请实施中的获取查询文本对应的第一实体词的过程可视为粗召阶段获取的实体词,采用目标实体词获取模型,利用查询文本直接获取对应的标准化实体词,模型的复杂度只跟词表(字符库)大小有关,而与实体词集合的规模无关,因此能在大规模实体词集合上高效训练而不需要进行负采样调整。并且,该模型在预测阶段不需要提前存储实体词特征,没有很大存储负担。此外,获取的实体词能跟查询文本进行字级别的交互,查询文本和实体词的语义交互较强,获取的实体词的可靠性较高,有利于提高后续召回的应答数据的准确率。本申请实施例提供的实体词的获取方法具有较强的实用性。
示例性地,本申请实施例提供的实体词的获取过程如图7所示。构建标准实体词集合;基于标准实体词集合,构建前缀树(也即实体词约束信息)。在粗召阶段,将查询文本输入目标实体词获取模型,目标实体词获取模型基于查询文本和前缀树,获取查询文本对应的第一实体词。在精排阶段,调用目标实体词过滤模型获取第一实体词与查询文本的匹配结果,根据匹配结果确定查询文本对应的第二实体词,查询文本对应的第二实体词为查询文本的归一化实体词。
本申请实施例提供的获取实体词的方法,直接根据查询文本的编码特征和实体词约束信息获取查询文本对应的实体词,无需执行实体词识别的操作,也无需执行同义词替换的操作,获取查询文本对应的实体词的效率较高。此外,在考虑实体词约束信息的基础上,能够保证获取的实体词为标准实体词集合中的实体词,无论查询文本表达是否准确,根据获取的实体词均能够召回应答数据,获取的实体词的可靠性较高。
基于上述图1所示的实施环境,本申请实施例提供一种实体词获取模型的训练方法,该实体词获取模型的训练方法由计算机设备执行,该计算机设备可以为终端11,也可以为服务器12,本申请实施例对此不加以限定。如图8所示,本申请实施例提供的实体词获取模型的训练方法包括如下步骤801至步骤804。
在步骤801中,获取训练样本,训练样本包括训练文本和训练文本对应的一个训练实体词。
训练样本为获取目标损失所依据的样本,训练样本的数量为一个或多个,本申请实施例对此不加以限定。每个训练样本均包括一个训练文本和该一个训练文本对应的一个训练实体词。
示例性地,训练文本可以从文本库中提取得到。一个训练文本对应的训练实体词是指与该训练文本存在匹配关系的实体词,一个训练文本可能对应有一个或多个训练实体词,一个训练文本和该一个训练文本对应的每个训练实体词均能够构成一个训练样本。
示例性地,对于需要获取目标领域的实体词的应用场景,训练文本为目标领域的文本,训练文本对应的训练实体词为目标领域的实体词。
在一种可能实现方式中,训练文本对应的训练实体词由专业人员设置。
在一种可能实现方式中,训练文本对应的训练实体词根据训练文本对应的应答文本确定。在示例性实施例中,根据训练文本对应的应答文本,确定训练文本对应的训练实体词的过程包括:获取训练文本对应的应答文本;对训练文本对应的应答文本进行分词处理,得到至少一个分词;基于实体词库中的参考实体词,从至少一个分词中确定满足目标条件的实体词,将该满足目标条件的实体词作为训练文本对应的训练实体词。
示例性地,一个训练文本对应的应答文本根据该一个训练文本对应的应答数据对应的文本确定。若一个训练文本对应的应答数据的数量为一个,则可以直接将该应答数据对应的文本作为该一个训练文本对应的应答文本;若一个训练文本对应的应答数据的数量为多个,则可以将多个应答数据对应的文本进行拼接,得到该一个训练文本对应的应答文本;或者,将多个应答数据中满足可靠条件的应答数据对应的文本进行拼接,得到该一个训练文本对应的应答文本。
示例性地,训练文本和训练文本对应的应答数据存储在数据库中,在提取训练文本时,能够提取训练文本对应的应答数据。示例性地,训练文本为目标领域的文本,应答数据为目标领域的数据,训练文本和应答数据存储在目标领域的数据库中。应答数据对应的文本与应答数据的类型有关,示例性地,若应答数据的类型为文本,则应答数据对应的文本是指应答数据本身;若应答数据的类型为音频或视频等非文本类型,则应答数据对应的文本是指应答数据的描述文本,应答数据的描述文本用于对应答数据进行描述,由应答数据的上传者提供。
示例性地,满足可靠条件根据经验设置,或者根据应用场景灵活调整,本申请实施例对此不加以限定。示例性地,应答数据满足可靠条件是指应答数据中的字符数量大于第一数量阈值。示例性地,应答数据满足可靠条件是指应答数据的赞同数量大于第二数量阈值。示例性地,应答数据满足可靠条件是指应答数据的提供者为相应领域的专家等。将满足可靠条件的应答数据对应的文本进行拼接得到应答文本,有利于提高获取的训练实体词的可靠性,进而提高实体词获取模型的训练效果。
在获取训练文本对应的应答文本后,对训练文本对应的应答文本进行分词处理,得到至少一个分词。然后基于实体词库中的参考实体词,从至少一个分词中确定满足目标条件的实体词,进而将该满足目标条件的实体词作为训练文本对应的训练实体词。
实体词库根据经验预先设置,实体词库中包括至少一个参考实体词。示例性地,实体词库为目标领域的实体词库,实体词库中的参考实体词均为目标领域的实体词。在一些实施例中,实体词库为用于存储图2所示的实施例中的标准实体词集合的数据库,参考实体词即为图2所示的实施例中的标准实体词。
在一种可能的实现方式中,基于实体词库中的参考实体词,从至少一个分词中确定满足目标条件的实体词的实现方式为:计算机设备基于实体词库中的参考实体词,分别对各个分词进行遍历,确定各个分词是否存在于实体词库中,将存在于实体词库中的分词作为满足目标条件的实体词。
在一种可能的实现方式中,基于实体词库中的参考实体词,从至少一个分词中确定满足目标条件的实体词的实现方式为:计算机设备从至少一个分词中确定存在于实体词库的分词,得到至少一个基础实体词;获取各个基础实体词在应答文本中的重要程度,将重要程度满足重要条件的基础实体词作为满足目标条件的实体词。示例性地,一个基础实体词的重要程度满足重要条件可以是指该基础实体词的重要程度大于第一阈值。示例性地,一个基础实体词的重要程度满足重要条件可以是指在按照重要程度从高到低的顺序对各个基础实体词进行排列的情况下,该基础实体词位于前G(G为不小于1的整数)位;或者,在按照重要程度从低到高的顺序对各个基础实体词进行排列的情况下,该基础实体词位于后G(G为不小于1的整数)位。
在一种可能的实现方式中,获取基础实体词的重要程度的方式包括:获取基础实体词在上述至少一个分词中的出现次数,基于该出现次数确定基础实体词的重要程度。其中,上述出现次数与上述重要程度呈正相关关系,出现次数越多,重要程度越高,出现次数越少,重要程度越低。
在一种可能的实现方式中,获取基础实体词的重要程度的方式包括:获取基础实体词在上述至少一个分词中的出现次数,以及该至少一个分词的总数量;根据出现次数和总数量,确定基础实体词在应答文本中的出现频率,基于该出现频率确定基础实体词的重要程度。可选地,上述出现频率是通过出现次数除以总数量得到的;上述出现频率与上述重要程度呈正相关关系,出现频率越大,重要程度越高,出现频率越小,重要程度越低。
在一种可能的实现方式中,获取基础实体词的重要程度的方式包括:获取基础实体词在上述至少一个分词中的出现次数,以及各个基础实体词在至少一个分词中的出现总次数;根据出现次数和出现总次数,确定基础实体词的出现比例,基于该出现比例确定基础实体词的重要程度。可选地,上述出现比例是通过出现次数除以出现总次数得到的;上述出现比例与上述重要程度呈正相关关系,出现频率越大,重要程度越高,出现频率越小,重要程度越低。
需要说明的一点是,上述对重要程度获取方式的介绍只是示例性地描述,本申请实施例并不局限于此。在示例性实施例中,可以通过出现次数、出现频率、出现比例中的一个或多个确定基础实体词的重要程度。
在步骤802中,调用实体词获取模型提取训练文本的编码特征。
该步骤802的实现方式参考图2所示的实施例中的步骤202,此处不再赘述。
在步骤803中,基于编码特征和第一实体字符,获取字符库中的候选字符在第一实体字符下对应的预测概率;基于候选字符在第一实体字符下对应的预测概率以及候选字符与第一实体字符的匹配关系,获取第一实体字符对应的损失。
其中,第一实体字符为训练实体词中的任一实体字符。
在对实体词获取模型进行训练的过程中,利用训练实体词中的实体字符提供监督信息,模型的优化目标是使模型获取的实体词与真实的实体词(也即训练实体词)更加接近,无需对训练实体词进行额外的标注,有利于节省标注成本。示例性地,真实的实体词还可以称为归一化的实体词。
对实体词获取模型训练一次所依据的目标损失是基于训练实体词中的各个实体字符对应的损失获取得到的。获取训练实体词中的各个实体字符对应的损失的原理相同,本申请实施例以获取第一实体字符对应的损失为例进行说明。其中,第一实体字符为训练实体词中的任一实体字符。
在获取第一实体字符对应的损失的过程中,实体词获取模型的解码器的输入信息为编码特征和第一实体字符,实体词获取模型能够综合考虑编码特征和第一实体字符,输出候选字符在第一实体字符下对应的预测概率。候选字符为字符库中的字符,候选字符的介绍参考图2所示的实施例,此处不再赘述。
候选字符的数量为一个或多个,此处的获取候选字符在第一实体字符下对应的预测概率是指获取每个候选字符在第一实体字符下对应的预测概率。
在获取候选字符在第一实体字符下对应的预测概率后,基于候选字符在第一实体字符下对应的预测概率以及候选字符与第一实体字符的匹配关系,获取第一实体字符对应的损失。其中,候选字符与第一实体字符的匹配关系用于指示候选字符是否与第一实体字符相同。
示例性地,以第一实体字符为训练实体中的第t(t为不小于1的整数)个实体字符为例,基于候选字符在第一实体字符下对应的预测概率以及候选字符与第一实体字符的匹配关系,获取第一实体字符对应的损失的过程基于公式2实现:
其中,Lt表示训练实体词中的第t(t为不小于1的整数)个实体字符对应的损失;wt表示训练实体词中的第t个实体字符,也即第t步获取过程的正确字符标签;表示与wt相同的候选字符在第t个实体字符下对应的预测概率;vocab表示字符库;j表示字符库中与wt不同的候选字符;dt,j表示与wt不同的候选字符在第t个实体字符下对应的预测概率。
基于步骤803获取第一实体字符对应的损失的过程可视为采用Teacher-Forcing(教师-强迫)的方式学习的过程,也即,第t步获取过程依据的字符为真实语句(也即训练实体词)中的第t个字符。通过累积每一步获取过程对应的损失(也即每个实体字符对应的损失),能够得到一个训练文本的损失。
在步骤804中,基于训练实体词中的各个实体字符对应的损失,获取目标损失;利用目标损失对实体词获取模型进行训练,得到目标实体词获取模型。
参考获取第一实体字符对应的损失的方式,能够获取训练实体词中的各个实体字符对应的损失。在获取训练实体词中的各个实体字符对应的损失后,基于训练实体词中的各个实体字符对应的损失,获取目标损失。
在一种可能实现方式中,基于训练实体词中的各个实体字符对应的损失,获取目标损失的过程包括:将各个实体字符对应的损失之和作为目标损失。在示例性实施例中,对于图2所示的实施例中,根据方式1或方式2获取任一第一字符在起始字符下对应的目标概率、根据方式一或方式二获取任一候选字符在起始字符下对应的目标概率,或者,根据方式a或方式b获取任一约束字符在第一字符序列下对应的目标概率的情况下,目标损失利用该方式获取得到。
示例性地,各个实体字符对应的损失之和基于公式3计算得到:
其中,loss1表示各个实体字符对应的损失之和;s表示训练实体词中的实体字符的数量,s为不小于1的整数;其他参数的含义参见公式2。
在一种可能实现方式中,基于训练实体词中的各个实体字符对应的损失,获取目标损失的过程包括以下步骤8041至步骤8044。
步骤8041:基于编码特征,获取候选字符在训练文本中的各个文本字符下分别对应的分类概率。
该步骤8041的实现方式参见图2所示的实施例中的基于编码特征,获取候选字符在各个查询字符下分别对应的分类概率的实现方式,此处不再加以赘述。
步骤8042:基于候选字符在各个文本字符下分别对应的分类概率,获取候选字符在训练文本下对应的分类概率。
示例性地,基于候选字符在各个文本字符下分别对应的分类概率,获取候选字符在训练文本下对应的分类概率的实现方式包括:将任一候选字符在各个文本字符下分别对应的分类概率求平均,然后利用激活函数激活,得到该任一候选字符在训练文本下对应的分类概率。示例性地,激活函数为Sigmoid(S型)激活函数。
示例性地,候选字符在各个文本字符下分别对应的分类概率可以称为分类结果,该分类结果中包括每个文本字符对应的一个分类子结果,任一文本字符对应的分类子结果包括各个候选字符在该任一文本字符下对应的分类概率。示例性地,获取训练文本中的各个文本字符对应的分类子结果的任务可以称为多标签任务。
示例性地,每个文本字符对应的分类子结果均为一个多维的向量,不同文本字符对应的分类子结果的维数相同,不同分类子结果中的相同位置的元素代表相同的候选字符在不同的文本字符下对应的分类概率。示例性地,将各个文本字符对应的分类子结果中的对应位置的元素求平均,然后利用激活函数激活,得到分类结果,分类结果中的每个元素代表一个候选字符在该训练文本下对应的分类概率。示例性地,分类结果基于公式4计算得到:
其中,tx表示分类结果, 表示第i(i为不小于1且不大于z的整数)个候选字符在训练文本下对应的分类概率,z(z为不小于1的整数)表示字符库中的字符的数量,也即候选字符的数量;ti表示训练文本中的第i(i为不小于1且不大于m的整数)个文本字符对应的分类子结果;m(m为不小于1的整数)表示训练文本中的文本字符的数量;σ表示激活函数,例如,Sigmoid(S型)激活函数。
步骤8043:基于候选字符在训练文本下对应的分类概率以及候选字符与参考字符集合的匹配关系,获取第一损失,参考字符集合为训练文本中的文本字符以及训练实体词中的实体字符构成的集合。
候选字符与参考字符集合的匹配关系用于指示候选字符是否为参考字符集合中的字符。其中,参考字符集合为训练文本中的文本字符以及训练实体词中的实体字符构成的集合。
候选字符与参考字符集合的匹配关系有两种:候选字符为参考字符集合中的字符;或者,候选字符不为参考字符集合中的字符。示例性地,若候选字符为参考字符集合中的字符,则候选字符与参考字符集合的匹配关系可以记为1,若候选字符不为参考字符集合中的字符,则参考字符与参考字符集合的匹配关系可以记为0。
示例性地,基于候选字符在训练文本下对应的分类概率以及候选字符与参考字符集合的匹配关系,获取第一损失的过程基于公式5实现:
其中,loss2表示第一损失;Ωpos表示正类集合,也即为参考字符集合中的字符的候选字符的集合;表示为参考字符集合中的字符的候选字符p在训练文本下对应的分类概率;Ωneg表示负类集合,也即不为参考字符集合中的字符的候选字符的集合;表示不为参考字符集合中的字符的候选字符q在训练文本下对应的分类概率。Ωpos+Ωneg=vocab,vocab为候选字符的集合,也可以称为字符库、词典或词表。
步骤8044:基于第一损失以及各个实体字符对应的损失,获取目标损失。
对于获取第一损失的情况,采用联合训练的方式训练实体词获取模型。在采用联合训练的方式训练实体词获取模型的过程中,训练所依据的目标损失为基于第一损失以及训练实体词中的各个实体字符对应的损失得到的联合损失。
示例性地,基于第一损失以及各个实体字符对应的损失,获取目标损失的方式包括:计算第一损失与第一权重的乘积,以及各个实体字符对应的损失之和与第二权重的乘积,将两个乘积的和作为目标损失。第一权重和第二权重根据经验设置,或者根据应用场景灵活调整,本申请实施例对此不加以限定。
示例性地,目标损失基于公式6计算得到:
loss=λ*loss2+(1-λ)*loss1 (公式6)
其中,loss表示目标损失;loss2表示第一损失;loss1表示各个实体字符对应的损失之和;λ表示第一权重;(1一λ)表示第二权重。
示例性地,基于步骤8041至步骤8044获取目标损失的情况发生在图2所示的实施例中,根据方式3获取任一第一字符在起始字符下对应的目标概率、根据方式三获取任一候选字符在起始字符下对应的目标概率,或者,根据方式c获取任一约束字符在第一字符序列下对应的目标概率的情况下。
无论哪种情况,在获取目标损失后,利用目标损失对实体词获取模型进行训练,得到目标实体词获取模型。示例性地,利用目标损失对实体词获取模型进行训练的过程为:利用目标损失反向更新实体词获取模型的模型参数。每更新一次参数,判断一次得到的实体词获取模型是否满足第一终止条件,若不满足第一终止条件,则继续获取目标损失并利用目标损失继续更新实体词获取模型的模型参数;若满足第一终止条件,则将满足第一终止条件时得到的实体词获取模型作为目标实体词获取模型。至此,训练得到目标实体词获取模型。
示例性地,满足第一终止条件包括但不限于:实体词获取模型的模型参数的更新次数达到第一次数阈值;目标损失收敛;目标损失小于第一损失阈值等。
在示例性实施例中,对于目标损失基于步骤8041至步骤8044获取的情况,目标实体词获取模型可视为一种基于多标签任务增强的生成式模型,此种模型能够自动增强训练文本中的文本字符以及与训练文本中的文本字符相近的字符(也即训练文本对应的训练实体词中的实体字符)对应的概率。
在示例性实施例中,训练样本中除了包括训练文本和训练文本对应的一个训练实体词外,还可以包括训练文本对应的NER(Named Entity Recognition,命名实体词识别)信息和知识图谱信息中的至少一种,以使实体词获取模型能够通过综合考虑训练文本、训练文本对应的NER信息和知识图谱信息中的至少一种,来提取训练文本的编码特征,以提高训练文本的编码特征的可靠性,进而提高获取的实体词的可靠性。示例性地,NER信息可以是指训练文本中包括的命名实体词以及命名实体词所处的位置等,知识图谱信息可以是指训练文本关联的实体词或文本等。引入NER信息和知识图谱信息对实体词获取模型进行联合训练,有利于提高实体词获取模型获取实体词的效果。
本申请实施例提供的实体词获取模型的训练方法,利用由训练文本、训练文本对应的训练实体词构成的训练样本训练得到了目标实体词获取模型,从而能够通过调用目标实体词获取模型直接根据查询文本的编码特征和实体词约束信息获取查询文本对应的实体词,无需执行实体词识别的操作,也无需执行同义词替换的操作,获取查询文本对应的实体词的效率较高。
基于上述图1所示的实施环境,本申请实施例提供一种实体词过滤模型的训练方法,该实体词过滤模型的训练方法由计算机设备执行,该计算机设备可以为终端11,也可以为服务器12,本申请实施例对此不加以限定。如图9所示,本申请实施例提供的实体词过滤模型的训练方法包括如下步骤901和步骤902。
在步骤901中,获取第一训练样本,第一训练样本包括第一训练文本、第一训练文本对应的一个训练实体词,以及第一训练文本与该一个训练实体词的匹配标签。
第一训练样本用于对实体词过滤模型进行监督训练。第一训练样本的数量为一个或多个,本申请实施例对此不加以限定。
第一训练文本与该一个训练实体词的匹配标签用于指示第一训练文本与该一个训练实体词在语义上是否匹配,用于为实体词过滤模型输出的匹配结果提供监督信息。第一训练文本与该一个训练实体词的匹配标签由标注人员根据经验标注得到。
示例性地,第一训练样本中的第一训练文本以及第一训练文本对应的一个训练实体词的获取方式参见图8所示的实施例中获取训练样本的过程,此次不再加以赘述。
示例性地,不同的第一训练样本中可能包括相同的第一训练文本,但相同的第一训练文本对应的训练实体词不同,也就是说,同一第一训练文本可以对应不同的训练实体词。
在步骤902中,调用实体词过滤模型获取第一训练文本与训练实体词的匹配结果,基于匹配结果以及匹配标签,获取第二损失;基于第二损失,对实体词过滤模型进行训练,得到目标实体词过滤模型。
示例性地,调用实体词过滤模型获取训练样本中的训练文本与训练实体词的匹配结果的任务可以称为第一任务。
示例性地,实体词过滤模型获取第一训练文本的文本语义向量,以及训练实体词的实体词语义向量;根据文本语义向量和实体词语义向量,获取第一训练文本与训练实体词的匹配结果。
第二损失用于对实体词过滤模型的匹配结果预测功能进行衡量。在示例性实施例中,基于匹配结果和匹配标签,获取第二损失的方式为:将匹配结果和匹配标签之间的交叉熵损失作为第二损失。
在获取第二损失后,基于第二损失,对实体词过滤模型进行训练。在一种可能实现方式中,基于第二损失,对实体词过滤模型进行训练的过程为:直接基于第二损失反向更新实体词过滤模型的模型参数。在基于第二损失反向更新一次实体词过滤模型的模型参数之后,判断获取的实体词过滤模型是否满足第二终止条件,若不满足第二终止条件,则继续获取第二损失并对更新一次参数后的实体词过滤模型的模型参数再次进行更新,直至得到满足第二终止条件的实体词过滤模型,将满足第二终止条件的实体词过滤模型作为目标实体词过滤模型。
示例性地,满足第二终止条件包括但不限于:实体词过滤模型的模型参数的更新次数达到第二次数阈值;第二损失函数收敛;第二损失参数更新次数达到次数阈值,也可以是指第二损失收敛或小于第二损失阈值等。
在一种可能实现方式中,目标实体词过滤模型用于辅助获取目标领域的实体词,实体词过滤模型还具有实体词命中判别功能,该功能用于判别输入的文本中是否包括目标领域的实体词。基于第二损失对实体词过滤模型进行训练的过程包括:获取第二训练样本,第二训练样本包括第二训练文本和第二训练文本对应的实体词命中标签;调用实体词过滤模型获取第二训练文本对应的实体词命中结果;基于实体词命中结果和实体词命中标签,获取第三损失;基于第二损失和第三损失,对实体词过滤模型进行训练。
第二训练文本对应的实体词命中标签用于指示第二训练文本中是否包括目标领域的实体词。
示例性地,调用实体词过滤模型获取第二训练文本对应的实体词命中结果的过程为调用实体词过滤模型执行第二任务的过程。示例性地,调用实体词过滤模型获取第二训练文本对应的实体词命中结果的过程为调用实体词过滤模型获取第二训练文本的文本语义向量,根据文本语义向量,预测实体词命中结果。
示例性地,实体词命中结果为实体词过滤模型预测的第二训练文本包括目标领域的实体词的概率。示例性地,实体词命中结果包括实体词过滤模型预测的第二训练文本包括目标领域的实体词的概率以及不包括目标领域的实体词的概率。
第三损失用于对实体词过滤模型的实体词命中判别功能进行衡量。示例性地,第三损失为实体词命中结果与实体词命中标签之间的交叉熵损失。
在获取上述第二损失和上述第三损失之后,根据该第二损失和该第三损失,对实体词过滤模型进行训练。示例性地,根据第二损失和第三损失,对实体词过滤模型进行训练的方式为交替训练,示例性地,先根据第二损失对实体词过滤模型进行训练,然后在训练得到的实体词过滤模型的基础上获取第三损失,利用第三损失对训练得到的实体词过滤模型进行训练。以此类推,直至满足第三终止条件,将满足第三终止条件时得到的实体词过滤模型作为目标实体词过滤模型。
示例性地,满足第三终止条件包括但不限于:交替训练的次数达到第三次数阈值;第二损失和第三损失中的至少一个收敛等。
示例性地,结合图10,对实体词过滤模型的训练过程进行介绍。将第一训练文本和第一训练文本对应的一个训练实体词(记为[CLS]第一训练文本[SEP]训练实体词[SEP])输入实体词过滤模型,以执行第一任务。实体词过滤模型提取第一训练文本的文本语义向量和训练实体词的实体词语义向量,根据文本语义向量和实体词语义向量,输出匹配结果。将第二训练文本(记为[CLS]第二训练文本[SEP])输入实体词过滤模型,以执行第二任务。实体词过滤模型提取第二训练文本的文本语义向量,根据文本语义向量输出实体词命中结果。第一任务和第二任务共享实体词过滤模型。
基于匹配结果和匹配标签,获取第二损失;基于实体词命中结果和实体词命中标签,获取第三损失。利用第二损失以及第三损失,对实体词过滤模型进行交替训练,得到目标实体词过滤模型。此种交替训练方式能够基于多任务学习,提高模型的训练效果。
本申请实施例采用粗召+精排的方法,对口语化query(也即查询文本)做实体词归一化操作,以获取查询文本对应的实体词。在粗召阶段,使用目标实体词获取模型来获取查询文本对应的第一实体词,并用前缀树将第一实体词约束到标准实体词集合内。此外,为了使获取的实体词与查询文本更加接近,使用了两种方法来进行优化:第一种方法,通过在模型解码阶段增加一个超参数α来增大命中查询文本中的查询字符的候选字符对应的概率,这种方法无需重新训练就能起到不错的效果;第二种方法,在模型训练阶段,编码器端增加一个预测分类结果的多标签任务,以得到候选字符对应的增强概率,在解码阶段将该候选字符对应的增强概率增加到每个字符的概率预测过程中,从而使模型增大对查询文本中的查询字符以及可能是查询文本对应的实体词中的字符对应的概率,这种方法无需人工调整超参数,模型可以自动学习并增大相关字符对应的概率,模型泛化能力更强。
在精排阶段,使用一个实体词过滤模型(如,BERT模型)来预测召回的第一实体词与查询文本在语义上是否匹配,同时采用多任务的学习方法,提高小数据集合上分类的准确率。基于本申请实施例提供的方法获取的实体词能够与查询文本进行细粒度的交互,获取的实体词的可靠性较高,召回效果较好;模型复杂度不随标准实体词集合的增大而增大,可用于超大规模的实体词召回;不需要提前存储实体词特征,对存储比较友好,使得实用性大大提升。
本申请实施例提供的获取实体词的方法可以应用于医疗领域,接下来,以医疗领域为例,对获取实体词的方法进行介绍。
在医疗领域,获取实体词的方法包括:获取医疗领域的查询文本;提取医疗领域的查询文本的编码特征,基于编码特征和实体词约束信息,获取查询文本对应的第一实体词。其中,实体词约束信息用于使获取的第一实体词为标准实体词集合中的实体词,标准实体词集合中的任一实体词用于召回至少一个应答数据,且标准实体词中的任一实体词为医疗领域的实体词。
示例性地,标准实体词集合中的实体词包括但不限于用于描述疾病的名词、用于描述症状的名词、用于描述药品的名词、用于描述检查的名词等。
在医疗领域,获取查询文本对应的实体词能够为医疗领域的搜索引擎提供数据支持。医疗领域的搜索引擎,能够通过对医疗领域的内容进行专业的分析挖掘、过滤和筛选,为交互对象提供可靠精准的专业搜索。同通用的搜索引擎一样,搜索需要满足交互对象的各种各样的查询要求,因此需要让搜索引擎具有足够多的智能,才能更好的为交互对象服务,但是多数情况下交互对象很难用简单的关键词来表达真正需要搜索的内容,而且同一概念可以用不同的语言表现形式来表达,表达困难以及语言形式的多样化导致检索困难。
本申请实施例,基于弱监督数据,经过粗召+精排两阶段模型,将交互对象输入的医疗领域的口语化query(也即查询文本)归一成标准的实体词。在粗召阶段,使用目标实体词获取模型,输入医疗领域的口语化query,在基于标准实体词集合构建的前缀树的约束下,获取第一实体词。在精排阶段,通过BERT模型进一步过滤实体词,提高口语化归一的精确率。口语归一化任务对医疗领域的搜索引擎的语义召回等有着至关重要的作用,利用前缀树进行约束,能够保证归一化的实体词能召回搜索引擎中的应答数据,获取的实体词的可靠性较高。
参见图11,本申请实施例提供了一种获取实体词的装置,该装置包括:
第一获取单元1101,用于获取查询文本;
第一提取单元1102,用于提取查询文本的编码特征;
第二获取单元1103,用于基于编码特征和实体词约束信息,获取查询文本对应的第一实体词,实体词约束信息用于使获取的第一实体词为标准实体词集合中的实体词,标准实体词集合中的任一实体词用于召回至少一个应答数据。
在一种可能实现方式中,第二获取单元1103,用于基于编码特征和起始字符,获取字符库中的候选字符在起始字符下对应的预测概率;基于候选字符在起始字符下对应的预测概率以及实体词约束信息,获取字符序列;响应于当前获取的字符序列不满足第一条件,基于编码特征和当前获取的字符序列,获取候选字符在当前获取的字符序列下对应的预测概率;基于候选字符在当前获取的字符序列下对应的预测概率以及实体词约束信息,获取更新后的字符序列;响应于更新后的字符序列满足第一条件,基于更新后的字符序列,获取第一实体词。
在一种可能实现方式中,当前获取的字符序列的数量为多个,第二获取单元1103,用于基于实体词约束信息,在候选字符中确定第一字符序列对应的约束字符,第一字符序列为当前获取的多个字符序列中的任一字符序列;获取约束字符在第一字符序列下对应的目标概率,将在第一字符序列下对应的目标概率满足第二条件的约束字符作为第一字符序列对应的匹配字符,约束字符在第一字符序列下对应的目标概率基于约束字符在第一字符序列下对应的预测概率得到;基于当前获取的各个字符序列对应的匹配字符,获取更新后的字符序列。
在一种可能实现方式中,约束字符的数量为至少一个,第二获取单元1103,用于响应于第一约束字符命中查询文本中的查询字符,将第一约束字符在第一字符序列下对应的预测概率与查询文本中被命中的查询字符对应的增强概率之和,作为第一约束字符在第一字符序列下对应的目标概率,第一约束字符为至少一个约束字符中的任一约束字符;响应于第一约束字符未命中查询文本中的查询字符,将第一约束字符在第一字符序列下对应的预测概率作为第一约束字符在第一字符序列下对应的目标概率。
在一种可能实现方式中,约束字符的数量为至少一个,第二获取单元1103,用于获取第一约束字符在第一字符序列下对应的增强概率,第一约束字符为至少一个约束字符中的任一约束字符;将第一约束字符在第一字符序列下对应的预测概率与第一约束字符在第一字符序列下对应的增强概率之和,作为第一约束字符在第一字符序列下对应的目标概率。
在一种可能实现方式中,第二获取单元1103,用于基于编码特征,获取第一约束字符在查询文本中的各个查询字符下分别对应的分类概率;基于各个查询字符在第一字符序列下分别对应的注意力权重,对第一约束字符在各个查询字符下分别对应的分类概率进行加权求和,得到第一约束字符在第一字符序列下对应的增强概率。
在一种可能实现方式中,第二获取单元1103,用于基于当前获取的各个字符序列对应的匹配字符,获取各个字符序列对应的候选序列;将各个字符序列对应的候选序列中满足选取条件的候选序列,作为更新后的字符序列。
在一种可能实现方式中,第一获取单元1101,还用于基于标准实体词集合中的各个实体词对应的字符序列,构建前缀树,将前缀树作为实体词约束信息。
在一种可能实现方式中,第一提取单元1102,用于调用目标实体词获取模型提取查询文本的编码特征;
第二获取单元1103,用于调用目标实体词获取模型基于编码特征和实体词约束信息,获取查询文本对应的第一实体词。
在一种可能实现方式中,第二获取单元1103,还用于获取第一实体词与查询文本的匹配结果;基于匹配结果满足第三条件的第一实体词,获取查询文本对应的应答数据。
本申请实施例提供的获取实体词的装置,直接根据查询文本的编码特征和实体词约束信息获取查询文本对应的实体词,无需执行实体词识别的操作,也无需执行同义词替换的操作,获取查询文本对应的实体词的效率较高。此外,在考虑实体词约束信息的基础上,能够保证获取的实体词为标准实体词集合中的实体词,无论查询文本表达是否准确,根据获取的实体词均能够召回应答数据,获取的实体词的可靠性较高。
参见图12,本申请实施例提供了一种实体词获取模型的训练装置,该装置包括:
第三获取单元1201,用于获取训练样本,训练样本包括训练文本和训练文本对应的一个训练实体词;
第二提取单元1202,用于调用实体词获取模型提取训练文本的编码特征;
第四获取单元1203,用于基于编码特征和第一实体字符,获取字符库中的候选字符在第一实体字符下对应的预测概率;基于候选字符在第一实体字符下对应的预测概率以及候选字符与第一实体字符的匹配关系,获取第一实体字符对应的损失,第一实体字符为训练实体词中的任一实体字符;
第五获取单元1204,用于基于训练实体词中的各个实体字符对应的损失,获取目标损失;
训练单元1205,用于利用目标损失对实体词获取模型进行训练,得到目标实体词获取模型。
在一种可能实现方式中,第五获取单元1204,用于基于编码特征,获取候选字符在训练文本中的各个文本字符下分别对应的分类概率;基于候选字符在各个文本字符下分别对应的分类概率,获取候选字符在训练文本下对应的分类概率;基于候选字符在训练文本下对应的分类概率以及候选字符与参考字符集合的匹配关系,获取第一损失,参考字符集合为训练文本中的文本字符以及训练实体词中的实体字符构成的集合;基于第一损失以及各个实体字符对应的损失,获取目标损失。
本申请实施例提供的实体词获取模型的训练装置,利用由训练文本、训练文本对应的训练实体词构成的训练样本训练得到了目标实体词获取模型,从而能够通过调用目标实体词获取模型直接根据查询文本的编码特征和实体词约束信息获取查询文本对应的实体词,无需执行实体词识别的操作,也无需执行同义词替换的操作,获取查询文本对应的实体词的效率较高。
需要说明的是,上述实施例提供的装置在实现其功能时,仅以上述各功能单元的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元完成,即将设备的内部结构划分成不同的功能单元,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
在示例性实施例中,还提供了一种计算机设备,该计算机设备包括处理器和存储器,该存储器中存储有至少一条计算机程序。该至少一条计算机程序由一个或者一个以上处理器加载并执行,以使该计算机设备实现上述任一种获取实体词的方法或实体词获取模型的训练方法。该计算机设备可以为服务器,也可以为终端,本申请实施例对此不加以限定。接下来,对服务器和终端的结构分别进行介绍。
图13是本申请实施例提供的一种服务器的结构示意图,该服务器可因配置或性能不同而产生比较大的差异,可以包括一个或多个处理器(Central Processing Units,CPU)1301和一个或多个存储器1302,其中,该一个或多个存储器1302中存储有至少一条计算机程序,该至少一条计算机程序由该一个或多个处理器1301加载并执行,以使该服务器实现上述各个方法实施例提供的获取实体词的方法或实体词获取模型的训练方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
图14是本申请实施例提供的一种终端的结构示意图。该终端可以是:PC、手机、智能手机、PDA、可穿戴设备、PPC、平板电脑、智能车机、智能电视、智能音箱、智能语音交互设备、智能家电、车载终端。终端还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端包括有:处理器1401和存储器1402。
处理器1401可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1401可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1401也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1401可以集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1401还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1402可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1402还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1402中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1401所执行,以使该终端实现本申请中方法实施例提供的获取实体词的方法或实体词获取模型的训练方法。
在一些实施例中,终端还可选包括有:外围设备接口1403和至少一个外围设备。处理器1401、存储器1402和外围设备接口1403之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1403相连。具体地,外围设备包括:射频电路1404、显示屏1405、摄像头组件1406、音频电路1407和电源1408中的至少一种。
外围设备接口1403可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1401和存储器1402。在一些实施例中,处理器1401、存储器1402和外围设备接口1403被集成在同一芯片或电路板上;在一些其他实施例中,处理器1401、存储器1402和外围设备接口1403中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1404用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1404通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1404将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1404包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等。射频电路1404可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1404还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏1405用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1405是触摸显示屏时,显示屏1405还具有采集在显示屏1405的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1401进行处理。此时,显示屏1405还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1405可以为一个,设置在终端的前面板;在另一些实施例中,显示屏1405可以为至少两个,分别设置在终端的不同表面或呈折叠设计;在另一些实施例中,显示屏1405可以是柔性显示屏,设置在终端的弯曲表面上或折叠面上。甚至,显示屏1405还可以设置成非矩形的不规则图形,也即异形屏。显示屏1405可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件1406用于采集图像或视频。可选地,摄像头组件1406包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1406还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1407可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1401进行处理,或者输入至射频电路1404以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1401或射频电路1404的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1407还可以包括耳机插孔。
电源1408用于为终端中的各个组件进行供电。电源1408可以是交流电、直流电、一次性电池或可充电电池。当电源1408包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端还包括有一个或多个传感器1409。该一个或多个传感器1409包括但不限于:加速度传感器1410、陀螺仪传感器1411、压力传感器1412、光学传感器1413以及接近传感器1414。
加速度传感器1410可以检测以终端建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1410可以用于检测重力加速度在三个坐标轴上的分量。处理器1401可以根据加速度传感器1410采集的重力加速度信号,控制显示屏1405以横向视图或纵向视图进行用户界面的显示。加速度传感器1410还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器1411可以检测终端的机体方向及转动角度,陀螺仪传感器1411可以与加速度传感器1410协同采集用户对终端的3D动作。处理器1401根据陀螺仪传感器1411采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器1412可以设置在终端的侧边框和/或显示屏1405的下层。当压力传感器1412设置在终端的侧边框时,可以检测用户对终端的握持信号,由处理器1401根据压力传感器1412采集的握持信号进行左右手识别或快捷操作。当压力传感器1412设置在显示屏1405的下层时,由处理器1401根据用户对显示屏1405的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
光学传感器1413用于采集环境光强度。在一个实施例中,处理器1401可以根据光学传感器1413采集的环境光强度,控制显示屏1405的显示亮度。具体地,当环境光强度较高时,调高显示屏1405的显示亮度;当环境光强度较低时,调低显示屏1405的显示亮度。在另一个实施例中,处理器1401还可以根据光学传感器1413采集的环境光强度,动态调整摄像头组件1406的拍摄参数。
接近传感器1414,也称距离传感器,通常设置在终端的前面板。接近传感器1414用于采集用户与终端的正面之间的距离。在一个实施例中,当接近传感器1414检测到用户与终端的正面之间的距离逐渐变小时,由处理器1401控制显示屏1405从亮屏状态切换为息屏状态;当接近传感器1414检测到用户与终端的正面之间的距离逐渐变大时,由处理器1401控制显示屏1405从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图14中示出的结构并不构成对终端的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
在示例性实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条计算机程序,该至少一条计算机程序由计算机设备的处理器加载并执行,以使计算机实现上述任一种获取实体词的方法或实体词获取模型的训练方法。
在一种可能实现方式中,上述计算机可读存储介质可以是只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、只读光盘(Compact DiscRead-Only Memory,CD-ROM)、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种计算机程序产品,该计算机程序产品包括计算机程序或计算机指令,该计算机程序或计算机指令由处理器加载并执行,以使计算机实现上述任一种获取实体词的方法或实体词获取模型的训练方法。
需要说明的是,本申请中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以上示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
以上仅为本申请的示例性实施例,并不用以限制本申请,凡在本申请的原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (15)
1.一种获取实体词的方法,其特征在于,所述方法包括:
获取查询文本;
提取所述查询文本的编码特征;
基于所述编码特征和实体词约束信息,获取所述查询文本对应的第一实体词,所述实体词约束信息用于使获取的第一实体词为标准实体词集合中的实体词,所述标准实体词集合中的任一实体词用于召回至少一个应答数据。
2.根据权利要求1所述的方法,其特征在于,所述基于所述编码特征和实体词约束信息,获取所述查询文本对应的第一实体词,包括:
基于所述编码特征和起始字符,获取字符库中的候选字符在起始字符下对应的预测概率;基于所述候选字符在所述起始字符下对应的预测概率以及所述实体词约束信息,获取字符序列;
响应于当前获取的字符序列不满足第一条件,基于所述编码特征和所述当前获取的字符序列,获取所述候选字符在所述当前获取的字符序列下对应的预测概率;基于所述候选字符在所述当前获取的字符序列下对应的预测概率以及所述实体词约束信息,获取更新后的字符序列;
响应于所述更新后的字符序列满足所述第一条件,基于所述更新后的字符序列,获取所述第一实体词。
3.根据权利要求2所述的方法,其特征在于,所述当前获取的字符序列的数量为多个,所述基于所述候选字符在所述当前获取的字符序列下对应的预测概率以及所述实体词约束信息,获取更新后的字符序列,包括:
基于所述实体词约束信息,在所述候选字符中确定第一字符序列对应的约束字符,所述第一字符序列为所述当前获取的多个字符序列中的任一字符序列;
获取所述约束字符在所述第一字符序列下对应的目标概率,将在所述第一字符序列下对应的目标概率满足第二条件的约束字符作为所述第一字符序列对应的匹配字符,所述约束字符在所述第一字符序列下对应的目标概率基于所述约束字符在所述第一字符序列下对应的预测概率得到;
基于当前获取的各个字符序列对应的匹配字符,获取所述更新后的字符序列。
4.根据权利要求3所述的方法,其特征在于,所述约束字符的数量为至少一个,所述获取所述约束字符在所述第一字符序列下对应的目标概率,包括:
响应于第一约束字符命中所述查询文本中的查询字符,将所述第一约束字符在所述第一字符序列下对应的预测概率与所述查询文本中被命中的查询字符对应的增强概率之和,作为所述第一约束字符在所述第一字符序列下对应的目标概率,所述第一约束字符为至少一个约束字符中的任一约束字符;
响应于所述第一约束字符未命中所述查询文本中的查询字符,将所述第一约束字符在所述第一字符序列下对应的预测概率作为所述第一约束字符在所述第一字符序列下对应的目标概率。
5.根据权利要求3所述的方法,其特征在于,所述约束字符的数量为至少一个,所述获取所述约束字符在所述第一字符序列下对应的目标概率,包括:
获取第一约束字符在所述第一字符序列下对应的增强概率,所述第一约束字符为至少一个约束字符中的任一约束字符;
将所述第一约束字符在所述第一字符序列下对应的预测概率与所述第一约束字符在所述第一字符序列下对应的增强概率之和,作为所述第一约束字符在所述第一字符序列下对应的目标概率。
6.根据权利要求5所述的方法,其特征在于,所述获取第一约束字符在所述第一字符序列下对应的增强概率,包括:
基于所述编码特征,获取所述第一约束字符在所述查询文本中的各个查询字符下分别对应的分类概率;
基于所述各个查询字符在所述第一字符序列下分别对应的注意力权重,对所述第一约束字符在所述各个查询字符下分别对应的分类概率进行加权求和,得到所述第一约束字符在所述第一字符序列下对应的增强概率。
7.根据权利要求3所述的方法,其特征在于,所述基于当前获取的各个字符序列对应的匹配字符,获取所述更新后的字符序列,包括:
基于当前获取的各个字符序列对应的匹配字符,获取所述各个字符序列对应的候选序列;
将所述各个字符序列对应的候选序列中满足选取条件的候选序列,作为所述更新后的字符序列。
8.根据权利要求1-7任一所述的方法,其特征在于,所述基于所述编码特征和实体词约束信息,获取所述查询文本对应的第一实体词之前,所述方法还包括:
基于所述标准实体词集合中的各个实体词对应的字符序列,构建前缀树,将所述前缀树作为所述实体词约束信息。
9.根据权利要求1-7任一所述的方法,其特征在于,所述提取所述查询文本的编码特征,包括:
调用目标实体词获取模型提取所述查询文本的编码特征;
所述基于所述编码特征和实体词约束信息,获取所述查询文本对应的第一实体词,包括:
调用所述目标实体词获取模型基于所述编码特征和所述实体词约束信息,获取所述查询文本对应的第一实体词。
10.根据权利要求1-7任一所述的方法,其特征在于,所述获取所述查询文本对应的第一实体词之后,所述方法还包括:
获取所述第一实体词与所述查询文本的匹配结果;
基于匹配结果满足第三条件的第一实体词,获取所述查询文本对应的应答数据。
11.一种实体词获取模型的训练方法,其特征在于,所述方法包括:
获取训练样本,所述训练样本包括训练文本和所述训练文本对应的一个训练实体词;
调用实体词获取模型提取所述训练文本的编码特征;
基于所述编码特征和第一实体字符,获取字符库中的候选字符在所述第一实体字符下对应的预测概率;基于所述候选字符在所述第一实体字符下对应的预测概率以及所述候选字符与所述第一实体字符的匹配关系,获取所述第一实体字符对应的损失,所述第一实体字符为所述训练实体词中的任一实体字符;
基于所述训练实体词中的各个实体字符对应的损失,获取目标损失;利用所述目标损失对所述实体词获取模型进行训练,得到目标实体词获取模型。
12.根据权利要求11所述的方法,其特征在于,所述基于所述训练实体词中的各个实体字符对应的损失,获取目标损失,包括:
基于所述编码特征,获取所述候选字符在所述训练文本中的各个文本字符下分别对应的分类概率;
基于所述候选字符在所述各个文本字符下分别对应的分类概率,获取所述候选字符在所述训练文本下对应的分类概率;
基于所述候选字符在所述训练文本下对应的分类概率以及所述候选字符与参考字符集合的匹配关系,获取第一损失,所述参考字符集合为所述训练文本中的文本字符以及所述训练实体词中的实体字符构成的集合;
基于所述第一损失以及所述各个实体字符对应的损失,获取所述目标损失。
13.一种获取实体词的装置,其特征在于,所述装置包括:
第一获取单元,用于获取查询文本;
第一提取单元,用于提取所述查询文本的编码特征;
第二获取单元,用于基于所述编码特征和实体词约束信息,获取所述查询文本对应的第一实体词,所述实体词约束信息用于使获取的第一实体词为标准实体词集合中的实体词,所述标准实体词集合中的任一实体词用于召回至少一个应答数据。
14.一种实体词获取模型的训练装置,其特征在于,所述装置包括:
第三获取单元,用于获取训练样本,所述训练样本包括训练文本和所述训练文本对应的一个训练实体词;
第二提取单元,用于调用实体词获取模型提取所述训练文本的编码特征;
第四获取单元,用于基于所述编码特征和第一实体字符,获取字符库中的候选字符在所述第一实体字符下对应的预测概率;基于所述候选字符在所述第一实体字符下对应的预测概率以及所述候选字符与所述第一实体字符的匹配关系,获取所述第一实体字符对应的损失,所述第一实体字符为所述训练实体词中的任一实体字符;
第五获取单元,用于基于所述训练实体词中的各个实体字符对应的损失,获取目标损失;
训练单元,用于利用所述目标损失对所述实体词获取模型进行训练,得到目标实体词获取模型。
15.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条计算机程序,所述至少一条计算机程序由所述处理器加载并执行,以使所述计算机设备实现如权利要求1至10任一所述的获取实体词的方法,或者如权利要求11至12任一所述的实体词获取模型的训练方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210134381.7A CN114510942A (zh) | 2022-02-14 | 2022-02-14 | 获取实体词的方法、模型的训练方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210134381.7A CN114510942A (zh) | 2022-02-14 | 2022-02-14 | 获取实体词的方法、模型的训练方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114510942A true CN114510942A (zh) | 2022-05-17 |
Family
ID=81551824
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210134381.7A Pending CN114510942A (zh) | 2022-02-14 | 2022-02-14 | 获取实体词的方法、模型的训练方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114510942A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116227479A (zh) * | 2022-12-29 | 2023-06-06 | 易方达基金管理有限公司 | 一种实体识别方法、装置、计算机设备和可读存储介质 |
-
2022
- 2022-02-14 CN CN202210134381.7A patent/CN114510942A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116227479A (zh) * | 2022-12-29 | 2023-06-06 | 易方达基金管理有限公司 | 一种实体识别方法、装置、计算机设备和可读存储介质 |
CN116227479B (zh) * | 2022-12-29 | 2024-05-17 | 易方达基金管理有限公司 | 一种实体识别方法、装置、计算机设备和可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12008810B2 (en) | Video sequence selection method, computer device, and storage medium | |
CN110852100B (zh) | 关键词提取方法、装置、电子设备及介质 | |
CN111985240B (zh) | 命名实体识别模型的训练方法、命名实体识别方法及装置 | |
CN112668671A (zh) | 预训练模型的获取方法和装置 | |
CN111897964A (zh) | 文本分类模型训练方法、装置、设备及存储介质 | |
CN112669928B (zh) | 结构化信息构建方法、装置、计算机设备及存储介质 | |
WO2021169347A1 (zh) | 提取文本关键字的方法及装置 | |
CN113515942A (zh) | 文本处理方法、装置、计算机设备及存储介质 | |
CN113254684B (zh) | 一种内容时效的确定方法、相关装置、设备以及存储介质 | |
CN111930964B (zh) | 内容处理方法、装置、设备及存储介质 | |
CN113569042A (zh) | 文本信息分类方法、装置、计算机设备及存储介质 | |
US20240152770A1 (en) | Neural network search method and related device | |
CN114510942A (zh) | 获取实体词的方法、模型的训练方法、装置及设备 | |
CN117273019A (zh) | 对话模型的训练方法、对话生成方法、装置和设备 | |
CN112163095A (zh) | 数据处理方法、装置、设备及存储介质 | |
CN116959733A (zh) | 医疗数据的分析方法、装置、设备及存储介质 | |
CN113641799B (zh) | 文本处理方法、装置、计算机设备及存储介质 | |
CN112988984B (zh) | 特征获取方法、装置、计算机设备及存储介质 | |
CN113486260B (zh) | 互动信息的生成方法、装置、计算机设备及存储介质 | |
CN115130456A (zh) | 语句解析、匹配模型的训练方法、装置、设备及存储介质 | |
Rathi et al. | Personalized health framework for visually impaired | |
CN114360528A (zh) | 语音识别方法、装置、计算机设备及存储介质 | |
CN114281937A (zh) | 嵌套实体识别模型的训练方法、嵌套实体识别方法及装置 | |
CN113515943A (zh) | 自然语言处理方法及其模型的获取方法、装置、存储介质 | |
CN113569002A (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 |