Merging Statistical Feature via Adaptive Gate for Improved Text Classification
来自期刊AAAI 2021年的
文章信息如下图所示(作者…)
和之前的论文阅读专栏一样,只对部分进行翻译、截取、笔记。
工作概括:
提出了一个AGN网络来用选择性的统计特征来加强语义代表。
【原文:In this paper, we propose an Adaptive Gate Network (AGN) to consolidate semantic representation with statistical features selectively.】
原因:
在文本分类中,深度学习忽略了词频、分布等基本的原有的特征。这些特征是语料库中固有的且易于检索的。
以前的不足:
TF-IDF作为经典的词频检索算法,存在无法利用位置信息和捕获细粒度语义(Ramos et al. 2003)的问题,这使得它与深度体系结构中的其他表示学习方法相比不那么有利。
本文的发现:
从我们的初步研究中,我们发现使用统计特征(如在3.1节中定义的标签的词数)作为一个附加特征,可以对各种基线产生实质性的改进,其中词频通过注意层适应术语的权重。
遗憾的是,早期的研究可能低估了语料库级统计特征在深度学习中的实际作用,需要新的融合机制来融合这些信息。特别是在设计融合机制时,我们必须考虑两个主要问题:
模型的具体组成概括:
在本文中,我们提出了一个新的框架,自适应门网络(AGN),通过门机制融合统计特征来增强神经(网络?)分类。(enhance neural classification)
更具体地说,AGN由三个部分组成,
一个变分编码网络 (a variational encoding network)称为V-Net,
一个语义表示投影网络(a semantic representation projection network) 称为S-Net,
一个自适应门机制(an adaptive gate mechanism) 称为阀(valve)。
V-Net利用无监督自动编码器来学习每个统计特征向量的全局表示。
S-Net通过使用一种最常用的提取器,即CNN、RNN、Transformer或Bert,从文本输入中提取潜在的语义表示。此外,S-Net通过sigmoid激活将语义特征投射到信息空间中,其中每个神经元的值表示相应语义特征在决策中的置信度。
【原文:部分:where the value of each neuron indicates the confidence of corresponding semantic feature in decision-making. Intuitively, a feature is high-confident and decisive if its value is either near 0 or 1 after activation, and a feature is low-confident if its activated value is around 0.5. 】
阀门组件对来自两个来源的信息进行校准,并适应信息流。为了解决上面列出的第一个问题,我们使用了一个非线性投影来将统计特征映射到共享的信息空间中,使两种潜在表示相互兼容。第二个问题在使用额外信息的方法上提出了新的角度。我们的观点是,并非所有的语义特征都需要增强,因为有些可能会引入噪声。因此,阀模块在不可信语义特征上增加辅助信息,而不改变高可信语义特征,而不是元素化操作。通过这样做,所提出的AGN模型可以在原始语义特征和附加特征之间实现更好的决策。
【原文:Therefore, instead of an element-wise operation, the valve module adds auxiliary information to the less-confident semantic features while the high-confident semantic features remain unchanged. 】
英文词语:
retrieval 检索
fusing statistical features 融合统计特征
textual input 文本输入
extractor 提取器
align 校准、排列
a nonlinear projection 一个非线性投影
character-level features 字符级特征
主要讲了其它工作都是提取特征上不断努力,包括卷积神经网络等,注意力机制,句子-词语的层次特征提取,但是我们提出的是融合了信息。
【原文:These works mainly focus on architecture design for feature extraction. In contrast, we propose to merge additional information through an adaptive fusion mechanism.】
讲了有不少别的领域的知识也对文本分类有作用,包括情感分类等,
【原文:Researchers have created and exploited many active features incorporating information from various domains, including but not limited to linguistics, psychology and knowledge base. 】
给一个单词w和一系列类别标签集合c,对于单词w,单词标签的数量(TCoL)的向量为:
Given a word w and a set of labels of c classes, the term-count-of-labels (TCoL) vector of w is:
ζi是单词w在标签i上的统计,给一个句子s={wi}i=1m,那么句子s的TCOL矩阵为:
大概是这样的一个矩形,橙色框框表示一个单词的标签统计表示,蓝色框框表示一个标签的单词统计表示,下标表示第几个标签,上标表示第几个单词。
TCoL的概念是捕获标签的全局分布,作为单词的特征。这些特征是原始的,但对特征选择和信息检索来说信息量很大,通过确定词的相关性(Salton和Buckley 1988;Ramos et al. 2003)。
直观地说,如果单词w在所有标签上的频率很高或很低,那么可以假设w对分类任务的贡献有限。
相反,如果一个词在特定的标签类中出现得更频繁,我们假设这个词是有区别的。
注意,TCoL字典V仅从训练集获得。在第5.2节中对TCoL对模型性能的影响进行了广泛的讨论。
V-Net(图1)的目标是将统计特征转化为有效的表示。就是下图这个部分。
TCoL由术语的整数计数组成,它最初在维度和尺度上都与语义特征不兼容。
【Q:针对上面那句话,TCoL矩阵是什么我们知道了,语义特征的尺度是什么呢?】
V-Net利用自动编码器将离散的TCoL向量映射到潜在的连续空间中,获得统计信息的全局表示。此外,与传统的自动编码器编码相比,通过用多元高斯分布包围潜在空间编码的表示可以对分类器产生实质性的改进。因此,在本研究中,我们采用了Variational Autoencoder (VAE) (Kingma and Welling 2014)对TCoL进行编码。
VAE:变分自编码器
我们对一个句子集中的所有句子产生TCoL,然后获得Z={ζ(i)s}i=1N
假设所有的这个TCoL向量都由一个随机过程产生:pθ(ζ|z),这里面包含了一个隐藏变量z由先验分布pθ(z)采样产生,我们没法直接学习参数θ,因此我们采用变分近似qφ(z|ζ)来共同学习变分参数φ和θ。
【Q:不是,我不李姐,怎么就可以直接假设向量分布包含了一个隐藏变量z ,然后这个隐藏变量z还要由原本观测到的ζ来学习它的一个分布?】
【这里是先假设ζ有一个随机分布,包含了隐藏变量z,然后说z也有一个分布,超参数我们学习不到,所以用后验分布(?是这么个意思吧)的概率来把两个超参数都学习了。】
因此,我们可以通过最大化边际似然来优化模型,边际似然由个体ζ的边际似然之和组成:
由于KL散度项是非负的,我们可以推导出似然项L(θ,φ;ζ),得到边际似然的变分下界,即:
【原文:Since the KL divergence term is non-negative, we can derive the likelihood term L(θ, φ; ζ) to obtain the variational lower bound on the marginal likelihood, i.e.,:】
其中KL项具有封闭解,期望项为重构误差。我们采用重新参数化的技巧来适应变分框架到一个自动编码器。我们使用两**个编码器分别生成两组µ和σ作为先验分布的均值和标准差。**由于我们的近似先验是多元高斯的,我们用对角协方差结构表示变分后验:
通过训练无监督VAE模型,我们可以通过概率编码器得到潜在变量ζz,这将是TCoL的全局表示。V-Net的训练是独立于主分类器的,ζz表示是在预处理阶段产生的,并将通过阀门组件进入分类器。
【原文:By training the unsupervised VAE model, we can obtain the latent variables ζz via the probabilistic encoder, which will be the global representation of TCoL. The training of V-Net is independent of the main classifier, and the representation ζz is generated during the preprocessing stage and will be fed into the classifier via the valve component.】
英语:
discrete 离散的
substantial 价值巨大的
Vanilla本意是香草,在这里基本等同于raw。比如Vanilla Neural Networks实际上就是BP神经网络,而Vanilla CNN实际上就是最原始的CNN。
一些术语-神经网络
这一部分的计算基本没咋看懂。
就知道这个网络用变分自编码器VAE把离散的TCoL向量(基于统计的单词-主题向量)训练处理了一下,得到了向量的全局表示ζz,然后处理后会通过阀门进入分类器。
计算过程是先获得句子集合中所有的向量,Z={ζ(i)s}i=1N
然后这里的N和S按照前面的解释是:s表示的是一个句子,里面有m个单词,ζs就是前面画的那个矩阵,然后N这里没有解释,就说是独立同分布,(iid),应该是有N个句子。
那怎么是写成这样的一个格式的??
然后说,这样的一个向量矩阵应该是服从某个分布pθ(ζ|z)的,这里包含了一个隐藏参数z,和一个超参数θ,然后z自己有一个先验分布pθ(z),为了计算出θ,我们用qφ(z|ζ)来一起计算。 好像后验分布的那个意思。
然后后面的似然分布似然项就看不懂了,总之最后训练出来了ζz。
S-Net(图1)的功能是从文本输入中提取语义特征,并将语义特征投影到信息空间中进行置信度评价。s - net的输入是固定长度m的句子s。
对于非bert模型,我们首先将每个单词映射到k维连续空间中,得到单词嵌入向量xi∈Rk。然后我们将所有的单词向量连接起来形成一个k × m矩阵作为模型的输入:X = [x1, x2,…, xm]。我们填充句子以保持所有句子的长度一致。然后对嵌入矩阵应用语义特征提取器(即CNN、LSTM、Transformer)生成潜在语义特征图C:
对于Bert模型,我们提取特征图,通过在文本输入上的一个基于Bert的预训练。
然后我们通过dense层将语义特征图C映射到信息空间中:
对上面一个式子HC通过一个sigmoid激活函数得到H’C,结果被用来分析置信度。
【原文:The values in the sigmoid-activated representation, H’C = σ(HC ), where σ(·) is the sigmoid function, are exploited to evaluate the confidence of corresponding semantic features in the decision-making process.】
exploited 利用
在3.2中我们离线( offline)得到了ζz,为了灵活的使用统计信息,我们应用了一个dense层,把ζz投影到一个语义特征共享的信息空间(目的)。
公式就是神经网络经典公式。
阀门组件融合HC和Hζ,通过AdaGate函数输出统计信息增强的语义特征图HO,
The valve component fuses HC and Hζ to output a statistical information-enhanced semantic feature map HO through the AdaGate function,
其中ReLU(·)为激活函数, ⊙(Hadamard乘积)表示元素层面上的乘积(an element-wise product)。H’c的值为概率形式,Valve函数的设计是为了恢复与Hζ元素匹配的可信项(概率接近0.5)。具体来说,对于每个单元a∈H’c,
The values in H’c are in probability form, and the Valve function is designed to restore les confident entries (with probability near 0.5) for matching with elements in Hζ . Concretely, for every unit a ∈ H0 C ,
其中有一个泄漏的超参数ε,用于调整置信阈值。具体来说,如果ε= 0,则丢掉所有统计信息;如果ε= 0.5,则接受所有统计信息。因此,基于元素的生产利用Valve(·,ε)作为过滤器,只提取必要的信息。
where ε is a leaky hyper-parameter tuning the threshold of confidence. Specifically, we dump all statistical information if ε= 0, and accept all statistical information if ε = 0.5. Therefore, the element-wise production exploits Valve(·, ε)
as a filter to extract necessary information only.
使用注意力来结合合并的语义表示HO和原始的特征图C:
如果ε= 0,丢掉所有的统计信息,则(12)将成为自我注意(Vaswani et al. 2017),即HO = C。
特征向量经过全连通层和softmax层后,映射到标签空间,进行标签预测和损耗计算。为了最大化正确标签YTrue的概率,我们部署了一个优化器来最小化交叉熵损失L,
使用了很多数据集,进行实验和报告了平均结果。
数据集包括:Subj、SST-1、SST-2、TREC、AG’s News、Yelp Review Full、Yelp Review Polarity
我们的目标是证明合并后的语义表示更有利于分类,所以使用以下特征提取器来比较有和没有额外知识的模型:
特征提取器包括:TextCNN 、BiLSTM、Transformer 、Bert
我们采用的注意力机制提取语义特征表示,我们比较了我们提出的AGN模型和TextCNN+Self-Attn, BiLSTM+SelfAttn, Transformer+Self Attn, and Bert+Self-Attn,,然后注意力被应用在了通过公式6,7得到的潜在语义特征图C上。
Since we adopt attention mechanism over extracted semantic feature representation, we compare our proposed AGN model against TextCNN+Self-Attn, BiLSTM+SelfAttn, Transformer+Self Attn, and Bert+Self-Attn, where self-attention blocks are employed on the latent semantic feature map C obtained by Eqn. 6 and Eqn. 7.
英语词语:
state-of-the-art:最前进的
对词向量进行了初始化,具体怎么初始化的这一节没有讲。
然后描述了一些超参数:
基于CNN的模型的滤波器大小为[3,4,5],每个滤波器100个,基于rnn的模型的隐藏维数为128。对于Transformer,使用一个带有8个头和3个块的编码器。Bert模型为Bert-base Uncased,包含12层,768个隐藏单元,110M参数。我们采用Adam优化器,非Bert的batch size为64个,Bert模型batch size为16个。dropout rate设置为0.5。
The CNN-based models have a filter size of [3, 4, 5] with 100 filters of each, and the RNN-based models have hidden dimension of 128. For the Transformer, we use an encoder with 8 heads and 3 blocks. The employed Bert model is the Bert-base Uncased, including 12 layers, 768 hidden units, and 110M parameters. We adopt Adam optimizer with a batch size of 64 for non-Bert models and 16 for Bert models. The dropout rate is set to 0.5.
都有提高。
对AGN的每个组成部分进行了深入的讨论,并进行了额外的实验。
这一部分是在不同数据集上进行了实验,说明valve是有用的,对于结合来自不同来源的知识是相当有效的,附件的统计特征也是有用的,但并不是所有的统计特征都是有用的,因为有些特征可能会给分类器引入噪声。
这一部分说明适当的衡量注意力权重,统计信息是有用的。
The visualization shows that statistical information is helpful to the decision making by properly adjusting the attention weights.
然后大数据集可以作为小数据集的先验知识(对于TCoL)向量。
这一节证明了模型的鲁棒性。
就是统计信息如果出错了结果没有特别差。
比较了变分和普通编码器,还是变分的好。
比较了一下说提出的补充模型不需要更多太多的计算时间。
没啥好说的,提升了性能还比较灵活有鲁棒性,夸了一下。