"과적 합"의 실제 예는 무엇입니까?


107

나는 "과적 합 (overfitting)"의 의미를 이해하지만 과적 합 (overfitting)에 적용되는 실제 사례를 제시하는 방법에 대한 도움이 필요합니다.


12
아마도 당신은 '무엇을 의미 하는가'에 대해 당신이 '이해하는 종류'를 설명 할 수있을 것입니다.
goangit

3
@ssdecontrol 스퓨리어스 상관이 과적 합하지 않습니다. 실제로, 가짜 상관에는 명시 적 모델이 필요하지 않으며 암시 적 모델은 일반적으로 두 개의 매개 변수가있는 직선입니다.
Nick Cox

1
@ whuber : 메타에 대해 이야기하는 것이 더 적합 할 수도 있지만이 게시물을 커뮤니티 위키로 변환 한 것을보고 놀랐습니다. 향후 업 보트에 대해 OP가 평판을 올리지 않는다는 의미는 아닙니까? 나에게 그것은 거의 그를위한 "처벌"처럼 보인다. 그 이유는 무엇입니까?
amoeba

4
@amoeba 그것은 처벌이 아닙니다 : 언급 된이 질문은 명백하거나 정답이 아닙니다. CW 이외의 질문으로서의 원래 형식으로 인해 결과적으로 주제에 맞지 않았으며 BTW는 급속히 문을 닫았어야하지만 CW 커뮤니티를 통해 커뮤니티가 공동으로 작성한 좋은 사례를 갖는 것이 가치가있을 수 있기 때문에 닫는 대신 합리적인 해결책 인 것 같습니다.
whuber

17
지금까지이 답변들 중 아주 적은 수 (11 명 중 2 명만 해당)도 실제 사례 를 요구하는 질문을 해결하려고 시도합니다 . 이는 이론적 인 예가 아니라 만화가 아니라 실제 데이터에 심각하게 적용된 모델을 의미합니다. 또한 질문은 과적 합 (overfitting)이 무엇인지에 대한 설명에서 답변을 멀리하려고 시도한다는 점에 유의하십시오.
whuber

답변:


96

다음 은 xkcd의 대통령 선거 시계 시리즈 모델 의 좋은 예 입니다. 여기에 이미지 설명을 입력하십시오

대통령 선거는 56 명, 대통령은 43 명이었습니다. 그것은 배울 많은 데이터가 아닙니다. 예측기 공간이 틀니와 이름의 스크래블 포인트 값을 갖는 것과 같은 것을 포함하도록 확장되면 모델이 데이터의 일반화 가능한 특징 (신호)을 맞추고 노이즈를 맞추기 시작하는 것은 매우 쉽습니다. 이런 일이 발생하면 과거 데이터에 대한 적합도는 향상 될 수 있지만 차기 대통령 선거에 대한 추론에 사용될 때 모델은 비참하게 실패 할 것입니다.


15
과잉 피팅과의 관계를 설명하기 위해 샘플 바이어스에 대해 무언가를 추가해야한다고 생각합니다. 만화의 잘라 내기 및 붙여 넣기에 대한 설명이 없습니다.
Neil Slater

5
이 예의 좋은 특징은 과적 합과 복잡성의 차이를 보여줍니다. "캘리포니아로 갈수록 국가도 간다"는 규칙은 간단하지만 여전히 과잉입니다.
Tom Minka

2
@TomMinka 실제로 과적 합은 복잡성 (너무 단순한 데이터에 맞추기에는 너무 복잡한 모델, 추가 매개 변수는 현재 상황에 맞는 것)로 인해 발생할 수 있습니다. 풍모. 그리고 다른 많은 과적 합원 (데이터 또는 모델의 본질적인 분산, 목표 목표를 나타내지 않는 데이터 등)이 많이 있습니다. 나는 우리가 overfitting 있다는 것을 말해야한다고 생각 단지 (종종 정확하지 않은 단 하나의 원인이 있다는 것을 의미하는) overfitting 없습니다.
gaborous December

80

내가 가장 좋아하는 것은 미국 인구 조사 인구 대 시간의 Matlab 예입니다.

  • 선형 모델은 꽤 좋습니다
  • 이차 모형이 더 가깝습니다
  • 내년부터 총 소멸을 예측하는 quartic 모델

(적어도 나는 이것이 과적 합의 예 라고 진심으로 바란다 )

http://www.mathworks.com/help/curvefit/examples/polynomial-curve-fitting.html#zmw57dd0e115여기에 이미지 설명을 입력하십시오


1
그들은 음모 아래에서 명확하게 밝히기 위해 다음과 같이 말합니다. "데이터 범위를 넘어 6도 다항식 적합의 동작은 외삽 법을 선택하기에 적합하지
않으며이

49

Chen 등의 연구. (2013)은 위도의 함수로서 기대 수명의 불연속성에 두 개의 입체파를 맞 춥니 다.

Chen Y., Ebenstein, A., Greenstone, M. 및 Li, H. 2013. 대기 오염에 대한 지속적인 노출이 중국 Huai River 정책의 기대 수명에 미치는 영향에 대한 증거. 국립 과학 아카데미 110 : 12936–12941의 절차. 요약

뛰어난 저널 등의 저서, 저명한 사람들에 의한 암묵적인 승인에도 불구하고, 나는 이것을 여전히 과잉 적합의 주요한 모범 으로 제시 할 것 입니다.

이야기의 신호는 입체파의 불가능 함입니다. 큐빅을 암시 적으로 적용하면 기대 수명이 거주하는 위도의 3도 다항식으로 변하는 몇 가지 이유가 있다고 가정합니다. 오히려 그럴듯 해 보이지는 않습니다 : 그러한 영향을 초래할 그럴듯한 물리적 메커니즘을 상상하기는 쉽지 않습니다.

이 논문에 대한 자세한 분석을 위해 또한 다음 블로그 게시물을 참조 : 증거를 인과 추론 (석탄 난방이 절반 억 명 5 년까지 수명을 줄일 것을 주장)에 대한 다항식 회귀의 지속 사용의 영향에 .


5
+1 Andrew Gelman은 왜 그것이 불가능한 지에 대한 블로그 게시물을 한두 개 작성했습니다. 하나는 다음과 같습니다. andrewgelman.com/2013/08/05/…
Sycorax

@ user777 Gelman 블로그는 아마도 내가 처음 들어 본 방법 일 것입니다. 그러나 나는 참조를하고, 나의 개인적인 의견의 보풀을 더하고, 사람들이 스스로 판단하도록하는 것이 가장 적절하다고 생각했다.
Nick Cox

1
나는 다른 나라의 기대 수명에 대한 의견을 소개하는 @DW의 편집을 잘라 냈습니다.이 논문은 전혀 아닙니다.
Nick Cox

2
내가 생각하는 또 다른 예는 (실제보다 더 많은 가능성이 있지만) kaggle과 같은 중간 결과를 피드백하는 예측 경쟁입니다. 일반적으로 리더 보드에 결과를 최적화하는 개인이 있지만 홀드 아웃 샘플의 승자는 아닙니다. Rob Hyndman 이 이에 대해 논의했습니다. OP가 원한다고 생각하는 것보다 조금 더 심층적 인 관점이 필요합니다.
Andy W

2
: 나는 겔만 & Imbens이 나온 종이 게시 막이었다 nber.org/papers/w20405 (불행하게도, 게이트를)
shadowtalker

38

A의 2014년 3월 14일 기사 과학 , 데이빗 레이저, 라이언 케네디, 게리 왕, 그리고 알레산드로 베스 피 나니 문제 확인 Google 독감 트렌드 가 overfitting하는 속성 있음을.

그림

다음은 오버 피팅의 특성에 대한 설명과 알고리즘이 실패한 이유를 포함하여 스토리를 설명하는 방법입니다.

2013 년 2 월, ... Nature는 GFT가 질병 통제 및 예방 센터 (CDC)보다 인플루엔자 의사 환자 (ILI)에 대한 의사 방문의 두 배 이상을 예측하고 있다고보고했습니다. 이것은 GFT가 CDC 보고서를 예측하기 위해 구축되었다는 사실에도 불구하고 발생했습니다. ...

기본적으로이 방법론은 1152 개의 데이터 포인트에 맞는 5 천만 개의 검색어 중에서 가장 일치하는 것을 찾는 것이 었습니다. 독감의 성향과 일치하지만 구조적으로 관련이 없으므로 미래를 예측하지 못하는 검색어를 찾을 확률은 상당히 높았습니다. 실제로 GFT 개발자는 독감과 관련이 없지만 고등학교 농구 관련 데이터와 같은 CDC 데이터와 밀접한 관련이있는 계절별 검색어를 제거한다고보고합니다. 이는 빅 데이터가 소수의 사례에 비해 적합 하다는 경고 였을 것입니다. 이는 데이터 분석의 표준 문제입니다. GFT가 비 계절적 인플루엔자 A–H1N1 전염병을 완전히 놓쳤을 때 특이한 검색어를 폐기하는이 특별한 방법은 실패했습니다.

[공포도 추가]


3
불행히도이 예에는 몇 가지 문제가 있습니다. 이 논문은 GFT가 잘못된 예측을 한 두 가지 다른 이유, 즉 과적 합과 검색 엔진의 변경을 제안합니다. 저자는 그들이 어떤 이유 (있는 경우)가 정확한지 판단 할 수있는 입장에 있지 않다는 것을 인정하므로 본질적으로 추측입니다. 또한 과적 합에 대한 단락은 시스템의 원래 버전을 나타내며 그래프의 예측은 수정 된 시스템으로 이루어졌습니다.
Tom Minka

1
@Tom이 기사는 과적 합 (overfitting) 혐의가 추측처럼 쓰여지지 않았습니다. 나는 그것이 합리적인 진술이라고 생각합니다. 또한 구글이 알고리즘에 대해 공개적이거나 투명하지 않은 이유가 다소 투기 적이어야하는 이유도 다룬다. 오버 피팅이 하나의 버전 또는 여러 버전에서만 발생했는지 여부는 현재 목적에 중요하지 않은 것처럼 보이지만 저자가이 문제를 해결하고 현재 알고리즘에서 지속적인 오버 피팅의 증거를 지적합니다.
whuber

2
이 기사에서는 과적 합이 데이터 분석에서 표준 관심사라고 말합니다. 과적 합이 그 이유라고 주장하지는 않습니다. 참조 (2) 는보다 자세하게 설명하지만, 과적 합은 "가능한 문제"일 뿐이며 "원본 및 업데이트 된 GFT 모델을 정의하는 데 사용 된 검색 알고리즘 및 결과 쿼리 용어가 공개되지 않았기 때문에 다음과 같습니다. 시스템의 성능이 최적화되지 않은 이유를 파악하고 개선을위한 권장 사항을 제시하기가 어렵습니다. "
Tom Minka

@Tom 나는 여기에 주어진 인용문을지지 할 것인데, 이것은 현재 상황에서 Google 독감 모델이 고려할 가치가있는 이유에 대한 적절한 지원으로서 정확한 것입니다.
whuber

흥미로운 토론. 선에 레이블이 지정된 경우 그래프가 인수를 더 잘 지원할 수 있다고 덧붙일 것입니다.
rolando2

32

몇 주 전에이 이미지를 보았고 현재 질문과 관련이 있다고 생각했습니다.

밈 사진

시퀀스에 선형 적으로 피팅하는 대신, 완벽한 다항식 (quartic polynomial)이 장착되었는데, 이는 완벽하게 맞았지만 분명히 어리석은 답을 얻었습니다.


12
이것은 요청 된 질문에 대한 답변이 아니며, 의견으로 작성되거나 전혀 게시되지 않을 수 있습니다. 이것은 과적 합의 실제 사례를 제공하지는 않습니다 (질문이 요구 한 것임). 또한 예제 이미지가 과적 합과 어떤 관련이 있는지 설명하지 않습니다. 마지막으로 매우 짧습니다. 질문과 관련된 토론뿐만 아니라 질문에 대한 답변을 제공하는 철저하고 자세한 답변을 선호합니다.
DW

9
실제로 이것은 너무 복잡한 모델로 인해 과적 합의 경우입니다. 순서에 맞추면서 무한한 수의 다른 마지막 항을 생성하기 위해 고차 (비선형) 함수를 무한대로 구성 할 수 있기 때문입니다. 사용하여 다른 (공지) 조건, 여기에 설명 된 바와 같이 라그랑주 보간 .
gaborous December

@ user1121352 만화에서 고차 다항식 진정한 모델이므로 과적 합에 관한 것이 아닙니다. 예 : "9"(다음 홀수) 또는 "11"(다음 홀수 총리)와 같은 대답은 실제로 것이다 아래 는 다음 값을 예측하기 너무 간단한 모델을 사용하기 때문에 끼움. 만화는 실제로 더 복잡한 모델이 사실 일 수있는 반대의 경우를 보여줍니다.
Sycorax

8
quartic polynomial (나에 의해 해석 된)은 우스운 해결책을보기 전에 누군가가 줄 분명한 대답은 9 (또는 다른 OEIS 값)이기 때문에 우스운 해결책이 될 것입니다. 나는 "doge"형식이 풍자를 전달한다고 가정했지만 여기서 Poe의 법칙을 분명히 볼 수 있습니다.
March Ho

2
이것이 바로 내가하려고하는 요점입니다. 즉, 우리는 진정한 기능이 무엇인지 알지 못합니다. 독창적 인 분석을 수행하는 경우 OEIS와 같은 리소스가 없어 진실을 호소 할 수 없습니다. 이것이 바로 모델이 확립하려는 것입니다. 만화가 풍자 만화를 시도하고 있음을 이해하지만이 특정 토론 내에서 만화를 배치하면 일반적으로 과적 합 및 통계 모델링에 대한 질문에 중요한 미묘함이 노출됩니다. 원래 제작자의 의도는 여기에서 재구성했기 때문에 관련이 없습니다!
Sycorax

22

나에게 가장 좋은 예는 천문학의 프톨레마이오스 시스템 이다. 프톨레마이오스는 지구가 우주의 중심에 있다고 가정 하고 하늘에있는 물체의 움직임을 잘 설명 할 수있는 정교한 원형 궤도 시스템을 만들었습니다 . 천문학 자들은 하루가 너무 복잡 해져서 사람들이 의심하기 시작할 때까지 편차를 설명하기 위해 계속해서 원을 추가해야했습니다. 코페르니쿠스가 더 현실적인 모델을 만들었을 때입니다.

이것이 나에게 과적 응하는 가장 좋은 예입니다. 데이터 생성 프로세스 (DGP)를 데이터에 과적 합시킬 수 없습니다. 잘못 지정된 모형에만 과적 합할 수 있습니다. 사회 과학 분야의 거의 모든 모델이 잘못 지정되어 있으므로 열쇠는이를 기억하고 포용 적입니다. 데이터 세트의 모든 측면을 파악하려고 시도하지 말고 단순화를 통해 필수 기능을 포착하십시오.


15
이것은 과적 합의 예가 아닙니다. 예측 모델로서 프톨레마이오스 시스템에는 아무런 문제가 없습니다 : 좌표계가 은하 질량 중심에서 시작하는 것이 아니라 지리적 중심이기 때문에 복잡합니다. 따라서 문제는 지나치게 복잡한 모델로 정확하고 합법적으로 적합하다는 것입니다. 타원은 에피 사이클보다 훨씬 간단합니다. 비선형 비선형 모델을 찾는 것은 진정한 도전입니다!
whuber

1
프톨레마이오스 시스템에서 목성의 위성 궤도를 모델링하기 위해 많은 원이 생깁니다.
Aksakal

17
맞습니다.하지만 얼굴에 꼭 맞지 않을 수도 있습니다. 산 시험은 미래 가치의 예측에 있으며,이 시스템에서 1400 년 동안 견딜 수있을 정도로 잘 작동했습니다. 모델이 매우 복잡 할 때는 데이터가 지나치게 적합하지만 너무 유연 하여 외부 세부 사항을 캡처함으로써 모델의 학습 데이터에 대한 잔차 분석에서 예상되는 것보다 훨씬 더 정확한 예측이 생성됩니다.
whuber

2
EY=k=09βkxi

2
EY=k=09βkxkx

22

그래프에 100 개의 점이 있다고 가정 해 봅시다.

당신은 말할 수 있습니다 : 흠, 나는 다음 것을 예측하고 싶습니다.

  • 선으로
  • 2 차 다항식
  • 3 차 다항식으로
  • ...
  • 100 차 다항식

다음은이 예제에 대한 간단한 그림입니다. 여기에 이미지 설명을 입력하십시오

다항식 차수가 높을수록 기존 도트에 더 잘 맞습니다.

그러나 고차 다항식은 점에 대한 더 나은 모델로 보이지만 실제로는 차수에 적합합니다. 실제 데이터 배포가 아닌 노이즈를 모델링합니다.

결과적으로 완벽하게 맞는 곡선을 사용하여 그래프에 새 점을 추가하면 더 간단한 저차 다항식을 사용하는 것보다 곡선에서 더 멀리 떨어집니다.


"따라서 완벽하게 맞는 곡선을 사용하여 그래프에 새 점을 추가하면 더 간단한 저차 다항식을 사용하는 경우보다 곡선에서 더 멀리 떨어질 수 있습니다." 새로운 점 (즉, 모집단의 관계)에 대한 데이터 생성 과정은 실제로 당신에게 적합했던 것과 같은 강력한 다항식이었습니다.
Silverfish

19
예를 들어, 9도 다항식은 부분 선형 함수로만 그려졌지만 실제로는 점 사이의 범위에서 크게 위아래로 스윙해야한다고 생각합니다. 이 효과는 5도 다항식에서도 볼 수 있습니다.
Ken Williams

17

후쿠시마 재해에 기여했을 수있는 분석은 과적 합의 예입니다. Earth Science에는 관측 된 "더 작은"지진의 빈도를 고려하여 특정 크기의 지진 발생 가능성을 설명하는 잘 알려진 관계가 있습니다. 이것은 Gutenberg-Richter 관계로 알려져 있으며 수십 년에 걸쳐 일관된 로그를 제공합니다. 원자로 주변에서의 지진 위험 분석 (Nate Silver의 우수한 저서 "The Signal and the Noise"의 다이어그램)은 데이터에 "kink"를 나타냅니다. 꼬임을 무시하면 300에서 약 1의 지진으로 연간 9의 지진이 발생할 위험을 추정 할 수 있습니다. 하나, 이중 슬로프 라인을 과도하게 맞추면 (원자로의 초기 위험 평가에서 명백히 수행 된 것처럼) 13,000 년 내에 위험 예측이 약 1로 줄어 듭니다. 원자력 발전소를 설계하지 않았다는 이유로 엔지니어에게 잘못을 제기 할 수는 없었지만, 데이터를 과적 합 (및 외삽) 한 통계학자는 확실히 잘못 판단해야한다 ...

여기에 이미지 설명을 입력하십시오


이중 경사 모델이 과적 합하다는 결론을 내립니까? 꼬임이 두드러집니다. 각 선분이 각각 3 포인트로 추정된다면, 단일 선을 추정하는 것보다 홀드 아웃에 대한 더 나은 예측을 얻을 수있을 것입니다. (물론 "13,000 년의 1 년"사건에 대한 이후의 관찰은 그것에 반대한다! 그러나 그것이 일어나지 않았다면이 모델을 다시 조사하지 않을 것이기 때문에 해석하기 어렵다.) 인지 된 꼬임은 이것이 과잉 적합 한 경우입니다-나는 그러한 데이터가 일반적으로 이상적인 구텐베르크-리히터 관계와 얼마나 잘 일치하는지 모르겠습니다.
Silverfish

이것은 외삽의 위험과 오류의 결과의 심각성을 고려한 손실 함수의 필요성을 그래픽으로 보여줍니다.
Silverfish

3
문제는 실제로 마지막 포인트 중 일부에 거의 데이터가 사용되지 않기 때문에 불확실성이 상당히 크다는 것입니다. 데이터를 자세히 살펴보면 하나의 7.9 이벤트와 여러 7.7 이벤트가 있음을 알 수 있습니다. 드물게 8.0보다 큰 지진에 대해서는 알려진 바가 거의 없지만 9.0 지진 (쓰나미를 일으킨 도호쿠 지진)을 관찰하면 자신의 결론을 도출 할 수 있습니다. 직선은 보수적 일 수 있지만 핵 안전과 관련하여 보수적이다.
Floris

1
@Floris 좋은 지적입니다. 관측 된 주파수뿐만 아니라 해당 주파수에 대한 신뢰 구간을 보여주는 상자 그림을 사용하면 더 좋을 것입니다. 그러면 다이어그램에서 왼쪽에 매우 좁은 상자가 있고 오른쪽에 매우 넓은 상자가 나타납니다. (각 주파수가 포아송 분포를 따르는 것으로 가정하여 이러한 신뢰 구간을 계산할 수 있습니다.)
user763305

3
@ user763305-예, 신뢰 구간을 추가하면 직선이 데이터와 일치하지 않는다는 것을 알 수 있습니다 (즉, 데이터가 직선을 따른다는 귀무 가설을 기각 할 수 없음).
Floris

15

"아! 팻이 회사를 떠난다. 우리는 어떻게 교체품을 찾을 것인가?"

구인 공고:

구함 : 전기 엔지니어. 전기 공학, 수학 및 축산 분야의 학위를 소지 한 42 세의 남성 남성. 키가 68 인치이고 갈색 머리가 있고 왼쪽 눈에는 두더지가 있으며, 거위와 '고문'이라는 단어의 오용에 대해 긴 바람이 부는 경향이 있습니다.

수학적 의미에서, 과적 합은 종종 필요한 것보다 많은 매개 변수를 가진 모델을 만들어 특정 데이터 세트에 더 적합하지만 관심있는 클래스의 다른 데이터 세트에 맞는 관련 세부 사항을 캡처하지 않는 것을 말합니다.

위의 예에서 포스터는 관련성을 무관 한 특성과 구별 할 수 없습니다. 그 결과로 얻은 자격은 이미 알고있는 한 사람 만 해당 직무에 적합하지만 더 이상 원하지는 않습니다.


8
재미 있지만이 답변은 통계적 의미에서 과적 합이 무엇을 의미하는지에 대한 통찰력을 제공하지 않습니다. 아마도 이러한 특정 속성과 통계 모델링 간의 관계를 명확히하기 위해 답을 확장 할 수 있습니다.
Sycorax

마크 +1 @ user777에 대해서는 어느 정도 동의합니다. 어쩌면 한 문장이 간결한 예를 집으로 가져올 것입니다. 그러나 너무 많이 추가하면 단순함에서 벗어날 수 있습니다.
ndoogan

나는 이것이 큰 해답이라고 생각한다-그것은 훈련 데이터, 특히 훈련 데이터의 양이 모델의 표현력을 포화시키기에 불충분 한 경우의 일반적인 경우를 본질적으로 암기하는 매우 일반적인 유형의 과적 합을 나타낸다.
Ken Williams

14

이것은 구성되었지만 사건을 설명하기를 바랍니다.

실시 예 1

k=100n=100

set.seed(123)
k <- 100
data <- replicate(k, rnorm(100))
colnames(data) <- make.names(1:k)
data <- as.data.frame(data)

이제 선형 회귀 분석을 해보자.

fit <- lm(X1 ~ ., data=data)

다음은 처음 10 명의 예측 변수에 대한 요약입니다.

> summary(fit)

Call:
lm(formula = X1 ~ ., data = data)

Residuals:
ALL 100 residuals are 0: no residual degrees of freedom!

Coefficients:
              Estimate Std. Error t value Pr(>|t|)
(Intercept) -1.502e-01         NA      NA       NA
X2           3.153e-02         NA      NA       NA
X3          -6.200e-01         NA      NA       NA
X4           7.087e-01         NA      NA       NA
X5           4.392e-01         NA      NA       NA
X6           2.979e-01         NA      NA       NA
X7          -9.092e-02         NA      NA       NA
X8          -5.783e-01         NA      NA       NA
X9           5.965e-01         NA      NA       NA
X10         -8.289e-01         NA      NA       NA
...
Residual standard error: NaN on 0 degrees of freedom
Multiple R-squared:      1, Adjusted R-squared:    NaN 
F-statistic:   NaN on 99 and 0 DF,  p-value: NA

결과가 이상하게 보이지만 플롯 해 봅시다.

여기에 이미지 설명을 입력하십시오

X1X1

> sum(abs(data$X1-fitted(fit)))
[1] 0

0이므로 플롯이 우리에게 거짓말하지 않았습니다. 모델이 완벽하게 맞습니다. 그리고 분류에서 얼마나 정확합니까?

> sum(data$X1==fitted(fit))
[1] 100

X1

실시 예 2

하나 더 예. 더 많은 데이터를 구성 할 수 있습니다.

data2 <- cbind(1:10, diag(10))
colnames(data2) <- make.names(1:11)
data2 <- as.data.frame(data2)

그래서 다음과 같이 보입니다 :

   X1 X2 X3 X4 X5 X6 X7 X8 X9 X10 X11
1   1  1  0  0  0  0  0  0  0   0   0
2   2  0  1  0  0  0  0  0  0   0   0
3   3  0  0  1  0  0  0  0  0   0   0
4   4  0  0  0  1  0  0  0  0   0   0
5   5  0  0  0  0  1  0  0  0   0   0
6   6  0  0  0  0  0  1  0  0   0   0
7   7  0  0  0  0  0  0  1  0   0   0
8   8  0  0  0  0  0  0  0  1   0   0
9   9  0  0  0  0  0  0  0  0   1   0
10 10  0  0  0  0  0  0  0  0   0   1

이제 이것에 선형 회귀를 맞출 수 있습니다.

fit2 <- lm(X1~., data2)

그래서 우리는 다음과 같은 추정치를 얻습니다.

> summary(fit2)

Call:
lm(formula = X1 ~ ., data = data2)

Residuals:
ALL 10 residuals are 0: no residual degrees of freedom!

Coefficients: (1 not defined because of singularities)
            Estimate Std. Error t value Pr(>|t|)
(Intercept)       10         NA      NA       NA
X2                -9         NA      NA       NA
X3                -8         NA      NA       NA
X4                -7         NA      NA       NA
X5                -6         NA      NA       NA
X6                -5         NA      NA       NA
X7                -4         NA      NA       NA
X8                -3         NA      NA       NA
X9                -2         NA      NA       NA
X10               -1         NA      NA       NA
X11               NA         NA      NA       NA

Residual standard error: NaN on 0 degrees of freedom
Multiple R-squared:      1, Adjusted R-squared:    NaN 
F-statistic:   NaN on 9 and 0 DF,  p-value: NA

R2=1X1

X1=10+X2×9+X3×8+X4×7+X5×6+X6×5+X7×4+X8×3+X9×2

X1=1

10+1×9+0×8+0×7+0×6+0×5+0×4+0×3+0×2

설명이 필요 없습니다. 예 1예 2 와 비슷 하지만 "소음"이 추가 된 것으로 생각할 수 있습니다 . 데이터가 충분하고 무언가를 "예측"하는 데 사용하는 경우 단일 "기능"으로 인해 종속 변수를 잘 설명하는 "패턴"이 있음을 확신 할 수 있지만 이는 우연의 일치 일 수 있습니다. 예제 2 에서는 실제로 예측 된 것이 없지만 예제 1 에서 정확히 동일하게 발생했지만 변수 값만 다릅니다.

실제 사례

이에 대한 실제 사례는 2001 년 9 월 11 일 테러 공격을 예측 한 것으로, 세계 의식 프로젝트 (Global Consciousness Project) 에 의해 컴퓨터 의사 난수 생성기 또는 "Moby Dick"의 "비밀 메시지"에 의해 무작위로 그려진 숫자로 "패턴"을 보면서 유명인의 암살에 대한 사실을 밝히고 있습니다. ( 성경의 비슷한 결과에서 영감을 얻음 ).

결론

당신이 충분히 열심히 보면, 당신은 무엇이든 "패턴"을 찾을 수 있습니다. 그러나 이러한 패턴은 우주에 대해 아무것도 배울 수 없으며 일반적인 결론에 도달하는 데 도움이되지 않습니다. 그것들은 당신의 데이터에 완벽하게 맞을 것이지만, 데이터 자체와 다른 어떤 것도 맞지 않기 때문에 쓸모가 없습니다. 그들은 당신이 할 일은 데이터를 설명하는 것보다 오히려 모방하기 때문에 합리적인 샘플 외부 예측을 할 수 없습니다.


5
실제 답변을이 답변 의 맨 위에 두는 것이 좋습니다 . 그것이 실제로 질문과 관련이있는 부분입니다. 나머지는 그레이비입니다.
shadowtalker

8

실제 생활에 과적 합을 초래하는 일반적인 문제는 올바르게 지정된 모형에 대한 항에 더해, 적절한 항의 관련이없는 힘 (또는 다른 변환), 관련이없는 변수 또는 관련이없는 상호 작용이 필요하다는 것입니다.

올바르게 지정된 모델에 나타나지 않아야하는 변수를 추가하지만 변수 바이어스가 생략 되는 것을 두려워하여 삭제하지 않으려는 경우에는 다중 회귀 분석이 발생합니다 . 물론 전체 모집단을 볼 수없고 표본 만 볼 수 있으므로 정확한 사양이 무엇인지 확실하게 알 수 없으므로 잘못 포함했는지 알 방법이 없습니다. (@Scortchi가 의견에서 지적했듯이 "올바른"모델 사양과 같은 것은 없을 수 있습니다. 그 의미에서 모델링의 목표는 "충분히 좋은"사양을 찾는 것입니다. 과적 합을 피하기 위해서는 모델 복잡성을 피해야합니다 사용 가능한 데이터에서 유지할 수있는 것보다 큽니다.) 실제 과적 합의 예를 원할 때 마다이 문제가 발생 합니다.다른 잠재적 인 효과가 부분적으로 표시되면 모든 잠재적 예측 변수를 실제로 회귀 모형에 넣습니다.

이러한 유형의 과적 합을 사용하면 이러한 관련이없는 항을 포함해도 추정치의 편차가 발생하지 않으며 매우 큰 표본에서는 관련이없는 항의 계수가 0에 가까워 야합니다. 그러나 나쁜 소식도 있습니다. 샘플의 제한된 정보가 더 많은 매개 변수를 추정하는 데 사용되고 있기 때문에 정확도가 떨어질 수 있습니다. 정확히 관련된 항의 표준 오류가 증가합니다. 즉, 정확하게 지정된 회귀 분석의 추정치보다 실제 값에서 멀어 질 가능성이 있음을 의미합니다. 즉, 설명 변수의 새로운 값이 주어지면 과적 합 모형의 예측이 예측보다 덜 정확합니다. 올바르게 지정된 모델

다음은 2010 년 미국 50 개 주에 대한 로그 인구에 대한 로그 GDP의 도표입니다. 10 개 상태의 무작위 샘플이 선택되었으며 (빨간색으로 강조 표시됨) 해당 샘플에 대해 간단한 선형 모형과 5 차 다항식을 적합합니다. 다항식은 추가 자유도를 가지므로 직선보다 관측 된 데이터에 더 가까이 도달 할 수 있습니다. 그러나 50 개 주가 전체적으로 거의 선형 관계에 따르기 때문에, 표본 외 40 개 지점에서 다항식 모델의 예측 성능은 특히 외삽 할 때 덜 복잡한 모형에 비해 매우 열악합니다. 다항식은 표본의 랜덤 구조 (소음)의 일부에 효과적으로 맞았으며, 이는 더 많은 모집단에 일반화되지 않았습니다. 관찰 된 샘플 범위를 넘어서 외삽하는 것이 특히 나빴습니다. 답변의 개정판 .)

지나치게 복잡한 모델의 외삽

Ryi=2x1,i+5+ϵix2x3x1x2x3

require(MASS) #for multivariate normal simulation    
nsample <- 25   #sample to regress 
nholdout <- 1e6  #to check model predictions
Sigma <- matrix(c(1, 0.5, 0.4, 0.5, 1, 0.3, 0.4, 0.3, 1), nrow=3)
df <- as.data.frame(mvrnorm(n=(nsample+nholdout), mu=c(5,5,5), Sigma=Sigma))
colnames(df) <- c("x1", "x2", "x3")
df$y <- 5 + 2 * df$x1 + rnorm(n=nrow(df)) #y = 5 + *x1 + e

holdout.df <- df[1:nholdout,]
regress.df <- df[(nholdout+1):(nholdout+nsample),]

overfit.lm <- lm(y ~ x1*x2*x3, regress.df)
correctspec.lm <- lm(y ~ x1, regress.df)
summary(overfit.lm)
summary(correctspec.lm)

holdout.df$overfitPred <- predict.lm(overfit.lm, newdata=holdout.df)
holdout.df$correctSpecPred <- predict.lm(correctspec.lm, newdata=holdout.df)
with(holdout.df, sum((y - overfitPred)^2)) #SSE
with(holdout.df, sum((y - correctSpecPred)^2))

require(ggplot2)
errors.df <- data.frame(
    Model = rep(c("Overfitted", "Correctly specified"), each=nholdout),
    Error = with(holdout.df, c(y - overfitPred, y - correctSpecPred)))
ggplot(errors.df, aes(x=Error, color=Model)) + geom_density(size=1) +
    theme(legend.position="bottom")

다음은 한 번의 실행 결과입니다. 그러나 여러 번 생성 된 샘플의 효과를 보려면 시뮬레이션을 여러 번 실행하는 것이 가장 좋습니다.

>     summary(overfit.lm)

Call:
lm(formula = y ~ x1 * x2 * x3, data = regress.df)

Residuals:
     Min       1Q   Median       3Q      Max 
-2.22294 -0.63142 -0.09491  0.51983  2.24193 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)
(Intercept) 18.85992   65.00775   0.290    0.775
x1          -2.40912   11.90433  -0.202    0.842
x2          -2.13777   12.48892  -0.171    0.866
x3          -1.13941   12.94670  -0.088    0.931
x1:x2        0.78280    2.25867   0.347    0.733
x1:x3        0.53616    2.30834   0.232    0.819
x2:x3        0.08019    2.49028   0.032    0.975
x1:x2:x3    -0.08584    0.43891  -0.196    0.847

Residual standard error: 1.101 on 17 degrees of freedom
Multiple R-squared: 0.8297,     Adjusted R-squared: 0.7596 
F-statistic: 11.84 on 7 and 17 DF,  p-value: 1.942e-05

x1R2

>     summary(correctspec.lm)

Call:
lm(formula = y ~ x1, data = regress.df)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.4951 -0.4112 -0.2000  0.7876  2.1706 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)   4.7844     1.1272   4.244 0.000306 ***
x1            1.9974     0.2108   9.476 2.09e-09 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

Residual standard error: 1.036 on 23 degrees of freedom
Multiple R-squared: 0.7961,     Adjusted R-squared: 0.7872 
F-statistic:  89.8 on 1 and 23 DF,  p-value: 2.089e-09

R2R2

>     with(holdout.df, sum((y - overfitPred)^2)) #SSE
[1] 1271557
>     with(holdout.df, sum((y - correctSpecPred)^2))
[1] 1052217

R2y^y(올바로 지정된 모델보다 더 많은 자유도를 가지므로 "더 나은"맞춤을 얻을 수 있습니다). 회귀 계수를 추정하는 데 사용하지 않은 홀드 아웃 세트의 예측에 대한 제곱 오차의 합을 살펴보고 과적 합 모델이 얼마나 더 나쁜지를 알 수 있습니다. 실제로 정확하게 지정된 모델은 최상의 예측을하는 모델입니다. 모델 추정에 사용한 데이터 세트의 결과를 기반으로 예측 성능 평가를 수행해서는 안됩니다. 올바른 모델 사양으로 0에 가까운 더 많은 오류를 생성하는 오류 밀도도는 다음과 같습니다.

홀드 아웃 세트의 예측 오류

시뮬레이션은 여러 관련 실제 상황을 명확하게 나타냅니다 (단일 예측 변수에 의존하는 실제 반응을 상상하고 모형에 불필요한 "예측 변수"를 포함하는 것을 상상하십시오). 그러나 데이터 생성 프로세스를 사용할 수 있다는 이점이 있습니다. , 표본 크기, 과적 합 모델의 특성 등. 이것은 관측 된 데이터에 대해 일반적으로 DGP에 액세스 할 수 없으므로 과적 합의 영향을 검사 할 수있는 가장 좋은 방법이며, 여전히 데이터를 검토하고 사용할 수 있다는 의미에서 "실제"데이터입니다. 다음은 실험 해 볼만한 가치있는 아이디어입니다.

  • 시뮬레이션을 여러 번 실행하고 결과가 어떻게 다른지 확인하십시오. 큰 표본보다 작은 표본 크기를 사용하여 더 많은 변동성을 찾을 수 있습니다.
  • n <- 1e6x1
  • 분산-공분산 행렬의 비 대각선 요소를 사용하여 예측 변수 간의 상관 관계를 줄이십시오 Sigma. 양의 반 정도를 유지하는 것을 잊지 마십시오 (대칭 포함). 다중 공선 성을 줄이면 과적 합 된 모델이 그렇게 나쁘게 수행되지 않는다는 것을 알아야합니다. 그러나 상관 예측 변수는 실제 생활에서 발생한다는 점을 명심하십시오.
  • 과적 합 모델의 사양을 실험 해보십시오. 다항식 용어를 포함하면 어떻게됩니까?
  • ydf$y <- 5 + 2*df$x1 + rnorm(n=nrow(df))yxi
  • yx2x3x1df$y <- 5 + 2 * df$x1 + 0.1*df$x2 + 0.1*df$x3 + rnorm(n=nrow(df))x2x3xx1x2x3nsample <- 25x1x2x3nsample <- 1e6, 약한 효과를 꽤 잘 추정 할 수 있으며 시뮬레이션은 복잡한 모형이 단순한 모형보다 우수한 예측력을 가지고 있음을 보여줍니다. 이것은 "과적 합 (overfitting)"이 모델 복잡성과 이용 가능한 데이터의 문제인 방법을 보여줍니다.

1
(-1) 과적 합은 정확하게 지정된 모형에 나타나지 않는 "관련이없는"또는 "극단적 인"용어의 포함만으로 발생하는 것이 아니라는 점을 이해하는 것이 중요합니다. 실제로 많은 응용 분야에서 단순한 실제 모델에 대한 아이디어는 그다지 의미가 없으며 예측 모델링의 과제는 사용 가능한 데이터의 양에 비례하는 복잡성을 갖는 모델을 작성하는 것입니다.
Scortchi

1
나는 이민 개혁을 지원하기 위해 의회 의원에게 당신의 사진을 보낼 것입니다
프로토 타입

1
(+1) 편집 내용이 이해력을 희생시키지 않으면 서 과적 합에 대한 설명을 개선한다고 생각합니다.
Scortchi

1
@ Aksakal 나는 "과잉 적합에 적용되는 실제 예를 제시하는 방법에 대한 도움이 필요합니다"라는 질문을 해결하려고 노력했습니다. OP가 자신의 모범을 구성하기 위해 지나치게 적합하거나 "와서"라는 더 자연스러운 의미의 출판 된 논문을 찾도록 요청 받았는지 확실하지 않습니다. 과적 합이 나쁘면 실제 생활에서 왜 과적 합할까요? 내 대답에 따르면, 분석가가 과도하게 지정되었거나 과소 평가되지 않은 모델에 대해 실수를 저지르는 것을 선호 할 수 있습니다 (OVB에 대한 두려움 또는 관계가 곡선이라는 의심으로 인해). 그래프 / 시뮬레이션은 단순히 결과를 보여줍니다. 잘못된 샘플 외부 예측
Silverfish

1
@Aksakal 다항식 모델이 그래프에 대해 "비현실적"이라는 것은 분명하지 않습니다. 지배적 인 특징은 선형이지만 완전히 선형 임을 알고 있습니까? 만약 우리가 가상의 백만 개의 정치 단위에 접근 할 수 있고 어느 쪽이든 내 인생을 쌓아야한다면, 나는 모든 다항식 용어가 무의미하다는 것보다 약간 곡선적인 관계를 감지하는 것이 아니라 도박을하고 싶습니다. 그럼에도 불구하고, 낮은 n에 적합하지만 선형 모델 만이 과적 합을 피합니다. (이론적으로 이론적으로 무한한 "미국 상태"모집단의 샘플링 어려움으로 인해이 문제를 해결할 수 없습니다. 이것은 시뮬레이션 된 데이터의 이점입니다!)
Silverfish

4

내가 이것을 직접 이해하려고 할 때, 나는 실제 물체를 묘사하는 것과 유사하게 생각하기 시작했다. 그래서 당신이 일반적인 생각을 이해하고 싶다면 그것이 얻을 수있는 "실제 세계"라고 생각한다.

누군가에게 의자의 개념을 설명하여 그들이 찾은 새로운 물체가 의자인지를 예측할 수있는 개념적 모델을 얻도록한다고 가정 해 봅시다. 이케아에 가서 의자 샘플을 얻고 두 가지 변수를 사용하여 의자를 설명하기 시작하십시오. 앉을 수있는 다리가 4 개인 물체입니다. 글쎄, 그것은 또한 대변이나 침대 또는 다른 많은 것을 묘사 할 수 있습니다. 변수가 너무 적은 복잡한 분포를 모형화하려고하는 것처럼 모형이 적합하지 않습니다. 따라서 변수의 수를 늘리고 예를 들어 객체에 등이 있어야 함을 추가하십시오. 이제 의자 세트를 설명하는 꽤 수용 가능한 모델이 있지만 새 객체를 하나로 식별 할 수있을 정도로 일반적입니다. 모델은 데이터를 설명하고 예측할 수 있습니다. 그러나 모든 의자가 검은 색 또는 흰색이며 나무로 만들어진 세트가 있다고 가정하십시오. 모델에 이러한 변수를 포함하기로 결정하면 갑자기 플라스틱 노란색 의자가 의자로 식별되지 않습니다. 따라서 모형에 과적 합한 경우 일반적으로 의자의 특징 인 것처럼 데이터 세트의 특징을 포함 시켰습니다 (원하는 경우 샘플의 임의 변동을 다음과 같이 해석하여 "노이즈"를 "신호"로 식별 함). 전체 "실제 의자"의 특징). 따라서 샘플을 늘리고 새로운 재료와 색상을 포함 시키거나 모델의 변수 수를 줄이려고합니다. t 플라스틱 노란색 의자를 의자로 식별합니다. 따라서 모형에 과적 합한 경우 일반적으로 의자의 특징 인 것처럼 데이터 세트의 특징을 포함 시켰습니다 (원하는 경우 샘플의 임의 변동을 다음과 같이 해석하여 "노이즈"를 "신호"로 식별 함). 전체 "실제 의자"의 특징). 따라서 샘플을 늘리고 새로운 재료와 색상을 포함 시키거나 모델의 변수 수를 줄이려고합니다. t 플라스틱 노란색 의자를 의자로 식별합니다. 따라서 모형에 과적 합한 경우 일반적으로 의자의 특징 인 것처럼 데이터 세트의 특징을 포함 시켰습니다 (원하는 경우 샘플의 임의 변동을 다음과 같이 해석하여 "노이즈"를 "신호"로 식별 함). 전체 "실제 의자"의 특징). 따라서 샘플을 늘리고 새로운 재료와 색상을 포함 시키거나 모델의 변수 수를 줄이려고합니다.

이것은 추가 조사에서 단순한 유추와 분석이 될 수 있지만 일반적인 개념화로 작동한다고 생각합니다 ... 일부 설명이 필요하면 알려주십시오.


"잡음"과 "신호"의 개념과 과적 합 모델이 잡음 원인을 설명한다는 사실을 좀 더 자세히 설명해 주시겠습니까? 이것을 이해하는데 문제가 있습니다.
quirik

4

예측 모델링에서 아이디어는 현재 데이터를 사용하여 존재하며 향후 데이터로 일반화 될 수있는 추세를 발견하는 것입니다. 중요하지 않은 사소한 영향을 미치는 변수를 모델에 포함시킴으로써이 아이디어를 버리고 있습니다. 당신이하고있는 일은 특정 샘플에서 특정 기본 트렌드가 아닌 실제 노이즈 대신 랜덤 노이즈로 인해 발생하는 특정 트렌드를 고려하는 것입니다. 다시 말해, 변수가 너무 많은 모델은 신호를 발견하기보다는 노이즈에 적합합니다.

여기 내가 말하는 것에 대한 과장된 그림이 있습니다. 여기에서 점은 관측 된 데이터이고 선은 우리의 모델입니다. 완벽하게 맞는 것을보십시오. 정말 멋진 모델입니다! 그러나 트렌드를 실제로 발견 했습니까? 아니면 노이즈에 적합합니까? 아마도 후자 일 것입니다.

여기에 이미지 설명을 입력하십시오


4

과적 합의 형태는 스포츠에서 상당히 흔합니다. 즉, 미래 결과를 예측할 수있는 모호한 힘이 없거나 적지 않은 요인으로 과거 결과를 설명하는 패턴을 식별하는 것입니다. 이러한 "패턴"의 공통적 인 특징은 패턴에 대한 순수한 가능성이 아마도 가장 타당한 설명 일 수 있도록 종종 매우 적은 경우에 근거한다는 것입니다.

예를 들면 다음과 같은 것들이 있습니다 ( "따옴표"는 저에 의해 만들어 지지만 종종 비슷해 보입니다)

코치가 마법의 빨간 자켓을 입기 시작한 이래 팀 A는 모든 X 게임에서 승리했습니다.

비슷한:

우리는 플레이 오프 동안 자신을 면도하지 않을 것입니다. 왜냐하면 그것은 과거의 X 게임에서 승리하는 데 도움이 되었기 때문입니다.

덜 미신적이지만 과적 합의 형태 :

보루시아 도르트문트는 적어도 한 번만 득점 한 이전 분데스리가 원정 경기에서 2 골 이상을 잃었을 때 스페인 리그 챔피언스 리그 홈 경기에서 패배 한 적이 없습니다.

비슷한:

로저 페더러 (Roger Federer)는 그해 호주 오픈에서 준결승에 진출했을 때 그의 데이비스 컵 경기에서 유럽 상대에게 모두 우승했습니다.

처음 두 가지는 분명한 말도 안됩니다 (적어도 나에게는). 마지막 두 가지 예는 샘플에서 완벽하게 잘 맞을 수 있지만 (예 : 과거),이 "정보"가 도르트문트가 마드리드를 4 번 잃었을 때 그의 승률에 실질적으로 영향을 미치는 상대에게 베팅하는 것이 가장 기쁠 것입니다. 지난 토요일 샬케에서 1 명 또는 페더러가 조코 빅을 때리고 페더러가 그해 호주 오픈에서 우승 했음에도 불구하고.


3

여기에 누군가가 연구에서 그것을 발견했다는 의미가 아니라 많은 통계 관련 용어없이 일상적인 개념을 사용한다는 의미에서 "실제 세계"의 예가 있습니다. 어쩌면이 방법은 다른 분야의 훈련을받는 사람들에게 더 도움이 될 것입니다.

드문 질환이있는 환자에 대한 데이터가있는 데이터베이스가 있다고 상상해보십시오. 의대생이며이 질병의 위험 요소를 인식 할 수 있는지 확인하고 싶습니다. 이 병원에서 8 건의 질병이 발생했으며, 연령, 인종, 출생 순서, 어린이로서 홍역을 앓은 적이 있는지에 대한 100 가지의 무작위 정보를 기록했습니다. 또한이 질환이없는 8 명의 환자에 대한 데이터를 기록했습니다.

위험 요소에 대해 다음 휴리스틱을 사용하기로 결정합니다. 질병에 걸린 환자 중 둘 이상에서 한 요소가 특정 값을 가지지 만 통제 범위가 0 인 경우에는 위험 요소로 간주됩니다. (실제로는 더 나은 방법을 사용하지만 간단하게 유지하고 싶습니다). 환자 중 6 명은 채식주의 자이며 (대조군 중 어느 것도 채식주의 자 아님) 3 명은 스웨덴어 조상이 있으며, 2 명은 말더듬에 장애가 있습니다. 다른 97 가지 요인 중 하나 이상에서 발생하는 것은 없지만 대조군에는 존재하지 않습니다.

몇 년 후, 다른 누군가가이 고아 병에 관심을 가지고 당신의 연구를 복제합니다. 그는 다른 병원과 데이터 공유 협력을하는 더 큰 병원에서 근무하기 때문에 8 건이 아닌 106 건에 관한 데이터를 사용할 수 있습니다. 그리고 그는 말더듬의 유병률이 환자 그룹과 통제 그룹에서 동일하다는 것을 발견했다. 말더듬은 위험 요소가 아닙니다.

여기서 일어난 일은 당신의 소그룹이 우연히 25 %의 말더듬을 가지고 있다는 것입니다. 휴리스틱은 이것이 의학적으로 관련이 있는지 알 방법이 없었습니다. 모델에 포함하기에 충분한 "관심있는"데이터 패턴을 고려할시기를 결정하는 기준을 부여했으며 이러한 기준에 따라 말더듬이 충분히 흥미로 웠습니다.

실수와 실제로는 관련이없는 매개 변수가 실수로 포함되어있어 모델이 과적 합되었습니다. 환자 8 명 + 대조군 8 명에 적합하지만 실제 데이터에는 적합하지 않습니다. 모형이 현실을 설명하는 것보다 표본을 더 잘 설명하면 초과 적합이라고합니다.

기능이있는 8 명의 환자 중 3 명의 임계 값을 선택했다면 발생하지 않았을 것입니다. 그러나 실제로 흥미로운 것을 놓칠 확률이 더 높습니다. 특히 많은 사람들이 위험 인자를 보이는 소수의 사람들에게만 질병이 발생하는 의학에서, 그것은 어려운 절충안입니다. 그것을 피하는 방법이 있습니다 (기본적으로 두 번째 샘플과 비교하여 설명력이 동일하게 유지되는지 또는 떨어지는 지 확인하십시오). 그러나 이것은 또 다른 질문의 주제입니다.



3

다음은 내가 과잉을 돕고 실패하는 것을 피하는 데 도움이 된 실제 과장된 예입니다.

나는 각각 50 개 이하의 데이터 포인트를 가진 수천 개의 독립적 인 이변 량 시계열을 가지고 있었고, 모델링 프로젝트는 각각에 벡터 자동 회귀 (VAR)를 맞추는 것을 포함했다. 관측에 걸쳐 정규화, 분산 성분 추정 등을 시도하지 않았습니다. 시점은 1 년 동안 측정되었으므로 데이터는 각 시계열에서 한 번만 나타나는 모든 종류의 계절 및 주기적 효과를 적용했습니다.

데이터의 한 부분 집합은 나머지 데이터와 비교할 때 엄청나게 높은 Granger 인과 관계를 나타 냈습니다. 스팟 검사는이 서브 세트에서 긍정적 인 스파이크가 한두 개의 간격으로 발생하고 있지만 두 스파이크가 외부 소스에 의해 직접적으로 발생했으며 한 스파이크가 다른 스파이크를 유발 하지 않았 음 을 명확하게 알 수 있습니다 . 이 모델을 사용한 표본 외부 예측은 모델이 과적 합 되었기 때문에 아마도 잘못되었을 것입니다. 스파이크를 나머지 데이터로 평균화하여 스파이크를 "평활화"하는 대신 실제로 스파이크가 실제로 추진하고 있다는 관찰은 거의 없었습니다. 추정치.

전반적으로, 나는 프로젝트가 나쁘게 진행되지 않았다고 생각하지만 그것이 그 어느 때보 다 유용한 결과를 낳지 않았다고 생각합니다. 그 이유 중 하나는 단지 하나 또는 두 개의 지연만으로도 많은 독립적 인 VAR 절차가 데이터와 노이즈를 구별하는 데 어려움을 겪고 있었기 때문에 이에 대한 통찰력을 제공하는 비용으로 후자에게 적합했기 때문입니다. 전자.


1

이 스레드의 많은 지적인 사람들은 --- 나보다 통계에 훨씬 더 정통합니다. 그러나 나는 여전히 평신도의 예를 이해하기 쉽지 않습니다. 대통령의 예는 전형적인 과적 합과 관련하여 법안에 크게 영향을 미치지 않습니다. 왜냐하면 그것이 과장된 주장 각각에 기술적으로 과적 합하는 반면, 과적 합 모델은 단지 한 요소 만이 아니라 주어진 소음보다 과적 합하기 때문입니다.

나는 wikipedia의 바이어스-분산 트레이드 오프 설명의 차트를 정말로 좋아합니다 : http://en.wikipedia.org/wiki/Bias%E2%80%93variance_tradeoff

(가장 낮은 차트는 과적 합의 예입니다).

완전한 점보 점보처럼 들리지 않는 실제 예를 생각하기가 어렵습니다. 아이디어는 데이터가 측정 가능하고 이해하기 쉬운 변수 --- 부분 노이즈로 인해 발생한다는 것입니다. 이 노이즈를 패턴으로 모델링하려고하면 정확도가 떨어집니다.

고전적인 예는 MS Excel에서 R ^ 2를 기반으로 SOLELY를 기반으로 모델링하는 것입니다 (무의미한 방법에 관계없이 다항식을 사용하여 데이터에 최대한 가깝게 방정식 / 모델을 맞추려고합니다).

온도에 따라 아이스크림 판매를 모델링하려고한다고 가정 해 봅시다. "실제"데이터가 있습니다. 데이터를 플로팅하고 R ^ 2를 최대화하려고합니다. 실제 데이터를 사용하면 가장 가까운 적합 방정식이 선형 또는 2 차가 아닙니다 (논리적 의미가 있음). 거의 모든 방정식과 마찬가지로 더 무의미한 다항식 항을 더 많이 추가하면 (x ^ 6 -2x ^ 5 + 3x ^ 4 + 30x ^ 3-43.2x ^ 2-29x) 데이터에 더 가깝습니다. 그렇다면 온도가 아이스크림 판매와 어떻게 관련이 있습니까? 그 말도 다항식을 어떻게 설명하겠습니까? 사실, 그것은 진정한 모델이 아닙니다. 데이터가 과적 합되었습니다.

당신은 소음에 대해 잘 모르고 있습니다. 판매 촉진이나 다른 변수 또는 "노이즈"가 우주에서 날개를 퍼덕 거리는 나비와 같은 "노이즈"때문일 수 있습니다 .--- 온도를 기준으로 모델링하려고 시도했습니다. 일반적으로 노이즈 / 오류의 평균이 0이 아니거나 자동 상관 관계인 경우, 더 많은 변수가 있다는 의미입니다. 결국에는 랜덤하게 분포 된 노이즈에 도달하지만 여전히 최선의 방법입니다. 설명 해봐.


2
대통령 만화에서 나중에 '모델은' 않습니다 주어진 모든 소음을 맞습니다.
Ben Voigt

어리석은 규칙이 모든 과거 대통령을 정확하게 예측하더라도 만화는 대부분의 과장된 시나리오와 유사하지 않습니다. 대부분의 예측은 이분법 변수를 예측하지 않습니다. 또한 다음 선거에서 깨어 질 규칙을 유머러스하게 언급합니다. 다시 말해, 초과 적합 모델이 항상 잘못 보장되어 미래를 완벽하게 예측할 수 있습니다. 대부분의 과적 합 모델은 외부 변수로 테스트 할 수있는 1 개의 잘못된 변수를 기반으로하지 않습니다. 일반적으로 모델에 너무 많은 변수를 기반으로하며, 아마도 R ^ 2를 줄이기 위해 모두 발생합니다.
존 밥슨

0

대부분의 최적화 방법에는 퍼지 인자 (일명 하이퍼 파라미터)가 있습니다. 실제 예 :

Nmin=5,  finc=1.1,  fdec=0.5,  αstart=0.1,  fα=0.99.

이것이 지나치게 적합합니까, 아니면 특정 문제에 적합합니까?



0

제가 가장 좋아하는 것은 1998 년 월드컵 축구 대회 전에 발견 된“3964 공식”입니다.

브라질은 1970 년과 1994 년에 우승했습니다.이 두 숫자를 합하면 3964를 얻게됩니다. 독일은 1974 년과 1990 년에 승리하여 3964 년에 다시 합산했다. 아르헨티나가 1978 년과 1986 년에 우승 한 것과 같은 것 (1978 + 1986 = 3964).

이것은 매우 놀라운 사실이지만 모든 사람들은 그 규칙에 근거하여 미래의 예측을 근거로 삼는 것이 바람직하지 않다는 것을 알 수 있습니다. 실제로이 규칙은 1998 년 월드컵 우승자가 1966 년 + 1998 년 = 3964 년 이후 잉글랜드 였고 1966 년 영국이 승리 했어야한다고 규정하고 있습니다.


-2

조금 직관적이지만 도움이 될 것입니다. 새로운 언어를 배우고 싶다고 가정 해 봅시다. 어떻게 배우나요? 코스에서 규칙을 배우는 대신 예제를 사용합니다. 특히, TV 쇼. 그래서 당신은 범죄 쇼를 좋아하고 몇 가지 경찰 쇼 시리즈를 볼 수 있습니다. 그런 다음 또 다른 범죄 쇼를보고 그 중 일부 시리즈를 시청하십시오. 세 번째 쇼에서 당신은 거의 모든 것을 알고 문제 없습니다. 영어 자막이 필요하지 않습니다.

그러나 다음에 방문 할 때 새로 배운 언어를 길거리에서 시험 해보면 "책임자! 그 남자가 내 가방을 들고 그 여자를 쏴 버렸다!" 귀하의 '훈련 오류'가 0 인 동안, 언어의 '과적 합', 제한된 단어의 하위 집합만을 연구하고 충분히 가정하여 '테스트 오류'가 높습니다.


8
그것은 과잉 적합하지 않고 단지 언어의 하위 집합을 배우는 것입니다. 범죄를 본 후 모든 범죄 관련 주제에서 영어와 일치하지만 다른 주제에 대해 말할 때 완전히 횡설수설 (또는 아마도 중국어) 인 전체 언어이지만 이상한 언어를 배우면 과적 합이됩니다.
amoeba
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.