度量学习是一种机器学习方法,旨在学习数据之间的相似度度量。
-
K最近邻(K-Nearest Neighbors,KNN):
- 简介:基于实例的学习方法,通过计算待分类样本与训练集中最接近的K个样本的距离,来进行分类或回归。
- 模型结构:无需显式的模型结构,只需存储训练样本即可。
-
Siamese(孪生)网络:
- 简介:通过共享权重的神经网络对一对输入样本进行编码,然后通过比较编码的相似性来进行度量学习。
- 模型结构:通常由两个相同结构的子网络组成,分别对输入样本进行编码,然后通过距离度量来比较编码。
-
三元组网络(Triplet Network):
- 简介:学习将一对样本之间的距离缩小,同时将另一对样本之间的距离放大,以此来学习相似性度量。
- 模型结构:由三个相同结构的子网络组成,分别对锚点样本、正样本和负样本进行编码,然后通过距离度量来调整网络参数。
-
核方法(Kernel Methods):
- 简介:通过将输入数据映射到高维特征空间,利用核函数来计算样本之间的相似度,从而进行度量学习。
- 模型结构:可以基于支持向量机(SVM)等模型,利用核技巧来进行度量学习。
-
原型网络(Prototype Network):
- 简介:原型网络通过学习每个类别的原型向量来进行分类或度量学习。每个原型向量代表了该类别的中心或代表性。
- 模型结构:通常包含两个阶段:原型学习阶段和推理阶段。
- 原型学习阶段:根据训练数据集学习每个类别的原型向量。
- 推理阶段:根据测试样本与原型向量之间的距离来进行分类或度量学习。