CN111767377B - 一种面向低资源环境的高效口语理解识别方法 - Google Patents
一种面向低资源环境的高效口语理解识别方法 Download PDFInfo
- Publication number
- CN111767377B CN111767377B CN202010574286.XA CN202010574286A CN111767377B CN 111767377 B CN111767377 B CN 111767377B CN 202010574286 A CN202010574286 A CN 202010574286A CN 111767377 B CN111767377 B CN 111767377B
- Authority
- CN
- China
- Prior art keywords
- layer
- word
- model
- training
- character
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000012549 training Methods 0.000 claims abstract description 61
- 239000013598 vector Substances 0.000 claims abstract description 46
- 238000000354 decomposition reaction Methods 0.000 claims abstract description 16
- 238000013528 artificial neural network Methods 0.000 claims description 32
- 239000011159 matrix material Substances 0.000 claims description 27
- 238000012795 verification Methods 0.000 claims description 25
- 238000012360 testing method Methods 0.000 claims description 22
- 230000000694 effects Effects 0.000 claims description 18
- 230000006870 function Effects 0.000 claims description 18
- 238000000605 extraction Methods 0.000 claims description 12
- 230000011218 segmentation Effects 0.000 claims description 9
- 238000010606 normalization Methods 0.000 claims description 8
- 230000002457 bidirectional effect Effects 0.000 claims description 7
- 238000009826 distribution Methods 0.000 claims description 4
- 230000003213 activating effect Effects 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000002372 labelling Methods 0.000 claims description 3
- 238000004519 manufacturing process Methods 0.000 abstract description 3
- 235000019580 granularity Nutrition 0.000 abstract description 2
- 238000003860 storage Methods 0.000 abstract description 2
- 238000005516 engineering process Methods 0.000 description 3
- 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
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000002790 cross-validation Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- 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/045—Combinations of 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/08—Learning methods
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Machine Translation (AREA)
Abstract
本发明适用于口语理解识别技术领域,提供一种面向低资源环境的高效口语理解识别方法,使用多任务学习将口语理解任务的两个子任务进行联合训练,多任务学习可以利用隐含在两个子任务的训练信号中的特定领域信息来提高泛化能力;而且使用了字符级和词语级别的词向量,可以捕捉输入文本不同粒度的特征;另外,使用张量分解的方法对模型进行了压缩,进一步降低模型的参数量。本发明方法在有效降低模型参数的情况下仍然可以保证模型的准确度,可以适应计算和存储资源非常有限实际生产环境,大大降低了模型的部署成本,节能环保。
Description
技术领域
本发明属于口语理解识别技术领域,尤其涉及一种面向低资源环境的高效口语理解识别方法。
背景技术
随着近年来科技的快速进步,能够与客户进行流畅对话的智能对话系统已经在电商客服、天气查询、搜索引擎等领域替代了大量的人工重复劳动,不仅大大解放了生产力,而且可以为客户提供快速精准的特色功能服务,因而成为现代科技特别是人工智能领域最为核心、最为热门的技术之一。
口语理解识别任务是智能对话系统中非常重要的一环,目的是通过计算机自动从说话人产生的离散口语文字信息中提取出结构化数据,用于支持对话系统后续的信息检索、阅读理解、问答生成等任务。通常情况下,口语理解识别任务可以继续细分为两个子任务,分别是语句意图识别和语句词槽填充。其中语句意图识别主要完成对当前输入语句的用户意图分析,语句词槽填充则是从输入语句中解析出诸如时间、地点、数量等等关键的名词信息。
目前关于口语理解识别任务已有大量研究,特别是随着深度学习的发展,基于深度神经网络的方法以其高准确率得到广泛的认可。目前的口语理解识别方法根据是否将语句识别和语句词槽填充两个任务进行独立建模,可分为独立建模和联合建模两种。其中效果较好的联合模型又包括基于卷积神经网络等方法、基于双向长短期记忆网络的方法、基于变压器模型的方法以及基于最新的BERT模型的方法等等。现有的方法主要目标是提高模型在口语理解任务的识别准确度,并没有考虑如何在计算资源非常有限实际生产环境,平衡准确率和资源占用两方面的因素,使得模型既能准确的预测同时占用少量资源,节能环保。
发明内容
鉴于上述问题,本发明的目的在于提供一种面向低资源环境的高效口语理解识别方法,旨在解决现有识别方法中识别准确度和资源占用两者无法平衡的技术问题。
本发明采用如下技术方案:
所述面向低资源环境的高效口语理解识别方法包括下述步骤:
步骤S1、从合适的数据源中选取和设计用户的常用查询语句,从所述常用查询语句中提取重要实体和属性作为词槽,并分析常用查询语句的输入目的作为意图,以构建口语理解识别数据集,数据集划分为训练集,验证集和测试集;
步骤S2、构建模型的嵌入表示层,包括词语级别的嵌入层和字符级别的嵌入层;
步骤S3、在所述嵌入表示层上构建模型的意图识别神经网络分支;
步骤S4、在所述嵌入表示层上构建模型的词槽填充神经网络分支;
步骤S5、设置联合训练模型的损失函数,并选用优化器对所述意图识别神经网络分支和词槽填充神经网络分支在训练集上进行训练,同时在验证集上进行效果验证并选取训练超参数,最终在测试集上进行测试;
步骤S6、对训练好的模型中参数量较大的全连接层的参数进行张量分解,构建压缩后的模型;
步骤S7、对压缩后的模型继续在训练集上进行进一步训练微调,以提升压缩后模型的效果。
进一步的,所述步骤S1具体包括:
步骤S11、从合适的数据源中选取与任务相关的常用查询语句,根据提问的频率和质量选取部分常用查询语句作为待标注数据集;
步骤S12、从常用查询语句中根据任务的目标设计常用实体以及属性的词语作为词槽;
步骤S13、设计若干常见的意图作为标签,根据标签对待标注数据集中的常用查询语句进行分类和标注;
步骤S14、根据设计的词槽以及标注后的常用查询语句构建标注口语理解数据集,并随机划分大小生成训练集、验证集和测试集。
进一步的,所述步骤S2具体包括:
步骤S21、根据口语理解识别数据集的语句,选用适合的预训练词向量作为模型的词语级别的的词嵌入层,预训练词向量的选用标准为尽量提高词表覆盖率,即口语理解识别数据集中常用查询语句的分词集合属于词向量词表中的部分在词向量词表中的占有百分比,其中词嵌入层的参数为词嵌入矩阵WE=concat(we1,we2,......,wen);
这里wei为对口语理解识别数据集中常用查询语句的分词后的每个单词在预训练词向量中选取对应的单词向量,n表示分词操作后单词的个数,concat表示对词向量在句子方向上进行拼接,d为每个单词的向量维度,此时词嵌入矩阵WE大小为n×d;
步骤S22、使用高斯分布随机初始字符级别的字符嵌入层参数并进行特征提取,构建模型的字符级别的嵌入层,其中字符嵌入层的参数为字符嵌入矩阵CE=concat(ce1,ce2,......,cem),这里需要对口语理解识别数据集中常用查询语句转化为字符序列,cei为字符序列中每个字符随机初始化一个d维的词向量,m为字符转化操作后字符序列的字符个数,此时得到的字符嵌入矩阵CE大小为m×d;
这里特征提取具体包括:将字符嵌入矩阵CE输入到BiLSTM模型中进行特征提取并合并,得到新的字符嵌入特征CE',其大小为n×h,h为BiLSTM模型的隐藏层维度;
步骤S23、将词嵌入层参数和字符嵌入层参数,得到融合后的嵌入表示层,并作为多任务学习的共享参数层SE=WE+CE'。
进一步的,所述步骤S3具体包括:
步骤S31、采用BiLSTM模型对共享参数层进行文本序列特征提取;
步骤S32、依次添加层归一化和Dropout层来缓解过拟合问题;
步骤S33、添加注意力表示层以捕捉语句的全局信息;
步骤S34、添加全连接层并使用Softmax函数进行激活得到意图识别神经网络分支。
进一步的,所述步骤S4具体包括:
步骤S41、采用双向LSTM模型对共享参数层进行进行文本序列特征提取;
步骤S42、依次添加层归一化和Dropout层来缓解过拟合问题;
步骤S43、依次添加全连接层和条件随机场层得到模型的词槽填充神经网络分支。
进一步的,所述步骤S5具体包括:
步骤S51、设置联合训练模型的损失函数的损失函数Lall=kiLintnet+ksLslots,其中Lintent是图识别神经网络分支的输出和意图标签交叉熵损失函数,Lslots是词槽填充神经网络分支的输出和词槽标签的交叉熵损失函数,权重ki和ks作为超参数;
步骤S52、选用优化器;
步骤S53、对构建的意图识别神经网络分支和词槽填充神经网络分支在训练集上进行训练,同时在验证集上进行效果验证;
步骤S54、通过网格搜索和交叉验证调整超参数;
步骤S55、在测试集上进行测试模型效果。
进一步的,所述步骤S6具体包括:
步骤S61、对训练好的模型的参数矩阵进行张量分解,首先把全连接层的输入矩阵X和输出矩阵Y进行张量化表示,然后通过张量分解对全连接层的参数矩阵进行张量化表示
步骤S62、重新构建张量分解压缩后的模型,即保持模型其他层的形式和参数不变,把模型的全连接层替换为张量分解后的层,然后把分解后的参数重新填入张量分解后的层中。
进一步的,所述步骤S7具体包括:
步骤S71、重新加载张量分解压缩后的模型,并在训练数据集上使用小学习率进行进一步训练,即微调;
步骤S72、保存微调后的模型。
本发明的有益效果是:本发明方法是一种基于多任务学习和Tensor-Train张量分解的高效口语理解识别方法,在有效降低模型参数的情况下仍然可以保证模型的准确度,因此可以适应计算和存储资源非常有限实际生产环境,大大降低了模型的部署成本,节能环保。
附图说明
图1是本发明第实施例提供的面向低资源环境的高效口语理解识别方法的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
图1示出了本发明实施例提供的的所述面向低资源环境的高效口语理解识别方法的流程,为了便于说明仅示出了与本发明实施例相关的部分。
所述面向低资源环境的高效口语理解识别方法包括下述步骤:
步骤S1、从合适的数据源中选取和设计用户的常用查询语句,从所述常用查询语句中提取重要实体和属性作为词槽,并分析常用查询语句的输入目的作为意图,以构建口语理解识别数据集,数据集划分为训练集,验证集和测试集。
根据用户日常问题搜索数据源,如日志文件、网络论坛等,选取与任务相关的提问,即用户的常用查询语句query,提取query中的重要实体和属性作为词槽slots,分析query的输入目的作为意图intent,从而构建口语理解识别数据集。具体的,本步骤包括:
S11、从合适的数据源中选取与任务相关的常用查询语句,根据提问的频率和质量选取部分常用查询语句作为待标注数据集。
为实现更好的用户体验需要补充设计用户的常用对话语句,例如“你好”、“再见”等等。
S12、从常用查询语句中根据任务的目标设计常用实体以及属性的词语作为词槽。
首先需要根据任务的目标设计常用实体以及属性词语作为词槽slots,例如针对城市天气查询场景,需要设计的词槽包括时间(例如“今天”,“18:00”,“周三”等)、地点(例如“北京”等)、天气状况(例如“多云”,“雨加雪”等)。数据标注通常比较耗时耗力,因此可以先借助正则匹配和预训练的命名实体识别模型进行初步提取,然后人工进行进一步修正。
S13、设计若干常见的意图作为标签,根据标签对待标注数据集中的常用查询语句进行分类和标注。
首先要设计几种常见的意图作为标签,例如打招呼、再见、查询天气等等。然后对选取出的待标注数据集中的query进行分类和标注。
S14、根据设计的词槽以及标注后的常用查询语句构建标注口语理解数据集,并随机划分大小生成训练集、验证集和测试集。
一般按照训练集、验证集和测试集进行划分,其中训练集上进行模型的训练,验证集上验证模型的效果并根据验证集上的表现调整模型的结构和超参数,最终在测试集上报告模型的效果。比如训练集、验证集和测试集划分比例为7:2:1。如果实际标注数据集数量较少,也可以只划分训练集和测试集,并在训练的时候采用交叉验证的方法进行训练,这种情况下参考的划分比例为8:2。
步骤S2、构建模型的嵌入表示层,包括词语级别的嵌入层和字符级别的嵌入层。
对于所述词语级别的嵌入层,需要根据数据集的语句,选用适合的预训练词向量作为模型的词嵌入层。对于字符级别的嵌入层,使用高斯分布随机初始化嵌入层参数,并使用双向LSTM模型(即BiLSTM模型)进行特征提取。最后将两个嵌入层参数相加,得到融合后的嵌入表示层,并作为多任务学习的共享参数层。具体的,包括下述步骤:
S21、根据口语理解识别数据集的语句,选用适合的预训练词向量作为模型的词语级别的的词嵌入层,例如中文语言需要选用中文的预训练词向量,根据训练方法(word2vec、glove以及fasttext)的不同、训练语料的不同以及词向量的维度的不同实际可选择的词向量很多。为提升词向量的效果,本发明用词表覆盖率来作为选用具体的词向量的参考指标,即预训练词向量的选用标准为尽量提高词表覆盖率,词表覆盖率含义是口语理解识别数据集中query的分词集合属于词向量词表Ve中的部分Vq在词向量词表中的占有百分比,词表覆盖率其中针对中文在词表中是指和词表中的某个词语重合,而针对英文等外文一般还包括单词的大小写、词性还原等和词表中的某个词语重合。显然VC越高,词向量的质量一般也越好。
预训练词向量选取完成后,需要对query构建词向量嵌入层,简称词嵌入层。词嵌入层的参数为词嵌入矩阵WE=concat(we1,we2,......,wen);这里wei为对口语理解识别数据集中常用查询语句的分词后的每个单词在预训练词向量中选取对应的单词向量,n表示分词操作后单词的个数,concat表示对词向量在句子方向上进行拼接,d为每个单词的向量维度,此时词嵌入矩阵WE大小为n×d。
S22、使用高斯分布随机初始字符级别的字符嵌入层参数并进行特征提取,构建模型的字符级别的嵌入层,其中字符嵌入层的参数为字符嵌入矩阵CE=concat(ce1,ce2,......,cem),这里首先需要将query转化为字符序列,cei为字符序列中每个字符随机初始化一个d维的词向量,m为字符转化操作后字符序列的字符个数,此时得到的字符嵌入矩阵CE大小为m×d;
这里特征提取具体包括:将字符嵌入矩阵CE输入到BiLSTM模型中进行特征提取并合并,得到新的字符嵌入特征CE'=BiLSTM(CE),其大小为n×h,h为BiLSTM模型的隐藏层维度;
S23、将词嵌入层参数和字符嵌入层参数,本实施例设置d=h,得到融合后的嵌入表示层,并作为多任务学习的共享参数层SE=WE+CE'。
步骤S3、在所述嵌入表示层上构建模型的意图识别神经网络分支。首先采用双向LSTM模型对嵌入层进行特征提取,然后依次添加层归一化和Dropout层来缓解可能导致的过拟合问题,之后依次添加注意力表示层来对和全连接层得到模型的意图识别分支。本步骤具体包括:
S31、采用BiLSTM模型对共享参数层进行文本序列特征提取;BiLSTM由两个反方向的LSTM的组成而成,其输出结果为两个LSTM的隐藏层的状态向量叠加。本实施例采用两个向量相加的方法进行隐状态的融合;
forward_hidden=BiLSTM(SE)f
backward_hidden=BiLSTM(SE)b
int ent_bilstm=forward_hidden+backward_hidden
S32、依次添加层归一化和Dropout层来缓解过拟合问题;
int ent_bilstm=Dropout(int ent_bilstm)
int ent_bilstm=LayerNormalization(int ent_bilstm)
S33、添加注意力表示层以捕捉语句的全局信息;
为更好的捕捉语句的全局信息,这里添加注意力表示层进一步增加模型的信息容量。
att_intent=Attention(int ent_bilstm)
S34、添加全连接层并使用Softmax函数进行激活得到意图识别神经网络分支。
int ent_dense=W×att_int ent
logitsintent=Soft max(int ent_dense)
步骤S4、在所述嵌入表示层上构建模型的词槽填充神经网络分支。
本步骤与步骤S3类似,首先采用双向LSTM模型对嵌入层进行特征提取,然后依次添加层归一化和Dropout层来缓解可能导致的过拟合问题,之后依次添加全连接层和条件随机场层得到模型的词槽填充神经网络分支。本步骤具体包括:
S41、采用双向LSTM模型对共享参数层进行进行文本序列特征提取;这里的双向LSTM网络和前述意图识别网络神经分支中的双向LSTM网络参数并不共享,训练的时候需要独立训练。
forward_hidden=BiLSTM(SE)f
backward_hidden=BiLSTM(SE)b
slots_bilstm=forward_hidden+backward_hidden
S42、依次添加层归一化和Dropout层来缓解过拟合问题;
slots_bilstm=Dropout(slots_bilstm)
slots_bilstm=LayerNormalization(slots_bilstm)
S43、依次添加全连接层和条件随机场层(CRF)得到模型的词槽填充神经网络分支。
slots_dense=W×slots_bilstm
logitsslots=Soft max(slots_dense)
步骤S5、设置联合训练模型的损失函数,并选用优化器对所述意图识别神经网络分支和词槽填充神经网络分支在训练集上进行训练,同时在验证集上进行效果验证并选取训练超参数,最终在测试集上进行测试。本步骤具体包括:
S51、设置联合训练模型的损失函数的损失函数Lall=kiLintnet+ksLslots,其中Lintent是图识别神经网络分支的输出logits和意图标签交叉熵损失函数,Lslots是词槽填充神经网络分支的输出logits和词槽标签的交叉熵损失函数,权重ki和ks作为超参数需要调整;
Lintent=cross_entropy(logitintent,labelintent)
Lslots=cross_entropy(log itslots,labelslots)
Lall=kiLintnet+ksLslots
S52、选用优化器;一般选用效果较好的Adam优化器进行网络优化,也可以采用带动量的SGD优化器。
S53、对构建的意图识别神经网络分支和词槽填充神经网络分支在训练集上进行训练,同时在验证集上进行效果验证;
S54、通过网格搜索和交叉验证调整超参数;包括学习率,批处理大小以及网络隐藏层维度等等,来获得效果更好的模型;
S55、在测试集上进行测试模型效果。
步骤S6、对训练好的模型中参数量较大的全连接层的参数进行张量分解,构建压缩后的模型。本步骤具体包括:
S61、对训练好的模型的参数矩阵进行Tensor-Train张量分解。Tensor-Train张量分解方法是把目标张量分解为向量、矩阵、向量连乘的形式。本步骤把全连接层的输入矩阵X和输出矩阵Y进行张量化表示:
然后通过张量分解对全连接层的参数矩阵W和B进行张量化表示:
B=β(j1,Λ,jd)
y(j1,Λ,jd)=W+B
进行张量分解会后,模型的参数量会被大大压缩。
S62、重新构建张量分解压缩后的模型,即保持模型其他层的形式和参数不变,把模型的全连接层替换为张量分解后的层,然后把分解后的参数重新填入张量分解后的层中。
步骤S7、对压缩后的模型继续在训练集上进行进一步训练微调,以提升压缩后模型的效果。
步骤S71、重新加载张量分解压缩后的模型,并在训练数据集上使用小学习率进行进一步训练,即微调;通常几轮训练后模型就会收敛,并达到和未分解之前的模型相仿的精度。
步骤S72、保存微调后的模型,用于线上预测。由于模型推测阶段不再需要反向传播,因此可以删除模型中个关于优化器的参数以减小模型的体积。
综上,本发明方法提供了一种高效口语理解识别方法,在模型整体结构上,使用多任务学习将口语理解任务的两个子任务进行联合训练,多任务学习可以利用隐含在两个子任务的训练信号中的特定领域信息来提高泛化能力;此外,由于使用共享表示,多个任务同时进行预测时,减少了数据来源的数量以及整体模型参数的规模,使预测更加高效。第二,在使用模型提取特征的时候,分别使用了字符级和词语级别的词向量,可以捕捉输入文本不同粒度的特征。第三,为了进一步降低模型的参数量,使用张量分解的方法对模型进行了压缩,结果表明张量分解的方法可以在不降低模型准确度的情况下大大降低模型的体积。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (3)
1.一种面向低资源环境的高效口语理解识别方法,其特征在于,所述方法包括下述步骤:
步骤S1、从合适的数据源中选取和设计用户的常用查询语句,从所述常用查询语句中提取重要实体和属性作为词槽,并分析常用查询语句的输入目的作为意图,以构建口语理解识别数据集,数据集划分为训练集,验证集和测试集;
步骤S2、构建模型的嵌入表示层,包括词语级别的嵌入层和字符级别的嵌入层;
步骤S3、在所述嵌入表示层上构建模型的意图识别神经网络分支;
步骤S4、在所述嵌入表示层上构建模型的词槽填充神经网络分支;
步骤S5、设置联合训练模型的损失函数,并选用优化器对所述意图识别神经网络分支和词槽填充神经网络分支在训练集上进行训练,同时在验证集上进行效果验证并选取超参数,最终在测试集上进行测试;
步骤S6、对训练好的模型中参数量较大的全连接层的参数进行张量分解,构建压缩后的模型;
步骤S7、对压缩后的模型继续在训练集上进行进一步训练微调,以提升压缩后模型的效果;
其中所述步骤S1具体包括:
步骤S11、从合适的数据源中选取与任务相关的常用查询语句,根据提问的频率和质量选取部分常用查询语句作为待标注数据集;
步骤S12、从常用查询语句中根据任务的目标设计常用实体以及属性的词语作为词槽;
步骤S13、设计若干常见的意图作为标签,根据标签对待标注数据集中的常用查询语句进行分类和标注;
步骤S14、根据设计的词槽以及标注后的常用查询语句构建标注口语理解数据集,并随机划分大小生成训练集、验证集和测试集;
其中所述步骤S2具体包括:
步骤S21、根据口语理解识别数据集的语句,选用适合的预训练词向量作为模型的词语级别的词嵌入层,预训练词向量的选用标准为尽量提高词表覆盖率,即口语理解识别数据集中常用查询语句的分词集合属于词向量词表中的部分在词向量词表中的占有百分比,其中词嵌入层的参数为词嵌入矩阵WE=concat(we1,we2,......,wen);
这里wei为对口语理解识别数据集中常用查询语句的分词后的每个单词在预训练词向量中选取对应的单词向量,n表示分词操作后单词的个数,concat表示对词向量在句子方向上进行拼接,d为每个单词的向量维度,此时词嵌入矩阵WE大小为n×d;
步骤S22、使用高斯分布随机初始字符级别的字符嵌入层参数并进行特征提取,构建模型的字符级别的嵌入层,其中字符嵌入层的参数为字符嵌入矩阵CE=concat(ce1,ce2,......,cem),这里需要对口语理解识别数据集中常用查询语句转化为字符序列,cei为字符序列中每个字符随机初始化一个d维的词向量,m为字符转化操作后字符序列的字符个数,此时得到的字符嵌入矩阵CE大小为m×d;
这里特征提取具体包括:将字符嵌入矩阵CE输入到BiLSTM模型中进行特征提取并合并,得到新的字符嵌入特征CE',其大小为n×h,h为BiLSTM模型的隐藏层维度;
步骤S23、将词嵌入层参数和字符嵌入层参数,得到融合后的嵌入表示层,并作为多任务学习的共享参数层SE=WE+CE';
其中所述步骤S3具体包括:
步骤S31、采用BiLSTM模型对共享参数层进行文本序列特征提取;
步骤S32、依次添加层归一化和Dropout层来缓解过拟合问题;
步骤S33、添加注意力表示层以捕捉语句的全局信息;
步骤S34、添加全连接层并使用Softmax函数进行激活得到意图识别神经网络分支;
其中所述步骤S4具体包括:
步骤S41、采用双向LSTM模型对共享参数层进行文本序列特征提取;
步骤S42、依次添加层归一化和Dropout层来缓解过拟合问题;
步骤S43、依次添加全连接层和条件随机场层得到模型的词槽填充神经网络分支;
其中所述步骤S5具体包括:
步骤S51、设置联合训练模型的损失函数Lall=kiLintnet+ksLslots,其中Lintent是意图识别神经网络分支的输出和意图标签交叉熵损失函数,Lslots是词槽填充神经网络分支的输出和词槽标签的交叉熵损失函数,权重ki和ks作为超参数;
步骤S52、选用优化器;
步骤S53、对构建的意图识别神经网络分支和词槽填充神经网络分支在训练集上进行训练,同时在验证集上进行效果验证;
步骤S54、通过网格搜索和交叉验证调整超参数;
步骤S55、在测试集上进行测试模型效果。
2.如权利要求1所述面向低资源环境的高效口语理解识别方法,其特征在于,所述步骤S6具体包括:
步骤S61、对训练好的模型的参数矩阵进行张量分解,首先把全连接层的输入矩阵X和输出矩阵Y进行张量化表示,然后通过张量分解对全连接层的参数矩阵进行张量化表示;
步骤S62、重新构建张量分解压缩后的模型,即保持模型其他层的形式和参数不变,把模型的全连接层替换为张量分解后的层,然后把分解后的参数重新填入张量分解后的层中。
3.如权利要求2所述面向低资源环境的高效口语理解识别方法,其特征在于,所述步骤S7具体包括:
步骤S71、重新加载张量分解压缩后的模型,并在训练数据集上使用小学习率进行进一步训练,即微调;
步骤S72、保存微调后的模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010574286.XA CN111767377B (zh) | 2020-06-22 | 2020-06-22 | 一种面向低资源环境的高效口语理解识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010574286.XA CN111767377B (zh) | 2020-06-22 | 2020-06-22 | 一种面向低资源环境的高效口语理解识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111767377A CN111767377A (zh) | 2020-10-13 |
CN111767377B true CN111767377B (zh) | 2024-05-28 |
Family
ID=72721514
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010574286.XA Active CN111767377B (zh) | 2020-06-22 | 2020-06-22 | 一种面向低资源环境的高效口语理解识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111767377B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106156003A (zh) * | 2016-06-30 | 2016-11-23 | 北京大学 | 一种问答系统中的问句理解方法 |
CN107944556A (zh) * | 2017-12-12 | 2018-04-20 | 电子科技大学 | 基于块项张量分解的深度神经网络压缩方法 |
CN109299262A (zh) * | 2018-10-09 | 2019-02-01 | 中山大学 | 一种融合多粒度信息的文本蕴含关系识别方法 |
CN109597993A (zh) * | 2018-11-30 | 2019-04-09 | 深圳前海微众银行股份有限公司 | 语句分析处理方法、装置、设备以及计算机可读存储介质 |
-
2020
- 2020-06-22 CN CN202010574286.XA patent/CN111767377B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106156003A (zh) * | 2016-06-30 | 2016-11-23 | 北京大学 | 一种问答系统中的问句理解方法 |
CN107944556A (zh) * | 2017-12-12 | 2018-04-20 | 电子科技大学 | 基于块项张量分解的深度神经网络压缩方法 |
CN109299262A (zh) * | 2018-10-09 | 2019-02-01 | 中山大学 | 一种融合多粒度信息的文本蕴含关系识别方法 |
CN109597993A (zh) * | 2018-11-30 | 2019-04-09 | 深圳前海微众银行股份有限公司 | 语句分析处理方法、装置、设备以及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111767377A (zh) | 2020-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Cui et al. | Template-based named entity recognition using BART | |
CN111190997B (zh) | 一种使用神经网络和机器学习排序算法的问答系统实现方法 | |
CN112270379A (zh) | 分类模型的训练方法、样本分类方法、装置和设备 | |
CN110597961B (zh) | 一种文本类目标注方法、装置、电子设备及存储介质 | |
CN108304372A (zh) | 实体提取方法和装置、计算机设备和存储介质 | |
CN111462750A (zh) | 语义与知识增强的端到端任务型对话系统及方法 | |
CN113239169A (zh) | 基于人工智能的回答生成方法、装置、设备及存储介质 | |
CN112463968B (zh) | 文本分类方法、装置和电子设备 | |
CN114239730B (zh) | 一种基于近邻排序关系的跨模态检索方法 | |
CN115759119A (zh) | 一种金融文本情感分析方法、系统、介质和设备 | |
CN111563378A (zh) | 一种联合学习的多文档阅读理解实现方法 | |
CN118228694A (zh) | 基于人工智能实现工业行业数智化的方法和系统 | |
CN116955579B (zh) | 一种基于关键词知识检索的聊天回复生成方法和装置 | |
CN113869054A (zh) | 一种基于深度学习的电力领域项目特征识别方法 | |
CN113408292A (zh) | 语义识别方法、装置、电子设备及计算机可读存储介质 | |
CN111767377B (zh) | 一种面向低资源环境的高效口语理解识别方法 | |
CN116978367A (zh) | 语音识别方法、装置、电子设备和存储介质 | |
CN116956915A (zh) | 实体识别模型训练方法、装置、设备、存储介质及产品 | |
CN115700579A (zh) | 广告文本生成方法及其装置、设备、介质 | |
CN113806536A (zh) | 文本分类方法及其装置、设备、介质、产品 | |
CN114298037A (zh) | 基于深度学习的文本摘要获取方法 | |
CN113590797A (zh) | 一种智能运维客服系统及实现方法 | |
CN113297380A (zh) | 基于自注意力机制和卷积神经网络的文本分类算法 | |
CN113761081A (zh) | 一种用于对企业信息进行多维度组合检索的方法及其系统 | |
CN113535125A (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 |