AWS Startup ブログ

「機械学習の知見がなくても、レコメンドや時系列予測を簡単に実装できる」Amazon Forecast & Personalize 活用事例

「自社にデータサイエンティストがいないから、時系列データ分析を行うのは難しい」

「エンジニアのリソースが足りていないので、レコメンド機能を実装できない」

こうした悩みを抱えている方は多いのではないでしょうか。しかし Amazon Forecast や Amazon Personalize の登場により、これらの課題は容易に解決できるようになりました。

Amazon Forecast は時系列のデータに対する予測を行うマネージドサービス。そして Amazon Personalize はパーソナライゼーション・レコメンデーションの機能を提供するマネージドサービスです。機械学習の知見がない方でも、簡単にご利用いただけるのが大きな特徴になっています。

2019年10月31日に開催された Amazon Forecast & Personalize ハンズオンセミナーでは、これらのサービスについて学んでいただくためのハンズオンを開催。また、実際にお試しになられた企業様による事例紹介も実施しました。

セミナー概要

Amazon Forecast & Personalize ハンズオンセミナーは「蓄積された顧客データ・購買データなどを、どのように時系列予測やレコメンデーションにつなげていくか」を中心テーマとしたイベントです。

セミナー序盤では、セッション講師であるソリューションアーキテクトの針原 佳貴が Amazon Forecast / Amazon Personalize のサービス概要について説明し、ハンズオン講師であるエバンジェリストの亀田 治伸がハンズオン内容について解説しました。その後、参加者の方々に、Amazon Forecast / Amazon Personalize の特徴・機能・使い方をハンズオン形式で学んでいただきました。

サービス概要ハンズオンで利用した資料をそれぞれ公開しておりますので、ご興味のある方はぜひご利用ください。

セミナー内では、Amazon Forecast や Amazon Personalize を業務で導入された「モノオク株式会社」「株式会社アイデミー」「株式会社プレイド」による導入事例も発表されました。ここからは、各社の事例をレポートしていきます。

「Amazon Personalize 導入事例」モノオク株式会社 CTO 工藤 大弥 氏

資料ダウンロードはこちら>> 

モノオク株式会社 CTO の工藤 大弥 氏は、Web アプリケーション開発に長年携わってきたエンジニア。もともと、機械学習の経験は全くありませんでした。しかし、「Amazon Personalize を利用することで、サービス内にレコメンドを簡単に導入できた」と工藤 氏は語ります。同社ではどのようにして、Amazon Personalize を活用しているのでしょうか?

データさえあれば、レコメンドの仕組みを動かすのは非常に簡単

モノオク株式会社は、物置きを探している人と空いているスペースを活用したい人とのマッチングプラットフォーム「モノオク」を提供する企業です。同社はかつて、「サービスの課題」と「CTO としての課題(技術的な課題)」を抱えていました。

サービスの課題は「『モノオク』が提供するキーワード検索や条件指定検索といった検索機能は、ユーザーにとってコストの高いアクションである」こと。「ユーザーが何度も検索をせずとも、理想のスペースに出会えるような仕組みが欲しかった」と工藤 氏は語ります。

CTO としての課題(技術的な課題)は「『モノオク』は技術ありきのサービスではないため、それほど技術的難易度の高いことをやっていない」ということ。

類似サービスとの差別化やエンジニアに対する技術ブランディングを行うには、なんらかの技術的な競争優位性が必要になります。だからこそ、「機械学習というトレンドをサービスに組み込みたい」という思いを工藤 氏は持っていました。

ですが、モノオク株式会社は人数の少ないスタートアップ企業。新機能の開発のために、多くの工数を割くことは困難でした。そんななか、工藤 氏は Amazon Personalize が登場したことを知ります。

「待ち望んでいたサービスが登場した、と感じましたね。2019年のゴールデンウィークにまとまった時間を確保して技術検証を行いました。AWS 公式の開発者ガイドを読み、コンソール版のチュートリアルを試しました。その後、『モノオク』のデータを投入してトレーニングを実施し、データさえあればレコメンドの仕組みを動かすのは本当に簡単だと実感したんです」

パラメーター調整なしでも、実用可能なレコメンドを表示

工藤 氏が実装したいと考えたのは「このスペースを見ている人はこんなスペースも見ています」という趣旨のレコメンド機能です。Amazon Personalize が提供する Personalization のレシピには USER_PERSONALIZATION、PERSONALIZED_RANKING、RELATED_ITEMS の3種類がありますが、そのうちの RELATED_ITEMS を採用することを決めました。

「USER_PERSONALIZATION と PERSONALIZED_RANKING は、ユーザーに最適化した結果をレコメンドするためのレシピです。しかし、『モノオク』はサービス性質上、同一のユーザーが複数回のコンバージョンを行うことは考えにくい。物置きを何種類も利用する方は少ないですから。そのため、パーソナライゼーションはうまく働かないと判断しました」

データセットは大きく分けて、アイテムデータとインタラクションデータの2種類を使用しました。アイテムデータとしては、スペースと所在地域(メタデータ)の情報を登録。インタラクションデータとしては、ユーザーのスペース閲覧履歴を登録しました。

レシピはパラメーターを調整せず、初期値をそのまま使用しました。性能検証を行ったところ、良好なレコメンド結果が表示されたためです。チューニングを行わず、リリースを優先する方針をとりました。2019年10月11日に本番環境へのリリースを実施。リリースしてから登壇時点までに計測したレコメンドのクリック率は、10~15%/day ほどになりました。

まだコンバージョン率への大きな影響は確認できていません。ですが、レコメンドの導入によりサイトのインデックス数が増えたため、「今後は Google 検索による自然流入に影響してくるのではないか」という仮説を立てているそうです。

「開発は本当に簡単でした。フロントエンドの実装を入れても、5人日もかかっていないと思います。機械学習に詳しくないエンジニアでも、Amazon Personalize なら短期間でレコメンド機能を実装できました。ぜひみなさんも、導入を検討してみてください」

「Amazon Forecastによるオンライン学習サービスにおける演習回数予測」株式会社アイデミー データサイエンスマネージャー 竹原 大智 氏

資料ダウンロードはこちら>>

「Aidemy」は、機械学習やディープラーニングといったデータサイエンスの先端技術を Web ブラウザ上で学べるプログラミング学習サービスです。「Aidemy」では演習回数予測のために Amazon Forecast を導入しました。株式会社アイデミー データサイエンスマネージャー 竹原 大智 氏が、Amazon Forecast 導入の経緯や利用して感じた利点について解説しました。

演習回数を予測してリソースのコストを最適化

プログラミング学習サービス「Aidemy」では、ユーザーは演習を行う際に Web ブラウザ上から Python のソースコードを入力します。プログラムの情報は「Aidemy」のクラウドサーバーに提出される仕組みになっているのです。

その後、RUN サーバー上でプログラムが実行されて、結果がフロント側の画面に戻ります。演習回数の増減に応じて、RUN サーバーの負担が変化します。

「需要に応じて動的にリソースを変更できれば、コストの最適化が実現できます。これが演習回数を予測したいと考えた背景でした」

Amazon Forecast は、機械学習を用いて時系列データを付加的な変数に結びつけることで、サービスの利用頻度などの予測を立てられます。「Aidemy」の抱えていた課題に、非常にマッチしていました。

「Amazon Forecast による演習回数予測は、コンソール(GUI)または Python(Jupyter Notebook)や AWS CLI から、学習に必要なデータ(CSV ファイルなど)を入力するだけで利用できます。

コンソールからの操作の場合、画面の指示に従って数回クリックするだけです。そして、画面上から予測結果を簡単に確認できます。Python(Jupyter Notebook)や AWS CLI から実行する場合でも、サンプルコードの内容を参考にすればすぐに動作可能な状態にできます。

データサイエンティストの方は Pandas などを用いてデータを加工・編集するケースが多いと思うのですが、そのデータを CSV に変換してそのまま Amazon Forecast で利用できるのも、大きな利点でした」

エンジニアやデータサイエンティストではなくても簡単に扱える

Amazon Forecast による演習回数予測では、P10、P50、P90(10%、50%、90%)という3つの異なる分位数で確率的予測が行われます。「Aidemy」の場合は、予測を大きく上回る演習回数になるとサービスが正常動作しなくなる可能性があるため、P90を採用しました。「そのようなリスクがない場合は、P50やP10を採用すると良い」と竹原氏は解説します。

「利用してわかった、Amazon Forecast の利点を2つご説明します。

1つ目は、非常に容易に試すことができる点です。CSV ファイルを用意するだけで、簡単に予測モデルが構築できます。おそらく、エンジニアやデータサイエンティストではなくても扱えるのではないでしょうか。また、サービスの利用料金も比較的安価です。

2つ目は、AWS の他のサービスとの連携がしやすいことです。Boto3(AWS SDK for Python)にも対応しているため、Python を用いて多様なシステム連携が可能になっています」

今後の目標として「講座の売り上げなど演習回数以外の予測にも Amazon Forecast を導入したい」「Related data として演習回数予測に関連するその他の系列データを活用したい」と竹原氏は解説し、セッションを終了しました。

「Amazon Personalize と KARTE の連携事例」株式会社プレイド テックリード 物井 達也 氏

資料ダウンロードはこちら>>

株式会社プレイドでは、「CX プラットフォーム『KARTE』の導入企業に、Amazon Personalize を併用していただく」という施策を行っています。その理由や連携によって生まれる相乗効果について、テックリードの物井 達也 氏が解説しました。

レコメンデーションの施策は各企業のニーズが高い

CX プラットフォーム「KARTE」は、Web サイトやスマートフォンアプリの顧客行動や経験、感情の変化をリアルタイムに解析・可視化し、ユーザー1人ひとりに合わせた顧客体験の創出をサポートするサービスです。

「KARTE」ではさまざまなアクションをユーザーに届けることができますが、「特にレコメンデーションの施策は各企業のニーズが高い」といいます。例えば EC サイトにおいて「商品をカートに追加したタイミングで関連商品を表示し、追加の購入を促す」といった施策はよく行われるのです。

レコメンド施策用のテンプレートは「KARTE」に数多く用意されているものの「どんな商品をユーザーにレコメンドすべきか」は、サービスごとに異なります。だからこそ、レコメンデーション内容を最適化する難易度は高いのです。

そこで同社では、Amazon Personalize との連携を行うことで、「KARTE」の導入企業が簡単にレコメンド施策を行えるような環境を整えました。

5つのステップで、データを Amazon Personalize に連携

「KARTE」では、以下の5つのステップで Amazon Personalize へのデータ連携とレコメンド機能の利用を行っています。

1. Interaction data と User data のバッチインポート

「KARTE」で収集・蓄積している Interaction data や User data を、Amazon S3 を経由して Amazon Personalize に連携します。

2. Item data のバッチインポート

「KARTE」で利用している Item data の一部を抽出し、Amazon S3 を経由して Amazon Personalize に連携します。

3. リアルタイムの Event Tracking

「KARTE」で収集しているリアルタイムのイベントデータを、サーバーサイドから Amazon Personalize に流しこみます。

4. レコメンドの取得

前述のデータ連携により、Amazon Personalize では情報の分析が行われ、レコメンドを返せる状態になっています。「KARTE」はユーザーからのイベントを受け取ると、それをフックに Amazon Personalize の API を呼び出し、レコメンド結果を表示します。

5. レコメンド施策のふり返り

「KARTE」では実施した施策の結果を管理画面上から確認できるため、「レコメンド A とレコメンド B を比較して、どちらがより効果的だったか」「レコメンド施策を行う場合と全く行わない場合、どれくらいの差が出るのか」などの A/B テストを実施可能になっています。

これらのデータ連携フローについて言及した後、物井 氏は「KARTE」導入サービスの1つであるネットショッピングサイト「LUXA」の事例について紹介。「KARTE」と Amazon Personalize との連携により、効果的なレコメンドを実現できていることを解説しました。

「いくつかのポイントを押さえれば、機械学習についての深い知識がなくても Amazon Personalize を使えます。非常に利便性の高いサービスだと感じました」

レコメンドや時系列予測を、気軽に実現してみては?

Amazon Forecast や Amazon Personalize を活用し、自社サービスにレコメンドや時系列予測を導入していた3社。各登壇者は口々に「とても簡単に、これらのマネージドサービスを利用できた」と話していたことが印象的でした。

本記事をご覧になって「自社サービスにもレコメンドや時系列予測を取り入れたい」と思われた方は、ぜひ気軽に Amazon Forecast や Amazon Personalize を試してみてください。

【関連情報】

Amazon Forecast プロダクトページ

Amazon Personalize プロダクトページ