Post

๐Ÿ“ Peeking into the Mind of AI: Understanding CAM! - AI์˜ ์†๋งˆ์Œ์„ ๋“ค์—ฌ๋‹ค๋ณธ๋‹ค!! CAM ์•Œ์•„๋ณด๊ธฐ

๐Ÿ“ Peeking into the Mind of AI: Understanding CAM! - AI์˜ ์†๋งˆ์Œ์„ ๋“ค์—ฌ๋‹ค๋ณธ๋‹ค!! CAM ์•Œ์•„๋ณด๊ธฐ

(English) Peeking into the Mind of AI: Understanding CAM!

cartoon

A groundbreaking study that allowed us to peek into a computerโ€™s decision-making process: CAM!

Learn About the Groundbreaking Research of CAM! (CVPR 2016, 13,000+ Citations)

paper

This paper was presented at CVPR 2016 and has been cited more than 13,046 times!
In image analysis, not knowing CAM might be a crime!
Even if youโ€™re unfamiliar with the research, youโ€™ve probably seen the image below:

cam_sample

In todayโ€™s post, weโ€™ll take a deep dive into this game-changing research!


๐Ÿค” Why Was CAM Introduced?

Back in the days when AlphaGo made headlines (around 2015), image classification models like ResNet dramatically improved accuracy.
But regardless of whether predictions were right or wrong,
โ€œWhy did the model make that prediction?โ€ was still a tough question.

confuse

Why did it predict this image is a dog?
Is the model really looking at the right part?

This curiosity led to the birth of CAM (Class Activation Map) research.


๐Ÿ” What is CAM (Class Activation Map)?

CAM is a technique that visually shows which part of the image the model focused on to make a prediction.
In other words, it highlights the decisive areas in the form of a heatmap.

As shown in the cartoon thumbnail, CAM allows AI to say:

โ€œI predicted this as a dog because I focused on the eyes and ears!โ€


๐Ÿง  How Does CAM Work? + Example

cam_structure

  1. Extract the feature map from the last convolutional layer of a CNN.
  2. Instead of using the fully connected layerโ€™s class weights (as in traditional models),
    apply Global Average Pooling (GAP) to the feature map to get a feature vector.
  3. Multiply this feature vector by the class-specific weights in the softmax layer
    to calculate a CAM that shows which spatial locations contributed most to the prediction.

If that sounds a bit complicated, letโ€™s compare it side by side to understand it better!

Before We Start: Compare Traditional [Image Classifier] vs. [CAM-based Structure]

  • Traditional: conv โ†’ flatten โ†’ FC โ†’ softmax
  • CAM: conv โ†’ GAP โ†’ FC โ†’ softmax

Traditional Classification Model: Feeding a Single Image (224ร—224) into a CNN with FC Layer

StepData ShapeDescription
๐Ÿ“ท Input Image[3, 224, 224]RGB image
๐Ÿ”„ Last Conv Output[512, 7, 7]512 feature maps of size 7ร—7
๐Ÿ”ƒ Flatten[512 ร— 7 ร— 7] = [25088]Flattened into a vector
๐Ÿงฎ Fully Connected Layer[N_classes]Generates class scores (weight shape = [N_classes, 512])
โš ๏ธ The weights [512] for a specific class are used as class_weight for CAMย ย 
๐ŸŽฏ Softmax[N_classes]Converts scores to probabilities
๐Ÿšซ CAM Not AvailableโŒ Not possibleSpatial information is lost during flattening
  • As shown above, CAM is not possible in this structure.
  • Only the final probabilities [N_classes] are available.
  • N_classes is the number of classes to distinguish (e.g., dog, cat, etc.).
  • The weights used in the Fully Connected Layer serve as class_weight in CAM.

CAM Flow: Feeding a Single Image (224ร—224) into ResNet18 to Generate CAM

StepData ShapeDescription
๐Ÿ“ท Input Image[3, 224, 224]RGB image
๐Ÿ”„ Last Conv Output[512, 7, 7]512 feature maps of size 7ร—7
๐Ÿ”ฅ CAM Calculation[7, 7]Weighted sum of feature maps ร— class_weight
๐Ÿ”ผ Final CAM Image (Upsample)[224, 224]Upsampled to overlay on the original image
๐Ÿ“‰ GAP (Global Average Pooling)[512]Channel-wise average of the [512, 7, 7] feature map
๐Ÿงฎ FC Layer[N_classes]Converts GAP result to class scores
๐ŸŽฏ Softmax[N_classes]Outputs prediction probabilities
  • CAM generates an interpretable heatmap
  • The class prediction from GAP โ†’ FC โ†’ softmax may differ from traditional CNNs!

๐Ÿ“ธ Real Example: How CAM is Actually Used

  • If AI predicts an image as โ€˜dogโ€™,
    CAM highlights the face, ears, and tail regions that contributed most.
  • This allows us to verify if the model made a reasonable prediction.
  • Below is a CAM result for a golden retriever. It seems the model focused on the ears!

golden

In the next post, weโ€™ll dive into the code behind this and explore its structure in detail!

๐Ÿงฐ CAMโ€™s Transformative Impact

  • CAM was one of the first methods to visually explain CNN predictions.
  • It had a massive influence on weakly supervised object localization (WSOL).
  • Inspired follow-up methods like Grad-CAM, which removed architectural constraints.

๐Ÿ’ก Why CAM is Amazing

  • โœ… Helps visually confirm why a model made a prediction
  • โœ… Makes it easier to find errors, bias, and reasoning mistakes
  • โœ… Improves model transparency and trustworthiness

CAM was the beginning of the end for the โ€œblack boxโ€ era in AI.
Even today, researchers are extending CAM into the broader domain of explainable AI (XAI).
Try implementing CAM yourself to take a peek inside your AIโ€™s mind!


(ํ•œ๊ตญ์–ด) AI์˜ ์†๋งˆ์Œ์„ ๋“ค์—ฌ๋‹ค๋ณธ๋‹ค!! CAM ์•Œ์•„๋ณด๊ธฐ

cartoon

์ด๋ฏธ์ง€ ๋ถ„๋ฅ˜์—์žˆ์–ด, ์ปดํ“จํ„ฐ์˜ ์†๋งˆ์Œ์„ ์•Œ๊ฒŒ ํ•ด์ค€ ์—ฐ๊ตฌ CAM!!!

์—„์ฒญ๋‚œ ์—ฐ๊ตฌ, CAM์„ ์•Œ์•„๋ณด์ž!! (CVPR 2016, ์ธ์šฉ 13,000ํšŒ+)

paper

2016๋…„ CVPR์—์„œ ๋ฐœํ‘œ๋œ ์ด ๋…ผ๋ฌธ, ์ธ์šฉ์ˆ˜๊ฐ€ ๋ฌด๋ ค 13,046ํšŒ์— ๋‹ฌํ•ฉ๋‹ˆ๋‹ค!
์ด๋ฏธ์ง€ ๋ถ„์„์—์„œ โ€˜CAMโ€™ ์„ ๋ชจ๋ฅด๋ฉด ๊ฐ„์ฒฉ!? ๋น„๋ก ์—ฐ๊ตฌ๋Š” ๋ชจ๋ฅผ์ˆ˜ ์žˆ์ง€๋งŒ ์•„๋ž˜์˜ ์ด๋ฏธ์ง€๋Š” ๋งŽ์ด ๋ณด์…จ์„๋“ฏ ํ•˜๋„ค์š”~~!

cam_sample

์˜ค๋Š˜์˜ ํฌ์ŠคํŒ…์€ ์ด ํš๊ธฐ์ ์ธ ์—ฐ๊ตฌ๋ฅผ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค!!!


๐Ÿค” ์™œ CAM์ด ๋“ฑ์žฅํ–ˆ์„๊นŒ?

์•ŒํŒŒ๊ณ ๊ฐ€ ํ™”์ œ๊ฐ€ ๋˜์—ˆ๋˜ ์‹œ์ ˆ(2015๋…„ ์ฆˆ์Œ), ์ด๋ฏธ์ง€ ๋ถ„๋ฅ˜ ๋ถ„์•ผ์—์„œ๋Š” ResNet ๋“ฑ ๋›ฐ์–ด๋‚œ ๋ชจ๋ธ์ด ๋‚˜์™€
์ •ํ™•๋„๊ฐ€ ๋ˆˆ์— ๋„๊ฒŒ ํ–ฅ์ƒ๋˜์—ˆ์ง€๋งŒ,
ํ‹€๋ฆฌ๋Š”์ง€, ๋งž๋Š”์ง€ ๊ฒฐ๊ณผ๋ฅผ ๋– ๋‚˜์„œ,
โ€œ๋ชจ๋ธ์ด ์™œ ๊ทธ๋Ÿฐ ์˜ˆ์ธก์„ ํ–ˆ๋Š”์ง€โ€์— ๋Œ€ํ•œ ํ•ด์„์€ ์—ฌ์ „ํžˆ ์–ด๋ ค์šด ์ˆ™์ œ์˜€์Šต๋‹ˆ๋‹ค.

confuse

์™œ ์ด ์ด๋ฏธ์ง€๋ฅผ ๊ฐ•์•„์ง€๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์ง€?
์ •๋ง ๋ชจ๋ธ์ด ์ œ๋Œ€๋กœ ๋ณด๊ณ  ์žˆ๋Š” ๊ฑธ๊นŒ?

์ด๋Ÿฐ ๊ถ๊ธˆ์ฆ์—์„œ CAM(Class Activation Map) ์—ฐ๊ตฌ๊ฐ€ ํƒ„์ƒํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.


๐Ÿ” CAM(Class Activation Map)์ด๋ž€?

CAM์€ ์ด๋ฏธ์ง€ ๋ถ„๋ฅ˜ ๋ชจ๋ธ์ด ์–ด๋–ค ๋ถ€๋ถ„์„ ๊ทผ๊ฑฐ๋กœ ์˜ˆ์ธกํ–ˆ๋Š”์ง€ ์‹œ๊ฐ์ ์œผ๋กœ ๋ณด์—ฌ์ฃผ๋Š” ๊ธฐ๋ฒ•์ž…๋‹ˆ๋‹ค.
์ฆ‰, ์ด๋ฏธ์ง€์˜ ๊ฒฐ์ •์  ๋ถ€์œ„๋ฅผ heatmap์œผ๋กœ ํ‘œ์‹œํ•ด์ฃผ์ฃ !

์ธ๋„ค์ผ ๋งŒํ™”์—์„œ์ฒ˜๋Ÿผ, AI๊ฐ€

โ€œ์ด ๊ฐ•์•„์ง€์˜ ๋ˆˆ๊ณผ ๊ท€๋ฅผ ๋ณด๊ณ  โ€˜๊ฐ•์•„์ง€โ€™๋ผ๊ณ  ํ–ˆ์–ด์š”!โ€
๋ผ๊ณ  ์„ค๋ช…ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค๋‹ˆ๋‹ค.


๐Ÿง  CAM์˜ ์ž‘๋™ ์›๋ฆฌ + ์˜ˆ์‹œ

cam_structure

  1. CNN์˜ ๋งˆ์ง€๋ง‰ ํ•ฉ์„ฑ๊ณฑ ์ธต์—์„œ ๋‚˜์˜จ feature map์„ ๋ฝ‘์•„๋ƒ…๋‹ˆ๋‹ค.
  2. Fully Connected Layer์˜ ํด๋ž˜์Šค๋ณ„ ๊ฐ€์ค‘์น˜๋ฅผ ๊ฐ€์ ธ์ ธ์˜ค๋Š” ๋Œ€์‹ !! (๊ธฐ์กด ์ด๋ฏธ์ง€ ๋ถ„๋ฅ˜์—์„œ๋Š” ์ด๋ ‡๊ฒŒ ํ–ˆ์—ˆ๋”๋ ˆ์š”!!),
    Global Average Pooling (GAP) ์„ ํ†ตํ•ด ๊ฐ feature map์„ ํ•˜๋‚˜์˜ ๊ฐ’์œผ๋กœ ํ‰๊ท  ๋‚ด์–ด feature ๋ฒกํ„ฐ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
  3. ๊ทธ feature vector์— ๋Œ€ํ•ด Softmax์— ์—ฐ๊ฒฐ๋œ ํด๋ž˜์Šค๋ณ„ ๊ฐ€์ค‘์น˜๋ฅผ ๊ณฑํ•ด์„œ CAM์„ ๊ณ„์‚ฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์–ด๋А ์œ„์น˜๊ฐ€ ํ•ด๋‹น ํด๋ž˜์Šค ์˜ˆ์ธก์— ๊ธฐ์—ฌํ–ˆ๋Š”์ง€ heatmap ํ˜•ํƒœ๋กœ ์‹œ๊ฐํ™”ํ•ฉ๋‹ˆ๋‹ค.
์œ„ ๋‚ด์šฉ์ด ์š”์•ฝ์ด์ง€๋งŒ,, ์กฐ๊ธˆ ์–ด๋ ค์šธ์ˆ˜๋„!? ๊ทธ๋ž˜์„œ ์•„๋ž˜์™€ ๊ฐ™์ด ๋น„๊ตํ•ด๋ณด๋ฉฐ ์•Œ์•„๋ด…์‹œ๋‹ค!!

์‹œ์ž‘ ์ „, [CAM ๊ตฌ์กฐ]์˜ ์ฐจ์ด ๊ฐ„๋‹จํžˆ๋ณด๊ธฐ!!!

  • ๊ธฐ์กด ๊ตฌ์กฐ: ์ด๋ฏธ์ง€ โ†’ conv โ†’ flatten โ†’ FC โ†’ softmax
  • CAM ๊ตฌ์กฐ: ์ด๋ฏธ์ง€ โ†’ conv โ†’ GAP โ†’ FC โ†’ softmax

๊ธฐ์กด์˜ ๋ถ„๋ฅ˜๋ชจ๋ธ ์›๋ฆฌ!! : ํ•œ ์žฅ์˜ ์ด๋ฏธ์ง€ (224ร—224) ๋ฅผ ์ผ๋ฐ˜์ ์ธ CNN (FC layer ํฌํ•จ) ๋ถ„๋ฅ˜ ๋ชจ๋ธ๋„ฃ์„๋–„!!

| ๋‹จ๊ณ„ | ๋ฐ์ดํ„ฐ ํ˜•ํƒœ | ์„ค๋ช… | |โ€”โ€”|โ€”โ€”โ€”โ€”โ€”โ€”โ€“|โ€”โ€”| | ๐Ÿ“ท ์ž…๋ ฅ ์ด๋ฏธ์ง€ | [3, 224, 224] | RGB ์ด๋ฏธ์ง€ | | ๐Ÿ”„ CNN ๋งˆ์ง€๋ง‰ conv ์ถœ๋ ฅ | [512, 7, 7] | 512๊ฐœ์˜ 7ร—7 feature map | | ๐Ÿ”ƒ Flatten | [512 ร— 7 ร— 7] = [25088] | ๊ณต๊ฐ„ ์ •๋ณด๋ฅผ ํŽผ์ณ์„œ 1์ฐจ์› ๋ฒกํ„ฐ๋กœ ๋งŒ๋“ฆ | | ๐Ÿงฎ Fully Connected Layer | [N_classes] | FC Layer์—์„œ ์˜ˆ์ธก score ์ƒ์„ฑ
๐Ÿ’ก weight shape = [N_classes, 25088]
โš ๏ธ ์—ฌ๊ธฐ์„œ ํŠน์ • ํด๋ž˜์Šค์˜ weight [25088] ์ค‘ ์ผ๋ถ€๊ฐ€ CAM์˜ class_weight๋กœ ์“ฐ์ž„ | | ๐ŸŽฏ Softmax | [N_classes] | ํ™•๋ฅ ํ™”๋œ ์˜ˆ์ธก ๊ฒฐ๊ณผ | | ๐Ÿšซ CAM ๋ถˆ๊ฐ€๋Šฅ | โŒ ์—†์Œ | ๊ณต๊ฐ„ ์ •๋ณด๊ฐ€ flatten์œผ๋กœ ์‚ฌ๋ผ์ ธ CAM ์ƒ์„ฑ์ด ๋ถˆ๊ฐ€๋Šฅ |

  • ์œ„์™€ ๊ฐ™์ด CAM์€ ๋ถˆ๊ฐ€ํ•˜๋ฉฐ, [N_classes] ๋“ค์— ๋Œ€ํ•œ ํ™•๋ฅ ๊ฐ’๋งŒ ๋‚˜์˜ค๊ฒŒ๋ฉ๋‹ˆ๋‹ค!!
  • N_classes๋ž€ ๊ฐ์ฑ„๋กœ ๊ตฌ๋ถ„ํ•˜๊ณ ์žํ•˜๋Š” ๋Œ€์ƒ์˜ ๊ฐฏ์ˆ˜ (ex. ๊ฐ•์•„์ง€,๊ณ ์–‘์ด ๋“ฑ ๊ฐœ์ฒด์˜ ๊ฐฏ์ˆ˜)
  • ์ด๋•Œ Fully Connected Layer ์— ์‚ฌ์šฉ๋˜๋Š” weight!! ๊ทธ weight๊ฐ€ class_weight๋กœ์„œ CAM์— ํ™œ์šฉ๋˜์–ด์š”!!

ํ•œ ์žฅ์˜ ์ด๋ฏธ์ง€ (224ร—224) ๋ฅผ ResNet18์— ๋„ฃ์–ด CAM ์ด๋ฏธ์ง€ ๋งŒ๋“œ๋Š” ๊ณผ์ •!!

๋‹จ๊ณ„๋ฐ์ดํ„ฐ ํ˜•ํƒœ์„ค๋ช…
๐Ÿ“ท ์ž…๋ ฅ ์ด๋ฏธ์ง€[3, 224, 224]RGB ์ด๋ฏธ์ง€
๐Ÿ”„ CNN(resnet) ๋งˆ์ง€๋ง‰ conv ์ถœ๋ ฅ[512, 7, 7]512๊ฐœ์˜ 7ร—7 feature map
๐Ÿ”ฅ CAM ๊ณ„์‚ฐ : CNN(resnet) ๋งˆ์ง€๋ง‰ conv ์ถœ๋ ฅ class_weight๊ณผ feature map์˜ weighted sum[7, 7]7ร—7 feature map
๐Ÿ”ผ ์ตœ์ข… CAM ์ด๋ฏธ์ง€ ๋งŒ๋“ค๊ธฐ (Upsample)[224, 224]์›๋ณธ ์ด๋ฏธ์ง€ ์œ„์— ํžˆํŠธ๋งต overlay ๊ฐ€๋Šฅ
๐Ÿ“‰ GAP(Global Average Pooling)[512]feature map[512, 7, 7]์˜ ์ฑ„๋„๋ณ„ ํ‰๊ท  ๋ฒกํ„ฐ
๐Ÿงฎ FC Layer[N_classes]GAP ๊ฒฐ๊ณผ๋ฅผ ํด๋ž˜์Šค๋ณ„ score๋กœ ๋ณ€ํ™˜
๐ŸŽฏ Softmax[N_classes]์˜ˆ์ธก ํด๋ž˜์Šค ํ™•๋ฅ ๊ฐ’ ์ถœ๋ ฅ
  • CAM์ด๋ฏธ์ง€๋ฅผ ๋งŒ๋“ค๊ณ  ์—ฌ๊ธฐ์„œ๋„ ์ตœ์ข… Class๊ตฌ๋ถ„์„ ํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ, ๊ธฐ์กด์˜ ๋ถ„๋ฅ˜๋ชจ๋ธ๊ณผ ๋‹ค๋ฅธ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ฌ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค!!
  • 7X7 ์‚ฌ์ด์ฆˆ์˜ featuremap์€ Nearest Neighbor Interpolation (์ตœ๊ทผ์ ‘ ์ด์›ƒ ๋ณด๊ฐ„๋ฒ•) ๋“ฑ์˜ ๋ฐฉ์‹์œผ๋กœ interpolate๋˜๋ฉฐ Upsample ๋ฉ๋‹ˆ๋‹ค!

๐Ÿ“ธ CAM์˜ ์‹ค์ œ ํ™œ์šฉ ์˜ˆ์‹œ

  • ์˜ˆ๋ฅผ ๋“ค์–ด, AI๊ฐ€ ๊ฐ•์•„์ง€ ์ด๋ฏธ์ง€๋ฅผ โ€˜dogโ€™๋กœ ๋ถ„๋ฅ˜ํ–ˆ๋‹ค๋ฉด
    CAM์€ ์–ผ๊ตด, ๊ท€, ๊ผฌ๋ฆฌ ๋“ฑ ๊ฐ•์•„์ง€์˜ ์ฃผ์š” ํŠน์ง• ๋ถ€์œ„๋ฅผ ๋ฐ๊ฒŒ ํ‘œ์‹œํ•ด์ค๋‹ˆ๋‹ค.
  • ์‚ฌ์šฉ์ž๋Š” โ€œAI๊ฐ€ ์ •๋ง ํ•ฉ๋ฆฌ์ ์œผ๋กœ ๋ถ„๋ฅ˜ํ–ˆ๋Š”๊ฐ€?โ€๋ฅผ ์ง๊ด€์ ์œผ๋กœ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์•„๋ž˜๋Š” ๊ณจ๋“  ๋ฆฌํŠธ๋ฆฌ๋ฒ„๋ฅผ CAM์œผ๋กœ ๋ถ„๋ฅ˜ํ•ด๋ณด์•˜์–ด์š”!! ๊ท€๋ถ€๋ถ„์„ ๋ฐ”ํƒ•์œผ๋กœ ๋ถ„๋ฅ˜ํ–ˆ๋‹ค๊ณ ํ•˜๋„ค์š”~~^^
    | ๋‹ค์Œ ํฌ์ŠคํŒ…์—์„œ ์ด ์ฝ”๋“œ๋ฅผ ๋ถ„์„ํ•ด๋ณด๋ฉฐ ๊ตฌ์กฐ์— ๋Œ€ํ•˜์—ฌ ๋” ์ž์„ธํžˆ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค!!

golden


๐Ÿงฐ CAM์ด ๋†€๋ผ์šด ์˜ํ–ฅ๋ ฅ

  • CAM์€ CNN ์˜ˆ์ธก ๊ฒฐ๊ณผ๋ฅผ ์‹œ๊ฐ์ ์œผ๋กœ ์„ค๋ช…ํ•œ ์ตœ์ดˆ ์—ฐ๊ตฌ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค.
  • ์•ฝ์ง€๋„ ํ•™์Šต ๊ธฐ๋ฐ˜ ๊ฐ์ฒด ์ง€์—ญํ™”(Weakly-Supervised Object Localization) ๋ถ„์•ผ์˜ ๋ฐœ์ „์— ํฐ ์˜ํ–ฅ์„ ์ฃผ์—ˆ๊ณ ,
    ์ดํ›„ Grad-CAM ๋“ฑ ๋” ๋‹ค์–‘ํ•œ ํ•ด์„ ๊ฐ€๋Šฅ ๋ฐฉ๋ฒ•์ด ๊ฐœ๋ฐœ๋˜๋Š” ๊ณ„๊ธฐ๊ฐ€ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ’ก ๊ฒฐ๋ก  : CAM์ด ๋†€๋ผ์šด ์ด์œ !!

  • โœ… ๋ชจ๋ธ์˜ ์˜ˆ์ธก ๊ทผ๊ฑฐ๋ฅผ ์‹œ๊ฐ์ ์œผ๋กœ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค
  • โœ… ์ž˜๋ชป๋œ ํŒ๋‹จ, ํŽธํ–ฅ, ์˜ค๋ฅ˜์˜ ์›์ธ์„ ์‰ฝ๊ฒŒ ์ง„๋‹จํ•  ์ˆ˜ ์žˆ๋‹ค
  • โœ… ๋ชจ๋ธ์˜ ์‹ ๋ขฐ์„ฑ๊ณผ ํˆฌ๋ช…์„ฑ์ด ๋Œ€ํญ ํ–ฅ์ƒ๋œ๋‹ค

CAM์€ โ€œAI ๋ธ”๋ž™๋ฐ•์Šคโ€์˜ ๋ฒฝ์„ ํ—ˆ๋ฌด๋Š” ์‹œ์ž‘์ ์ด์—ˆ์Šต๋‹ˆ๋‹ค.
์ง€๊ธˆ๋„ ๋งŽ์€ ์—ฐ๊ตฌ์ž๋“ค์ด ๋‹ค์–‘ํ•œ ํ•ด์„ ๊ฐ€๋Šฅ ์ธ๊ณต์ง€๋Šฅ(XAI) ๋ถ„์•ผ๋กœ ํ™•์žฅํ•ด ๋‚˜๊ฐ€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
์—ฌ๋Ÿฌ๋ถ„๋„ ์ง์ ‘ CAM์„ ์‹ค์Šตํ•ด๋ณด๋ฉฐ AI์˜ ์†๋งˆ์Œ์„ ๋“ค์—ฌ๋‹ค๋ณด๋Š” ๊ฒฝํ—˜์„ ๊ผญ ํ•ด๋ณด์„ธ์š”!

This post is licensed under CC BY 4.0 by the author.