해결된 질문
작성
·
385
답변 1
1
안녕하십니까,
잘 듣고 계시다니, 저도 기분이 좋군요 ^^
좋은 질문이군요.
일반적으로 CNN 모델을 만들때 Layer들을 추가할 때 마다 CNN 필터의 갯수를 지속적으로 늘리는 방향성으로 모델을 설계합니다.
보통 필터의 갯수가 많아지면 많아질수록 보다 추상적인 이미지 특성을 추출할 수가 있습니다. 그러니까 필터의 개수가 작으면 좀 더 개별적인 피처 특성 예를 들어 엣지나, 코너등을 추출하는데 중점을 둔다면, 필터의 갯수가 많아질 수록 이들이 결합된 좀 더 추상적이고 고차원적인 특성을 추출할 수 있습니다. (제가 직접 테스트 해본것은 아니지만, 인터넷에서 찾아보면, 작은 갯수의 필터에서 세부적인 특성들을 뽑아내고, 많은 갯수의 필터에서 좀 더 추상적이고 보다 image classification에 직접적으로 적용될 수 있는 특성들을 만들어내는 것을 시각해 해놓은 자료 들이 있습니다. )
때문에 처음에는 적은 갯수의 필터로 부터 점진적으로 필터의 갯수를 높이는 방식으로 CNN 모델이 일반적으로 만들어집니다. 사실 저도 직접 테스트 해보진 않았지만, 말씀하신대로 필터의 갯수로 중간에 줄였다가 늘이거나, 또는 계속 줄이는 방식은 앞에 말씀드린 이유로 인해서 상대적으로 모델 성능이 떨어질거라 생각합니다.
나중에 배우시겠지만, 1X1 Conv의 경우는 파라미터의 갯수를 줄이기 위해서 의도적으로 필터의 갯수를 줄일 수도 있습니다. 이같은 경우를 제외하고는 일반적인 CNN모델은 점진적으로 필터의 갯수를 늘리는 방식으로 모델이 생성됩니다.
감사합니다.
아아 마침 저도 필터의 갯수를 줄였다가 늘리는 시도를 해보니 성능이 떨어지더라구요..
명확한 이유를 몰랐었는데 이제 이해가 됩니다 감사합니다!