基于结构保持损失的持续语义分割方法研究
1. 结构保持损失
结构保持损失旨在维护类间结构和类内结构。其公式为:
[L_{str} = L_{inter} + \nu \sum_{c\in C_{0:t - 1}}L_{intra}(c)]
其中,(e_{t - 1}^i),(p_{t - 1}^c) 从 (M_{t - 1}) 获得,(e_{t}^i),(p_{t}^c) 从 (M_{t}) 获得,(\nu) 用于平衡类间项和类内项。与先前方法相比,该损失允许模型在嵌入空间中自由重新排列特征向量,只要判别结构在过程中保持完整。通过维护粗粒度和细粒度结构,它有效减轻了旧类的遗忘,同时避免了优化困境,提供了更好的稳定性 - 可塑性权衡。
为了在学习新类时获得嵌入空间中的良好初始结构,采用对比学习。损失函数扩展自相关研究,(L_{comp}) 鼓励嵌入向量接近其原型,(L_{mar}) 确保不同类之间有足够的距离。具体公式如下:
[L_{comp}(c) = \frac{1}{|y^* = c|}\sum_{e_i\in E, i = c}|e_{t}^i - p_{t}^c|^2]
[L_{mar} = \sum_{i}\sum_{j}\max{0, \Delta - \langle\bar{p} i, \bar{p}_j\rangle}, i, j \in C {t}]
[L_{cont} = L_{mar} + \mu \sum_{c\in C_{t}}L_{comp}(c)]
其中,(\mu) 是超参数,(\Delta) 是预定义的距离。
2. 旧类的伪标签
直接使用交叉熵
超级会员免费看
订阅专栏 解锁全文
2202

被折叠的 条评论
为什么被折叠?



