什么是自监督学习?
举个通俗的例子:即使不记得物体究竟是什么样子,我们也可以在野外识别物体。
我们通过记住高阶特征并忽略微观层面的细节来做到这一点。那么,现在的问题是,我们能否构建不关注像素级细节,只编码足以区分不同对象的高阶特征的表示学习算法?通过对比学习,研究人员正试图解决这个问题。
什么是对比学习?
对比学习是一种自监督学习方法,用于在没有标签的情况下,通过让模型学习哪些数据点相似或不同来学习数据集的一般特征。
让我们从一个简单的例子开始。想象一下,你是一个试图理解世界的新生婴儿。在家里,假设你有两只猫和一只狗。
即使没有人告诉你它们是“猫”和“狗”,你仍可能会意识到,与狗相比,这两只猫看起来很相似。

仅仅通过识别它们之间的异同,我们的大脑就可以了解我们的世界中物体的高阶特征。
例如,我们可能意识地认识到,两只猫有尖尖的耳朵,而狗有下垂的耳朵。或者我们可以对比狗突出的鼻子和猫的扁平脸。
本质上,对比学习允许我们的机器学习模型做同样的事情。它会观察哪些数据点对“相似”和“不同”,以便在执行分类或分割等任务之前了解数据更高阶的特征。
为什么这个功能如此强大?
这是因为我们可以在没有任何注释或标签的情况下,训练模型以学习很多关于我们的数据的知识,因此术语,自监督学习。
在大多数实际场景中,我们没有为每张图像设置标签。以医学成像为例,为了创建标签,专业人士必须花费无数个小时查看图像以手动分类、分割等。
通过对比学习,即使只有一小部分数据集被标记,也可以显著提高模型性能。
现在我们了解了对比学习是什么,以及它为什么有用,让我们看看对比学习是如何工作。
对比学习如何工作?
在本文中,我将重点介绍SimCLRv2,这是 Google Brain 团队最近提出的最先进的对比学习方法之一。
整个过程可以简明地描述为三个基本步骤:
(1)对于数据集中的每个图像,我们可以执行两种增强组合(即裁剪 + 调整大小 + 重新着色、调整大小 + 重新着色、裁剪 + 重新着色等)。我们希望模型知道这两个图像是“相似的”,因为它们本质上是同一图像的不同版本。
(2)为此,我们可以将这两个图像输入到我们的深度学习模型(Big-CNN,例如 ResNet)中,为每个图像创建向量表示。目标是训练模型输出相似图像的相似表示。

(3)最后,我们尝试通过最小化对比损失函数来最大化两个向量表示的相似性。

对比学习是一种自监督学习方法,使模型能通过学习数据点间的相似性和差异性来掌握数据集的高级特征。通过数据增强、编码及损失最小化三个步骤,模型能在无标签情况下学习图像的高阶特征。对比学习在半监督学习中尤为重要,它允许模型利用少量标记数据和大量未标记数据提升性能。
最低0.47元/天 解锁文章
2502

被折叠的 条评论
为什么被折叠?



