system: [SYSTEM]

user: 2. 相关研究 2.1. 语言模型 在自然语言处理任务中，最关键的一环是对字词的表示，计算机不能像人一样理解每个字词代表的含义，则需要用计算机能够识别的方式表示字词，即词向量。在语言模型还未被提出之前，主要以one-hot作为词向量，每个词向量都是词典长度大小的向量，向量中对应词的位置用1表示，其余位置用0表示。这种方式可以表示对应词典中的每个词语，但存在高维度和向量稀疏的问题。随后语言模型被提出用于训练出更加低维精准的词语表示，如word2vec [ 4 ] 通过CBOW (Continuous Bag Of Words)和Skip-gram语言模型利用上下文预测中心词和中心词预测上下文作为训练目的进行无监督训练，得到固定长度的词向量可以表示词语间的关系，含义越相近的词语在向量空间中的距离也越近，且具有比较低的维度。类似word2vec这种低维词向量的还有Global Vectors [ 5 ] (GloVe)。虽然通过这种语言模型可以得到低维向量，但是依然存在词语在不同的文本环境下有相同的词向量表示的问题。 不同于传统词向量，ELMO [ 6 ] (Embedding from Language Models)语言模型利用双向长短期记忆网络 [ 7 ] (Bi-Directional Long Short-Term Memory， BiLSTM)在大规模语料中学习词语的含义，在特定语料中微调可以使词向量适应不同语境中的词语表示，做到了动态表示词语。但是由于循环神经网络 [ 8 ] (Recurrent Neural Network， RNN)在模型训练时存在难以并行化的问题，导致模型在大规模语料中训练非常的耗时。GPT [ 9 ] 利用基于自注意力机制的单向Transformer [ 10 ] 编码器捕捉语义特征，并行能力和特征捕捉能力优于ELMO，大大提升了训练速度，但是其单向模型忽略了上下文信息。BERT [ 11 ] (Bidirectional Encoder Representation from Transformers)考虑到句子的时序性，构建基于多层双向Transformer编码器的语言模型，在更大规模的数据中更加全面的学习句子中的语义信息和上下文信息，对词语的表示更加精确。目前，语言模型在大规模语料中预训练，特定语料下微调的方法被广泛应用于自然语言处理任务中，其效果突破了基于传统词向量的模型。 2.2. 基于传统词向量的模型 在模型结构方面，早期的机器学习方法通常需要人工构建大量特征工程，且分类效果一般。随着神经网络理论和应用的不断发展，各种神经网络模型不断涌现出来，深度学习模型在情感分析任务中展现了其强大的性能。 Kim [ 12 ] 最早使用卷积神经网络(Convolutional Neural Networks， CNN)来对句子进行情感分类，并且对多种CNN变体进行了实验，如随机初始化词嵌入的CNN-rand，使用固定的预训练词嵌入的CNN-static，预训练和微调词嵌入的CNN-non-static和多通道的CNN-multichannel。Huang [ 13 ] 等人将方面信息加入到CNN模型中用于情感分类，监督模型捕捉不同方面的情感信息。随后针对CNN难捕捉长距离特征的缺点，Tang [ 14 ] 等人提出了基于长短期记忆网络(Long Short-Term Memory， LSTM)的目标依赖LSTM (TD-LSTM)和目标连接LSTM (TC-LSTM)方法，该方法通过考虑方面信息来扩展LSTM。他们将给定的目标视为特征并将其与上下文特征相联系，以进行方面情感分类。虽然LSTM具有建模方面和上下文关系的能力，但始终存在难并行化的诟病。随着注意力机制逐渐被应用到自然语言处理任务中，Wang [ 15 ] 等人提出一种基于注意力机制的目标嵌入LSTM方法，这被证明是一种有效的强制神经模型处理句子相关部分的方法。注意力机制用于强制模型关注句子的重要部分，使模型具备了响应特定方面情感的能力。Yang [ 16 ] 等人考虑到句子的时序性，也提出了两种基于注意力机制的双向LSTM以提高分类性能。Liu和Zhang [ 17 ] 通过区分给定目标或者方面的左语境和右语境获得的注意来扩展注意力建模，通过增加多个门进一步控制了注意力的作用。Tang [ 18 ] 等人引入了端到端的记忆网络，用于方面级别的情感分类，该机制采用了带有外部记忆的注意力机制，以捕获每个上下文词相对于给定目标方面的重要性。 2.3. BERT BERT [ 11 ] 是一种由双向Transformer编码器组成的新型预训练语言模型，Transformer模型最早用于机器翻译，由于其编码器独特的多头自注意力机制，使其拥有优异的特征捕捉能力，编码器结构如图1所示。 图1. Transformer编码器 Transformer编码器主要由自注意力层、残差连接和归一化层以及前馈神经网络层组成，核心部分为其多头注意力模块，注意力机制可以计算出当前词语对句中其他词汇的关注程度和内部联系，通过将输入向量与对应的权重矩阵相乘得到查询向量(Q)、键向量(K)和值向量(V)，并通过式1计算出注意力结果，通过式2和式3拼接计算多头注意力的结果。 Attention ( Q ， K ， V ) = softmax ( Q K T d k ) V (1) h e a d i = Attention ( Q W i Q ， K W i K ， V W i V ) (2) MultiHead ( Q ， K ， V ) = Concat ( h e a d 1 ， h e a d 2 ， ⋯ ， h e a d h ) W O (3) 残差连接可以改善模型梯度消失问题并增强模型的泛化能力，再通过归一化来加快模型的收敛速度。Transformer模型结合了CNN和RNN的优点，使其在可并行计算的同时也可以很好地提取特征。 BERT通过构建多层双向Transformer编码器，在GPT和ELMO的基础上，结合两者的优点，其Transformer编码器使其拥有优异的特征捕捉能力，双向模型结构使其可以充分获取上下文信息，模型结构如图2所示。同时，BERT创新地构建了掩码语言模型(MLM， Masked Language Model)和下一句预测(NSP， Next Sentence Predict)两个无监督任务，MLM任务类似于英文中的完形填空任务，通过上下文信息去预测被遮蔽的单词，NSP任务则是通过句子对分类任务判断前后两个句子是否连续。BERT首先在大规模语料上无监督训练，预先学习好字符级、词级和句子级特征，然后在下游任务中进行微调。在模型输入输出方面，输入Ei为词向量(Token Embeddings)、分段向量(Segment Embeddings)和位置向量(Position Embeddings)相加得到的向量，每经过一层Transformer编码器都会输出对应的特征Ti，每个输出特征都包含了对每个输入的注意力信息。[SEP]为句子结束标记，特殊标记[CLS]关注了整个句子的信息，也被称为句向量，常被用于句子级别的分类。 图2. BERT语言模型结构 2.4. 基于BERT的模型 BERT预训练语言模型在大规模语料中学习和理解语义的能力优于传统词向量，解决了传统词向量静态向量的问题，对词语的表示更加精确。Song [ 19 ] 等人提出了一种避免重复的注意力编码网络(AEN)，该网络采用基于注意力的编码来建立上下文和目标之间的模型，提出了标签不可靠性问题，引入了标签平滑正则化，并对比了以传统词向量为输入(AEN-GloVe)和以BERT生成的词向量为输入(AEN-BERT)的模型效果，后者效果高于前者。其次，Song [ 19 ] 通过将方面术语作为第二个句子，将原句和方面术语构造为BERT句子对分类任务，然后进行微调。Sun [ 20 ] 等人在BERT的基础上通过为原始句子构建围绕方面术语的多种类型的辅助句子将方面级情感分析转化为句子对分类问题。Gao [ 21 ] 等人认为简单的交换BERT的词表示并不能提高现有模型的效果，然后通过一些简单的微调策略，首先直接对BERT输出的方面特征进行分类，然后将BERT输出中对应方面位置的信息与分类输出结合并且构造辅助句子用于分类。虽然BERT逐渐被用于方面级情感分析中，但是几乎都只利用了最后一层输出特征，忽略了其他层的输出特征，造成了一部分语义信息的损失。