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
Hydra, MLflow, Optunaの組み合わせで手軽に始めるハイパーパラメータ管理
Search
Taiki Nakamura
June 26, 2021
Programming
7
4.2k
Hydra, MLflow, Optunaの組み合わせで手軽に始めるハイパーパラメータ管理
Optuna meetup #1 で使用した資料です.
Taiki Nakamura
June 26, 2021
Tweet
Share
More Decks by Taiki Nakamura
See All by Taiki Nakamura
【ICASSP2024】音声変換に関する全論文まとめ【Parakeet株式会社】
supikiti
0
930
研究会発表資料.pdf
supikiti
4
740
DDPM解説スライド.pdf
supikiti
0
4.5k
音声B紹介ポスター@音響学会ビギナーズセミナー
supikiti
1
470
hydra-mlflow-optuna
supikiti
4
7.3k
Interspeech2020_読み会_nakamura
supikiti
0
640
Other Decks in Programming
See All in Programming
そのpreloadは必要?見過ごされたpreloadが技術的負債として爆発した日
mugitti9
2
2.9k
After go func(): Goroutines Through a Beginner’s Eye
97vaibhav
0
230
CSC305 Lecture 01
javiergs
PRO
1
400
なぜあの開発者はDevRelに伴走し続けるのか / Why Does That Developer Keep Running Alongside DevRel?
nrslib
3
370
CSC305 Lecture 04
javiergs
PRO
0
250
プログラミングどうやる? ~テスト駆動開発から学ぶ達人の型~
a_okui
0
190
どの様にAIエージェントと 協業すべきだったのか?
takefumiyoshii
2
590
メモリ不足との戦い〜大量データを扱うアプリでの実践例〜
kwzr
1
780
プログラマのための作曲入門
cheebow
0
530
Playwrightはどのようにクロスブラウザをサポートしているのか
yotahada3
7
2.3k
Conquering Massive Traffic Spikes in Ruby Applications with Pitchfork
riseshia
0
150
私はどうやって技術力を上げたのか
yusukebe
43
17k
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1371
200k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.1k
GraphQLとの向き合い方2022年版
quramy
49
14k
Raft: Consensus for Rubyists
vanstee
139
7.1k
Why Our Code Smells
bkeepers
PRO
339
57k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
BBQ
matthewcrist
89
9.8k
Mobile First: as difficult as doing things right
swwweet
224
10k
Visualization
eitanlees
148
16k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
The Pragmatic Product Professional
lauravandoore
36
6.9k
Transcript
)ZESB .-GMPX 0QUVOBͷΈ߹ΘͤͰ खܰʹ࢝ΊΔϋΠύʔύϥϝʔλཧ ౦େӃɾใཧ म࢜՝ఔ தଜହوʢͳ͔ΉΒ ͍͖ͨʣ 1
0QUVOB .FFUVQ
/27 ࣗݾհ 2 ▪ ϓϩϑΟʔϧ • ౦େେֶӃ ใཧ Ԑɾখࢁݚ
. • Ի߹ ࣭มٕज़Λීஈݚڀ͍ͯ͠·͢ • 5XJUUFS!TVQJLJUJ ʢΞΠίϯɿӈਤʣ ▪ ొஃཧ༝ • Ҏલ NFEJVNDPNPQUVOB ʹͯຊൃදͱಉ͡ʹͯࣥච • &BTZ)ZQFSQBSBNFUFS.BOBHFNFOUXJUI)ZESB .-GMPX BOE0QUVOB • )ZESB .-GMPX 0QUVOBͷΈ߹ΘͤͰखܰʹ࢝ΊΔϋΠύʔ ύϥϝʔλཧ
/27 ຊͷ༰ 3 ▪ հ͢Δ͜ͱ • )ZESB .-GMPX 0QUVOB Λ༻͍ͨޮతͳϋΠύϥཧ
• ͦΕͧΕͷ୯ମͰͷ͍ํ Έ߹Θͤͨ۩ମతͳ͍ํ ▪ հ͠ͳ͍͜ͱ • ͦΕͧΕͷϥΠϒϥϦͷΈ ෦ಈ࡞ ◦ ૉਓͳͷͰʜ ▪ ຊͷڞ༗ࢿྉ [PPNͷνϟοτཝʹܝࡌ ▪ αϯϓϧίʔυͪ͜Β
ϋΠύϥཧ
/27 ϋΠύϥཧͷํ๏ 5 "SHQBSTF ʹΑΔཧ IQBSBNQZ ʹΑΔཧ
/27 ϋΠύϥཧͷ 6 ▪ BSHQBSTFʹΑΔϋΠύϥཧ • ԟʑʹͯ͠ઃఆ͢ΔϋΠύϥ͕େʹͳΓ͕ͪ • ͲͷϋΠύϥ͕ NPEFMQSFQSPDFTTͳͲʹରԠ͢Δ͔ݟͮΒ͍
▪ ઃఆϑΝΠϧΛ༻͍ͨϋΠύϥཧ • ϋΠύϥมߋͷͨͼʹઃఆϑΝΠϧΛฤू͋Δ͍࡞ ▪ )ZESB .-GMPX 0QUVOBʹΑΔϋΠύϥཧ • ઃఆύϥϝʔλΛίϚϯυϥΠϯ͔Βछྨมߋ ࣮ߦՄೳ • ϋΠύϥͷάϦουαʔν͕༰қʹՄೳ छྨͷཧ͕༰қ • ڧྗͳϋΠύϥ୳ࡧΛίϚϯυϥΠϯ͔Βར༻Մೳ
)ZESB
/27 8 ▪ ಛ • 'BDFCPPL"*3FTFBSDI͕ެ։͍ͯ͠Δύϥϝʔλཧπʔϧ • ύϥϝʔλΛ֊ཱͯͯߏతʹ :".-ϑΝΠϧʹهड़ •
ίϚϯυϥΠϯ͔ΒઃఆΛ্ॻ͖ ࣮ߦ • ϋΠύϥͷछྨͷάϦουαʔνΛ ߦͰ࣮ߦՄೳ IUUQTIZESBDD )ZESBʹ͍ͭͯ
/27 جຊతͳ͍ํ 9 • ཧ͍ͨ͠ϋΠύϥΛ ZBNM ܗࣜͰ $POGJHϑΝΠϧهड़
/27 جຊతͳ͍ํ 10 • ؔʹσίϨʔλΛ͢͜ͱͰ͔ؔΒϋΠύϥࢀরՄೳ
/27 جຊతͳ͍ํ 11 ▪ ίϚϯυϥΠϯ͔Βͷͷมߋ ࣮ߦ • ϋΠύϥͷΛௐͯ͠࠶࣮ߦ͍ͨ͠߹ίϚϯυϥΠϯ͔Β ϋΠύϥͷΛมߋͯ͠ϓϩάϥϜΛ࠶࣮ߦՄೳ
/27 جຊతͳ͍ํ 12 ▪ ϋΠύϥͷάϦουαʔν • छྨͷϋΠύϥΛॱʹ༻͍࣮ͯߦ͍ͨ͠߹ɼ$POGJHΛ ॻ͖͑Δ͜ͱͳ͘ίϚϯυϥΠϯ͔ΒࢦఆՄೳ • ࢦఆͨ͠ϋΠύϥͷΈ߹ΘͤͷʹԠ࣮ͯ͡ߦ
/27 جຊతͳ͍ํ 13 ▪ )ZESBͷϋΠύϥࣗಈอଘػೳ • ࣮ߦ͝ͱͷઃఆ࣮ߦதͷग़ྗΛࣗಈͰอଘ͞ΕΔػೳ • 0VUQVUTσΟϨΫτϦʹ࣮ߦ࣮ߦຖछʑͷઃఆϑΝΠϧ͕ ࣗಈอଘ
• อଘܗࣜͷՄಡੑ͕͘ϋΠύϥൺֱ͕Ͱ͖ͳ͍ʢࠨਤʣͨΊ .-GMPX Λಋೖ͜͠ΕΛվળʢӈਤʣ
.-GMPX
/27 .-GMPXͷجຊతͳ͍ํ 15 ▪ .-GMPX ͱ • ػցֶशϥΠϑαΠΫϧΛ࣮ݱ͢ΔΦʔϓϯιʔε • )ZESB
ͱΈ߹ΘͤϋΠύϥͷཧ อଘ ൺֱ͕༰қʹ • ຊൃදͰ .-GMPX 5SBDLJOHΛ༻͍ͨϋΠύϥཧΛհ ▪ .-GMPX 5SBDLJOH • ػցֶशͳͲͷϋΠύϥͷϩΪϯά MPTTBDDVSBDZͳͲͷ ϝτϦΫε ग़ྗϑΝΠϧͳͲͷཧΛิॿ͢Δ "1*Λఏڙ • QJQͰΠϯετʔϧՄೳ
/27 جຊతͳ͍ํ 16 ▪ ϋΠύϥͷͱه • .-GMPX ͕ఏڙ͢ΔϩΪϯάؔΛ༻͍ͯϋΠύϥΛهՄೳ start_run() runID
の発行 log_param() ハイパラの登録 log_metric() メトリックの記録 log_artifact() 出力されたファイル等の記録 … mlflow ui localserver:5000でGUI
17 )ZESBͱ .-GMPX ͷ࣮ྫ
18 hydra.mainデコレータ パラメータの登録 (log_params()) メトリックの登録
19 શࢼߦաఔ͕ࣗಈอଘ ൺֱՄೳ MPTT BDDVSBDZ
/27 )ZESB .-GMPX ·ͱΊ 20 ▪ )ZESB • 'BDFCPPL"*3FTFBSDI͕ެ։͍ͯ͠Δύϥϝʔλཧπʔϧ •
ίϚϯυϥΠϯ͔ΒઃఆΛෳมߋ ࣮ߦՄೳ ▪ .-GMPX • ػցֶशͷ࣮ݧཧΛࣗಈͰߦ͏πʔϧ • (6*্Ͱύϥϝʔλͷҧ͍ʹΑΔ݁Ռͷൺֱ͕༰қʹՄೳ ▪ )ZESB .-GMPX 0QUVOB • )ZESBͷϓϥάΠϯΛར༻ͨ͠ 0QUVOB ͷಋೖํ๏Λղઆ
0QUVOB
/27 0QUVOB ͷಋೖ 22 ▪ 0QUVOB ͱ • ΦʔϓϯιʔεͷϋΠύϥࣗಈ࠷దԽϑϨʔϜϫʔΫ •
ϋΠύϥͷʹؔ͢ΔࢼߦࡨޡΛࣗಈԽ • ༏ΕͨੑೳΛൃش͢ΔϋΠύϥͷΛࣗಈతʹൃݟ ▪ )ZESB .-GMPX 0QUVOB • )ZESBͷ 0QUVOB 4XFFQFSϓϥάΠϯΛ༻͢Δ͜ͱͰ )ZESBͰઃఆͨ͠มͷ୳ࡧΛίϚϯυϥΠϯ͔Β࣮ࢪՄೳ • ࠷దԽ͞ΕΔมͱ݅ΛίϚϯυϥΠϯ͔ΒมߋՄೳ
/27 ઃఆϑΝΠϧͷՃ 23 )ZESBͷઃఆϑΝΠϧ0QUVOB ʹؔ͢Δ ۩ମతͳઃఆ߲ΛՃͰॻ͖͜Ή͚ͩ ࡉ͔ͳ 0QUVOB ͷઃఆ߲ΛมߋՄೳ l
EJSFDUJPO ධՁؔΛ࠷খԽ PS࠷େԽ l O@USJBMT୳ࡧճͷઃఆ l /@KPCTฒྻϫʔΧʔͷ l ʜ
/27 NBJOؔͰͷมߋ 24 • σίϨʔλͰͨؔ͠ͷฦΓΛ࠷దԽ͢Δతมʹઃఆ • ҎԼͷίʔυ BDDVSBDZΛ࠷େԽ͍ͨ͠߹ͷྫ
/27 ୳ࡧൣғͷࢦఆ 25 • ίϚϯυϥΠϯ͔Β࠷దԽ͍ͨ͠ม͓ΑͼൣғΛࢦఆ • ҎԼͰ PQUJNJ[FS ͷֶशͱϞσϧͷϊʔυΛ୳ࡧ ◦
DIPJDFΧςΰϦܕͷมม͞ΕΔͨΊ PQUJNJ[FS ͷ ֶश छྨ୳ࡧ͞ΕΔ ◦ SBOHF ܕͷมม͞ΕΔͨΊ NPEFMOPEF ͕ < >ͷൣғ͔ͭͷ݅Ͱ୳ࡧ͞ΕΔ ◦ ଞʹ༷ʑͳʹରԠ͍ͯ͠Δ͕͜͜ͰׂѪ
/27 .-GMPXͰͷՄࢹԽ 26 • 0QUVOB Ͱ୳ࡧ͞ΕͨϋΠύϥͷ͓ΑͼతؔͷΛ .-GMPX Ͱߏஙͨ͠ϩʔΧϧαʔόʔ্Ͱ֬ೝՄೳ
/27 ૯·ͱΊ 27 ▪ )ZESB .-GMPX 0QUVOB • ֶश࣌ʹࡶʹͳΓ͕ͪͳύϥϝʔλཧͷܾఆ൛ •
)ZESBͱ 0QUVOB ͰύϥϝʔλΛ༰қʹมߋɾ୳ࡧ͠ .-GMPX ͰશύϥϝʔλΛҰݩཧ ▪ ͞Βʹֶͼ͍ͨํʹ • ,FESP8PSLGMPXͷύΠϓϥΠϯཧπʔϧ ◦ )ZESB .-GMPX 0QUVOB ,FESP ◦ ΑΓ࠶ݱੑͷ͋Δ͍ճ͠Λҙࣝͨ͠ίʔυʹ https://github.com/quantumblacklabs/kedro
/27 ࢀߟࢿྉ 28 • IUUQTDZCFSBHFOUBJCMPHSFTFBSDI • IUUQTZNZNIBUFOBCMPHDPNFOUSZ • IUUQT[FSFCPNIBUFOBCMPHDPN)ZESB
• IUUQTTQFBLFSEFDLDPNDIDLTPLYJBPTBLVTIJNFUFEB LJLVZVUFSVNMPQT