東京リージョンでGAになったQ in QuickSightで何ができるのか試してみる

記事タイトルとURLをコピーする

さとうです。

先日、Q in QuickSightが東京リージョンでGAになりました!

aws.amazon.com

日本語入力は今年になってからサポートし始めていましたが、地理的な制約がなくなることで日本でも導入が増えそうです。

Q in QuickSightについて

概要

QuickSightをAmazon Qと連携させ、自然言語でのデータ可視化などの様々な生成AI機能を利用できるようになるサービスです。

名前通りですが、複数の機能があるのでユースケースごとに紹介したいと思います。

料金

以下をご参照ください。

aws.amazon.com

注意すべきは、1名以上のProユーザーを作成した時点で250USD/月のコストが固定で発生することです。検証した時はユーザーと同じく、時間割で請求されていました。

少なくとも 1 名の Pro ユーザーまたは少なくとも 1 個の Amazon Q トピックを持つアカウントには、アカウントごとに 250 USD/月の Amazon Q 有効化料金が適用されます。

また、全ての機能にProが必要というわけではなく、例えば後述するQ&Aを「利用」するだけならProユーザーである必要はありません。

分析データと環境の準備

分析に必要なデータを用意します。

分析テーマ

「架空のコンビニ『サーバーマート』の都内100店舗のPOSデータから顧客の購買行動を分析する」というテーマでQ in QuickSightの実力を試してみましょう!

AIと一緒に作ったロゴ(ただの趣味)

分析データ

以下のようなダミーデータのCSVを作りました。

  • 店舗マスタ(都内に100店舗)
  • 年齢層マスタ
  • POS売上データ(全店舗1ヵ月分。約250万レコード)

ER図

分析環境

S3にCSVをアップロードしてAthenaから分析できる状態にし、AthenaをQuickSightのデータソースとして使用できる状態にします。 詳細な手順は割愛しますが、QuickSightも含めた全体の構成イメージはこのようになります。

QuickSightの準備

Q in QuickSightが読み込むための元データは人間が用意する必要がありますので、何点かQuickSightのアセットを作成します。

データソース/データセットの作成

データソースは分析対象となるデータへの接続情報を定義するためのリソースです。

一方、データセットは複数のデータソースの結合や動的パラメータの設定などデータの加工設定を定義するためのリソースです。

今回は以下のようにPOS売上データに店舗マスタと年齢層マスタをデータソースとして登録した上で、FKでJOINして1つのテーブルに加工してデータセットにしました。

こちらをベースに分析していきます。

分析/ダッシュボードの作成

分析とはデータセットに可視化設定などを定義したもので、ダッシュボードは分析を公開状態にしたものを指します(わかりにくい)。

機能の多くはダッシュボードを参照しますので、先ほど作成したデータセットで適当なグラフを作ってダッシュボードとして公開します。

トピックの作成

トピックはQ in QuickSight固有のアセットです。

データセットに対する注釈や利用状況、推論結果に対するフィードバックなど、データセットに関する様々な「トピック」を集約する場所…というイメージです。

Data タブからは生成AIの分析対象とするフィールドを選択できるほかデータセットのフィールドに対して通称(Friendly name)や別名(Synonyms)を定義したりする機能があります。

例えばポイントの名前が「さばペイ」だったとして、この機能を使うとデータと固有名詞(さばペイ)の紐づけができたりするようになるわけですね。

「ポイント利用額(Friendly name)」と「さばペイ利用額(Synonym)」を定義してみた

ほかにもCustom Instructions ではデータセットに対する注釈を加えることができたりします。5,000字まで入力することができるので社内固有用語やドメイン知識など、複雑なコンテクストをAIに理解させることができそうです。

各機能を試してみた

Q in QuickSightに組み込まれた機能でできることをまとめてみました。

もちろん東京リージョンで試しています。

機能名はドキュメントを参照していますが、正式名称ではないかもしれません。

分析する人向けの機能

Q&A: トピックのデータやダッシュボードに自然言語で質問する

  • AIが使うもの: トピック, ダッシュボード

ある意味本命とも言えるような機能で、トピックで定義したデータセットとダッシュボードに対して自然言語で質問ができるという機能です。

トピックの場合

右上のAmazon Qのアイコンをクリックすると使用することができて、わかりにくいのですが左上のプルダウンから質問したいトピック(データセット)を選択します。

例えばさきほど作成したトピックに対して「さばペイの利用客層別の平均利用額をまとめて」と質問してみた結果は以下です。

出力は英語で返ってくるので、日本語で翻訳をかけています

トピックで設定した通り、「さばペイ」という固有名詞をポイントと認識していることが伺えますね。

ダッシュボードの場合

ダッシュボード上部の Ask a question about this dashboard をクリックするとトピックと同じように質問することができます。

なおダッシュボードを利用するAI機能全般に言えることですが、公開時にオプトインが必要になります。 Allow data Q&A にチェックを入れてください。

また、以下のドキュメントにあるように、ダッシュボードから質問する場合はトピックを使用したデータのチューニングを行うことはできないようです。

Amazon QuickSight で Dashboard Q&A エクスペリエンスを有効にする - Amazon QuickSight

個人的には「対話機能を持ったデータカタログ」というイメージがしっくりくる機能ですね。どのようなデータが、どの程度存在するのかといった抽象的な情報が自然言語で直感的に抽出できるからです。

Scenarios: 自然言語でダッシュボードを分析する

  • AIが使うもの: ダッシュボード

ダッシュボード(複数選択可)を分析対象として、自然言語で命令したシナリオに合わせてダッシュボードを分析してくれる機能です。

Q&Aとの違いは単なる問答ではなく問題解決にフォーカスした機能であるという点が言えると思います。

また、複数のダッシュボードを分析対象にできる点にもありそうで、データセット間の相関分析などより複雑な分析が可能になりそうです。

たとえば「20代の客層の売上が低迷している原因は何ですか?」といったように分析したいシナリオを与えるとAIが対話形式で分析の深堀方法を提案してくれます。

出力は英語で返ってくるので、日本語で翻訳をかけています

AIが提案した「20代の年齢層で売上が最も少ない店舗は何か、その特徴は何か?」を選択して分析させてみると、自律的に分析を重ねていることがわかります。

問題定義までが人間の仕事で、その後のデータの分析と仮説の立案をAIがやってくれるイメージですね。

Executive Summary: ダッシュボードを要約する

  • AIが使うもの: ダッシュボード

ダッシュボードのエグゼクティブサマリを生成してくれる機能です。

ダッシュボード右上の BUILD - Executive summary から表示することができます。

「ダッシュボード自体がサマリなのでは…?」と個人的に思わなくはないのですが、不特定多数に公開するダッシュボードなどであれば内容の理解を促すために有用な機能かもしれません。

生成されたサマリのサンプル

作成する人向けの機能

Authoring Experience: 自然言語でデータを可視化する

  • AIが使うもの: 分析

分析を使った可視化の定義を自然言語で命令できる機能です。

Excelで例えると成型済のデータからピボットテーブルやピボットグラフをいい感じに作ってくれる機能といったところでしょうか。

「分析」画面の上部にある Build visual をクリックすると自然言語で命令することができるので、試しに以下のように命令します。

店舗別の売上をサマリしたいです。 郵便番号を使って、都市別にヒートマップのように可視化してください。

すると程なくして店舗別の売上合計金額のテーブルが出てきました。

しかし、可視化のタイプを意図した通り選択できていなさそうです。

惜しい!

後から手動でビジュアルタイプを「地図上のポイント」に直してあげると想定していたグラフが表示されました。なので、データとしては意図通り加工できていることになります。AIが何らかの理由で可視化を適用できないと判断した可能性もありますが、このあたりは発展途上なのかもしれません。

皇居のど真ん中に出店するサーバーマート

Data Stories: データーストーリーを作成する

  • AIが使うもの: ダッシュボード

ダッシュボード(複数選択可)をデータソースとして、自然言語で命令したテーマに合わせたハンドアウトを作成してくれる機能です。夢がある機能ですね!

左側のブレードの[Data stories]から作成できる

先ほど作成した店舗別の売上情報をダッシュボードとして保存して、以下のように命令してみました。

サーバーマートの店舗別売上情報を地図上に整理したダッシュボードです。 このダッシュボードから、サーバーマートの売上を最大化するための出店計画を提案してください。 日本語で出力してください。

生成されたものの一部がこちらです。出力は英語になってしまったのでブラウザで翻訳をかけています。

テーマに合わせて目次は作ってくれるのですが、マーカーした場所をご覧いただくとわかるように元のデータがスカスカなので洞察できないよ!と暗に言われています。

十分な量のインプットを与えた時の品質は気になるところですが、少なくとも日本語出力には対応していないように見受けられたので現時点で実用化のハードルは高いかもしれません。

試してわかったこと

アウトプットは英語で返ってくることが多い

アウトプットやUIの表示も含めてですが、英語で返ってくることが多いです。このあたりは発展途上といったところかもしれません。

データ成型は守備範囲外

QuickSightはBIツールなので、データの成型や結合などの加工作業は守備範囲外です。

QuickSightに投入する前のデータ加工はGlueなどの別サービスで処理が必要な点は変わりありません。

機能ごとのProユーザー要否について

盲点だったのが Q&Aを参照するだけならProユーザーは必要ない ということです。

トピックはアセットの一種なので、共有フォルダなどで共有することでReaderユーザーでも質問することができました。

利用料金はProユーザーのありなしでかなり変動しますので、ユースケースに合わせて付与対象を検討するとよさそうです。

機能 ユースケース 使用するデータ Proユーザーの要否(作成) Proユーザーの要否(表示)
Q&A データ可視化、データ分析 トピック 要(トピックの作成) 不要(作成済のトピックに質問するだけなら不要)
Scenarios 問題解決、データ分析 ダッシュボード
Executive Summary 要約 ダッシュボード
Authoring Experience ダッシュボード作成 - -
Data Stories 資料作成 ダッシュボード 不要

参考: Generative BI の使用を開始する - Amazon QuickSight

ProなしのReaderユーザーでもトピックとData Storyは表示できる

機能ごとに利用するデータについて

機能ごとにどのデータを利用しているのかわかりづらかったので図にしました。

複数のデータを参照できる機能は多:1、1つのみ参照できる機能は1:1と表現しました。

検証に基づく個人の見解です。正確さを保証するものではないのでご了承ください。

まとめ

お伝えしたいことが多く、こってり記事になってしまいました。

利用者にとってはQ&A、作成者にとってはAuthoring Experienceが目玉の機能になるように思いました。

ちなみに、お手元で試したい方向けにAWS公式の日本語ハンズオンもあります。

catalog.us-east-1.prod.workshops.aws

今後日本語でも使い勝手が良くなっていきそうなので、見守っていきたいと思います!

佐藤 航太郎(執筆記事の一覧)

クロスインダストリー第1本部 クラウドモダナイズ課
最近はデータエンジニアのようなことをしています。