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
5.2k
AWS Personalizeを活用した レコメンドシステム構築事例 / aws personalize recsys
pigooosuke
June 11, 2020
Tweet
Share
Other Decks in Technology
See All in Technology
ガチな登山用デバイスからこんにちは
halka
1
230
MCPで変わる Amebaデザインシステム「Spindle」の開発
spindle
PRO
3
3.1k
企業の生成AIガバナンスにおけるエージェントとセキュリティ
lycorptech_jp
PRO
2
120
DevIO2025_継続的なサービス開発のための技術的意思決定のポイント / how-to-tech-decision-makaing-devio2025
nologyance
1
330
BPaaSにおける人と協働する前提のAIエージェント-AWS登壇資料
kentarofujii
0
130
Codeful Serverless / 一人運用でもやり抜く力
_kensh
7
350
Platform開発が先行する Platform Engineeringの違和感
kintotechdev
3
510
Bye-Bye Query Spaghetti: Write Queries You'll Actually Understand Using Pipelined SQL Syntax
tobiaslampertlotum
0
150
【初心者向け】ローカルLLMの色々な動かし方まとめ
aratako
7
3.3k
Kiroと学ぶコンテキストエンジニアリング
oikon48
6
9.6k
LLMを搭載したプロダクトの品質保証の模索と学び
qa
0
980
Autonomous Database - Dedicated 技術詳細 / adb-d_technical_detail_jp
oracle4engineer
PRO
4
10k
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Context Engineering - Making Every Token Count
addyosmani
1
17
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.5k
We Have a Design System, Now What?
morganepeng
53
7.8k
Mobile First: as difficult as doing things right
swwweet
224
9.9k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Into the Great Unknown - MozCon
thekraken
40
2k
Speed Design
sergeychernyshev
32
1.1k
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. ご清聴ありがとうございました