billhhh / ShaSpec

The official code repository of ShaSpec model from CVPR 2023 [paper](https://arxiv.org/pdf/2307.14126) "Multi-modal Learning with Missing Modality via Shared-Specific Feature Modelling"
35 stars 6 forks source link

确定缺失模态 #7

Closed aixuanjiayi closed 3 months ago

aixuanjiayi commented 3 months ago

您好,请问是怎么确定缺失模态的呢,看模型DualNet_SS.py上是随机缺失几个模态,但是训练的时候是怎么控制开始使用缺失模态的呢,现在运行train_SS.py时,就是用的完整模态。 谢谢!

billhhh commented 3 months ago

你好,--mode=random 是 random select available 模态,--mode=1,2 就是只用第1和2号模态。--mode 这个参数控制 available 模态。训练开始的时候用全模态做一定时间的 warmup 后改成 random drop 模态 (run.sh 中的实现),具体warmup多久根据你场景决定。或者你也可以在开始训练时将 random drop rate 降低后面逐渐增高,因为我们发现开始训练时模型收敛不稳定,不用 severely missing 模态,而 warmup 一段时间会帮助收敛

billhhh commented 3 months ago

还有一个思路可以是类似 curriculum learning,对 available modality 进行排序。将 full modality 的用于 warmup

billhhh commented 3 months ago

如果没有回复,我先关闭这个问题,如果有其他问题可以再 open 新的 issue