yizt / Grad-CAM.pytorch

pytorch实现Grad-CAM和Grad-CAM++,可以可视化任意分类网络的Class Activation Map (CAM)图,包括自定义的网络;同时也实现了目标检测faster r-cnn和retinanet两个网络的CAM图;欢迎试用、关注并反馈问题...
Apache License 2.0
730 stars 167 forks source link

强化学习使用GradCAM #44

Open shisi-cc opened 3 years ago

shisi-cc commented 3 years ago

你好,我想尝试在强化学习里用GradCAM,但是遇到一个问题是强化学习里损失函数跟做分类不太一样,我不太确定求GradCAM的梯度时是用强化学习的损失函数,还是像分类一样用最大值做反向,不知道您有没有了解?

yizt commented 3 years ago

@shisi-cc 不太清楚您的问题,可否详细说下您用的网络,然后想用Grad-CAM来具体做什么

shisi-cc commented 3 years ago

@yizt 不好意思,好像是我理解错了。我之前以为Grad-CAM中求梯度是用的CrossEntropy之类的损失函数,就跟分类任务一样。后来仔细读了一下论文和代码,梯度是用输出的得分(target = output[0][index] target.backward())做反向传播。那就是说无论网络训练时用的是什么损失函数,都不影响Grad-CAM的求解。不知道我的理解是否正确?

yizt commented 3 years ago

@shisi-cc 对的,跟loss没有关系