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
22
Deep Learningと超解像
kmt-t
September 04, 2019
Tweet
Share
More Decks by kmt-t
See All by kmt-t
組込エンジニアのための深層学習
kmt_t
1
18
Design by Contractとホーア論理
kmt_t
0
37
GCPと機械学習
kmt_t
1
47
進化するART
kmt_t
0
24
Other Decks in Programming
See All in Programming
Web エンジニアが JavaScript で AI Agent を作る / JSConf JP 2025 sponsor session
izumin5210
4
1.6k
AsyncSequenceとAsyncStreamのプロポーザルを全部読む!!
s_shimotori
1
280
2026年向け会社紹介資料
misu
0
170
DartASTとその活用
sotaatos
2
130
Inside of Swift Export
giginet
PRO
1
560
Nitro v3
kazupon
2
300
Functional Calisthenics in Kotlin: Kotlinで「関数型エクササイズ」を実践しよう
lagenorhynque
0
130
仕様がそのままテストになる!Javaで始める振る舞い駆動開発
ohmori_yusuke
8
4k
自動テストのアーキテクチャとその理由ー大規模ゲーム開発の場合ー
segadevtech
2
990
CloudflareのSandbox SDKを試してみた
syumai
0
150
Verilator + Rust + gRPC と Efinix の RISC-V でAIアクセラレータをAIで作ってる話 RTLを語る会(18) 2025/11/08
ryuz88
0
360
Dive into Triton Internals
appleparan
0
490
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
192
56k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
320
Making Projects Easy
brettharned
120
6.5k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
Designing for humans not robots
tammielis
254
26k
Designing for Performance
lara
610
69k
Rails Girls Zürich Keynote
gr2m
95
14k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
GitHub's CSS Performance
jonrohan
1032
470k
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