Noisy Student Training:一种半监督图像分类方法.

模型

作者提出了一种半监督图像分类方法,主要包括$4$个步骤:

算法

记标记数据为\(\{(x_1,y_1),...,(x_n,y_n)\}\),无标签数据为\(\{\tilde{x}_1,...,\tilde{x}_m\}\),通常\(n<m\);

1: 使用标记数据训练教师网络$θ^t$,在训练中引入noise

\[\frac{1}{n} \sum_{i=1}^{n} {l(y_i,f^{noised}(x_i,θ^t))}\]

2: 使用无noise教师网络$θ^t$预测无标签数据的标签:

\[\tilde{y}_i = f(\tilde{x}_i,θ^t)\]

3: 训练一个模型容量相等或更大的学生网络$θ^s$,在标记数据和无标签数据上进行:

\[\frac{1}{n} \sum_{i=1}^{n} {l(y_i,f^{noised}(x_i,θ^s))} + \frac{1}{m} \sum_{i=1}^{m} {l(\tilde{y}_i,f^{noised}(\tilde{x}_i,θ^s))}\]

4: 将训练好的学生网络作为新的教师网络重复上述过程。

实验

作者共训练了三轮,使用ImageNet作为标记数据集,每轮的设置如下:

  1. 教师网络EfficientNet-B7学生网络EfficientNet-L2batch size ratio:(无标签数据:有标签数据)\(14:1\);
  2. 教师网络EfficientNet-L2学生网络EfficientNet-L2batch size ratio:(无标签数据:有标签数据)\(14:1\);
  3. 教师网络EfficientNet-L2学生网络EfficientNet-L2batch size ratio:(无标签数据:有标签数据)\(28:1\).

作者进行了大量消融实验,得到以下结论:

  1. 使用更大的教师网络可以得到更好的结果;
  2. 大量的无标签数据是必须的;
  3. soft伪标签比hard伪标签表现好;
  4. 使用更大的学生网络能够增强模型能力;
  5. 对于小模型,数据平衡是有用的(对无标签数据进行过滤);
  6. 训练学生网络时,在无标签数据上预训练,在标记数据上微调;
  7. 使用更大的无标签数据与有标签数据的batch size ratio得到更高的准确率;
  8. 从头开始训练学生网络比使用教师网络初始化学生网络效果更好。