부본 과적합이란 무엇입니까? - Unite.AI
Rescale 미팅 예약

AI 101

과적합이란?

mm
업데이트 on

과적합이란?

신경망을 훈련시킬 때 과적합을 피해야 합니다. 피팅 모델이 훈련 데이터 세트의 패턴을 너무 잘 학습하여 훈련 데이터 세트를 완벽하게 설명하지만 예측력을 다른 데이터 세트에 일반화하지 못하는 기계 학습 및 통계 내 문제입니다.

다시 말해, 과적합 모델의 경우 훈련 데이터 세트에서는 매우 높은 정확도를 나타내지만 향후 수집 및 모델을 통해 실행되는 데이터에서는 낮은 정확도를 보이는 경우가 많습니다. 과적합에 대한 간단한 정의지만, 과적합의 개념을 좀 더 자세히 살펴보겠습니다. 과적합이 어떻게 발생하고 어떻게 피할 수 있는지 살펴보겠습니다.

"맞춤" 및 과소적합 이해

과소적합의 개념을 살펴보는 것이 도움이 됩니다.맞게” 일반적으로 과적합을 논의할 때 사용됩니다. 모델을 훈련할 때 우리는 해당 항목을 설명하는 기능을 기반으로 데이터세트 내 항목의 특성이나 클래스를 예측할 수 있는 프레임워크를 개발하려고 합니다. 모델은 데이터 세트 내의 패턴을 설명하고 이 패턴을 기반으로 미래 데이터 포인트의 클래스를 예측할 수 있어야 합니다. 모델이 훈련 세트의 기능 간의 관계를 더 잘 설명할수록 모델의 "적합성"이 더 높아집니다.

파란색 선은 과소적합된 모델의 예측을 나타내고 녹색 선은 더 적합한 모델을 나타냅니다. 사진: Wikimedia Commons를 통한 Pep Roca, CC BY SA 3.0, (https://commons.wikimedia.org/wiki/File:Reg_ls_curvil%C3%ADnia.svg)

학습 데이터의 특징 간의 관계를 제대로 설명하지 못하여 향후 데이터 예시를 정확하게 분류하지 못하는 모델은 과소적합 훈련 데이터. 피처와 라벨의 실제 교차에 대해 과소적합 모델의 예측된 관계를 그래프로 나타내면 예측이 빗나갑니다. 트레이닝 세트의 실제 값에 레이블이 지정된 그래프가 있는 경우 심하게 과소적합된 모델은 대부분의 데이터 포인트를 크게 놓칠 것입니다. 더 잘 맞는 모델은 개별 데이터 포인트가 예측 값에서 약간만 벗어난 상태에서 데이터 포인트의 중심을 통과하는 경로를 잘라낼 수 있습니다.

과소적합은 정확한 모델을 만들기에 데이터가 충분하지 않거나 비선형 데이터로 선형 모델을 설계하려고 할 때 종종 발생할 수 있습니다. 더 많은 교육 데이터 또는 더 많은 기능은 종종 과소적합을 줄이는 데 도움이 됩니다.

그렇다면 훈련 데이터의 모든 포인트를 완벽하게 설명하는 모델을 만들지 않는 이유는 무엇입니까? 확실히 완벽한 정확도가 바람직합니까? 훈련 데이터의 패턴을 너무 잘 학습한 모델을 만드는 것이 과적합을 일으키는 원인이 됩니다. 모델을 통해 실행하는 교육 데이터 세트 및 기타 향후 데이터 세트는 정확히 동일하지 않습니다. 그것들은 여러 측면에서 매우 유사할 가능성이 높지만 중요한 면에서도 다를 것입니다. 따라서 교육 데이터 세트를 완벽하게 설명하는 모델을 설계한다는 것은 다른 데이터 세트로 잘 일반화되지 않는 기능 간의 관계에 대한 이론으로 끝남을 의미합니다.

과적합 이해

과적합은 모델이 훈련 데이터 세트 내의 세부 사항을 너무 잘 학습할 때 발생하며, 외부 데이터에 대한 예측이 이루어질 때 모델이 어려움을 겪게 됩니다. 이는 모델이 데이터 세트의 특징을 학습할 뿐만 아니라 무작위 변동 또는 변동도 학습할 때 발생할 수 있습니다. 소음 데이터 세트 내에서 이러한 무작위/중요하지 않은 발생에 중요성을 부여합니다.

데이터 특성을 학습할 때 더 유연하기 때문에 비선형 모델을 사용할 때 과대적합이 발생할 가능성이 더 높습니다. 비모수 기계 학습 알고리즘에는 종종 데이터에 대한 모델의 민감도를 제한하여 과적합을 줄이기 위해 적용할 수 있는 다양한 매개변수와 기술이 있습니다. 예로서, 의사 결정 트리 모델 과적합에 매우 민감하지만 가지치기라는 기술을 사용하여 모델이 학습한 세부 정보 중 일부를 무작위로 제거할 수 있습니다.

모델의 예측을 X축과 Y축에 그래프로 나타내면 앞뒤로 지그재그로 움직이는 예측선이 생길 것입니다. 그것의 설명.

과적합 제어

모델을 교육할 때 이상적으로는 모델이 오류를 만들지 않기를 원합니다. 모델의 성능이 교육 데이터 세트의 모든 데이터 포인트에 대해 올바른 예측을 하는 방향으로 수렴되면 적합도가 더 좋아집니다. 적합도가 좋은 모델은 과적합 없이 거의 모든 훈련 데이터 세트를 설명할 수 있습니다.

모델이 훈련됨에 따라 성능은 시간이 지남에 따라 향상됩니다. 모델의 오류율은 학습 시간이 지날수록 감소하지만 일정 지점까지만 감소합니다. 테스트 세트에서 모델의 성능이 다시 상승하기 시작하는 지점은 일반적으로 과적합이 발생하는 지점입니다. 모델에 가장 적합하도록 훈련 세트에서 손실이 가장 적은 지점에서 오류가 다시 증가하기 전에 모델 훈련을 중지하려고 합니다. 학습 시간 동안 모델의 성능을 그래프로 표시하고 손실이 가장 적을 때 학습을 중지함으로써 최적의 중지 지점을 확인할 수 있습니다. 그러나 이러한 과대적합 제어 방법의 한 가지 위험은 테스트 성능을 기반으로 교육의 끝점을 지정하면 테스트 데이터가 교육 절차에 어느 정도 포함되고 순전히 "손대지 않은" 데이터로서의 상태를 잃게 된다는 것입니다.

과적합을 방지할 수 있는 몇 가지 방법이 있습니다. 과적합을 줄이는 한 가지 방법은 모델의 정확도를 추정하여 작동하는 리샘플링 전략을 사용하는 것입니다. 당신은 또한 사용할 수 있습니다 확인 테스트 세트 외에 데이터 세트를 추가하고 테스트 데이터 세트 대신 유효성 검사 세트에 대한 교육 정확도를 플로팅합니다. 이렇게 하면 테스트 데이터 세트가 보이지 않습니다. 널리 사용되는 리샘플링 방법은 K-폴드 교차 검증입니다. 이 기법을 사용하면 데이터를 모델이 훈련된 하위 집합으로 나눈 다음 하위 집합에 대한 모델의 성능을 분석하여 모델이 외부 데이터에서 수행하는 방식을 추정할 수 있습니다.

교차 검증을 사용하는 것은 본 적이 없는 데이터에 대한 모델의 정확도를 추정하는 가장 좋은 방법 중 하나이며, 검증 데이터 세트와 결합할 때 과적합을 최소로 유지할 수 있는 경우가 많습니다.

전문 분야의 블로거 및 프로그래머 기계 학습 깊은 학습 주제. 다니엘은 다른 사람들이 사회적 이익을 위해 AI의 힘을 사용하도록 돕기를 희망합니다.