【行動認識 #2】機械学習/深層学習で人間行動認識 ~データ確認~
この続き
【行動認識 #1】機械学習/深層学習で人間行動認識 ~事始め~ - MotoJapan's Tech-Memo
データセットは下記
UCI Machine Learning Repository: Human Activity Recognition Using Smartphones Data Set
ライセンスは次の通り。
This dataset is distributed AS-IS and no responsibility implied or explicit can be addressed to the authors or their institutions for its use or misuse. Any commercial use is prohibited.
「Human Activity Recognition Using Smartphones Data Set」『UCI Machine Learning Repository』データセット内 README.txt より。
URL: https://archive.ics.uci.edu/ml/datasets/human+activity+recognition+using+smartphones
データセットについて構造確認
train側だけだとこんなイメージ(test側もあり)
- body_acc_x_train # 重力分離済み加速度情報 (★1)
- body_acc_y_train
- body_acc_z_train
- body_gyro_x_train # 角速度情報 (★1)
- body_gyro_y_train
- body_gyro_z_train
- total_acc_x_train # 重力未分離加速度情報 (★1)
- total_acc_y_train
- total_acc_z_train
- X_train # 特徴量 (★1)
- y_train # 行動ラベル (★2)
分類問題を解くのであれば、★2が正解ラベルであり、★1を駆使して分類する。
今回はより生に近い値でやりたいので、入力は重力未分離加速度情報(ax,ay,az)と角速度情報(gx, gy, gz)のみを利用。
ではデータの中身を眺める。
データセットの中身確認
trainデータだけでも、7352件/21名分あるのでまずこれを味見。
同一被験者/行動違いのデータを確認(時間領域)
被験者1(Subject1)内でのランダムに取り出した各Actionのノルム違い
total_norm_acc_train
body_norm_gyro_train
異なる被験者/同一行動のデータを確認
シンプルそうなSTANDINGで確認。
total_norm_acc_train
body_norm_gyro_train
- total_acc_trainは、Subject3,5はオフセットしているように見える
- これは最初から平均値等でキャンセルした方が良さそう。
- body_gyro_trainは、かなり小さい値なので、その辺りで安定している
- Subject11が持つ0.14[rad/s]付近のデータでも8.02[dps]と考えるとかなり小さい。
同一被験者/異なる動きのデータを確認(周波数領域)
周波数領域についても見たい。
・total_norm_acc_train
SITTING/STANDING/WALKING
[SITTING/STANDING] [WALKING]という分離ができそう
・body_norm_gyro_train
SITTING/STANDING/WALKING
[SITTING] [[STANDING] [WALKING]]という分離ができそう
・SITTINGはかなり限られた低周波が反応
・WALKが高周波の部分が良く反応している
他の分析
同一被験者/異なる試行のデータを確認
SITTING (周期性なし)
WALKING (周期性あり)
- 傾向が見えるものもあるが、たまに特異な動きをするものもある(個人内ばらつき)
- 目視だが、行動によって周期性の無い動き、周期性のある動き、その再現性が確認できる
以上。
簡単なデータ分析だが、組み合わせ次第で分離可能性は確認できる。
次回は学習。