Connect with us

什么是少样本学习?

AI 入门 101

什么是少样本学习?

mm

少样本学习是指使用一种算法和技术来开发一个 AI 模型,使用非常少的训练数据。少样本学习旨在让 AI 模型在接触到很少的训练实例后,能够识别和分类新的数据。少样本训练与传统的机器学习模型训练方法不同,传统方法通常使用大量的训练数据。少样本学习主要用于 计算机视觉

为了更好地理解少样本学习,让我们更详细地研究这个概念。我们将研究少样本学习背后的动机和概念,探索各种类型的少样本学习,并在高层次上介绍一些用于少样本学习的模型。最后,我们将研究少样本学习的一些应用。

什么是少样本学习?

“少样本学习”描述了使用最小量的数据来训练机器学习模型的做法。通常,机器学习模型是使用大量数据训练的,数据越多越好。然而,少样本学习是机器学习中的一个重要概念,原因有几点。

使用少样本学习的一个原因是,它可以大大减少训练机器学习模型所需的数据量,从而减少标记大型数据集所需的时间。同样,少样本学习减少了在使用公共数据集创建不同样本时为各种任务添加特定功能的需要。少样本学习可以使模型更强壮,能够根据较少的数据识别对象,创建更通用的模型,而不是高度专业化的模型。

少样本学习主要用于计算机视觉领域,因为计算机视觉问题的性质需要大量数据或灵活的模型。

子类别

“少样本”学习实际上只是使用非常少的训练示例的一种学习。由于您只使用“几个”训练示例,因此还有其他子类别的少样本学习,也涉及使用最少量的数据进行训练。“一次性”学习是另一种模型训练,涉及教导模型在只看到一个对象图像后识别该对象。一次性学习和少样本学习中使用的一般策略是相同的。请注意,“少样本”学习这个术语可能被用作一个伞形术语来描述任何情况,其中模型使用非常少的数据进行训练。

少样本学习的方法

大多数少样本学习方法可以归入三个类别:数据级方法、参数级方法和度量级方法。

数据级方法

数据级方法对于少样本学习非常简单。为了训练一个模型而没有足够的训练数据,您可以简单地获取更多的训练数据。数据科学家可以使用各种技术来增加他们拥有的训练数据量。

类似的训练数据可以支持您正在训练的分类器的目标数据。例如,如果您正在训练一个分类器来识别特定的狗种类,但缺乏您要分类的特定物种的许多图像,您可以包括许多狗的图像,这将帮助分类器确定狗的普遍特征。

数据增强可以为分类器创建更多的训练数据。这通常涉及将现有的训练数据进行转换,例如旋转现有的图像,以便分类器从不同的角度检查图像。GAN 也可以用于根据少量真实的训练数据生成新训练示例。

参数级方法

元学习

参数级方法之一是使用一种称为“元学习”的技术。元学习涉及教导模型如何学习哪些特征在机器学习任务中很重要。这可以通过创建一种方法来调节模型的参数空间来实现。

元学习使用两个不同的模型:教师模型和学生模型。教师模型学习如何封装参数空间,而学生算法学习如何识别和分类数据集中的实际项目。换句话说,教师模型学习如何优化模型,而学生模型学习如何分类。教师模型的输出用于训练学生模型,向学生模型展示如何在由太少的训练数据引起的高维参数空间中导航。因此,元学习中有“元”这个词。

少样本学习模型面临的主要问题之一是,它们很容易在训练数据上过拟合,因为它们通常具有高维空间。限制模型的参数空间可以解决这个问题,虽然可以通过应用正则化技术和选择适当的损失函数来实现,但使用教师算法可以显著提高少样本模型的性能。

少样本学习分类器模型(学生模型)将尝试根据提供的少量训练数据进行概括,其准确性可以通过教师模型来提高,这个模型可以引导它通过高维参数空间。这种一般的架构被称为“基于梯度的”元学习者。

训练基于梯度的元学习者的完整过程如下:

  1. 创建基础学习器(教师)模型
  2. 在支持集上训练基础学习器模型
  3. 让基础学习器返回查询集的预测
  4. 在分类错误派生的损失上训练元学习器(学生)

元学习的变体

模型无关元学习是一种用于增强上述基本梯度元学习技术的方法。

如上所述,基于梯度的元学习者使用教师模型获得的先验知识来微调自己并提供更准确的预测,用于少量训练数据。然而,从随机初始化的参数开始意味着模型仍然可能过拟合数据。为了避免这种情况,创建了一个“模型无关”的元学习者,通过限制教师模型/基础模型的影响。与其直接在教师模型的预测损失上训练学生模型,不如在学生模型自己的预测损失上训练学生模型。

对于模型无关元学习器的每个训练episode:

  1. 创建当前元学习器模型的副本。
  2. 使用基础模型/教师模型训练副本。
  3. 副本返回训练数据的预测。
  4. 计算损失用于更新元学习器。

度量学习

度量学习方法通常涉及使用基本的距离度量来比较数据集中的样本。度量学习算法如余弦距离用于根据查询样本与支持样本的相似性对其进行分类。对于图像分类器,这意味着仅根据表面特征的相似性对图像进行分类。支持集图像被选择并转换为嵌入向量,同样,查询集也被转换为嵌入向量,然后比较两个向量的值,分类器选择具有最接近向量化查询集值的类。

一种更高级的度量解决方案是“原型网络”。原型网络将数据点聚集在一起,结合聚类模型和上述度量分类。像K-means聚类一样,计算支持集和查询集的类的质心。然后应用欧几里得距离度量来确定查询集和支持集的质心之间的差异,将查询集分配给支持集类中更接近的类。

大多数其他少样本学习方法只是上述核心技术的变体。

少样本学习的应用

少样本学习在数据科学的各个子领域中都有应用,例如计算机视觉、自然语言处理、机器人、医疗保健和信号处理。

计算机视觉领域中少样本学习的应用包括高效字符识别、图像分类、对象识别、对象跟踪、运动预测和动作定位。自然语言处理中少样本学习的应用包括翻译、句子完成、用户意图分类、情感分析和多标签文本分类。少样本学习可以用于机器人领域,以帮助机器人从仅几个示例中学习任务,让机器人学习如何执行操作、移动和导航周围的世界。少样本药物发现是一个新兴的AI医疗保健领域。最后,少样本学习在声学信号处理中有应用,这是分析声数据的过程,让AI系统根据仅几个用户样本克隆语音或将语音从一个用户转换为另一个用户。

//www.unite.ai/what-is-machine-learning/">机器学习与深度学习领域。Daniel希望帮助他人利用人工智能的力量造福社会。