Googleの Teachable Machine を使ってコンピュータートレーニングしよう。 自分の画像や音声、ポーズを使ってトレーニングすると、コンピュータが学習してそれらを区別できるようになるよ。 Teachable Machine page

画像の区別

似ているが少し違うものを区別することを考えよう。たとえばおかしの「きのこの山」と「たけのこの里」、このおかしを知ってる人なら見るかさわるかすれば簡単に区別することができるね。
kinoko takenoko

でもこの区別をプログラミングでコンピューターに教えようとすると難しそうだと想像できるかな?それぞれの特徴をコンピューターに教える必要がありそうだね。ただ特徴を教える(プログラムする)といってもどうやって?そもそも特徴とは?人間はどうやってそれを区別しているの?考えるとちょっと難しそうだ。

そこで「機械学習」という技術をつかってみよう。これは人間がコンピューターに細かく教えなくても、コンピューターが自分で学習していろいろなことを覚えていく、というものだ。 この「きのこの山」と「たけのこの里」も、たくさんの画像をコンピューターに学習させると区別できるようになる。

このコンピューターへの学習(トレーニング)を簡単にできるようにしたのが Googleの Teachable Machine だ。

ではさっそくやってみよう。

Teachable Machineを開く

Teachable Machine (https://teachablemachine.withgoogle.com/) を開こう。(ブラウザはChromeを使おう)

画面が開いたら「使ってみる」をクリックする。 img003

「新しいプロジェクト」画面が開くので「画像プロジェクト」をクリックする。 img004

クラス(区別するもの)にラベルをつけよう

画面上の「Class1」、「Class2」のところをクリックして「きのこの山」、「たけのこの里」を入力しよう。 img005

img006

きのこの山とたけのこの里以外にもうひとつ、何もない状態のクラスを追加しよう。 「クラスを追加」をクリックし、ラベルを「なにもない」としよう。 img007

img008

画像を追加する

トレーニングのための画像を追加しよう。ウェブカメラを使って追加すると簡単だ。 まず「きのこの山」からやってみよう。

「きのこの山」のラベルの下の「ウェブカメラ」をクリックするとWebカメラの画面が表示される。

img009

img010

Webカメラできのこの山を写して、「長押しして録画」ボタンをクリックしよう。クリックしている間ずっと画像が追加されるはずだ。カメラやきのこの山をすこしずつ動かして、いろいろな画像を追加するといいよ。

img011

img012

同じように、たけのこの里の画像をWebカメラで写して追加しよう。

img013

「なにもない」も画像を追加しよう。

img014

トレーニングする

「きのこの山」、「たけのこの里」、「なにもない」の画像が追加できたら、「モデルをトレーニングする」ボタンをクリックしよう。トレーニングが始まる。トレーニングが終わるまでタブを切り替えないようにしよう。

img015

img016

しばらく待つとトレーニングが完了する。完了すると「プレビュー」が動き始める。

img017

画像を区別してみよう

Webカメラにきのこの山やたけのこの里を写すと、それに合わせて「出力」のメーターが動くはずだ。

img018

img019

img020

これで「きのこの山」、「たけのこの里」、「なにもない」を区別できるようになった。 意外と簡単にできたね。

次回はこのトレーニングしたモデルを使ってScratchと連携してみよう。