self-training | 域迁移 | source-free(第二篇)
0 综述
上图展示了source-free domain adaptation和一般的DA的区别。在之前的两篇source-free的论文中已经反复讲解,不再赘述。
1 方法
这文章也是使用Positive learning和Negative Learning的方法。
- 方法名称:Source-Free domain adaptive Semantic Segmentation (SFSS)
1.1 Notations and Definations
SFSS的训练分成两个步骤(和其他的source-free的算法一样)“
- 先在有标注的source data上有监督的训练;
- 在无标注的target data上做无监督的训练。
1.2 Positive Learning
pesudo label是半监督算法广泛使用的方法。然而通过softmax和argmax来获取的pesudo label是不可信的,因为source和target之间的域差距。一种方法是选择高置信度的伪标签,这个可以有效的去除错误的标签,但是这个会陷入“winner-takes-all” dilemma。也就是说模型会预测majority classes而忽视minority classes。
这篇文章为了解决这种imbalance,将intra-class threshold 定义为:
这个公式的官方解释:
这个公式的我的解释:就是每一个类别,选择他们的softmax之后的预测值的前百分之K个。就是每一个类别会选择不同的阈值,保证每个类别都balnace一些
这个方法面试两个问题:
- The most noise labels are filtered due to the high softmax prediction confidence selection.
- 总是选择高置信度的标签,会导致分割模型有偏。
论文中说:会在每一个epoch的开始来更新pesudo label。
得到了pesudo label后,使用crossentropy损失来更新分割模型:
此外,我们还更新那些没有被选中的pixels,通过entropy minimization的方式。Entropy minimization已经被展示有效,在半监督分割算法和domain adaptation当中。
熵最小化可以被认为是交叉熵损失函数的soft-assignment的版本。
所以positive learning的loss就是:
相关文章
- 科普|功率半导体分立器件基础知识了解一下?
- Go 基于令牌桶的限流器
- PlantUML 入门
- 为什么8吋晶圆这么缺?
- 为什么Y电容容量基本都不大于0.1uF?
- R语言实现基因组的注释
- 代码签名证书怎么写?签名证书制作时需要注意什么?
- 关于代码签名证书的用途和类型讲解,这些知识需要了解
- OAuth 2.0 的探险之旅
- 代码签名用什么证书?使用代码签名证书有哪些好处?
- 穿越时空的互动,GitHub神器让照片「动」起来!
- 购物车之架构设计!
- 从微服务开始 vs 不从微服务开始
- 一日一技:XPath 匹配如何忽略大小写?
- 一日一技:HTTPS 证书和中间人攻击的原理
- 代码签名证书签名需要联网吗?代码签名证书有哪些作用?
- 实战 | SRC信息收集思路总结
- Go 结构体函数调用底层实现
- 代码签名证书有什么用?如何申请代码签名证书?
- Ckafka 实现跨可用区容灾部署案例