「goo」の広報ブログ「gooの音」

「goo」広報担当が、みなさんにとっておき情報をお伝えしていきます!

【社内制度紹介】NTTレゾナントの「エンジニアゼミ」 『スマートスピーカーを作ってみた!』

2018-02-02 | ★もっと知りたい!NTTレゾナント

今回はNTTレゾナントでエンジニア向けの社内制度「エンジニアゼミ」を紹介したいと思います。

NTTレゾナントは、ポータルサイト「goo」の運営をはじめ、NTTグループのWeb事業を牽引するポジションにあります。在籍する約100名のエンジニアを対象とした育成施策の検討・実行が日常的に行われており、「エンジニアゼミ」はその施策の1つです!

第一弾「AIコース」についてはこちら
http://blog.goo.ne.jp/goosb/e/835ad6af7c1512a403b4c78675bc316c

第二弾「UXリサーチのためのユーザーインタビュー実践コース」についてはこちら
http://blog.goo.ne.jp/goosb/e/88bec8b2f67bf52138247244720a09a4

 

 

砂漠でも南極でも使える!ローカルで完結するスマートスピーカーを作る

 

今回は、「スマートスピーカーを作ろうコース」の紹介です。すでに日本でも発売が開始され、今まさに注目されているデバイス“スマートスピーカー”。NTTレゾナントのエンジニアにも自宅にスマートスピーカーを置いている社員は多くいるのですが、それを実際に作ってみようという試みをエンジニアゼミで行いました。Webエンジニア達が、普段開発しないハードウェアデバイスをどういうふうに開発したのか、講師の木村と、受講生の阿部の二人から話を聞きました。

右:木村 雄剛

平成22年にNTTレゾナントに入社。サービス部門 メール・基盤担当サービス部門にてgooメールサービスのサービス開発に携わる。平成26年4月からソーシャルサービス部門 新コミュニケーションサービス担当にて新規サービスの企画・開発業務を担当。平成28年7月からポータルサービス部門 ポータル開発担当にて、新規サービス、各種gooサービスの開発業務を担当。

 

左:阿部 達也

平成27年にNTTレゾナントに入社。スマートナビゲーション事業部サービステクノロジー部門に配属。検索サービスのインフラ構築・運用・保守業務を担当している。

 

―「スマートスピーカーを作ろうゼミ」ということなのですが、講師の木村さんは普段どのような業務に携わっているのですか?

木村:

普段の業務は、gooトップ、gooニュース、gooSimsellerなどのWebサービスの開発に従事しています。また、gSntkという家庭向けのIoTサービスプロジェクトに関わっていて、そこでスマートスピーカー関連の開発に携わっています。
gSntkについてはこちら:https://product.goo.ne.jp/gsntk/

このgSntkのプロジェクトに関わる以前から、自分の趣味でスマートスピーカーの開発をしていました。というのも、海外のニュースでAmazonのスマートスピーカー「Amazon Echo」を初めて見た時に、次世代のデバイスは声で話しかけることで何かアクションを起こしてくれる機能を持っているのか、と思ったことがきっかけです。

当時、国内では販売されていませんでした。「じゃあ、自分で作ってやろう!」と考えたのがスタートですね(笑)音声認識システムなどはAPIなどを用いて2週間くらいで作ってみました。声に反応させるということが難しくて最初はなかなか上手くいきませんでした。

 

一番右にある赤い筒状のデバイスが、木村が開発した試作スマートスピーカー

 

 

―スマートスピーカーを自分で作るという発想がすごいですね(笑) 今回ゼミで作ったのはどういうスマートスピーカーなのでしょうか?

木村:

今回、皆さんに作ってもらったのは、応答までのアクションをローカルで完結させるスマートスピーカーです。つまり、ネットワークに繋げていないオフライン状態で機能するスマートスピーカーですね。

 

-え…。オフラインで使えるスマートスピーカーですか!? どうしてそういう仕様にしたのでしょうか?

木村:

一番大きな理由はニーズにあります。スマートスピーカーのように話しかけたら応答してくれるようなデバイスこそ、お年寄りの人が必要としているものだと思っています。もちろん、ネットワークに繋げたスマートスピーカーの方が開発者としては、ずっと簡単に作ることができるのですが、お年寄りの人にはWi-Fiの接続というのは、ものすごくハードルが高いのではないかと考えました。ユーザーの視点に立った時に、”デバイスを置くだけ”で質疑応答ができる仕組みこそがスマートスピーカーに必要とされているのではと思ったのです。

また、世界的にはネットワークの普及率はそこまで高くありません。将来的には、サハラ砂漠や南極などの僻地で活躍するようなロボットなどにも、今回のようなローカル環境で完結するスマートスピーカーの機能が搭載されているだろうと思っています。ですので、オフラインでのスマートスピーカーは今後ニーズが出てくるだろうと。

 

-なるほど。確かにスマートスピーカーをオフラインでも使いたいというユーザーは多くいるように感じます。それでは実際に開発したスマートスピーカーを見せていただくことはできますか?

阿部:

これが、実際に私がゼミで開発したスマートスピーカーです。

Raspberry Pi、マイク、液晶、スピーカーを用いて開発したスマートスピーカー

 

スマートスピーカーに話しかける阿部

 

阿部:

「ようこそ」

「もしもし」

 

音声デバイス

「モシモシ。アナタハ、「もしもし」ト、喋リマシタカ?」

 

こういう風に音声デバイスが「ようこそ」で起動。「もしもし」を解析。「もしもしと喋りましたか?」を発話しています。これをローカル環境で完結させています。音声の認識はJuliusという日本語解析のAPIを使っています。

 

 

「OK, Google」「Alexa」はスマートスピーカーが認識しやすい言葉

 

-阿部さんは普段の開発業務と全く異なる分野での開発ですが、どうして今回参加されたのでしょうか?

阿部:

今回参加したのは、大きく2つの理由があります。1つ目は、木村さんがTech Talkという社内のプレゼン大会で、自身が開発されたスマートスピーカーの話をされていて、その時にスマートスピーカーって自分でも作ることができるのかと興味を持ったことがきっかけですね。

2つ目は、2017年10月に「TechCrunch Disrupt」に参加したのですが、どの展示サービスもAIやIoTなどの技術をかけ合わせたものばかりでした。そこで自分の業務分野以外の技術に関してもノウハウを身に着けておく必要があるなと思ったことが参加した理由になります。

 

-なるほど。今回、実際に参加してみていかがでしたか?

阿部:

スマートスピーカーの開発では、ヒトが会話するときの脳の処理と同じことを行うわけですが、いざ機械にやらせようとすると大変です。「音声を録音して」「音声データを解析して文章にする」「文章データを処理して返事の文章を生成する」「文章を発話する」ということができるようにしないといけません。これを瞬時にできる人間の脳、耳、口ってほんとにすごいのです。私はWebエンジニアなので、今回使ったハードウェアであるRasberryPiの設定や、人の声に反応するための周波数の設定が特に大変でした。

 

スマートスピーカーの各機能

 

木村:

確かに、皆さんが共通して、難しいと言っていたのがホットワードの周波数の設定ですね。スマートスピーカーというのは、ホットワードという予め設定した言葉に反応して起動するようになっています。例えば、Google Homeだと「OK, Google」。Amazon Alexaだと「Alexa」というものですね。授業ではそれぞれ好きな言葉を設定してもらったのですが、何故か「ウェイ」や「シモシモ」という言葉が採用されていました(笑)

ただ、最初は音声デバイスが全く反応せず、部屋のあらゆるところで「ウェイ!ウェイ!」「シモシモ!シモシモ!」と聴こえてきました(笑)逆に感度が良すぎると、ホットワードを言っていないのに勝手に起動しちゃうのです。例えば「ウェイ」みたいな言葉だと、「ホイ」みたいな言葉もスマートスピーカーは「ウェイ」が発せられたと認識してしまうのです。そこの部分の微調整を皆さん時間かけて行っていました。

ホットワードに対してきちんと反応しないといけないし、ホットワード以外の言葉には反応してはいけないのです。既にスマートスピーカーを販売している各社は確実にホットワードのみにスマートスピーカーが反応するように考慮して、言葉を設定しています。「OK, Google」という言葉は「OK」と「Google」という2つの音の波を認識に使っていて、より確実にホットワードのみを認識できるようにしています。「Google(グーグル)」だけだと「Louvre(ルーブル)」や「Formal(フォーマル)」みたいな似たような音節を持つものに対して誤反応してしまう可能性があるのです。「Alexa」は1単語ですが、通常の単語ではなかなか見受けられない特徴的な音節を持っています。

 

「OK, Google」「Alexa」は良く考えられたホットワード by木村

 

 

今後、音声認識は生活のあらゆるところに

 

-木村さんは今回のゼミをどのようなことを意識しながら運営していたのですか?

木村:

一番意識したのは、受講されていた人がただスマートスピーカーを開発するのではなく、一連のフローを理解しながら、開発を進めることで、スマートスピーカーの機能の理解も促進できるようにしたことですね。「話しかけられたことを検知する」「言葉を録音する」「話しかけられた言葉を解析する」「発話する」など、スマートスピーカーの機能を解説しながら、その仕組みが分かるように順番に教えていきました。

 

阿部:

私はスマートスピーカーの仕組み自体にも興味があったのですが、今回のゼミではそこを知ることができるようにしていただけたので助かりました。今回使ったRasberryPiには、明かりや温度のセンサーもついているので、今回学んだ仕組みを応用していろいろと開発してみたいです。

 

 

―なるほど。仕組みを理解しながら開発すると、その仕組をどう応用できるかも考えられるので良いですね!

木村:

そうなのです。ちなみに、あと半年、時間があれば、スマートスピーカーと話しながら返答パターンを教えるところまでいけました。ここまでいけば、ユーザーが楽しみながら、スマートスピーカーに命令を覚えさせることも重要な要素になるかなと思っています。「シーマン」や「ピカチュウげんきでちゅう」というキャラクターと音声対話をしながら育成するゲームがありましたが、このようにユーザーが楽しみながら、スマートスピーカーに命令を覚えさせることも重要な要素になるかなと思っています。

 

 

―確かに可愛らしさや話しかけやすさはスマートスピーカーにとって重要な要素になりますね。それでは最後に、今回のゼミを通して、お二人が将来的に作りたいデバイスを伺ってもよいですか?

木村:

今後は独自のデバイスを作ってみたいですね。声で操作するデバイスだけではなくて、人の動きを認識して動くデバイスとかですね。例えば、料理している人の動きをカメラで認識して次に何をすればいいのかをアドバイスするデバイスや、部屋で鍵を無くした時に「ソファの上に落ちていますよ」と教えてくれるようなデバイスなども、人の動きや画像の認識で実現可能になります。今回は「音」を起点にしましたが、デバイスを動かすためのいろいろな起点を持ったサービスを次々と出していくのが私の野望です!

 

阿部:

私は、今回始めて音声認識という技術にチャレンジしましたが、今後も音声は重要な分野になってくるかと思います。すでに普及しつつある分野ですし、家の中、車の中などさまざまなところで音声認識が使われていくようになると思います。そういう世界は決して遠くない未来にやってきますし、私としてもそういった世界を私が作ったデバイスで実現していきたいと思っています。

 

―ありがとうございました。

 

以下、おまけです。


今回使ったRaspberry Piや関連キットは以下のURLから購入可能です!
https://raspberry-pi.ksyic.com

 

阿部がお世話になったRaberry Pi開発に役立つ記事はこちら!

Snowboy Hotword DetectionをRaspberry Piで動かす
https://qiita.com/mayfair/items/d16d092328e60f0cac6b

Raspberry Piで音声認識
https://qiita.com/t_oginogin/items/f0ba9d2eb622c05558f4

Raspberry Pi 3を買ってMacを使ってWiFi接続とSSHの接続するまで
https://qiita.com/toshihirock/items/8e7f0887b565defe7989

 

NTTレゾナントでは、「goo」を一緒に作るエンジニアやデザイナー、プロデューサーを募集中です!採用ページでは、実際のエンジニア社員へのユーザーインタビューや社内カルチャーを紹介していますので、ご興味があればぜひご覧ください。

 

この記事についてブログを書く
  • Twitterでシェアする
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« gooニュースでフィギュアスケ... | トップ | 【イベント出展】 第22回「... »
最新の画像もっと見る

★もっと知りたい!NTTレゾナント」カテゴリの最新記事