인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

정찬희님의 프로필 이미지
정찬희

작성한 질문수

[파이토치] 실전 인공지능으로 이어지는 딥러닝 - 기초부터 논문 구현까지

인공지능은 어디를 보고 있을까? - 설명 가능한 AI(Explainable AI) [CVPR 논문 구현]

cam모델 구축 질문드립니다.

작성

·

136

0

1.data, label = trainset[img_sample] # 이미지 한 장과 라벨 불러오기
라고 설명 되 있는데 [img_sample]이 어디서 나온건지 , 무슨역할을 하는건지 모르겠습니다.... ㅜ
2. hook을 통해 feature map을 가져온다고 하셨는데
model.layer4[1].bn2.register_forward_hook(get_activation('final'))
여기서 'final'은 임의로 name을 정하신건가요?
3. data.unsqueeze_(0)
차원을 늘린 이유가 궁굼합니다

답변 1

1

딥러닝호형님의 프로필 이미지
딥러닝호형
지식공유자

안녕하세요!

1. img_sample은 이미지 번호로 for문을 돌면서 번호가 하나씩 들어가는 것입니다. 즉, 이미지 한 장 받아서 한 장의  CAM 이미지를 만드는 것입니다.

2. 맞습니다.

3. CNN 모델에 데이터를 넣으려면 크기가 4차원이 되어야 하는데 한 장을 불러왔기 때문에 3차원 이미지입니다. 따라서 unsqueeze를 통해 0번째 크기를 1로 만들어서 크기가 (채널, 너비, 높이)인 이미지를 (1,채널, 너비, 높이) 크기로 변경하는 것입니다. 참고로 unsqueeze_는 인플래이스 방식으로 data에 data.unsqueeze를 바로 업데이트 해줍니다 :)

정찬희님의 프로필 이미지
정찬희

작성한 질문수

질문하기