회귀 분석에서 최근 관측치에 더 많은 가중치를 할당


9

R에서 최근 관측치에 더 많은 가중치를 할당하려면 어떻게해야합니까?

나는 이것을 일반적으로 묻는 질문이나 욕망으로 생각하지만 이것을 구현하는 방법을 정확히 알아내는 데 어려움을 겪고 있습니다. 나는 이것을 많이 찾으려고 노력했지만 좋은 실제 예를 찾을 수는 없다.

내 예에서는 시간이 지남에 따라 큰 데이터 세트가 있습니다. 최신 데이터 행에 일종의 지수 가중치를 적용하고 싶습니다. 따라서 2015 년의 관측치가 2012 년의 관측치보다 모형을 훈련시키는 데 더 중요하다는 일종의 지수 함수가 있습니다.

내 데이터 세트 변수에는 범주 값과 숫자 값이 혼합되어 있으며 내 목표는 숫자 값입니다.

CARET 패키지에서 GBM / Random Forest와 같은 모델을 사용하여 이것을 테스트 / 시도하고 싶습니다.

업데이트 질문

두 지점 사이의 날짜 거리에 따라 가중치를 기하 급수적으로 감쇠시키는 방법에 대한 아래의 답변에 감사드립니다.

그러나 캐럿에서이 모델을 훈련 할 때 가중치가 정확히 어떻게 반영됩니까? 각 교육 행의 가중치는 미래의 특정 지점과 그 지점이 이전에 발생한 시점 사이의 거리입니다.

가중치는 예측 중에 만 작용합니까? 그들이 훈련 중에 게임을 시작한다면, 다양한 크로스 폴드가 다양한 무게를 가지기 때문에 모든 종류의 문제를 일으키지 않을 것입니다.


3
질문자가 통계 문제를 명확히해야하기 때문에 Closevote. GBN 또는 RF가 여기에 적합한 지 확실하지 않습니다. 제안 제안 CV.com
DWin

확인. 곧 예제를 추가하겠습니다. 나는 인터넷에서 이런 종류의 질문을 보았지만 그것을 적용 / 해결하는 구체적인 예는 없습니다.
user3788557

답변:


5

R에서 최근 관측치에 더 많은 가중치를 할당하려면 어떻게해야합니까?

각 관측과 관련된 타임 스탬프가 있다고 생각합니다. 변수를 계산할 수 있습니다 timeElapsed = modelingTime - observationTime. 이제 간단한 지수 함수를로 적용합니다 W=K*exp(-timeElapsed/T). 여기서 K스케일링 상수이며 붕괴 함수 T시간 상수 입니다. W대소 문자 가중치로 작동합니다.

내가 아는 한, 많은 기능은 매개 변수 로 caret허용 weight됩니다.이 매개 변수는 해당 관측에 제공되는 대소 문자 가중치 열입니다 (따라서 #rows와 동일한 길이).


1
의 기능은 caret::train입니다 weights.
timcdlucas

Ujjwal 감사합니다-그러나 방정식에서 'K'를 결정하는 방법은 무엇입니까? 지침이나 모범 사례? 또한 붕괴 기능에 대한 '시간주기'는 무엇을 의미합니까?
user3788557

K는 스케일링 상수 일 뿐이며 모델 결과에 큰 영향을 미치지 않습니다. 대소 문자 가중치 값의 범위가 0-1 범위에 근접하도록 일부 값을 설정할 수 있습니다. "시간주기"와 관련하여 1 차 지수 감쇠 기능 또는 평균 수명에 대한 시간 상수라고도합니다. Wikipedia에서 찾아 볼 수 있습니다.
Ujjwal Kumar

내 게시물 업데이트를 참조하십시오. 훈련 중에 제대로 작동합니까? 테스트 세트에 대해 가중치를 적용 할 때만 가중치를 적용 할 수 있으므로 교육 모델에 치우침이 있습니까? 훈련 세트가 무작위로 섞이면 과거에 가격을 예측하기 위해 더 높은 가중치를 사용하거나 시간이 가까워지지 않은 기간에 대비하면 좋지 않을 수 있습니다.
user3788557

사례 가중치가 없으면 모델 교육이 기존 데이터와 새 데이터 모두에 동일한 중요성을 부여하지만 제안 된 사례 가중치를 사용하면 최신 데이터에 더 중요하게 적용되므로 이러한 의미에서 새로운 관측에 편향됩니다. 당신이 원하는 것. "무게가 테스트 케이스에만 허용 될 수있는"이유를 이해하지 못합니다 . 또한 훈련 세트가 무작위로 섞일 때 이전 값에 더 높은 가중치가 사용됩니까? 때 modelingTime은 모든 교육의 경우에 동일하게 유지된다. PS 케이스 가중치는 모델을 사용할 때만 적용되지 않으며 훈련 기간에만 적용됩니다.
Ujjwal Kumar

0

데이터 (분석가의 가정이 아닌 추측)는 종종 가중치 체계의 형태를 제안 할 수 있습니다. 이는 가중 최소 제곱 모델에 대한 적절한 가중치가 오차 분산에서 발견 된 통계적으로 유의 한 차이에서 얻은 GLS를 통해 수행됩니다. ARIMA (Tsay 절차)http://docplayer.net/12080848-Outliers-level-shifts-and-variance-changes-in-time-series.html을 사용 하여 변경 및 이상치 탐지를 살펴보십시오 . 데이터를 게시하려면 여기에 게시하면 도움이 될 수있는 소프트웨어에 정기적으로 액세스 할 수 있도록 노력하겠습니다.

사용중인 소프트웨어의 R 버전이 있습니다.

당신은 볼 수 ARIMA과 개입 분석에서 통제 변수를 포함하는 방법? 이는 가중치가 어떻게 식별되고 에러 분산을 안정화시키는 데 사용되는지에 대한 예를 가지므로, 특정 이전 값을 효과적으로 믿거 나 불신 / 할인 / 가중 / 신뢰할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.