Google の Teachable Machine を使い、コーディングなしで手軽に画像認識をしてみる

# はじめに
Teachable Machine 2.0 を使用してブラウザ上で画像認識モデルを作ってみる。

まずはこれを見ていただきたい。長さは2分程度なのですぐに見終わる。
<blockquote class="twitter-tweet" data-partner="tweetdeck"><p lang="en" dir="ltr">Teachable Machine 2.0: Making AI easier for everyone <a href="https://twitter.com/hashtag/marketingdigital?src=hash&amp;ref_src=twsrc%5Etfw">#marketingdigital</a> <a href="https://twitter.com/hashtag/estrategiadigital?src=hash&amp;ref_src=twsrc%5Etfw">#estrategiadigital</a> <a href="https://twitter.com/hashtag/google?src=hash&amp;ref_src=twsrc%5Etfw">#google</a> <a href="https://t.co/AeIQnPAUbb">https://t.co/AeIQnPAUbb</a></p>&mdash; Beat Digital (@BeatDigitalMkt) <a href="https://twitter.com/BeatDigitalMkt/status/1195054356506263552?ref_src=twsrc%5Etfw">November 14, 2019</a></blockquote>
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

すごい。

Webカメラが付いたパソコンがあれば、
①画像認識用の写真撮影
②撮影した画像から画像認識モデルの作成
③認識モデルの実行
までブラウザ上でワンストップかつ無料で出来ちまうんだ。

とりあえず試してみよう。

# そもそも Teachable Machine とは
- 誰でもコンピューターのWebカメラを使用して、Webベースで画像認識モデルを作ることができる
- すぐにモデルの確認ができる
- バージョン2.0 になり、ボタンをクリックするだけでコーディングを行わずに独自の機械学習モデルをトレーニングし、Webサイト、アプリ、物理マシンなどにエクスポートできる
- 現時点では画像認識と音認識とポーズ認識のモデルを作ることができるが、今回は画像認識を試してみる。

# 試してみる
## 環境
- Chrome 78
- Windows 10 1909

## 手順
おおまかな手順は以下
1. サービスURLにアクセス
2. Webカメラで認識したい物体を撮影 × 認識物体分
3. 撮影した画像からモデルを作成


### アクセスしてみる
[Teachable Machine](https://teachablemachine.withgoogle.com/)

### 「始めましょう」をクリック
 ![Inkedコメント 2019-11-16 004234_LI.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129423/acbfed8c-eea7-7823-b995-16977c74c637.jpeg)

### 今回は画像認識のため、「Image Project」をクリック
![Inkedコメント 2019-11-16 004320_LI.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129423/1d5901aa-aed6-15d9-6840-8b3c41aed8a5.jpeg)

### 画像はWebカメラから取り込むので、「WebCam」をクリック
 ![Inkedコメント 2019-11-16 004338_LI.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129423/6be6c103-9b23-b8f1-068a-8c42ee4aea86.jpeg)

### ブラウザに許可をだして
![Inkedコメント 2019-11-16 004408_LI.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129423/deed18b8-50dc-9604-d258-56d09f132299.jpeg)

###「Hold to Record」をクリックするとWebカメラが連続撮影を始める。すごい勢いで写真がとられるためすこしビビる。
 ![Inkedコメント 2019-11-16 004456_LI.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129423/ca352de8-7fe0-dbf7-008a-b07c3a2bcc3b.jpeg)

### 同じように別の物体も撮影する。撮影後、右の「Train model」をクリック
 ![InkedInkedコメント 2019-11-16 004529_LI.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129423/63356348-ff54-202e-f376-e80af0c980ad.jpeg)

### 物体の名称は適時変更して
![Inkedコメント 2019-11-16 004642_LI.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129423/f3a9a5c8-20ae-b01e-b6c3-13f247679c8d.jpeg)

### 完成。問題なく認識している。
![コメント 2019-11-16 004742.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129423/2078ffc3-0d88-178e-bc18-c3c78e79f78a.png)
![コメント 2019-11-16 004800.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129423/33181101-fef7-6002-e5c2-4ef0d565ea95.png)

### 動画
![ezgif-4-dcae4aa347b4.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129423/e4b6b6cc-d73b-64f2-d466-bede866540d0.gif)


## 終わりに
わずか10分程度で画像認識モデルを作成することができた。
思った以上に精度が高く、たったこれだけの作業＆専門的な知識なしででここまで認識率が高いモデルができるのかとびっくり。
Google は本気で画像認識…というかAIをみんなが使えるように民主化を進めてきているのがよく分かった。

なお今回は行っていないが、作成したモデルは、Tensorflow, Tensorflow.js, Tensorflow Lite で使用できるようで、Teachable Machine 内で閉じたモデルではなく他のシステムやサービスに取り込めるようだ。
今度は似た有名人を表示するなどのWebサービスと組み合わせて使ってみたい。