-
Notifications
You must be signed in to change notification settings - Fork 43
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
Questions about difference between code and paper #16
Comments
Here are the results using L1 loss in Answer 2 and those in the paper:
Here is the output log: Google Drive | Baidu Drive (Extraction Code: 27ql) |
In tools/trains.py the code minimizes the uncertainty first and then to maximizing the uncertainty, which is not in line with the paper. I was wondering if whether there were some special concerns. |
Please kindly refer to here for explanation. |
@yuantn No mean for offences, just curious, sorry |
No need to be so cautious... I'm OK! 😁 I answered like that just because someone has asked your question before. Feel free to ask any questions you want, but it would be better to open another issue if your question is different from the current issue. |
thanks a lot |
Thank you so much for answering! |
Question 1:
In
def forward_single(self, x)
of~mmdet/dense_heads/MIAOD_retina_head.py
:y_head_cls = y_head_f_mil.softmax(2) * y_head_cls_term2.sigmoid().max(2, keepdim=True)[0].softmax(1)
It seems that this code (with
max(2, keepdim=True)[0]
) is not in accordance with the equation (5) in the paper:What is the function of
max(2, keepdim=True)[0]
? And whysoftmax(1)
after all computation? I thought the code should be:y_head_cls = (y_head_f_mil.softmax(2)) * (y_head_cls_term2.sigmoid().softmax(1))
according to my understanding.Question 2:
For uncertainty calculation definition in the paper:
and the equation for discrepancy is:
After reweighting, the equation has changed to:
I thought the code of uncertainty for loss computation and the code of uncertainty for data selection should be the same.
However, the code in
def l_wave_dis
of~mmdet/dense_heads/MIAOD_head.py
:directly compute the discrepancy by subtraction (Manhattan Distance?), while the code in
def calculate_uncertainty
of~mmdet/apis/test.py
is:which uses
pow(2)
for square computation (Euclidean Distance?). I would like to know why you have such designs in code.Thank you so much!
The text was updated successfully, but these errors were encountered: