認識データから人間の活動を認識するために、スマート デバイスに k-Nearest Neighbor アルゴリズムを実装しています。どのように実装するのかを説明します。皆さん、私が取っている手順の改善点を教えてください。また、途中で尋ねる可能性のある質問に答えてください。
手順は次のとおりです。
- 加速度計からの 3 軸加速度とアクティビティを説明するラベルで構成されるラベル付きデータセットをダウンロードしました。このデータセットから、認識したいアクティビティ (私の場合は歩く、座る、立つ) のみのデータをいくつか選択します。
- 次に、データセット内の加速度計データのすべてのウィンドウから (つまり、加速度計データの 128 の読み取り値を含むデータセット内のすべての単一レコードから) 特徴 (私の場合はマグニチュード加速度からの平均、最小、最大、標準偏差) を抽出します。これらの機能をウィンドウのラベルと共に (1 つのレコードとして) デバイス上のテキスト ファイルに JSON 形式で保存します。したがって、トレーニング データ セットの 1 つのレコード/サンプルは、平均、最小、最大、標準偏差、およびラベルで構成されます。
- 分類ステップでは、収集したデータから、上記の 4 つの特徴を抽出する加速度計データのウィンドウも作成します。したがって、収集したデータの 4 つの特徴をトレーニング データの各サンプルと比較する必要があります。1 つのレコードに 4 つの特徴が含まれるため、それらの間の類似性をどのように見つければよいでしょうか?
ポイント (3) の質問に対する解決策として、すべての機能の k 最近傍点をそれらの差を計算して取得し、すべての機能から過半数を選択することを考えていました。どう思いますか?最適化を提案できますか? ありがとうございました :)