グーグルホーム向けアプリ(グーグルアシスタント対応アプリ)を開発するには?
先日のスマートスピーカーアプリ入門講座にて、グーグルアシスタント対応アプリを作ってみました。
目次
今度こそ本物!!第3次AIブーム
AIという言葉は、1956年のジョン・マッカーシーという研究者によって命名されたわけですが、第一次AIブームがこの時代です。1980年代の第二次AIブームでは、ニューラルネットワークという脳の構造を模した仕組みが考案されました。
「冬の時代」と言われた2000年代を経て、この度、将棋プロジェクトやIBMのWatsonなど、ディープラーニングを活用した事例が一気に台頭しました。
TensorFlow(テンソルフロー)」とは
Googleが開発した、私たちの生活のさまざまなところで活用されているこの機械学習のソフトウェアライブラリです。
ギットハブのフレームワークで星の数が圧倒的なのはテンソルフローです。そして、ケラス、パイトーチと続きます。
Neural Conversational Modelこそ本命!!
インテントやエンティティの設定をすることなく会話を作る仕組みです。
ツィッターなど会話になっている部分を取り込んで機械学習をさせるだけで会話モデルを作ります。
なお、表記や発音のゆらぎも吸収されています。
実際、ITヘルプデスクで実現可能となっています。
弱点といえば、他の用途の雑談をかますと、会話は止まります。
ニューラルネットワークが義脳を作る!?
ニューラルネットワークでシミュレートして義脳を作りあげることは、すでにネズミで実証されています。
また、ミゲル・ニコレリスによる「念じるだけで ロボットを操作した猿」の実験も発表されています。
スマートスピーカーとは
スマートスピーカーとは、「AIアシスタント」に対応しているスピーカー機器のこと。
スピーカーに向かって音声で話しかけると、インターネット経由でAIアシスタントが支持の内容を解析し、応答します。
スマートスピーカーの種類
アマゾン「アレクサ」、アップル「シリ」、ライン「クローバ」、マイクロソフト「コルタナ」などがあります。
グーグルホーム向けアプリ(グーグルアシスタント対応アプリ)の仕組みとは?
グーグルホームで音声を受け取り、音声解析はグーグルアシスタントで行います。
「DialogFlow(ダイアログフロー)」という言語解析と対話システム(簡単な言語解析とプログラムなしで行う仕組み)が提供されており、ここで
グーグルアシスタント用のアプリを開発するわけですが、それを公開するプラットフォームが「Actions on Google」(アクションズオングーグル)です。
なお、アプリ開発で用意するものは、グーグルアカウントとスマホアプリのグーグルアシスタント(グーグルホームの代わりに使う)だけです。
グーグルアシスタント対応アプリの作り方
「Actions on Google」ではテンプレートが用意されていて、簡単にアプリを作ることができます。
用意されているテンプレートは、
・Trivia:雑学アプリ(3択クイズ)
・Personality Quiz:個人的なクイズアプリ(ポジティブ、ネガティブの答えを用意)※現在英語のみ
・Flash Cards:記憶力アプリ(ヒントを用意)※現在英語のみ
です。
流れはこんな感じです。
1.Actions on Google のアカウントを作る
2.新規プロジェクトを作成
3.ジャンル選択画面の下方にある「More options」で「Templates」を選択
今回は、「トリビア」を使って、標準語を群馬弁で答えるアプリを作ってみました。
見本のグーグルスプレッドシートのコピーを作って、そこにクイズ内容をいれていき、完了したら、デプロイのところでそのURLを使います。
アプリが完成したあとは、リリース用の管理フローにのって申請します。
私が作った「群馬弁クイズで群馬LOVE度チェック」は、6月28日にリリース申請したところ、6月29日にまず申請却下(not approved)がきました。その理由は「プライバシーポリシー」のページがないということで、下記のページを作り、再申請しました。
個人情報をとっているわけでもないし、不必要と思う方もいるかもしれませんが、これからGoogleHomeアプリを作成される方はご注意くださいね。
なお、現在リリース中です。
「OK、グーグル、群馬弁クイズにつないで」といえば、クイズがはじまりますよ!
もっとも効率的なスキル習得「テックジム方式」とは?
「テックジム方式」とは、基礎知識なしでも、座学なしでプログラミングに専念できるように設計されたプログラミングのカリキュラムメソッドです。
優れたエンジニアの多くは、職業訓練学校や研修スクールで学ぶような学び方をしません。 作りたいものを作っていたら、自然に習得できているのです。そして、優れた指導者(メンターや師匠)との出会いがエンジニアとしてのプロフェッショナル性を高めます。
この自発性とプロフェッショナル性を兼ね備えたのが「テックジム方式」です。 授業を聞いたりテキストを読むことで失う時間を、純粋にプログラミング時間に向けることで、習得効率は飛躍的に向上し、モチベーションも維持できます。 その時点で知らなくていい知識や概念を可能な限り削ぎ落とし、知るべきタイミングが訪れた時にはすでに課題を通じて覚えているようなスキル習得の自動化を図ります。
講座で用いるサンプルソースや課題は、最も効率よく学べるように細部に渡って設計されています。 まるで魔法にかかったようにプログラミンスキルが習得できるのが「テックジム方式」の醍醐味です。
現在はPython基礎コースのみご用意しております。 こちらは初学者からプログラミング歴3年未満の方を対象にしたコースです。 今後は、機械学習やディープラーニング、AIなど、Pythonならではの特性を活かした専門性の高いコースをご用意していきます。
【無料】ゼロからはじめるPython入門講座
オープン講座では、講義&実習スタイルで、テックジムの自習教材を体験していただきつつ、Pythonの初歩を学んでいただきます。
【オンライン/無料】ゼロからはじめるPythonプログラミング入門講座(毎週・水・木・土開催)
すでに何らかのプログラミングをやっている方や、 プログラミング学習への決意度が高い人は、 どんどんカリキュラムを進んでいける「Python基礎コース体験会」の方がオススメです。
どんなレベルからでも、自分のペースではじめられますし、テキストを受け取りにくるだけでもOKです。
【テックジム】Pythonコース・体験会(平日19:00-22:00)途中参加・途中退席OK
いつでも通える! どんなレベルでもOK!
ジム型プログラミング塾「テックジム:TechGYM」
いつでも参加でき、ずっとスキルを磨き続けることのできる「ジム」の要素が「TechGYM(テックジム)」の大きな特徴です。
月額2万円の「プログラミングライフ」をお楽しみください。
【東京本校】テックジムPython基礎コース・体験会「自習で学ぶ高速プログラミング」(平日19:00-22:00)