半监督学习解释

杰夫·贝佐斯(Jeff Bezos)在2017年的亚马逊股东信中写了有关亚马逊语音驱动智能助手Alexa的一些有趣信息:

在美国,英国和德国,通过增强Alexa的机器学习组件和使用半监督学习技术,在过去12个月中,我们已将Alexa的口语理解提高了25%以上。 (这些半监督学习技术将实现相同精度提高所需的标记数据量减少了40倍!)

鉴于这些结果,尝试对我们自己的分类问题进行半监督学习可能会很有趣。 但是什么是半监督学习? 它的优缺点是什么? 我们如何使用它?

什么是半监督学习?

就像您可能从名称中期望的那样,半监督学习介于监督学习和非监督学习之间 。 有监督的学习从带有正确答案(目标值)的训练数据开始。 学习过程结束后,您将获得一个具有一组权重调整模型的模型,该模型可以预测尚未标记的相似数据的答案。

半监督学习使用标记和未标记的数据来拟合模型。 在某些情况下,例如Alexa,添加未标记的数据实际上可以提高模型的准确性。 在其他情况下,未标记的数据会使模型更糟。 我将在下面讨论,不同的算法对不同的数据特​​征具有脆弱性。

通常,为数据加标签会花费金钱并花费时间。 这并不总是一个问题,因为某些数据集已经具有标签。 但是,如果您有很多数据,但其中只有一部分被标记,那么半监督学习是一种很好的尝试方法。

半监督学习算法

半监督学习至少可以追溯到15年,甚至可能更长。 威斯康星大学的朱瑞杰(Jerry Zhu) 在2005年进行了文献调查 。 近年来,半监督学习不仅在亚马逊上兴起,因为它降低了重要基准上的错误率。

DeepMind的塞巴斯蒂安·鲁德(Sebastian Ruder) 在2018年4月写了一篇博客文章,介绍了一些半监督学习算法,这些算法创建了代理标签。 这些包括自我训练,多视图学习和自我组装。

自我训练使用模型自己对未标记数据的预测来添加到标记数据集。 您实际上为预测的置信度设置了一个阈值,通常为0.5或更高,在该阈值之上您相信该预测并将其添加到标记的数据集中。 您将继续训练模型,直到没有更多的预测可以确定为止。

这就引出了用于训练的实际模型的问题。 与大多数机器学习一样,您可能希望尝试每种合理的候选模型,以期找到一个运行良好的模型。

自我训练取得了不同的成功。 最大的缺陷是该模型无法纠正其自身的错误:对一个异常值的高置信度(但错误)的预测可能会破坏整个模型。

多视图训练在数据的不同视图上训练不同的模型,这些视图可能包括不同的特征集,不同的模型体系结构或数据的不同子集。 有多种多视图训练算法,但是最著名的一种是三训练。 本质上,您创建了三个不同的模型; 每当两个模型在数据点的标签上达成一致时,该标签就会添加到第三个模型中。 与自训练一样,当不再向任何模型添加标签时,您将停止。

自组装通常使用具有几种不同配置的单个模型。 在梯形网络方法中,将干净示例的预测用作随机扰动示例的代理标签,目的是开发出对噪声鲁棒的功能。

Jerry Zhu的2007年教程还考虑了许多其他算法。 这些包括生成模型(例如假设每个类具有高斯分布的模型),半监督支持向量机以及基于图的算法。

云中的半监督学习

半监督学习正逐渐进入主流机器学习服务。 例如, Amazon SageMaker Ground Truth使用Amazon Mechanical Turk手动标记和确定图像集部分的边界,并使用神经网络训练来标记图像集的其余部分。

类似的半监督学习方案可以用于其他类型的半监督学习,包括自然语言处理 ,分类和对几种服务的回归。 但是,大多数情况下,您必须为半监督算法编写自己的粘合代码。

阅读有关机器学习的更多信息:

  • 机器学习说明
  • 深度学习解释
  • 自然语言处理说明
  • 监督学习解释
  • 无监督学习解释
  • 半监督学习解释
  • 强化学习讲解
  • 自动化机器学习或AutoML说明
  • 人工智能,机器学习和深度学习:您需要知道的一切
  • 最好的机器学习和深度学习框架
  • 使机器学习失败的6种方法
  • 机器学习课程:5家公司分享了他们的错误
  • 机器学习的最佳开源软件
  • 用于AI开发的5种最佳编程语言
From: https://www.infoworld.com/article/3434618/semi-supervised-learning-explained.html

你可能感兴趣的:(半监督学习解释)