Keras를 사용하여 CNN을 만들고 있는데 plot_model()
으로 모델을 시각화하고 싶습니다.plot_model()의 Keras 레이어 모양
Conv2d
레이어의 모양을 보면 내가 알아낼 수없는 것이 있습니다. 의 내 Conv2d
층 커널 크기 [8 x 8]
을 가지고 있다고 가정 해 봅시다
은 보폭이 [4 by 4]
이며, 패딩 'same'
내가 16 개 기능지도를합니다.
이 레이어의 입력 모양은 [None, 3, 160, 320]
이고 출력은 [None,1,40,16]
입니다.
'없음'은 샘플이지만 1과 40은 무엇입니까? 나는 16이 특징지도의 숫자라고 생각하니?
padding = 'same'
을 구현 했으므로 이미지 크기가 입력과 같은 너비와 높이를 갖지 않아야합니까? 그렇지 않습니다.
감사합니다.
원시 이미지 입력 데이터는 [샘플, 색상 수, 높이, 너비] 인 [없음, 3, 160, 320]입니다. 잘못된 치수에 회선을 적용하고 있습니까? 이것은 커널이 깊이 x 높이 평면에서 움직이고 있음을 나타 냅니까? 커널이 높이 x 너비 차원으로 움직여서는 안됩니까? – NorwegianClassic
예. 치수가 거꾸로 표시됩니다. Keras 표준'data_format'은''channels_last'' :'(샘플, 높이, 너비, 채널)'입니다. 마지막 위치에서 '16 개의 기능'을 확인하십시오. –
레이어에'data_format = 'channels_first''를 추가하거나' \ .keras \ keras.json' 파일에서 전역 설정을 변경하여 원하는 경우 변경할 수 있습니다. ---''channels_last''는 마지막 차원을 사용하는 특정 분류 문제, 손실 및 활성화에 대해 몇 가지 이점이 있습니다. –