引言
小样本学习是指使用极少量的训练数据来开发人工智能模型的各种算法和技术。小样本学习致力于让人工智能模型在接触相对较少的训练实例后识别和分类新数据。小样本训练与训练机器学习模型的传统方法形成鲜明对比,传统方法通常使用大量训练数据。小样本学习是 主要用于计算机视觉。
为了对小样本学习有更好的直觉,让我们更详细地研究这个概念。 我们将研究小样本学习背后的动机和概念,探索一些不同类型的小样本学习,并涵盖高层小样本学习中使用的一些模型。 最后,我们将研究一些小样本学习的应用程序。
“小样本学习”描述了训练机器学习模型的实践 用最少的数据量。 通常,机器学习模型是根据大量数据进行训练的,数据越大越好。 然而,由于几个不同的原因,小样本学习是一个重要的机器学习概念。
使用小样本学习的原因之一是它可以大大减少训练机器学习模型所需的数据量,从而减少标记大型数据集所需的时间。 同样,在使用通用数据集创建不同样本时,小样本学习减少了为各种任务添加特定特征的需要。 理想情况下,少量学习可以使模型更加稳健,并且能够基于较少的数据识别对象,从而创建更通用的模型,而不是标准的高度专业化模型。
小样本学习最常用于计算机视觉领域,因为计算机视觉问题的本质需要大量数据或灵活的模型。
子类别
“小样本”学习实际上只是一种使用很少训练样本的学习类型。 由于您仅使用“一些”训练示例,因此少数样本学习的子类别也涉及使用最少量的数据进行训练。 “一次性”学习是另一种类型的模型训练,涉及教导模型在仅看到该物体的一张图像后识别该物体。 一次性学习和几次学习所使用的一般策略是相同的。 请注意,术语“小样本”学习可以用作总括术语来描述使用很少数据训练模型的任何情况。
小样本学习的方法
大多数小样本学习方法可以分为三类之一:数据级方法、参数级方法和基于度量的方法。
数据级方法
小样本学习的数据级方法在概念上非常简单。 为了在没有足够的训练数据时训练模型,您可以获取更多的训练数据。 数据科学家可以使用多种技术来增加他们拥有的训练数据量。
类似的训练数据可以支持您正在训练分类器的确切目标数据。 例如,如果您正在训练分类器识别特定种类的狗,但缺乏您尝试分类的特定物种的许多图像,则可以包含许多狗的图像,这将帮助分类器确定构成狗的一般特征。
数据增强可以为分类器创建更多训练数据。 这通常涉及对现有训练数据应用转换,例如旋转现有图像,以便分类器从不同角度检查图像。 GAN 还可以根据从您拥有的少数真实训练数据示例中学到的知识来生成新的训练示例。
参数级方法
元学习
小样本学习的一种参数级方法涉及使用一种称为“元学习”。 元学习涉及 教模型如何学习 哪些特征在机器学习任务中很重要。 这可以通过创建一种方法来调节如何探索模型的参数空间来实现。
元学习使用两种不同的模型:教师模型和学生模型。 “教师”模型和“学生”模型。 教师模型学习如何封装参数空间,而学生算法学习如何识别和分类数据集中的实际项目。 换句话说,教师模型学习如何优化模型,而学生模型学习如何分类。 教师模型的输出用于训练学生模型,向学生模型展示如何协商因训练数据太少而产生的大参数空间。 因此,元学习中的“元”。
小样本学习模型的主要问题之一是它们很容易在训练数据上过度拟合,因为它们经常具有高维空间。 限制模型的参数空间解决了这个问题,虽然可以通过应用正则化技术和选择适当的损失函数来实现,但使用教师算法可以显着提高少数样本模型的性能。
几次学习分类器模型(学生模型)将努力基于其提供的少量训练数据进行泛化,并且通过教师模型引导其通过高维参数空间,可以提高其准确性。 这种通用架构被称为“基于梯度”的元学习器。
训练基于梯度的元学习器的完整过程如下:
- 创建基础学习者(教师)模型
- 在支持集上训练基础学习器模型
- 让基础学习器返回查询集的预测
- 根据分类误差产生的损失训练元学习者(学生)
元学习的变体
与模型无关的元学习 是一种用于增强我们上面介绍的基于梯度的基本元学习技术的方法。
正如我们上面所讨论的,基于梯度的元学习器使用教师模型获得的先验经验 来微调自己 和 提供更准确的预测 对于少量的训练数据。 然而,从随机初始化的参数开始意味着模型仍然有可能过度拟合数据。 为了避免这种情况,通过限制教师模型/基础模型的影响来创建“模型无关”元学习器。 学生模型不是直接根据教师模型做出的预测的损失来训练学生模型,而是根据自己的预测损失进行训练。
对于训练与模型无关的元学习器的每一集:
- 创建当前元学习器模型的副本。
- 副本在基础模型/教师模型的帮助下进行训练。
- 该副本返回训练数据的预测。
- 计算损失用于更新元学习器。
度量学习
设计几次学习模型的度量学习方法 通常涉及 此 使用基本距离度量 对数据集中的样本进行比较。 余弦距离等度量学习算法用于根据查询样本与支持样本的相似性对查询样本进行分类。 对于图像分类器来说,这意味着仅根据表面特征的相似性对图像进行分类。 选择图像支持集并将其转换为嵌入向量后,对查询集进行同样的操作,然后比较两个向量的值,分类器选择与向量化查询集值最接近的类。
更先进的基于度量的解决方案是“原型网络”。 原型网络将聚类模型与上述基于度量的分类相结合,将数据点聚类在一起。 与 K 均值聚类一样,聚类的质心是针对支持集中的类和查询集中的类计算的。 然后应用欧几里德距离度量来确定查询集和支持集质心之间的差异,将查询集分配给更接近的支持集类。
大多数其他小样本学习方法只是上述核心技术的变体。
小样本学习的应用
小样本学习在数据科学的许多不同子领域都有应用,例如计算机视觉、自然语言处理、机器人、医疗保健和信号处理。
计算机视觉领域的小样本学习应用包括高效的字符识别、图像分类、对象识别、对象跟踪、运动预测和动作定位。 用于小样本学习的自然语言处理应用包括翻译、句子完成、用户意图分类、情感分析和多标签文本分类。 小样本学习可用于机器人领域,帮助机器人通过几次演示来学习任务,让机器人学习如何执行动作、移动和导航周围的世界。 小样本药物发现是人工智能医疗保健的一个新兴领域。 最后,小样本学习可用于声学信号处理,这是一种分析声音数据的过程,让人工智能系统仅基于几个用户样本或从一个用户到另一个用户的语音转换来克隆语音。