新智元长尾问题太严重?半监督和自监督就可以有效缓解!( 三 )


半监督框架下的不均衡学习
我们首先从半监督的不均衡学习说起 , 通过一个简单的理论模型分析来建立直观的解释(省去了许多细节;可以直接跳到解释部分) , 之后展示一些有意思的实验结果 。 理论分析:我们先从一个简单的toy example入手 。 考虑一个不同均值 ,和, 但是相同方差的Guassian mixture模型 , 我们可以很容易验证其贝叶斯最优分类器为:因此为了更好的分类 , 我们希望学习到他们的平均均值 假设我们已有一个在不平衡的训练集上得到的基础分类器以及一定量的无标签的数据 , 我们可以通过这个基础分类器给这些数据做pseudo-label 。 令和代表pseudo-label为正和为负的数据的数量 。 为了估计, 最简单的方法我们可以通过pseudo-label给这些对应的没有标签的数据取平均得到。 假设代表基础分类器对于两个类的准确度的gap 。 这样的话我们推出以下定理:


新智元长尾问题太严重?半监督和自监督就可以有效缓解!
本文插图
那么直观理解 , 对于这样一个toy example , 这个定理告诉了我们以下两点很有意思的结论:
原始数据集的不平衡性会影响我们最后estimator的准确性 。 越不平衡的数据集我们expect 基础分类器有一个更大的。 越大的影响我们的estimator到理想的均值之间的距离 。
无标签数据集的不平衡性影响我们能够得到一个好的estimator的概率 。 对于还不错的基础分类器 ,可以看做是对于无标签数据集的不平衡性的近似 。 我们可以看到 , 当:
, 如果无标签数据很不平衡 , 那么数据少的一项会主导另外一项 , 从而影响最后的概率 。
半监督的不平衡学习框架:我们的理论发现表明 , 利用pseudo-label伪标签(以及训练数据中的标签信息)可以有助于不平衡学习;而数据的不平衡程度会影响学习的结果 。 受此启发 , 我们系统地探索了无标记数据的有效性 。 我们采用最简单的自训练(self-training)的半监督学习方法 , 即对无标记数据生成伪标签(pseudo-labeling)进而一起训练 。 准确来讲 , 我们首先在原始的不平衡数据集上正常训练获得一个中间步骤分类器, 并将其应用于生成未标记数据的伪标签;通过结合两部分数据 , 我们最小化损失函数以学习最终模型。 值得注意的是 , 除了self-training之外 , 其他的半监督算法也可以通过仅修改损失函数轻松地并入我们的框架中;同时 , 由于我们未指定和的学习策略 , 因此半监督框架也能很轻易的和现有类别不平衡的算法相结合 。 实验:到了激动人心的实验部分了 :)! 首先说一下实验的setting --- 我们选择了人工生成的长尾版本的CIFAR-10和SVHN数据集 , 因为他们均有天然对应、且数据分布相似的无标记数据:CIFAR-10属于Tiny-Images数据集 , 而SVHN本身就有一个extra dataset可用来模拟多余的无标记数据 。 这部分更加细节的setting请详见我们的文章;我们也开源了相应的数据供大家使用测试 。 对于无标记数据 , 我们也考虑到了其可能的不平衡/长尾分布 , 并显式的比较了不同分布的无标记数据的影响(和
新智元长尾问题太严重?半监督和自监督就可以有效缓解!
本文插图
典型的原始数据分布 , 以及可能的无标记数据分布而具体的实验结果如下表所示 。 我们可以清楚看到 , 利用无标记数据 , 半监督学习能够显著提高最后的分类结果 , 并且在不同的 (1) 数据集 , (2) base学习方法 , (3) 标记数据的不平衡比率 , (4) 无标记数据的不平衡比率下 , 都能带来一致的提升 。 此外 , 我们在附录里还提供了 (5) 不同半监督学习方法的比较 , 以及不同data amount的ablation study 。

新智元长尾问题太严重?半监督和自监督就可以有效缓解!


推荐阅读