作者:禅与计算机程序设计艺术
近年来随着计算机科学的飞速发展和互联网的普及,自然语言处理领域也涌现出了大量新兴的研究方向。其中,无监督学习(Unsupervised Learning)一直占据着舞台中心。无监督学习是指没有任何手工标注数据的情况下,利用机器学习的方法自动发现数据中的结构信息并进行分析。相比于监督学习,它对数据要求更高,但由于缺少监督信息,可以获得更好的结果。半监督学习(Semi-Supervised Learning)是介于监督学习和无监督学习之间的一种学习方式。半监督学习主要包括以下三种方法:
Label Propagation (LP): LP方法是最简单的半监督学习方法之一。该方法通过直接根据已有的标签信息调整后续节点的标签值,最终达到聚类效果。例如,已知文本分类任务中某些文档属于“正面”或“负面”两类,可以通过将属于同一类的文档的标签信息传递给具有相同主题的其他文档,从而将不相关的文档归为一个组别。
Co-Training (CT): CT方法通过结合自助采样方法和分类器之间的数据协作关系,得到更好的聚类效果。比如,当一个分类器预测了一个文档属于某个类时,另外一个分类器可以利用该文档作为负例,同时可以选择另一个与该文档主题不太相关的文档作为正例进行训练。这样,两个分类器就可以有效地共同预测文档所属的类。
Adversarial Sampling (AS): AS方法基于生成模型进行半监督学习,其关键在于生成模型能够生成与训练集非常不同的特征分布。在AS方法中,训练集的正例仍然采用传统的手工标注方法标记,但生成模型则采用了强化学习方法来优化特征分布以使得生成的样本尽可能逼近真实数据分布。这种方法能够较好地解决分布差异带来的