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
広告配信の予測におけるデータの反映速度
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
tirvine
August 05, 2020
Business
2.7k
1
Share
広告配信の予測におけるデータの反映速度
tirvine
August 05, 2020
Other Decks in Business
See All in Business
【Progmat】Monthly-ST-Market-Report-2026-Mar.
progmat
0
150
爆速で組織になじみ “Work is Fun” を体現するIVRyのオンボーディング
itochan
1
300
フルカイテン株式会社 採用資料
fullkaiten
0
84k
Nemawashi, in Practice ~透明性?Fun?現実はそんな簡単じゃない!〜 / Nemawashi, in Practice
piyonakajima
0
530
AIツール入れたのに、 なぜ意思決定は遅いまま?
unson
0
110
株式会社IDOM_FACT BOOK 2026
idompr
0
7.1k
美容家電・ビューティーEC(ボディケアデバイス)
contentmetrics
0
110
データ分析をはじめよう/lets_start_data_analysis
florets1
2
900
子育てとキャリアのビルディングブロック
news_it_enj
2
100
その仕事、 ブルシット・ジョブじゃない?
szkm555
0
1k
アジャイル原則を「使える言葉」にする / Making the Agile Principles Usable
fkino
5
920
2000年前の「心の整理術」で、ふりかえり後の1アクションを決める!〜ストア哲学で、チームをもっと軽やかに〜
doiko123
0
470
Featured
See All Featured
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
310
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.2k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.6k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
130
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
199
73k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.2k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
350
Context Engineering - Making Every Token Count
addyosmani
9
810
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.8k
The Pragmatic Product Professional
lauravandoore
37
7.2k
Transcript
広告配信の予測における データの反映速度 Tristan Irvine 2020/08/05
自己紹介 名前: Tristan 所属: 株式会社サイバーエージェント 秋葉原ラボ AmebaDSP 学士: 物理学 最近の病気:
脳震盪 格好いい〜
SSP DSPはどういうこと? 広告 AmebaDSP オークション クリック 入稿・配信設定 広告配信 課金! 広告主
入札額 広告集めて、あるリクエストに理想な広告を決めて、SSPに入札するシステムです。
入札額 入札額を決めるために、CPMを知る必要です! = 売上 / インプレッション ~ 広告の価値 CTR, CVRは広告を配信しないと分からない!
過去データから推定する必要です。 機械学習使おう! CPM = CTR x CVR x 目標CPA x 1,000 予測 予測 CTR = クリック率 CVR = CV率
AD サーバー メディア 学習 予測 imp, click, cv 予測CTR, 予測CVR
広告配信 学習結果 機械学習による予測 フィードバックループ 1. 配信 2. 学習 3. 予測値に反映する 4. 予測精度が上がる 5. もっと配信できる
精度悪ければどうなる? 予測CTR高すぎる -> 赤字!! 予測CVR高すぎる -> 広告主離脱!! 予測CTR, CVR低すぎる ->
勝率低い :( 精度高く予測しましょう
どの頻度で予測フィードバックしよう? 高い頻度! • 精度悪くなったら早くモデ ルが調整される • 新しい広告・枠を早く予測 結果に反映できる 低い頻度! •
学習時間が長ければもっ と複雑・精度高いモデル を使える • 運用・実装しやすい 弊社の場合はできるだけ高い頻度でモデルを更新している - CTR予測: 15分間隔 - CVR予測: 1時間間隔
更新頻度が遅すぎる例1:広告主AのCTR
CTR予測失敗で赤字になった! 粗利 軸見ないで、 情報漏洩だよ 赤字!! ある朝、急に大きく赤字になっちゃった。CTR予測急に精度悪化した?
赤字の調査の結果 ある広告主は全部の赤字を起こした 広告主Aの粗利 0円 闇 全部の赤字はある広 告主である15分期間で 発生した(11:30 - 11:45)
興味深い。。
更新頻度遅すぎる!! 広告主Aの粗利 0円 赤字 X - モデル更新時 • 11:30にモデルが更新さ れた
• 広告主Aはある枠に配 信したらCTR非常に高 いって思われた • 11:30 - 11:45にその条 件で配信した • CTRは高くなかった。赤 字になった。 • 11:45にこの新規情報は モデルに反映されて、赤 字が抑えれた
更新頻度が遅すぎる例2:広告主BのCVR
CVR予測失敗で広告主怒った! ある朝、広告主Bはのんびりに朝ごはんを食いながら 急に大きく課金された! 広告主Bの課 金額
どうなった?なぜCVR予測のせい? 8時前に合計この広告主3個クリックしかなかった。07:09にCVが発生した。それ上に CVRが33%だって思われて、予測CVR / 入札額大きく上がりました。 実にその後一個もCV出なかった。最初の一個は非常に運良かっただけです。8:15は全 部予測CVR >> CVRの暴発だった。 予測CVR
CVが発 生した
どうする? • 更新頻度を上げる ◦ 15分よりも短い間隔で更新する ◦ でも限界はある。あるリクエストがクリックされるかどうかの判断するた めに5分間が必要です • 組成に直近の傾向データを考慮する
◦ 広告の直近5分間のCTRなどを組成として追加 ◦ モデル自体が更新されなくても、直近CTRの組成が変わるので予測 値も変わる
移動平均システム 計算したい:直近5分間のCTRの移動平均 あるいは:click数の移動平均 / imp数の移動平均 移動窓
計算方法 普段の移動窓の移動平均の計算が重い。 - 過去impデータとtimestampを保存しないと - いつでも計算すると各timestampは5分期間に入っている かを確認する -> ストリーミングで移動平均をしよう
ストリーミング移動平均 ~10秒ごとにデータを更新する 既存の移動平均値をみて、直近10秒間で発生したimp数で更新する imp5m - 5分間のimpression数移動平均 30 - 5分間に入る10秒間隔数
アーキテクチャー impressionログ redis 移動平均更新機 10秒間ごとの カウンター API 機械学習 技術: golang
Apache Flink kinesis stream
成果 この発表までにリリース間に合わなかった :( 今度聞いてください!
まとめ • 広告配信に予測精度が大事です! • 予測モデル更新の間に赤字・暴発の可能性がある • できるだけ速く配信データを予測結果に反映すべき • モデル自体を十分速く更新するのは難しい。代わりに 組成に直近の情報を入れるのを考えられる