[レポート] ALX329: 裏側の動き – 5つのカテゴリのデバイスにAlexaのVoice UIを追加する #Alexa #reinvent

2018.11.27

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

せーのでございます。このエントリはALX329「Working Backwards - Add Voice AI to Five Device Categories with Alexa」のレポートとなっております。

※このセッションはチョークトーク形式(参加者が自由に発言、討論する形式)となっておりますので、多少話が前後したり飛んだりすることがございます。

レポート

Alexaの歴史

  • Alexaは2014年に生まれた
  • 現在では様々なものに形を変え、最近ではあらゆる家電やスマートスピーカーがAlexa対応となっている
  • Alexa自体もまた、どこにいても呼び出せるようになったため、スピーカーはもちろん、ディスプレイ付きのスマートスクリーンや、携帯に入るアプリ、ヘッドホン、TVなど、様々なものに入っている

Echoデバイスの裏側

  • EchoデバイスはFar Fieldの仕組み
  • スマートスピーカーにはどんなパーツが必要か?
  • まず、マイク
  • 複数のマイクを配置することがふさわしい
  • 例えばリビングのテーブルの上に置くという想定ではマイクの配置はどのようにするべきか?
  • 答えは円形。ビームフォーミングが効くように
  • ビームフォーミングとは、声が最初に届いたマイクと最後に届いたマイクの音波差を測定して、ユーザーがどの位置から話しかけているか推測するもの
  • これにより、よりクリアに音声を収録することができる
  • 次にLED
  • Alexaは各ステータスを決まった色で表す仕様がある
  • 他にスピーカー、Wi-Fiが必要
  • EchoからAlexaへの通信を「Event」、AlexaからEchoへの通信を「Directive」という
  • WWE(Wake Word Engine)を使ってウェイクワードを検出する
  • ソフトウェア部分はSDKに入っている。とても簡単
  • WWEはクライアントの他にAlexaサーバにも入っていて、クラウド側で「これはウェイクワードではない」と判定されると呼び出しが却下される
  • WWEの結果ウェイクワードが呼ばれていると判明すると、その後の発話を録音して細かく区切った状態でクラウドに送信する
  • クラウド側ではASR(Auto Speech Recognition: 自動音声認識)、NLU(Natural Language Understanding: 自然言語理解)の順番でIntentやSlotにマッピングされ、スキルにて処理、帰ってきたテキストをTTS(Text to Speech: テキスト音声変換)を通じてデバイスに返す

  • クロストーク、つまり発話以外の雑音がひどいケースはどうするか
  • PTT(Push to Talk)を使い雑音を排除する
  • ヘッドホンにAlexaが入る場合はPTTの他にTTT(Tap to Talk)も使う

  • スマートスピーカーとヘッドホンでの違いを比較する (以降、議論)

まとめ

いかがでしたでしょうか。AVS(Alexa Voice Service)などを使わない方などは新鮮だったかと思います。こういった仕組みを知っておくと、実際のユースケースの際に「実はEchoじゃない方が使い勝手が良くなる」といったケースも出てくるかもしれません。ハードとソフトの関係性をぜひ頭のどこかに入れておいていただければと思います。