当前位置: 首页>前端>正文

半监督学习 伪标签如何生成 半监督算法

一篇国外大佬发文:

国外大佬发文:让AI自己给数据加标签,然后把损失函数用相应的方式来表达:把自动加标签的噪音和可能的偏差都考虑进去。

最近有两篇研究,都是这方面的例子:

一是MixMatch: A Holistic Approach to Semi-Supervised Learning

Arxiv码:1905.02249

二是Unsupervised Data Augmentatio

Arxiv码:1904.12848

其次,有一个根本上的变化,是人类已经意识到半监督学习会在机器学习隐私中,扮演一个很重要的角色了。

比如,PATE (Arxiv码:1610.05755) 方法里面定假设有监督的数据是私有的。那在教师-学生网络里,学生型就有强大的隐私保障,可以只用未标记的数据 (公开数据) 进行训练。

知识蒸馏 (Distilling Knowledge) 中,有些对隐私敏感的方法,成为了联合学习 (Federated Learning) 的一个关键推动力:

因为这样的方法,可以保障高效的分布式学习 (Distributed Learning) ,模型不需要访问用户数据,在数学上保障了隐私。

原文:The Quiet Semi-Supervised Revolution
https://towardsdatascience.com/the-quiet-semi-supervised-revolution-edec1e9ad8c

MIT的《半监督学习(Semi-Supervised Learning)》
http://www.acad.bg/ebook/ml/MITPress-%20SemiSupervised%20Learning.pdf


结语

总体来看,半监督机器学习无论是采用聚类、图传播、数据增强还是泛化学习,主要依据的理论基础都是labeled和unlabeled data在分布上的连续性和一致性,因此机器学习方法可以利用这点进行有效的结构化学习,增强模型的表征能力,进而很好地提高预测效果。虽然半监督机器学习已经取得了一些很好的结果,从近两年ICML、ICLR和NeurIPS等会议看,相关工作也越来越多,但是还远没有到CV中的ResNet和NLP中的BERT的水平,要实现100x Data真正发挥作用,还需要学术界和工业界共同努力。

半监督学习

半监督学习通常情况下,只有少量的有label数据,但是可以获得大量的无label数据,在这种情况下希望能够获得跟监督学习获得相似甚至相同的效果。半监督学习的历史其实已经也比较久远了,2009年Chapalle编著的Semi-Supervised Learning,就对其定义和原理做了详细介绍。在计算力随着深度学习的热潮快速发展的同时,大量的label贫困任务出现,于是半监督学习也越来越重要。

半监督学习近两年最有亮点的工作当属发表在EMNLP'2018的Phrase-Based & Neural Unsupervised Machine Translation,大幅提升了半监督机器机器翻译的SOTA。

半监督学习 伪标签如何生成 半监督算法,半监督学习 伪标签如何生成 半监督算法_ci,第1张

翻译训练过程示意

在整个训练过程中,B)先对其两种语言的work级别翻译,然后C)针对两种语言分别学一个Language Model,获得语言分布,最后D)再根据语言分布反复使用Back-Translation在已知的少量句对上翻译获得最终模型。这种方案大幅提高了在对齐句对不多的语种之间的翻译质量,同时由于其novelty,获得了EMNLP'2018的Best Paper Award,初读此文时有一种眼前一亮的感觉。(尽管标题叫Unsupervised Machine Translation,但是实际上利用到了部分label数据,我更愿意将其归类为Semi-Supervised Machine Translation。)

最近Google的研究人员又提出来一种新的半监督训练方法MixMatch,这种方法号称是Holistic的,综合运用了:A)distribution average; B)temperature sharpening; C)MixUp with labeled and unlabeled data. 其训练过程如下:

半监督学习 伪标签如何生成 半监督算法,半监督学习 伪标签如何生成 半监督算法_半监督学习 伪标签如何生成_02,第2张

这个方法在CIFAR-10上只有250个label时能将错误率从38%降到11%,令人印象深刻。『江山代有才人出』,另一波Google的研究人员提出了UDA,在我看来这种方法更为彻底,也更加End-to-End。UDA主要利用数据分布的连续性和一致性,在输入有扰动的情况下,输出应该保持稳定,于是对于unlabeled data增加了一个损失函数:

半监督学习 伪标签如何生成 半监督算法,半监督学习 伪标签如何生成 半监督算法_d3_03,第3张

即有扰动和无扰动的unlabeled data的预估分布的KL距离应该非常小,同时数据扰动用尽可能贴近任务本身的方法去做,比如图像用AutoArgument,文本用上面提到的Back-Translation和Word Replacement。

半监督学习 伪标签如何生成 半监督算法,半监督学习 伪标签如何生成 半监督算法_sed_04,第4张

UDA训练示意

UDA的效果在文本和图像上都得到了很好地验证,大幅降低标注数据不足情况下得错误率;更值得关注的一点是,即便在ImageNet这种标注数据已经非常多的情况下,再使用UDA依然能带来效果的提升,说明UDA在数据分布拟合上具有很好地通用性。


上海交通大学屠恩美:

半监督深度学习方法可分为三类:无监督特征学习类,正则化约束类,生成式对抗网络类。



https://www.xamrdz.com/web/2p21961626.html

相关文章: