ACL2020论文分享:基于上下文的弱监督文本分类

1 前言
今天分享一篇关于文本分类的paper,论文来自2020ACL会议,其主要思想是:基于上下文的弱监督方法进行文本分类。论文标题为:Contextualized Weak Supervision for Text Classification,论文下载链接论文也开源了代码。今天分享的这篇paper在内容上,与我之前分享的一篇2019ACL的paper——无监督文本分类(Towards Unsupervised Text Classification Leveraging Experts and Word Embeddings)对比,有些类似之处:两篇都用使用先构建初始label种子词库,然后扩充类别词库的进行迭代分类的思路,不同的是在扩充词库与识别文本上。本文解决的问题在扩充类别词库中,有很多词是有很多词义的,不能笼统的单一表示,会影响文档的分类。为解决这个问题,作者提出基于上下文来解决一词多义的问题。下面详细介绍本篇论文。
2 Model
模型整体结构

上图为论文中文本分类的整体思路,可分为四个步骤,最后两个步骤是一个迭代过程。step1就是利用专家知识形成一个种子词库。

其实论文的核心在于**“上下文-Contextualization”**,这里涉及两个方面:上下文的词和上下文的文档。词的上下文其实就是一词多义的意思。因为相同的词,若有不同的意思,则表现在它的上下文上,如“window”,“apple”等。接下来详细说下如何生成上下文的词和上下文的文档,对应model的step2。

2.1 Document Contextualization——step2
(1)上下文表示(Contextualized Representation)
给定一个词 w w w,统计它在文档语料库中出现n次,对应表示为 w 1 w_1 w1,… w n w_n wn。使用BERT预训练模型获取每个 w i w_i wi上下文表征向量 b w i b_{w_i} bwi。基于这样的假设:对于 w i w_i wi w j w_j wj,如果二者词义相同,则它的上下文则类似,表现为cosine( b w i b_{w_i} bwi, b w j b_{w_j} bwj)值很高。有了这些信息,接着作者要计算词 w w w到底有几层含义,这里采用kmeans聚类的方法,对 w w w所有的上下文向量进行聚类,看能聚成几类。
词的上下文聚类示意图
论文对此进行了可视化说明:展示了词"window","penalty"上下文词向量聚类效果,这里 K K K选择的是2,分两类,表示有两个词义,用$0,$1来区分。看到这里,可能会疑问,在聚类过程中 K K K如何取值,像图中两个词都可以分成3类。对于该问题,作者也提供了一个自动选择 K K K的方法。
(2)上下文词的聚类中 K K K的学习
K的选择

公式表达的意思是,K类的所有中心 c i c_i ci之间的cosine值都要满足< t t t阈值,取满足条件最大的K。阈值 t t t由下面两个公式计算而来:


意思是计算每个种子词 s s s的上下文词的相似度,然后取中位数形成 t ( s ) t(s) t(s),然后把所有的种子词的值取中位数得到 t t t
(3)文档的上下文化
经过上面的步骤,就可以得到每个词有多少个词义,也表示为多少个上下文。具体用下面形式进行表示,最后将文档中每个 w i w_i wi进行替换,形成 contextualized document。如前面提到的,像“windows“有两层词义,就将它变成"windows$0"和"windows$1"。
词的上下文表示

##2.2 Text Classifier——step3
在step2形成了上下文的种子词库和文档后,在step3进行文本分类。
(1) 生成伪标签(Pseudo-Label)
有了类别词库,就可以为文本打上伪标签,方法是:文本若某类别词库中种子词tf值之和最高,那文本就属于该label。
(2)文本分类方法
对文本打标签后,就可以利用这些文本训练一个分类器,训练方法作者选用的是Hierarchical Attention Networks (HAN)。
文本分类模型

2.3 词库的扩充与迭代——step4
完成前三步骤,相当分类任务流程跑完。但是通过前几步形成的词库,还会存在两个问题:一是种子词库太少,需要扩充;二是种子词库中有些词属于那些label可能有歧义,需要消歧,主要是第一个问题。
具体方法就是作者为词定义了一个归属类别的排序系数,按照这个系数进行扩充,公式如下:
词的类别归属系数


公式中包含三个子指标, L I ( C j , w ) LI(C_j,w) LI(Cj,w) w w w属于 C j C_j Cj的概率, F ( C j , w ) F(C_j,w) F(Cj,w) w w w H A N HAN HAN模型预测为 C j C_j Cj的概率值tanh转化。
按照上述的方式,就可以对种子词库进行扩充,接着就可以在step3和step4进行迭代。
3 Experiment
dateset
论文主要在两个数据集进行验证测试,显示在对齐其他无监督的方法,论文的模型取得最好的效果;对比有监督方法,在NYT数据集上差距不大,在Newsgroup上差距还是挺大的。
4 结论
我个人觉得倒不是作者的整体解决方案——弱监督的文本分类新颖,而是在词的上下文化是值得去借鉴和探索的,因为这个点可以影响很多任务。另外再想:作者这一套无监督的方法,迭代下来,计算量很大,也会消耗一些人力,感觉还不如去标一些文本,然后在标注的文本的上去弱监督,是不是效果会更好些。也可能是由于工业上更依赖词库的缘故吧。

更多文章可关注笔者公众号:自然语言处理算法与实践

  • 4
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

烛之文

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值