基于BERT知识蒸馏的情感分析模型

发布日期:2023年10月24日
基于BERT知识蒸馏的情感分析模型 基于BERT知识蒸馏的情感分析模型

本内容试读结束

下载后可阅读完整内容,立即下载

目前,BERT预训练语言模型在文本分析领域得到普遍应用,在情感分析任务上更是取得了SOTA级别的表现,但是在边缘设上部署BERT模型仍具有挑战性。而一般用于解决情感分析的传统的机器学习模型(SVM,NB和LR)较易部署,但精度不如BERT模型。本文旨在实现对两种不同方法的优势进行融合,训练出一个精度高且易部署的模型并用于解决情感分析任务。先前的工作大多是将BERT模型蒸馏进一个浅层的神经网络结构,这种方法能够减少BERT模型的参数,但依然保留了上百万的参数,难以在边缘设备上部署。本文提出将已经训练好的BERT模型设定为教师模型,将传统机器学习模型(SVM,NB和LR)设定为学生模型,并在输出层面完成知识转移。训练学生模型使用教师模输出的软标签和logits,并证明了学生模型在软标签上进行训练可以简化学生模型的学习过程,同时强调了从教师模型获得的所有文本特征之间的关系是平等的,并用蒸馏后的学生模型在IMDB数据集上进行验证。实验结果表明,蒸馏了BERT预训练语言模型知识的传统机器学习模型在测试数据上的性能得到明显提升,相比较于基线模型精度都提高了1%以上,且参数量维持在BERT模型的1/10水平。

在现代自然语言处理(NLP)领域,大型预训练语言模型被得到广泛应用,例如源自Transformer 架构的BERT 和GPT-2 等双向预训练语言模型, 尤其是文本分类任务。

然而, 这些大型预训练模型的计算成本相当高, 使得它们难以在运行时得以有效应用。

以BERT 模型为例, 它包含着3.44 亿个参数和24 个Transformer层[1]。然而这些庞大的模型参数导致它们无法轻松部署在边缘设备上,目前可部署模型的精度又不如大型预训练语言模型。为了解决这个问题,已经提出了多种压缩方法,包括蒸馏、量化和权值修剪等技术[2]。

蒸馏方法是当前备受研究人员关注的一种主动模型压缩方法, 用以应对模型体积庞大、推理计算时间过长等问题[3]。知识蒸馏最早是由[4]提出的,该方法有助于弥合了大型模型和轻量级模型在可学习性和表达能力之间的差距, 其主要思路是通过训练一个小型、轻量级的机器学习或深度学习模型, 该模型借鉴了从一个较大、高权重的已经训练好的模型中提取的额外知识, 从而弥合教师模型和学生模型之间的精度差距, 模型结构图如下图1 所示。

本文的目标是通过将与BERT 预训练语言模型的知识提取到这些机器学习模型中, 用来提升这些易部署模型的精度。利用蒸馏方法来增强支持向量机(Support Vector Machine, SVM)、朴素贝叶斯(Naive Bayes, NB)和逻辑回归(Logistic Regression, LR)等轻量级可部署模型在基准电影评论数据集上进行情感分析任务的性能。最后,我们将在准确率方面对这些机器模型性能进行比较。

2. 相关工作 根据特定任务对BERT 预训练模型进行微调,以在特定的自然语言任务中使用,会得到精度更高的表现[1]。下图2 显示我们可以对BERT 进行微调,以用于问题回答(Question Answering, QS)、命名实体识别(Name Entity Recognition, NER)和分类任务等[5]。



相关标签