과대적합3 [머신러닝] 과적합(Overfitting) 해소 방법 - 정규화 이번 포스팅에서는 과적합을 해소하는 방법 중에 정규화에 대해 알아보도록 하겠습니다. 정규화는 제약 조건을 늘려서 모델을 일반화하기 때문에 규제화(Regularization) 라고 부르기도 합니다. 일반적으로 모델의 가중치(weight)에 대한 제약 조건을 추가함으로써 모형이 과도하게 최적화되는 현상을 방지합니다. 즉, 과하게 최적화되는 것을 막는 방법이라고 생각할 수 있습니다. 대표적인 정규화 방법은 라쏘(Lasso)와 릿지(Ridge)가 있습니다. 라쏘(Lasso) 라쏘는 선형 모형에서 쓰이는 MSE 손실함수 = $ \frac{1}{n}\sum (y_{i}-y_{i})^{2} $ 를 사용합니다. 실제 값($ 𝑦_{𝑖} $)과 예측 값($𝑦_{e}$)의 차이가 오차이고, 이 값을 제곱해서 평균 낸 것입니.. 2023. 9. 8. [머신러닝] 과적합(Overfitting) 해소 방법 - 모델 단순화 이번 포스팅에서는 과적합을 해소시키는 방법을 좀 더 상세히 알아보도록 하겠습니다. 먼저 더 많은 데이터를 확보하는 방법과 모델의 복잡도를 제어하는 방법에 대해 다루겠습니다. 데이터 증대(Augmentation) 새로운 데이터를 더 구하는 방법이 있겠지만 현실에서는 만만치 않습니다. 그래서 원본 데이터를 이용하여 데이터를 확장하는 방법을 사용합니다. 이런 방법을 데이터 증대라고 하고 이미지 분류(CNN)에서 특히 많이 사용하며 효과도 좋습니다. 만약 동물 사진을 분류하는 모델이라고 한다면, 원래 이미지 뿐만 아니라 그 사진들을 회전시키거나 약간 찌그러뜨린 수정본들도 함께 학습 시키게 되면 실제 많은 데이터를 확보하는 것 같은 효과가 나타납니다. 이 방법은 훈련 데이터에서만 사용하는 것이며, 테스트 데이터에.. 2023. 9. 7. [머신러닝] 과대적합 vs 과소적합(overfitting, underfitting) 데이터 분석을 하다 보면 한가지 문제에 봉착하게 됩니다. 바로 과적합에 대한 문제입니다. 이번 포스팅에서는 과대적합과 과소적합에 대해서 알아보도록 하겠습니다. Underfitting(과소적합) 먼저 생각해 볼 부분이 왜 Underfitting은 발생하는 걸까요? 대체적으로 Underfitting(과소적합)은 모델이 너무 단순하기 때문에 생깁니다. 우리가 분석하고자 하는 데이터의 내재된 구조를 제대로 학습하지 못할 때 발생하게 됩니다. Underfitting을 알 수 있는 방법은 학습 데이터 오류율이 테스트 데이터 오류율 비슷하게 나오지만 오류율이 여전히 큰 경우는 Underfitting을 의심해 봐야 합니다. 그렇다면 어떻게 Underfitting 해소할 수 있을까요? 모델이 데이터를 담아내기에 충분치 .. 2023. 9. 6. 이전 1 다음