과적합이란 무엇인가요?

과적합이란 무엇인가요?

머신 러닝에서 과적합은 모델이 학습 데이터에 과하게 적합한 상태이거나 정확하게 일치할 때 발생하며 그 결과 학습 데이터가 아닌 다른 데이터에서 정확한 예측을 생성하거나 결론을 도출할 수 없게 됩니다. 

과적합은 머신 러닝 모델의 취지에 어긋납니다. 모델을 새로운 데이터로 일반화하면 궁극적으로 머신 러닝 알고리즘을 사용하여 매일 데이터를 예측하고 분류할 수 있게 됩니다.

머신 러닝 알고리즘이 구성되면 샘플 데이터 세트를 활용하여 모델을 학습시킵니다. 그러나 모델이 샘플 데이터를 너무 오래 학습하거나 모델이 너무 복잡하면 데이터 세트 내에서 '노이즈' 또는 관련 없는 정보를 학습하기 시작할 수 있습니다. 모델이 노이즈를 기억하고 학습 세트에 과하게 적합한 상태이면 '과적합'이 됩니다. 즉, 새로운 데이터를 효과적으로 일반화할 수 없게 됩니다. 모델이 새로운 데이터를 효과적으로 일반화할 수 없다면 의도한 분류 또는 예측 작업을 수행할 수 없습니다.

낮은 오류율과 높은 분산은 과적합을 나타내는 좋은 지표입니다. 이러한 유형의 동작을 방지하기 위해 일반적으로 학습 데이터 세트의 일부를 '테스트 세트'로 따로 설정하여 과적합 여부를 확인합니다. 학습 데이터의 오류율이 낮고 테스트 데이터의 오류율이 높으면 과적합임을 시사합니다.

전문가가 전하는 최신 AI 트렌드

가장 중요하고 흥미로운 AI 뉴스에 대한 선별된 인사이트를 확인하세요. 주간 Think 뉴스레터를 구독하세요. IBM 개인정보 보호정책을 참조하세요.

감사합니다! 구독이 완료되었습니다.

구독은 영어로 제공됩니다. 모든 뉴스레터에는 구독 취소 링크가 있습니다. 여기에서 구독을 관리하거나 취소할 수 있습니다. 자세한 정보는 IBM 개인정보 보호정책을 참조하세요.

과적합과 과소적합 비교

과도한 학습 또는 모델 복잡성으로 인해 과적합이 발생하는 경우 논리적 예방 대응은 학습 과정을 일찍 종료하거나('조기 종료'라고도 함) 관련성이 낮은 입력을 제거하여 모델의 복잡성을 줄이는 것입니다. 그러나 너무 일찍 종료하거나 중요한 특징을 너무 많이 제외하면 반대 문제가 발생할 수 있으며 대신 모델이 과소적합될 수 있습니다. 과소적합은 모델이 충분한 시간 동안 학습되지 않았거나 입력 변수가 입력 변수와 출력 변수 간의 의미 있는 관계를 결정할 만큼 충분히 중요하지 않을 때 발생합니다.

두 시나리오 모두 모델은 학습 데이터 세트 내에서 우세 추이를 설정할 수 없습니다. 결과적으로 과소적합은 보이지 않는 데이터도 효과적으로 일반화하지 못합니다. 그러나 과적합과 달리 과소적합 모델은 예측에서 편향이 높고 분산이 적습니다. 과적합 대 과소적합은 과적합 상태로 전환될 때 발생하는 편향-분산 상충관계를 보여줍니다. 모델이 학습함에 따라 편향은 감소하지만 과적합이 되면 분산이 증가할 수 있습니다. 모델을 피팅할 때 목표는 과소적합과 과적합 사이의 '최적점'을 찾아 우세 추이를 설정하고 이를 새로운 데이터 세트에 광범위하게 적용할 수 있도록 하는 것입니다.

Mixture of Experts | 12월 12일, 에피소드 85

AI 디코딩: 주간 뉴스 요약

세계적인 수준의 엔지니어, 연구원, 제품 리더 등으로 구성된 패널과 함께 불필요한 AI 잡음을 차단하고 실질적인 AI 최신 소식과 인사이트를 확인해 보세요.

과적합 모델을 감지하는 방법

머신 러닝 모델의 정확도를 이해하려면 모델 적합성을 테스트하는 것이 중요합니다. K-폴드 교차 검증은 모델의 정확도를 평가하는 데 가장 널리 사용되는 기술 중 하나입니다.

k-폴드 교차 검증에서 데이터는 '폴드'라고도 하는 k개의 동일한 크기의 하위 집합으로 분할됩니다. k-폴드 중 하나는 홀드아웃 세트 또는 검증 세트라고 하는 테스트 세트 역할을 하고 나머지 폴드는 모델을 학습시킵니다. 이 프로세스는 각 폴드가 홀드아웃 폴드 역할을 할 때까지 반복됩니다. 각 평가 후 점수가 유지되며 모든 반복이 완료되면 점수의 평균을 계산하여 전체 모델의 성능을 평가합니다.

과적합을 방지하는 방법

선형 모델을 사용하면 과적합을 방지하는 데 도움이 되지만 실제 문제의 대부분은 비선형 문제입니다. 과적합을 감지하는 방법을 이해하는 것 외에도 과적합을 완전히 방지하는 방법을 이해하는 것도 중요합니다. 다음은 과적합을 방지하는 데 사용할 수 있는 여러 가지 기법입니다.

  • 조기 종료: 앞서 언급했듯이 이 방법은 모델이 모델 내의 노이즈를 학습하기 전에 학습을 종료합니다. 이 접근 방식은 학습 프로세스를 너무 빨리 종료하여 과소적합이라는 반대 문제를 일으킬 위험이 있습니다. 과소적합과 과적합 사이의 '최적점'을 찾는 것이 궁극적인 목표입니다.

  • 더 많은 데이터로 학습: 더 많은 데이터를 포함하도록 학습 세트를 확장하면 입력 변수와 출력 변수 간의 우세한 관계를 구문 분석할 수 있는 더 많은 기회를 제공하여 모델의 정확도를 높일 수 있습니다. 즉, 이는 정제되고 관련성 높은 데이터가 모델에 주입될 때 더 효과적인 방법입니다. 그렇지 않은 경우 모델에 복잡성이 계속 추가되어 과적합이 발생할 수 있습니다.

  • 데이터 증대: 정제되고 관련성이 높은 데이터를 학습 데이터에 주입하는 것이 바람직하지만 때로는 모델 안정성을 향상하기 위해 노이즈가 있는 데이터가 추가됩니다. 하지만 이 방법은 신중하게 사용해야 합니다.

  • 특징 선택: 모델을 구축할 때 특정 결과를 예측하는 데 사용되는 여러 매개 변수 또는 특징이 있지만 이러한 특징은 다른 특징과 중복되는 경우가 많습니다. 특징 선택은 학습 데이터 내에서 가장 중요한 특징을 식별한 다음 관련성이 없거나 중복되는 특징을 제거하는 과정입니다. 일반적으로 차원 축소로 오인되지만 이는 다릅니다. 그러나 두 방법 모두 모델을 단순화하여 데이터의 우세 추이를 설정하는 데 도움이 됩니다.

  • 정규화: 모델이 너무 복잡할 때 과적합이 발생하면 특징 수를 줄이는 것이 합리적입니다. 하지만 특징 선택 과정에서 어떤 입력을 제거해야 할지 모른다면 어떻게 어떻게 될까요? 모델에서 어떤 특징을 제거해야 할지 모르는 경우 정규화 방법이 특히 유용할 수 있습니다.

    정규화는 계수가 더 큰 입력 매개변수에 '페널티'를 적용하여 모델의 분산량을 제한합니다. 라쏘 정규화, 릿지 회귀, 드롭아웃 등 다양한 정규화 방법이 있지만 모두 데이터 내의 노이즈를 식별하고 줄이는 것을 목표로 합니다.

  • 앙상블 방법: 앙상블 학습법은 분류기 세트(예: 의사결정트리)로 구성되며 가장 인기 있는 결과를 식별하기 위해 예측이 집계됩니다. 가장 잘 알려진 앙상블 방법으로 배깅(Bagging)과 부스팅(Boosting)이 있습니다. 배깅에서는 학습 세트에 있는 데이터의 무작위 샘플이 대체를 통해 선택됩니다. 즉, 개별 데이터 포인트를 두 번 이상 선택할 수 있습니다. 여러 데이터 샘플이 생성된 후 이러한 모델은 독립적으로 학습되며 작업 유형(예: 회귀 또는 분류)에 따라 이러한 예측의 평균 또는 대부분을 통해 더 정확한 추정치를 산출합니다. 이는 일반적으로 노이즈가 있는 데이터 세트 내의 분산을 줄이는 데 사용됩니다.

최근 연구

위의 내용은 과적합에 대한 확립된 정의이지만 최근 연구에 따르면 딥 러닝 모델과 신경망과 같은 복잡한 모델은 '정확히 일치하거나 보간'하도록 훈련되었음에도 불구하고 높은 정확도로 작동합니다. 이 발견은 해당 주제에 관한 기존 문헌과 정면으로 상충되는 것으로 아래의 '이중 하강' 위험 곡선을 통해 설명될 수 있습니다. 모델이 보간 임곗값을 초과하여 학습하면 모델의 성능이 향상되는 것을 볼 수 있습니다. 앞서 언급한 조기 중지 및 정규화 등 과적합을 피하기 위한 방법을 사용하면 실제로 보간을 방지할 수 있습니다.

관련 솔루션
IBM watsonx.ai

AI 빌더를 위한 차세대 엔터프라이즈 스튜디오인 IBM watsonx.ai로 생성형 AI, 파운데이션 모델 및 머신 러닝 기능을 학습, 검증, 조정 및 배포하세요. 적은 데이터로 짧은 시간 내에 AI 애플리케이션을 구축하세요.

watsonx.ai에 대해 알아보기
인공 지능 솔루션

업계 최고의 AI 전문성과 솔루션 포트폴리오를 보유한 IBM과 함께 AI를 비즈니스에 활용하세요.

AI 솔루션 살펴보기
AI 컨설팅 및 서비스

AI 추가를 통해 중요한 워크플로와 운영을 혁신함으로써 경험, 실시간 의사 결정 및 비즈니스 가치를 극대화합니다.

AI 서비스 살펴보기
다음 단계 안내

AI 개발 라이프사이클 전반에 걸친 기능에 원스톱으로 액세스하세요. 사용자 친화적인 인터페이스, 워크플로, 업계 표준 API 및 SDK에 대한 액세스를 통해 강력한 AI 솔루션을 제작할 수 있습니다.

watsonx.ai 살펴보기 라이브 데모 예약하기