회귀 모형이 과적 합한 시점을 탐지하는 방법은 무엇입니까?


14

작업을 수행하는 사람 일 때 수행중인 작업을 알고 있으면 모델에 과적 합한 시점에 대한 감각이 생깁니다. 우선, 모델의 조정 된 R 제곱에서 추세 또는 악화를 추적 할 수 있습니다. 주요 변수의 회귀 계수 p 값에서 유사한 저하를 추적 할 수도 있습니다.

그러나 다른 사람의 연구를 읽고 자신의 내부 모델 개발 프로세스에 대한 통찰력이 없으면 모델이 과적 합인지 여부를 명확하게 감지 할 수 있습니다.


연구가 표준 회귀 통계를 공개한다면, 당신은 계수의 t 통계와 p 값에 초점을 맞출 수 있습니다. 모형의 RSquare가 높은 경우 그러나 하나 이상의 변수는 stat <2.0에 있습니다. 이것은 붉은 깃발이 될 수 있습니다. 또한 일부 변수에 대한 계수의 부호가 논리를 무시하는 경우 아마도 다른 적신호 일 수 있습니다. 연구에서 모델의 보류 기간을 공개하지 않으면 다른 위험 신호일 수 있습니다. 바라건대, 당신은 다른 더 나은 아이디어를 가질 것입니다.
심파

한 가지 방법은 다른 (그러나 유사한) 데이터에서 모델이 어떻게 수행되는지 확인하는 것입니다.
셰인

답변:


15

교차 검증 및 정규화는 과적 합을 방지하는 매우 일반적인 기술입니다. 빠른 확인을 위해 교차 검증 ( 거울 ) 사용에 관한 Andrew Moore의 튜토리얼 슬라이드를 추천 합니다.주의 사항에 특히주의하십시오. 자세한 내용은 EOSL의 3 장과 7 장을 읽으십시오 . 여기에는 주제와 관련 내용이 자세히 설명되어 있습니다.


2
교차 검증에 대한 Andrew Moore의 튜토리얼은 세계 최고입니다.
Sympa

7

모델을 직접 피팅 할 때는 일반적으로 피팅 프로세스 중에 AIC 또는 BIC 와 같은 정보 기준을 사용 하거나 , 최대 가능성을 기반으로하는 모델에 대한 우도 비율 검정 또는 최소 제곱을 기반으로하는 모델에 대한 F- 검정 을 사용합니다.

추가 매개 변수에 불이익을 준다는 점에서 모두 개념적으로 유사합니다. 모델에 추가 된 각각의 새 매개 변수에 대해 "추가 설명력"의 임계 값을 설정합니다. 그것들은 모두 정규화의 한 형태입니다 .

다른 모델의 경우 분석법 섹션에서 이러한 기법이 사용되는지 확인하고 매개 변수 당 관측치 수와 같은 경험 법칙을 사용합니다. 매개 변수 당 약 5 개 (또는 더 적은)의 관측치가있는 경우 궁금합니다.

중요한 것은 모델에서 변수가 "유의"할 필요는 없음을 항상 기억하십시오. 나는 혼란 스러울 수 있으며 다른 변수의 효과를 추정하는 것이 목표라면 그 근거에 포함되어야합니다.


AIC 및 BIC 테스트에 대한 링크에 감사드립니다. 변수를 추가하기 위해 모델에 불이익을 주어 유사한 일을하는 많은 가치를 조정 R 광장에 추가합니까?
Sympa

1
@Gaeten, Adjusted R-squared는 before vs after 모델의 F- 검정이 유의하면 증가하므로 일반적으로 조정 R- 제곱을 계산해도 p- 값이 반환되지 않습니다.
Thylacoleo

1
@Gaeten-AIC 및 BIC는 F- 검정 및 조정 된 R- 제곱보다 일반적이며 최소 제곱에 맞는 모형으로 제한됩니다. AIC & BIC는 가능성을 계산하고 자유도를 알 수있는 임의의 모델에 사용할 수 있습니다.
Thylacoleo

변수 집합을 테스트하는 것은 정규화 (축소) 형식이 아닙니다. 그리고 테스트는 변수를 제거하려는 유혹을 주며 과적 합을 줄이는 것과는 아무런 관련이 없습니다.
Frank Harrell

@FrankHarrell 당신의이 오래된 의견에 대해 자세히 설명해 주시겠습니까? 변수를 제거하면 초과 적합을 줄일 수 있으며, 초과 적합에 사용할 수있는 자유도가 줄어들 기 때문에 다른 모든 것은 동일합니다. 나는 여기에 약간의 뉘앙스가 빠져 있다고 확신합니다.
Lepidopterist

5

BICmM

P(model m is true|one of the M models is true)wmexp(12BICm)j=1Mwjexp(12BICj)
=11+jmMwjwmexp(12(BICjBICm))

wjwj=1

BICfinal<BICjpd

M1+p+(p1)++(pd+1)=1+p(p1)(pd)(pd1)2

M1+p+(p1)++(d+1)=1+p(p1)d(d1)2

MBICjλBICm=BICjλ

11+(M1)exp(λ2)

λMM

11+p(p1)d(d1)2exp(λ2)

Now suppose we invert the problem. say p=50 and the backward selection gave d=20 variables, what would λ have to be to make the probability of the model greater than some value P0? we have

λ>2log(2(1P0)P0[p(p1)d(d1)])

Setting P0=0.9 we get λ>18.28 - so BIC of the winning model has to win by a lot for the model to be certain.


+1, this is really clever. Is this published somewhere? Is there an 'official' reference for this?
gung - Reinstate Monica

@gung - why thank you. Unfortunately, this was a "back of the envelope" answer. I'm sure there's problems with it, if you were to investigate in more detail.
probabilityislogic
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.