「キャベツ・白菜・レタス」を識別するAIを作ってみよう!(ちちんぷいぷいプログラミング第8回)

親子で学ぼう!プログラミング教育(毎週日曜あさ10時更新/全10回)

エンちゃん:
世界一プログラミングに詳しいゆるキャラ、エンちゃんです。

小池美由:

プログラミングアイドルを目指して日々精進!小池美由です。


エンちゃん:
小池さんどうですか?プログラミングアイドルになれそうですか?

小池:
あんまり、自信ないです。

エンちゃん:
そんなにきっぱり答えないでください。

小池:
でも、やる気はあるんです!


キャベツ・白菜・レタスを見分ける

エンちゃん:
今日は、「キャベツ・白菜・レタスを見分ける」AIを作ります。

小池:
レタスチャーハン大好きです!

エンちゃん:
聞いてないですけどね。


エンちゃん:
まずはキャベツと白菜とレタスを見分けるために、それぞれの画像をたくさん用意します。
「ベジ」というフォルダの中にそれぞれディレクトリをつくり、Deep Analyzerにアップロードします。Deep Analyzerを開いて、データセットnew。

小池:
手順は前回と一緒だね。

エンちゃん:
そうなんです。
アップロードされたデータがこれです。こんな感じでキャベツ・白菜・レタス、データが入りました。


エンちゃん:
ここで先週と同じように、ニュートラルネットワークに学習させます。
ネットワークのnewから画像の分類・Image Classificationを選び、データセットをベジに、で、ノード数は1、エポック数は100で。

小池:
クリック!

エンちゃん:
今、学習が始まりましたね。
これかなり時間がかかるんで、学習済みのデータに差し替えます。

小池:
出た!差し替え!


小池:
ネットワークにいき、Image Classificationのデータセットページにいって…学習結果のグラフをみてみると‥
なんか、前よりガチャガチャしてる?

エンちゃん:
うーん…まぁ、難しいんでしょうね。
でも、一応ロス=間違いが減って、正解率の青い線が90%ぐらいに上がっているので、それなりに学習できてるんじゃないですかね。

小池:
やってみたい!

エンちゃん:

では実際に、識別できるか試してみましょうか。


エンちゃん:
これ、小池さんは何に見えます?

小池:
キャベツ!

エンちゃん:
私たちから見たらこれはキャベツですね。
じゃあ、人工知能はちゃんと識別できるのか。

小池:
「START INFERENCE」をクリック!

エンちゃん:
85.9%キャベツ。まぁ、ほぼキャベツに見えてますね。


エンちゃん:
じゃあ、これはどうでしょう?

小池:
白菜!

エンちゃん:
では。

小池:
レッツ「START INFERENCE」!

エンちゃん:
94.1%!ほぼ白菜ってことで、大正解ですね!
人工知能は時々間違えることも、もちろんありますよ。人間だって間違えることがありますからね。ということで、今回はキャベツ・レタス・白菜が識別できるAIが出来たといえるでしょう。

小池:
なんか楽しかった~!

エンちゃん:
それを聞いて安心しました。
では、お師匠さんの時間です。

【AIお師匠さんのためになる話と番組のフルバージョンは下記の動画をチェック!】

【第8回】ちちんぷいぷいプログラミング(4分)

次回#09では、AIで「中間顔」を生成します。お楽しみに!

※本文中に登場する「DeepAnalyzer」は開発中のサービスであり、まだ一般公開されていません(2018年10月28日時点)

ちちんぷいぷいプログラミングの他の記事