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
Deep Learningと超解像
Search
kmt-t
September 04, 2019
Programming
0
21
Deep Learningと超解像
kmt-t
September 04, 2019
Tweet
Share
More Decks by kmt-t
See All by kmt-t
組込エンジニアのための深層学習
kmt_t
1
17
Design by Contractとホーア論理
kmt_t
0
34
GCPと機械学習
kmt_t
1
46
進化するART
kmt_t
0
24
Other Decks in Programming
See All in Programming
Towards Structured Data: LLMs from Prototype to Production
inesmontani
PRO
0
140
チームで運用する golangci-lint の向き合い方
sgash708
3
280
Gobra で見る形式検証 (mercari.go #26)
artoy
0
390
Introduction to safe programming with numeric library / 数値ライブラリで始める安全なプログラミング
boykush
2
13k
What's new in Firebase for building gen AI features気になったところ
mkeeda
0
110
From Spring Boot 2 to Spring Boot 3 with Java 22 and Jakarta EE
ivargrimstad
0
540
ぎゃるえんじにあがハッカソンの虜になった!
rino7_tech
1
230
Rails engineを用いたゆるふわモジュラーモノリス のご紹介
free_world21
1
100
multipart/form-dataの省メモリパース / Go Conference 2024 Pre Party #gocon24_preparty
mazrean
0
310
ABEMA 画像配信基盤における Cloudflare Workers の活用
peaceiris
7
620
You may not need XXX in Node.js
masashi
5
910
spaCy meets LLMs: Using Generative AI for Structured Data
inesmontani
PRO
1
470
Featured
See All Featured
Building Adaptive Systems
keathley
33
2k
Raft: Consensus for Rubyists
vanstee
133
6.4k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
228
16k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
73
15k
Practical Orchestrator
shlominoach
184
9.9k
KATA
mclloyd
18
12k
What’s in a name? Adding method to the madness
productmarketing
PRO
18
2.8k
The Cult of Friendly URLs
andyhume
74
5.8k
Unsuck your backbone
ammeep
664
57k
StorybookのUI Testing Handbookを読んだ
zakiyama
14
4.8k
Navigating Team Friction
lara
180
13k
[RailsConf 2023] Rails as a piece of cake
palkan
31
4.2k
Transcript
Deep Learningͱղ૾ ൃදऀ দӬ 1/57
ࣗݾհ • ໊લ : দӬ (kmt_t) • ৬ۀ :
ϓϩάϥϚ • ஶॻ : AndroidͷԾϚγϯ 2/57
ࣗݾհ • ઐ • ը૾ॲཧ (ओʹ࠷దԽ) • ίϯϐϡʔλάϥϑΟοΫε • ϑΝΠϧγεςϜ
• ԾϚγϯ • σΟʔϓϥʔχϯάͷࣄͨ·ʹͬͯ·͢ 3/57
σΟʔϓϥʔχϯά؆୯ͩʂ 4/57
ൃදͷҙࣄ߲ • ൃදऀ͕ࠐ։ൃऀͳͷͰࠐલఏͰ͠·͢ • ࣜɺܭࢉ΄ͱΜͲলུ͠·͢ • ಠࣗͷղऍɺཧతཪ͚ͷബ͍༰ؚ͕·Ε·͢ • εϥΠυͷຕ͕ଟ͍ͷͰएׯૣ͍ਐߦʹͳΓ·͢ 5/57
ൃදͷΞτϥΠϯ • લఏࣝ • σΟʔϓϥʔχϯάʁ • SRCNN • ೋޡࠩ •
ίϯϘϦϡʔγϣϯ 6/57
ൃදͷΞτϥΠϯ • վળ • ܭࢉྔͷ࠷దԽ • ͞ΒͳΔը࣭ͷվળ • ͱԠ༻ •
ੑೳධՁ 7/57
લఏࣝ 8/57
σΟʔϓϥʔχϯάʁ • ز͔ͭͷ͕͋Γɺ֊ʹͳ͍ͬͯΔ • ʹϊʔυ͕ͨ͘͞Μ͋Δ • Լͷͱͻͱ্ͭͷͷͯ͢ͷϊʔ υଓ͞Ε͍ͯΔ (શ݁߹) 9/57
σΟʔϓϥʔχϯάʁ • ଓॏΈΛ࣋ͪɺೖྗͷϊʔυͷ׆ ੑʹॏΈΛ͔͚ͨͷ͕ग़ྗͷϊʔυ ʹՃࢉ͞ΕΔ • ଓͷॏΈֶशʹΑΓௐ͞Εɺҙ ຯͷ͋Δग़ྗ͕ಘΒΕΔΑ͏ʹ͢Δ • ͜ΕΛχϡʔϥϧωοτϫʔΫͱݺͼɺ
֊͕ਂ͍ͷΛʮσΟʔϓϥʔχϯ άʯͱݺͿ 10/57
σΟʔϓϥʔχϯάͷֶश • ωοτϫʔΫͷग़ྗͱಘ͍ͨ݁ՌͷࠩΛʮޡࠩʯͱݺͿ • ޡ͕ࠩগͳ͘ͳΔΑ͏ʹωοτϫʔΫʹൖͤ͞ɺௐ͢Δ • ͜ͷௐΛʮόοΫϓϩύήʔγϣϯʯͱݺͿ 11/57
SRCNN 12/57
SRCNNͷհ • SRCNNχϡʔϥϧωοτϫʔΫΛͬͨղ૾ٕज़ • จʮImage Super-Resolution Using Deep Convolutional Networksʯ
• http://arxiv.org/abs/1501.00092 ※ waifu2xͰരൃతʹ༗໊ʹͳͬͨख๏ ※ waifu2x @ultraist ࢯ͕࡞ͬͨιϑτΣΞͰ͢ʂ 13/57
SRCNNͷޮՌ 14/57
SRCNNͷޮՌ 15/57
SRCNNจཁ ʮίϯϘϦϡʔγϣϯͯ͠ೋޡࠩΛͱΔͱղ૾Ͱ͖ΔΑʯ • ೋޡࠩͬͯʁ • ίϯϘϦϡʔγϣϯͬͯʁ 16/57
ೋޡࠩ • ೋޡࠩඪσʔλͱωοτϫʔΫͷग़ྗσʔλͷࠩͷೋ • ೋޡࠩͰͲΕ͙Β͍ඪͱҧ͏͔ܭࢉͰ͖Δ • ޡ͕ࠩখ͘͞ͳΔΑ͏ʹόοΫϓϩύήʔγϣϯͰֶश͢Δ • ༗໊ͳʮΦʔτΤϯίʔμʯೋޡࠩΛ͔ͭͬͯωοτϫʔ Ϋͷग़ྗ͔Βೖྗ͕෮ݩͰ͖ΔΑ͏ʹֶश͢Δ
17/57
ೋޡࠩΛֶͬͨशͷԠ༻ • ղ૾ • ϊΠζϦμΫγϣϯ • ৭ਂϋΠϏοτԽ • ௨ৗը૾ͷHDRԽ •
ϞϊΫϩը૾ͷϑϧΧϥʔԽ • ըॲཧҎ֎Ͱෆશͳσʔλ͔Βશͳσʔλ͕༧ଌͰ͖Δ 18/57
ίϯϘϦϡʔγϣϯ • ίϯϘϦϡʔγϣϯͱपลͷըૉʹ ॏΈΛ͔͚ͯ͢ • ݫີͳίϯϘϦϡʔγϣϯͷܭࢉํ ๏ޙͰઆ໌ • ੵܭࢉ͢Δը૾ͷൣғΛΟϯυ ͱݺͿ
• ίϯϘϦϡʔγϣϯσδλϧϑΟϧλ • ϑΟϧλͷ (ॏΈ) ΛόοΫϓϩ ύήʔγϣϯͰֶश͢Δ 19/57
SRCNNΞϧΰϦζϜ (ֶश) 1.ཧը૾ͱαΠζΛʹͯ͠2ഒʹֶͨ͠शը૾Λ༻ҙ 2.ֶशը૾ΛωοτϫʔΫͰͻͨ͢ΒίϯϘϦϡʔγϣϯ 3.ίϯϘϦϡʔγϣϯͨ͠ը૾ͱཧը૾ͷೋޡࠩΛͱΔ 4.όοΫϓϩύήʔγϣϯͰޡࠩௐ 20/57
SRCNNΞϧΰϦζϜ (ղ૾) 1.֦େ͍ͨ͠ը૾ͷαΠζΛ2ഒʹ͢Δ 2.ݩը૾Λֶशͨ͠ωοτϫʔΫͰͻΒ͢ΒίϯϘϦϡʔγϣϯ 3.͓ΘΓ 21/57
SRCNNͷΈ • ཧͷը૾ • ը૾ΛྼԽͤ͞Δؔ • Ϩϯζͷ৭ऩࠩ • ϞΞϨࢭ༻ͷϩʔύεϑΟϧλ •
JPEGϊΠζ • ྼԽͨ͠ը૾ 22/57
SRCNNͷΈ • ྼԽͨ͠ը૾Λݩʹ͢ ٯؔ • ͕͋Ε Λ ʹ͢͜ͱ͕Ͱ͖Δ • 23/57
SRCNNͷΈ • ٯؔ ͳΜͯଘࡏ͢Δͷ͔ʁܭࢉग़དྷΔͷ͔ʁ • ΛχϡʔϥϧωοτϫʔΫͰۙࣅ͢Δ • ΛٻΊΔͷʹԿͷςΫχοΫ͍Βͳ͍SRCNN • ٯؔ
ΛٻΊΔղ૾ͷख๏ଞʹ͋Δ 24/57
ܭࢉྔͷ࠷దԽ 25/57
ίϯϘϦϡʔγϣϯͷ ܭࢉྔ Οϯυ෯ ɹɹɹɹ× Οϯυ෯ ɹɹɹɹ× ೖྗνϟϯωϧ ɹɹɹɹ× ग़ྗνϟϯωϧ ɹɹɹɹʹ
1ϐΫηϧ͋ͨΓͷੵܭࢉճ 26/57
SRCNNܭࢉྔͷݮΒ͠ํ • ίϯϘϦϡʔγϣϯͷܭࢉྔΛܶతʹݮΒ͢ʹɺ • Οϯυ෯Λখ͘͢͞Δ (Ұ൪ޮՌ͋Γ) • ೖྗνϟϯωϧΛߜΔ • ग़ྗνϟϯωϧΛߜΔ
• ࠷ѱͳͷͯ͢ͷύϥϝʔλ͕େ͖͍έʔε • ܭࢉྔΛؾʹ͢ΔͳΒ͍ͣΕ͔ͷύϥϝʔλΛߜΔ 27/57
SRCNN࠷దԽ • ίϯϘϦϡʔγϣϯϑΟϧλͷՄࢹԽ • νϟωϧؒͷ݁߹ͷධՁ 28/57
SRCNN࠷దԽͷίπ • ֊͕ઙ͍΄͏͕ޡ͕ࠩೖྗଆͷ·Ͱ͏·͘ൖ͢Δ • ग़ྗଆͷνϟϯωϧ͕ଟ͗͢Δͱೖྗଆʹޡ͕ࠩ͠ͳ͍ • ೖྗଆ·ͰޡࠩΛൖͤ͞ΔʹֶशճΛ૿͢ • ೖྗଆͷΟϯυ͍ํ͕͍͍͕͗͢Δͱֶशࠔ •
࣍ͷʹࢀর͞Εͳ͍νϟϯωϧ͕͋Δͱνϟϯωϧ͕ଟ͗͢ 29/57
waifu2xͷωοτϫʔΫઃܭ • ܭࢉྔͷ߹ܭʹ • ͨͩ͠ը૾Λ2ഒʹ͢Δ߹ܭࢉྔ͕΄΅1/4 30/57
࠷దԽޙͷωοτϫʔΫߏ • 7͔Β4ʹมߋ • PSNRྼԽ͢Δ͕ࢹ֮తʹڐ༰ൣғ (ओ؍ʹΑΔ) 31/57
ܭࢉྔ͕۩ମతʹΠϝʔδग़དྷͳ͍ • 1TFLOPSͷܭࢉػͰϑϧHDը૾Λॲཧ͢ΔͱԿඵʁ • GeForce GTX 480 ͩͱ 1.345TFLOPS •
ͻͱੲલͷGPU͕ͩͦΕͰࠓͷΈࠐΈDSPͳͲΑΓڧྗ 32/57
ܭࢉྔ͕۩ମతʹΠϝʔδग़དྷͳ͍ • waifu2x • 54ສੵܭࢉ/ϐΫηϧ • 1920x1080ϐΫηϧ/1133ms@1TFLOPS • ࠷దԽޙ •
2.3ສੵܭࢉ/ϐΫηϧ • 1920x1080ϐΫηϧ/48ms@1TFLOPS 33/57
ͦΕͰଟ͗͢Δܭࢉྔ • ࠷దԽޙͰΈࠐΈʹΈࠐΉʹͭΒ͍ܭࢉྔ • ͱ͍͏ͷͷϥϯμϜΞΫηεͳ͠ɺ͔ͭฒྻԽ૬؆୯ 34/57
ΈࠐΈ։ൃͷԠ༻ͷ՝ • ଳҬͳϝϞϦ͕ͳ͍ͱͭΒ͍ • ղ૾ΑΓ؆୯ͳλεΫͳΒܭࢉྔ·ͩݮΒͤΔ • ؆୯ͳλεΫʹ৭ௐิਖ਼ɺϊΠζআڈɺϋΠϏοτԽ͋ͨΓ • ϓϩάϥϜ։ൃඇৗʹ؆୯ͳͷͰͳ͍ 35/57
͞ΒͳΔը࣭ͷվળ 36/57
ࣝผϞσϧͱੜϞσϧ • ࣝผϞσϧ • ର͕Կ͔Λྨɺࣝผ͢ΔͨΊͷϞσϧ • ੜϞσϧ • ༩͑ΒΕͨύϥϝʔλ͔ΒσʔλΛੜ͢Δ •
ҰൠతʹࣝผϞσϧΛ͔ͭͬͨԠ༻͕ଟ͍ • ࣮ੜϞσϧ͕͍ʂ 37/57
Generative Adversarial Networks • GANͰ༩͑ΒΕͨύϥϝʔλ͔Βը૾ Λੜ͢Δ • ύϥϝʔλ͝ͱʹҙຯ͕͋Γɺੜ͞ ΕΔը૾ͷ੍ޚՄೳ •
http://qiita.com/rezoolab/ items/5cc96b6d31153e0c86bc 38/57
GANͷΞϧΰϦζϜ • ύϥϝʔλ͔ΒσʔλΛੜ͢Δੜث • σʔλͷຊͬΆ͞Λఆ͢Δࣝผث 39/57
GANͷΞϧΰϦζϜ 1.ੜث༩͑ΒΕͨύϥϝʔλ͔ΒσʔλΛੜ͢Δ 2.ࣝผثੜ͞ΕͨσʔλͷຊͬΆ͞Λఆ͢Δ 3.ຊͬΆ͘ͳ͍߹͍Λޡࠩͱͯ͠ੜثʹֶशͤ͞Δ 4.ࣝผثಉ࣌ʹຊͬΆ͞ͷఆΛֶश͢Δ Ҏ্Λ܁Γฦ͢ͱͦΕͬΆ͍σʔλ͕ੜ͞ΕΔ 40/57
ੜϞσϧͷԠ༻ • ఏҊख๏ : SRCNNʴੜϞσϧ • ࣮ͳ༧ʴΑΓߴͳωοτϫʔΫ͔ΒͷΞυόΠε • ΞϧΰϦζϜ •
SRCNNͷޡࠩʹࣝผثͷఆΛՃࢉ͢Δ 41/57
SRCNNʴGANͷޮՌ • SRCNNݻ༗ͷบ͕Ωϟϯηϧ͞ΕΔ • ਓͷ͔Βݟͨࣗવ͞ͷվળ • पಛੑͷվળ • ୯ମͷωοτϫʔΫͰࠔͳֶश͕Մೳ •
ωοτϫʔΫͷදݱྗͷݶքΛҾ͖ग़͢ 42/57
SRCNNʴGANͷ • ֶशʹ͕͔͔࣌ؒ͘͢͝Δ • ࣝผثͷֶशͷ΄͏͕ॏ͍ • ࣝผثͷஅͰੜث͕ߟ͑͜ΉͷͰऩଋͮ͠Β͍ • ࣝผثͷੑೳͰը࣭ͷ͕ܾ·Δ •
ղ૾ʹ͔͔Δ࣌ؒΛֶशʹసՇ͍ͯ͠Δ 43/57
SRCNNʴGANͷޮՌ 44/57
SRCNNʴGANͷޮՌ 45/57
SRCNNʴGANͷ෭࡞༻ • ߴपΛେ෯ʹΔͨΊɺϦοϓϧ͕ൃੜ͍͢͠ • ϦοϓϧܰݮʹࣝผثʹϦοϓϧΛݟഁΒͤ͞Δ • ࣝผثੜثΑΓݡ͘͢Δ • ࣝผثֶशϑΣʔζʹ͔͠ΘΕͳ͍ •
ࣝผثͷॲཧ͕ͯ͘ղ૾ॲཧʹແؔ 46/57
ͱԠ༻ 47/57
SRCNNͷ • ωοτϫʔΫ͕ಛఆͷλεΫɺը૾δϟϯϧʹґଘ͢Δ • ΠϥετͰֶशͨ͠ωοτϫʔΫΛࣸਅͰ͏ͱഁ͢Δ • ը૾δϟϯϧ͝ͱʹωοτϫʔΫΛมߋ͢Δඞཁ͋Δ 48/57
SRCNNͷ • ΠϥετϨʔγϣϯͱࣸਅͷҧ͍ • Πϥετཧঢ়ଶͷը૾Λ༻ҙ͢Δͷ͕ඇৗʹ༰қ • ͦͷͨΊSRCNNͷαϯϓϧը૾Πϥετ͕ଟ͍ • ཧͷը૾ΛࡱӨͰ͖ΔΧϝϥ࣮ࡏ͠ͳ͍ 49/57
ࣸਅͷԠ༻ • ཧͷࣸਅը૾࡞ • ΧϝϥϝʔΧʔͰͳ͚Εແཧ • झຯͰΔ͜ͱͰͳ͍ • ࣗఘΊͨ 50/57
ࣸਅͷԠ༻ • ཧը૾ΛྼԽͤͯ͞ղ૾લը૾ͱ͢Δ • ཧը૾Λղ૾લͷը૾ʹม͢Δ • JPEGͰྼԽͤ͞Δ • ϊΠζΛՃ͢Δ 51/57
ࣸਅͷԠ༻ • पಛੑΛσδλϧϑΟϧλͰྼԽͤ͞Δ • ϨϯζͳͲΧϝϥͷಛੑʹґଘ͢Δ • ղ૾͍ͨ͠ΧϝϥͷϨϯζಛੑΛܭଌ͢Δ • ଌఆͨ͠ಛੑΛσδλϧϑΟϧλͰ࠶ݱ͢Δ •
ۚଐεϦοτࡱӨʁ • ϗϫΠτϊΠζࡱӨʁ 52/57
ੑೳධՁ 53/57
ൃදख๏ͷੑೳධՁ 54/57
ൃදख๏ͷੑೳධՁ • ը࣭ධՁʹPSNR͕Α͘ΘΕΔ • ࠷େըૉʹରͯ͠ޡ͕ࠩͲΕ͙Β͍͋Δ͔ • ͕େ͖͍΄Ͳը࣭͕Α͍ • • 55/57
ൃදख๏ͷੑೳධՁ • SRCNN+GANఆྔతͳੑೳత͕ѱ͍ • SRCNN+GANੜϞσϧͳͷͰৄࡉ Ͷͭ 56/57
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ Կ͔࣭ʁ 57/57