Scratchで人工知能

人工知能を実現する方法の一つ、機械学習(Machine Larning)が下記サイトでスクラッチでもできていまうということで、試してみました。

https://champierre.github.io/scratch3/
「子供の科学」2020年4月号の記事参考

まず上記サイトにChromeブラウザでアクセスして、Scratch3の画面を表示します。
そして機能拡張からもML2SCRATCHを選びます。

すると下のブロックが追加されます。
ラベルは4つ使うので使うラベルのチェックボックスをチェックします。

このブロックを下のような並べます。

カメラには、識別させる画像を映し、「ラベル*を学習する」ブロックをクリックします。
ここでは上下左右の4つの矢印の方角を識別させました。
シンプルな画像なので、それぞれ5回の学習(5枚の写真:サイズや位置をちょっとだけ変えたりした違うバリエーション)で識別がでました。
最初の識別だけ時間がかかりますので、終わるまで何もクリックなどをせず待ちます。
学習が終了するとカメラに画像をかざす(ここでは上下左右に画像の向きを変化させる)ことで、判定をしてくれます。
ML2Scratchラベルの値がそれにあたります。
1から4までを判定結果を出しますので、その結果に応じてスクラッチキャットが動きます。

機械学習は、Pythonなどの言語を使って実現しますが、環境をつくるのもなかなか大変なところ、このようなScratchを使って簡単に体験できるのは、とてもすばらしいと思います。