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

Alex님의 프로필 이미지
Alex

작성한 질문수

딥러닝 CNN 완벽 가이드 - Fundamental 편

Feature Extractor와 CNN 개요

선생님 질문입니다!

작성

·

325

0

뒤에 수업까지 듣고 와서 이렇게 다시 질문드립니다!

CNN이 Dense layer와 다르게 universal한 피처맵을 만들어 덴스레이어로 보내기 때문에 이미지내 다양한 위치에 있는 object를 찾을 수 있다고 강의를 통하여 배웠는데.

그렇다면 이 필터들은 많은 이미지 내에서 다양한 위치에있는 object를 찾아낼 수 있게 끔 업데이트가 되는 것이 맞는지요.

만약 맞다면 데이터 전처리를 할 때, 해당 물체의 위치가 되도록 가변적이지 않도록 하는 것이 모델 학습능력을 상승시키는 거라 생각하는데, 잘못 이해하고 있는건지 답변 부탁드리겠습니다!

답변 1

0

권 철민님의 프로필 이미지
권 철민
지식공유자

CNN이 Dense layer와 다르게 universal한 피처맵을 만들어 덴스레이어로 보내기 때문에 이미지내 다양한 위치에 있는 object를 찾을 수 있다고 강의를 통하여 배웠는데.

=> CNN이 이미지내 다양한 위치에 있는 object를 판별하는데 Dense Layer보다 뛰어난 이유는 object의 이미지 위치에 Dense Layer보다 크게 모델 성능이 좌우 되지 않기 때문입니다.

Dense layer 모델의 경우 object가 한가운데에 있는 이미지 데이터로 학습을 한 모델은 object가 한가운데가 아닌 여러 위치에 놓은 object를 가진 이미지를 판별하게 될 경우 모델 성능이 떨어지게 됩니다. 즉 학습 데이터의 이미지 위치와 실제 검출하려는 이미지 위치가 다른 경우가 실전에서는 빈번한데 이를 커버하기 어려운 단점이 있습니다.

하지만 CNN은 Object의 이미지 위치에 상대적으로 덜 영향을 받는데, 그 이유는 해당 이미지를 특징 지을수 있는 피처들을 자동으로 찾아내서 이러한 피처들을 기반으로 모델을 만들어 주기 때문입니다. 그러니까 이미지내 object들의 외곽선, 색감, 명암대비등 여러가지 요소들을 특징으로 하는 피처들을 자동으로 찾아내 줄 수 있는 것입니다. 이러한 피처들을 찾아내는 역할을 하는 것이 모델 학습을 통해서 CNN Filter의 최적값을 만들기 때문에 가능해 줍니다.

즉 CNN 모델은 CNN Filter를 통해서 이미지를 보는 시각(사람으로 치면 안경?)을 가지게 되고 이를 기반으로 이미지를 판별하게 되므로 상대적으로 object의 이미지 위치에 모델 성능이 덜 좌우됩니다.

그리고 질문하신

데이터 전처리를 할 때, 해당 물체의 위치가 되도록 가변적이지 않도록 해버리면 오히려 성능이 저하될 수 있습니다. 왜냐하면 실제 예측을 하는 이미지는 학습 데이터와 다른 위치의 이미지가 들어올 수 있기에 오히려 해당 물체의 위치가 다양하게 존재할 수 있도록 학습시에 이미지를 만들어 줘야 합니다. 때문에 학습시 image augmentation을 수행하는 것은 모델 성능에 중요한 요소입니다(augmentation은 이후 강의에서 언급드립니다)

 

감사합니다.

Alex님의 프로필 이미지
Alex
질문자

질문에 대한 답변을 해주실 때 마다 답변도 너무 세심하게 잘 해주셔서 어떻게 감사의 표현을 드려야 할지 모르겠습니다... 너무 감사합니다!

Alex님의 프로필 이미지
Alex

작성한 질문수

질문하기