AI アクティビティ タイマーを作成するには、
さまざまな動きを認識するように機械学習 (ML) モデルをトレーニングします。
次に、そのモデルをアクティビティタイマー用の既製のプログラムと組み合わせて
micro:bit にダウンロードして実際に使用します。
「micro:bit CreateAI を開く」をクリックしてプロジェクトを起動します。
このプロジェクトには、歩いている6つの動作データサンプル、
ジャンプしている6つのデータサンプル、
静止している6つのデータサンプルがあります。
自分の動きデータを記録して、サンプルを追加します。
micro:bit CreateAI は、micro:bit 上の加速度センサーによる
動きのデータサンプルを収集します。
micro:bit とバッテリー パックを手首または足首に装着し
自由に動いて自分の運動データサンプルを記録します。
まず、足首に装着する micro:bit を CreateAI に接続します。
これをデータ収集用 micro:bit と呼ぶことにします。
コンピューターで Bluetooth が有効になっている場合、必要なのは
バッテリー パックと USBケーブル、micro:bit 1つです。
Bluetooth 接続がない場合は、micro:bit を2つ使用するように求められます。
2 番目の micro:bit は USB ケーブルに接続したままにし、
データ収集用 micro:bit への無線接続として使います。
画面の指示に従って接続します。
micro:bit が接続されると、micro:bit を動かすとライブ グラフ上の線が変化するのがわかります。
これで、自分の動きのデータサンプルを追加する準備ができました。
このプロジェクトにはすでにいくつかのデータ サンプルが含まれているため、
今はアクションごとにサンプルを 1 つ追加するだけにして、
後でデータの収集と分析に時間を費やすことをおすすめします。
データ収集用 micro:bit が足首の内側に、
ボタン B が上になるように取り付けられていることを確認してください。
特定のアクションにデータを追加するには、
そのアクションをクリックして選択します。
1 秒の録音が開始される前に、3 秒のカウントダウンが表示されます。
「記録」をクリックしてすぐに移動を開始し、
クリーンなデータ サンプルを確実に取得します。
クリーンなサンプルとは、サンプル全体にわたって動きが記録され、
開始が遅れたり、早く終了したりしないサンプルのことです。
次に、「ジャンプ」データ セットと「静止」データ セットにデータを追加してみます。
アクションをクリックしてそれらを選択し、次に「記録」をクリックして
ジャンプしたり、静止したままにしてください。
「静止」サンプルでは、取り付けられた micro:bit の角度に応じて、X、Y、Z ラインの位置が変わることがわかります。
現時点ではデータはあまり多くありませんが、
CreateAI でMLモデルをトレーニングするのに十分です。
[モデルのトレーニング] をクリックして、
現在のデータでML モデルを構築します。
このツールは、micro:bit を動かすときのさまざまなアクションを認識する数学的モデルを構築します。
モデルのトレーニングが完了すると、
すぐに [モデルのテスト] ページが表示されます。
次に、データ収集用 micro:bit を使って、モデルがどの程度機能しているかをテストします。
まだツールに接続されているはずなので
CreateAI あなたの動きを推定していることがわかります。
各アクションを試して、推定されるアクションと確実性の棒グラフの変化を確認します。
確実性棒グラフの % は、モデルがそれぞれの動きをどの程度確信しているかを示します。
モデルが一部のアクションを正確に推定していないことに気づくかもしれません。
うまく推定している動きと、そうでないものがあるかもしれません。
そのため、モデルが現在どのように機能しているかを調べたら
[データサンプルの編集] をクリックして改善することをおすすめします。
MLモデルは通常、たくさんのデータがあればあるほど効果的に機能するため
アクションごとにサンプルを追加したり、
テストで問題があったアクションのデータを増やすことに重点を置きます。
一度に 1 つのサンプルを録音することも、10 個のサンプルを連続して録音することもできます。
クリーンなデータ サンプルは ML モデルの機能を向上させるのにも役立ちます。
データ セットを調べて、モデルを混乱させる可能性のある
データ サンプルを特定しましょう。
X を押すと削除できます。
さらにデータを追加してデータ セットを確認したら、
[モデルのトレーニング] を再度クリックして、
修正したデータ セットを使用します。
次に、「モデルのテスト」ページでモデルを再度テストします。
ML モデルが思い通りに動くようになったら、
すでにつくったプログラムと組み合わせてみましょう。
[MakeCode で編集] をクリックすると、
特別なバージョンの Microsoft MakeCode のブロックが表示されます。
画面左上の矢印から、いつでも CreateAI に戻ることができます。
このプログラムブロックは、エクササイズ タイマー内で
作成したモデルを使います。
このプログラムでは 3 つの変数を使って、
各アクションの実行時間を追跡します。
プログラムが最初に実行されるとき、これらのタイマー変数は 0 に設定されます。
「MLの...が開始したとき」ブロックは、ML モデルが特定の動きを
開始したと判断したときに実行します。
推定されたあなたの動きに応じて、micro:bit の LED ディスプレイに
さまざまなアイコンが表示されます。
「MLの...が停止したとき」ブロックは、ML モデルがアクション を終了したと判断したときに実行します。
この場合は歩く、ジャンプする、または静止するといった動きです。
各ブロック内のプログラムは画面をクリアし、
各アクションの合計時間を格納する変数に、終了した ばかりのアクションの継続時間を追加します 。
ML モデルはプログラムと連携して、各アクションに費やされた合計時間を
表示できるようにします。
ボタン A を押すと、歩いた時間が表示されます。
ボタン B を押すと、モデルが推定したジャンプの時間を確認できます。
じっとしていた時間を確認するには、A と B を同時に押します。
タイマーはミリ秒 (1000 分の 1 秒) 単位でカウントするため、
表示される数値を 1000 で割って時間を秒単位で示します。
AI アクティビティ タイマーを micro:bit で実行するには、
このプログラムを micro:bit にダウンロードするだけです。
利用可能な別の micro:bit がない場合は、
データ収集用 micro:bit に現在あるプログラムを置き換えるだけです。
これで、プロジェクトを実際にテストできるようになりました。
運動中または運動していないときに
正しいアイコンが表示されますか?
タイマーのプログラムがモデルでうまく動作しているかどうかを
3 つの簡単なステップでテストしてみましょう
リセット ボタンを押します。
30秒間ジャンプします。
次に、ボタン B を押します。
ディスプレイ上に 30 という数字がスクロールするのが表示されます。
これで、CreateAI に接続し、
自分のデータを収集し、それを使って機械学習モデルをトレーニング、
テスト、改善する準備が整いました。
このモデルをすでにつくったプログラムと組み合わせて、
自分のmicro:bitで試してみることができます。
これをもっとカスタマイズしたいなら、
ランニングやダンスのステップなどのさまざまなアクションを追加してみてください。
楽しんでください!