LSTMによる信号の分類において,それぞれ長さの違う複数特徴量を学習させる方法について
Show older comments
LSTMによる信号分類における学習方法についての質問です.
実験環境を簡易的に設定します.
まず,Wi-Fi電波を,条件A, B(例:A...無人, B...有人)でそれぞれ観測します.
ここで,観測した信号は{1×10000 double}であるとして,条件A, Bにおいて3つずつ(合計6つ)を用意します.
Signals
ans = 6 × 1 cell array
{1×10000 double}
{1×10000 double}
{1×10000 double}
{1×10000 double}
{1×10000 double}
{1×10000 double}
Labels
ans = 6 × 1 categorical array
A
A
A
B
B
B
次に,特徴量を抽出します.そこで,例として平均値とエントロピーを用います.
平均値は,Window Sizeを100としてWindow毎に求めます.
x = Signals{1} % 最初に,一つ目の信号の平均値を求めます
w = 100; % Window size
nw = size(x,2)/w % the number of windows
for i = 1 : nw
mu1 = mean(x(1,(i-1)*w+1:i*w)); % Window毎の平均値
end
mu1 = {1 × 100 double}
エントロピーは,時系列全体について求めます.ここで,Wi-Fiを観測するサンプリング周波数としては不適切ですが,本題とは関係ないので適当に100Hzと設定します.
fs = 100; % サンプリング周波数
se1 = pentropy(x,fs).';
se1 = {1 × 261 double}
以上のことを,他の5つの信号でも同様に求めて,LSTMによって学習させたいです.
そのためには,2つの特徴量の配列mu1,se1を垂直方向に結合する必要があります.
c1 = [mu1; se1];
c2 = [mu2; se2];
...
c6 = [mu6; se6];
しかし,このままでは,結合する配列の次元が一致しないためエラーがでます.
理想としては,これらのトレーニングデータをcell配列としてまとめ,学習させるのが理想です.
このように,LSTMによる信号分類において複数の特徴量を用いる場合,それぞれの特徴寮の長さが異なるときはどのように学習・検証させればよろしいのでしょうか.
お答え頂ければ幸いです.
Accepted Answer
More Answers (0)
Categories
Find more on アンサンブル分類 in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!