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

sec.sensor님의 프로필 이미지
sec.sensor

작성한 질문수

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

쉽게 성능 향상 시키기 - 학습 된 모델(Pretrained Model)

8강 전이학습에서 kernel size 관련 질문 드립니다.

해결된 질문

작성

·

762

1

  1. 커널 사이즈의 의미가 먼가요?

  2. 커널 사이즈를 input size에 맞게 대략 어림잡아 pre-trained 모델 (7, 7) -> (3, 3)으로 바꾸면 되는건가요?

    예를들어, (2, 2) 로 바꾸는 것과 어떤 차이가 있을까요?

답변 1

0

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

안녕하세요!

좋은 질문입니다.

  1. 커널 사이즈는 합성곱 필터의 크기(사이즈)입니다.

    "필터의 크기 = 커널의 크기 = 합성곱 윈도우의 크기" 모두 같은 말입니다 :)

     

  2. 7x7필터를 3x3 필터로 크기를 줄여서 사용하겠다는 의미입니다. 말씀하신대로 해당 모델에서는 CIFAR10의 이미지 사이즈가 작기 때문에 7x7 필터를 사용하게 되면 오류가 발생합니다. 그렇기 때문에 사이즈를 줄여준 것입니다. 필터의 크기는 정해진 규칙이 없기 때문에 문제에 따라 적절한 크기로 정해주시면 됩니다.

     

    일반적으로 합성곱 필터는 1x1, 3x3, 5x5, 7x7 필터를 많이 사용합니다. 따라서 언급하신 2x2는 풀링에서 자주 사용되지만 합성곱 필터에서는 사용하지 않습니다. (물론 구현은 할 수 있습니다...)

     

    추가적으로 간단히 말씀드리면 홀수 크기를 사용하는 이유는 이미지의 각 픽셀이 중심이 되어 기준으로 이웃값들과 같이 계산될 수 있기 때문입니다. 즉, 각 픽셀로 부터 특징을 뽑아내는 합성곱 메커니즘에 부합하는 설정이라고 보시면 됩니다. 반대로 풀링은 주변 지역의 대푯값을 뽑는 연산이기 때문에 짝수로 해도 상관없으며 너무 큰 영역에서의 대푯값 추출은 성능에 안 좋은 영향을 미치기 때문에 일반적으로 2x2를 사용합니다.

     

    감사합니다.

sec.sensor님의 프로필 이미지
sec.sensor

작성한 질문수

질문하기