inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

딥러닝 CNN 완벽 가이드 - TFKeras 버전

CNN을 이용하여 Fashion MNIST 예측 모델 구현하기

모델 과적합 관련

642

data_buddha

작성한 질문수 7

0

선생님 안녕하세요.

강의 4분30초 부근 만들어진 모델을 test데이터로 성능을 측정했을 때, 정확도가 0.92정도로 꽤 높다고 생각합니다.

하지만 강의에선 flatten으로 인해 파라미터 개수가 급격히 증가하여 과적합이 일어났다고 설명하셨는데, 만약 과적합이 일어났다면 test데이터로 성능을 측정했을 때 더 낮은 정확도가 나와야하는것 아닌가요?

train데이터셋으로 모델을 훈련시킬 때 정확도가 99%가 나왔기 때문에 과적합이라고 설명해주신건 이해를 했습니다. 하지만 test데이터셋으로 모델 성능평가를 했을 때 높은 정확도가 나왔음에도 과적합이라고 생각하는건 이해가 되지 않아서 문의 드립니다.

머신러닝 딥러닝 keras tensorflow kaggle cnn

답변 1

0

권 철민

안녕하십니까,

질문의 맥락을 잘 이해했는지 모르겠습니다.

질문해 주신,

하지만 강의에선 flatten으로 인해 파라미터 개수가 급격히 증가하여 과적합이 일어났다고 설명하셨는데, 만약 과적합이 일어났다면 test데이터로 성능을 측정했을 때 더 낮은 정확도가 나와야하는것 아닌가요?

=> 에서 어느 정도 낮은 정확도가 나와야 과적합으로 생각하실지는 잘 모르겠습니다만,

과적합은 학습 데이터의 모델 성능과 검증 또는 테스트 데이터의 모델 성능간의 차이가 발생할 때를 지칭합니다. 그리고 어떤 딥러닝 모델이라도 과적합은 발생할 수 밖에 없습니다. 또한 어느 정도 성능 차이가 나야 과적합으로 결정하게 되는지의 기준은 없습니다.

다만 학습과 테스트 시에 성능 차이가 나면 과적합의 정도를 줄이기 위해서 여러가지 기법을 통해서 개선을 하게 됩니다.

과적합을 발생 시키는 요인은 매우 많습니다(이런 과적합의 문제를 해결하는 기법들은 앞으로 강의에서도 많이 설명 드릴 것 입니다). 그 중에서 모델의 가중치(파라미터) 갯수가 너무 많은 것도 한가지 요인입니다. 특히나 최종 Dense layer에서 파라미터 갯수가 너무 많을 경우 학습 데이터에만 최적화된 모델로 가중치가 학습될 가능성이 높습니다. 때문에 이러한 문제를 개선하고자 Drop out 기법이 도입된 것입니다.

물론 Drop out이 언제나 과적합을 개선하는 것은 아니지만, 일반적으로 약간의 성능 개선에 도움을 줄 수 있습니다.

추가적으로 말씀드리면 데이터 세트가 Fashion Mnist와 같은 정돈되고 명확한 이미지 데이터라 테스트 데이터가 90%가 넘는 성능이 나왔지만, 다양한 이미지를 가지는 데이터 세트였다면, 이 정도 성능을 발휘하기는 어려울 수 있으며, 학습과 테스트 데이터의 성능 차이가 충분히 과적합이라고 여겨질 정도로 더 발생할 수 있었을 것입니다.

원하시는 답변이 아니면 다시 말씀해 주십시요.

 

감사합니다.

 

 

 

 

 

resize 질문

0

51

1

20251212 Kaggle 런타임에 scikit-learn 설치 실패 트러블 슈팅

0

76

1

Loss와 매트릭 관계

0

62

2

Boston 코랩 실습

0

164

2

배치 정규화의 이해와 적용 2 강의 질문

0

136

2

Augmentation원본에 적용해서 데이터 갯수 자체를 늘리는 행위는 의미가있나요?

0

145

2

Conv함수 안에 activation 을 넣지 않는 이유가 뭔지 궁금합니다.

0

206

2

소프트맥스 관련 질문입니다

0

208

1

강의 관련 질문입니다

0

151

2

residual block과 identity block의 차이

0

190

2

옵티마이저와 경사하강법의 차이가 궁금합니다.

1

240

1

실습 환경

0

165

2

입력 이미지 크기

0

244

2

데이터 증강

0

196

2

albumentations ShiftScaleRotate

0

207

1

Model Input Size 관련

0

281

1

마지막에 bird -> frog 말고도 deer -> frog 도 잘못된것 아닌가요??

0

204

1

일반적인 질문 (kaggle notebook사용)

0

272

2

실무에서 Augmentation 적용 시

0

338

2

안녕하세요 교수님

0

231

1

가중치 초기화(Weight Initialization) 질문입니다.

0

327

1

테스트 데이터셋 predict의 'NoneType' object has no attribute 'shape' 오류

0

409

1

학습이 이상하게 됩니다.

2

1036

2

boston import가 안됩니다

0

229

1