9月7日、大阪の株式会社TAMさんのコワーキングスペースにて 「Watson + Monacaで人工知能アプリを作ろう!」と題したハンズオンが行われました。
講師は、ITCA認定ITコーディネーターの井上さん。『初めてのWatson APIの用例と実践プログラミング』『Watsonで体感する人工知能』などのWatson関連の著作をお持ちです。

井上さん

約二時間の間に、MonacaとWatsonのコグニティブAPIを使って簡単に画像認識ができるスマホアプリを作る過程を体験できました。この記事では当日の様子をお伝えします。

画像2

ハンズオンの前にAIについておさらい

AIというワードが一般化してきた昨今ですが、そもそもAIとはなんなのでしょうか?
少しAIブームの変遷を振り返ってみます。
井上さんによると、AIブームの変遷には大きく分けると三度の波があったそうです。
今となっては本当に当たり前すぎることですが、コンピューターに平仮名の入力を漢字に変換させることを昔はAIと呼んでいたとのこと。今では漢字変換のことをAIとは言いませんよね…!
「その時代からみたときに、こんな風だったら便利だなあという未来」を人はAIと呼んでしまいたくなるそうです。

コグニティブって?

これまで、コンピューターは画像や文章を「処理すること」はできましたが、「理解」はできませんでした。コグニティブAIとは、コンピューターがこれまでただ「処理」していた画像や文章を「理解できる」ようになることを意味しています。

Watsonについて

Watsonの出自はなんと「クイズマシーン」だそうで、質疑応答や文献などから回答候補を見つけ出すのが得意です。2016年2月からIBM Bluemix上でWatsonの一部の機能がAPIとして提供され始め、現在では一般ユーザーもコグニティブAIを簡単に試せるようになっています。様々な機能が提供されていますが、それぞれを組み合わせることでアプリの幅もグッと広がります。

Watsonでできること

Watsonの機能は大まかに三種類に分かれます。

  • 言語処理系
  • 画像認識系
    • 画像の分類
    • 顔認識
    • 類似画像の検索
  • その他

今回のハンズオンで扱う領域は、画像認識の部分にあたります。画像認識のサービス群は Visual Recognitionと呼ばれ、更にその機能を三つに分類することができます。「画像の分類」「顔認識」「類似画像検索」です。

特に「画像の分類」では、デフォルトの学習モデルを利用した一般的な分類はもちろん、ユーザー自身が独自の学習モデルを作成することができるカスタム分類も可能です。例えば、自社製品の画像を分類したいといったシーンでは、一般的な分類ではカテゴライズが難しい場合もあります。カップ麺の会社が何種類もある自社製品の画像を分類したとしても、デフォルトのデータセットでは全てが「カップ麺」に分類されてしまうかもしれないということです。そんな時に、カレー味、シーフード味、醤油味など、独自のデータセットを用意して学習させ、カスタム分類を行えば、作れるアプリの幅もぐっと広がります。この「カスタム分類」ができるという点が他社のコグニティブ系のAPIにはないWatsonのユニークな点だそうです。

いよいよハンズオン!

画像2

「カスタム分類」がWatsonのユニークな点ではあるのですが、今回のハンズオンでは主に「顔認識」の機能を体験しました。人の顔をスマホで撮影すると、その人の年齢や性別を推測して答えてくれるスマホアプリを作ってみます!
以下の三つの機能を順を追って実装していきました。"
1. 顔認識をして年齢をワトソンに推測させる
2. 性別を当てさせる
3. 顔ではなく物を認識させる(分類)

アプリの完成イメージは以下のようになります。

 

Monacaと組み合わせて、簡単にその場でスマホを使って実機デバッグ出来ます!なんとハンズオン開始から30分程度で実際に顔認識の機能を自分のスマホで試すことができました!(Watson、Monacaのアカウント登録などが済んでいる状態が前提)
この時間帯は参加者の皆さんの自撮りのシャッター音が部屋に響き渡っていました…!

画像2

ハンズオンを進める上で、講師の井上さんはもちろん、Monacaのエバンジェリストである生形さんもチューターとしてサポートしてくれました。

画像3

約二時間のハンズオンで、ほとんどの参加者の皆さんが、顔認識の機能を使って年齢や性別の推測を行い、更に顔だけではなく物を認識させ分類させるところまで進めることができました!

画像4

今後、ますます注目されていくAIの領域。こうやって気軽に試せるAPIがあることでこれからより一般化してくるでしょう。今回のハンズオンを通して、Monacaと組み合わせることで、圧倒的なスピードでスマホアプリにAIを組み込めるということが分かりました。
ぜひ、あなたも試してみてください!