Time-Series

隨機森林回歸和趨勢時間序列

  • October 7, 2015

我正在使用具有確定性線性趨勢的單變量時間序列將隨機森林模型與 GLS 模型進行比較。我將在 GLS 模型中添加一個線性時間趨勢協變量(以及其他預測變量)來解釋變化的趨勢。為了在我的比較中保持一致,我也希望將此預測器添加到隨機森林回歸模型中。我一直在尋找有關此主題的文獻,但找不到太多。

有誰知道出於任何原因在隨機森林回歸中添加這種類型的預測器是否不合適?隨機森林回歸已經包含了時間滯後變量來解釋自相關。

當然,RF 可以識別和建模數據中的長期趨勢。但是,當您嘗試預測從未見過的值時,問題會變得更加複雜,因為您經常嘗試使用時間序列數據。例如,如果看到活動在 1915 年至 2015 年期間呈線性增長,您會預計它在未來會繼續這樣做。然而,RF 不會做出這樣的預測。它將預測所有未來變量的活動與 2015 年相同。

from sklearn import ensemble
import numpy as np
years = np.arange(1916, 2016)
#the final year in the training data set is 2015
years = [[x] for x in years]
print 'Final year is %s ' %years[-1][0]
#say your ts goes up by 1 each year - a perfect linear trend
ts = np.arange(1,101)
est = ensemble.RandomForestClassifier().fit(years,ts)
print est.predict([[2013], [2014], [2015], [2016] , [2017], [2018]])

上面的腳本將打印 2013、2014、2015、2015、2015、2015。在 RF 中添加滯後變量在這方面沒有幫助。這麼小心。我不確定將趨勢數據添加到您的 RF 是否會達到您的預期。

引用自:https://stats.stackexchange.com/questions/175908

comments powered by Disqus