文章标题:TRAINING DEEP NEURAL-NETWORKS USING A NOISE ADAPTATION LAYER, Jacob Goldberger & Ehud Ben-Reuven Engineering Faculty, Bar-Ilan University
摘要:不准确的标签会严重影响分类器的表现,当观测的标签有噪声时,我们可以吧正确的标签认为是一个隐变量,把噪声过程认为是一个未知参数的communication channel。该作者之前使用的方法是EM算法来寻找此未知变量,并且以此来估计正确标签。在这篇文章中作者使用多加的一层神经网络的softmax层来模拟EM算法优化的似然函数。
本文算法流程及代码
- 在minist数据集上模拟有噪声的标签
选取训练样本的标签,对他们以46%的概率污染,即将其实际的标签翻转为另外一个标签。翻转的矩阵如下:
perm = np.array([7, 9, 0, 4, 2, 1, 3, 5, 6, 8])
意味着原始标签为2的样本有46%的概率被标记为0(矩阵第3列),其他同理。
我的笔记:感觉这种处理方法没有很靠谱,也没有贴近实际。比如原始标签为7的被污染(认错)时可能会被误标记为9,1等等。这里的翻转矩阵看起来是随机标记的。
- 在被污染的样本标签作为教师的情况下训练一个神经网络,并且在验证集上测试得到的结果作为baseline,大约是79.45%的准确率。
神经网络是两层简单的全连接层。
nhiddens = [500, 300]
DROPOUT = 0.5