CN114818644B - 文本模板生成方法、装置、设备及存储介质 - Google Patents
文本模板生成方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114818644B CN114818644B CN202210732483.9A CN202210732483A CN114818644B CN 114818644 B CN114818644 B CN 114818644B CN 202210732483 A CN202210732483 A CN 202210732483A CN 114818644 B CN114818644 B CN 114818644B
- Authority
- CN
- China
- Prior art keywords
- text
- template
- slot value
- intention
- vector
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/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/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
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Machine Translation (AREA)
Abstract
本公开提供一种文本模板生成方法、装置、设备及存储介质。该方法包括:将目标文本作为预训练模型的输入,利用预训练模型中的词向量层对目标文本进行处理,得到文本向量;基于槽值词典对文本向量中的词向量进行筛选,得到槽值语义向量,利用槽值编码器对槽值语义向量进行特征提取,得到槽值语义信息;利用文本编码器对文本向量进行特征提取,得到目标文本的文本语义信息,利用双向解码器进行文本意图分类,得到目标文本对应的文本意图类别和文本意图信息;将槽值语义信息、文本语义信息以及文本意图信息,作为文本模板解码器的输入,利用文本模板解码器输出目标文本的文本模板。本公开提升了生成文本模板的准确率,省时省力,具有可解释性。
Description
技术领域
本公开涉及自然语言处理技术领域,尤其涉及一种文本模板生成方法、装置、设备及存储介质。
背景技术
随着自然语言技术的不断发展,智能音箱、智能机器人、语音助手、自动客服等越来越多的智能问答系统产品在生活中发挥作用。智能问答系统产品以人机语音交互方式为主,通常是先获取用户输入的语音信息,通过语音识别技术将语音转换成文本,再通过语义理解技术识别用户的文本意图。而在整个自然语言处理中,对用户语句进行意图识别的意图识别技术是最关键的部分之一,并且在多数语义识别场景中,为了更好的理解用户的意图,需要将用户语句转化为相应的文本模板。
现有技术中,目前的智能问答系统产品在进行文本意图识别时,主要采取以下两种方法:一种方法是基于模板规则匹配的方法,虽然这种方法具有一定的准确率和可解释性,但是需要耗费巨大人工书写模版,且召回率低;另一种方法是基于机器学习的方法,该方法虽然召回率高,但是不具有可解释性。因此,目前智能问答系统产品的意图识别和文本模板生成方法无法兼顾准确率、召回率和可解释性。
发明内容
有鉴于此,本公开实施例提供了一种文本模板生成方法、装置、设备及存储介质,以解决现有技术存在的文本模板生成方法无法兼顾准确率、召回率和可解释性的问题。
本公开实施例的第一方面,提供了一种文本模板生成方法,包括:获取待生成文本模板的目标文本,将目标文本作为预训练模型的输入,利用预训练模型中的词向量层对目标文本进行处理,得到目标文本对应的文本向量;基于预设的槽值词典对文本向量中的词向量进行筛选,得到文本向量对应的槽值语义向量,利用槽值编码器对槽值语义向量进行特征提取,得到槽值语义信息;利用预训练的文本编码器对文本向量进行特征提取,得到目标文本的文本语义信息,并利用双向解码器基于文本语义信息进行文本意图分类,得到目标文本对应的文本意图类别和文本意图信息;将槽值语义信息、文本语义信息以及文本意图信息,作为文本模板解码器的输入,利用文本模板解码器输出目标文本对应的文本模板。
本公开实施例的第二方面,提供了一种文本模板生成装置,包括:获取模块,被配置为获取待生成文本模板的目标文本,将目标文本作为预训练模型的输入,利用预训练模型中的词向量层对目标文本进行处理,得到目标文本对应的文本向量;筛选模块,被配置为基于预设的槽值词典对文本向量中的词向量进行筛选,得到文本向量对应的槽值语义向量,利用槽值编码器对槽值语义向量进行特征提取,得到槽值语义信息;分类模块,被配置为利用预训练的文本编码器对文本向量进行特征提取,得到目标文本的文本语义信息,并利用双向解码器基于文本语义信息进行文本意图分类,得到目标文本对应的文本意图类别和文本意图信息;生成模块,被配置为将槽值语义信息、文本语义信息以及文本意图信息,作为文本模板解码器的输入,利用文本模板解码器输出目标文本对应的文本模板。
本公开实施例的第三方面,提供了一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现上述方法的步骤。
本公开实施例的第四方面,提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述方法的步骤。
本公开实施例采用的上述至少一个技术方案能够达到以下有益效果:
通过获取待生成文本模板的目标文本,将目标文本作为预训练模型的输入,利用预训练模型中的词向量层对目标文本进行处理,得到目标文本对应的文本向量;基于预设的槽值词典对文本向量中的词向量进行筛选,得到文本向量对应的槽值语义向量,利用槽值编码器对槽值语义向量进行特征提取,得到槽值语义信息;利用预训练的文本编码器对文本向量进行特征提取,得到目标文本的文本语义信息,并利用双向解码器基于文本语义信息进行文本意图分类,得到目标文本对应的文本意图类别和文本意图信息;将槽值语义信息、文本语义信息以及文本意图信息,作为文本模板解码器的输入,利用文本模板解码器输出目标文本对应的文本模板。本公开提升了生成文本模板的准确率,省时省力,具有可解释性,兼顾了准确率、召回率和可解释性这三个要求。
附图说明
为了更清楚地说明本公开实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本公开实施例涉及的文本模板生成系统的整体结构示意图;
图2是本公开实施例提供的文本模板生成方法的流程示意图;
图3是本公开实施例提供的文本模板解码器的注意力矩阵的结构示意图;
图4是本公开实施例提供的文本模板生成装置的结构示意图;
图5是本公开实施例提供的电子设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本公开实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本公开。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本公开的描述。
近年来,随着人工智能和自然语言技术的不断发展,智能问答系统作为一种结合机器智能和会话的新型产品形态,可以更好地连接人和服务,以人和信息为目标,通过与用户之间使用自然语言进行多轮交互的方式,为用户带来了新的人性化服务体验和服务便利,比如Google Assistant、Apple Siri等。
智能问答系统以人机语音交互方式为主,通常是先获取用户输入的语音信息,通过语音识别技术将语音转换成文本,再通过语义理解技术理解用户的意图,随后通过对话管理技术,结合上下文和用户信息,生成并执行一系列行为和策略。而在整个自然语言处理中,对用户语句进行意图识别的意图识别技术是最关键的部分之一,并且在多数语义识别场景中,为了更好的理解用户的意图,需要将用户语句转化为相应的文本模板。
鉴于背景技术中所描述的现有技术中的问题,如何结合模板规则匹配和机器学习方法的优点,兼顾准确率、召回率和可解释性,提升生成文本模板的准确率,是当前文本模板生成领域所关注的重要问题之一。对此,本公开提供一种基于模型训练的文本模板生成方法,本公开可以直接将文本转化为文本模板,并得到其对应的意图类别,在优化各意图模板库的同时,保证了高准确率和可解释性。
下面结合附图对本公开实施例所涉及系统的整体架构进行说明。图1是本公开实施例涉及的文本模板生成系统的整体结构示意图,如图1所示,文本模板生成系统具体可以包括以下内容:
将文本输入到预训练模型之后,首先利用预训练模型中的词向量层对文本进行分词,并将文本转化为文本向量,之后利用槽值词典对文本向量中的词向量进行筛选,得到筛选后的槽值语义信息,以及将文本向量作为文本编码器的输入,利用文本编码器对文本向量进行特征提取,得到文本语义信息,将文本语义信息输入到双向解码器中,利用双向解码器对文本语义信息进行解码得到初始文本意图信息,并且通过双向取[CLS]最终的隐藏状态代表整个句子,后面再接一个Softmax分类器,得到文本的意图类别。最后,将槽值语义信息、文本语义信息以及文本意图信息输入到seq2seq解码器(即文本模板解码器),利用seq2seq解码器输出文本的文本模板。
图2是本公开实施例提供的文本模板生成方法的流程示意图。图2的文本模板生成方法可以由服务器执行。如图2所示,该文本模板生成方法具体可以包括:
S201,获取待生成文本模板的目标文本,将目标文本作为预训练模型的输入,利用预训练模型中的词向量层对目标文本进行处理,得到目标文本对应的文本向量;
S202,基于预设的槽值词典对文本向量中的词向量进行筛选,得到文本向量对应的槽值语义向量,利用槽值编码器对槽值语义向量进行特征提取,得到槽值语义信息;
S203,利用预训练的文本编码器对文本向量进行特征提取,得到目标文本的文本语义信息,并利用双向解码器基于文本语义信息进行文本意图分类,得到目标文本对应的文本意图类别和文本意图信息;
S204,将槽值语义信息、文本语义信息以及文本意图信息,作为文本模板解码器的输入,利用文本模板解码器输出目标文本对应的文本模板。
具体地,本公开实施例的目标文本是指在实际应用场景中,待生成文本模板及待进行意图分类的文本,比如可以是对用户发出的语音进行语音识别得到的句子。在实际应用中,在将预训练模型部署到实际产品中之前,需要获取一定量的取文本数据以及文本数据对应的文本意图和文本模板,从而生成基础语料数据集,利用基础语料数据集对预训练模型进行训练,因此,本公开实施例的基础语料数据集也可以认为是模型训练集,模型训练集中包含若干个训练样本。
进一步地,本公开实施例的槽值编码器和文本编码器均是采用BERT模型框架所生成的预训练模型。BERT(Bidirectional Encoder Representation from Transformers)是一种预训练的语言表征模型,BERT采用了Transformer Encoder block进行连接,它强调了不再像以往一样采用传统的单向语言模型或者把两个单向语言模型进行浅层拼接的方法进行预训练,而是采用新的masked language model(MLM),以致能生成深度的双向语言表征,BERT模型是一个典型的双向编码模型。
根据本公开实施例提供的技术方案,本公开通过获取待生成文本模板的目标文本,将目标文本作为预训练模型的输入,利用预训练模型中的词向量层对目标文本进行处理,得到目标文本对应的文本向量;基于预设的槽值词典对文本向量中的词向量进行筛选,得到文本向量对应的槽值语义向量,利用槽值编码器对槽值语义向量进行特征提取,得到槽值语义信息;利用预训练的文本编码器对文本向量进行特征提取,得到目标文本的文本语义信息,并利用双向解码器基于文本语义信息进行文本意图分类,得到目标文本对应的文本意图类别和文本意图信息;将槽值语义信息、文本语义信息以及文本意图信息,作为文本模板解码器的输入,利用文本模板解码器输出目标文本对应的文本模板。本公开提升了生成文本模板的准确率,省时省力,具有可解释性,兼顾了准确率、召回率和可解释性这三个要求。
在一些实施例中,对预训练模型进行训练包括:获取文本数据以及文本数据对应的文本意图和文本模板,基于文本数据、文本意图和文本模板生成基础语料数据集,利用基础语料数据集对预训练模型进行训练;其中,基础语料数据集中包含若干个样本数据,每个样本数据中包含句子对应的序号、文本内容、文本模板和文本意图。
具体地,为了实现对预训练模型的训练,需要从基础语料库中获取一些文本语料,并确定每个文本语料对应的文本模板和文本意图,其中,文本意图中包含了意图的类别和意图的槽值。在实际应用中,针对每一个意图类别,以人工方式构建了一些文本模板,因此一个意图类别对应一个模板集合,即意图类别与文本模板是一对多的关系,但是同一文本模板对应一个意图类别。
进一步地,在生成基础语料数据集时,首先选取部分文本数据,对这些文本数据进行人工标记,得到每个句子的文本模板和文本意图,获取标记后的数据集(即基础语料数据集),将基础语料数据集记作,基础语料数据集中的每条样本数据可以表示为{id,content,pattern,intent},其中id表示句子的序号,content表示句子的文本内容,pattern表示句子的文本模板,intent表示句子的文本意图。例如在一个具体实施例中,id=“1325”,content=‘您好麻烦给我一瓶瓶装水’,pattern=‘.* 给我 NUM UNIT ITEM .*’,intent=送物意图,此时,NUM=1,ITEM=瓶装水,UNIT=1。
在一些实施例中,该方法还包括:基于基础语料数据集中样本数据对应的文本意图,对文本模板中的槽值进行整理得到槽值词典,槽值词典中包含多个槽类型,以及每个槽类型对应的词语。
具体地,在预训练模型的训练准备阶段,对于文本语料的槽值信息需要进行处理,即基于样本数据对应的文本意图,对文本模板中的槽值进行整理,并基于整理后的槽值生成槽值词典。下面结合具体实施例对槽值词典的生成过程进行详细说明,具体可以包括以下内容:
通过整理文本意图intent中需要做槽值抽取的词生成槽值词典,槽值词典中的词按类别汇总,槽值词典可以表示为{‘slotA’:[sA1,sA2,...,sAn],‘slotB’:[sB1,sB2,...,sBn],..,‘slotK’:[sK1,sK2,...,sKn],},其中slot*表示槽类型,s*1,s*2,...,s*n表示该槽类型包含的词,共有K个类型的槽,例如:{‘NUM’:[1,2一,二],’ITEM’:[‘瓶装水’,’拖鞋’],’UNIT’:[‘个’,’瓶’]}。
在一些实施例中,利用预训练模型中的词向量层对目标文本进行处理,得到目标文本对应的文本向量,包括:将槽值词典添加到分词词典中,并利用添加槽值词典后的分词词典对目标文本进行处理,得到目标文本对应的分词后的文本,将分词后的文本映射为连续的低维向量,以便将低维向量作为目标文本的文本向量。
具体地,利用词向量层对目标文本进行分词时,首先将槽值词典加到分词词典中,保证槽中的信息能分到一起。利用添加槽值词典后的分词词典对目标文本进行分词,得到目标文本对应的分词后的文本,例如将分词后的文本表示为{w1,w2,...,wm}。在词向量层中,还需要将分词后的文本映射成连续低维的向量形式,本公开实施例使用word2vec将分词后的文本转化为向量形式,转化后的文本向量表示为。
在一些实施例中,基于预设的槽值词典对文本向量中的词向量进行筛选,得到文本向量对应的槽值语义向量,包括:获取槽值词典中每个词语对应的词向量,分别计算目标文本的文本向量中的每个词向量与槽值词典中的各个槽类型下的每个词语对应词向量之间的余弦距离,将文本向量中余弦距离大于或等于距离阈值的词向量,替换为对应槽类型下的所有词语的词向量的平均向量,并将文本向量中余弦距离小于距离阈值的词向量,替换为固定值。
具体地,在利用词向量层进行处理得到文本向量之后,一方面筛选槽值信息,另一方面利用文本编码器对文本向量进行编码。下面结合具体实施例,对本公开实施例进行槽值信息的筛选过程进行详细说明,具体可以包括以下内容:
获取槽值词典中每个词的词向量,比如槽值类别slot*中的每个词[s*1,s*2,...,s*n],对应的词向量为;对于目标文本中每个词的词向量,将目标文本的文本向量中的每个词向量分别与槽值词典中各槽类型下的每个词的词向量之间计算余弦距离,根据距离阈值(比如取0.9)对文本向量中的词向量进行替换。在实际应用中,将余弦距离≥0.9的词向量,替换成该槽类别下的所有词对应词向量的平均向量,并将余弦距离<0.9的词向量,替换为固定值(比如固定值为0)。最后,经过筛选槽值信息所得到的文本向量对应的槽值语义向量为:
进一步地,在筛选得到槽值语义向量之后,利用槽值编码器对槽值语义向量进行特征提取,得到槽值语义信息。在实际应用中,槽值编码器采用基于BERT模型框架的槽值编码器,槽值编码器可以使用公知的预训练任务在通用领域的语料进行训练,槽值编码器的训练过程不构成对本公开技术方案的限定。
在一些实施例中,预训练的文本编码器采用预训练的BERT模型,采用以下方式对BERT模型进行预训练,包括:在基于文本关键信息掩码语言模型任务作为预训练任务对BERT模型进行预训练时,从每个样本数据中定向选取一定比例的关键单词和非关键单词,并对关键单词和非关键单词进行掩码;在基于文本模板匹配模型任务作为预训练任务对BERT模型进行预训练时,从基础语料数据集中抽取至少一个句子,并按照预定概率抽取句子对应的第一模板,以及根据第一模板对应的意图类别,按照相同的概率从意图类别对应的模板集合中随机选取一个第二模板;将句子和第一模板,以及句子和第二模板,均作为文本模板匹配模型的输入,以通过文本模板匹配模型任务对输入进行预测,判断句子与第一模板或第二模板是否匹配。
具体地,BERT官方模型为了学习语义信息,使用了两个任务作为预训练,即现有的BERT模型的预训练中引入了以下两大核心任务:引入Masked LM(带MASK的语言模型训练)以及引入Next Sentence Prediction(下句话的预测任务)。下面对现有的BERT模型的预训练任务进行说明,具体可以包括以下内容:
在第一个预训练任务中,即随机静态掩码的语言模型训练中,对于每一个序列随机选择15%的Tokens(文本中出现的所有词的个数)替换成[MASK](即掩码);对于每一个被替换的Token,80%的时间替换成[MASK],10%的时间不变,10%的时间替换成其他词,预训练的任务为对被替换的词进行预测;
在第二个预训练任务中,即下个句子的预测任务中,通过输入一对句子A和B,判断A和B两个句子是否连续,预训练时50%的数据为连续,50%为非连续。
进一步地,为了适应本公开技术方案,本公开实施例对BERT模型的预训练任务进行了调整,在BERT官方模型的预训练任务中,例如基于随机静态掩码的模型训练任务中,被替换成掩码的词为随机选择的,而在本公开实施例的BERT模型的预训练任务中,希望模型能够更加关注文本中的关键信息的单词。因此本公开提出了基于文本关键信息掩码语言模型任务作为预训练任务。该预训练任务的内容如下:
进行预训练时,不同于传统的随机选择15%单词进行掩码的训练方式,本公开实施例定向选择10%的关键单词和5%的非关键单词进行掩码;其中,关键单词内包括重复单词和关键词;重复单词是指两个相邻词的相似度≥0.95的词;关键词是利用关键词抽取算法从文本中抽取出的关键词,在实际应用中,可使用TextRank算法进行关键词的抽取。非关键单词包括除关键单词外的其他单词。
另外,传统的针对下个句子的预测任务中更关注句子语义顺序的信息,而在本公开实施例的预训练任务中,希望模型能够更加关注文本和文本模板的相关性。因此本公开实施例提出了文本模板匹配模型任务作为预训练任务。该预训练任务的内容如下:
进行预训练时,从文本语料中抽取文本M,同时有50%的概率抽取到对应文本的模板P,另外50%的概率从该类别的模板集合中随机选取一个非P的模板NP;使用(M,P/NP)作为文本模板匹配模型的输入,即输入到文本模板匹配模型中的数据,包括50%的M和模板P以及50%的M和模板NP。利用文本模板匹配模型任务对输入进行预测,判断M与P/NP是否匹配。其中,上述模板P对应第一模板,模板NP对应第二模板。
需要说明的是,第一模板是指该文本M对应的实际模板,而第二模板是指在同一类别的模板集合中随机选取的一个非实际模板;例如一段文本M:给我一瓶瓶装水,此时模板P对应文本M的实际模版可以为“给我num unit item”,而NP则表示除了P模版外的任意一个其他模版。
根据本公开实施例提供的技术方案,本公开通过利用BERT模型的框架,使用基于文本关键信息掩码语言模型任务和文本模板匹配模型任务作为BERT模型的预训练任务,重新对BERT模型进行预训练,使预训练后的BERT模型比原始的BERT模型在问答库的问题编码上取得了更好的效果。
在一些实施例中,利用双向解码器基于文本语义信息进行文本意图分类,包括:将文本语义信息作为双向解码器的输入,利用双向解码器对文本语义信息执行解码操作,得到目标文本对应的初始意图分类结果,利用Softmax分类器对初始意图分类结果进行映射,得到目标文本对应的文本意图类别。
具体地,在利用BERT文本编码器计算得到目标文本的文本语义信息之后,利用双向解码器基于文本语义信息进行文本意图的分类,从而确定文本意图的类别,下面结合具体实施例对文本意图的分类过程进行详细说明,具体可以包括以下内容:
BERT模型内部的Transformer单元是基于自注意力机制,即计算句子的每一时刻的信息和句子各个时刻的信息(包括该时刻本身)的相关性得到注意力矩阵。双向解码器对应一个文本分类任务,使用基于BERT模型框架的双向解码器对文本进行意图分类,通过双向取[CLS]最终的隐藏状态代表整个句子,后面接一个Softmax分类器,最终得到目标文本的意图类别。
进一步地,除了对文本的意图进行分类之外,预训练模型还需要输出文本的文本模板,将前述实施例中获得的槽值语义信息、文本语义信息以及文本意图信息,作为文本模板解码器的输入,利用文本模板解码器输出目标文本对应的文本模板。本公开实施例的文本模板解码器采用seq2seq解码器,BERT模型本身并不适用于文本生成相关的任务,原因在于在模型内部的Transformer单元是基于自注意力机制,即计算句子的每一时刻的信息和句子各个时刻的信息(包括该时刻本身)的相关性得到注意力矩阵,从而对句子的语义信息进行计算。然而,在文本生成的相关任务中,句子中较前时刻的信息与较后时刻的信息不应存在相关性。
下面结合附图以及具体实施例对文本模板解码器的注意力矩阵进行说明,图3是本公开实施例提供的文本模板解码器的注意力矩阵的结构示意图。如图3所示,该文本模板解码器的注意力矩阵具体可以包括:
本公开实施例中令S1为文本语义序列,S2为槽值语义信息序列,S3为文本意图信息,S4表示文本模板信息序列,构建出输入[SOS] S1 S2 S3 [EOS] S4 [EOS]。S1 S2 S3序列属于编码阶段,所以相互的上下文信息都能看到;S4序列属于解码阶段,能看到S1 S2 S3的信息、S4中其左侧的信息及自己的信息。
进一步地,本公开实施例提供的整个预训练模型集成了意图识别模型和文本模板生成模型,在一个框架内对两个模型同时更新,定义在该框架中损失函数如下:,其中代表意图识别模型的损失,代表文本模板生成的损失,,为超参数,用于控制意图识别模型和文本模板生成模型的平衡。通过最小化损失函数L,同时训练意图识别模型和文本模板生成模型。
下述为本公开装置实施例,可以用于执行本公开方法实施例。对于本公开装置实施例中未披露的细节,请参照本公开方法实施例。
图4是本公开实施例提供的文本模板生成装置的结构示意图。如图4所示,该文本模板生成装置包括:
获取模块401,被配置为获取待生成文本模板的目标文本,将目标文本作为预训练模型的输入,利用预训练模型中的词向量层对目标文本进行处理,得到目标文本对应的文本向量;
筛选模块402,被配置为基于预设的槽值词典对文本向量中的词向量进行筛选,得到文本向量对应的槽值语义向量,利用槽值编码器对槽值语义向量进行特征提取,得到槽值语义信息;
分类模块403,被配置为利用预训练的文本编码器对文本向量进行特征提取,得到目标文本的文本语义信息,并利用双向解码器基于文本语义信息进行文本意图分类,得到目标文本对应的文本意图类别和文本意图信息;
生成模块404,被配置为将槽值语义信息、文本语义信息以及文本意图信息,作为文本模板解码器的输入,利用文本模板解码器输出目标文本对应的文本模板。
在一些实施例中,图4的训练模块405获取文本数据以及文本数据对应的文本意图和文本模板,基于文本数据、文本意图和文本模板生成基础语料数据集,利用基础语料数据集对预训练模型进行训练;其中,基础语料数据集中包含若干个样本数据,每个样本数据中包含句子对应的序号、文本内容、文本模板和文本意图。
在一些实施例中,图4的训练模块405基于基础语料数据集中样本数据对应的文本意图,对文本模板中的槽值进行整理得到槽值词典,槽值词典中包含多个槽类型,以及每个槽类型对应的词语。
在一些实施例中,图4的获取模块401将槽值词典添加到分词词典中,并利用添加槽值词典后的分词词典对目标文本进行处理,得到目标文本对应的分词后的文本,将分词后的文本映射为连续的低维向量,以便将低维向量作为目标文本的文本向量。
在一些实施例中,图4的筛选模块402获取槽值词典中每个词语对应的词向量,分别计算目标文本的文本向量中的每个词向量与槽值词典中的各个槽类型下的每个词语对应词向量之间的余弦距离,将文本向量中余弦距离大于或等于距离阈值的词向量,替换为对应槽类型下的所有词语的词向量的平均向量,并将文本向量中余弦距离小于距离阈值的词向量,替换为固定值。
在一些实施例中,预训练的文本编码器采用预训练的BERT模型,图4的训练模块405在基于文本关键信息掩码语言模型任务作为预训练任务对BERT模型进行预训练时,从每个样本数据中定向选取一定比例的关键单词和非关键单词,并对关键单词和非关键单词进行掩码;在基于文本模板匹配模型任务作为预训练任务对BERT模型进行预训练时,从基础语料数据集中抽取至少一个句子,并按照预定概率抽取句子对应的第一模板,以及根据第一模板对应的意图类别,按照相同的概率从意图类别对应的模板集合中随机选取一个第二模板;将句子和第一模板,以及句子和第二模板,均作为文本模板匹配模型的输入,以通过文本模板匹配模型任务对输入进行预测,判断句子与第一模板或第二模板是否匹配。
在一些实施例中,图4的分类模块403将文本语义信息作为双向解码器的输入,利用双向解码器对文本语义信息执行解码操作,得到目标文本对应的初始意图分类结果,利用Softmax分类器对初始意图分类结果进行映射,得到目标文本对应的文本意图类别。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本公开实施例的实施过程构成任何限定。
图5是本公开实施例提供的电子设备5的结构示意图。如图5所示,该实施例的电子设备5包括:处理器501、存储器502以及存储在该存储器502中并且可以在处理器501上运行的计算机程序503。处理器501执行计算机程序503时实现上述各个方法实施例中的步骤。或者,处理器501执行计算机程序503时实现上述各装置实施例中各模块/单元的功能。
示例性地,计算机程序503可以被分割成一个或多个模块/单元,一个或多个模块/单元被存储在存储器502中,并由处理器501执行,以完成本公开。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序503在电子设备5中的执行过程。
电子设备5可以是桌上型计算机、笔记本、掌上电脑及云端服务器等电子设备。电子设备5可以包括但不仅限于处理器501和存储器502。本领域技术人员可以理解,图5仅仅是电子设备5的示例,并不构成对电子设备5的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如,电子设备还可以包括输入输出设备、网络接入设备、总线等。
处理器501可以是中央处理单元(Central Processing Unit,CPU),也可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器502可以是电子设备5的内部存储单元,例如,电子设备5的硬盘或内存。存储器502也可以是电子设备5的外部存储设备,例如,电子设备5上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器502还可以既包括电子设备5的内部存储单元也包括外部存储设备。存储器502用于存储计算机程序以及电子设备所需的其它程序和数据。存储器502还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本公开的范围。
在本公开所提供的实施例中,应该理解到,所揭露的装置/计算机设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/计算机设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本公开实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,计算机程序可以存储在计算机可读存储介质中,该计算机程序在被处理器执行时,可以实现上述各个方法实施例的步骤。计算机程序可以包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如,在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开各实施例技术方案的精神和范围,均应包含在本公开的保护范围之内。
Claims (8)
1.一种文本模板生成方法,其特征在于,包括:
获取待生成文本模板的目标文本,将所述目标文本作为预训练模型的输入,利用所述预训练模型中的词向量层对所述目标文本进行处理,得到所述目标文本对应的文本向量;
基于预设的槽值词典对所述文本向量中的词向量进行筛选,得到所述文本向量对应的槽值语义向量,利用槽值编码器对所述槽值语义向量进行特征提取,得到槽值语义信息;
利用预训练的文本编码器对所述文本向量进行特征提取,得到所述目标文本的文本语义信息,并利用双向解码器基于所述文本语义信息进行文本意图分类,得到所述目标文本对应的文本意图类别和文本意图信息;
将所述槽值语义信息、所述文本语义信息以及所述文本意图信息,作为文本模板解码器的输入,利用所述文本模板解码器输出所述目标文本对应的文本模板;
其中,对所述预训练模型进行训练包括:
获取文本数据以及所述文本数据对应的文本意图和文本模板,基于所述文本数据、所述文本意图和所述文本模板生成基础语料数据集,利用所述基础语料数据集对所述预训练模型进行训练;
其中,所述基础语料数据集中包含若干个样本数据,每个所述样本数据中包含句子对应的序号、文本内容、文本模板和文本意图;
其中,基于所述基础语料数据集中所述样本数据对应的文本意图,对所述文本模板中的槽值进行整理得到槽值词典,所述槽值词典中包含多个槽类型,以及每个所述槽类型对应的词语。
2.根据权利要求1所述的方法,其特征在于,所述利用所述预训练模型中的词向量层对所述目标文本进行处理,得到所述目标文本对应的文本向量,包括:
将所述槽值词典添加到分词词典中,并利用添加所述槽值词典后的分词词典对所述目标文本进行处理,得到所述目标文本对应的分词后的文本,将所述分词后的文本映射为连续的低维向量,以便将所述低维向量作为所述目标文本的文本向量。
3.根据权利要求1所述的方法,其特征在于,所述基于预设的槽值词典对所述文本向量中的词向量进行筛选,得到所述文本向量对应的槽值语义向量,包括:
获取所述槽值词典中每个词语对应的词向量,分别计算所述目标文本的文本向量中的每个词向量与所述槽值词典中的各个槽类型下的每个词语对应词向量之间的余弦距离,将所述文本向量中所述余弦距离大于或等于距离阈值的词向量,替换为对应所述槽类型下的所有词语的词向量的平均向量,并将所述文本向量中所述余弦距离小于距离阈值的词向量,替换为固定值。
4.根据权利要求1所述的方法,其特征在于,所述预训练的文本编码器采用预训练的BERT模型,采用以下方式对所述BERT模型进行预训练,包括:
在基于文本关键信息掩码语言模型任务作为预训练任务对所述BERT模型进行预训练时,从每个所述样本数据中定向选取一定比例的关键单词和非关键单词,并对所述关键单词和所述非关键单词进行掩码;
在基于文本模板匹配模型任务作为预训练任务对所述BERT模型进行预训练时,从所述基础语料数据集中抽取至少一个句子,并按照预定概率抽取所述句子对应的第一模板,以及根据所述第一模板对应的意图类别,按照相同的概率从所述意图类别对应的模板集合中随机选取一个第二模板;
将所述句子和所述第一模板,以及所述句子和所述第二模板,均作为文本模板匹配模型的输入,以通过文本模板匹配模型任务对输入进行预测,判断所述句子与所述第一模板或所述第二模板是否匹配。
5.根据权利要求1所述的方法,其特征在于,所述利用双向解码器基于所述文本语义信息进行文本意图分类,包括:
将所述文本语义信息作为所述双向解码器的输入,利用所述双向解码器对所述文本语义信息执行解码操作,得到所述目标文本对应的初始意图分类结果,利用Softmax分类器对所述初始意图分类结果进行映射,得到所述目标文本对应的文本意图类别。
6.一种文本模板生成装置,其特征在于,包括:
获取模块,被配置为获取待生成文本模板的目标文本,将所述目标文本作为预训练模型的输入,利用所述预训练模型中的词向量层对所述目标文本进行处理,得到所述目标文本对应的文本向量;
筛选模块,被配置为基于预设的槽值词典对所述文本向量中的词向量进行筛选,得到所述文本向量对应的槽值语义向量,利用槽值编码器对所述槽值语义向量进行特征提取,得到槽值语义信息;
分类模块,被配置为利用预训练的文本编码器对所述文本向量进行特征提取,得到所述目标文本的文本语义信息,并利用双向解码器基于所述文本语义信息进行文本意图分类,得到所述目标文本对应的文本意图类别和文本意图信息;
生成模块,被配置为将所述槽值语义信息、所述文本语义信息以及所述文本意图信息,作为文本模板解码器的输入,利用所述文本模板解码器输出所述目标文本对应的文本模板;
其中,还包括训练模块,所述训练模块用于获取文本数据以及文本数据对应的文本意图和文本模板,基于文本数据、文本意图和文本模板生成基础语料数据集,利用基础语料数据集对预训练模型进行训练;其中,基础语料数据集中包含若干个样本数据,每个样本数据中包含句子对应的序号、文本内容、文本模板和文本意图;
其中,所述训练模块还用于基于基础语料数据集中样本数据对应的文本意图,对文本模板中的槽值进行整理得到槽值词典,槽值词典中包含多个槽类型,以及每个槽类型对应的词语。
7.一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求1至5中任一项所述的方法。
8.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210732483.9A CN114818644B (zh) | 2022-06-27 | 2022-06-27 | 文本模板生成方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210732483.9A CN114818644B (zh) | 2022-06-27 | 2022-06-27 | 文本模板生成方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114818644A CN114818644A (zh) | 2022-07-29 |
CN114818644B true CN114818644B (zh) | 2022-10-04 |
Family
ID=82521193
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210732483.9A Active CN114818644B (zh) | 2022-06-27 | 2022-06-27 | 文本模板生成方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114818644B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113139060A (zh) * | 2021-05-13 | 2021-07-20 | 杭州网易再顾科技有限公司 | 文本分析模型训练及文本分析方法、介质、装置及设备 |
CN113239700A (zh) * | 2021-04-27 | 2021-08-10 | 哈尔滨理工大学 | 改进bert的文本语义匹配设备、系统、方法及存储介质 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170199867A1 (en) * | 2014-10-30 | 2017-07-13 | Mitsubishi Electric Corporation | Dialogue control system and dialogue control method |
CN107209758A (zh) * | 2015-01-28 | 2017-09-26 | 三菱电机株式会社 | 意图估计装置以及意图估计方法 |
CN109326283B (zh) * | 2018-11-23 | 2021-01-26 | 南京邮电大学 | 非平行文本条件下基于文本编码器的多对多语音转换方法 |
CN109635150B (zh) * | 2018-12-19 | 2021-07-02 | 腾讯科技(深圳)有限公司 | 文本生成方法、装置以及存储介质 |
JP7297458B2 (ja) * | 2019-02-14 | 2023-06-26 | 株式会社日立製作所 | 対話コンテンツ作成支援方法 |
CN111444311A (zh) * | 2020-02-26 | 2020-07-24 | 平安科技(深圳)有限公司 | 语义理解模型训练方法、装置、计算机设备和存储介质 |
CN111680168B (zh) * | 2020-05-29 | 2024-06-28 | 平安银行股份有限公司 | 文本特征语义提取方法、装置、电子设备及存储介质 |
CN111931513B (zh) * | 2020-07-08 | 2023-11-14 | 泰康保险集团股份有限公司 | 一种文本的意图识别方法及装置 |
CN112464641B (zh) * | 2020-10-29 | 2023-01-03 | 平安科技(深圳)有限公司 | 基于bert的机器阅读理解方法、装置、设备及存储介质 |
CN112800190B (zh) * | 2020-11-11 | 2022-06-10 | 重庆邮电大学 | 基于Bert模型的意图识别与槽值填充联合预测方法 |
CN112733554B (zh) * | 2020-12-23 | 2021-09-07 | 深圳市爱科云通科技有限公司 | 口语文本处理方法、装置、服务器及可读存储介质 |
CN114661905B (zh) * | 2022-03-14 | 2024-09-06 | 华北电力大学 | 一种基于bert的电网故障诊断方法 |
-
2022
- 2022-06-27 CN CN202210732483.9A patent/CN114818644B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113239700A (zh) * | 2021-04-27 | 2021-08-10 | 哈尔滨理工大学 | 改进bert的文本语义匹配设备、系统、方法及存储介质 |
CN113139060A (zh) * | 2021-05-13 | 2021-07-20 | 杭州网易再顾科技有限公司 | 文本分析模型训练及文本分析方法、介质、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN114818644A (zh) | 2022-07-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110134946B (zh) | 一种针对复杂数据的机器阅读理解方法 | |
CN111695352A (zh) | 基于语义分析的评分方法、装置、终端设备及存储介质 | |
CN112528637B (zh) | 文本处理模型训练方法、装置、计算机设备和存储介质 | |
CN113255755A (zh) | 一种基于异质融合网络的多模态情感分类方法 | |
CN112749274B (zh) | 基于注意力机制和干扰词删除的中文文本分类方法 | |
CN113239169A (zh) | 基于人工智能的回答生成方法、装置、设备及存储介质 | |
US20220300708A1 (en) | Method and device for presenting prompt information and storage medium | |
CN111145914B (zh) | 一种确定肺癌临床病种库文本实体的方法及装置 | |
CN111241820A (zh) | 不良用语识别方法、装置、电子装置及存储介质 | |
CN112561718A (zh) | 基于BiLSTM权重共享的案件微博评价对象情感倾向性分析方法 | |
CN116956835B (zh) | 一种基于预训练语言模型的文书生成方法 | |
CN113486178A (zh) | 文本识别模型训练方法、文本识别方法、装置以及介质 | |
CN113918710A (zh) | 文本数据处理方法、装置、电子设备和可读存储介质 | |
CN116049387A (zh) | 一种基于图卷积的短文本分类方法、装置、介质 | |
CN116258147A (zh) | 一种基于异构图卷积的多模态评论情感分析方法及系统 | |
CN117217277A (zh) | 语言模型的预训练方法、装置、设备、存储介质及产品 | |
CN115687934A (zh) | 意图识别方法、装置、计算机设备及存储介质 | |
CN114722832A (zh) | 一种摘要提取方法、装置、设备以及存储介质 | |
CN118378148A (zh) | 多标签分类模型的训练方法、多标签分类方法及相关装置 | |
CN112989843B (zh) | 意图识别方法、装置、计算设备及存储介质 | |
CN114373443A (zh) | 语音合成方法和装置、计算设备、存储介质及程序产品 | |
CN117807482A (zh) | 海关报关单的分类方法、装置、设备及存储介质 | |
CN114818644B (zh) | 文本模板生成方法、装置、设备及存储介质 | |
CN111310460B (zh) | 语句的调整方法及装置 | |
CN115081459B (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 |