阅读笔记:Multi-Task Label Embedding for Text Classification
阅读笔记:Multi-Task Label Embedding for Text Classification
-
- 1.简介
-
- 几种分类问题
- 深度学习在文本分类类任务中的应用
-
- 文本分类的现状
-
MTLE
-
问题描述
- 单任务学习(SOTL)
-
MTL
- 总思路
- 无监督模型
- 有监督模型
- 半监督模型
1.简介
几种分类问题
-
多标签分类
一个样本可以属于多个类别(或标签),不同类之间是有关联的。 -
多任务分类
多标签分类是一种基于多种策略的分类方法,在这种设置下多个子模型同时被训练以解决同一问题集。每个子模型不仅独立处理特定的任务数据特征,并且通过数据共享和优化过程实现性能提升。在这种情况下各子模型之间存在相互作用与协同效应。 -
多类分类(普通分类任务)
每个样本必须同时归类于多个类别中的一个类别,并且每个样本只能被归类到单一类别中。当仅涉及两个类别时,则为二元分类任务。
深度学习在文本分类类任务中的应用
在传统的文本分类任务中,在这一过程中标签数据被表示为一种非连续且缺乏语义关联的一阶向量表示方式,并且这种表现形式被认为是一种固定化的处理模式
本文提出了一种新方法来将文本分类任务中的类别标记转化为具有语义意义的向量表示,并开发了一种基于向量匹配的任务求解框架。该系统通过构建有监督学习器、无监督学习器以及半监督混合学习器实现了对文本分类问题的求解。针对以往模型在可迁移性、数据处理时的尺度扩展性和关键特征信息完整性等方面的局限性进行了优化改进。
2.文本分类现状
The Deep Learning framework, as highlighted by Bengio, Courville, and Vincent in 2013, has sparked a significant surge in interest and innovation. With the emergence of numerous neural network models driven by feature extraction capabilities, these models have increasingly demonstrated the ability to represent semantic information through finite-dimensional vector spaces. This development has not only enhanced the robustness of these models across various tasks but also provided a series of powerful methodological foundations for subtasks within natural language processing.
然而在训练大量参数时, 基于神经网络的模型往往主要依赖于大量标注数据。然而, 建设规模宏大且高质量的语料资源库不仅耗时费力。
多任务学习(multi-task learning)能够有效解决这一问题。它通过联合训练多组相关任务,并且利用各组间的关系来扩展数据量;同时提取各组间的共同特征,并以此提升分类性能。
从Caruana(1997)的研究中汲取灵感后不久,“多维度学习任务复杂性”的研究引起了广泛关注。(Collobert和Weston(2008);Liu等人(2015b);Liu、Qiu和Huang(2016a)、(2016b);Zhang等人(2017)。)
这些模型通常包含:
一个 pre-trained look-up layer——将单词序列通过编码转换为dense且low-dimensional(具有语义信息)的实值向量;这即是所谓的word embedding(Mikolov等, 2013b);
通过一些lower-level layers来捕获共同特征;
这些common features随后会传递到后续任务特定层级。
然而这些已有模型存在以下问题:
- 未包含完整的语义内容 标签信息虽然包含了一定的语义要素但以往的研究直接将标签表示简化为缺乏深度意义的一组独立编码形式(如[1 0]和[0 1])这种表示方式导致了部分关键语义特征的信息丢失。
- 基于特定任务而定制的设计方案 这些预先定义好的模型架构在面对新分类任务时表现出明显局限性因为它们只能处理预设的任务类型一旦需要处理新的分类标准就必须对整个架构进行相应的调整并重新进行参数优化。
- 类似于人类的学习能力‘融会贯通’ 这种迁移学习的能力意味着如果一个人已经具备了相关的知识储备当面临一个新的学习任务时他无需额外的学习就能顺利掌握新知识然而现有的很多模型架构却恰恰不具备这种特性它们是一个固定的系统在面对新任务时仍需依靠外部的人工干预来进行结构调整与参数优化。
3.MTLE
总思路:通过建立文本与标签的语义映射模型,在分析其语义特征的基础上实现对这些数据内容的识别与归类(基于数据间关联性分析以及语义一致性考量)!
问题描述
单任务学习(single-task learning)
有监督的文本分类任务
输入: 单词序列
输出: 类别标签
过程:
- 构建词向量表示:通过预训练的lookup层将输入的单词序列 x={x_1,x_2,……,x_T} 转换为其对应的词向量表示 \bm{x}=\{\bm{x}_1,\bm{x}_2,……,\bm{x}_T\}。
- 构建用于文本分类的任务f(\{\bm{x}_1,\bm{x}_2,……,\bm{x}_T\})=\{\hat{y}_1,\hat{y}_2,…,\hat{y}_{V}\},其中f是一个神经网络模型用于从输入的词向量序列中输出相应的概率分布\{\hat{y}_1,\hat{y}_2,…,\hat{y}_{V}\}。这一过程的目标是最小化实际的概率分布\{y_1,y_2,…,y_{V}\}与输出的概率分布之间的交叉熵损失。
- 通过训练确定后的分类器f对输入的单词序列进行推断输出。
多任务学习(multi-task learning)
K个有监督的 文本分类任务T_1,T_2,……,T_K。
过程跟单任务学习类似:
- 构建词向量表示:通过预训练的lookup层将输入单词序列映射至低维词空间中。
- 该模型旨在通过非线性变换作用于输入序列x^{(k)}_1,x^{(k)}_2,…,x^{(k)}_T来生成其对应的预测分布F(x^{(k)}_1,x^{(k)}_2,…,x^{(k)}_T) = \{\bm{y}^{(k)},\bm{y}^{(1)},…,\bm{y}^{(K-1})\}——其中预测分布由输入序列x^{(k)}_1,x^{(k)}_2,…,x^{(k}} _T)生成。其训练目标是最小化所有任务上加权交叉熵损失。
- 基于所学内容构建完成该分类器后,则可利用它来进行后续的任务预测。

总思路

位于Input Encoder模块中,
具体来说,在任务T_k中所涉及的输入序列定义为x^{(k)} = \{x^{(k)}_1, x^{(k)}_2, ..., x^{(k)}_T\};
其中,
x^{(k)}通过Lookup Layer(记为Lu_I)被映射为其对应的词向量表示形式\bm{x}^{(k)} = \{\bm{x}^{(k)}_1, \bm{x}^{(k)}_2, ..., \bm{x}^{(k)}_T\};
随后,
利用Learning Layer(记为Le_I)对这些词向量进行递归处理,
从而综合生成一个固定长度的全局向量\bm{X}^{(k)},
这可被视为原始输入序列的整体向量表示。
- 在Label Encoder
2.1每个任务T_k对应一个标签集合C_k即y ^{(k)}_1 y ^{(k)}_2 ... x ^{(k)}_{C_k}其中标签y ^{(k)}_j (1<=j<=C_k)也是一个单词序列例如"very positive" "neutral" "positive"等
2.2 y ^{(k)}_j通过Lookup~Layer (Lu_L)被映射成固定长度的向量\bm{y} ^{(k)}_j
2.3然后\bm{y} ^{(k)}_j经过Learning~Layer (Le_L)进一步生成一个固定长度的向量\bm{Y} ^{(k)}_j即被视为原始输入序列的整体向量表示
该模块依次从Input Encoder和Label Encoder接收相应的输入\bm{X} ^{(k)}和\bm{Y} ^{(k)}_j ,随后完成向量匹配过程,并将每个文本识别为最合适的一个类别标签。
无监督模型
针对任务 T_k 的任务中包含输入序列与分类标签,并且这些序列与标签之间缺少标注以及明确的对应关系。
有监督模型

