tabayashi0117 / Score-CAM

MIT License
55 stars 18 forks source link

Question about max_N in Scorecam #1

Open Youngrock-Oh opened 4 years ago

Youngrock-Oh commented 4 years ago

Hello. First of all, I appreciate you for providing such a wonderful code. I have a question in your code. More specifically, about function ScoreCam() in gradcamutils.py.

Could you explain why you choose activation maps with large standard deviations? I mean the procedure of extracting effective maps in case of max_N != =1.

en-ashay commented 3 years ago

can you share the requirements.txt file? I am having some errors.

one error this cell image

this error image

tabayashi0117 commented 3 years ago

@Youngrock-Oh I’m sorry for the late reply.

Could you explain why you choose activation maps with large standard deviations?

The basic idea is similar to Channel Pruning. (https://arxiv.org/abs/1707.06168) Unfortunately my idea is heuristic and not mathematical. First, I noticed that most of activation maps have a constant value. Next, I calculated the variance for each map to exclude the constant-value ones, and confirmed that the results of Score-CAM were virtually unchanged if I omitted the operation on the excluded maps with almost zero variance. Furthermore, since I found that excluding maps with small variances had little effect on the results, I set the max_N argument with the expectation that "the results of Score-CAM are highly dependent on the output of some maps that show large responses (with large variances)".

tabayashi0117 commented 3 years ago

@en-ashay Thank you for your comment. You may have already resolved the problem, I pushed the requirements.txt.