版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
面向煤矿文本的分类方法实验探究目录TOC\o"1-3"\h\u23405面向煤矿文本的分类方法综述 [106]0.6980.7910.791BiGRU+CNN0.6740.7670.744CNN+TFIDF0.6280.7670.791FMBT0.6740.7910.837从上图中可以看出整体上CNN的效果是不如可以提取时序特征的LSTM、GRU和BiGRU的。在三种特征输入情况下,LSTM和GRU处理文本特征的最终效果比CNN提高了2到3个百分点,BiGRU的效果相比CNN的效果约提升了7个百分点。在随机初始化词向量时,BiGRU+CNN的准确率达到了0.674,FMBT的准确率也达到了0.674,然而BiGRU本身的效果是0.698,可以看到BiGRU和CNN以及BiGRU和TFIDF特征融合后的结果反倒不如融合前单个BiGRU模型的结果。深度学习中,参数量较大,一般需要很多的样本才能充分地训练模型参数,使其提出较为通用的特征。而在我们的小数据集上,数据量不足,一方面模型很容易过拟合;另一方面随机初始的参数随机性较强,很难稳定收敛到我们的数据对应的参数最优分布上,尤其是特征融合后,参数量增大,更加难以训练,而且增加了随机性,导致最终特征融合的结果不如单个BiGRU效果好。LSTM和GRU两种文本特征处理方式差不多,都可以提取序列特征,这两种方法对词序输入的顺序非常严格,可以提取文本中的序列语义。而GRU参数更少,虽然可以达到和LSTM相当的效果,当数据量充足时,LSTM上限是更高的,而GRU是收敛更快的,然而在我们的小数据集上,由于样本较少,LSTM和GRU的效果孰优孰劣并不能百分百确定,从实验结果上看,LSTM和GRU的效果相差不大,使用预训练初始化词向量时,二者的分类准确率均在74%和76%左右。而BiGRU对文本序列中的每一个词,分别从顺序和反序进行建模,不仅有正向词序还有反向词序的区分,文本中的词相对单向建模来说,可以获得更完整的上下文建模。在实验结果中,BiGRU比GRU和LSTM两种处理方式效果更优。使用Word2vec和BERT模型预训练的词向量时,BiGRU可以比LSTM和GRU中更优者表现更好,大概高了3个百分点。实际上,BiGRU虽然可以更好地建模文本序列,但也无形增加了一定的参数量,且在我们的煤矿小数据集上,模型的差异有时会被调参效果覆盖掉,因此也可能会出现BiGRU处理文本时,其效果和GRU或者LSTM处理的效果相当甚至不如后两者的情况。从特征融合的结果来看,使用预训练词向量时,CNN+TFIDF特征融合及FMBT特征融合的结果相比融合前均得到了不同程度的提升。使用预训练词向量时,CNN+TFIDF比单个CNN特征处理和TFIDF特征处理分别提升了约7和2个百分点。当使用BERT预训练的词向量时,BiGRU和TFIDF特征融合的效果最好,分类准确率达到了83.7%,相比BiGRU的分类准确率79.1%和TFIDF的74.4%,分别提升了约5和7个百分点,这和之前的分析一致。而BiGRU+CNN的分类准确率,相比BiGRU处理的分类准确率有所下降,比CNN处理特征的分类结果有所上升,这可能和参数量有关,接下来分析下不同模型参数量。表4-4不同模型除Embedding层外对应参数量TFIDFCNNLSTMGRUBiGRUBiGRU+CNNCNN+TFIDFFMBT参数量12355794351031077747520563528500391723217923准确率0.7440.7210.7670.7440.7910.7440.7910.837表4-4是使用BERT模型预训练词向量时,不同模型的参数量(不计算公共的Embedding输入)。第一行是不同模型名称,第二行是使用BERT模型预训练的词向量初始化Embedding时,不同模型对应的参数量,第三行是不同模型在此情况下的准确率。除去Embedding层参数外不同模型的参数量,是由于Embedding层参数大小对不同模型都是相同的,因此不把这部分纳入计算范围。如上表4-3所示,BiGRU+CNN的参数量最多,达到了285003个,是所有模型中参数最多的。而参数量较大会导致模型过拟合的问题,当模型参数较大时,而数据很少,随着迭代次数增加,模型很容易记住训练集所有数据,泛化性能很差,很难发挥特征融合的优势,容易造成过拟合,因此BiGRU+CNN的组合结果不理性也是合理的。实际上,在CNN模型的调参过程中,采用小卷积核,会造成卷积结果量级很大,全连接层参数会非常大;而采用如本实验中的大卷积核,对局部语义的处理就不够精细,而时序特征的处理上又没什么能力,因此在本数据集上整体效果不如LSTM等具有记忆性的模型。图4-9不同模型在训练集上损失函数图4-10不同模型在测试集上损失函数图4-9和图4-10,是在使用BERT模型预训练的词向量的情况下,八种不同模型随着训练迭代次数的增加,在训练集上和测试集上交叉熵损失的变化曲线。我们可以发现,训练集上损失函数最后都趋于0,模型大概在70轮的时候开始收敛。而在测试集上,损失函数基本先是下降,然后稍微平缓一下,再过了一定迭代次数之后,就开始上升。显然,模型出现了过拟合的现象,由于数据集过少,当训练次数较多时,模型更为精准地模拟了训练集的数据,甚至可能将训练集数据全部记下来,然而此时再去预测测试集数据,偏差就会增大,产生过拟合现象。图中显示,CNN处理特征的模型训练集最先收敛,其在测试集上的效果也很快达到最优,并且最优时测试集上的损失仍然较高,约为0.73,说明CNN训练的模型预测偏差较大。在损失最低点微微震荡几次后,损失开始上升,测试集出现了过拟合的情况,加上之前CNN模型的效果较差,我们可以得出结论,在我们的数据集上,不适合主使用CNN处理特征。FMBT的组合在训练集损失较低的同时,可以将测试集上的损失降到一个很低的点,约为0.55,在我们的数据集上有最优的表现。而LSTM和GRU模型都是提取序列特征,GRU可以看成LSTM的简化版,之前实验结果中两者处理特征情况下准确率差不多,而图4-10说明两者在训练集上几乎同时收敛,在测试集上可以将损失降低到一个差不多的最低值,且降到最后损失的轮数也很相近。图4-11三种Embedding初始化方法下FMBT模型的分类准确率图4-12三种Embedding初始化方法下FMBT模型的损失图4-11和图4-12展示了使用三种不同Embedding初始化方法时,FMBT模型在训练集上和测试集上的准确率指标及交叉熵损失。训练集上损失显示,使用随机初始化Embedding和使用Word2vec预训练词向量初始化Embedding时,大概是由于随机初始化和Word2vec预训练的词向量维度都是300维,而BERT预训练参数是768维,因此前两者收敛较快。然而图4-12显示,使用BERT预训练词向量时,测试集上损失可以降到最低;图4-11显示使用BERT预训练向量进行微调时Embdding时,在训练集上和其他方式没有太大区别,而在测试集上的分类准确率可以达到最优,这也进一步证明了我们模型在当前数据集上的优越性。表4-5BiGRU隐藏层维度与FMBT模型分类准确率关系维度准确率维度准确率40.744720.79180.767840.767160.814960.791320.8371280.767640.8372560.744为了测试BiGRU隐藏层维度对FMBT模型结果影响,使用不同隐藏层维度,固定其他参数,测试模型在测试集上的准确率实验中使用BERT模型预训练词向量初始化Embedding层,固定学习率为0.001,全连接层为单隐藏层,全连接隐藏层维度为16,实验结果如表4-5所示。对一个深度学习模型来说,参数量调小一般可以增强模型的泛化能力,但是模型拟合能力的上限有所降低;调大参数量可以增强模型的拟合能力,但是容易过拟合。实验结果显示,当BiGRU隐藏层维度较低时,模型在测试集上表现较差,准确率相对最优结果较低;随着BiGRU隐藏层维度调大,模型在测试集上的准确率先上升而后有所下降,整个调节过程中,最高准确率和最低准确率差了9.3个百分点。由此可见,BiGRU隐藏层参数大小对实验结果有很大影响。为了测试学习率对FMBT模型结果影响,使用不同学习率,固定其他参数,测试模型在测试集上的准确率。实验中使用BERT模型预训练词向量初始化Embedding层,BiGRU隐藏层维度为32,全连接层为单隐藏层,全连接隐藏层维度为16,实验结果如表4-6所示。表4-6不同学习率下FMBT模型在测试集上准确率学习率准确率学习率准确率0.000030.5350.0030.7910.000100.7670.010.7440.000300.8140.030.7210.001000.8370.10.674其他参数固定的情况下,当学习率为0.001时效果最好。实验中当学习率为0.00003时,准确率最高为0.535,学习率为0.1时,测试集上准确率为0.674。学习率为0.00003、学习率为0.001和学习率为0.01时,模型FMBT在训练集和训练集上的损失函数变化如图4-12和4-13所示。图4-13不同学习率下训练集损失随迭代次数变化图4-14不同学习率下测试集损失随迭代次数变化当学习率较低时,参数更新步长较小,容易陷入局部最优,即使没陷入局部最优,参数更新也非常慢。从图4-13和图4-14得知,学习率为0.00003时,训练集损失下降很慢,模型收敛非常慢,而测试集损失基本没有变化。而当学习率较大时,参数更新步伐大,梯度更新不够稳定,有可能在最优值附近波动,不容易收敛到最优值。图4-13和图4-14显示,当学习率为0.1时,训练集上损失降低到一定程度很难再下降,很明显模型参数没有收敛到最优参数分布,而测试集上的损失非常高,显然模型收敛到了局部最优值并且过拟合。由此可见,学习率对模型的预测能力有着至关重要的作用。基于双层自注意力机制的煤矿文本分类双层自注意力模型介绍 FMBT模型使用了BiGRU改进了BCNN模型中的CNN模块,并且融入了TFIDF特征,大大改善了BCNN模型的效果。然而FMBT模型有几个缺点。首先,为了训练出更好的模型并加速模型的训练,训练过程一般采用批训练。而这就要求文本的输入维度是个定值。然而煤矿监察数据的文本长度大小不一,只能人工确定输入维度,如果新有的文本长度比模型规定的输入长度更长,会带来麻烦。如果强行截断分词后的文本可能会损失关键信息,而不截断的文本将无法输入到模型中进行预测。因此,FMBT无法处理变长文本。第二个缺点是,当前训练集较少,当预测集中出现训练集中没有的词组时,模型在预测时无法使用这部分词组,有可能会丢失关键的文本信息。第一和第二个缺点的存在使得FMBT模型缺乏一定的适用性,无法处理一些变长的新样本。第三个缺点是,FMBT模型的BiGRU模块,每一个时间步的计算都依赖于前一个时间步的计算结果,因此无论是在训练还是在测试过程中,模型的每轮迭代都需要严格按照时间步串行运算,不能并行运算,时间步的长度决定着模型运算的速度。这就导致FMBT模型的训练很慢,而且它的预测速度也相对较慢。当使用GPU服务器训练时,并不能进行很好的加速,对GPU资源造成了一定程度上的浪费。第四个缺点是,FMBT模型需要先对数据进行处理,提取出TFIDF特征,然后再结合BiGRU模块进行训练和预测,过程较为麻烦。第五个缺点是,FMBT的BiGRU的每个时间步的特征,对预测结果来说贡献并不相同,而FMBT中直接采取求和的方式来处理,显然不太妥当。TFIDF算出的每个词的权重可以一定程度上缓解FMBT的第五个缺点,然而TFIDF的权重值是定值,实际分类任务中每个词在不同句子的贡献未必一样。因此,本节提出两阶段自注意力煤矿文本分类模型,并尝试避免这几个缺陷。首先,针对第一和第二个缺点,修改模型的输入,直接使用BERT预训练模型获取每个属性的属性向量。因为虽然文本长度可以变,但属性个数是固定的。改善第一和第二个缺点改变了文本的输入方式,已经无法在词层级着手改进后三个个缺点。但考虑到但为了避免同样的缺陷,也需要对模型再做一些改进。考虑到FMBT的第三个缺点,使用可以并行计算的自注意力机制对属性进行全局文本信息建模,代替BiGRU机制。考虑到FMBT的第四和第五个缺点,可以对自注意力机制编码后的词向量使用注意力函数从而衡量每个属性在分类任务中的贡献。这样即使属性的输入相同,在不同的句子的分类任务中也可以自动调节贡献权重,从而避免了FMBT的第四个缺陷。而每个属性都要用注意力函数计算权重值,从而避免了FMBT的第五个缺陷。……自注意力机制…自注意力机制aa…aa全连接网络Softmax输出各属性文本BERT预训练模型属性1属性2属性i属性k………各属性Embedding图4-15双层自注意力煤矿文本分类模型BBAM本文提出的BBAM(Bert-basedBilayerAttentionModel)模型如图4-15所示。这里的Embedding输入和模型BCNN以及FMBT的Embedding输入不一样。前两个模型都是先将文本分词后得到词语序列,然后根据词语的id映射得到id序列,根据id去Embedding矩阵中查找对应的Embedding,得到输入矩阵,输入矩阵大小由文本id序列最长的长度和词向量的维度决定。而这里直接将文本按不同属性进行输入,避免了分词的操作。由于BCNN模型和FMBT模型中,Word2vec预训练词向量表现较差,因此这部分实验不再使用Word2vec模型得到的预训练词向量;同时在BCNN和FMBT模型的实验结果中,使用BERT预训练词向量比Word2vec词向量的表现更好。因此BBAM模型使用BERT预训练词向量。使用BERT预训练模型获取每个属性的Embedding输入后,首先使用自注意力机制提取语义表征,第一层自注意力机制主要是为了给每个属性的向量进行编码,从而提取更加丰富的语义表征。FMBT模型的BiGRU模块可以对每个词进行完整的上下文建模,然而我们的数据严格来说并不是一条完整的句子,序列建模存在一定的问题,而且BiGRU模块不能并行计算。而使用自注意力机制则可以解决这些问题,为了简化模型,使用自注意力机制的常见做法是先对输入X进行线性映射生成请求信息、关键字信息和强化语义向量。这里并没有使用强化后的词向量进行加权,而是直接使用了Embedding输入X,因此这里自注意力机制为: V=Attention(Q,K,X)=softmax( Q=XWQ K=XWK其中Q∈Rl×dk,K∈Rl×dk,X∈Rl×dx,WQ∈Rdx×dk,WK∈Rdx×dk,V∈Rl×dxFMBT模型加入了TFIDF特征,来表示每个词的重要性信息,实际上,每个词对最终分类结果的影响,在不同句子中是不一样的。类似地,每个属性贡献也不相同,这里引入一层注意力机制来计算每个属性对最终分类任务的贡献。设属性个数l,第i个属性对应的权重为ai S=i=1l其中ai ai=softmax(σ bi=ui ui=其中u∈Rdx×1实际上有很多其他方式可以计算出bi bi=其中Wu∈Rdx×dx,这种方式和第一层的自注意力较为类似,不同的是这里的 bi=其中h∈Rdh×1,Wv∈Rdh实验结果及分析在两个实验环境上,对传统方法中表现较好的逻辑回归模型,及本文使用的三个模型,在煤矿数据集上进行实验,并比较它们的分类结果。并评测模型在第一个CPU实验环境和第二个GPU实验环境下,对测试集进行分类时模型所需要的运行时间。BBAM模型是直接对属性层次的语义向量处理,这一点和前面的BCNN和FMBT等模型不同。为了更好地对比BBAM模型和其他模型的分类结果,本次实验中除了FMBT的TFIDF特征仍然是对词向量进行加权,其他各模型统一对属性层语义进行处理。逻辑回归模型对各属性语义向量加和后的向量进行分类,BCNN和FMBT中的BiGRU模块则直接对各属性向量进行处理。结果如表4-7所示。表4-7对属性层语义处理时,两种实验环境下模型的预测时间和准确率对比CPU环境准确率GPU环境准确率CPU环境预测时间GPU环境预测时间LR0.6740.6740.2810.048BCNN0.7210.7210.5780.362FMBT0.8140.8140.6720.520BBAM0.8370.8370.4840.237如表4-7所示,当对属性级语义进行处理时,BBAM模型比FMBT模型获得更好的结果,这证明了BBAM相比FMBT在当前数据集上的优越性。联合表4-7和表4-3的结果可以发现,FMBT处理属性级向量的分类结果为0.814,不如处理单词级词向量的结果0.837。而BBAM模型可以和FMBT模型处理单词词向量时达到相同的效果,这和前面的分析一致,虽然BBAM模型比FMBT模型更优异,但属性级预训练向量丢失了很多语义信息,所以两个模型最终的分类结果是差不多的,测试集上的准确率都为0.837。为了比较不同模型的预测时间,在设备一和设备二上分别加载训练好的模型,然后预测测试集上的分类结果,表4-7中的时间记录的是不同模型预测测试集所有数据的总时间。可以看到,在CPU开发环境和GPU开发环境下,速度最快的是逻辑回归模型,预测43条测试数据的时间总和分别为0.281s和0.048s,速度非常快。从4.1节的实验中可以得知逻辑回归在几个传统机器学习分类方法中表现也是最好的。逻辑回归模型简单高效,因此在对煤矿文本进行分类时,可以首先使用逻辑回归模型搭建起整个架构,后续再考虑使用深度学习模型进行改进。几个模型在使用GPU加速后,预测效率得到了不同程度的提升。之前分析过,FMBT模型由于BiGRU模块是串联序列,必须按照时间步从前到后计算,不能使用并行计算进行加速整个BiGRU模块。表4-7中的结果显示,使用GPU加速后,预测时间由原来的0.672s减小为0.520s,时间缩短了23%左右。而BBAM的预测时间则减小了一半多,由0.484s减小为0.237s,这与前文的分析一致,BBAM模型中的注意力单元模块的计算,可以使用GPU进行加速,因此使用GPU开发环境后,模型的预测时间大大减小,整个BBAM模型的运算,无论是注意力模块还是全连接层模块,都是可以并行运算的,这也是BBAM模型在GPU开发环境下的优越之处。因此,BBAM模型可以达到不比FMBT模型差的效果,并且可以比FMBT模型更快地运算。表4-8第二层注意力模块使用不同方法时BBAM分类结果对比激活函数bbbSigmoid83.7281.4081.40Tanh83.7276.7483.72Relu79.0781.4079.07None83.7279.0776.74由于数据集较少,不需要过于复杂的注意力模型,因此本文使用式5-3、5-4、5-5和5-6所示的简单注意力模型来作为第二层的注意力机制。表4-8显示了在第二层注意力模块中使用几种常见注意力机制时的效果。从列上的结果看,使用式5-3中的简单计算方法bi=u从第二列上的结果看,在使用bi=u表4-9仅使用第二层注意力机制时BBAM在测试集上的分类结果激活函数bbSigmoid0.8140.791Tanh0.7910.791Relu0.7670.767None0.7670.744为了验证第一层注意力单元对语义建模的有
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 问答形式的考试题及答案
- 红旗车驾驶考试题及答案
- 2,4-二氯苯酚生产项目可行性研究报告
- 100mw光伏发电项目可行性研究报告
- 建筑后浇带施工工艺及养护时间管控标准
- 卷闸门施工方案(完-整版)
- 青少年机器人创意挑战赛长期备赛方案
- 某织布厂质量控制管理制度
- 搅拌站铲车司机安全考试试题及答案
- 降糖药相关知识试题及答案
- 沪粤版物理八年级上册全册教案
- 小学安全教育校本课程教材
- 《方帽子店》教案(2课时)-2026-2027学年统编版(新教材)小学语文四年级上册
- SOE-MT-NOTE 三大运营商招聘考试核心考点笔记:通信原理与移动通信技术
- (2026年)河北省石家庄市检察院书记员考试题(附答案)
- 商业物业管理及运营合同
- 乡村路面养护方案
- GB/T 47335.2-2026中医药诊断词汇第2部分:脉象
- 2026浙江宁波市自然资源和规划大数据中心招聘编制外工作人员1人笔试参考题库及答案解析
- 中考物理总复习《浮力与压强》专项测试卷及答案
- 五年(2021-2025)中考数学真题分类汇编(重庆专用)05:圆(教师版)
评论
0/150
提交评论