기계학습의 궁극적인 목표는 레이블(Label)이 있는 학습 데이터 셋(training dataset)을 이용하여 학습한 모델을 가지고 시험 데이터 셋(test dataset)를 예측하는 것이다. 이때 시험 데이터 셋은 학습 과정에서 참조할 수 없다고 가정하기 때문에 기계학습 모델은 학습 데이터만을 가지고 시험 데이터를 잘 예측하도록 학습하는 것이 중요하다.
과적합 Overfitting과 해결방법
우리가 데이터셋을 통해 기계를 학습시킬 때 때때로 예기치 못한 여러 문제에 봉착할 수 있다. 그중 중요하면서도 자주 발생하는 과적합과 과소적합에 대해 알아보자.
과적합(Overfitting)은 ‘모델링 대상’을 설명하는데 불필요한 잡음(Noise)을 과도하게 모델에 반영한 상태를 가르킨다. 아래의 그림과 같이 학습 곡선이 부분적으로 톡톡 튀며, 학습 데이터의 양이 필요한 학습 데이터보다 적을 때 발생한다. 다음과 같은 방법으로 과적합 문제를 해결할 수 있다.
1.
학습 데이터의 양을 증가.
2.
특성(Feature)을 줄이기.
3.
정규화(Regularization)
일반적으로 모델의 데이터의 양이 적을 경우, 특정 패턴이나 노이즈까지 쉽게 학습하게 되므로, 이때 발생하는 과적합은 학습 데이터의 양을 늘림으로써 해결할 수 있다. 예를 들어 이미지의 경우에는 이러한 방법인 데이터 증식(Data Augmentation)이 많이 사용되는데 이미지를 돌리거나 노이즈를 추가하고, 일부분을 수정하는 등으로 데이터를 증식시킨다.
또 다른 방법으로는 정규화 작업을 통해 과적합을 조절할 수 있다. 예를 들어 선형회귀에서 다음과 같은 가설을 사용한다고 가정하자.
H = \theta_0+\theta_1x+\theta_2x^2+\theta_3x^3+\theta_4x^4+... 이때 발생하는 과적합을 최소화하기 위해서 Cost 함수를 이용해 P파라미터인 세타 값을 찾을 때 특정 세타 값을 작게 만들어서 영향을 최소화시키는 방법을 사용한다.
Underfitting과 해결방법
때때로 과적합의 반대 현상으로, 모델링 대상을 설명하기에 필요한 신호를 충분히 모델에 반영하지 못할 때가 있다. 이때를 과소적합(Underfitting)이라고 한다. 아래의 그림을 보면 학습한 곡선이 학습 데이터의 값을 제대로 반영하지 못한것을 볼 수 있다. 과소적합을 해결하기 위해서는 다음과 같은 방법을 사용한다,
1.
특성(Feature)을 늘리기.
2.
polynomial features을 추가,
만약 작은 규모의 NN 구성이라면, 즉 특성(feature)이나 매개변수(parameters)가 적은 경우에 과소적합의 경향을 보인다. 이때 데이터 셋을 더 잘 구분할 수 있는 특성을 추가하는 것이 해결방법이 될 수 있다.
이상적인 Normalfitting
과적합과 과소적합의 중간으로 적절한 학습 데이터를 기반과 적절한 특성으로 학습과 검증의 에러 발생이 가장 적다.
실제 세계에서는 완벽한 모델을 얻는 것이 매우 어렵다. 한 번에 완벽한 모델을 얻을 수 없고 일반적으로 프로덕션에 사용할 첫 번째 컷 솔루션을 갖게 된 다음 시간이 지남에 따라 수집한 데이터에 대해 모델을 다시 학습하면서 에러를 줄여나가게 된다.
기계학습의 궁극적인 목표는 레이블(Label)이 있는 학습 데이터 셋(training dataset)을 이용하여 학습한 모델을 가지고 시험 데이터 셋(test dataset)를 예측하는 것이다. 이때 시험 데이터 셋은 학습 과정에서 참조할 수 없다고 가정하기 때문에 기계학습 모델은 학습 데이터만을 가지고 시험 데이터를 잘 예측하도록 학습하는 것이 중요하다.
과적합 Overfitting과 해결방법
우리가 데이터셋을 통해 기계를 학습시킬 때 때때로 예기치 못한 여러 문제에 봉착할 수 있다. 그중 중요하면서도 자주 발생하는 과적합과 과소적합에 대해 알아보자.
과적합(Overfitting)은 ‘모델링 대상’을 설명하는데 불필요한 잡음(Noise)을 과도하게 모델에 반영한 상태를 가르킨다. 아래의 그림과 같이 학습 곡선이 부분적으로 톡톡 튀며, 학습 데이터의 양이 필요한 학습 데이터보다 적을 때 발생한다. 다음과 같은 방법으로 과적합 문제를 해결할 수 있다.
1.
학습 데이터의 양을 증가.
2.
특성(Feature)을 줄이기.
3.
정규화(Regularization)
일반적으로 모델의 데이터의 양이 적을 경우, 특정 패턴이나 노이즈까지 쉽게 학습하게 되므로, 이때 발생하는 과적합은 학습 데이터의 양을 늘림으로써 해결할 수 있다. 예를 들어 이미지의 경우에는 이러한 방법인 데이터 증식(Data Augmentation)이 많이 사용되는데 이미지를 돌리거나 노이즈를 추가하고, 일부분을 수정하는 등으로 데이터를 증식시킨다.
또 다른 방법으로는 정규화 작업을 통해 과적합을 조절할 수 있다. 예를 들어 선형회귀에서 다음과 같은 가설을 사용한다고 가정하자.
H = \theta_0+\theta_1x+\theta_2x^2+\theta_3x^3+\theta_4x^4+... 이때 발생하는 과적합을 최소화하기 위해서 Cost 함수를 이용해 P파라미터인 세타 값을 찾을 때 특정 세타 값을 작게 만들어서 영향을 최소화시키는 방법을 사용한다.
Underfitting과 해결방법
때때로 과적합의 반대 현상으로, 모델링 대상을 설명하기에 필요한 신호를 충분히 모델에 반영하지 못할 때가 있다. 이때를 과소적합(Underfitting)이라고 한다. 아래의 그림을 보면 학습한 곡선이 학습 데이터의 값을 제대로 반영하지 못한것을 볼 수 있다. 과소적합을 해결하기 위해서는 다음과 같은 방법을 사용한다,
1.
특성(Feature)을 늘리기.
2.
polynomial features을 추가,
만약 작은 규모의 NN 구성이라면, 즉 특성(feature)이나 매개변수(parameters)가 적은 경우에 과소적합의 경향을 보인다. 이때 데이터 셋을 더 잘 구분할 수 있는 특성을 추가하는 것이 해결방법이 될 수 있다.
이상적인 Normalfitting
과적합과 과소적합의 중간으로 적절한 학습 데이터를 기반과 적절한 특성으로 학습과 검증의 에러 발생이 가장 적다.
실제 세계에서는 완벽한 모델을 얻는 것이 매우 어렵다. 한 번에 완벽한 모델을 얻을 수 없고 일반적으로 프로덕션에 사용할 첫 번째 컷 솔루션을 갖게 된 다음 시간이 지남에 따라 수집한 데이터에 대해 모델을 다시 학습하면서 에러를 줄여나가게 된다.
기계학습의 궁극적인 목표는 레이블(Label)이 있는 학습 데이터 셋(training dataset)을 이용하여 학습한 모델을 가지고 시험 데이터 셋(test dataset)를 예측하는 것이다. 이때 시험 데이터 셋은 학습 과정에서 참조할 수 없다고 가정하기 때문에 기계학습 모델은 학습 데이터만을 가지고 시험 데이터를 잘 예측하도록 학습하는 것이 중요하다.
과적합 Overfitting과 해결방법
우리가 데이터셋을 통해 기계를 학습시킬 때 때때로 예기치 못한 여러 문제에 봉착할 수 있다. 그중 중요하면서도 자주 발생하는 과적합과 과소적합에 대해 알아보자.
과적합(Overfitting)은 ‘모델링 대상’을 설명하는데 불필요한 잡음(Noise)을 과도하게 모델에 반영한 상태를 가르킨다. 아래의 그림과 같이 학습 곡선이 부분적으로 톡톡 튀며, 학습 데이터의 양이 필요한 학습 데이터보다 적을 때 발생한다. 다음과 같은 방법으로 과적합 문제를 해결할 수 있다.
1.
학습 데이터의 양을 증가.
2.
특성(Feature)을 줄이기.
3.
정규화(Regularization)
일반적으로 모델의 데이터의 양이 적을 경우, 특정 패턴이나 노이즈까지 쉽게 학습하게 되므로, 이때 발생하는 과적합은 학습 데이터의 양을 늘림으로써 해결할 수 있다. 예를 들어 이미지의 경우에는 이러한 방법인 데이터 증식(Data Augmentation)이 많이 사용되는데 이미지를 돌리거나 노이즈를 추가하고, 일부분을 수정하는 등으로 데이터를 증식시킨다.
또 다른 방법으로는 정규화 작업을 통해 과적합을 조절할 수 있다. 예를 들어 선형회귀에서 다음과 같은 가설을 사용한다고 가정하자.
H = \theta_0+\theta_1x+\theta_2x^2+\theta_3x^3+\theta_4x^4+... 이때 발생하는 과적합을 최소화하기 위해서 Cost 함수를 이용해 P파라미터인 세타 값을 찾을 때 특정 세타 값을 작게 만들어서 영향을 최소화시키는 방법을 사용한다.
Underfitting과 해결방법
때때로 과적합의 반대 현상으로, 모델링 대상을 설명하기에 필요한 신호를 충분히 모델에 반영하지 못할 때가 있다. 이때를 과소적합(Underfitting)이라고 한다. 아래의 그림을 보면 학습한 곡선이 학습 데이터의 값을 제대로 반영하지 못한것을 볼 수 있다. 과소적합을 해결하기 위해서는 다음과 같은 방법을 사용한다,
1.
특성(Feature)을 늘리기.
2.
polynomial features을 추가,
만약 작은 규모의 NN 구성이라면, 즉 특성(feature)이나 매개변수(parameters)가 적은 경우에 과소적합의 경향을 보인다. 이때 데이터 셋을 더 잘 구분할 수 있는 특성을 추가하는 것이 해결방법이 될 수 있다.
이상적인 Normalfitting
과적합과 과소적합의 중간으로 적절한 학습 데이터를 기반과 적절한 특성으로 학습과 검증의 에러 발생이 가장 적다.
실제 세계에서는 완벽한 모델을 얻는 것이 매우 어렵다. 한 번에 완벽한 모델을 얻을 수 없고 일반적으로 프로덕션에 사용할 첫 번째 컷 솔루션을 갖게 된 다음 시간이 지남에 따라 수집한 데이터에 대해 모델을 다시 학습하면서 에러를 줄여나가게 된다.
기계학습의 궁극적인 목표는 레이블(Label)이 있는 학습 데이터 셋(training dataset)을 이용하여 학습한 모델을 가지고 시험 데이터 셋(test dataset)를 예측하는 것이다. 이때 시험 데이터 셋은 학습 과정에서 참조할 수 없다고 가정하기 때문에 기계학습 모델은 학습 데이터만을 가지고 시험 데이터를 잘 예측하도록 학습하는 것이 중요하다.
과적합 Overfitting과 해결방법
우리가 데이터셋을 통해 기계를 학습시킬 때 때때로 예기치 못한 여러 문제에 봉착할 수 있다. 그중 중요하면서도 자주 발생하는 과적합과 과소적합에 대해 알아보자.
과적합(Overfitting)은 ‘모델링 대상’을 설명하는데 불필요한 잡음(Noise)을 과도하게 모델에 반영한 상태를 가르킨다. 아래의 그림과 같이 학습 곡선이 부분적으로 톡톡 튀며, 학습 데이터의 양이 필요한 학습 데이터보다 적을 때 발생한다. 다음과 같은 방법으로 과적합 문제를 해결할 수 있다.
1.
학습 데이터의 양을 증가.
2.
특성(Feature)을 줄이기.
3.
정규화(Regularization)
일반적으로 모델의 데이터의 양이 적을 경우, 특정 패턴이나 노이즈까지 쉽게 학습하게 되므로, 이때 발생하는 과적합은 학습 데이터의 양을 늘림으로써 해결할 수 있다. 예를 들어 이미지의 경우에는 이러한 방법인 데이터 증식(Data Augmentation)이 많이 사용되는데 이미지를 돌리거나 노이즈를 추가하고, 일부분을 수정하는 등으로 데이터를 증식시킨다.
또 다른 방법으로는 정규화 작업을 통해 과적합을 조절할 수 있다. 예를 들어 선형회귀에서 다음과 같은 가설을 사용한다고 가정하자.
H = \theta_0+\theta_1x+\theta_2x^2+\theta_3x^3+\theta_4x^4+... 이때 발생하는 과적합을 최소화하기 위해서 Cost 함수를 이용해 P파라미터인 세타 값을 찾을 때 특정 세타 값을 작게 만들어서 영향을 최소화시키는 방법을 사용한다.
Underfitting과 해결방법
때때로 과적합의 반대 현상으로, 모델링 대상을 설명하기에 필요한 신호를 충분히 모델에 반영하지 못할 때가 있다. 이때를 과소적합(Underfitting)이라고 한다. 아래의 그림을 보면 학습한 곡선이 학습 데이터의 값을 제대로 반영하지 못한것을 볼 수 있다. 과소적합을 해결하기 위해서는 다음과 같은 방법을 사용한다,
1.
특성(Feature)을 늘리기.
2.
polynomial features을 추가,
만약 작은 규모의 NN 구성이라면, 즉 특성(feature)이나 매개변수(parameters)가 적은 경우에 과소적합의 경향을 보인다. 이때 데이터 셋을 더 잘 구분할 수 있는 특성을 추가하는 것이 해결방법이 될 수 있다.
이상적인 Normalfitting
과적합과 과소적합의 중간으로 적절한 학습 데이터를 기반과 적절한 특성으로 학습과 검증의 에러 발생이 가장 적다.
실제 세계에서는 완벽한 모델을 얻는 것이 매우 어렵다. 한 번에 완벽한 모델을 얻을 수 없고 일반적으로 프로덕션에 사용할 첫 번째 컷 솔루션을 갖게 된 다음 시간이 지남에 따라 수집한 데이터에 대해 모델을 다시 학습하면서 에러를 줄여나가게 된다.
기계학습의 궁극적인 목표는 레이블(Label)이 있는 학습 데이터 셋(training dataset)을 이용하여 학습한 모델을 가지고 시험 데이터 셋(test dataset)를 예측하는 것이다. 이때 시험 데이터 셋은 학습 과정에서 참조할 수 없다고 가정하기 때문에 기계학습 모델은 학습 데이터만을 가지고 시험 데이터를 잘 예측하도록 학습하는 것이 중요하다.
과적합 Overfitting과 해결방법
우리가 데이터셋을 통해 기계를 학습시킬 때 때때로 예기치 못한 여러 문제에 봉착할 수 있다. 그중 중요하면서도 자주 발생하는 과적합과 과소적합에 대해 알아보자.
과적합(Overfitting)은 ‘모델링 대상’을 설명하는데 불필요한 잡음(Noise)을 과도하게 모델에 반영한 상태를 가르킨다. 아래의 그림과 같이 학습 곡선이 부분적으로 톡톡 튀며, 학습 데이터의 양이 필요한 학습 데이터보다 적을 때 발생한다. 다음과 같은 방법으로 과적합 문제를 해결할 수 있다.
1.
학습 데이터의 양을 증가.
2.
특성(Feature)을 줄이기.
3.
정규화(Regularization)
일반적으로 모델의 데이터의 양이 적을 경우, 특정 패턴이나 노이즈까지 쉽게 학습하게 되므로, 이때 발생하는 과적합은 학습 데이터의 양을 늘림으로써 해결할 수 있다. 예를 들어 이미지의 경우에는 이러한 방법인 데이터 증식(Data Augmentation)이 많이 사용되는데 이미지를 돌리거나 노이즈를 추가하고, 일부분을 수정하는 등으로 데이터를 증식시킨다.
또 다른 방법으로는 정규화 작업을 통해 과적합을 조절할 수 있다. 예를 들어 선형회귀에서 다음과 같은 가설을 사용한다고 가정하자.
H = \theta_0+\theta_1x+\theta_2x^2+\theta_3x^3+\theta_4x^4+... 이때 발생하는 과적합을 최소화하기 위해서 Cost 함수를 이용해 P파라미터인 세타 값을 찾을 때 특정 세타 값을 작게 만들어서 영향을 최소화시키는 방법을 사용한다.
Underfitting과 해결방법
때때로 과적합의 반대 현상으로, 모델링 대상을 설명하기에 필요한 신호를 충분히 모델에 반영하지 못할 때가 있다. 이때를 과소적합(Underfitting)이라고 한다. 아래의 그림을 보면 학습한 곡선이 학습 데이터의 값을 제대로 반영하지 못한것을 볼 수 있다. 과소적합을 해결하기 위해서는 다음과 같은 방법을 사용한다,
1.
특성(Feature)을 늘리기.
2.
polynomial features을 추가,
만약 작은 규모의 NN 구성이라면, 즉 특성(feature)이나 매개변수(parameters)가 적은 경우에 과소적합의 경향을 보인다. 이때 데이터 셋을 더 잘 구분할 수 있는 특성을 추가하는 것이 해결방법이 될 수 있다.
이상적인 Normalfitting
과적합과 과소적합의 중간으로 적절한 학습 데이터를 기반과 적절한 특성으로 학습과 검증의 에러 발생이 가장 적다.
실제 세계에서는 완벽한 모델을 얻는 것이 매우 어렵다. 한 번에 완벽한 모델을 얻을 수 없고 일반적으로 프로덕션에 사용할 첫 번째 컷 솔루션을 갖게 된 다음 시간이 지남에 따라 수집한 데이터에 대해 모델을 다시 학습하면서 에러를 줄여나가게 된다.
기계학습의 궁극적인 목표는 레이블(Label)이 있는 학습 데이터 셋(training dataset)을 이용하여 학습한 모델을 가지고 시험 데이터 셋(test dataset)를 예측하는 것이다. 이때 시험 데이터 셋은 학습 과정에서 참조할 수 없다고 가정하기 때문에 기계학습 모델은 학습 데이터만을 가지고 시험 데이터를 잘 예측하도록 학습하는 것이 중요하다.
과적합 Overfitting과 해결방법
우리가 데이터셋을 통해 기계를 학습시킬 때 때때로 예기치 못한 여러 문제에 봉착할 수 있다. 그중 중요하면서도 자주 발생하는 과적합과 과소적합에 대해 알아보자.
과적합(Overfitting)은 ‘모델링 대상’을 설명하는데 불필요한 잡음(Noise)을 과도하게 모델에 반영한 상태를 가르킨다. 아래의 그림과 같이 학습 곡선이 부분적으로 톡톡 튀며, 학습 데이터의 양이 필요한 학습 데이터보다 적을 때 발생한다. 다음과 같은 방법으로 과적합 문제를 해결할 수 있다.
1.
학습 데이터의 양을 증가.
2.
특성(Feature)을 줄이기.
3.
정규화(Regularization)
일반적으로 모델의 데이터의 양이 적을 경우, 특정 패턴이나 노이즈까지 쉽게 학습하게 되므로, 이때 발생하는 과적합은 학습 데이터의 양을 늘림으로써 해결할 수 있다. 예를 들어 이미지의 경우에는 이러한 방법인 데이터 증식(Data Augmentation)이 많이 사용되는데 이미지를 돌리거나 노이즈를 추가하고, 일부분을 수정하는 등으로 데이터를 증식시킨다.
또 다른 방법으로는 정규화 작업을 통해 과적합을 조절할 수 있다. 예를 들어 선형회귀에서 다음과 같은 가설을 사용한다고 가정하자.
H = \theta_0+\theta_1x+\theta_2x^2+\theta_3x^3+\theta_4x^4+... 이때 발생하는 과적합을 최소화하기 위해서 Cost 함수를 이용해 P파라미터인 세타 값을 찾을 때 특정 세타 값을 작게 만들어서 영향을 최소화시키는 방법을 사용한다.
Underfitting과 해결방법
때때로 과적합의 반대 현상으로, 모델링 대상을 설명하기에 필요한 신호를 충분히 모델에 반영하지 못할 때가 있다. 이때를 과소적합(Underfitting)이라고 한다. 아래의 그림을 보면 학습한 곡선이 학습 데이터의 값을 제대로 반영하지 못한것을 볼 수 있다. 과소적합을 해결하기 위해서는 다음과 같은 방법을 사용한다,
1.
특성(Feature)을 늘리기.
2.
polynomial features을 추가,
만약 작은 규모의 NN 구성이라면, 즉 특성(feature)이나 매개변수(parameters)가 적은 경우에 과소적합의 경향을 보인다. 이때 데이터 셋을 더 잘 구분할 수 있는 특성을 추가하는 것이 해결방법이 될 수 있다.
이상적인 Normalfitting
과적합과 과소적합의 중간으로 적절한 학습 데이터를 기반과 적절한 특성으로 학습과 검증의 에러 발생이 가장 적다.
실제 세계에서는 완벽한 모델을 얻는 것이 매우 어렵다. 한 번에 완벽한 모델을 얻을 수 없고 일반적으로 프로덕션에 사용할 첫 번째 컷 솔루션을 갖게 된 다음 시간이 지남에 따라 수집한 데이터에 대해 모델을 다시 학습하면서 에러를 줄여나가게 된다.