Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AWS Personalizeを活用した レコメンドシステム構築事例 / aws person...
Search
pigooosuke
June 11, 2020
Technology
1
4.7k
AWS Personalizeを活用した レコメンドシステム構築事例 / aws personalize recsys
pigooosuke
June 11, 2020
Tweet
Share
Other Decks in Technology
See All in Technology
JAWS UG 青森(弘前)クラウド・AWS入門
hiragahh
0
100
『Firebase Dynamic Links終了に備える』 FlutterアプリでのAdjust導入とDeeplink最適化
techiro
0
230
【LT】ソフトウェア産業は進化しているのか? #Agilejapan
takabow
0
120
Introduction to Works of ML Engineer in LY Corporation
lycorp_recruit_jp
0
160
A Tour of Anti-patterns for Functional Programming
guvalif
0
1k
Taming you application's environments
salaboy
0
210
OCI Vault 概要
oracle4engineer
PRO
0
9.8k
アジャイルチームがらしさを発揮するための目標づくり / Making the goal and enabling the team
kakehashi
4
310
SRE×AIOpsを始めよう!GuardDutyによるお手軽脅威検出
amixedcolor
1
240
LLMの気持ちになってRAGのことを考えてみよう
john_smith
0
120
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
3
670
VideoMamba: State Space Model for Efficient Video Understanding
chou500
0
260
Featured
See All Featured
Teambox: Starting and Learning
jrom
133
8.8k
Unsuck your backbone
ammeep
668
57k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
4 Signs Your Business is Dying
shpigford
180
21k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
0
140
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Raft: Consensus for Rubyists
vanstee
136
6.6k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
380
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
The Cost Of JavaScript in 2023
addyosmani
45
6.8k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
Building Better People: How to give real-time feedback that sticks.
wjessup
364
19k
Transcript
© - BASE, Inc. AWS Personalizeを活⽤した レコメンドシステム構築事例
© - BASE, Inc. ⾃⼰紹介 齋藤 勇介 BASE株式会社 DataStrategy Team
‧データ分析、機械学習を活⽤した開発 ‧データ集計から予測モデル作成、データ配信まで何でも ‧過去にBASEで取り組んだ事例 ‧特集コンテンツの⾃動⽣成とレコメンドサービスの取り組み ‧機械学習にアノテーションを活⽤して、商品検索の関連キーワード機能を作る BASE開発チームブログ (https://devblog.thebase.in/)
© - BASE, Inc. アジェンダ . 「BASE」紹介 . 「BASE」のレコメンドシステム紹介 .
Amazon Personalizeの導⼊ . 効果検証 . 運⽤上のTips . まとめ
© - BASE, Inc. 「BASE」紹介
© - BASE, Inc. ネットショップ作成サービス「BASE」 出店ショップ数 (個⼈‧法⼈‧⾏政を含む) 100万ショップ以上 BASEかんたん決済利⽤料 3.6%+40円
サービス利⽤料 % コンセプト 「誰でも簡単に使えるネットショップ作成サービス」 初期費⽤‧⽉額費⽤ 0円 ショップオーナーのサポート機能が充実! 個⼈でも決済機能をかんたん導⼊。 審査もスピーディー! クレジットカード 銀⾏振込 コンビニ決済‧Pay-easy 後払い (BASE Apps) キャリア決済
© - BASE, Inc. 「BASE」のレコメンドシステム紹介
© - BASE, Inc. ショッピングアプリ「BASE」 ユーザーの嗜好に合うコンテンツをレコメンド 例えばアプリのホーム画⾯では、 - 今⽇のおすすめ商品 -
今⽇のおすすめショップ - テーマ別特集 にて稼働中
© - BASE, Inc. ショッピングアプリ「BASE」 ユーザーの嗜好に合うコンテンツをレコメンド 例えばアプリのホーム画⾯では、 - 今⽇のおすすめ商品 -
今⽇のおすすめショップ - テーマ別特集 にて稼働中 今⽇の話はこのエリア
© - BASE, Inc. ECS API Proxy ECS ALB Internal
ALB ECS 計算batch レコメンド配信基盤 API A.協調フィルタリング ECS ECS B.Factorization Machines ECS ECS C. ⼈気順ランキング
© - BASE, Inc. レコメンド配信基盤 ‧アルゴリズム - 協調フィルタリング - Factorization
Machines - ⼈気順ランキング ‧予測‧計算 - リアルタイムでの予測はしておらず、バッチ計算結果を表⽰ ‧配信ルール - 前段のAPI Proxyで制御
© - BASE, Inc. アルゴリズム運⽤ タイプ メインアルゴリズム (予測可能ユーザー) サブアルゴリズム (予測不可ユーザー)
A 協調フィルタリング ⼈気順ランキング B Factorization Machines ⼈気順ランキング ‧2種類のアルゴリズムを並⾏運⽤ ‧学習に含まれていないor新規ユーザーには、各属性に合った⼈気商品を提⽰ ‧複数のアルゴリズムを運⽤することで、推薦結果によるバイアスを受けた ⾏動ログで学習し続けてしまう事象を軽減
© - BASE, Inc. ⼀応の運⽤は回っていたが、 いくつか懸念点が、、、
© - BASE, Inc. 懸念点 メンテナンス性 アルゴリズムの特性 モデル精度
© - BASE, Inc. アルゴリズムの特性 ‧課題 協調フィルタリング、Factorization Machinesともに、 商品全体に対するユーザーの嗜好性を推定するもので、 モデル学習時に時系列性を取り⼊れるのが難しい
→ 直前までの⾏動を考慮したレコメンドが出来ない ‧どうする? - ユーザーのセッションベースのレコメンドモデルを作る? - 学習にGPU必須。環境作りなども少し億劫 - 新規モデルの開発 - その改善のリターンは⾒込める?
© - BASE, Inc. メンテナンス性 ‧課題 所々で独⾃実装が⼊っていて、担当者がいなくなった時に メンテナンスや緊急対応が難しそう ‧どうする? -
ML Opsあるある。どうする?
© - BASE, Inc. モデル精度 ‧課題 - 既存の運⽤モデルはベストな選択なのか? - より良いモデルは存在するのでは?
- 学習パラメーターもある程度⾒直す必要があるが、放置状態 ‧どうする? - 新規モデルの開発 - その改善のリターンは⾒込める? - 学習パラメーターの検証 - やりたいけどやっていない
© - BASE, Inc. Amazon Personalizeの導⼊
© - BASE, Inc. 2019年6⽉ Amazon Personalizeが 東京リージョンで利⽤可能に
© - BASE, Inc. 2019年10⽉ 「BASE」で Amazon Personalizeの運⽤開始
© - BASE, Inc. 課題点解消 ‧アルゴリズムの特性 「HRNN」という定義済みアルゴリズムを使えば、 セッションベースの学習が可能 ‧メンテナンス性 最低限、csvを3file⽤意すれば⼤丈夫
運⽤開始から8ヶ⽉経過するも、コード修正は2回だけ 障害も発⽣せず ‧モデル精度 最適パラメーターの探索も設定次第で簡単に可能
© - BASE, Inc. ⾊々と理由を挙げましたが、 どれぐらいの精度が出るものか検証してみたい という動機が⼀番⼤きかったです
© - BASE, Inc. ショッピングアプリ「BASE」 「今⽇のおすすめ商品」枠 にて、検証開始
© - BASE, Inc. ECS API Proxy ECS ALB Internal
ALB ECS レコメンド配信基盤 既存のアルゴリズム Lambda Personalize ECS Personalize DynamoDB データ投⼊ NG商品など の情報 出⼒調整 レコメンド取得
© - BASE, Inc. 効果検証
© - BASE, Inc. 計測指標 ͬͱݟΔը໘ ΞϓϦϗʔϜը໘ ৄࡉը໘ 1. 閲覧率
2. お気に⼊り率 3. カート追加率
© - BASE, Inc. 運⽤実績 閲覧率 お気に⼊り率 カート追加率 ‧Personalize(Per)は、カート追加率で最も優れた予測を実現 ‧閲覧率では、既存のモデルに勝てないこともある
- アルゴリズムの特性、カスタマイズ性に起因 ‧回遊性を重視するのか、売上を重視するのかでより良い選択を
© - BASE, Inc. 運⽤上のTips
© - BASE, Inc. 学習パラメーター 最重要! 必要な時だけ、ハイパーパラメーターチューニングする Perform HPO /
Perform AutoMLというパラメーターの仕様 をよく理解して、毎回チューニングしないようにする ちなみに、 運⽤中のデータサイズでチューニングすると、 チューニングなし学習の約15回分の請求がきます
© - BASE, Inc. 未学習ユーザーへの予測 学習時に含まれていないユーザーに⼈気順のitemが出る 新規ユーザーや⻑期⾮ログインユーザーに対して、 共通のレコメンドがされ、 Personalize内での調整が今の所できない 別途取得したユーザー属性元にレコメンドしたい場合は、
追加で拡張する必要がある
© - BASE, Inc. まとめ
© - BASE, Inc. Amazon Personalizeを使ってみて - ⼿間を掛けずにレコメンドサービスを開発できるツール - メンテナンスコストも削減可能
- ハイパーパラメータチューニングも容易
© - BASE, Inc. ご清聴ありがとうございました