Dual Graph: a graph-based method for reasoning about label noise 解读

现有的limitation: 被选择的样本不能利用所有的数据的信息,尤其是标签 被破坏的情况。

作者的novelties:DualGraph 捕获了标签之间的structural relations,包括两个level:instance-level,distribution-level。实例层面利用实例的相似性表征样本的类别,分布层面描述每个sample和其他sample的实例相似度分布。

通过instance similarity的分布来优化instance-level的关系。

训练了两个网络,在reasoning phase,利用distribution 的信息在GNN 中传播来纠正破坏的标签。在classification phase,利用重建的instance-level的graph去产生可靠的预测。

作者认为distribution-level的关系更robust,网络把它作为监督的信号来refine instance-level的相似度。设计了end-to-end的paradigm,counteract noise并且给出了可靠的预测。训练了两个GNN,并且有一个joint 的loss,包括classifier loss和distribution loss。并且使用joint loss来给边添加权重:enhance positive samples ,weaken negative examples。

Noise-cleaning methods have been criticized for removing too many instances or keeping mislabeled instances. 会选错

sample-selection methods aim to identify true labels from noisy training data, and there can be only a part of training samples that can be selected. 数量少,也不能确保可靠

并且上述方法收到memorization effects 的影响,examples with noisy labels are among the most forgotten examples。并且缺乏全局视野去探索sample之间的关系。

Relevant references reveal that both noise and hard examples are the causes of classifier forgetting [2, 30, 38], but the methods of probability selection and small loss selection tend to confuse noise and hard examples。 hard examples?classifier forgetting?

Reasoning: 产生每个sample和其他sample的相似度的distribution。

classification: distribution features被用来去重建instance graph nodes,并通过计算结点的相似度来产生可靠的预测。

相关工作:

In particular, the widely used small-loss criterion is based on a concept, that DNNs tend to learn simple patterns first, then gradually memorize all samples [2]. For instance, Coteaching [7] and Co-teaching+ [36] maintain two DNNs, but each DNN selects a certain number of small-loss examples and feeds them to its peer DNN for further training。

co-teaching 是互喂的策略,选择small-loss的数据给peer DNN 去学习。

co-trahing + 使用了disagreement 策略,但这样的策略导致适合于训练的数据比较少,并且不能保证这些数据就的标签是ground-truth的。

Proposed approach

generate multiple mini-batches of potentially noisy labels, 并且标签的分布是一样的。

作者提出要minimize 这部分sample的损失,作者提出了学习reweight的机制,并且损失的权重是能通过GNN的边表达sample的权重的。

(2)这个公式中的fi 作者没有明确给出,应该是每个sample的损失。

 DualGraph包含了好多iteration,每一个iteration包含一个Instance Graph 和 Distribution Graph. 那么问题就在于 Gi,Vi,Ei, 和 Gd,Vd,Ed的关系。梳理如下:

刚开始的时候,所有sample的feature embedding是通过CNN去提取的,并且被用来计算Ei,也即instance similarities。

接下来,Ei被用作计算Gd。按照Gi中的位置顺序aggregate Ei 去初始化Vd, Ed 表示Vd中的distribution similarity。

最后,获得的Ed被作为输入给到Gi来构建more discriminative的表示。

重复上述过程。

Instance Graph

一个mini-batch的数据可以形成一个无向的非循环的图结构,也即instance graph.

第0层循环,instance graph的第i个结点的node feature表示为:

 node feature的dimension是m,明显是一个矢量。

edge在instance graph中表示的是instance similarity,是一个标量。计算instance的similarity需要用到node feature,不同于单纯的cosine similarity,作者除了计算node feature的dissimilarity 之外,将这个值传递给一个transformation network fE, 再和上一个循环的instance similarity相乘。

 Distribution Graph

获得了instance similarity之后,接下来就是更新Distribution Graph,以便于根据distribution relation reweight samples,尝试从分布的角度去掉那些abnormal noise points。

node feature 是m维,distribution feature 是 p 维的,p是mini-batch 中sample的数量。

 distribution的更新,这里维度有些困惑,(p,p)->p 还是(1,p)->p:

 Ed表示的是distribution feature的similarity,更新如下:

当distribution graph构建完毕的时候,更新instance graph。

 

同理,这里的维度有些困惑,至此,闭环完成。 

loss有两个,一个来自instance graph,一个来自于distribution graph。

 看到这里的疑问,y_hat从哪里来的?

distribution graph 的损失

 实验等后续再细看吧

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值