MATLAB用深度學(xué)習(xí)長短期記憶 (LSTM) 神經(jīng)網(wǎng)絡(luò)對智能手機傳感器時間序列數(shù)據(jù)進行分類
原文鏈接:http://tecdat.cn/?p=26318
原文出處:拓端數(shù)據(jù)部落公眾號
此示例說明如何使用長短期記憶 (LSTM) 網(wǎng)絡(luò)對序列數(shù)據(jù)的每個時間步長進行分類。
要訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)對序列數(shù)據(jù)的每個時間步進行分類,可以使用?序列對序列 LSTM 網(wǎng)絡(luò)。序列對序列 LSTM 網(wǎng)絡(luò)使您能夠?qū)π蛄袛?shù)據(jù)的每個單獨時間步進行不同的預(yù)測。
此示例使用從佩戴在身上的智能手機獲取的傳感器數(shù)據(jù)。該示例訓(xùn)練 LSTM 網(wǎng)絡(luò),以在給定時間序列數(shù)據(jù)的情況下識別佩戴者的活動,這些數(shù)據(jù)表示三個不同方向的加速度計讀數(shù)。訓(xùn)練數(shù)據(jù)包含七個時間序列數(shù)據(jù)。每個序列具有三個特征并且長度不同。數(shù)據(jù)集包含六個訓(xùn)練觀察和一個測試觀察。
加載序列數(shù)據(jù)
加載人類活動識別數(shù)據(jù)。該數(shù)據(jù)包含從佩戴在身上的智能手機獲得的七個時間序列的傳感器數(shù)據(jù)。每個序列具有三個特征并且長度不同。這三個特征對應(yīng)于三個不同方向的加速度計讀數(shù)。
XTrain

在圖中可視化一個訓(xùn)練序列。繪制第一個訓(xùn)練序列的第一個特征,并根據(jù)相應(yīng)的活動為繪圖著色。
figure
for j = 1:numel
label = classes;
idx = find
hold on
plot
end

定義 LSTM 網(wǎng)絡(luò)架構(gòu)
定義 LSTM 網(wǎng)絡(luò)架構(gòu)。將輸入指定為大小為 3 的序列(輸入數(shù)據(jù)的特征數(shù))。指定一個具有 200 個隱藏單元的 LSTM 層,并輸出完整的序列。最后,通過包括一個大小為 5 的全連接層,然后是一個 softmax 層和一個分類層來指定五個類。
layers = [ ...
seuenceutLaer
lsmLyer
fulyCnectdyer
sotmLyer
clssfcainLyr];
指定訓(xùn)練選項。將求解器設(shè)置為?'adam'
。訓(xùn)練 60 個 epoch。
使用指定的訓(xùn)練選項訓(xùn)練 LSTM 網(wǎng)絡(luò)?trainNetwork
。每個 mini-batch 包含整個訓(xùn)練集,因此每個 epoch 更新一次圖。序列很長,因此處理每個小批量和更新繪圖可能需要一些時間。

測試 LSTM 網(wǎng)絡(luò)
加載測試數(shù)據(jù)并在每個時間步進行分類。
加載人類活動測試數(shù)據(jù)。?XTest
?包含一個維度為 3 的單個序列。??YTest
?is 包含與每個時間步相對應(yīng)的分類標(biāo)簽序列。
figure
plot
xlabel
legend
title

使用對測試數(shù)據(jù)進行分類?。
YPrd = clssif;
或者,您可以使用 一次進行一個時間步長的預(yù)測?。通常,與一次一個時間步進行預(yù)測相比,對完整序列進行預(yù)測會更快。有關(guān)如何通過在單個時間步預(yù)測之間更新網(wǎng)絡(luò)來預(yù)測未來時間步的示例。
計算預(yù)測的準(zhǔn)確性。
ac = sum(YPrd == YTst{1})./nul(YTs{1})
?

使用繪圖將預(yù)測與測試數(shù)據(jù)進行比較。
plot
hold on
plot
hold off


最受歡迎的見解
1.用于NLP的Python:使用Keras的多標(biāo)簽文本LSTM神經(jīng)網(wǎng)絡(luò)分類
2.Python中利用長短期記憶模型LSTM進行時間序列預(yù)測分析 – 預(yù)測電力消耗數(shù)據(jù)
3.python在Keras中使用LSTM解決序列問題
4.Python中用PyTorch機器學(xué)習(xí)分類預(yù)測銀行客戶流失模型
5.R語言多元Copula GARCH 模型時間序列預(yù)測
6.在r語言中使用GAM(廣義相加模型)進行電力負荷時間序列分析
7.R語言中ARMA,ARIMA(Box-Jenkins),SARIMA和ARIMAX模型用于預(yù)測時間序列數(shù)
8.R語言估計時變VAR模型時間序列的實證研究分析案例
9.用廣義加性模型GAM進行時間序列分析