2012-11-27 69 views
3

我正在預測一大組時間序列(5,000+)。我希望採用分層方法來做到這一點,我是在更高級別進行預測,然後將預測分配給每個SKU。我認爲有必要這樣做,以便在較高級別(自上而下)進行預測的同時放大較低的地理細節級別。如何在多級別層次結構中使用'hts'?

例如,下面您會看到我正在考慮的結構示例。

Total 
    => Europe 
    => Netherlands 
     => RegionA 
      => Client_A_in_Netherlands 
       => SKU1 
       => SKU2 
       => SKU3 
      => Client_Q_in_Netherlands 
       => SKU15 
    => Germany1 
     => (...) 
      => ClientY_in_Germany 
       => SKU89 
    => Africa 
    => South Africa 
     => (...) 
      => Client_Z_in_SouthAfrica 
       => SKU792 

我想在大陸級(即歐洲或非洲)層面做自上而下的預測。然後將適當的份額分配給國家,然後分配給該國家內的客戶,然後分配給SKU。

在'hts'包的文檔中有一個關於如何使用兩級層次結構來實現這個功能的例子。我想知道是否有人可以建議如何使用多級層次結構進行此操作?

回答

5

我們在hts包(v4 +)中引入了一個新概念nodes來取代舊的gmatrix。爲了說明nodes的用法,下面是一個包含4個級別(不包括總數)和24個底部時間系列的層次結構示例。

bts <- ts(matrix(rnorm(240), nrow = 10, ncol = 24)) 
nodes <- list(2, rep(2, 2), rep(2, 4), rep(3, 8)) 
hts(bts, nodes = nodes) 

nodes的每個元素指定每個節點在該級別具有的子元素的數量。

樹情節如下所示:

=> A 
    => AA 
    => AAA 
     => 3 bottom time series 
    => AAB 
     => 3 bottom time series 
    => AB 
    => ABA 
     => 3 bottom time series 
    => ABB 
     => 3 bottom time series 
=> B 
    => BA 
    => BAA 
     => 3 bottom time series 
    => BAB 
     => 3 bottom time series 
    => BB 
    => BBA 
     => 3 bottom time series 
    => BBB 
     => 3 bottom time series 
3

的文檔是有點簡潔,而且定義hts

In the pdf file link to the reference manual的「半邊天」包時,你可以使用多層次結構,你會發現到紙上的參考。具體地,在第7頁的PDF格式,其中htseg1被引用的:

R.Ĵ海德門,R. A.艾哈邁德,G. Athanasopoulos和H.L.上(2011)的最優組合 預測分層的時間序列。 計算統計和數據分析,55(9),2579-2589http://robjhyndman.com/papers/hierarchical/

該鏈接(作爲工作論文的免費在線版本)有一個3級的示例,與您的大陸客戶示例非常相似。 http://robjhyndman.com/papers/Hierarchical6.pdf(參見標題爲數值模擬的第14頁第6節)

希望有幫助。

相關問題