2017年2月21日、アマゾンジャパンが提供するAmazonショッピングアプリ(iOS版・Android版)は、新たに音声検索機能の提供を開始しました。
アメリカ、イギリス、ドイツに次いで日本が4カ国目の対応となりますが、独自の検索エンジンを利用した日本語による音声検索の提供は初めてです。
ユーザーは、この機能が提供されたことで、文字を入力することなく、ワンタップで購入したい商品のページにアクセスすることが可能になりました。

一方、アメリカのAmazonで昨年クリスマスシーズンに品切れしてしまうほどに売り上げが好調なAmazon Echo
日本ではまだ発売されていませんが、モバイルアプリの音声検索機能がリリースされたことで、日本語対応への準備が進んでいるのではと噂されています。

今回は、Amazon Echoの日本発売に先駆けて、Amazon Echoと関連商品、そこに搭載されている音声認識プラットフォームであるAlexaの基礎知識を解説します。
Alexaを介してさまざまな機能を「Skill」としてつなげる「Skill Kit」もご紹介します。ぜひこの機会に理解しておきましょう。

Amazon Echoとは?

2016年末までに、アメリカのAmazonでは音声認識デバイスとしてAmazon Echoをはじめとする3種類のデバイスを発売しています。

1. Amazon Echo

echo.png

Amazon Echoは360度にスピーカーおよびマイクが付いた音声認識デバイスです。
インターネットを介して音声認識プラットフォームであるAlexaとつながります。
iPhoneなら「Hey, Siri…」、Androidなら「OK, Google…」というウェイクワード(wake word)を使って呼びかけますが、Amazon Echoには*「Alexa…」*と呼びかけることでウェイクワードとして機能し、声を拾い始める方向だけふちにあるライトリングが水色に光ります(ウェイクワードは変更することも可能です)。

サイズは直径約8cm、高さ約23.5cmで、重さは1045グラムです。
黒と白の2色から選ぶことができます。
Bluetoothを介してiPhoneやAndroidとペアリングすることができ、Bluetoothスピーカーとしても利用することができます。

2. Echo Dot

dot.png

Echo DotはAmazon Echoのスピーカー部分を最小限に抑えて、外部スピーカーと接続できるモデルです。
Amazon Echoを*「家のハイエンドスピーカーと接続したい」*という需要から生まれたモデルで、Amazon Prime会員限定で数量限定で販売されています。

サイズは直径約8cm、高さは3cmまで抑えられており、重さも163グラムと軽量です。
黒と白の2色が用意されているほか、Echo Dot Caseによって部屋の雰囲気に合わせて着せ替えを行うこともできます。

3. Amazon Tap

tap.png

Amazon TapはAmazon Echoのポータブル版と位置付けることができる製品で、Amazon Echoが家に設置して常時ONにしているのに対し、外に持ち出すことを想定したモデルです。
その名の通り、タップすることでオン・オフを切り替えることができます。

バッテリーで充電するタイプで、最大9時間まで連続して使用することができます。
充電ドックが付属しているので、寝る前にドックにおいておくだけで充電ができます。
また、別売りの着せ替え可能なAmazon Tap Slingをかぶせることで、持ち運びがしやすくなります。
もちろんWiFiやBluetooth対応で、Bluetoothスピーカーとしても利用することができるほか、3.5mmのオーディオピンを差し込んで音楽を再生することもできます。

サイズは直径約6.5cm、高さは約16cmとAmazon Echoより少し小柄です。
重さも470グラムと若干軽めになっています。
家での生活に加えて、ピクニックや屋外パーティーなどに活躍しそうです。

Alexaとは?

AlexaはAmazon Echoシリーズに搭載された音声認識アシスタントですが、音声認識プラットフォーム全体を指してAlexaと呼ぶ場合もあります。
音声による対話や音楽の再生、リストの作成、天気予報や交通情報などのリアルタイムでの情報提供など、さまざまなことが可能です。

現在、Alexaとのやりとりやコミュニケーションは英語やドイツ語でのみ利用可能ですが、2017年中には日本語対応されるのではないかとの見方もあります。
スマートフォンからコンパニオンアプリを経由して操作を行うこともでき、コンパニオンアプリ上でSkillと呼ばれるソフトのインストールや音楽の制御、アラームの管理やショッピングリストの表示などが行えます。

Skillとは?Skill Kitとは?

Skill(スキル)とは、サードパーティーが開発したAlexaを介して提供されるサービスです。
各種Skillはコンパニオンアプリを通して無料でダウンロードすることができます。

Skillを使えば、音楽を再生したり、一般的な質問に答えたり、アラームを設定したり、ピザを注文したり、Uberでタクシーを呼んだりできます。
サードパーティーの開発者は、Alexa Skill Kit(ASK)を使用してAlexaのSkillを開発し、公開することができます。

Skillの種類

Webデザイナーがホームページを作ったり、エンジニアがスマートフォンアプリを作るように、ASKを活用してAlexaのSkillを開発することができます
将来的には日本語対応することが予想されるので、ASKを使ってSkillを描いてみたいと思っているひともいるかもしれません。
Alexaは音声を使っているので一見すると開発が難しそうに思えますが、プログラム自体は文字で書かれているので、開発はこれまでのアプリケーションと同じくタイプしていきます。
それでは、ASKの概要について簡単に見ていくことにしましょう。

Skillには現在3つの種類があり、これをSkill Typeといいます。

1. Custom Skills

Custom Skills(カスタムスキル)はすべてゼロから自分の手で作っていくSkillのことです。
自由に書くことができるので、アイデア次第であらゆることが可能です。
例えば、Googleカレンダーと連携して「●時に六本木の会議室を押さえておいて」と予約を入れたり、「子供部屋の様子を映して」と家にある見守りカメラを起動させたりすることができます。
要するに、APIさえあればそれを「声」によって操作することができるというわけです。

2. Smart Home Skills

Smart Home Skills(スマートホームスキル)は、Skillの中でもスマートホーム機能に特化したSkillです。
このSmart Home SkillsのAPIの中には、スイッチのトグル、温度調整などの機能と各家電への接続認証を行う仕組みが組み込まれています。
これらのAPIを使ってSkillを組み立てていくことで、スマートホームシステムを全体として組み立てることができます。

3. Flash Briefing Skills

Flash Briefing Skills(フラッシュブリーフィングスキル)は、簡潔に言うとニュースの配信用のSkillになります。
これはテキストコンテンツインターネット上から取得して配信する仕組みで、ソースはRSSまたは直接JSONから読み込むことができます。

ウェイクワードと音声認識の仕組み

日本語対応したときにどうなるかはわかりませんが、Alexaは現在英語とドイツ語に対応しており、その音声認識の仕組みを知ることは、ASKが日本語対応したときにも役に立つかもしれません。

例えば、Alexaに次のようなフレーズを聞いてみたとしましょう。

「Alexa, ask Forecast Tech for today’s weather.」
(Alexa、Forecast Techに今日の天気を聞いてみて)

「Hey, Siri」「OK, Google」のように、Alexaでは「Alexa」という言葉自体がウェイクワード(wake word)になっています。
Echoではマイクがこの言葉を拾うと呼びかけた方向が水色に、それ以外の方向は紺色に光り、それ以降の言葉がクラウド上のAlexaの各種APIを通信し、ストリーミングしてクラウドに送られ、テキストに変換されます。

その次に発せられた*「ask」起動フレーズ*(launch phrase)といい、この次にくる単語がSkill名であることをAlexaに伝えます。
起動フレーズには、ask以外にも「open」「start」「begin」「launch」「load」などがあり、これらの起動フレーズをSkill名に使うことはできません。

最後の*「for today’s weather」発話*(utterance)と呼ばれ、あらかじめ予想されている答え(sample utterance)からAlexaがどの答えと結びつきそうかを判断し、Skillを起動させます。
発話と答えの結びつきにはディープラーニングの技術が使われており、多少の言葉のゆらぎがあってもAlexaは理解してくれるようです。

Alexaを試すための方法

1. Alexa対応のデバイスを購入する

Alexaの対応デバイスを買うことで、すぐにAlexaを試すことができます。
しかし、Amazon Echoを含めた3種類のデバイスは日本国内ではまだ利用できません。
そのため、海外で試す必要があります。

2. Alexaシミュレーターを利用する

echoism.jpeg
https://echosim.io

Amazonが提供しているAlexaシミュレーター*「Echosim.io」*を利用することで、擬似的にAlexaを体験することができます。
Echoism.ioにはアメリカのAmazonアカウントがあればログインすることができます。

3. Alexa対応デバイスを製作する

git.jpeg
https://github.com/alexa/alexa-avs-sample-app

少し敷居が高いですが、自分でAlexa Voice Service(AVS)に対応したデバイスを実装するという方法があります。
AmazonのGitHub上でサンプルコードと開発キットが提供されています。
WindowsやMacなどの通常のコンピュータだけでなく、日本でも人気のRaspberry Piにも実装することができます。

まとめ

以上、Amazon EchoやAlexa、そしてSkillやSkill Kitなどについての概要をご紹介しました。
まずはAlexaが何なのか、どんなもので、どうしたら試すことができるのかを理解できたのではないかと思います。

Alexa自体は音声で操作しますが、クラウド上でテキストに変換されるので、Skillの開発は実際にはこれまでのプログラミングの流れとあまり変わりません。
さらに興味があるかたは、Amazonのデベロッパー用サイトでさらに細かい概要が確認できるので、チェックしてみてはいかがでしょうか。