「データサイエンティスト(見習いレベル)」の いけうちです。
以前は、
仕事で 音声UIのアプリケーション開発をやってまして、
趣味でも スマートスピーカーのアプリ開発をしていたのですが、
最近は、
仕事の担当が(音声UIに限らない)データ収集・分析になりまして、
データサイエンティスト検定(見習いレベル)を受けたりして勉強中です(無事に合格しました)。
身近なところでデータを可視化して、データを眺める習慣をつけようと思い、
リリース済みのAlexaスキルの利用データを可視化してみました。
Alexaスキル 「カスタマイズ天気予報」
まず、データ可視化をする対象のAlexaスキルの説明です(と言いつつ、スキルの宣伝です)。
Amazonのページはこちら: Alexaスキル カスタマイズ天気予報
このスキルでは あなた好みに天気予報をお伝えします
Alexaに天気予報をおしえてもらうときに「もっと こうだったらいいのに」と思うことはありませんか?
・6時間ごとの降水確率を知りたい
・傘が必要かどうかだけ教えてほしい、降水確率の値はいらない
・読み上げが終わるまで時間がかかるので もっと短く簡潔に教えてほしい
などなど 理想は人それぞれですよね
このスキルは すべての理想をかなえます!
ポイントは、ユーザーが自分好みにカスタマイズできることです。
スマートスピーカーのスキルで ユーザー設定を設けているものはあまりないと思うのですが、このスキルではいろいろと設定できるようにしました。
たとえば、私のカスタマイズ設定は、こちらの動画の通りです。
Alexaスキル「カスタマイズ天気予報」
— ikeuchi (@IkeuchiRyota) December 11, 2021
私のカスタマイズ設定値は次の通り
・傘が必要か: 読み上げあり、30%以上なら「必要」
・降水確率: 読み上げあり、6時間ごと、6〜24時
・最高気温・最低気温: 読み上げあり
・読み上げスピード: とても速い
・文章の短縮: 有効(「です」等を省略 pic.twitter.com/CltAbntsEa
Alexaの「定型アクション」に設定して、毎朝7時にスマートディスプレイから自動で読み上げさせて使っています。
とても便利です!
ぜひ使ってみてください。
スキルのデータ可視化
このスキルのデータを可視化することを考えてみます。
データといっても色々ありますが、
ここでは、カスタマイズ設定値のデータを対象とします。
このスキルのアーキテクチャは下図の通りで、
カスタマイズ設定値はDynamoDBに保存されています。
スキルの実装としては、ASK SDKの永続アトリビュート(PersistentAttributes)の機能を使っています。
このDBの中身をダッシュボード化したい。
ダッシュボード(BIツール)は世の中にいろんな種類がありますが、今回はGoogleのデータポータルを使います。
無料なのが嬉しい!(AWSで統一させるのが楽そうだったが、AWSのは有料でしたので見送りました)
下図のようなアーキテクチャで、
Lambdaを1日1回定期実行して、Cloud Storageにデータを転送し、それをデータポータルが再読み込みして、ダッシュボードが更新されます。
なお、データポータルの機能を使って、週に一度、自分宛てにメール配信もしています。
(メール配信しないと、ダッシュボードを見るきっかけがないので、放置していまう!)
図の上側: 何%以上のときに「傘が必要です」と言うか という設定値
図の下側: 読み上げスピード
これらは特に人によって好みが分かれる項目だと思います。
空欄は何も設定していない人という意味です。残念ながら、一度起動したが、何もカスタマイズ設定をせずに二度と使わない人がほとんどです。(設定が面倒だからだと思います、これはスキル自体の課題だと認識はしているのですが・・・)
課題と今後
- まだ とりあえず適当に可視化しただけの状態なので、このデータをもとにスキルの改善まで実施したい。
- ユーザー数やセッション数のような利用数を直接的に確認する場合には、Alexaのdeveloper consoleの方で見ているのですが、いろいろとアレンジしたいので、このようなデータもデータポータルに取り込みたい。
おわりに
- スマートスピーカーと直接関係のある話でなくて、期待はずれだったらスミマセンでした^^;
- スキルのデータを可視化・分析してみたいと思っても、
データがないと始まりませんので、それなりのユーザー利用数がないとやる気にならないという問題があります。
今回のスキルでは、ありがたいことにそれなりにユーザーさんに使っていただけていて、ラッキーでした。
(私のつくった他のスマートスピーカーアプリやLINEボットはほぼ利用数ゼロですが) - (再度宣伝)みなさんぜひAlexaスキル カスタマイズ天気予報を使ってみてください!