CN116312539A - 基于大模型的中文对话轮次纠正方法及系统 - Google Patents
基于大模型的中文对话轮次纠正方法及系统 Download PDFInfo
- Publication number
- CN116312539A CN116312539A CN202310252129.0A CN202310252129A CN116312539A CN 116312539 A CN116312539 A CN 116312539A CN 202310252129 A CN202310252129 A CN 202310252129A CN 116312539 A CN116312539 A CN 116312539A
- Authority
- CN
- China
- Prior art keywords
- dialogue
- sequence
- dialog
- correction
- original
- 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
- 238000012937 correction Methods 0.000 title claims abstract description 44
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000012549 training Methods 0.000 claims abstract description 28
- 238000007781 pre-processing Methods 0.000 claims abstract description 11
- 238000004590 computer program Methods 0.000 claims description 17
- 238000000605 extraction Methods 0.000 claims description 9
- 238000006243 chemical reaction Methods 0.000 claims description 7
- 241001522296 Erithacus rubecula Species 0.000 claims description 6
- 238000003062 neural network model Methods 0.000 abstract description 2
- 239000013598 vector Substances 0.000 description 22
- 239000011159 matrix material Substances 0.000 description 19
- 230000001603 reducing effect Effects 0.000 description 14
- 208000031361 Hiccup Diseases 0.000 description 13
- 238000010586 diagram Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000010606 normalization Methods 0.000 description 6
- 238000013528 artificial neural network Methods 0.000 description 5
- 241001465754 Metazoa Species 0.000 description 4
- 230000000873 masking effect Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/26—Speech to text systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/08—Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
- G10L13/10—Prosody rules derived from text; Stress or intonation
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Machine Translation (AREA)
Abstract
本发明公开了一种基于大模型的中文对话轮次纠正方法及系统,包括:对输入对话进行预处理,其中,输入对话包括原始对话和纠正对话,原始对话为ASR识别得到的对话,纠正对话为对原始对话进行纠正后的对话;将原始对话和纠正对话转换为序列形式,得到对应的对话内容序列和对话者序列;根据对话内容序列和对话者序列训练对话预测模型;以及基于对话预测模型,输出预测值序列,以纠正对话轮次。本发明使用encoder‑decoder架构的神经网络模型,对ASR识别不准自然语言就行纠正,主要是对说话的轮次进行纠正,以保证说话人和说话内容能够准确的对应,提升下游任务的准确率,召回率。
Description
技术领域
本发明涉及语音识别及人工智能领域,尤其涉及一种基于大模型的中文对话轮次纠正方法及系统。
背景技术
自动语音识别技术(Automatic Speech Recognition)是一种将人的语音转换为文本的技术。语音识别是一个多学科交叉的领域,它与声学、语音学、语言学、数字信号处理理论、信息论、计算机科学等众多学科紧密相连。由于语音信号的多样性和复杂性,语音识别系统只能在一定的限制条件下获得满意的性能,或者说只能应用于某些特定的场合。
自动语音识别技术的目标是让计算机能够“听写”出不同人所说出的连续语音,也就是俗称的“语音听写机”,是实现“声音”到“文字”转换的技术。
现阶段ASR模型识别语音不准确,很多时候会将不同人说的话识别为一个人说的话,在进行后续任务的时候严重干扰后续任务的准确率,召回率等指标。
因此,本领域的技术人员致力于开发一种能够更准确地识别和纠正不同说话人的对话轮次纠正方法及系统。
发明内容
有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是如何有效地纠正对话轮次。
本发明使用encoder-decoder架构的神经网络模型,对ASR识别不准自然语言就行纠正,主要是对说话的轮次进行纠正,以保证说话人和说话内容能够准确的对应,提升下游任务的准确率,召回率。
为实现上述目的,本发明提供了一种基于大模型的中文对话轮次纠正方法,包括以下步骤:对输入对话进行预处理,其中,输入对话包括原始对话和纠正对话,原始对话为ASR识别得到的对话,纠正对话为对原始对话进行纠正后的对话;将原始对话和纠正对话转换为序列形式,得到对应的对话内容序列和对话者序列;根据对话内容序列和对话者序列训练对话预测模型;以及基于对话预测模型,输出预测值序列,以纠正对话轮次。
在本发明的较佳实施方式中,将原始对话和纠正对话转换为序列形式进一步包括:使用不同的令牌代替不同的说话者,并将对话内容拼接起来。
在本发明的较佳实施方式中,将原始对话和纠正对话转换为序列形式进一步包括:在对话者序列的头部和尾部添加两个特殊令牌[CLS]和[SEP]。
在本发明的较佳实施方式中,根据对话内容序列和对话者序列训练对话预测模型进一步包括:将对话内容序列输入编码器进行特征提取,并在解码器端预测对话者序列。
在本发明的较佳实施方式中,输出预测值序列进一步包括:输入令牌[CLS],预测下一个令牌;使用之前所有已经预测过的令牌再去预测下一个;以及循环往复直到遇到令牌[SEP]则停止预测。
本发明还提供一种基于大模型的中文对话轮次纠正系统,包括:预处理模块,被配置为能够对输入对话进行预处理,其中,输入对话包括原始对话和纠正对话,原始对话为ASR识别得到的对话,纠正对话为对原始对话进行纠正后的对话;转换模块,被配置为能够将原始对话和纠正对话转换为序列形式,得到对应的对话内容序列和对话者序列;训练模块,被配置为能够根据对话内容序列和对话者序列训练对话预测模型;以及预测模块,被配置为能够基于对话预测模型,输出预测值序列,以纠正对话轮次。
在本发明的较佳实施方式中,转换模块进一步被配置为能够:使用不同的令牌代替不同的说话者,并将对话内容拼接起来。
在本发明的较佳实施方式中,预测模块进一步被配置为能够:将对话内容序列输入编码器进行特征提取,并在解码器端预测对话者序列。
本发明还提供一种基于大模型的中文对话轮次纠正装置,包括存储器、处理器以及存储在存储器中并能够在处理器上运行的计算机程序,其特征在于,处理器被配置为能够在执行计算机程序时实现根据上述的基于大模型的中文对话轮次纠正方法的步骤。
本发明还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,计算机程序被处理器执行时能够实现根据上述的基于大模型的中文对话轮次纠正方法的步骤。
本发明提供的技术方案使用transformer的encoder-decoder神经网络架构,将ASR模型识别的自然语言序列作为encoder输入,用人工纠正过的ASR模型识别的自然语言映射为说话者序列,作为decoder输入,同时decoder输出同样为说话者序列。未使用本发明所阐述的方法前,ASR模型对于说话者识别正确率为50%,使用本发明所阐述的方法后,可以将说话者识别的准确率提高到80%左右。
以下将结合附图对本发明的构思、具体结构及产生的技术效果作进一步说明,以充分地了解本发明的目的、特征和效果。
附图说明
图1是本发明的一个较佳实施例的数据预处理与特征提取模块的示意图。
图2是本发明的一个较佳实施例的模型训练模块的示意图。
图3是本发明的一个较佳实施例的分类器的示意图。
图4是本发明的一个较佳实施例的transformer模块的示意图。
图5是本发明中计算机装置、设备或终端的一个实施例的结构示意图。
具体实施方式
以下参考说明书附图介绍本发明的多个优选实施例,使其技术内容更加清楚和便于理解。本发明可以通过许多不同形式的实施例来得以体现,本发明的保护范围并非仅限于文中提到的实施例。
在附图中,结构相同的部件以相同数字标号表示,各处结构或功能相似的组件以相似数字标号表示。附图所示的每一组件的尺寸和厚度是任意示出的,本发明并没有限定每个组件的尺寸和厚度。为了使图示更清晰,附图中有些地方适当夸大了部件的厚度。
本发明提供一种基于大模型的中文对话轮次纠正方法,可以包括以下步骤。
图1是本发明的一个实施例的数据预处理与特征提取模块的示意图。如图1所示,(a)数据预处理与特征提取模块,对于对话内容序列,将原始对话直接拼接在一起。对于对话者序列,说话者一对应的token(也可称为“令牌”),用特殊token[speaker-1]代替,对于说话者二对应的token用特殊token[speaker-2]代替,然后拼接起来,形成对话者序列,然后将对话者序列的头部和尾部添加两个特殊token[CLS]和[SEP]。
图2是本发明的一个实施例的模型训练模块的示意图。如图2所示,(b)模型训练模块,将对话内容序列输入编码器进行特征提取,在解码器端预测对话者序列。
(1)数据处理:在输入模型之前,将对应的对话内容序列token化,使用transformer库内的bert tokenizer将自然语言对话序列转为token对应的id。
(2)编码器输入输出:之后把自然语言对话序列转为token对应的id序列输入编码器,编码器输出一个维度是batch_size*seq_length*embdding_dim的张量,其中batch_size代表批次,seq_length代表序列长度,embedding_dim代表词向量的维度。
(3)解码器输入输出:解码器有两个输入一个输出,输入一是如图2解码器下侧的输入。输入一在输入之前也需要进行数据处理,类似步骤(1),将对话者序列通过字典映射为一个个token对应的id。利用编码器的embedding作为解码器的输入二。
并且,解码器内部处理时用multi-head加上mask机制处理编码器端的输入,mask机制就是把第n个token后面的token全部设为0,这样可以形成一个n*n的矩阵,这样可以在self-attention时忽略每个token后面的token做到掩码的效果。之后通过cross-attention将编码器的特征和解码器的特征融合起来,通过再残差和归一化操作,之后通过图3所示的分类器,预测全部该序列的对话者序列。解码器内部有多个一样的模块,具体多少需要设置超参数。
(c)预测模块:预测和训练不同,在解码器端不需要掩码操作,而且每次只能预测一个token,预测的逻辑是,开始输入[CLS]这一特殊token,之后预测下一个token,下次预测使用之前所有已经预测过的token再去预测下一个,如此循环往复直到遇到特殊token[SEP]则停止预测。到此可得到所有预测值序列。在经过多次训练后,输出序列的长度会比输入序列多两个特殊字符即[CLS]和[SEP]。
图4是本发明的一个较佳实施例的transformer模块的示意图。如图4所示,左侧为编码器,右侧为解码器,中间连接编码器和解码器的是交叉多头注意力层,用于编码器向解码器传递信息。该架构适合做的任务为有关序列到序列问题的建模。它由一个编码器和一个解码器组成,具有相同架构的多个transformer块。编码器生成输入的编码,而解码器接受所有编码并使用其合并的上下文信息来生成输出序列。每个transformer块由多头注意力层、前馈神经网络、快捷连接和层归一化组成。
编码器可以由N=6个相同的层堆叠而成。每层包含两个子层sub-layers,第一个是multi-head self-attention,第二个是简单的position-wise的全连接前馈网络。其中每个sub-layer都加了residual connection(残差连接)和normalization(归一化),即LayerNorm(x+Sublayer(x)),embedding层及所有子层的输出维度为dmodel=512。
编码器也可以由N=6个相同的层堆叠而成。此外解码器还插入第三个子层,用于在编码器上的输出上执行multi-head attention。这里的layer包含三个sub-layers,第一个sub-layer是masked multi-head attention layer。这里有个特别点就是masked,作用就是防止在训练的时候,使用未来的输出的单词。比如训练时,第一个单词是不能参考第二个单词的生成结果的。Masked是在点乘attention操作中加了一个mask的操作,这个操作是保证softmax操作之后不会将非法的values连到attention中,提高泛化性。
attention函数可以认为是一个query和一组key-value对到输出的映射,其中,query,keys,values和输出都是vectors。输出为values的加权和,其中分配给每个value的权重由query与对应key通过函数计算得到。
在self-attention层中,首先将输入向量转换为三个不同的向量:查询向量q、关键字向量k和值向量v。然后将来自不同输入的向量组合成三个不同的矩阵,即Q、K和V,随后,不同输入向量之间使用注意力函数计算。
多头注意力是一种机制,可以用来提高self-attention层的表现。对于给定的参考词,在阅读句子时通常希望关注其它几个词。单一的头部自注意层限制了专注于一个或多个特定位置的能力,而不会同时影响对其它同等重要位置的注意力。这是通过给予注意层不同的表示子空间来实现的,具体来说,不同的查询、关键字和值矩阵用于不同的头部,这些矩阵在训练后由于随机初始化,可以将输入向量投影到不同的表示子空间。
在一些实施例中,transformer模型采用经典的编码器-解码器结构。编码器首先流入一个self-attention层,该层帮助每个单词获得其前后单词的信息,再将attention层的输出输入一个前向神经网络中,并在每层之间引入残差连接来稳定梯度。
解码器的构成与编码器类似,同样采用了self-attention层和前向神经网络层,但在中间加入了一层获取编码器信息的attention层,与seq2seq模型中注意力机制类似,让解码器可以关注到每层编码器的信息,而不只是编码器最后的输出。
在输入时transformer采用和大部分NLP应用同样的方式采用embedding将单词转化为词向量,输入到编码器中,在本文中采用的为512维的词向量,为了保证进行残差计算,编码器输出的维度都维持在512维。
在self-attention层时,每个单词的路径是两两相关的,在前向网络时每个路径则没有相关的依赖,这样保证这些路径可以并行执行。
self-attention是整个transfromer模型最关键的部分,self-attention对之前的attention机制的变种,加入了多头机制和缩放因子。
Self-Attention帮助模型更好的联系上下文,在机器翻译中,如果要翻译“Theanimal didn’t cross the street because it was too tired”。句子中"it"指的是什么呢?“it"指的是"street”还是“animal”?对人来说很简单的问题,但是对算法而言并不简单。当处理单词“it”时,self-attention会将将“it”和“animal”联系起来,把相关词的理解编码到当前词之中。
在一些实施例中,Self-Attention计算过程如下:
第一步,计算对应的query/key/value矩阵,将所有的输入词向量合并为矩阵X,并将其分别乘以权重矩阵。
attention机制利用query矩阵去检索所需要部分的信息,通过点积的方式和key矩阵进行匹配,找到相关性更高的key并利用key-value键值对找到所需的value,来完成注意力机制。
第二步,Q矩阵点乘K矩阵的转置得到匹配后的矩阵,此处Self-Attention引入了缩放因子,点积后的矩阵除以dk的平方根,来使梯度更加稳定,通过softmax操作归一化表示对应词的相关程度,再用得到的矩阵点乘V矩阵得到每个词的Value。
如果只采用一组query/key/value矩阵最后得到的结果一般都会更关注所处理的词本身,如输入“apple tree”时,apple和tree对应的输出z都会更多取自自身的value,为解决上述问题,Self-Attention引入了多头机制来解决问题。多头机制使用多组query/key/value矩阵(文中使用八组),每一组进行随机的初始化。
在一些实施例中,可以使用八组矩阵,得到不同的八个输出z值矩阵,实现了每个z值矩阵关注句子的不同部分并根据相关性确定各个部分的value,实现了对上下文的有效利用。但是前向神经网络不能直接接收八个矩阵,而是希望接收一个矩阵,所以需要将八个矩阵合并为一个矩阵。在加入多头机制时,进行翻译后“it”集中于“the animal”和“tired”上,可见模型集中了两者的信息,对“it”进行合成处理。
可以注意到,在利用attention方法时,虽然很好的获取了处理单词的上下文信息但是却忽略了文本的位置信息,为了利用位置信息可以对embedding的词向量加上位置编码来提供词向量间的距离。在一些实施例中,可以采用的向量是512维,位置向量也对应为512维,每个值都在【-1,1】间。
编码器和解码器在每个子层中都有残差连接并紧跟着layer-normalization,以加快模型收敛。
每个解码器模块接收编码器输出的K和V矩阵,解码器部分的self-attention层预编码器中的不同,因为编码器部分只会关注早于当前位置的输出,得到的输出作为Q矩阵输入到“encoder-decoder attention”层,接收编码器的输出K,V矩阵作为K,V矩阵。
在一些实施例中,在训练时还可以采用Adam方法,采用一个warmup-steps的超参,在训练刚开始进行时,第二项决定学习率,此时学习率上升,当训练进行到一定程度时,第一项决定学习率,学习率开始下降,这样先上升再下降的学习率有利于让模型快速收敛。
在一些实施例中,也可以采用两种正则化方法,一种是经典的dropout方法,另一个是label smoothing方法,也就是在训练计算交叉熵时,不再使用one-hot向量而是将0处也填充上一个非0的极小值,可以一定程度上解决exposure bias的问题,增加模型的鲁棒性。
以下用一个示例具体描述本发明的技术方案。
由ASR识别出来的原始对话内容如下:
中国移动客服:您好,中国移动客服代表316号,请问您是137号码的机主吗?嗯对对对。
中国移动客户:啊就是呃林女士你好,就是我们这里有个话费减免活动,啊免费帮您减话费的。我这边帮您介绍一下好吗?嗯嗯好的。
可以看到,由ASR识别得到的对话内容,说话者和说话内容没有完全匹配。在刚刚的对话中,ASR识别出来的对话有说话人和说话内容识别错误的情况,比如“嗯对对对。”这个真实情况是中国移动客户说的话,但是ASR模型把这个句子识别成了中国移动客服说的话。同样的,“啊就是呃林女士你好,就是我们这里有个话费减免活动,啊免费帮您减话费的。我这边帮您介绍一下好吗?”这句话本来是客服说的话,ASR模型吧这句话识别成是客户说的话。
经人工纠正后,对话内容如下:
中国移动客服:您好,中国移动客服代表316号,请问您是137号码的机主吗?
中国移动客户:嗯对对对。
中国移动客服:啊就是呃林女士你好,就是我们这里有个话费减免活动,啊免费帮您减话费的。我这边帮您介绍一下好吗?
中国移动客户:嗯嗯好的。
可以看到,经过人工纠正后,说话者和说话内容已经匹配上了。需要特别说明的是,ASR模型识别出来的对话,以及人工纠正后的对话,都可以称之为自然语言序列或者对话内容序列。
所谓对话者序列是指,把自然语言序列映射为以下的方式:
中国移动客服:[speaker-1][speaker-1]…[speaker-1]
中国移动客户:[speaker-2][speaker-2][speaker-2][speaker-2][speaker-2]
中国移动客服:[speaker-1][speaker-1]…[speaker-1]
中国移动客户:[speaker-2][speaker-2][speaker-2][speaker-2][speaker-2]
上面的序列可以称之为说话者序列,[speaker-1]、[speaker-2]可称之为token,每一个token可以对应中文的一个字、一个标点、一个表情符号等等,可以涵盖大部分的中文字符。比如上述对话内容的最后一句的“中国移动客户:[speaker-2][speaker-2][speaker-2][speaker-2][speaker-2]”,对应“中国移动客户:嗯嗯好的。”在一些实施例中,一个token也可以对应一个词。
对于(a)数据预处理和特征提取部分,该步骤的有两个输入输出。
(1)第一个输入输出。输入是原始对话内容序列即ASR模型的输出,即以下序列格式:
中国移动客服:您好,中国移动客服代表316号,请问您是137号码的机主吗?嗯对对对。
中国移动客户:啊就是呃林女士你好,就是我们这里有个话费减免活动,啊免费帮您减话费的。我这边帮您介绍一下好吗?嗯嗯好的。
输出是(对输入的对话序列去掉说话者直接拼接成以下形式):
您好,中国移动客服代表316号,请问您是137号码的机主吗?嗯对对对。啊就是呃林女士你好,就是我们这里有个话费减免活动,啊免费帮您减话费的。我这边帮您介绍一下好吗?嗯嗯好的。
(2)第二个输入是人工纠正过的对话序列,输入是:
中国移动客服:您好,中国移动客服代表316号,请问您是137号码的机主吗?
中国移动客户:嗯对对对。
中国移动客服:啊就是呃林女士你好,就是我们这里有个话费减免活动,啊免费帮您减话费的。我这边帮您介绍一下好吗?
中国移动客户:嗯嗯好的。
输出是(把对话者也去掉,把对话内容映射为下面格式):
[CLS][speaker-1][speaker-1]…[speaker-1]
[speaker-2][speaker-2][speaker-2][speaker-2][speaker-2]
[speaker-1][speaker-1]…[speaker-1]
[speaker-2][speaker-2][speaker-2][speaker-2][speaker-2][SEP]
对于(1)数据处理,在输入模型之前,将对应的对话内容序列token化,使用transformer库内的bert tokenizer将自然语言对话序列转为token对应的id。
具体来说就是,例如,有一个txt文件,一共有21128行,一行代表一个token,行号代表token对应的id,id从0开始计数到21127,遇见一个token,就把这个token映射为对应的id。
比如:您好,中国移动客服代表316号,请问您是137号码的机主吗?嗯对对对。啊就是呃林女士你好,就是我们这里有个话费减免活动,啊免费帮您减话费的。我这边帮您介绍一下好吗?嗯嗯好的。
经过tokenizer后变为token id:[101,2644,1962,8024,704,1744,4919,1220,2145,3302,807,6134,10743,1384,8024,6435,7309,2644,3221,9444,1384,4772,4638,3322,712,1408,8043,1638,2190,2190,2190,511,1557,2218,3221,1437,3360,1957,1894,872,1962,8024,2218,3221,2769,812,6821,7027,3300,702,6413,6589,1121,1048,3833,1220,8024,1557,1048,6589,2376,2644,1121,6413,6589,4638,511,2769,6821,6804,2376,2644,792,5305,671,678,1962,1408,8043,1638,1638,1962,4638,511,102]。
后续用token id来输入模型。
同理对话者序列也经过tokenizer映射为token id。
对于(2)编码器输入输出:之后把自然语言对话序列转为token对应的id序列输入编码器,编码器输出一个维度是batch_size*seq_length*embdding_dim的张量,其中batch_size代表批次,seq_length代表序列长度,embedding_dim代表词向量的维度。
其中,批次是深度学习训练中一次性训练多少个对话序列。序列长度是预先设定的,比如预先设定2048。一旦设定为2048,那么该模型就只能处理不超过2048个token的序列(对话内容序列)。
在自然语言处理中,模型可以把一个token对应的id映射为一个向量[1.26,0.32,-0.15,…,0.4],向量维度指的是里面有多少个小数,这个可以预先设定,比如设定为1024。
对于(3)解码器输入输出:解码器有两个输入一个输出,输入一是如图一解码器下侧的输入。输入一在输入之前也需要进行数据处理,类似步骤(1),将对话者序列通过字典映射为一个个token对应的id。利用编码器的embedding作为解码器的输入二。
首先输入都是对话序列和对话者序列经过tokenizer将token转换为token id后的形式。编码器的输入是对话内容序列转变为token id后的序列,解码器的输入是对话者序列经过tokenizer转变为token id后的序列。输出就是对话者序列。
在一些实施例中,可以采用自回归的方式解码,原理是:输入第一个token[CLS],预测下一个token,再用前两个token预测第三个token,再用前三个token,预测第四个token,以此类推,直到遇见[SEP]这个token停止。
解码器内部处理时用multi-head加上mask机制处理编码器端的输入,mask机制就是把第n个token后面的token全部设为0,这样可以形成一个n*n的矩阵,这样可以在self-attention时忽略每个token后面的token做到掩码的效果。之后通过cross-attention将编码器的特征和解码器的特征融合起来,通过再残差和归一化操作,之后通过分类器,预测全部该序列的对话者序列。解码器内部可以有多个一样的模块,具体数量可以通过超参数设置。
其中,使用自回归的形式,输入第一个token[SEP]后模型会给出分类器中四个token([speaker-1]、[speaker-2]、[CLS]、[SEP])的概率,取概率最大的那个token作为第二个token,再拿前两个token预测第三个,以此类推,直到遇到[SEP]这个token停止。
对于(c)预测模块:预测和训练不同,在解码器端不需要掩码操作,而且每次只能预测一个token,预测的逻辑是,开始输入[CLS]这一特殊token,之后预测下一个token,下次预测使用之前所有已经预测过的token再去预测下一个,如此循环往复直到遇到特殊token[SEP]则停止预测。到此可得到所有预测值序列。在经过多次训练后,输出序列的长度会比输入序列多两个特殊字符即[CLS]和[SEP]。其中,预测值序列即为预测得到的对话者序列。
其中,多次训练指的是收集很多数据,这个数据指的是原始对话内容序列、人工纠正过的对话内容序列、对话者序列这三个序列成为一条数据。比如收集10000条数据后,对每一个数据都进行按照数据处理模块和模型训练模块操作完之后这叫一个epoch,可以设置10个epoch,于是就完成了多次训练。
输出序列指的对话者序列,输入是指数据处理模块处理后的对话内容序列。多次训练后可以得到一个模型,之后预测时,会用这个模型来预测对话者序列。没有经过多次训练输出依然是对话者序列,但是输出来的对话者序列有很大的随机性不是想要的或者是不准确的对话者序列。经过训练后形成模型,用训练后的模型来预测对话者序列,这样得到的才是想要的更为准确的对话者序列。
本发明提供的技术方案可以是系统、方法、装置和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
在一些实施例中,本发明还提供一种计算机装置、设备或终端,其一个实施例的内部结构可以如图5所示。该计算机装置、设备或终端包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,处理器用于提供计算和控制能力,存储器包括非易失性存储介质、内存储器。非易失性存储介质存储有操作系统和计算机程序。内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。网络接口用于与外部的终端通过网络连接通信。计算机程序被处理器执行时以实现本发明公开的各种方法、流程、步骤,或者处理器执行计算机程序时实现本发明公开的实施例中各个模块或单元的功能。显示屏可以是液晶显示屏或者电子墨水显示屏,输入装置可以是显示屏上覆盖的触摸层,也可以是外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
示例性的,计算机程序可以被分割成一个或多个模块或单元,这些模块或单元被存储在存储器中,并可由处理器执行,以实现本发明的技术方案。这些模块或单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序在装置、设备或终端中的执行过程。
上述的装置、设备或终端可以是桌上型计算机、笔记本、移动电子设备、掌上电脑及云端服务器等计算设备。本领域技术人员应当理解,图中所示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的装置、设备或终端的限定,具体的装置、设备或终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。
Claims (10)
1.一种基于大模型的中文对话轮次纠正方法,其特征在于,包括以下步骤:
对输入对话进行预处理,其中,所述输入对话包括原始对话和纠正对话,所述原始对话为ASR识别得到的对话,所述纠正对话为对所述原始对话进行纠正后的对话;
将所述原始对话和所述纠正对话转换为序列形式,得到对应的对话内容序列和对话者序列;
根据所述对话内容序列和所述对话者序列训练对话预测模型;以及
基于所述对话预测模型,输出预测值序列,以纠正对话轮次。
2.根据权利要求1所述的基于大模型的中文对话轮次纠正方法,其特征在于,将所述原始对话和所述纠正对话转换为序列形式进一步包括:
使用不同的令牌代替不同的说话者,并将对话内容拼接起来。
3.根据权利要求1所述的基于大模型的中文对话轮次纠正方法,其特征在于,将所述原始对话和所述纠正对话转换为序列形式进一步包括:
在所述对话者序列的头部和尾部添加两个特殊令牌[CLS]和[SEP]。
4.根据权利要求1所述的基于大模型的中文对话轮次纠正方法,其特征在于,根据所述对话内容序列和所述对话者序列训练对话预测模型进一步包括:
将所述对话内容序列输入编码器进行特征提取,并在解码器端预测对话者序列。
5.根据权利要求1所述的基于大模型的中文对话轮次纠正方法,其特征在于,输出预测值序列进一步包括:
输入令牌[CLS],预测下一个令牌;
使用之前所有已经预测过的令牌再去预测下一个;以及
循环往复直到遇到令牌[SEP]则停止预测。
6.一种基于大模型的中文对话轮次纠正系统,其特征在于,包括:
预处理模块,被配置为能够对输入对话进行预处理,其中,所述输入对话包括原始对话和纠正对话,所述原始对话为ASR识别得到的对话,所述纠正对话为对所述原始对话进行纠正后的对话;
转换模块,被配置为能够将所述原始对话和所述纠正对话转换为序列形式,得到对应的对话内容序列和对话者序列;
训练模块,被配置为能够根据所述对话内容序列和所述对话者序列训练对话预测模型;以及
预测模块,被配置为能够基于所述对话预测模型,输出预测值序列,以纠正对话轮次。
7.根据权利要求6所述的基于大模型的中文对话轮次纠正系统,其特征在于,所述转换模块进一步被配置为能够:
使用不同的令牌代替不同的说话者,并将对话内容拼接起来。
8.根据权利要求6所述的基于大模型的中文对话轮次纠正系统,其特征在于,所述预测模块进一步被配置为能够:
将所述对话内容序列输入编码器进行特征提取,并在解码器端预测对话者序列。
9.一种基于大模型的中文对话轮次纠正装置,包括存储器、处理器以及存储在所述存储器中并能够在所述处理器上运行的计算机程序,其特征在于,所述处理器被配置为能够在执行所述计算机程序时实现根据权利要求1-5中任一项所述的基于大模型的中文对话轮次纠正的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时能够实现根据权利要求1-5中任一项所述的基于大模型的中文对话轮次纠正方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310252129.0A CN116312539A (zh) | 2023-03-14 | 2023-03-14 | 基于大模型的中文对话轮次纠正方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310252129.0A CN116312539A (zh) | 2023-03-14 | 2023-03-14 | 基于大模型的中文对话轮次纠正方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116312539A true CN116312539A (zh) | 2023-06-23 |
Family
ID=86800926
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310252129.0A Pending CN116312539A (zh) | 2023-03-14 | 2023-03-14 | 基于大模型的中文对话轮次纠正方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116312539A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117407793A (zh) * | 2023-11-03 | 2024-01-16 | 上海无问芯穹智能科技有限公司 | 一种并行化策略优化方法、系统、设备及介质 |
-
2023
- 2023-03-14 CN CN202310252129.0A patent/CN116312539A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117407793A (zh) * | 2023-11-03 | 2024-01-16 | 上海无问芯穹智能科技有限公司 | 一种并行化策略优化方法、系统、设备及介质 |
CN117407793B (zh) * | 2023-11-03 | 2024-05-28 | 上海无问芯穹智能科技有限公司 | 一种用于大语言模型的并行化策略优化方法、系统、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6916264B2 (ja) | 切断アテンションに基づくリアルタイム音声認識方法、装置、機器及びコンピュータ読み取り可能な記憶媒体 | |
EP4073787B1 (en) | System and method for streaming end-to-end speech recognition with asynchronous decoders | |
US11210306B2 (en) | Dialogue system, a method of obtaining a response from a dialogue system, and a method of training a dialogue system | |
CN108334487B (zh) | 缺失语意信息补全方法、装置、计算机设备和存储介质 | |
CN111199727B (zh) | 语音识别模型训练方法、系统、移动终端及存储介质 | |
CN111460807B (zh) | 序列标注方法、装置、计算机设备和存储介质 | |
CN111144110B (zh) | 拼音标注方法、装置、服务器及存储介质 | |
CN111312245B (zh) | 一种语音应答方法、装置和存储介质 | |
Miao et al. | Online hybrid CTC/attention end-to-end automatic speech recognition architecture | |
CN112837669B (zh) | 语音合成方法、装置及服务器 | |
CN112417864B (zh) | 基于门控拷贝和掩码的多轮对话省略恢复方法 | |
CN114550703A (zh) | 语音识别系统的训练方法和装置、语音识别方法和装置 | |
CN109933773A (zh) | 一种多重语义语句解析系统及方法 | |
CN116312539A (zh) | 基于大模型的中文对话轮次纠正方法及系统 | |
CN113450765A (zh) | 语音合成方法、装置、设备及存储介质 | |
Orken et al. | Identifying the influence of transfer learning method in developing an end-to-end automatic speech recognition system with a low data level | |
CN112989794A (zh) | 模型训练方法、装置、智能机器人和存储介质 | |
Zhang et al. | Word-level bert-cnn-rnn model for chinese punctuation restoration | |
CN113077785B (zh) | 一种端到端的多语言连续语音流语音内容识别方法及系统 | |
CN112818688B (zh) | 文本处理方法、装置、设备及存储介质 | |
CN115374784A (zh) | 一种多模态信息选择性融合的中文命名实体识别方法 | |
CN113961701A (zh) | 消息文本的聚类方法及装置 | |
CN114373443A (zh) | 语音合成方法和装置、计算设备、存储介质及程序产品 | |
Tanaka et al. | End-to-end rich transcription-style automatic speech recognition with semi-supervised learning | |
CN113761935A (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 |