2024.10.10
将来は卵1パックの価格が2倍に? 多くの日本人が知らない世界の新潮流、「動物福祉」とは
ZOZOTOWNにおけるRecommendations AI、AI Platformの事例紹介(全1記事)
リンクをコピー
記事をブックマーク
安田征弘氏(以下、安田):「ZOZOTOWNにおけるRecommendations AIの事例紹介」ということで、私、安田が発表いたします。よろしくお願いします。
本日は、自己紹介のあとにRecommendations AIについて、次にRecommendations AIの導入に必要なステップ、その次にZOZOTOWNにおける導入の内容という順でお話しいたします。お願いします。
自己紹介です。技術開発本部プラットフォーム部推薦基盤チームを担当している安田です。推薦基盤という名前ですが、推薦と広告とデータ集計基盤を担当しています。前職はインターネットテレビの会社でデータエンジニアをしていました。
Recommendations AIは、Googleが2019年発表した推薦システムです。ECに特化したマネージドサービスで、スケーラブルでパーソナライズができて、リアルタイム性があるのが特徴です。
推薦なので、商品情報とユーザー情報を元に動くのですが、Googleでは商品のことをプロダクトカタログと言います。そのプロダクトカタログの管理機能とユーザーイベントの収集機能が、インプットデータ管理として提供される機能です。
推薦の方式は選ぶことができます。カート追加後であるとかトップ面であるとか、商品詳細面であるとか、そういったものを選ぶことができます。KPI選択もできて、CTRを最適化するのか、それともCVRを最適化にするのかを選べます。バリエーション選択もできて、いろいろなカテゴリの商品をどのくらいで出すかを選択できます。
次にフィルタリング機能ですが、予測のタイミングで絞り込むことができます。モニタリング、エラーレポート、アラートの機能がありまして、例えばログが突然発火しなくなったというような挙動に対してもアラートを設定できます。その推薦結果に対する確認ツールも用意されていて、プレビュー機能で見ることができます。
それから実際のクリックログとかを正しく送れば、CTR、CVRでレポーティングしてくれる機能もあります。課金の仕方はコール数課金です。予測のタイミングでコールする課金です。
次に導入のステップですが、まずGoogleのアカウントマネージャーに問い合わせが必要です。デフォルトだとクォータがあまりにも足りないのでプロダクションで利用するには対応不可能です。次に任意なんですが、Recommendations AIパートナーを紹介してもらい、そのパートナーと一緒に初期設計を行います。ZOZOに関しては、Brain Pad様と一緒に初期設計をしました。
そのあとは開発をしてリリースするというステップになります。
ではさっそくZOZOTOWNにおける設計を説明します。
対象枠は、商品詳細面の下にある「おすすめアイテム」という枠としました。図にある通り、見ているページの商品説明の下にあります。この推薦方式になるのでOthers you may likeが選ばれます。
最初にやるべきことは、商品情報の更新です。ZOZOに関しては商品の差分更新データをPub/Subにパブリッシュしまして、そこからDataflow StreamingでRecommendations AIに取り込んでいます。商品の追加と更新系はDataflowで、1,000件ずつか1分経過したら発火するインポート処理で取り込みをしています。
初期はAPIで取り込むことができるのですが、APIのPOSTで取り込むとかなり遅かったので、インポートで取り込むと、とても早いです。商品の在庫切れであるとか表示オフにしたものはすぐに反映したいので、そのままDataflowでPATCHリクエストして更新しています。事前に商品が登録されたもののみユーザーログとつながるので、まずは商品の取り込みを行う必要があります。
次にユーザーイベントの収集です。非常にシンプルでして、Tag ManagerでRecommendations AIに飛ばしています。JSONを飛ばすのですが、ユーザーイベントの主要なものとしてはここに記載している商品詳細の閲覧のアクションと、お気に入り追加、カート追加、購入のログをとっています。
右に書いている通り、home-page-viewであるとかいろいろなアクションがあるんですが、送れるだけ送ったほうがより精度が出ると聞いています。
商品とユーザーイベントを登録したので、モデルを生成できます。モデルを生成するタイミングで必要な手順は、最適化のゴールとしてCTRなのかCVRなのかを選択して、カテゴリの多様性の度合いを決め、同確率時に料金が高いほうを優先するようなソートをするかしないかの選択して、最後にハイパーパラメータチューニングを3ヶ月おきに自動でやるのか、マニュアルチューニングのみにするかを選ぶ流れです。
モデルを生成するには条件がありまして、ユーザーのイベントがある程度以上ある必要があります。Others you may likeに関して言うと、過去90日以上において7日間以上の商品詳細面の閲覧ログがある、かつ商品当たりページビューの過去90日間平均が10以上である。これを両方満たすか、過去90日間において60日以上ログが入っているかのどちらかを満たすと、モデルの作成ボタンを押すことができます。
実際にそのあとは、1週間程度でモデルができあがります。
実際にプロダクション利用を行う手順です。
まずAPIキーを発行する必要があります。APIキーを発行したあとに、どういう枠で使うのかといったプレースメントを発行して、そのモデルとひもづけます。あとはそのプレースメントを指定して、見ている面の商品IDとユーザー情報とフィルタリング条件で予測リクエストを送ります。
すると推薦結果の商品ID一覧と推薦トークンが返却されます。ZOZOに関していうと、Bigtableに保存している商品情報を付与して、推薦APIとして実現しています。実際にその精度なんですが、まだリリースしていないのであれですが、なかなかよさそうな印象です。予測に関してはCTRの最適化とCVRの最適化を選べるんですが、両方のモデルを作成して両方選べるようにといいますか、両方作ってしまうのがいいとされています。
まとめです。非常にシンプルな開発でRecommendations AIを利用できます。多機能なのでいろいろとやってくれます。Google Cloud Day:DigitalでZOZOのCTOである今村が発表していましたが、近日リリース予定です。
最後にちょっと宣伝になってしまうんですが、推薦基盤チームの役割を説明させてください。大きく3つありまして、1つが株式会社ZOZOのビジネスサイドの達成したい目標に対して、どのように技術とビジネスをうまくつなぐかといったところのハブになるような役割です。
次に推薦分野に限った話ですが、これから何をやっていくのかというのを考えて進めていくというのがあります。Recommendations AIに関していうと、検証しておくべきという判断で進めることになりました。そして開発もします。
3つ目の役割は研究所と連携して、会社としてノウハウを蓄積していくべき課題に対しては体制化を推進することです。
以上です。
関連タグ:
2024.11.13
週3日働いて年収2,000万稼ぐ元印刷屋のおじさん 好きなことだけして楽に稼ぐ3つのパターン
2024.11.11
自分の「本質的な才能」が見つかる一番簡単な質問 他者から「すごい」と思われても意外と気づかないのが才能
2024.11.13
“退職者が出た時の会社の対応”を従業員は見ている 離職防止策の前に見つめ直したい、部下との向き合い方
2024.11.12
自分の人生にプラスに働く「イライラ」は才能 自分の強みや才能につながる“良いイライラ”を見分けるポイント
2023.03.21
民間宇宙開発で高まる「飛行機とロケットの衝突」の危機...どうやって回避する?
2024.11.11
気づいたら借金、倒産して身ぐるみを剥がされる経営者 起業に「立派な動機」を求められる恐ろしさ
2024.11.11
「退職代行」を使われた管理職の本音と葛藤 メディアで話題、利用者が右肩上がり…企業が置かれている現状とは
2024.11.18
20名の会社でGoogleの採用を真似するのはもったいない 人手不足の時代における「脱能力主義」のヒント
2024.11.12
先週まで元気だったのに、突然辞める「びっくり退職」 退職代行サービスの影響も?上司と部下の“すれ違い”が起きる原因
2024.11.14
よってたかってハイリスクのビジネスモデルに仕立て上げるステークホルダー 「社会的理由」が求められる時代の起業戦略