有效
一种基于轻量化预训练语言模型的文本分类方法
黄震、王安坤、陈一凡、郭敏、王博阳、方群天、刘锋、李东升
中国人民解放军国防科技大学
黄
黄震 专利 49
中国人民解放军国防科技大学自然语言处理生物模型计算计算模型系统
王
王安坤 专利 6
中国建筑科学研究院物理仪器电子数据处理G06K9/00
陈
陈一凡 专利 4
中国人民解放军国防科技大学G06K9/00图形数据读写电子数据处理
郭
郭敏 专利 19
中国人民解放军国防科技大学物理仪器计算技术电子数据处理
王
王博阳 专利 4
中国人民解放军国防科技大学G06K9/00图形数据读写数据存储检索
方
方群天 专利 3
中国人民解放军国防科技大学电子数据处理计算技术物理仪器
刘
刘锋 专利 7
中国人民解放军国防科技大学图形数据读写G06K9/00计算技术
李
李东升 专利 142
中国人民解放军国防科技大学自然语言处理数据存储检索程序控制装置
摘要
本发明公开了一种基于轻量化预训练语言模型的文本分类方法,目的是在占用资源少的前提下提高文本分类准确率。技术方案是:构建基于预训练语言模型的文本分类模型,包括教师模型和学生模型;将GLUE数据集处理为文本分类模型进行分类时需要的格式;对教师模型进行参数初始化,采用处理好的GLUE数据集对教师模型进行微调;接着对学生模型进行参数初始化,采用GLUE数据集使用知识蒸馏方法轻量化微调后的教师模型,得到学生模型的网络权重参数;使用学生模型网络权重参数初始化学生模型,得到轻量化的学生模型;最后使用轻量化的学生模型对用户输入文本进行文本分类,得到分类结果。本发明实现了在占有资源少的前提下文本分类准确率高。
1.一种基于轻量化预训练语言模型的文本分类方法,其特征在于包括以下步骤:第一步:构造基于预训练语言模型的文本分类模型,包括教师模型和学生模型,两个模型相互独立;教师模型由文本嵌入层,文本特征提取层,分类层组成;文本嵌入层由三个全连接层组成,分类层由一个全连接层组成,文本特征提取层由12个transformer层组成;教师模型的文本嵌入层从文件接收训练集T,T={s 1 ,s 2 ,…,s a ,…,s A },s a 表示T中第a个样本;文本嵌入层对T中的样本s 1 ,s 2 ,…,s a ,…,s A 进行文本嵌入转换,得到文本句子的嵌入向量表示集合E(T),E(T)={E(s 1 ),E(s 2 ),…,E(s a ),…,E(s A )},E(s a )是s a 的嵌入向量表示,将E(T)发送给文本特征提取层;教师模型的文本特征提取层从文本嵌入层接收E(T),对E(T)进行特征提取,得到文本语义特征集合F(T),F(T)={F(s 1 ),F(s 2 ),…,F(s a ),…,F(s A )},F(s a )是s a 的语义特征,将F(T)发送给分类层;教师模型的分类层从文本特征提取层接收F(T),对F(T)使用全连接层处理,得到分类结果概率分布集合R,R={R(s 1 ),R(s 2 ),…,R(s a ),…,R(s A )};R(s a )为一维向量,单个向量值为样本属于对应类别的概率值,R(s a )的长度为分类结果数,最后根据极大似然原理,判定样本属于概率值最大的对应类别;学生模型由文本嵌入层,文本特征提取层,分类层组成;学生模型的文本嵌入层与教师模型的文本嵌入层相同、学生模型的分类层与教师模型的分类层相同;学生模型的文本特征提取层由6个transformer层组成,学生模型的文本特征提取层和教师模型的文本特征提取层的功能相同,输出向量的维度也相同,但两者transformer层的层数不同,对同一文本处理得到的文本语义特征集合不同;第二步:准备微调教师模型和轻量化教师模型需要的训练数据,并将训练数据转换成文本分类模型需要的输入格式;2.1从github下载GLUE官方提供的数据集下载脚本;2.2运行数据集下载脚本download_glue_data.py,运行结束得到GLUE数据集;选取GLUE数据集下的8个子数据集即:CoLA,SST-2,RTE,MRPC,STS-B,QNLI,QQP,MNLI;每个子数据集已划分好训练集,验证集;其中八个子数据集分为两类,CoLA和SST-2属于单句分类,训练集和验证集样本的结构相同,形如样本P={s,l p },s表示一个英文句子,l p 表示样本标签,l p 是长度为分类结果数的独热编码,分类结果数各个数据集已事先规定;剩余六个数据集属于句子对分类;训练集和验证集的样本结构形如D={s 1 ,s 2 ,l d },由两个英文句子和一个样本标签组成,s 1 为英文句子1,s 2 为英文句子2,l d 为样本标签,也是长度为分类结果数的独热编码;2.3对GLUE数据集的8个子数据集的训练集,验证集进行加标志预处理,方法如下:2.3.1对CoLA和SST-2这两个单句分类数据集加标志,方法如下:2.3.1.1采用句首加标志方法对CoLA数据集中的训练集、验证集中每个样本加标志,得到记录CoLA训练集的处理结果文件CoLA_Train_Process,记录CoLA验证集的处理结果文件CoLA_Val_Process;2.3.1.2采用句首加标志方法对SST-2数据集的训练集、验证集中每个样本加标志,得到记录SST-2训练集的处理结果文件SST-2_Train_Process,记录SST-2验证集的处理结果文件SST-2_Val_Process;使用句首加标志法处理单句分类数据集的训练集和验证集后,单个样本P={s,l p }处理后得到句首加了标志的样本P^,P^={s^,l p },其中s^=[CLS]s;2.3.2对RTE,MRPC,STS-B,QNLI,QQP,MNLI这六个句子对分类数据集加标志,方法如下:2.3.2.1采用句首句尾加标志方法对RTE数据集中的训练集、验证集中每个样本加标志,得到记录RTE训练集的处理结果文件RTE_Train_Process,记录RTE验证集的处理结果文件RTE_Val_Process:2.3.2.2采用句首句尾加标志方法对MRPC数据集加标志,得到记录MRPC训练集的处理结果文件MRPC_Train_Process,记录MRPC验证集的处理结果文件MRPC_Val_Process;2.3.2.3采用句首句尾加标志方法对STS-B数据集加标志,得到记录STS-B训练集的处理结果文件STS-B_Train_Process,记录STS-B验证集的处理结果文件STS-B_Val_Process;2.3.2.4采用句首句尾加标志方法对QQB数据集加标志,得到记录QQB训练集的处理结果文件QQB_Train_Process,和记录QQB验证集的处理结果文件QQB_Val_Process;2.3.2.5采用句首句尾加标志方法对QNLI数据集加标志,得到记录QNLI训练集的处理结果文件QNLI_Train_Process,和记录QNLI验证集的处理结果文件QNLI_Val_Process;2.3.2.6采用句首句尾加标志方法对MNLI数据集加标志,得到记录MNLI训练集的处理结果文件MNLI_Train_Process中,记录MNLI验证集的处理结果文件MNLI_Val_Process;使用句首句尾加标志法处理句子对分类数据集的训练集合和验证集后,单个样本D={s 1 ,s 2 ,l d }处理后得到句首句尾加了标志的样本D^,D^={s d ,l d },其中s d =[CLS]s 1 [SEP]s 2 ,由符号[CLS]和[SEP]将两个句子拼接成了一个新的句子;2.3.2.7将加标志后的数据集形式抽象为以下形式,即加标志后的数据集X含有训练集T,验证集V,X为{CoLA,SST-2,RTE,MRPC,STS-B,QNLI,QQP,MNLI}中任意一个数据集,下文出现的X均表示此含义:训练集T={s 1 ,s 2 ,…,s a ,…s A },包含A个训练集样本,s a 代表第a个训练集样本,s a ={w 1 a …w m a …w M a ,l a },s a 中共包含M个单词,w m a 代表第a个训练集样本中句子的第m个单词,l a 代表第a个训练集样本的样本标签;验证集V={s` 1 ,s` 2 ,…,s` k ,…s` K },包含K个训练集样本,s` k 代表第k个验证集样本,s` k ={w` 1 k …w` q k …w` Q k ,l` k },s` k 中共包含Q个单词,w` q k 代表第k个验证集样本中句子的第q个单词,l` k 代表第k个验证集样本的样本标签;第三步:初始化教师模型的参数,并采用数据集X的训练集加标志预处理后的结果文件X_Train_Process微调教师模型,得到教师模型的权重参数X_Teacher;采用数据集X的验证集加标志预处理后的结果文件X_Val_Process测试教师模型文本分类任务得分,方法是:3.1设置网络训练超参数:包括设置网络模型学习率Learning Rate、批处理大小BatchSize、句子最大长度Max_Sentence_Length、随机数种子Seed;训练轮数Epoch;3.2下载预训练语言模型Bert-base开源的参数,并初始化教师模型权重参数,具体方法如下:3.2.1下载预训练语言模型BERT-base的参数;Bert-base的参数包括文本嵌入层,文本特征提取层和分类层;下载的预训练语言模型BERT-base的参数以key-value的形式进行存储,key为参数名称,value为参数值,是已经训练好的32位浮点数,通过key直接读取value值;3.2.2使用Huggingface开源的transformer库,采用名称对照赋值法把Bert-base的参数值与教师模型文本嵌入层,文本特征提取层,分类层的参数一一对应进行赋值;名称对照赋值法是:教师模型与Bert-base的参数名称一致,通过查找key对应的value值,直接把value值赋值给对应的教师模型参数;3.3采用CoLA_Train_Process、SST-2_Train_Process,RTE_Train_Process,MRPC_Train_Process,STS-B_Train_Process,QNLI_Train_Process,QQP_Train_Process,MNLI_Train_Process微调教师模型,采用CoLA_Val_Process、SST-2_Val_Process,RTE_Val_Process,MRPC_Val_Process,STS-B_Val_Process,QNLI_Val_Process,QQP_Val_Process,MNLI_Val_Process测试微调后的教师模型在文本分类任务上的准确率,得到适用于教师模型针对不同文本进行分类的8种对应的网络权重参数,具体如下:3.3.1采用CoLA_Train_Process、CoLA_Val_Process并采用微调验证方法对教师模型进行微调和验证,得到适用于教师模型针对CoLA类文本进行分类的网络权重参数CoLA_Teacher,方法是:3.3.1.1教师模型调用Python第三方库Numpy读取CoLA_Train_Process,使用CoLA_Train_Process微调教师模型,具体如下:3.3.1.1.1初始化迭代次数e=1;3.3.1.1.2初始化已训练样本数量a=1;3.3.1.1.3采用第a个样本s a 训练教师模型,s a 由一个句子和一个样本标签组成,方法如下:3.3.1.1.3.1教师模型文本嵌入层接收s a ,对s a 进行文本嵌入转换得到s a 的嵌入向量表示E(s a ),E(s a )={E(w 1 a ),…,E(w m a ),…,E(w M a ),l a },E(w m a )是一个长度为768的一维向量,w m a 是s a 的第m个单词,1≤m≤M;3.3.1.1.3.2文本特征提取层中的12个transfromer层对E(s a )进行文本特征提取,得到由12个文本语义特征和样本标签组成的集合F(s a )={F(s a ) 1 ,…,F(s a ) j ,…F(s a ) 12 ,l a },F(s a ) j 代表第j个transfromer层输出的文本语义特征,F(s a ) j 是一个维度为128×768二维矩阵,1≤j≤12;3.3.1.1.3.3教师模型分类层从文本特征提取层接收F(s a ),从F(s a )取出F(s a ) 12 ,分类层对F(s a ) 12 使用全连接层进行分类,得到s a 的概率分布结果R(s a );3.3.1.1.3.4教师模型取出F(s a )中的样本标签l a ,调用均方误差即MSE函数计算R(s a )与l a 之间的差值作为损失值,记为Loss,Loss=MSE(R(s a ),l a );3.3.1.1.3.5教师模型使用Adam优化算法最小化Loss,以更新教师模型文本嵌入层、文本特征层、分类层的网络权重参数,转3.3.1.1.4;3.3.1.1.4令a=a+1,若a≤A,且a整除200结果不为0,转3.3.1.1.3采用下一个样本继续训练;若a≤A且a整除200结果为0,转3.3.1.1.5测试微调后的教师模型在验证集上的得分;若a>A,说明所有数据已经训练完一个轮次,转3.3.1.1.6;3.3.1.1.5教师模型调用第三方库Numpy读取CoLA_Val_Process,测试教师模型在验证集上的得分,即计算对应数据集任务的准确率acc,转3.3.1.1.3继续使用下一条样本训练教师模型;3.3.1.1.6令e=e+1如果e≤Epoch,转3.3.1.1.2;如果e>Epoch,微调结束,用CoLA_Teacher保存微调完成的教师模型网络权重参数,包括文本嵌入层参数,文本特征提取层参数,分类层参数;3.3.2采用SST-2_Train_Process、SST-2_Val_Process并采用3.3.1所述微调验证方法对教师模型进行微调和验证,得到适用于教师模型针对SST-2类文本进行分类的网络权重参数SST-2_Teacher;3.3.3采用RTE_Train_Process、RTE_Val_Process并采用3.3.1所述微调验证方法对教师模型进行微调和验证,得到适用于教师模型针对RTE类文本进行分类的网络权重参数RTE_Teacher;3.3.4采用MRPC_Train_Process、MRPC_Val_Process并采用3.3.1所述微调验证方法对教师模型进行微调和验证,得到适用于教师模型针对,MRPC类文本进行分类的网络权重参数MRPC_Teacher;3.3.5采用STS-B_Train_Process、STS-B_Val_Process并采用3.3.1所述微调验证方法对教师模型进行微调和验证,得到适用于教师模型针对STS-B类文本进行分类的网络权重参数STS-B_Teacher;3.3.6采用MRPC_Train_Process、MRPC_Val_Process并采用3.3.1所述微调验证方法对教师模型进行微调和验证,得到适用于教师模型针对MRPC类文本进行分类的网络权重参数MRPC_Teacher;3.3.7采用QNLI_Train_Process、QNLI_Val_Process并采用3.3.1所述微调验证方法对教师模型进行微调和验证,得到适用于教师模型针对QNLI类文本进行分类的网络权重参数QNLI_Teacher;3.3.8采用QQP_Train_Process、QQP_Val_Process并采用3.3.1所述微调验证方法对教师模型进行微调和验证,得到适用于教师模型针对QQP类文本进行分类的网络权重参数QQP_Teacher;第四步:采用X_Train_Process和知识蒸馏方法轻量化权重参数X_Teacher,即CoLA_Teacher、SST-2_Teacher,、RTE_Teacher、MRPC_Teacher、STS-B_Teacher、QNLI_Teacher、QQP_Teacher、MNLI_Teacher,得到对应的学生模型权重参数X_Student,即CoLA_Student、SST-2_Student、RTE_Student、MRPC_Student、STS-B_Student、QNLI_Student、QQP_Student、MNLI_Student,并使用X_Val_Process验证轻量化后的模型在文本分类任务上的准确率,方法是:4.1设定知识蒸馏所需的超参数:网络模型学习率Learning Rate、批处理大小BatchSize、句子最大长度Max_Sentence_Length、随机数种子Seed、训练轮数Epoch和蒸馏温度Temperature、超参数α,β,γ;4.2使用知识蒸馏方法轻量化CoLA-teacher得到CoLA_student,方法如下:4.2.1采用CoLA_Teacher初始化教师模使用3.2.2描述的名称对照赋值法进行初始化赋值;4.2.2使用Bert-base的参数初始化学生模型,学生模型的文本嵌入层和分类层使用Bert-base相对应的参数,文本特征提取层使用Bert-base的前6个transformer层参数来进行对应的赋值;使用3.2.2描述的名称对照赋值法进行初始化赋值;4.2.3使用Numpy库读取CoLA_Train_Process,采用CoLA_Train_Process轻量化CoLA_Teacher,具体方法如下:4.2.3.1初始化迭代次数f=1;4.2.3.2初始化已训练样本数b=1;4.2.3.3教师模型按4.2.3.3.1流程对CoLA_Train_Process中的第b个样本s b 进行文本分类处理,同时学生模型按4.2.3.3.2所述流程对CoLA_Train_Process中的第b个样本s b 进行文本分类处理;4.2.3.3.1教师模型对第b个样本s b 进行文本分类,得到样本s b 的第一嵌入向量表示TE(s b ),TE(s b )={TE(w 1 b ),…,TE(w i b ),…,TE(w m b ),l b };并对TE(s b )进行文本特征提取,得到由12个文本语义特征和样本标签组成的集合TF(s b ),TF(s b )={TF(s b ) 1 ,…,TF(s b ) j ,…TF(s b ) 12 ,l b },TF(s t ) j 代表第j个transfromer层输出的文本特征;对TF(s b ) 12 进行分类得到样本s b 的第一概率分布结果TR(s b );4.2.3.3.2学生模型对第b个样本s b 进行文本分类处理,得到样本s b 的第二嵌入向量表示SE(s b ),SE(s b )={SE(w 1 b ),…,SE(w m b ),…,SE(w M b ),l b };并对SE(s b )提取文本特征,得到由6个文本语义特征和样本标签组成的集合SF(s b ),SF(s b )={SF(s b ) 1 ,…,SF(s b ) j ,…SF(s b ) 6 ,l b },SF(s b ) j 代表第j个transfromer层输出的文本特征;对SF(s b ) 6 进行分类,得到样本s b 的第二概率分布结果SR(s b );4.2.3.3.3学生模型计算教师模型和学生模型对s b 的处理结果的差值L,L即为学生模型的总损失值;4.2.3.3.4学生模型使用Adam优化算法最小化L,以更新学生模型的文本嵌入层、文本特征提取层、分类层的网络权重参数,转4.2.3.4;4.2.3.4令b=b+1,若b≤A,且b整除200不为0,转4.2.3.3;若b<A且b整除200为0,转4.2.3.5使用验证集测试学生模型得分,若b>A,说明所有数据已经训练完一个轮次,转4.2.3.6;4.2.3.5学生模型调用第三方库Numpy读取CoLA_Val_Process,测试学生模型在验证集上的得分,具体如下:4.2.3.5.1初始化已验证样本数k2=1,初始化记录样本验证正确的变量true_num2=0,学生模型对第k2个样本进行文本分类得到预测的类别,与样本实际类别标签比对来验证是否分类正确,若比对结果一致,则分类正确,true_num2=true_num2+1,若结果不一致,则分类错误; 验证完所有的样本的后,计算最终的文本分类准确率acc=true_num2/K;具体如下;4.2.3.5.1.1学生模型的文本嵌入层对第k2个样本s` k2 进行文本嵌入转换,得到s` k2 的文本嵌入向量集合E(s` k2 ),E(s` k2 )={E(w` 1 k2 ),…,E(w` q k2 ),…,E(w` Q k2 ),l` k2 },E(w` q k2 )是长度为768的一维向量;4.2.3.5.1.2学生模型的文本特征提取层中的6个transfromer层对E(s` k2 )提取文本特征,得到由6个文本语义特征和样本标签组成的集合F(s` k2 ),F(s` k2 )={F(s` k2 ) 1 ,…,F(s` k2 ) j ,…F(s` k2 ) 6 ,l` k2 },F(s` k2 ) j 代表第j个transfromer层输出的文本特征;4.2.3.5.1.3学生模型的分类层接收F(s` k2 ),对F(s` k2 ) 6 进行分类,得到s` k2 的概率分布结果R(s` k2 );4.2.3.5.1.4学生模型比较R(s` k2 )中最大值的索引与真实样本标签独热编码l` k2 中数字1的索引是否相同,若相同,令true_num2=true_num2+1,转4.2.3.5.1.5,若不相同,直接转4.2.3.5.1.5;4.2.3.5.1.5令k2=k2+1,若k2≤K,转4.2.3.5.1.1验证下一个样本,若k2>K,计算对应数据集第二任务准确率acc 2,acc2=true_num2/K,转4.2.3.3继续轻量化教师模型;4.2.3.6令f=f+1,若f≤Epoch,转4.2.3.1;若f>Epoch,训练结束,保存在CoLA_Train_Process上轻量化教师模型得到的学生模型文本嵌入层、文本特征提取层、分类层网络权重参数CoLA_Student;4.3采用SST-2_Train_Process、SST-2_Val_Process并采用4.2所述知识蒸馏方法对教师模型轻量化并验证轻量化后的模型在文本分类任务上的准确率,得到适用于SST-2类文本进行分类的轻量化网络权重参数SST-2_Student;4.4采用RTE_Train_Process、RTE_Val_Process并采用4.2所述知识蒸馏方法对教师模型轻量化并验证轻量化后的模型在文本分类任务上的准确率,得到适用于RTE类文本进行分类的轻量化网络权重参数RTE_Student;4.5采用MRPC_Train_Process、MRPC_Val_Process并采用4.2所述知识蒸馏方法对教师模型轻量化并验证轻量化后的模型在文本分类任务上的准确率,得到适用于MRPC类文本进行分类的轻量化网络权重参数MRPC_Student;4.6采用STS-B_Train_Process、STS-B_Val_Process并采用4.2所述知识蒸馏方法对教师模型轻量化并验证轻量化后的模型在文本分类任务上的准确率,得到适用于STS-B类文本进行分类的轻量化网络权重参数STS-B_Student;4.7采用QNLI_Train_Process、QNLI_Val_Process并采用4.2所述知识蒸馏方法对教师模型轻量化并验证轻量化后的模型在文本分类任务上的准确率,得到适用于QQP类文本进行分类的轻量化网络权重参数QQP_Student;4.8采用QQP_Train_Process、QQP_Val_Process并采用4.2所述知识蒸馏方法对教师模型轻量化并验证轻量化后的模型在文本分类任务上的准确率,得到适用于QQP类文本进行分类的轻量化网络权重参数QQP_Student;4.9采用MNLI_Train_Process、MNLI_Val_Process并采用4.2所述知识蒸馏方法对教师模型轻量化并验证轻量化后的模型在文本分类任务上的准确率,得到适用于MNLI类文本进行分类的轻量化网络权重参数MNLI_Student;第五步:接收用户输入文本集合C,C={c 1 ,…,c z ,…,c Z },c z ={w 1 z …w o z …w O z },共O个单词,w o z 是第z个样本中的第o个词;学生模型首先判断C属于GLUE八个数据集中的哪一个数据集,然后对C进行加标志预处理,然后使用第四步得到的对应的轻量化预训练语言模型初始化学生模型,并采用初始化后的学生模型对C进行分类,输出分类结果category={cy 1 ,…,cy z ,…,cy Z };具体方法是:5.1对用户输入的文本集合C进行预处理,得到预处理后的文本集合C*,C*={c* 1 ,…,c* z ,…,c* Z },c* j ={w* 1 j …w* o j …w* O j },共O个单词,w* o z 是第z个样本中的第o个词;5.2若用户输入样本的结构属于单个句子类型且需要判断句子是否符合语法规则时使用CoLA_Student初始化学生模型;若用户输入样本的结构属于单个句子类型且需要判断句子表达的情感类型时使用SST-2_Student初始化学生模型;若用户输入样本的结构属于句子对类型且需要判断句子对之间的逻辑关系属于蕴含,还是矛盾时使用RTE_Student初始化学生模型;若用户输入样本的结构属于句子对类型是否等价时使用MRPC_Student初始化学生模型;若用户输入样本的结构属于句子对类型且需要判断句子对之间的相似度时使用STS-B_Student初始化学生模型;若用户输入样本的结构属于句子对类型且需要判断句子对是否匹配时使用QQP_Student初始化学生模型;若用户输入样本的结构属于句子对类型且需要判断句子对之间的逻辑关系属于蕴含,矛盾还是中立时使用MNLI_Student 初始化学生模型;若用户输入样本的结构属于句子对类型且为问题答案对并需要判断问题答案是否匹配时使用QNLI_Student初始化学生模型;初始化方法为步骤3.2.2所述的名称对照赋值法;5.3初始化后的学生模型对C*进行文本分类,输出分类结果category={cy 1 ,…,cy z ,…,cy Z },具体方法如下:5.3.1初始化变量z=1;5.3.2学生模型处理第z个样本c* z ,c* z ={w* 1 z …w* o z …w* O z },方法如下:5.3.2.1学生模型文本嵌入层接收c* z ,输出样本c* z 的文本嵌入向量E(c* z ),E(c* z )={E(w* 1 z ),…,E(w* o z ),…,E(w* O z )},E(w* o z )是一个长度为768维度的向量;5.3.2.2文本特征提取层中的6个transfromer层对E(c* z )进行特征提取,得到由6个文本语义特征组成的集合F(c* z ),F(c* z )={F(c* z ) 1 ,…,F(c* z ) j ,…F(c* z ) 6 },F(c* z ) j 代表第j个transfromer层输出的文本特征,F(c* z ) j 是一个维度为128×768的二维矩阵;5.3.2.3分类层接收F(c* z ),取出F(c* z ) 6 ,对F(c* z ) 6 采用全连接层进行分类,得到c* z 的概率分布结果R(c* z );5.3.2.4根据极大似然原理,判定样本c* z 在R(c* z )中概率值最大处索引对应的类别cy z ,把对应的类别cy z 加入到category中,转5.3.3;5.3.3令z=z+1,若z≤Z,转5.3.2处理下一个用户输入样本;若z>Z,表示所有样本处理结束;得到用户所有输入样本的分类结果值category={cy 1 ,…,cy z ,…,cy Z }。
2.如权利要求1所述的一种基于轻量化预训练语言模型的文本分类方法,其特征在于2.3.1.1所述对CoLA数据集中的训练集、验证集中每个样本加标志的句首加标志方法是:2.3.1.1.1从存储CoLA数据集的训练集样本的文件中读取所有训练集样本,将训练集样本均放到训练集样本集合CoLA_Train中,对CoLA_Train中的每个样本加标志,方法如下:2.3.1.1.1.1使用Python的第三方开源库Numpy获得CoLA_Train中的训练集样本的总数量num1_train,初始化记录已处理训练集样本数量的变量n1_train=1,创建存储处理完成的训练集样本的文件CoLA_Train_Process;2.3.1.1.1.2从CoLA_Train中取出第n1_train个样本,取出样本中的英文句子,在英文句子的句首加上[CLS]的标志,得到一个加上了[CLS]的标志的新句子,将加上了[CLS]的标志的新句子和对应的样本标签写到CoLA_Train_Process中保存;2.3.1.1.1.3令n1_train=n1_train+1,若n1_train≤num1_train,转2.3.1.1.1.2,如果n1_train>num1_train,加标志结束,转2.3.1.1.2;2.3.1.1.2从存储CoLA数据集的验证集样本的文件中读取所有验证集样本,将所有验证集样本均放到验证集样本集合CoLA_Val,对CoLA_Val中的每个样本加标志,具体方法如下:2.3.1.1.2.1使用Python的第三方开源库Numpy获得CoLA_Val中的验证集样本的总数量num1_val,初始化记录已处理验证集样本数量的变量n1_val=1,创建存储处理完成的验证集样本的文件CoLA_Val_Process;2.3.1.1.2.2从CoLA_Val取出第n1_val个样本,取出样本中的英文句子,在句首加上[CLS]的标志得到一个加上了[CLS]的标志的新句子,将加上了[CLS]的标志的新句子和样本标签写到CoLA_Val_Process中保存;2.3.1.1.2.3令n1_val=n1_val+1,若n1_val≤num1_val转2.3.1.1.2.2,如果n1_val>num1_val,加标志结束。
3.如权利要求1所述的一种基于轻量化预训练语言模型的文本分类方法,其特征在于2.3.2.1所述对RTE数据集加标志的句首句尾加标志方法是:2.3.2.1.1从存储RTE数据集的训练集样本的文件中读取所有训练集样本,将所有训练集样本放到训练集样本集合RTE_Train,对RTE_Train中的每个样本加标志,方法是:2.3.2.1.1.1使用Python的第三方开源库Numpy获得RTE_Train中训练集样本的总数量num2_train,初始化记录已处理RTE训练集样本数量的变量n2_train=1,创建存储处理完成的训练集样本的文件RTE_Train_Process;2.3.2.1.1.2取出第n2_train个样本,取出样本中的第一个句子,在句首加上[CLS]的标志,在句尾加上[SEP]的标志,把样本中的第二个句子拼接在[SEP]的后面得到一个新句子,把拼接好的新句子和样本标签写到RTE_Train_Process中保存;2.3.2.1.1.3令n2_train=n2_train+1,若n2_train≤num2_train,转2.3.2.1.1.2继续处理第n2_train个样本,若n2_train>num2_train,加标签结束,转2.3.2.1.2;2.3.2.1.2从存储RTE数据集的验证集样本的文件中读取所有验证集样本,将所有验证集样本放到验证集样本集合RTE_Val,对RTE_Val中的每个样本加标志,具体方法如下:2.3.2.1.2.1使用Python的第三方开源库Numpy获得RTE_Val中验证集样本的总数量num2_val,初始化记录已处理RTE验证集样本数量的变量n2_val=1,创建存储处理完成的验证集样本的文件为RTE_Val_Process;2.3.2.1.2.2取出第n2_val个样本,取出样本中的第一个句子,在句首加上[CLS]的标志,在句尾加上[SEP]的标志,把样本中的第二个句子拼接在[SEP]的后面得到一个新句子,把拼接好的新句子和样本标签写到RTE_Val_Process中保存;2.3.2.1.2.3令n2_val=n2_val+1,若n2_val≤num2_val则转2.3.2.1.2.2继续处理n2_val个样本,若n2_val>num2_val,加标志结束。
4.如权利要求1所述的一种基于轻量化预训练语言模型的文本分类方法,其特征在于3.1所述设置网络训练超参数的方法是:Learning Rate在取值范围{1×10 -5 ,2×10 -5 ,3×10 -5 ,5×10 -5 }中任取一值,Batch Size取值64,Max_Sentence_Length取值128,Seed取值9580;Epoch在取值范围{3,4,8,15}中任取一值。
5.如权利要求1所述的一种基于轻量化预训练语言模型的文本分类方法,其特征在于3.3.1.1.3.1所述教师模型文本嵌入层对s a 进行文本嵌入转换得到s a 的嵌入向量表示E(s a )的方法是:3.3.1.1.3.1.1对样本s a 中的英文句子按照单词之间空格进行分词,得到样本s a 句子分词和样本标签的集合s 1 a ,s 1 a ={w 1 a ,…,w m a ,…,w M a ,l a },s 1 a 由M个单词和一个样本标签l a 共M+1个元素组成,w m a 是s a 的第m个单词,1≤m≤M;3.3.1.1.3.1.2对照Bert-base的词表把s 1 a 中的单词转换成为单词的编号,得到样本s a 单词编号和样本标签的集合s 2 a ={w 1 ^ a ,…,w m ^ a ,…,w M ^ a ,l a },Bert-base的词表共有30522个词汇,按照从1到30522编码,w m ^ a 是一个介于1-30522的整数;3.3.1.1.3.1.3文本嵌入层的三个全连接层依次对s 2 a 中单词的编号进行全连接处理,把单词编号转换成对应的词向量,得到样本s a 的嵌入向量表示E(s a )={E(w 1 a ),…,E(w m a ),…,E(w M a ),l a },E(w m a )是一个长度为768的一维向量。
6.如权利要求1所述的一种基于轻量化预训练语言模型的文本分类方法,其特征在于3.3.1.1.3.2所述文本特征提取层对E(s a )进行文本特征提取,得到F(s a )的方法是:3.3.1.1.3.2.1初始化j=1,令F(s a )={l a };3.3.1.1.3.2.2若j=1,第j层transformer对E(s a )提取文本语义特征,得到F(s a ) 1 ,转3.3.1.1.3.2.3;若j>1,第j层transformer对F(s a ) j-1 提取文本语义特征,得到F(s a ) j ,转3.3.1.1.3.2.3;3.3.1.1.3.2.3若1≤j≤11,将F(s a ) j 加入到F(s a )中,发送F(s a ) j 到第j+1层transformer作为输入,转3.3.1.1.3.2.4;若j=12,将F(s a ) 12 加入到F(s a )中,转3.3.1.1.3.2.4;3.3.1.1.3.2.4令j=j+1,如果j≤12,转3.3.1.1.3.2.2,否则,说明已经提取出所有的文本语义特征,得到F(s a )={F(s a ) 1 ,…,F(s a ) j ,…F(s a ) 12 ,l t }。
7.如权利要求1所述的一种基于轻量化预训练语言模型的文本分类方法,其特征在于3.3.1.1.5.1所述使用第k个样本验证教师模型性能的方法是:3.3.1.1.5.1.1教师模型的文本嵌入层对第k个验证集样本s` k 进行文本嵌入转换s` k ={w` 1 k …w` q k …w` Q k ,l` k },得到样本s` k 的嵌入向量表示E(s` k ),E(s` k )={E(w` 1 k ),…,E(w` q k ),…,E(w` Q k ),l` k },方法如下:3.3.1.1.5.1.1.1对样本s` k 的英文句子按照单词之间空格进行分词,得到样本s` k 句子分词和样本标签的集合s` 1 k ={w` 1 k ,w` q k ,…,w` Q k ,l` k },s` k 和s` 1 k 的区别是s` k 有一个句子,一个样本标签共两个元素,其中Q个单词构成句子作为一个整体属于s` k ,s` 1 k 有Q个单词,一个样本标签共Q+1个元素;3.3.1.1.5.1.1.2对照Bert-base的词表把s` 1 k 中的单词转换成单词的编号,得到s` 1 k 的单词编号和样本标签集合s` 2 k ,s` 2 k ={w` 1 ^ k ,w` q ^ k ,…,w` Q ^ k ,l` k },w` q ^ k 是介于1-30522的整数;3.3.1.1.5.1.1.3教师模型的文本嵌入层的三个全连接层依次对s` 2 k 中单词的编号进行全连接处理,把单词编号转换成对应的词向量,得到s` k 的嵌入向量表示E(s` k ),E(s` k )={E(w` 1 k ),…,E(w` q k ),…,E(w` Q k ),l` k },E(w` q k )是长度为768的一维向量;3.3.1.1.5.1.2教师模型文本特征提取层中的12个transfromer层对E(s` k )进行文本特征提取,得到由12个文本语义特征和样本标签组成的集合F(s` k )={F(s` k ) 1 ,…,F(s` k ) j ,…F(s` k ) 12 ,l` k },F(s` k ) j 代表第j个transfromer层输出的文本特征,方法是:3.3.1.1.5.1.2.1初始化j=1,令F(s` k )={l` k };3.3.1.1.5.1.2.2若j=1,第j层transformer提取E(s` k )的文本语义特征,得到F(s` k ) 1 ,转3.3.1.1.5.1.2.3;若j>1,第j层transformer提取F(s` k ) j-1 的文本语义特征,得到F(s` k ) j ,转3.3.1.1.5.1.2.3;3.3.1.1.5.1.2.3若1≤j≤11,将F(s` k ) j 加入到F(s` k )中,发送F(s` k ) j 到第j+1层transformer作为输入;若j=12,将F(s` k ) 12 加入到F(s` k )中;3.3.1.1.5.1.2.4令j=j+1,如果j≤12,转3.3.1.1.5.1.2.2;否则,说明已经提取出所有的文本语义特征,得到F(s` k )={F(s` k ) 1 ,…,F(s` k ) j ,…F(s` k ) 12 ,l` k },转3.3.1.1.5.1.3;3.3.1.1.5.1.3教师模型分类层从文本特征提取层接收F(s` k ),取出F(s` k ) 12 ,分类层的全连接层对F(s` k ) 12 进行分类,得到s` k 的概率分布结果R(s` k );3.3.1.1.5.1.4教师模型比较R(s` k )中最大值的索引值与l` k 中数字1的索引值是否相同,若相同,表示教师模型对第k个样本s` k 的预测类别与样本标签标注的真实类别一致,令true_num=true_num+1,转3.3.1.1.5.2;若不相同,直接转3.3.1.1.5.2;3.3.1.1.5.2令k=k+1,若k≤K,转3.3.1.1.5.1.1验证下一个样本,若k>K,计算对应数据集任务的准确率acc,acc=true_num/K,结束。
8.如权利要求1所述的一种基于轻量化预训练语言模型的文本分类方法,其特征在于4.1所述设定知识蒸馏所需的超参数的方法是:将超参数蒸馏温度Temperature取值为8,训练轮数Epoch取值为30,超参数α在{0.2,0.3,0.5}中任取一值,β在{5,8,10}中任取一值,γ在{1,2,3}中任取一值Learning Rate在取值范围{1×10 -5 ,2×10 -5 ,3×10 -5 ,5×10 -5 }中任取一值,Batch Size取值64,Max_Sentence_Length取值128,Seed取值9580;Epoch在取值范围{3,4,8,15}中任取一值。
9.如权利要求8所述的一种基于轻量化预训练语言模型的文本分类方法,其特征在于所述α取0.3,β取10,γ取1。
10.如权利要求1所述的一种基于轻量化预训练语言模型的文本分类方法,其特征在于4.2.3.3.1所述教师模型对样本s b 进行文本分类的方法是:4.2.3.3.1.1教师模型文本嵌入层从CoLA_Train_Process中取出s b ,s b ={w 1 b …w i b …w m b ,l b },对s b 进行文本嵌入转换,得到样本s b 的第一嵌入向量表示TE(s b ),TE(s b )={TE(w 1 b ),…,TE(w i b ),…,TE(w m b ),l b },具体方法如下:4.2.3.3.1.1.1对样本s b 中的句子按照单词之间空格进行分词,得到样本s b 句子分词和样本标签的集合s 1 b ={w 1 b ,…,w m b ,…,w M b ,l b };4.2.3.3.1.1.2对照Bert-base的词表把分词后的单词转换成为单词的编号,得到样本s b 句子单词编号和样本标签集合s 2 b ={w 1 ^ b ,…,w m ^ b ,…,w M ^ b ,l b },w m ^ b 是介于1-30522的整数;4.2.3.3.1.1.3教师模型的文本嵌入层的三个全连接层依次对s 2 b 中单词的编号进行全连接处理,把单词编号转换成对应的词向量,得到s b 的教师嵌入向量表示TE(s b ),TE(s b )={TE(w 1 b ),…,TE(w m b ),…,TE(w M b ),l b },TE(w m b )是长度为768的一维向量;4.2.3.3.1.2教师模型的文本特征提取层中的12个transfromer层对TE(s b )进行文本特征提取,得到由12个文本语义特征和样本标签组成的集合TF(s b ),TF(s b )={TF(s b ) 1 ,…,TF(s b ) j ,…TF(s b ) 12 ,l b },TF(s t ) j 代表第j个transfromer层输出的文本特征,具体方法如下:4.2.3.3.1.2.1初始化j=1,令TF(s b )={l b };4.2.3.3.1.2.2若j=1,第j层transformer提取E(s b )的文本语义特征,得到TF(s b ) 1 ,转4.2.3.3.1.2.3,若j>1,第j层transformer提取TF(s b ) j-1 的文本语义特征,得到TF(s b ) j ,转4.2.3.3.1.2.3;4.2.3.3.1.2.3若1≤j≤11,将TF(s b ) j 加入到TF(s b )中,发送TF(s b ) j 到第j+1层transformer作为输入,转4.2.3.3.1.2.4,若j=12,将TF(s b ) 12 加入到TF(s a ),转4.2.3.3.1.2.4;4.2.3.3.1.2.4令j=j+1,如果j≤12,转4.2.3.3.1.2.2,否则,说明已经提取出所有的文本语义特征,得到TF(s b ),TF(s b )={TF(s b ) 1 ,…,TF(s b ) j ,…TF(s b ) 12 ,l b },TF(s b ) j 是维度为128×768的二维矩阵,转4.2.3.3.1.3;4.2.3.3.1.3教师模型的分类层接收TF(s b ),取出TF(s b ) 12 ,采用全连接层对TF(s b ) 12 进行分类得到样本s b 的第一概率分布结果TR(s b )。
11.如权利要求1所述的一种基于轻量化预训练语言模型的文本分类方法,其特征在于4.2.3.3.2所述学生模型对第b个样本s b 进行文本分类的方法是:4.2.3.3.2.1学生模型文本嵌入层接收s b ={w 1 b …w m b …w M b ,l b },对s b 进行文本嵌入转换,输出样本s b 的第二嵌入向量表示SE(s b )={SE(w 1 b ),…,SE(w m b ),…,SE(w M b ),l b },具体方法如下:4.2.3.3.2.1.1对样本s b 中的英文句子按照单词之间空格进行分词,得到样本s b 的句子分词和样本标签集合s 1 b ={w 1 b ,w m b ,…,w M b ,l b },w m b 是一个英文句子按照单词之间的空格分词后得到的单个单词;4.2.3.3.2.1.2将s 1 b 中的单词转换成为单词的编号,得到样本s b 的单词编号和样本标签集合s 2 b ={w 1 ^ b ,w m ^ b ,…,w M ^ b ,l b },w m ^ b 为单词的编号,是介于1-30522的整数;4.2.3.3.2.1.3学生模型的文本嵌入层的三个全连接层依次对s 2 b 中单词的编号进行全连接处理,把单词编号转换成对应的词向量得到s b 的学生嵌入向量表示SE(s b ),SE(s b )={SE(w 1 ^ b ),…,SE(w m ^ b ),…,SE(w M ^ b ),l b },SE(w m ^ b )是一个长度为768的一维向量,转4.2.3.3.2.2;4.2.3.3.2.2学生模型的文本特征提取层中的6个transfromer层对SE(s b )提取文本特征,得到由6个文本语义特征和样本标签组成的集合SF(s b ),SF(s b )={SF(s b ) 1 ,…,SF(s b ) j ,…SF(s b ) 6 ,l b },SF(s b ) j 代表第j个transfromer层输出的文本特征,具体方法如下:4.2.3.3.2.2.1初始化j=1,令SF(s b )={l b };4.2.3.3.2.2.2若j=1,第j层transformer提取SE(s b )的文本语义特征,得到SF(s b ) 1 ,转4.2.3.3.2.2.3;若j>1,第j层transformer提取SF(s b ) j-1 的文本语义特征,得到SF(s b ) j ,转4.2.3.3.2.2.3;4.2.3.3.2.2.3若1≤j≤5将SF(s b ) j 加入到SF(s b )中,发送SF(s b ) j 到第j+1层transformer作为输入,若j=6,将SF(s b ) 12 加入到SF(s b )中;4.2.3.3.2.2.4令j=j+1,如果j≤6,转4.2.3.3.2.2.2,否则,说明已经提取出所有的文本语义特征,得到SF(s b ),SF(s b )={SF(s b ) 1 ,…,SF(s b ) j ,…SF(s b ) 6 ,l b },转4.2.3.3.2.3;4.2.3.3.2.3学生模型的分类层接收SF(s b ),取出SF(s b ) 6 ,分类层的全连接层对SF(s b ) 6 进行分类,得到样本s b 的第二概率分布结果SR(s b ),结束。
12.如权利要求1所述的一种基于轻量化预训练语言模型的文本分类方法,其特征在于4.2.3.3.3所述学生模型计算教师模型和学生模型对s b 的处理结果的差值L的方法是:4.2.3.3.3.1学生模型使用均方误差MSE函数计算TE(s b )和SE(s b )的差值,记为L emd ,L emd =MSE(TE(s b ),SE(s b ));4.2.3.3.3.2学生模型放缩教师模型对样本s b 进行文本分类得到的概率分布结果TR(s b )得到放缩后的概率分布结果TR^(s b ),TR^(s b )=TR(s b )/Temperature,放缩学生模型对样本s b 进行文本分类的第二概率分布结果SR(s b )得到放缩后的第二概率分布结果SR^(s b ),SR^(s b )=SR(s b )/Temperature,并调用softmax函数对TR^(s b )和SR^(s b )进行归一化,得到归一化后的TR^(s b )和SR^(s b ),分别记为TR^(s b )’和SR^(s b )’;使用KL散度函数来衡量处理过后的教师模型和学生模型预测输出的分布距离L logists ,L logists =KL(TR^(s b )’,SR^(s b )’);4.2.3.3.3.3教师模型与学生模型的transformer层对齐,即学生模型的{1,2,3,4,5,6}对应教师模型的{2,4,6,8,10,12},采取的是一对多的方式,具体方法如下:4.2.3.3.3.3.1学生模型的第x层对应教师模型前y层,初始化x=1,L mid =0,L mid 的值是处理同一样本时教师模型前y层文本特征的融合值与学生模型第x层文本特征的差值:4.2.3.3.3.3.2令y=2x;4.2.3.3.3.3.3计算教师模型各层transformer文本特征的权重,学生模型调用softmax函数对[1,…,y]共y个整数进行归一化,得到[P 1 ,…,P y ]共y个权重;4.2.3.3.3.3.4学生模型使用[P 1 ,…P i ,…,P y ]分别与教师模型对应层的文本特征相乘后相加得到TF_y,即 4.2.3.3.3.3.5学生模型使用MSE函数计算TF_y与SF(s b ) x 的差值L mid ,L mid =L mid +MSE(TF_y,SF(s b ) x );4.2.3.3.3.3.6令x=x+1,若x≤6,转4.2.3.3.3.3.2,若x>6,转4.2.3.3.3.4;4.2.3.3.3.4将SR(s b )与表示样本标签的独热编码l b 做交叉熵CE函数,交叉熵结果记为L ce ,即L ce =CE(l b ,SR(s b ));4.2.3.3.3.5计算学生模型的总损失值L,L=(1-α)×L ce +α×L logists +β×L mid +γ×L emd ,结束。
13.如权利要求1所述的一种基于轻量化预训练语言模型的文本分类方法,其特征在于4.2.3.5.1.1所述学生模型的文本嵌入层对第k2个样本s` k2 进行文本嵌入转换,得到s` k2 的嵌入向量表示E(s` k2 )的方法是:4.2.3.5.1.1.1对样本s` k2 中的句子按照单词之间空格进行分词,得到样本s` k2 的句子分词和样本标签集合s` 1 k2 ={w` 1 k2 ,…,w` q k2 ,…,w` Q k2 ,l` k2 } ;4.2.3.5.1.1.2将s` 1 k2 的单词转换成为单词的编号,得到样本s` k2 的句子单词编号和样本标签集合s` 2 k2 ={w` 1 ^ k2 ,…w` q ^ k2 ,…,w` Q ^ k2 ,l` k2 },w` q ^ k2 是介于1-30522的整数;4.2.3.5.1.1.3学生模型的文本嵌入层的三个全连接层依次对s` 2 k2 中单词的编号进行全连接处理,把单词编号转换成对应的词向量得到s` k2 的嵌入向量表示E(s` k2 ),E(s` k2 )={E(w` 1 k2 ),…,E(w` q k2 ),…,E(w` Q k2 ),l` k2 },E(w` q k2 )是长度为768的一维向量结束。
14.如权利要求1所述的一种基于轻量化预训练语言模型的文本分类方法,其特征在于4.2.3.5.1.2所述学生模型的文本特征提取层中的6个transfromer层对E(s` k2 )提取文本特征,得到由6个文本语义特征和样本标签组成的集合F(s` k2 )的方法是:4.2.3.5.1.2.1初始化j=1,令F(s` k2 )={l` k2 };4.2.3.5.1.2.2若j=1,第j层transformer提取E(s` k2 )的文本语义特征,得到F(s` k2 ) j ,转4.2.3.5.1.2.3;若j>1,第j层transformer提取F(s` k2 ) j-1 的文本语义特征,得到F(s` k2 ) j ,转4.2.3.5.1.2.3;4.2.3.5.1.2.3若1≤j≤5将F(s` k2 ) j 加入到F(s` k2 )中,发送F(s` k2 ) j 到第j+1层transformer作为输入,若j=6,将F(s` k2 ) 6 加入到F(s` k2 )中;4.2.3.5.1.2.4令j=j+1,如果j≤6,转4.2.3.5.1.2.2,否则,说明已经提取出所有的文本语义特征,得到F(s` k2 )={F(s` k2 ) 1 ,…,F(s` k2 ) j ,…F(s` k2 ) 6 ,l` k2 },结束。
15.如权利要求1所述的一种基于轻量化预训练语言模型的文本分类方法,其特征在于5.1所述对用户输入的文本集合C进行预处理,得到预处理后的文本集合C*的方法是:5.1.1初始化已处理样本数目cnum=1;5.1.2若用户输入文本集合的样本结构属于单个句子的类型,转5.1.3,若用户输入文本集合的样本结构属于句子对的类型,转5.1.4;5.1.3采用句首加标志方法对文本集合中的第cnum个样本做预处理,5.1.4采用句首句尾加标志方法对文本集合中的第cnum个样本进行预处理;5.1.5令cnum=cnum+1,若cnum≤Z,转5.1.2预处理下一个样本,若cnum>Z,表示处理完毕,得到C*,结束。
16.如权利要求1所述的一种基于轻量化预训练语言模型的文本分类方法,其特征在于5.3.2.1所述学生模型文本嵌入层接收c* z ,输出样本c* z 的文本嵌入向量E(c* z )的方法是:5.3.2.1.1对样本c* z 按照单词之间空格进行分词,得到分词集合c* 1 z ={w* 1 z ,…w* o z ,…,w* O z };5.3.2.1.2对照Bert-base的词表把c* 1 z 中的单词转换成为单词的编号,得到单词编号集合c*^ z ,c*^ z ={w*^ 1 z ,…w*^ o z ,…,w*^ O z },w*^ o z 是一个介于1-30522的整数;5.3.2.1.3依次使用文本嵌入层的全连接层把c*^ z 中单词的编号转换成对应的词向量,得到c* z 的词向量集合E(c* z ),E(c* z )={E(w* 1 z ),…,E(w* o z ),…,E(w* O z )},E(w* o z )是一个长度为768维度的向量结束。
17.如权利要求1所述的一种基于轻量化预训练语言模型的文本分类方法,其特征在于5.3.2.2所述文本特征提取层中的6个transfromer层对E(c* z )进行特征提取,得到由6个文本语义特征组成的集合F(c* z )的方法是:5.3.2.2.1初始化j=1;5.3.2.2.2若j=1,第j层transformer提取E(c* z )文本语义特征,得到F(c* z ) 1 ,转5.3.2.2.3;若j>1,第j层transformer接收F(c* z ) j-1 计算文本语义特征,得到F(c* z ) j ,转5.3.2.2.3;5.3.2.2.3若1≤j≤5,将F(c* z ) j 加入到F(c* z )中,发送F(c* z ) j 到第j+1层transformer作为输入,转5.3.2.2.2;若j=6,将F(c* z ) 6 加入到F(c* z )中,转5.3.2.2.4;5.3.2.2.4令j=j+1,如果j≤6,转5.3.2.2.2,否则,说明已经计算出所有的文本语义特征,得到F(c* z ),F(c* z )={F(c* z ) 1 ,…,F(c* z ) j ,…F(c* z ) 6 },结束。



