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

backboss님의 프로필 이미지

작성한 질문수

수학 없이 시작하는 인공지능 첫걸음: 기초부터 최신 트렌드까지

22강. 오픈 데이터셋을 활용해서 왜 데이터가 AI에서 중요한지 확인해보기[22.01 추가]

커널 관련 질문 드립니다.

해결된 질문

작성

·

381

0

 CNN 에서 커널이 참 중요 한데

커널 데이터는 누가 어떻게 만들어 주나요

답변 1

0

김지훈님의 프로필 이미지
김지훈
지식공유자

안녕하세요. backboss님!

CNN은 커널(혹은 필터)을 학습합니다.

타겟으로 한 클래스(개, 고양이 등)를 잘 찾아낼 수 있는 적합한 커널의 값을 찾아가는 과정이 바로 CNN 모델이 학습하는 것을 의미합니다!

self.conv1 = nn.Conv2d(1, 32, 3, 1)
self.conv2 = nn.Conv2d(32, 64, 3, 1)
self.conv3 = nn.Conv2d(64, 128, 3, 1)

실습 코드 중, 위의 코드를 통해 커널을 만들어준 것이며, 각각의 코드를 해석해보면

  • 첫번째 코드는 1채널(저희가 사용한 데이터는 흑백 데이터이므로 채널이 1입니다.)을 입력 받고, 패딩을 1로 하는 3X3의 사이즈의 커널을 32개 만들어라.

  • 두번째 코드는 32채널(첫번째 코드에서 32개의 커널이 만들어졌고, 그 커널들을 모두 입력으로 받습니다)을 입력으로 받고, 패딩을 1로 하는 3X3의 사이즈의 커널을 64개 만들어라.

  • 세번째 코드는 64채널, 패딩을 1로 하는 3X3의 사이즈의 커널을 128개를 만드는 것을 의미합니다.

그리고 이렇게 만들어진 커널들은 각 이미지들을 순회하며 클래스들의 특징을 학습하게 됩니다.

 

궁금하신게 있으시면, 언제든지 추가로 질문 남겨주세요!

감사합니다.

 

backboss님의 프로필 이미지

작성한 질문수

질문하기