池上優游涵泳

「料理と散歩と仕事で海外」「ベトナム生活あらかると」改め、「池上優游涵泳」として日々を綴っています。

スマートスピーカーの仕組み(フロントエンド)

2019-02-11 14:23:25 | 知識・学習

こんにちは。

今朝は雪が舞いましたね。

空気も冷たく、多摩川の土手を歩き始めたものの、指先が耐えられず、街中をうろうろ、目標歩数を達成して帰ってくるという、はたから見たら、怪しい人そのものだったと思います。

さて、今日の話題は、スマートスピーカーの仕組みについてので勉強です。

ひところは、次から次と発表されたスマートスピーカーですがだいたい、買う人は買って、買わない人は忘れた頃かと思っていましたが、

依然としてCMを見かけない日はないですね。

CMでやっているように、スマートスピーカーに向かって話しかけ

買い物を注文すれば、それがネットショップの注文となり、

電気を消して、といえば、電気が消え、

天気を問えば、といえば、天気を答える

だいたいの仕組みとしては、音声認識というものがあって、人間の声をAIクラウドが解析して、指示に変えて、ネットショップにオーダーしたり、インターネットでつながった電化製品をコントロールしたり、Weather.comから天気情報を入手して答えたりしているんだろうとは、思うのですが、

もっと真面目に勉強してみましょう。

このカテゴリー(ブログ)の趣旨ですから。

いろいろネット上を探してみたところ、この一連の記事が、私の知りたい事をほぼおさえてくれていましたので、これを教科書に、私なりの理解を整理したいと思います。(テクニカルすぎるところは端折りつつ)

【スマートスピーカーの裏側に迫る】

(第1回)呼び掛けにどう応答しているのか? Amazon EchoやGoogle Homeが動く仕組み

(第2回)Alexaが一歩リードするSkill数が鍵、問いへの返答を返すクラウドサービスの内部構造

(第3回)クラウドのバックエンドは発展途上、無数のデバイスと多様なプラットフォームが乱立

(第4回)「IFTTT」をはじめとした、各種サービスをつなぐクラウド連携サービス

まず、スマートスピーカーの種類ですが、冒頭、“次から次へと”と言いましたが、現状は

クラウドサービス スマートスピーカー
Amazon Alexa Amazon Echo/Echo Dot/Echo Plus
Cortana Windows 10搭載デバイス
Google Assistant Google Home/Home Mini(/Android搭載デバイス)
LINE Clova Clova Friends/Clova WAVE
Siri Apple Home Pod(/iOS・mac OS Sierra搭載デバイス)


で、一般的にお部屋におかれたスピーカーとして認識されているのは
(いわれてみれば、iPhoneもスマートスピーカーだ)

Amazon、Google、LINEですね。(CMでよくみるやつです)

AppleのHome Podはまだ日本では発売されていません。
参考記事「HomePod、中国と香港で1月18日発売!」

なんだか、こんな後発で、Appleは大丈夫なんでしょうか。

まあ、高級ブランドですから、囲い込まれたAppleユーザは買うんでしょうね。
(値段は、349ドルと、群を抜いて高いですが。まあ、高級ブランドですからね)

ところで、スマートスピーカーとしての音声認識力は優れているみたいです。
参考記事「Apple、HomePodが機械学習でユーザーの声を認識する技術の論文を公開」

また、解析する「Siri」ですが、従来、とんちんかんな回答の代表のような言われ方をしてきましたが、
参考記事「AIアシスタントに知能テスト!トップはGoogle、Siriは1年弱で急成長」

実は急成長しています。アメリカ人だから、日本語が弱かったのかな、それでHomePodのリリースも日本が遅れていしまうのかな。

でも、上記論文(2016年)の甲斐あって、Googleのエキスパート引き抜いて、Googleを猛追という感じかも。
参考記事「元Googleのジョン・ジャナンドレア氏、Appleの役員に就任」

さて、話をもどして、


1. スマートスピーカーの基本構成

ちょうどいい絵が貼ってありましたので、これを元に。



ユーザの声をスピーカーで受けて、音声を聞き分け、ノイズをとるなどの前処理を行い、WiFiやBluetoothで、家庭のルータを経由し、インターネット上にあるのクラウドにフロントエンド(音声解析、ユーザーへのレスポンス)に渡します。

フロントエンドで音声解析を行い、ジョブに置き換え、天気や音楽配信などの外部サービスに問い合わせ、音声合成して「今日は一日晴れです」などとスピーカーに喋らせたり、ネットスーパーに注文を送ったら「注文が完了しました。配達は明後日ですが、時間帯は何時にしますか。」とか喋るのでしょう(スマートスピーカーを持っていないのでイメージですが)

フロントエンドで、電気を消すリクエストであれば、クラウドのバックエンド(IoTのコントロール)から、IoT対応のホームデバイスであれば、インターネットから直接、電気を消すリクエストを送り、電灯の電気が消えます。

ホームデバイスがIoT対応でなければ、ホームゲートウェイを介して、電気を消すリクエストを伝えます。

簡単にいえば、こんな仕組みですね。


2. フロントエンドの仕組み

私の理解では、

正しく、ユーザの声を認識、解析して、リクエスト化することは、重要ですが、現在の音声認識のテクノロジーは、かなり高度なところにきており、スピーカー側は、各社、そうは違わないのではないでしょうか。

それよりも、どれだけのリクエストを実現できるか。

上の図では、「ジョブ生成・管理」「ジョブリスト」のところだと思うのですが、

どれだけ「ジョブリスト」を持っているか

(第2回)Alexaが一歩リードするSkill数が鍵、問いへの返答を返すクラウドサービスの内部構造の後半にかかれてありますが、

“ここでキーになるのが「Skills」である。前回は“ジョブ生成・管理”として説明したが、これをどれだけ豊富に持てるかが、どこまで使えるサービスになるかの鍵となる。”

とあって、この記事の執筆時点では、Alexaが一番進んでいて、これをGoogleが追従する状況。

とは言え、クラウドサービスなので、どんどん改良してバージョンアップや追加されるものですから、スピーカーを買い替えるということではないのは同感です。

しかし、個人的な感覚ですが、スマートスピーカーの機能はきわめて汎用的な感じがします。

CortanaはWindows 10、SiriはiOS、Mac OSだし。

差別化は、クラウド側でどれだけユーザニーズに合った「Skills」を持っているか(音声認識ではなく、リクエストされたサービスを実行できるか)なのでは?

パソコンから、様々なクラウドストレージを使うが如く、スマートスピーカーは汎用機で、クラウドAIは好きなものを選ぶようには出来ないのでしょうか。

また、いろいろなAIクラウドから、回答をもらうことはできないかな?

天気をきいたら、複数のAIが、それぞれ回答を返してきて、ひつだけ外れがあったり、

“ノリのいい”音楽をリクエストしたら、選曲によって、クラウドそれぞれの“ノリ”の違いがわかったり、

で、次からは、得意分野のクラウドにたずねる、趣向の合うクラウドにたずねる、

(医療における)セカンドオピニオンのように、他のクラウドに確認や他のオプションをきく、

役割分担を決めて、買い物はAlexa、お風呂に湯を入れるのはGoogleとか

なんか、できたら楽しいんじゃないかな、と思ったりしましたが

(第2回)Alexaが一歩リードするSkill数が鍵、問いへの返答を返すクラウドサービスの内部構造の前半で、

“現時点ではほぼすべてのスマートスピーカーが、「特定のクラウドサービスのみとつながる」方式”



“技術的には“不可能ではない”が、そのためにはスマートスピーカー自身が相当賢くならない限り難しい”との専門家のコメント。

こんな感じが、上で書いたことの理想だったのですが



そう簡単ではないのですね。

さらには、“複数のクラウドサービスのプロキシとして動作するような別のクラウドサービスを手前に置き”



コンシェルジュ的なクラウドAIを置くということかな。

テクニカルには、クラウドプロバイダーの“マルチクラウドアクセス”のような感じも。



“ただし、この場合には「誰がそんなサービスを立ち上げるのか?」という問題点がある。”とも言われていますが、

NTTコミュニケーションズのSD Exchangeみたいな需要は、、、ないな。

さて、ここまでがフロントエンドについて。

次回は、引き続き、バックエンドについて勉強します。

ではでは。



コメントを投稿