AlgoliaのPersonalizationについて

こちらは Algolia Advent Calendar 2020 の 12月6日の記事になります。パーソナライズされたSearch and Discovery機能をご所望の方は是非ご一読くださいませ。


Master Class: using Personalization with Algolia

12月3日に、AlgoliaのMatthew FoyleとEunice Leeによる、AlgoliaのPersonalizationに関するWebinarが行われました。

英語での視聴は 👉 https://resources.algolia.com/personalization/webinar-masterclasspersonalization-dg

このブログ記事では、こちらのセッションの内容を日本語で解説していきたいと思います。

よく耳にする既存の課題

  • お客さまはそれぞれ異なるものの、全員を同様に扱っている
  • 既存のソリューションがブラックボックスで、そのアルゴリズムを当てにするしか無い

このWebinarの中でAccentureのStalking is Not Personalizationというビデオが再生されるのですが、私の方ではそのビデオを探し当てられませんでしたが↓この辺は見てても面白いですね。笑

Profiling Is Not Personalization | Accenture
Chatbots Are Not Personalization | Accenture

ここで語られているのは、店員さんがお客さんのデータを集めて次の行動を予測するというものですが、例えば、お客さんは友達のプレゼントを探しているとか、そういったコンテキストが分からないとレコメンドするものも分からないですよね、と。

何が言いたいかというと、様々なパーソナライズやレコメンドを行うエンジンは、お客さんのプロファイルを元にコンテンツを表示しようとするけれども、実際のお客さんの行動に焦点を当てていないケースが多いのだそうですが、お客さんが直近でどのような操作をしたかといったことは重要ですよね、と。

お客さまごとにページのレイアウトやデザインを変えたり、オーバーレイや通知を使ってターゲティングしたり、実際にみたコンテンツに関連するようなものをレコメンドしたり。ただ、これをやり過ぎるのもあんまりよくないかもしれません、と。例えば、先週はxxだったけど、今週はxxみたいなことが起こり得る。

そこでシークレット・ウェポンとして検索ボックスですよ、と。なぜならユーザーが自ら今探しているものを入力しているわけなので。

ということで、Algoliaにおいては TextualなRelevance / Business Metrics / Personalization Signals をミックスする形で明示的インテントと暗黙的なインテントの両方をカバーします。

Algoliaのパーソナライゼーション

『スポーツ』と入力された時に、映画ファンとスニーカー中毒者で表示するコンテンツをより趣向に合う形に。更に★が多いものから順番に並ぶようにして、例えば映画ファンであっても映画よりドキュメンタリーを上に表示させるといった細かい調整が可能。

一人ひとりのユーザーのプロファイルをAlgoliaが構築。例えばMatthewが好きな著者、ブランド、カテゴリ、、といった具合に。この結果をどのように活かしていくかの調整が可能で、プロダクションに投入する前にシミュレーターを使って表示を確認することができる。

年齢や、住む場所や、趣向や、あらゆることは変化していく。変化を掴むことが大事。

AlgoliaのPersonalizationの実装

パーソナライゼーションの実装の3つのステップ。1. ユーザーの行動イベントをAlgoliaに送ってユーザープロファイルを構築する。2. パーソナライゼーションの戦略を設定する。3. パーソナライズが検索結果に有効になるようにする。

Algoliaへのユーザーの行動イベントの送信

AlgoliaのDocumentの Send Personalization Events を参照ください。

パーソナライズの設定

  1. まず最初にPersonalizationの全体的なインパクトの設定(0にするとoffになり100が最大)
  2. 次にイベントごとの重み付け。例えば商品のコンバージョンは重要だけどWishlistへの追加はそうでもない等
  3. そしてFacetごとの重み付け。例えば本屋さんだったら著者が重要でブランドはそうでもない等

実際にイベントがトラックされて構築されたユーザープロファイルをAlgolia Dashboard上で確認

シミュレーターを活用してパラメーターを微調整する

シミュレーターでPersonalizationを導入した時にどの程度のインパクトがあるか確認。例えば sh と入力した時にSherlock Hoimesがパーソナライズされて沢山ヒットする。

Personalizationのインパクトを低くすると結果が変わってくる。実際にプロダクションに導入する前に微調整が可能。

Q&A

1. CCPA / GDPR について

AlgoliaはCCPAとGDPR両方に準拠しているのでご安心ください。AlgoliaのPersonalizationがActivateされているのは検索するときだけですし、オプトアウトされた場合はパーソナライズされません。

2. Personalizationの料金について

Algolia Pricingのページをご覧いただきつつ、ご質問等ある場合はAlgoliaのAccount Executiveまでお気軽にご連絡くださいませ。

3. Algolia SearchとPersonalizationは別プロダクト?

PersonalizationはAlgoliaの中にある機能ですので、Premiumプランをご契約いただけた際には、Dashboardからアクセスできるようになりますし、他の別の手続き等は必要ございません。

4. ユーザートークンにリアルな名前を使う必要があるの?

必要ありません。ユーザートークンはユーザーを一意にするためだけのIdentifierですので、Anonymousな形でAlgoliaにイベントを送信していただくのをオススメしています。

5. Personalizationのフレッシュネスについて

AlgoliaのPersonalizationは最大90日間のデータを保持しますが、直近のデータがより重要となるようにデザインされています。

6. Personalization導入したものとしていないものでABテストできますか?

はい、もちろん可能です。AlgoliaにおいてAB Testingはビルトインな機能ですので、Personalizationの効果を計測するためにも使えますし、それ以外のランキングの設定の調整等にもお使いいただけます。

7. PersonalizationがDashboardのメニューに出てきませんが?

ご契約によって変わってきますので、お近くのAlgoliaの人間までお問い合わせくださいませ。

8. Personalizationは検索のパフォーマンスに影響しますか?

ほんの少しだけ影響がある場合があります。但し、ユーザーのプロファイルのデータが巨大でクラスタのディスクを圧迫するようなことがあればというようなもので、ほとんどの場合は検索のパフォーマンスに影響が出ることはありません。

9. 過去の状態にデータを戻すことは出来ますか?

数日間の過去データに戻すことは可能かもしれませんが、もし、どこかの状態を維持したいと考えるのであれば、イベントの送信を止めていただくのがよろしいかもしれません。その状態でどのようにパーソナライズのストラテジーを組み直すか、ABテストをどうするか、といったところをAlgoliaの人間とご相談してみてください。

コメント

タイトルとURLをコピーしました