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
ネット広告配信サービスにおけるMLシステムの実装と運用
Search
Takashi Nishibayashi
July 13, 2018
Technology
8
4.9k
ネット広告配信サービスにおけるMLシステムの実装と運用
Machine Learning System on Online Advertising Platform.
Takashi Nishibayashi
July 13, 2018
Tweet
Share
More Decks by Takashi Nishibayashi
See All by Takashi Nishibayashi
論文紹介 Improving Medical Reasoning through Retrieval and Self-Reflection with Retrieval-Augmented Large Language Models
hagino3000
0
680
論文紹介 Audience Size Forecasting Fast and Smart Budget Planning for Media Buyers
hagino3000
0
220
論文紹介 Towards a Fair Marketplace: Counterfactual Evaluation of the trade-off between Relevance, Fairness & Satisfaction in Recommendation Systems
hagino3000
1
610
論文紹介 Budget Management Strategies in Repeated Auctions (公開版)
hagino3000
0
260
論文紹介 A Request-level Guaranteed Delivery Advertising Planning: Forecasting and Allocation
hagino3000
0
96
論文紹介 Online Experimentation with Surrogate Metrics Guidelines and a Case Study
hagino3000
0
240
論文紹介 Bidding Machine: Learning to Bid for Directly Optimizing Profits in Display Advertising
hagino3000
0
150
論文紹介 Balancing Relevance and Discovery to Inspire Customers in the IKEA App
hagino3000
0
710
不確実性と上手く付き合う意思決定の手法
hagino3000
18
15k
Other Decks in Technology
See All in Technology
深層学習と3Dキャプチャ・3Dモデル生成(土木学会応用力学委員会 応用数理・AIセミナー)
pfn
PRO
0
460
データ基盤におけるIaCの重要性とその運用
mtpooh
4
500
20250116_自部署内でAmazon Nova体験会をやってみた話
riz3f7
1
100
GeometryReaderやスクロールを用いた表現と紐解き方
fumiyasac0921
0
100
機械学習を「社会実装」するということ 2025年版 / Social Implementation of Machine Learning 2025 Version
moepy_stats
5
1k
Unsafe.BitCast のすゝめ。
nenonaninu
0
200
.NET 最新アップデート ~ AI とクラウド時代のアプリモダナイゼーション
chack411
0
200
re:Invent2024 KeynoteのAmazon Q Developer考察
yusukeshimizu
1
150
Evolving Architecture
rainerhahnekamp
3
250
I could be Wrong!! - Learning from Agile Experts
kawaguti
PRO
8
3.4k
あなたの知らないクラフトビールの世界
miura55
0
120
AWSマルチアカウント統制環境のすゝめ / 20250115 Mitsutoshi Matsuo
shift_evolve
0
110
Featured
See All Featured
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
19
2.3k
Site-Speed That Sticks
csswizardry
2
270
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.5k
Measuring & Analyzing Core Web Vitals
bluesmoon
5
210
BBQ
matthewcrist
85
9.4k
Building Applications with DynamoDB
mza
93
6.2k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
For a Future-Friendly Web
brad_frost
176
9.5k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Unsuck your backbone
ammeep
669
57k
Why Our Code Smells
bkeepers
PRO
335
57k
Transcript
ωοτࠂ৴αʔϏεʹ͓͚Δ .-γεςϜͷ࣮ͱӡ༻ 5BLBTIJ/JTIJCBZBTIJ .BDIJOF-FBSOJOH$BTVBM5BMLT
͓લͩΕΑ Name: Takashi Nishibayashi twitter.com/@hagino3000 Job: Software Engineer VOYAGE GROUPͰωοτࠂ৴αʔϏε࡞ͬͯ
·͢ɻओʹ৴ϩδοΫ͔Βσʔλੳج൫·Ͱɻ ࠷ۙͷڵຯϛΫϩܦࡁֶͱϝΧχζϜσβΠϯɻ
࠷ۙͷ׆ಈ ਓೳֶձࢽ Vol. 32 No. 4 (2017/07) ͷʮࠂͱ AI ಛूʯʹʮΞυωοτϫʔΫʹ͓͚Δࠂ৴ܭ
ըͷ࠷దԽʯ͕ܝࡌ͞Ε·ͨ͠ɻ ΦϥΠϦʔ͔ΒʮࣄͰ͡ΊΔػցֶशʯ͕ग़· ͨ͠ɻ @chezou, @tokorotenͱڞஶ ࢴ൛ɾిࢠॻ੶྆ํ͋Γ·͢
ࠓͷ w ༧ଌϞσϧͷ܇࿅ɾΛߦͳ͏όονॲཧ w 8FCαʔόʔͰͷਪ w ӡ༻ɾ༧ଌϞσϧͷੑೳࢹ w ༧ଌϞσϧͷΦϑϥΠϯධՁɾΦϯϥΠϯධՁ ՔಈதͷࠂΠϯϓϨογϣϯͷՁධՁλεΫΛࡐʹͯ͠ɺ࣍
ͷτϐοΫΛऔΓ͋͛·͢
ωοτࠂ৴γεςϜͱ.- λεΫͷྫ Ϟνϕʔγϣϯ Ξϓϩʔν ΫϦοΫ༧ଌ ࠂ͕ΫϦοΫ͞ΕΔ͕֬Γ͍ͨ Ϋϥεྨ ίϯόʔδϣϯ༧ଌ ΫϦοΫޙʹίϯόʔδϣϯ͢Δ͕֬Γ͍ͨ Ϋϥεྨ
৴͢Δࠂͷܾఆ ͋ΔظؒͷऩӹΛ࠷େʹ͢ΔͨΊʹɺͲͷࠂΛ ද͖͔ܾࣔ͢Ί͍ͨ ଟόϯσΟοτ ߹ͤ࠷దԽ ࠂͷΫϥελϦϯά ࣅ͍ͯΔࠂΛ·ͱΊͯѻ͍͍ͨ ΫϥελϦϯά ΫϩεσόΠεਪఆ Λԣஅͨ͠ΦʔσΟΤϯεͷτϥοΩϯά͕ ͍ͨ͠ ଟΫϥεྨ
ࠂΠϯϓϨογϣϯͷՁධՁ ࠂഔମ ɾ 441 ৴ࣄۀऀ ࠂϦΫΤετ9 ࠂ ࠂ ࠂO
ࠂબϩδοΫ
ࠂΠϯϓϨογϣϯͷՁධՁ ࠂഔମ ɾ 441 ৴ࣄۀऀ ࠂϦΫΤετ9 ࠂ ࠂ ࠂO
ऩӹ༧ଌϩδοΫ ࠂબϩδοΫ ԁ ԁ ԁ ࠂϨεϙϯε ࠂZ
ࠂϦΫΤετ9 ɾΦʔσΟΤϯεɾίϯςΩετʜ ʹରͯ͠ɺԠ Մೳͳࠂ͕Oݸ͋Δɻ͜ͷ࣌ʹͦΕͧΕͷࠂB㱨\ ʜO^Λදࣔ͠ ͨ࣌ͷऩӹ༧ଌ͕ཉ͍͠ɻ ऩӹ༧ଌΫϦοΫ $53 ίϯόʔδϣϯ
$73 ΛͦΕͧΕͷࠂ ʹ͍ͭͯ༧ଌͯ͠ར༻͢Δɻ CTR = P(click=1 | X, a) CVR = P(conversion=1 | X, a, click=1) ͨͩ͠શͯͷॲཧ͕NTҎʹऴΔࣄ ࠂΠϯϓϨογϣϯͷՁධՁ ଓ͖
"84&$4$MVTUFS &$*OTUBODF γεςϜߏ 4 $53༧ଌث ܇࿅λεΫ $*%FQMPZ $73༧ଌث ܇࿅λεΫ -VJHJ
4DIFEVMFS $53༧ଌث +40/ $73༧ଌث +40/ ऩӹ༧ଌϩδοΫ $53༧ଌ ॲཧ $73༧ଌ ॲཧ #JH2VFSZ ৴ϩά ϩάͷ&5- 'FUDI %BJMZ 6QEBUF 2VFSZ ܇࿅σʔλ )551 ࠂબϩδοΫ
શମͷઃܭ w 8FCαʔόʔͰϦΫΤετΛॲཧ͢ΔϓϩηεͰਪ 4DBMBͰ࣮ w ϨΠςϯγͱ҆ఆੑΛ༏ઌ w ଞͷબࢶͩͱ"1*αʔόʔԽ
w ϩδεςΟοΫճؼ -ਖ਼ଇԽ w ͞Εͨ༧ଌϞσϧΛΦϯϝϞϦͰอ࣋͢Δ w ܇࿅σΠϦʔͷόονॲཧ w ʑՃ͞ΕΔ৽نࠂΩϟϯϖʔϯɾ৽نࠂʹରԠ͢ΔͨΊຖ ֶशΛΓͳ͓͢ɻݹ͍աڈΕͤ͞Δɻ w 1ZUIPOͰ࣮
όονॲཧ܈
όον࣮ߦڥ w "84&$4্ͷ%PDLFSίϯςφͰಈ࡞ w 1ZUIPOڥͷ࠶ݱੑ୲อͷͨΊʹ1JQpMFΛ༻ w ϫʔΫϑϩʔΤϯδϯ-VJHJΛ࠾༻ w λεΫؒͷґଘղܾ w
&5-ɾ༧ଌϞσϧͷ܇࿅ɾϞσϧͷͱෳࡶʹͳΓ͕ͪͳॴ w FHར༻͢Δσʔλछʹ͍ͭͯલ࣌ͷσʔλऔࠐΈ͕ऴͬͨ ΒલॲཧΛ։࢝ɻલॲཧ͕ऴͬͨΒ"ͱ#ͷ܇࿅ΛฒྻͰ։࢝ w ֎෦ཁҼͰίέͨ࣌ͷϦτϥΠɾฒྻ࣮ߦ੍ޚ
%FQFOEFODZ(SBQI ίέͨॴҟৗʹ͕͔͍࣌ؒͬͯΔλεΫ͕͙͢ʹΘ͔ͬͯศར
܇࿅ w TDJLJUMFBSOΛͬͯϩδεςΟοΫճؼ w ΧςΰϦΧϧมͷPOFIPUFODPEJOHͰສ࣍ݩʹͳΔ͕ɺ-ਖ਼ଇԽͰ ສҎԼ·Ͱམ͍ͪͯΔ w ࠂΩϟϯϖʔϯຖʹ༧ଌثΛ࡞Δ w ࡐ
ϦλʔήςΟϯάPSʜ ʹΑͬͯ͑Δૉੑ͕ҟͳΔ w ਖ਼ྫෛྫͷόϥϯε͕ͩͬͨΓͩͬͨΓͯ͠Ұॹʹѻ͏ ͷ͕͍͠ w $MBTT*NCBMBODFରࡦͱͯ͠/FHBUJWF%PXOTBNQMJOH͍ͯ͠Δ
/FHBUJWF%PXOTBNQMJOH w ਖ਼ྫશͯར༻ɺෛྫؒҾ͘FH͚ͩ༻ *NCBMBODFىҼͷόΠΞεআڈ w ॲཧରσʔλΛେ෯ʹݮΒ͢ࣄ͕Ͱ͖ΔɻܭࢉίετݮͷϝϦοτ͕େɻ w ࣺͯΔ෦Λม͑ͯ༧ଌثΛ࡞Γ#BHHJOHͰ൚ԽੑೳΛ্͛ΒΕΔ w
#JH2VFSZͳΒΫΤϦͰ࣍ͷ௨Γॻ͚Δɻ࠶ݱੑ༗Γɻ where mod(farm_fingerprint(imp_id), 50) = 0 or click = 1
/FHBUJWF%PXOTBNQMJOH w ਖ਼ྫશͯར༻ɺෛྫؒҾ͘FH͚ͩ༻ *NCBMBODFىҼͷόΠΞεআڈ w ॲཧରσʔλΛେ෯ʹݮΒ͢ࣄ͕Ͱ͖ΔɻܭࢉίετݮͷϝϦοτ͕େɻ w ࣺͯΔ෦Λม͑ͯ༧ଌثΛ࡞Γ#BHHJOHͰ൚ԽੑೳΛ্͛ΒΕΔ w
#JH2VFSZͳΒΫΤϦͰ࣍ͷ௨Γॻ͚Δɻ࠶ݱੑ༗Γɻ $MJDL $MJDL %BUB where mod(farm_fingerprint(imp_id), 50) = 0 or click = 1
/FHBUJWF%PXOTBNQMJOH w ਖ਼ྫશͯར༻ɺෛྫؒҾ͘FH͚ͩ༻ *NCBMBODFىҼͷόΠΞεআڈ w ॲཧରσʔλΛେ෯ʹݮΒ͢ࣄ͕Ͱ͖ΔɻܭࢉίετݮͷϝϦοτ͕େɻ w ࣺͯΔ෦Λม͑ͯ༧ଌثΛ࡞Γ#BHHJOHͰ൚ԽੑೳΛ্͛ΒΕΔ w
#JH2VFSZͳΒΫΤϦͰ࣍ͷ௨Γॻ͚Δɻ࠶ݱੑ༗Γɻ $MJDL $MJDL %BUB ࣺͯΔ where mod(farm_fingerprint(imp_id), 50) = 0 or click = 1
܇࿅݁Ռͷ֬ೝ w ࣮ݧ࣌ w 5JNF4FSJFT4QMJUͰ$SPTT7BMJEBUJPO "6$ w ย߲ͷ͕पลԽͨ࣌͠ͷ֬ͱҰக͍ͯ͠ΔࣄΛ֬ೝ w
ཉ͍͠ͷ֬ w શମͷΫϦοΫTJHNPJE ΫϦοΫ༧ଌثͷย߲ͷ ͳΒ0, w "6$MPHMPTT͚ͩݟͯ0WFS1SFEJDUJPOʹؾ͚ͮͳ͍
༧ଌϞσϧͷ w ܇࿅݁ՌύϥϝʔλΛ+40/ʹͯ͠4ʹஔ 1SPUPDPM#V⒎FSͷํ͕ྑ͔͔ͬͨʜ w ϑΝΠϧͷ༰ w ϝλใ όονॲཧىಈ࣌ࠁɾόʔδϣϯ
w ඇθϩͷ XFJHIU ͱରԠϥϕϧ ֶश݁Ռ w લॲཧύϥϝʔλ w ࿈ଓมͷฏۉɾࢄ w /FHBUJWF%PXOTBNQMJOH w όονىಈຖʹϑΝΠϧΛ͍ͯ͠ΔͷͰɺ-BUFTUΛҙͷ࣌ʹͤΔ
ਪ
8FC4FSWFSଆͷܭࢉ 4DBMBͰ࣮ͨ͠෦ɻ *.1ΛYɺॏΈ͕Xͷ࣌ɺϩδεςΟοΫճؼͷΫϥεࣄޙ֬࣍ͷ௨Γɻ ࣮͕ਖ਼͍͠ࣄͷ֬ೝͱͯ͠ɺςετίʔυͰTDJLJUMFBSOͷ -PHJTUJD$MBTTJpFSQSFEJDU@QSPCB ΛݺΜͩ݁Ռͱಉ͔͡Ͳ͏͔ΛνΣοΫ ͜ΕΛQ /FHBUJWF%PXOTBNQMJOHΛSͱͯ͠ݩͷ֬ʹ͢ʹɻ ㅟ Yͷཁૉ΄ͱΜͲθϩͳͷͰ*.1
ʹରԠ͢Δ8FJHIUͷ͋͠Θͤ
ϩδοΫ༧ଌثΓସ͑Մೳʹ͢Δ w γεςϜͷ"#5FTUରԠʹඞਢ w ࣮ݧΛதஅ͢Δͷʹιʔείʔυͷ3FWFSU αʔόʔશೖΕ͑ͱ͔ Γͨ͘ͳ͍
ϦϦʔεޙͷӡ༻
༧ଌϞσϧͷੑೳࢹ w ϏδωεࢦඪͷࢹͱϞσϧ༧ଌਫ਼ͷࢹΛಉ࣌ʹಈ͔͓ͯ͘͠ w ༧ଌਫ਼͕མͪͨ PSσʔλ͕Γͳ͍ͯ͘ ࣌ʹϏδωεࢦඪ͕ѱ ͍ͷظ௨Γͷಈ࡞ w ༧ଌਫ਼ͷྑ͞ͱϏδωεࢦඪͷྑ͕͞࿈ಈ͍ͯ͠Ε0,
w ແ૬ؔͰ͋Εͦͷ༧ଌॲཧୀՄೳ
༧ଌϞσϧͷੑೳࢹ ଓ͖ w Ϗδωεࢦඪͷࢹ w ച্ɾૈརɾ$1" ίϯόʔδϣϯ֫ಘ݅͋ͨΓͷίετ w ༧ଌث͕ࣄۀʹߩݙͰ͖͍ͯΔ͔Θ͔Δ
w ٸܹʹѱԽͨ͠߹ɺେγεςϜʹԿ͔͕ى͖ͯΔ w ༧ଌਫ਼ w ࣮ࡍͷ৴࣌ͷ༧ଌͱ৴݁ՌΛͬͯࠂΩϟϯϖʔϯຖʹ"6$ ͷ࣌ܥྻΛϓϩοτ w Ωϟϯϖʔϯຖʹϓϩοτ͢ΔࣄͰࡐʹΑΔͷ͕ࠩݟ͑Δ
༧ଌϞσϧͷੑೳࢹ ଓ͖ w ༧ଌثຖͷ༻ঢ়گ w ݺग़ճɾൃੜച্ োൃੜ࣌ͷϦΧόϦ༏ઌ w ࠂӡ༻ऀ͕৴ϩδοΫ
༧ଌث ΛબΔέʔε w ྑ͍Ͱʮಈ࡞͕ѲͰ͖ͳ͍͔Βͬͯͳ͍ʯͱ͍͏ࣄ͋Δ w ίϛϡχέʔγϣϯऔ͍ͬͯ͘ w ΘΕͳ͘ͳͬͨୀͤ͞Δ w ͍ͬͯͳͯ͘ҡ࣋අ͕͔͔Δ
܇࿅σʔλͷͷมԽ w σʔλੜܦ࿏ͷো w ܇࿅σʔλͷݩʹͳΔ্ྲྀͷϑΟϧλ͕ނো w ܭଌܥͷো FHίϯόʔδϣϯܭଌ͕ࢭ·ͬͨ w
োͳΒ܇࿅σʔλΛ៉ྷʹͯ͠࠶܇࿅͢Δͱੑೳ͕ݩʹΔ w Ϗδωεঢ়گͷมԽ w ༧ଌରͷ͕มΘͬͨ w ͷมԽ͕Θ͔Ε࣍ͷҰखΛܾΊ͍͢ɻ৳ͼ͠Ζͷ͋Δ෦ͷ νϡʔχϯά৽ن։ൃʹணखɻ
৽͍͠༧ଌثͷϦϦʔε
ΦϑϥΠϯධՁ w ৽͍͠༧ଌثͷ࣮ݧɺϏδωεࢦඪ͕Ͳ͏ͳΔ͔Λ֬ೝ͢Δ w աڈͷ৴ϩάΛͬͯධՁ w աڈͷ৴ϩάߦຖʹ༧ଌΛੜ w #JH2VFSZ͔ΒಡΜͰ#JH2VFSZॻ͖ࠐΉͷ$MPVE%BUBqPX͕ศར w
͔͠͠ϩάΛ࣮ͬͨԾࡦͷධՁݫີʹͰ͖ͳ͍ w ܇࿅σʔλͷϑΟʔυόοΫ͕γϛϡϨʔτͰ͖ͳ͍ w ඇఆৗੑ w ධՁ݁Ռࢀߟఔʹ
ΦϯϥΠϯධՁ w ͪ͜Β͕ຊ໋ w ϩδοΫ ༧ଌث ͷ"#ςετ w ϓϩμΫγϣϯڥͰαϯϓϧΛແ࡞ҝʹ܈ʹ͚ΔϥϯμϜԽൺֱࢼݧ w
࣌ؒมԽͷӨڹɾηϨΫγϣϯόΠΞεͷআڈ w ίϯτϩʔϧ܈ͱτϦʔτϝϯτ܈ͷϏδωεࢦඪͷ͕ࠩҼՌޮՌ w ϏδωεΠϯύΫτͰධՁ ౷ܭతʹ༗ҙͰ͕ࠩখ͍͞ͱඍົ
ΦϯϥΠϯධՁ w ͪ͜Β͕ຊ໋ w ϩδοΫ ༧ଌث ͷ"#ςετ w ϓϩμΫγϣϯڥͰαϯϓϧΛແ࡞ҝʹ܈ʹ͚ΔϥϯμϜԽൺֱࢼݧ w
࣌ؒมԽͷӨڹɾηϨΫγϣϯόΠΞεͷআڈ w ίϯτϩʔϧ܈ͱτϦʔτϝϯτ܈ͷϏδωεࢦඪͷ͕ࠩҼՌޮՌ w ϏδωεΠϯύΫτͰධՁ ౷ܭతʹ༗ҙͰ͕ࠩখ͍͞ͱඍົ Γ͍ͨͷίί ྫૈར͕ͲΕ͚ͩ૿͑Δ͔
ϦϦʔε w "#5FTU3FBEZͳγεςϜʹͳ͍ͬͯΕϦϦʔε༰қ w ద༻ϩδοΫΛ੍ޚ͢ΔΈΛ࡞͓ͬͯ͘ w ཧը໘ͰઃఆͰ͖Δ w "#ςετ w
શମͷ͚ͩϦϦʔε w ಛఆҊ݅ͷΈʹద༻ w ؾܰʹϦϦʔεͯ͠ݕূͰ͖ΔΈେࣄ
ઃఆྫ ઃఆ໊ ༰ ద༻ 999ϩδοΫ"#ςετ 999-PHJD7 999-PHJD7 σϑΥϧτ 999-PHJD7
όάYYͷఆରԠ /BJWF-PHJD
·ͱΊ w ࠂ৴αʔόʔͷதͰ༧ଌॲཧ͕ಈ͍͍ͯΔ w ϦϦʔε͔ͯ͠ΒΔࣄͨ͘͞Μ͋Δ w োରԠɾػೳվળ w ࢹॏཁ w
ݕূɾϦϦʔεɾୀΛΓ͘͢ w "#5FTU3FBEZʹ͓ͯ͘͠ͱָ w πϥΠ͋Μ·Γͳ͔ͬͨʜʜ
ࢀߟจݙ <>8BMMBDF #ZSPO$ FUBM$MBTTJNCBMBODF SFEVY%BUB.JOJOH *$%. *&&&UI*OUFSOBUJPOBM$POGFSFODFPO*&&& <>$IBQFMMF
0MJWJFS &SFO.BOBWPHMV BOE3PNFS3PTBMFT4JNQMFBOE TDBMBCMFSFTQPOTFQSFEJDUJPOGPSEJTQMBZBEWFSUJTJOH"$.5SBOTBDUJPOTPO *OUFMMJHFOU4ZTUFNTBOE5FDIOPMPHZ 5*45 <>)F 9JOSBO FUBM1SBDUJDBMMFTTPOTGSPNQSFEJDUJOHDMJDLTPOBETBU GBDFCPPL1SPDFFEJOHTPGUIF&JHIUI*OUFSOBUJPOBM8PSLTIPQPO%BUB .JOJOHGPS0OMJOF"EWFSUJTJOH"$. <>4DVMMFZ % FUBM)JEEFOUFDIOJDBMEFCUJONBDIJOFMFBSOJOH TZTUFNT"EWBODFTJOOFVSBMJOGPSNBUJPOQSPDFTTJOHTZTUFNT