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
Model Pollution
hschwentner
1
190
ててべんす独演会〜Flowの全てを語ります〜
tbsten
1
220
そのpreloadは必要?見過ごされたpreloadが技術的負債として爆発した日
mugitti9
2
3.1k
CSC509 Lecture 01
javiergs
PRO
1
440
Swift Concurrency - 状態監視の罠
objectiveaudio
2
490
詳しくない分野でのVibe Codingで困ったことと学び/vibe-coding-in-unfamiliar-area
shibayu36
3
4.7k
Goで実践するドメイン駆動開発 AIと歩み始めた新規プロダクト開発の現在地
imkaoru
4
770
Cursorハンズオン実践!
eltociear
1
290
Go Conference 2025: Goで体感するMultipath TCP ― Go 1.24 時代の MPTCP Listener を理解する
takehaya
7
1.6k
The Flutter Journey of Building a Live Streaming App — With a Side of Performance Tuning
u503
1
100
なぜGoのジェネリクスはこの形なのか? Featherweight Goが明かす設計の核心
ryotaros
7
1k
アメ車でサンノゼを走ってきたよ!
s_shimotori
0
200
Featured
See All Featured
It's Worth the Effort
3n
187
28k
Context Engineering - Making Every Token Count
addyosmani
5
200
Music & Morning Musume
bryan
46
6.8k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Become a Pro
speakerdeck
PRO
29
5.5k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
610
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
45
2.5k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
Why Our Code Smells
bkeepers
PRO
339
57k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Producing Creativity
orderedlist
PRO
347
40k
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