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
Ken Wagatsuma
February 10, 2018
Technology
1
1k
広告配信サーバーと広告配信比率最適化問題
Lightening Talk at
https://techconf.cookpad.com/2018/
Ken Wagatsuma
February 10, 2018
Tweet
Share
More Decks by Ken Wagatsuma
See All by Ken Wagatsuma
Pregel Graph Compute Engines - Supersteps Exampls
kenju
0
230
Kafka on Kubernetes with Strimzi
kenju
0
180
AWS DynamoDB Accelerator (DAX) 101
kenju
2
7.3k
Moden browser introduction
kenju
1
440
Cookpad summer internship 2019 - API
kenju
0
10k
Introduction to Design Patterns
kenju
0
110
GraphQL Asia 2019 "Re-architecture of a decade-old app with BFF/GraphQL"
kenju
0
9.1k
Introduction to TypeScript
kenju
0
750
Introduction to Programmatic Ad
kenju
0
270
Other Decks in Technology
See All in Technology
小さく、早く、可能性を多産する。生成AIプロジェクト / prAIrie-dog
visional_engineering_and_design
0
150
なぜ あなたはそんなに re:Invent に行くのか?
miu_crescent
PRO
0
230
松尾研LLM講座2025 応用編Day3「軽量化」 講義資料
aratako
13
4.6k
AWS re:Invent 2025~初参加の成果と学び~
kubomasataka
1
200
Snowflake導入から1年、LayerXのデータ活用の現在 / One Year into Snowflake: How LayerX Uses Data Today
civitaspo
0
2.6k
Redshift認可、アップデートでどう変わった?
handy
1
110
Building Serverless AI Memory with Mastra × AWS
vvatanabe
1
760
Amazon Bedrock Knowledge Bases × メタデータ活用で実現する検証可能な RAG 設計
tomoaki25
6
2.6k
Agent Skillsがハーネスの垣根を超える日
gotalab555
6
4.7k
[Data & AI Summit '25 Fall] AIでデータ活用を進化させる!Google Cloudで作るデータ活用の未来
kirimaru
0
4.1k
Agentic AIが変革するAWSの開発・運用・セキュリティ ~Frontier Agentsを試してみた~ / Agentic AI transforms AWS development, operations, and security I tried Frontier Agents
yuj1osm
0
110
AgentCoreとStrandsで社内d払いナレッジボットを作った話
motojimayu
1
1.1k
Featured
See All Featured
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
140
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.2k
So, you think you're a good person
axbom
PRO
0
1.9k
Building the Perfect Custom Keyboard
takai
1
660
Darren the Foodie - Storyboard
khoart
PRO
0
2k
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
The World Runs on Bad Software
bkeepers
PRO
72
12k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
170
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
110
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
Transcript
ࠂ৴αʔόʔͱ ࠂ৴ൺ࠷దԽ ϝσΟΞϓϩμΫτ։ൃ෦ ,FOKV8BHBUTVNB
8IP Kenju Wagatsuma (github.com/kenju) • ϝσΟΞϓϩμΫτ։ൃ෦ • αʔόʔαΠυΤϯδχΞ • ͖ͳͷɿRuby,
ίʔώʔ, ϩδΧϧΫοΩϯά • ݏ͍ͳͷɿ1ϲ݄લʹॻ͍ͨࣗͷίʔυ
ϝσΟΞϓϩμΫτ։ൃ෦ ୲αʔϏεɿ ࠂ৴, storeTV, cookpadTV, OEM, ͦͷଞଟ ࢀߟɿ ։ൃऀϒϩάʰΫοΫύουͷࠂΤϯδχΞԿΛ ͍ͬͯΔͷ͔ʱ
ຊ͍ͨ͜͠ͱɻ ϝσΟΞϓϩμΫτ։ൃ෦Ͱ ͲΜͳϓϩδΣΫτΛ͍ͬͯΔͷ͔ʁ
νʔϜʹೖͬͯϲ݄ޙʹऔΓΜͩϓϩδΣΫτ ΫοΫύουͷࠂ৴αʔόʔʹ͓͚Δ ࠂ৴ൺͷࣗಈ࠷దԽϓϩδΣΫτɻ
ݫ͍͠εέδϡʔϧ • ϝσΟΞϓϩμΫτ։ൃ෦δϣΠϯ - 10݄த० • ͓खฒΈഈݟϓϩδΣΫτ - ~11݄த० •
৴࠷దԽτϥΠΞϧ - 12/4(݄) 10:00 - 12/11(݄) 10:00 ???
ղܾ͍ͨ͠՝ • ʑͷखӡ༻ʹΑΔνϡʔχϯά͕ඞཁ - => ࡞ۀ͕ൃੜ • ӡ༻ऀͷܦݧͱצʹཔͬͨνϡʔχϯά - =>
ҟಈ࣌ಋೖ࣌ͷίετ͕ߴա͗ • ࠷దͳࡏݿൺΛࣗಈͰௐͰ͖ͳ͍ - => ࠂܝग़ͷػձଛࣦ
Ͳ͏ղܾ͢Δ͔ • ࡏݿׂྔͱ࣮͔Β࠷దͳ৴ൺͷิ ਖ਼Λߦ͏ - ΠϯϓϨογϣϯϕʔε͔ΒΫϦοΫϕʔεͷ৴ - ΫϦοΫ༧ଌΛར༻ͨ͠ൺͷࣗಈ࠷దԽ - ϦΞϧλΠϜूܭσʔλΛ׆༻ͨ͠ΞʔΩςΫνϟ
‣ Lambda Architecture ʹ͓͚Δ Speed Layer
l4QFFE-BZFSzPO"84 • Kinesis, DynamoDB, Lambda Λ׆༻ͨ͠ Speed Layer (from Lambda
Architecture) • طଘͷετϦʔϜʹɺΫ ϦοΫܭࢉϨΠϠʔΛ Ճ͚ͨͩ͠ = ઌਓͷݞ ʹΔ
ৄ͍ͪ͜͠Β ࢀߟɿ ʰCookpad Tech Kitchen #9 ʙ1ߦͷϩάͷ͜͏ ଆʙ Λ։࠵͠·ͨ͠ʂʱ
ΫϦοΫ༧ଌ͍͠ʂʂʂ • ޯϒʔεςΟϯάܾఆʢGBDTʣΛ༻͍ͨࠂ͝ͱͷΫϦοΫ༧ଌ - Facebook https://code.facebook.com/posts/975025089299409/evaluating-boosted-decision-trees-for-billions-of-users - SmartNews https://speakerdeck.com/komiya_atsushi/gbdt-niyorukuritukulu-yu-ce-wogao-su-hua-sitai-number-oresikanaito-vol-dot-4 •
ଟόϯσΟοτͷҰछͰ͋ΔMortal Multi-Armed BanditsͷԠ༻ - Voyage Group http://techlog.voyagegroup.com/entry/2015/04/03/114547ɹ • Neural Networkͷ૯߹֨ಆٕʢ͕͢͞Googleʣ - Google http://www.eecs.tufts.edu/~dsculley/papers/ad-click-prediction.pdfɹ • ৴པͱ࣮ͷϩδεςΟοΫճؼʢୠܻ͕͠ԯϨϕϧʣ - Criteo http://olivier.chapelle.cc/pub/ngdstone.pdfɹ
ؒʹ߹Θͳ͍ʂ • τϥΠΞϧͳΜͱͯ͠ʹ࣮ࢪ͍ͨ͠ - վળͷαΠΫϧΛճͨ͢Ί • QCDͰݴ͏ͳΒɺDelivery, QualityΛ༏ઌ - ͳΜͱͯؒ͠ʹ߹Θ͍ͤͨʂ
• ࠷ॳ͔Βᘳͳਫ਼༧ଌ·ͣෆՄೳ - ػցֶशͰղܾ͠ͳͯ͘Α͍͔·ͣߟ͑Δ - ࢀߟɿʰࣄͰ͡ΊΔػցֶशʱ
ҠಈฏۉԞ͕ਂ͍ • SMA (Simple Moving Average) = ۙ N ݸͷॏΈ͚ͷͳ͍୯७ͳฏۉ
• WMA (Weighted Moving Average) = ΑΓ࠷ۙͷσʔλʹॏΈ͚ • EWMA (Exponentially Weighted Moving Average) = ࢦؔతʹॏΈ͚ • MMA (Modified Moving Average) = EWMAͷѥछ ଞʹTriangle MA, Sine Weighted MA, KZ Filtering,...etc ࢀߟɿhttps://en.wikipedia.org/wiki/Moving_average#Simple_moving_averag
աڈϩάΛݩʹΞϧΰϦζϜͷਫ਼Λੳ • Jupyter Notebook / Python - ࢀߟɿ։ൃऀϒϩάʰRailsΤϯ δχΞʹཱͭJupyter Notebook
ͱiRubyʱ • ൺֱͨ͠ΞϧΰϦζϜ - Total Average - Cumulative Average - Simple Moving Average (3 Hours) - Simple Moving Average (6 Hours)
τϥΠΞϧ݁Ռ • ิਖ਼ͷϩδοΫʹ՝ ͕ݟ͔ͭͬͨ ͷɺτϥΠΞϧͱ͠ ͯޭ
ظతνϡʔχϯά • Speed Layer ͷ࠶ઃܭɾຏ͖ࠐΈ - ετϦʔϜॲཧʹԊͬͨσʔλͷྲྀΕ • ෛ࠴ =
ະୡ ΛՃຯͨ͠ϩδοΫ - ୈҰ࣍τϥΠΞϧΛ͍ͬͯͳ͔ͬͨΒݟ͑ͳ͔ͬͨ՝ • ҠಈฏۉΞϧΰϦζϜͷվળ - Batch LayerͰΦϑϥΠϯͰܭࢉ&࠷ਫ਼͕ྑ͍ͷΛબ - Gem࡞ͬͨ https://github.com/kenju/moving_avg-ruby
தظͰ͍͖ͬͯ • ΫϦοΫ༧ଌਫ਼ͷߋͳΔ্ˍ৽نࠂ։ൃ - ػցֶशϨΠϠʔͷຊ൪ಋೖ • Lambda Architectureͷຏ͖ࠐΈ - ࢀߟɿ։ൃऀϒϩάʰαʔόʔϨεͳόοΫΞοϓγεςϜ
Λ AWS SAM Λ༻͍ͯγϡοͱߏங͢Δʱ • ࠂ৴αʔόʔࣗମͷѹతվળ - ։ൃج൫ͷڥඋ - ύϑΥʔϚϯε࠷దԽɺϨΨγʔίʔυͷվળ
ຖͷྉཧΛָ͠Έʹ͢Δ 5IBOLZPV