学习笔记1

原文见 肖琳,陈博理,黄鑫等.基于标签语义注意力的多标签文本分类[J].软件学报,2020,31(04)

问题背景:

在传统的分类方法中,每个样本示例只属于一个类别标记,即单标记学习.但是现实生活中很多对象是同时属于多个类别,具有多个标签. 但是传统的注意力机制仅仅是基于文档内容学习单词重要性权重,将标签看成没有语义信息。利用标签的语义信息指导多标签文本分类是关键问题.

1核心概念

单标记学习在传统的分类方法中,每个样本示例只属于一个类别标记
标签:对于文本分类,是具有语义信息的文本。

多标签学习:由Schapire提出,很多对象是同时属于多个类别,具有多个标签。即从标签集合中为每个实例分配最相关的类标签子集的过程。

2多标签文本数据的特点

  • 标签的相关性
  • 复杂的语义关系
  • 尾标签训练少

3关注点

  • 标签的相关性
  • 捕捉有效信息
  • 提取标签相关的鉴别信息

4常见分类方法

具体引用见原文

1)问题转换方法

  • 思想:将多标记学习任务转换为传统的一个或多个单标记学习任务进行。
  • 发展:Binary  Relevance(BR)Label Powerset(LP)Classifier Chain(CC)

BR是将多标签学习问题分解为多个独立的二元分类问题,但是BR缺乏标签之间依赖性,LP为每个可能的标签生成一组新的标记,将问题解决为单标签多类,但是产生样本不平衡。 CC是对BR进行改进,将多标签学习问题转换为二元分类问题链。链上每个节点对于一个标记,对标记构建分类器,后续分类器建立在前一个标签的预测上,因此,对前面标签的依赖性强、同时面临标签和样本空间过大。

2)算法自适应方法两大类

  • 思想:扩展传统的单标记分类算法,对其进行改进以此来处理多标签数据。
  • 发展:Ranking Support Vector Machine (Rank-SVM)Multi-label Decision Tree(ML-DT)Multi-label k-Nearest Neighbor(ML-kNN)

Rank-SVM基本思想,将经典的支持向量机svm推广到多标记,ML-DT的基本思想:采用决策树技术处理多标签数据,Multi-label k-Nearest Neighbor(ML-kNN)的基本思想:采用K近邻算法得到近邻居样本的类别标记情况,再通过最大化后验概率推理得到未知示例的标记集合。

3基于深度神经网络的多标签文本分类模型

  • 发展:XMLCNN13: 使用卷积神经网络设计动态池处理文本分类,忽略标签间的相关性;Kurata17使用标签的共现矩阵;CNN-RNN6,将卷积神经网络和递归神经网络集成,捕捉文本的语义信息;Zhang19建立标签结构空间,探索相关性;Yang5提出 seq2seq,利用注意力机制获得每个单词的权重,输出每个预测标签;HN-ATT3提出使用两层注意力机制;You6使用注意力机制,为每个标签学习一个文本,但忽略了标签的相关性;Du18提出将单词表示和标签表示作一个交互。获得每个词与标签的匹配得分,但未深层考虑为不同标签学习不同的文档表示。

5 研究思路

6研究过程

6.1问题描述

数据集  N 个文档 xi 和对应的标签组成, l表示标签总数。标签表示成 每个文档,由一组词向量表示 wiÎRk,n 是文本的长度. 多标签分类的目标是训练一个预测模型,能够将一个新的未标记的样本分类到 l 个语义标签中.

6.2模型框架

6.3单词隐表示学习

  • LSTM:解决了单词远距离依赖,但是无法编码从后到前的信息。
  • Bi-LSTM:通过向前向后分别训练一个LSTM,从前后两个方向来提取句子语义信息,更好捕获双向语义依赖,使用Bi-LSTM学习每个单词的隐表示。
  • 单词的隐表示学习:

xi={w1,w2,….,wn}LSTM在t时刻的更新状态如下:

 

6.4标签隐表示学习

任一标签的文本内容表示为p 是文本标签的长度, ci每个标签的隐表示,计算如下:

 

6.5单词重要性学习

通过计算文档中单词和每个标签之间的匹配得分获得每个单词对当前标签的权重:

代表基于标签 c 捕获的文档中每个单词的权重.

全部标签和单词的匹配得分为:

 

6.6文档表示学习

将上一层得到的单词和标签之间的匹配得分乘以每个单词的隐表示,得到每个标签对应的文档表示:

6.7标签预测

预测第i个标签出现的概率。

 

  • 算法

输入:训练集 D ={( x i , yi )}N i=1, 测试集 S = {( x i ) }Qi=1 对应的标签文本集 E;

输出:预测标签集 Y^

初始化:学习单词和标签的表示

训练:

While not converge do

   for  xi  in D

1、获得文档中单词重要性权重

2、获得文档表示

3、更新参数 W1,W2

End

测试:

for  xi  in  S

1、获得文档中单词重要性权重

2、获得文档表示

3、输出分类结果 Y

6.8损失函数

LASA使用二元交叉熵损失(binary cross entropy loss)为损失函数,它被广泛用于神经网络分类训练任
,损失函数定义如下:

7实验

3个数据集(Kanshan-CupEuR-LexAAPD)上分别与算法XML-CNNSGMEXAMAttention-XML使用评价指标P@knDCG@k进行对比

7.1 实验设置

7.1.1 数据集

Kanshan-Cup(https://www.biendata.com/competition/zhihu/data/):由中国最大的社区问答平台知乎发布. EUR-Lex(https://drive.google.com/drive/folders/1KQMBZgACUm-ZZcSrQpDPlB6CFKvf9Gfb):由一系列关于欧盟法律的文件组成。

AAPD(https://drive.google.com/file/d/18-JOCIj9v5bZCrn9CIsk23W4wyhroCp_/view?usp=sharing): arXiv上收集计算机科学领域的信息。

7.1.2 评价指标

Precision at k,简写p@k表示:精度评价指标

Normalized discounted cumulative gain at k,简写nDCG@k:归一化折损累计增益作为性能比较的评价指标。

这两项评价指标被广泛应用在多标签分类问题。计算每个文档的 P@k nDCG@k,然后对所有文档求平均值.

7.1.3 对比算法

选择 XML-CNNAttentionXMLSGMEXAM作为对比算法.

7.2整体性能对比

作者提出的 LASA 和其他 4 种算法优于其他 4 种方法.

8展望

多标签文本分类问题上考虑不同粒度的注意力机制

  • 27
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值