单次学习是一种机器学习方法,在这种方法中,通过对极少数示例(理想情况下每个类别或类别只有一个示例)进行训练,使模型能够识别和泛化。这与传统的机器学习方法形成鲜明对比,后者通常需要数百或数千个示例才能有效学习。在难以获得大型数据集、成本高昂或根本不可行的情况下,单次学习法显得尤为重要。它旨在模仿人类的学习方式,我们通常只需看到一次或几次,就能识别新的物体或概念。
One-Shot Learning 的核心理念是学习相似度或距离度量,而不是直接学习对物体进行分类。单次学习不是训练一个模型来识别特定类别,而是训练一个模型来理解两个输入的相似或不同程度。常见的技术包括暹罗网络或三重损失函数,它们可以学习嵌入空间中相似输入相距较近,而不相似输入相距较远的嵌入。
在学习阶段,模型会收到成对或成三的实例,并学习如何区分它们。当遇到一个新实例并要求它在几个未见类别中进行分类时(每个类别只给出一个实例),模型会将新实例与提供的每个实例进行比较。然后,模型会根据新实例与这些实例的相似度对其进行分类,通常是在学习到的嵌入空间中使用最近邻方法。这种方法即使在数据有限的情况下也能实现有效的泛化,因为模型学会辨别表明相似性的特征,而不是记住具体的例子。
一次性学习技术已被应用于数据匮乏的各个领域:
虽然两者密切相关,但 "单次学习"(One-ShotLearning)是 "少量学习"(Few-Shot Learning)的一个子集。单次学习特指每类只从一个示例中学习。而 "少量学习"(Few-Shot Learning)则包括模型从少量示例中学习的情况,通常是每个类别从一个样本到几个样本不等。这两种方法都旨在应对数据有限的挑战,但 "少量学习"(Few-Shot Learning)是一个更宽泛的术语,包括 "单次学习"(One-Shot Learning)这一特定情况。这两种方法都与传统的机器学习方法形成鲜明对比,后者通常依赖于大型数据集来进行有效的模型训练。
总之,"一次学习 "为机器学习带来了强大的范式转变,使模型能够从最少的数据中有效地学习。它能够从稀少的示例中归纳总结,这使它在各种现实世界的应用中,尤其是在计算机视觉和其他数据获取受限的领域中,变得不可或缺。随着人工智能的不断发展,单次学习和相关技术将在解决数据限制和扩大机器学习应用范围方面发挥越来越重要的作用。