0

我有一個時間序列,我想用python中的機器學習來預測(使用神經網絡,但並不重要)。除了以前的值($ t-1 $,$ t-2 $,...等)使用信息之外,我想使用另一個變量:當天的小時Python機器學習:反映類之間的相關性的類標籤

笨方法

一種方法是映射:

$ 00:00 \ RIGHTARROW 0 $

$ 01:00 \ RIGHTARROW 1 $

。 ... 等等。所以我想要$ 24 $ $ $ {0,1,2,...,23} $。但是有一個問題:$ 23 $和$ 0 $關閉,但同時這並不反映在這裏。

第二種方法:一個熱門編碼?

另一種方法是創建帶有$ 24 $條目的矢量,其中所有元素都爲零,除了我們正在查看的類。這相當於創建虛擬變量。例如:

$ 00:00 \ RIGHTARROW [1,0,0,0,...,0] $

$ 01:00 \ RIGHTARROW [0,1,0,0 ,. ..,0] $

...等等。但是有一個問題:這並不能完全反映相關性!

其他方法

我想使用一些環狀結構,例如$罪,$ COS $也許極座標?

我還沒有找到解決辦法,但這是我的進步:

  1. 通過歸他們
  2. 規模將它們映射笨方法的類標籤$ [0,1] $,範圍從$ 0 $到$ 2 \ pi $。
  3. 對他們使用$ cos $或$ sin $。

這種方法不起作用,但我可以看到一些光..任何想法?

回答

0

我有點發現一個解決方案。從類別標籤[0,1,2,3,4,5]我們使用類標籤作爲第一列構造如下

array([[ 0, 15, 24, 33, 42, 51], 
     [ 1, 10, 25, 34, 43, 52], 
     [ 2, 11, 20, 35, 44, 53], 
     [ 3, 12, 21, 30, 45, 54], 
     [ 4, 13, 22, 31, 40, 55], 
     [ 5, 14, 23, 32, 41, 50]]) 

這是創建。然後第二列從10開始到15,但是它被移動以便「間隙」在第一和第二標籤之間,而不是最後一個和第一個。你重複一遍。

然後分配

0 --> [ 0, 15, 24, 33, 42, 51] 
1 --> [ 1, 10, 25, 34, 43, 52] 

等.. 然後以常態FO任何兩個「相鄰」矢量類的差是一樣的。因此我們沒有任何差距。

我認爲可能這類工作,但我不知道我是否能送入一個功能

+0

實際上,這並不因爲如果我們點積這個矩陣的權重向量(或矩陣)工作這一點,最終的條目已經失去了「親密度」 –