C-way K-shot 是few-shot learning的一种常见范式
通常来说,few-shot learning 的训练集包含多个种类的样本,每个类别又包含多个样本。在训练过程中,在训练集中随机抽取C个类别,每个类别包含K个样本,这C个类别与C×K个样本被称为模型的支撑集(support set);然后在这C个类别的剩余数据中抽取一个batch的样本作为预测对象,其被称为查询集(query set)。从这C×K个数据中学习如何区分这C个类别的任务即为C-way K-shot任务。在训练的每个episode中,都会采样得到不同的任务(每次训练都是不同类别的组合),在这种机制下,模型能够学会不同任务中共性的部分,逐渐淡化(或者说是遗忘)不同任务的独特部分。通过这种方法实现的元学习,可以在面对新的,从未见过的任务时,也能够实现较好的分类。
与训练不完全相同,few-shot learning 的测试是在与训练时使用的类别不同的类别上构建support set和query set。