我在看面板數據,其被構造是這樣的:面板數據
D = \{(x^{(k)}_{t},y^{(k)}_{t})\,|\, k=1,\dots,N\, , t=t_0,\dots,t_k \}_{k=1}^{N}
其中x^{(k)}
表示k
「個序列,x^{(k)}_{t}
表示k
」個序列值在時間t
,此外x^{(k)}_{i,t}
是載體x^{(k)}_{t}
中的i
'th條目。那就是x^{(k)}_{t}
是'th序列在時間t
的特徵向量。子腳本和超級腳本對於標籤數據y^{(k)}_{t}
意味着相同的東西,但是這裏是y^{(k)}_{t} \in \{0,1\}
。
用明白的話說:數據集包含隨時間觀察到的個體,並且觀察個體的每個時間點記錄他是否購買物品(y\in \{0,1\}
)。
我想使用來自Keras的LSTM單元的遞歸神經網絡來預測某個人是否會在給定的時間點購買物品。我只能找到RNN的例子,其中每個序列都有一個標籤值(philipperemy link),而不是每個序列元素都有標籤值的例子,如我所描述的問題。
到目前爲止,我的方法一直是創建一個尺寸(樣本,時間步長,特徵)張量,但我無法弄清楚如何格式化標籤,以便keras
可以將它們與特徵相匹配。它應該是這樣的(樣本,時間步長,1),其中最後一個維度表示包含0或1的標籤值的單個維度。
此外,我遇到的一些方法會拆分序列,子序列被添加到訓練數據中,因此極大地增加了對內存的需求(mlmastery link)。在我的情況下,這是不可行的,因爲我有多個GB的數據,如果我添加了子序列,我將無法將它存儲在內存中。
我想用這個模型是這樣的:
mod = Sequential()
mod.add(LSTM(30,input_dim=116, return_sequences = True))
mod.add(LSTM(10))
mod.add(Dense(2))
沒有人有經驗的keras
面板數據的工作?
數學計算模式似乎不工作,我跟着這個教程:http://meta.math.stackexchange.com/questions/5020/mathjax-basic-tutorial-and-quick-reference –