From c1bc397cfb22702762778f2075739a4202463419 Mon Sep 17 00:00:00 2001
From: chokevin8
Date: Tue, 7 Nov 2023 20:26:11 +0900
Subject: [PATCH] updated CAM blog
---
_posts/2023-10-20-class-activation-maps.md | 17 ++++++++++-------
assets/images/hirescam.png | Bin 0 -> 580577 bytes
2 files changed, 10 insertions(+), 7 deletions(-)
create mode 100644 assets/images/hirescam.png
diff --git a/_posts/2023-10-20-class-activation-maps.md b/_posts/2023-10-20-class-activation-maps.md
index 9ce38b2833a7..a4b4f4442ecf 100644
--- a/_posts/2023-10-20-class-activation-maps.md
+++ b/_posts/2023-10-20-class-activation-maps.md
@@ -90,23 +90,26 @@ to find our equation for evaluating our activation score for Grad-CAM:
$$Y_c = \sum_{k} {\alpha_k}^{c} \cdot F^{k} \text{ where } {\alpha_k}^{c} = \frac{1}{Z} \sum_{i}\sum_{j} \frac{\delta Y^{c}}{\delta A_{(i,j)}^{k}} (5)$$
Equation #5 is one-step short of completion. Why? The gradients can be negative or positive! We are only interested in finding features that have a positive influence
-on class $$c$$. This means that the activation score should be positive, and to have a positive gradient, the feature map should be positive as well. Negative gradients
-most likely belong to features in the image that are correlated with classes that are not $$c$$. Therefore, we utilize ReLU to suppress negative gradients and keep positive gradients:
+on class $$c$$. This means that the activation score should be positive, and to have a positive gradient, the feature map should be positive as well. Therefore, with Grad-CAM
+we can highlight regions in the image, or features, that contribute to increasing the class activation score. On the other hand, negative gradients
+most likely belong to features in the image that are correlated with classes that are not $$c$$, and therefore we apply ReLU function to suppress negative gradients and only keep positive gradients:
$$Y_c = ReLU (\sum_{k} {\alpha_k}^{c} \cdot F^{k}) \text{ where } {\alpha_k}^{c} = \frac{1}{Z} \sum_{i}\sum_{j} \frac{\delta Y^{c}}{\delta A_{(i,j)}^{k}} (6)$$
Equation #6 above is the final equation for Grad-CAM. Now, even though CAMs were widely used for classification, they could definitely also be used for semantic segmentation tasks
where each pixel is labeled as a class. In this case, however, we have to modify equation #6 a bit. This is because image classification outputs a single class distribution (ex. this image is
a dog), image semantic segmentation doesn't, as it outputs logits for every pixel $$(a,b)$$ predicted for class $$c$$. Therefore, it makes sense to sum all of these pixels as the activation score so that
-it becomes a single class distribution like image classification. We therefore modify the $$Y^{c}$$ in the gradient to $$\sum_{(a,b) \in M}{y_{(a,b)}}^{c}$$ where $$M$$ is a set of all pixel indices that belong
+it becomes a single class distribution like image classification. We therefore modify the $$Y^{c}$$ in the gradient to $$\sum_{(a,b) \in M}{Y_{(a,b)}}^{c}$$ where $$M$$ is a set of all pixel indices that belong
to class $$c$$ in the segmentation prediction. The final equation for Grad-CAM in image segmentation is shown below:
-$$Y_c = ReLU (\sum_{k} {\alpha_k}^{c} \cdot F^{k}) \text{ where } {\alpha_k}^{c} = \frac{1}{Z} \sum_{i}\sum_{j} \frac{\delta Y^{c}}{\delta A_{(i,j)}^{k}} (6)$$
-
+$$Y_c = ReLU (\sum_{k} {\alpha_k}^{c} \cdot F^{k}) \text{ where } {\alpha_k}^{c} = \frac{1}{Z} \sum_{i}\sum_{j} \frac{\delta \sum_{(a,b) \in M}{Y_{(a,b)}}^{c}}{\delta A_{(i,j)}^{k}} (7)$$
-
-However, if we look at the equation for Grad-CAM carefully, there is a critical issue- the gradients are averaged due to global average pooling (GAP). Why can this be a problem?
+However, if we look at the equation #6 or #7 above for Grad-CAM carefully, there is a critical issue- the gradients are averaged due to global average pooling (GAP). Why can this be a problem?
Look at the diagram below:
+
+ Diagram comparing HiResCAM and GradCAM and how HiResCAM alleviates the problem of averaging the gradients in GradCAM.
+
+As seen in the diagram above,
diff --git a/assets/images/hirescam.png b/assets/images/hirescam.png
new file mode 100644
index 0000000000000000000000000000000000000000..d53b854920b4ae0fabae93e4895c7eeb3e5acdff
GIT binary patch
literal 580577
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