1. 程式人生 > >時間特徵在深度學習中的表示問題

時間特徵在深度學習中的表示問題

這幾天對於時間序列的預測,需要時間這一特徵值,月份,星期等等。對於這些時間序列特徵需要怎麼去刻畫和表示嗯?

  1. one-hot方法
    一個直觀想到的方法就是one-hot法,但是仔細考慮一下,one-hot真的適合表示時間序列嗎?
    one-hot適用於的特徵應該是分類特徵,而且不同類別之間的距離是沒有差別的,比如紅黃藍三種顏色,漢字等等用one-hot表示是很好的。但是對於時間序列,5點和6點跟18點之間的距離明顯是不同的,所以用one-hot來度量的話,會損失非常多的資訊。
  2. 數字表示
    那麼第二種能想到的方法就是用數字去表示,比如1代表1點,4代表4點等等,但是面臨的一個問題就是23點明明和0點距離很近,但是用這種方法會導致23點和0點距離太遠,造成一些誤差。

造成上述誤差的因素在於時間序列有周期性,比如一天的24小時,一週的7天等等,那麼我們將其做一個轉換,將其轉換成周期變數即可
( c o s ( 2

π ) , s
i n ( 2 π ) ) (cos(\frac{2\pi 變數}{週期}), sin(\frac{2\pi 變數}{週期}))
如上所示,將一個時間變數變成一個二維平面圓周上的點。這樣就能解決週期性因素。

參考文獻:

  1. Top 6 errors novice machine learning engineers make
  2. Use of circular predictors in linear regression