-
Notifications
You must be signed in to change notification settings - Fork 557
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
关于DANN中的域鉴别器的域分类准确率 #267
Comments
我更改了训练过程中记录中间变量的方法,使用的AlexNet作为backbone,但是其他的部分,诸如loss的计算,domainDiscriminator,classifier的设置、总loss的计算都是直接照搬本repo的,any help will be greatful |
我觉得可能有以下可以考虑检查的地方: |
非常感谢你的建议!我会逐一进行尝试的 |
额,我向问下关于在tgt_acc随着domain_acc上升而上升的情况是不是意味着存在着其他的特征,在鉴别器对域分类达到100%准确率的时候被捕捉到了,所以造成了tgt_acc的巨大提升; |
我在dann的训练代码中没有找到梯度反转的部分,有没有可能是代码实现方法的问题? |
@Zewen-Shang ,有的,你没看仔细,这一部分有两块,一个是nn.Sequential写的discriminator,第二个是不同网络的对齐loss计算模块,这个模块里的forward的第一步是 grl(input),相当于做了梯度反转,然后再是用第一部分的discriminator做计算 |
确实是这样,谢谢您 |
你好,按照DANN的理论思想,域鉴别器在训练得比较好的情况下应该是不能够很好地区分数据是来自源域还是目标域,这意味着域分类的准确率曲线应该是由较高到接近50%。但我在DANN上用自己的数据做分类实验的时候,出现了以下的问题:
1.训练过程中域分类准确率达到了100%,但在目标域上的准确率有了较大的提升;
2.源域和目标域分享同一个标签空间,即类0和类1,但即使源域在类0和类1上都达到了100%的准确率,目标域上对类0的准确率只有不到30%,对类1的准确率达到了80+%;
我想问下有没有什么方法解决这样的问题,或者说源域和目标域存在着较大的条件概率分布之类的差异,导致迁移的效果不是很好?
The text was updated successfully, but these errors were encountered: