과적 합 모델이 반드시 쓸모 없는가?


25

모델이 훈련 데이터의 정확도는 100 %이지만 테스트 데이터의 정확도는 70 %라고 가정합니다. 이 모델에 대해 다음과 같은 주장이 사실입니까?

이것이 과적 합 된 모델이라는 것은 명백합니다. 과적 합을 줄임으로써 테스트 정확도를 향상시킬 수 있습니다. 그러나이 모델은 테스트 데이터에 적합한 정확도를 갖기 때문에 여전히 유용한 모델이 될 수 있습니다.


17
특정 응용 프로그램에서 70 %가 허용되는 경우 동의합니다.
Richard Hardy

6
@RichardHardy에 전적으로 동의합니다. 예를 들어 랜덤 포레스트를 생각해보십시오. 구성에 따라 인 샘플 성능 (가방 밖 성능이 아님)이 100 %에 가까우므로 과도하게 적합합니다. 그러나 여전히 백에서 또는 테스트 / 검증 세트에서 평가 된 성능이 낮 으면 유용한 모델이 될 수있을만큼 높습니다.
Michael M

1
@Metariat 왜 안돼? 이 정확도는 훈련 단계에서 사용되지 않은 테스트 세트에서 얻었습니다.
Hossein

3
@Metariat, 이러한 논증은 대부분의 통계 관행, 예를 들어 정규 선형 모형의 OLS 추정기 , 가정 평균에 대한 표본 평균의 동등성에 대한 검정 등을 취할 수 있습니다 . 흥미로운 점은이 주장이 훈련 표본에 과적 합한 모형에 의존하지 않는다는 것입니다. 언더 핏 모델과 모든 모델에 적용됩니다. 맞지 않습니까? t
Richard Hardy

4
나는 그 모델이 과적 합이라고 부르지 않을 것이다. 검증 성능과 테스트 성능을 비교하여 과적 합 된 모델이 확립되었습니다. 그럼에도 불구하고 테스트 성능이 허용 가능한 수준보다 상당히 낮을 경우에만 가능합니다. 훈련 성과는 아무 의미가 없습니다.
Firebug

답변:


32

나는 그 주장이 맞다고 생각한다. 특정 응용 분야에서 70 %가 허용되는 경우 모델 이 초과 적합 하더라도 (보다 일반적으로 초과 적합 여부에 관계없이) 모형이 유용합니다 .

과적 합과 과적 합의 균형을 맞추는 것은 최적 (최적의 솔루션을 찾는 것)과 관련이 있지만 만족스러운 성능을 얻는 것은 충분합니다 (모델이 작업 에 충분한 성능을 발휘 합니까?). 최적의 모델이 아니더라도 모델이 충분할 수 있습니다.

편집 : OP의 Firebug와 Matthew Drury의 의견 후에 검증 성능이 문제가 될 수 있음을 모른 채 모델이 과적 합되었는지 여부를 판단하기 위해 추가 할 것입니다. Firebug는 과적 합의 양을 측정하기 위해 검증과 테스트 성능을 비교할 것을 제안합니다. 그럼에도 불구하고 모델이 테스트 세트에서 100 % 정확도를 제공하지 않고 훈련 세트에서 100 % 정확도를 제공 할 때 이는 초과 적합 가능성을 나타내는 지표입니다 (특히 회귀의 경우에는 반드시 분류에 해당하지는 않음).


stats.stackexchange.com/a/273930/2958홍채 데이터 세트에서 신경망의 코드를 가져 와서 여기에 설명 된 현상과 반대 되는 그림 을 사용해보십시오 . 아마도 " 과잉 적합 가능성 의 지표"라고 말하는 것이 좋습니다set.seed(100)set.seed(15)
Henry

모델이 기차와 테스트 모두에서 100 % 정확도를 달성하는 것이 가능합니까?
Rika

1
@ Brize, 별도의 스레드에서 요청할 수 있다고 생각합니다 (필요한 경우 컨텍스트를 위해이 스레드에 연결하십시오).
Richard Hardy

방금 링크를
리카

25

신용 카드 사기 탐지 기능이있는 과거 프로젝트에서 사기 사건을 기억하기 위해 의도적으로 데이터 / 하드 코딩 된 데이터를 과도하게 맞추려고합니다. (한 클래스에 과적 합이 OP가 말한 일반적인 과적 합 문제는 아닙니다.) 이러한 시스템은 오 탐지가 상대적으로 낮으며 우리의 요구를 충족시킵니다.

따라서 과장된 모델은 일부 경우에 유용 할 수 있습니다.


5
이 답변은 유스 케이스를 제시하므로 매우 흥미 롭습니다. @ hxd1011은 "기억하기 어려운 코드"라고 생각합니다.이 모델은보고 된 각 사기 사건이 "사기 플래그"로 이어지고 함수에 의해 매끄 럽거나 보간되지 않았 음을 확인했습니다. . 그런거지?
IcannotFixThis는

@IcannotFixThis 네. 실제로, 우리는 오탐을 통제하기 위해 다른 많은 방법을 시도했습니다. 그러나 사기 사건을 과도하게 맞추려고 노력하는 것은 잘 작동했습니다.
Haitao Du

3
귀하의 평가 기능은 과체중 TPR 및 저체중 FPR입니다 (예 : >> 1의 F_ score) . (이제 직불 카드 회사가 왜 그렇게 성가 βββ
신지 알고 있습니다.

3
성가신 일이지만, 누군가가 카드 정보를 악의적으로 얻었 기 때문에 재정을 망치는 것보다 성가신 일이 수천 배나 적습니다.
Matthew Drury

12

아마도 : 조심하십시오. 70 % 정확도 (측정 방법)가 충분 하다고 말하면 오류가 무작위로 또는 균등하게 분산 된 것으로 가정합니다.

그러나 과적 합을 보는 방법 중 하나는 모델 기법이 훈련 세트의 단점에 너무 많은주의를 기울 이도록 허용 할 때 발생한다는 것입니다. 이러한 특징을 공유하는 일반 인구의 피험자는 결과가 불균형 할 수 있습니다.

따라서 훈련 데이터의 특정 특성 때문에 모든 빨간 개에 암이 있다고 말하는 모델이 생길 수 있습니다. 또는 24 세에서 26 세 사이의 기혼 인은 사기 보험 청구를 제기 할 수 있습니다. 70 %의 정확도는 모델이 지나치게 적합하기 때문에 피사체의 포켓이 100 % 잘못 될 수있는 많은 공간을 남겨 둡니다.

(과적 합이 아니라고 예측이 잘못되었다고 보장 할 수는 없습니다. 실제로 미달 적합 모델에는 잘못된 예측이 포함되어 있지만 과적 합을하면 훈련 데이터에서 쿼크의 영향이 확대되고 있음을 알 수 있습니다 .)


감사. 이 70 % 정확도가 테스트 데이터에서도 제공되는 교육 데이터의 단점에서 얻을 수 있다는 것을 의미합니까? 테스트 데이터의 정확성을 기준으로 판단 할 수 없습니까? 테스트 데이터에서 사용할 수있는 교육 데이터의 단점은 훈련 중에 배워야한다고 생각합니다.
Hossein

1
내가 당신을 이해한다면, 그 반대 일 것입니다. 테스트에서 정확도가 떨어지는 이유는 이러한 단점이 전체 데이터 세트에 적용되지 않기 때문입니다. 그러나 물론 교육 및 테스트 세트는 교차 유효성 검사를 수행하더라도 도움이 될 수 있지만 인구와 관련하여 기발 할 수 있습니다. 이 경우 테스트 / 유효성 검사 결과가 실제 수행 방식을 잘 예측하지 못합니다.
Wayne

테스트 세트는 모집단과 관련하여 기발 할 수 있지만, 이는 과적 합 모델에 국한되지 않습니다. 우리의 모든 평가에는 어려움이 따르며 실제 모집단의 대리자로서 테스트 세트에 의존하는 것 외에 다른 선택은 없습니다.
Hossein

사실, 과적 합 모델에서는 고유하지 않지만 과적 합 모델에서는 증폭됩니다. 정의에 따르면 모델이 단점을 과도하게 강조하기 때문에 과도하게 적합 하다고 말하고 싶습니다 .
Wayne

7

유용하지는 않지만 목적에 따라 다릅니다. 몇 가지가 떠 오릅니다.

  1. Fββ1

  2. 이러한 분류기는 앙상블 에서 실제로 유용 할 수 있습니다 . 우리는 정규 가중치를 가진 분류기, TPR을 과체중 화하는 분류기, FNR을 과체중 화하는 분류기를 가질 수 있습니다. 그런 다음 간단한 3 회 투표 또는 평균화조차도 단일 분류기보다 더 나은 AUC를 제공합니다. 각 모델이 서로 다른 하이퍼 파라미터 (또는 서브 샘플링 된 훈련 세트 또는 모델 아키텍처)를 사용하는 경우 앙상블이 과적 합으로부터 약간의 내성을 얻습니다.

  3. 마찬가지로, 실시간 스팸 방지, 사기 방지 또는 신용 평가 의 경우 분류기 계층 을 사용하는 것이 좋습니다 . 레벨 1 분류기는 정말 빠르게 평가해야하며 (ms) FPR이 높은 것이 좋습니다 . 그들이 저지르는 실수는보다 정확하고 완전한 기능을 갖춘 느리게 높은 등급 분류 자 ​​또는 궁극적으로 인간 검토 자에 의해 포착됩니다. 명백한 예 : 2013 년 "백악관 폭탄 공격으로 3 명이 사망"과 같은 Twitter 계정 인수로 인한 가짜 뉴스 헤드 라인이 게시 후 수십억 달러의 거래에 영향을 미치지 않도록합니다. 레벨 1 분류 기가 스팸에 대해이를 긍정적으로 표시해도됩니다. 감각적이지만 검증되지 않은 뉴스 보고서의 진실 / 거짓을 (자동으로) 결정하는 데 약간의 시간이 걸립니다.


2

과적 합 된 모델이 여전히 유용 할 수 있음을 부정하지 않습니다. 그러나이 70 %는 잘못된 정보 일 수 있습니다. 어떤 모델이 유용인지 아닌지는 판단하기 위해 필요한 것은입니다 밖으로의 샘플 오류 , 하지 테스트 오류 우리는 그것이 눈을 멀게 테스트 세트를 사용하여 추정 그래서, (아웃 오브 샘플 오류가 알려져 있지 않다 )이며 70 %가 좋은 근사치입니다.

@RichardHardy의 의견 후에 용어의 동일한 페이지에 있는지 확인하기 위해 테스트 오류를 ​​블라인드 테스트 세트에 모델을 적용 할 때 얻은 오류로 정의 해 보겠습니다. 그리고 표본 외 오차는 모형을 전체 모집단에 적용 할 때의 오차입니다.

표본 외 오차의 근사치는 모형 자체와 데이터의 두 가지에 따라 달라집니다.

  • "최적의"모델은 데이터에 거의 의존하지 않는 (테스트) 정확도를 제공합니다.이 경우 좋은 근사치입니다. 데이터와 상관없이 예측 오류는 안정적입니다.

  • 그러나 과적 합 된 모델의 정확도는 데이터에 크게 의존합니다 (훈련 세트에서 100 %, 다른 세트에서 70 %). 따라서 다른 데이터 세트에 적용 할 때 정확도가 70 % (또는 그 이상)보다 낮을 수 있으며 놀라운 결과를 초래할 수 있습니다. 다시 말해서, 70 %가 당신이 믿는 것을 당신에게 말하고 있지만 그렇지 않습니다.


1
훈련 단계에서는 70 %의 정확도를 얻는 사용 된 테스트 세트가 보이지 않기 때문에 샘플 외부 오차를 제대로 추정하지 않습니까? 훈련 오류 (100 %)와 테스트 오류 (70 %)의 차이는 샘플 부족 오류와 테스트 오류의 차이를 나타내는 좋은 지표는 아니라고 생각합니다. 과적 합 모델은 실제 세계에서 70 %의 정확도를 제공하는 반면 훈련 데이터의 경우 100 % 정확할 수 있습니다. 훈련 데이터는 모델을 생성하는 데 사용되지만 훈련 동안 테스트 데이터는 표시되지 않으므로 훈련 오류는 테스트 오류보다 낮을 것으로 예상됩니다.
Hossein

5
유효성 검사 세트와 테스트 세트 및 각각의 오류를 혼동했을 수 있습니다 . 테스트 오류가 있다 밖으로의 샘플 오류입니다. 하지만 검증 오류가 선택된 모델의 낙관적 인 조치이며, 테스트 오류가 아닙니다. 테스트 오류는 모델이 같은 인구에서 새 샘플을 수행하는 방법에 대한 불편 추정치이다. 테스트 오류의 분산을 추정 할 수 있으므로 테스트 세트가 너무 작지 않은 한 테스트 오류 만 아는 것으로 아주 좋습니다. @ 호세인
리차드 하디

3
샘플 외부 오류와 테스트 오류의 차이점을 자세히 설명 할 수 있습니까? 내 이해에서, 모델 훈련에 사용되지 않은 샘플에 모델을 적용 할 때 발견되는 오류는 둘 다입니다. 내가 볼 수있는 유일한 차이점은 시계열 데이터를 사용할 때 샘플링되지 않은 데이터는 나중에 시작해야하지만이 질문에 대해서는 언급하지 않습니다.
Nuclear Wang

1
내 관점에서, 테스트 오류는 모델을 블라인드 세트에 적용 할 때 얻은 오류이며, 표본 외부 오류의 근사치입니다. 이는 표본을 전체 모집단에 적용 할 때 얻은 오류입니다. 그리고 그것은 동일하지 않습니다. 귀중한 정보는 샘플 오류입니다. 그리고 모델이 과적 합되면 테스트 오류가 안정적이지 않으며 다른 데이터 세트에서 불량 공급이 발생할 수 있습니다.
Metariat

4
@Metariat, 테스트 오류는 추정치이며 테스트 세트마다 다를 수 있습니다. 그러나 앞에서 언급했듯이 테스트 오류가 실제 오류를 과소 평가한다고 기대할 이유는 없습니다 (평균은 아님). 따라서 충분히 큰 테스트 샘플을 가져 와서 원하는 범위에서 원하는 수준의 신뢰도로 테스트 오류를 ​​제한 할 수 있습니다. 보다 실질적으로, 테스트 오류와 샘플 외부 오류를 대조 할 때 의미를 이해하지 못하도록 답을 편집하여 테스트 오류를 ​​정의해야합니다.
Richard Hardy
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.