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
PHPでニューラルネットを作った話
Search
NIIKURA Ryota
October 07, 2017
Technology
2
3.8k
PHPでニューラルネットを作った話
PHPカンファレンス2017 発表資料
NIIKURA Ryota
October 07, 2017
Tweet
Share
More Decks by NIIKURA Ryota
See All by NIIKURA Ryota
SwooleでLaravelを高速化してみる
niisantokyo
0
4.2k
新人さんでもテストを書くべきだっていう話
niisantokyo
1
770
一次元畳み込みフィルターによる音声データのオートエンコーダ
niisantokyo
1
2.8k
タグ付けデプロイの話
niisantokyo
1
920
TensorFlow.jsに保存機能が実装された件
niisantokyo
1
260
PHP-FPMのコンテナログ2重出力問題
niisantokyo
0
190
Laradockの紹介
niisantokyo
0
940
deeplearnjsの紹介
niisantokyo
1
210
ひたすら楽して、PHPアプリをコンテナ運用の縮小版
niisantokyo
0
760
Other Decks in Technology
See All in Technology
PHPカンファレンス小田原2024
ysknsid25
3
660
WebアプリケーションにおけるPDOの使い方入門 / phpcon odawara 2024
meihei3
2
430
普段有償でサポート業務をしているCSAが技術知見を無料で公開する理由
07jp27
1
640
SPI原点回帰論:事業課題とFour Keysの結節点を見出す実践的ソフトウェアプロセス改善 / DevOpsDays Tokyo 2024
visional_engineering_and_design
4
1.6k
Vertex AI を中心に 生成AIのアップデートを共有します
kaz1437
0
140
SREとその組織類型
tatsuo48
8
1.5k
社内勉強会運営のコツ
senoo
6
1.1k
Janus
bkuhlmann
1
490
日本におけるデータエンジニアリングのこれまでとこれから
foursue
11
2.4k
Oracle Cloud Infrastructure:2024年4月度サービス・アップデート
oracle4engineer
PRO
1
110
マルチアカウント環境への発見的統制の導入
ch1aki
1
1.3k
反実仮想機械学習とは何か
usaito
PRO
7
2.2k
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
186
16k
Rails Girls Zürich Keynote
gr2m
91
13k
Mobile First: as difficult as doing things right
swwweet
216
8.6k
The Mythical Team-Month
searls
215
42k
Imperfection Machines: The Place of Print at Facebook
scottboms
258
12k
Infographics Made Easy
chrislema
237
18k
Why Our Code Smells
bkeepers
PRO
331
56k
Git: the NoSQL Database
bkeepers
PRO
422
63k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
12
1.5k
The Power of CSS Pseudo Elements
geoffreycrofte
59
5k
The Straight Up "How To Draw Better" Workshop
denniskardys
227
130k
Docker and Python
trallard
33
2.7k
Transcript
1)1Ͱཧղ͢Δχϡʔϥϧ ωοτϫʔΫΛͬͨ ػցֶश !OJJTBOUPLZP ৽ྋଠ
OJJTBOUPLZP w ΤϯδχΞྺ͘Β͍ w ݩಓ࿏ࣄ Χολʔ w 1)1FSྺΤϯδχΞྺ w
ͨ·ʹ2JJUBʹهࣄΛ্͛ͨΓ͍ͯ͠Δ w Α͘ίϯςφͷΛ͢Δਓ
ࠓճͷςʔϚɺχϡʔ ϥϧωοτϫʔΫΛͬ ͨػցֶशΛɺ1)1Ͱ࣮ ͪ͠ΌͬͨΈ͍ͨͳ
͓ॻ͖ w ߨԋͷత w ਓೳͱػցֶश w 1)1ͰػցֶशܥΛ࡞Δ w ࡞ֶͬͨशܥΛಈ͔ͯ͠ΈΔ w
·ͱΊ
͓ॻ͖ w ߨԋͷత w ਓೳͱػցֶश w 1)1ͰػցֶशܥΛ࡞Δ w ࡞ֶͬͨशܥΛಈ͔ͯ͠ΈΔ w
·ͱΊ
1)1 w શੈքͷύϒϦοΫͳ8FCαΠτͷҎ্͕1)1 Ͱॻ͔Ε͍ͯΔ ͑ʁXPSEQSFTT ૉΒ͍͠1)1ΞϓϦͰ͢ΑͶ w ͭ·ΓɺੈքதͰΓऔΓ͞Ε͍ͯΔσʔλͷଟ͘ ͕ɺ1)1Λհ͍ͯ͠Δ
w 1)1ΤϯδχΞͷਓޱͱͯଟ͍ (PPHMFઌੜ Ͱݕࡧ͢Δͱɺຊ͚ͩͰສਓΛ͑ΔΒ͍͠
1)1ք۾େྔͷσʔλͱͦΕΛѻ͏େྔͷ ΤϯδχΞΛแ͍ͯ͠Δ 1)1ɺେྔͷσʔλͱਓһΛඞཁͱ͢Δ ػցֶशͱੑͷߴ͍ྖҬͰ͋Δ
࣮ ࠓճͷΧϯϑΝϨϯεͰͷػցֶशωλͷൃද Θ͔ͣ̍݅ ͭ·Γίί
࣮ ༗໊ॴͷϑϨʔϜϫʔΫ͕1ZUIPO ҰԠɺ5FOTPS'MPXΛ1)1Ͱಈ͔ͦ͏Έ͍ͨͳͷ͕͋ Δ͚Ͳɺ͍ͯ͠ͳ͍
ػցֶशͷࢀೖোน w 1ZUIPOΘ͔ΒΜ w ֶΘ͔ΒΜ w ࣮Θ͔ΒΜ w Θ͔Βͳ͍ͷ৮Δͷ͕ා͍ͷͰɺΖ͏ͱࢥ͑ͳ ͍
ߨԋͷత w ਓೳػցֶश͕Կͳͷ͔ΛՄೳͳݶΓΘ͔Γ ͘͢ฏқͳݴ༿Ͱઆ໌Ͱ͖ΔΑ͏ʹ͍ͨ͠ w 1)1ͰχϡʔϥϧωοτϫʔΫΛͬͨػցֶशΛ Πν͔Β࣮͠ɺͦͷߟ͑ํͱڍಈΛཧղ͢Δ w ػցֶशͰԿ͕Ͱ͖Δ͔͕Θ͔ͬͨ ͱࢥ͏
ͷͰɺ ػցֶशք۾ʹେྔͷ1)1FS͕ྲྀೖ͢Δ w ػցֶशք۾ʹܹΛى͜͢
͓ॻ͖ w ߨԋͷత w ਓೳͱػցֶश w 1)1ͰػցֶशܥΛ࡞Δ w ࡞ֶͬͨशܥΛಈ͔ͯ͠ΈΔ w
·ͱΊ
ਓೳ w ਓؒͷΔ͜ͱΛػցʹಉ͡Α͏ʹΒͤΑ͏ͱ͍ ͏ࢼΈ w ඬ͏ສೳײͱະདྷײ w ݱ࣮ʹ࡞ΒΕ͍ͯΔͷԿΒ͔ͷೖྗใΛݩʹ༧ ଌ͢ΔͳΓྨ͢ΔͳΓ͢Δஔ w
ͭ·Γؔ
Կॲ͔ͰݟͨΑ͏ͳήʔϜͷʮ"*ʯ ࣗͷମྗ ؒͷମྗ ఢͷঢ়ଶ ࡞ઓɿ໋Λ େࣄʹ ߈ܸ͢Δ ͜͜Λܾఆ͢ΔΞϧΰϦζϜ͕ "*ͷ֩ʹͳ͍ͬͯΔ
ػցֶश w ػց͕ਓؒͷΑ͏ʹࣄΛֶΜͰ͍͖ਓೳ͕ ͢Δ͜ͱ w ඬ͏ສೳײͱະདྷײ w ͔͠͠ɺਓೳؔͩͬͨ w ͭ·Γɺؔͷࣗಈௐઅ
ػցֶशͷํ๏ͱత ೖྗ ग़ྗ ೖྗ ग़ྗ ೖྗ ग़ྗ طͷσʔλ܈ ؔ
๏ଇ ೖྗ ग़ྗ ༧ଌ ๏ଇΛൃݟ͢Δ͜ͱʂ
ཧՊͷ࣮ݧͱਓೳ ྫ͑ɺ͜Μͳײ͡ͷ࣮ݧσʔλ͕༗ͬͨͱ͢Δ
ཧՊͷ࣮ݧͱਓೳ ཧՊͷ࣮ݧͩͱखͰ͍͍ײ͡ͷઢΛҾ͘
ཧՊͷ࣮ݧͱਓೳ ਓೳతͳΞϓϩʔνͩͱɺ·ͣɺదͳؔΛ࡞Δ
ཧՊͷ࣮ݧͱਓೳ ಘΒΕ͍ͯΔσʔλΛͱʹؔΛௐઅ͢Δ
ػցֶशͷඞཁੑ ʁ ʁ Θ͔Δ͔ Θ͔Δؾ͕͠ͳ͍ w ೖྗύϥϝʔλٴͼग़ྗύϥϝʔ λͷ͕গͳ͚Εɺ๏ଇͷ ൃݟͦΜͳʹ͘͠ͳ͞
ͦ͏ w ύϥϝʔλ͕ଟ͘ͳΔͱɺ ๏ଇΛද͕ؔ͢ෳࡶԽ͠ɺ ༧ଌࠔʹͳΔ w ػցʹࣗಈతʹؔܗΛ࡞ͬ ͯΒͬͨ΄͏ָ͕ʹͳΔ
χϡʔϥϧωοτ w ਓؒͷͷಈ͖Λ฿͠ ͯ࡞ΒΕͨʮදݱྗͷߴ ͍ʯؔ w ӈਤͷΑ͏ʹز͔ͭͷϢ χοτΛଂͨ͠ز͔ͭ ͷʹΑͬͯΓཱͭ w
ͱΓ͋͑ͣɺௐઅ͕͖͖ ͍͢ਓೳ͚ͷؔ ͩͱࢥ͍͍͑ JOQVU PVUQVU O χϡʔϥϧωοτ
͜͜·Ͱ·ͱΊ w ਓೳؔ w ػցֶशؔΛࣗಈͰௐઅ͢Δػೳ w χϡʔϥϧωοτࣗಈௐઅ͍ؔ͢͠ w ػցֶशͷతσʔλΛͱʹʮ๏ଇʯΛൃݟ ͢Δ͜ͱ
͓ॻ͖ w ߨԋͷత w ਓೳͱػցֶश w 1)1ͰػցֶशܥΛ࡞Δ w ࡞ֶͬͨशܥΛಈ͔ͯ͠ΈΔ w
·ͱΊ
࣮ํ w 1)1Ͱॻ͘ w ֎෦ϥΠϒϥϦۃྗΘͳ͍ 1)1.-ΒΜ͔ͬͨ͠ɻɻɻ w σʔλΛͱʹௐઅՄೳͳ ֶशͰ͖Δ
ؔ ਓೳ Λ࡞Δ w χϡʔϥϧωοτϞσϧΛ͏
࣮ࡍʹ࡞ͬͨͭ IUUQTHJUIVCDPNOJJTBOUPLZPQIQOO ґଘੑϓϩάϨεόʔΛ ग़͢ϥΠϒϥϦ͚ͩʂ
QIQOOͷ༻ํ๏ ˑͱΓ͋͑ͣʮؔʯͱͯͬͯ͠ΈΔ χϡʔϥϧωοτϫʔΫͷ֎ Λ࡞Δ ωοτϫʔΫΛߏ͢ΔΛ Ճ͍ͯ͘͠ ඪ४ೖྗ͔ΒಘΒΕͨύϥϝʔ λΛݩʹɺҙͷग़ྗΛฦ͢
˞͜ͷؔͳΜͷ ௐೖΕ͍ͯͳ͍ ͷͰɺग़ྗʹԿ͔ҙ ຯ͕͋ΔΘ͚Ͱͳ ͍ ˞औΓग़͍ͨ͠ʹ Λࢦఆ͢Δͱɺؔ ͷ݁Ռ͕औಘͰ͖ Δ
QIQOOͷ༻ํ๏ ˑطͷσʔληοτΛֶͬͯशͯ͠ΈΔ σʔληοτͷऔಘ ෮ճ ֶश࣌ͷύϥϝʔλͷมಈ෯ ͔ͳΓॏཁ σʔληοτΛͬͯɺ ωοτϫʔΫΛमਖ਼ ֶशͨ͠ঢ়ଶΛϑΝΠ ϧʹอଘ͢Δ
None
ग़ྗ͞ΕͨϑΝΠϧ γϦΞϥΠζԽͨ͠ ΦϒδΣΫτͷմ ϑΝΠϧͷେ෦ɺ̎࣍ݩྻͷΛද͍ͯ͠Δ ػցֶशʹ͓͍ͯɺ͜ͷ͕ௐઅ͞ΕΔ
QIQOOͷ༻๏ ˑֶशޙͷؔΛͬͯΈΔ
͓ॻ͖ w ߨԋͷత w ਓೳͱػցֶश w 1)1ͰػցֶशܥΛ࡞Δ w ࡞ֶͬͨशܥΛಈ͔ͯ͠ΈΔ w
·ͱΊ
໌֬ͳత͕ඞཁ w ػցֶशͷతɺͭ·Δͱ͜Ζ๏ଇͷൃݟͰ͋Δ w ԿΛೖྗʹͯ͠ԿΛग़ྗʹ͢Δͷ͔ɺͱ͍͏ઃ ఆ͕ඞཁʹͳΔ w ๏ଇΛൃݟ͢ΔͨΊͷσʔλ ೖྗͱग़ྗͷηο τ
͕͋Δఔͷݸඞཁ
ྖҬఆ ࠲ඪΛࢦఆͨ͠ͱ͖ɺͦͷ࠲ඪ͕͋ΔྖҬʹ͋Δ͔ͳ ͍͔Λఆ͢Δ ࠓճυʔφπܕͷྖҬΛରʹͯ͠ΈΔ w ೖྗ ࠨਤͷ Y Z ࠲ඪͷ
w ग़ྗ ྖҬʹೖ͍ͬͯΕ ͦ ͏Ͱͳ͚Ε
ྖҬఆ ૣؔΛΜͰΈΔ
ྖҬఆ σʔλΛ༻ҙ͢Δ ˞զʑਖ਼ղͷܗΛ͍ͬͯΔ͕ɺઌఔΜͩωοτϫʔ ΫʹͦͷܗΛʮΒͳ͍ʯ
ྖҬఆ ಘΒΕͨσʔληοτΛݩʹɺؔΛௐઅ͢Δ ͜͜ͰɺύϥϝʔλҎ ԼͷҙຯΛ࣋ͭ UFTU͏·͘ௐઅ͕ਐΜͰ͍Δ ͔Λผ͢ΔͨΊͷςετσʔ λ CBUDI@TJ[F͍ͭ͘σʔλΛൺ ֱͨ͠Βɺ࣮ࡍʹௐઅΛ࣮ࢪ͢ Δ͔
ྖҬఆ ͔ؔΒͷग़ྗʹ͍ͭͯɺେࡶʹɺग़ྗ͕ ͷͰ͋ͬ ͨΒྖҬɺͷͰ͋ͬͨΒྖҬ֎Ͱ͋Δͱ͢Δ
ྖҬఆ ࣮ߦͯ͠ΈΔ తதྑ͞ ͛ͳײ͕͢͡ Δ ޡࠩগͳ͘ ͳ͍ͬͯΔ
ྖҬఆ ྖҬͱఆ͍ͯ͠Δ ෦Λਤࣔͤͯ͞Έͨɻ ֎प͕ͪΐͬͱΈग़ ͍ͯ͠Δ͔
࣌ܥྻσʔλͷ༧ଌ w ࣌ܥྻͰมԽ͢Δ ͷ༧ଌΛػցֶ शͰղ͍ͯΈΔ w גՁͱ͔'9ͷ νϟʔτ༧ଌͱ͔ʹ Ԡ༻Ͱ͖Δ͔͠Ε ͳ͍
࣌ܥྻσʔλͷ༧ଌ άϥϑͷ࣌ܥྻσʔλ͔ΒऔΓग़͠ɺͦ ͷσʔλΛͱʹɺ࣍ͷΛ༧ଌͯ͠ΈΔ ͜ͷσʔλΛͱʹ ͜ͷ෦Λ༧ଌ
࣌ܥྻσʔλͷ༧ଌ ݸͷ ࿈ଓͨ͠ ܥྻσʔλ ؔ ࣍ͷݸͷܥྻσʔλ
࣌ܥྻσʔλͷ༧ଌ ֶशܥͷੜ IUUQTHJTUHJUIVCDPNOJJTBOUPLZP DCGBDCEFCG
࣌ܥྻσʔλͷ༧ଌ ੨ɿ࣮ଌ ɿ༧ଌ
͓ॻ͖ w ߨԋͷత w ਓೳͱػցֶश w 1)1ͰػցֶशܥΛ࡞Δ w ࡞ֶͬͨशܥΛಈ͔ͯ͠ΈΔ w
·ͱΊ
σʔλઃܭͷॏཁੑ ઌͷ࣌ܥྻσʔλ͕ɺגՁͷνϟʔτͩͬͨͱ͢Δͱ
ֶश༰ͷ̎ͭͷΞϓϩʔν ݱࡏʹࢸΔ·ͰͷਪҠΛݩ ʹɺ࣍ͷঢ়ଶΛ༧ଌ͢Δ ۀ ैۀһ ൃߦגࣜ ܠؾ ֎෦ͷύϥϝʔ λʹΑΓɺ͜ͷ νϟʔτ͕ߏங
͞ΕΔ
ೖྗ ग़ྗ ೖྗ ग़ྗ ೖྗ ग़ྗ طͷσʔλ܈ ؔ ๏ଇ
ೖྗ ग़ྗ ༧ଌ w ػցֶशͷΓํࣗମɺΞ ϓϩʔνʹ͔͔ΘΒͣಉ͡ w طͷσʔλ܈͔Β๏ଇΛಋ ͖ग़͢ͷΈ w ؔ෦ɺೖྗBEE͞Ε Δɺग़ྗ͕ҧ͏͕ɺ֎ܗ มΘΒͳ͍
σʔλઃܭͷॏཁੑ w ػցֶशͷํ๏ɺͲͷΑ͏ͳೖྗɺͲͷΑ͏ͳग़ ྗͰ͋ͬͯɺ΄ͱΜͲมΘΒͳ͍ w Ұํɺσʔλͷઃܭ࣍ୈͰֶश༰ͷͭҙຯ͕େ ͖͘ҟΔ w ٻΊ͍ͯΔग़ྗ͕ͲͷΑ͏ͳҙຯΛ͔࣋ͭʹ͋Θͤ ͯɺσʔλઃܭΛ͢Δ͖
1)1FS͕উෛͰ͖ͦ ͏ͳྖҬ
ػցֶशͷෆࢥٞ ಥવֶश͕͏·͍͖࢝͘ΊΔ͜ͱ͕͋Δ ޡ͕ࠩ͘Β͍͠ ͔վળ͞Εͯͳ͍ ޡ͕ࠩΨϯΨϯվળ ͞Ε࢝ΊΔ
ػցֶशͷෆࢥٞ ؒҧ͍Λ͍ٙͨ͘ͳΔϨϕϧ ͔͠͠ɺͳ͔ͬͨɻɻɻ
ػցֶशͷෆࢥٞ ͏·͍͔͘ͳ͍͜ͱ͋Δ ճϧʔϓճͯ͠ɺతதࢭ·Γʂʂ ͳΜͯͬͨ͜ɻɻɻ
ػցֶशͷෆࢥٞ Լख͢ΔͱϝνϟΫνϟͳ͜ͱʹͳΔ ༷ࢠ͕͓͔͍͠ɻɻɻ
ʊਓਓਓਓਓਓʊ ʼɹಥવͷࢮɹʻ ʉ:?:?:?:?:ʉ ̍ ग़ྗ͕શ෦ʹͳͬͯΔ
·ͱΊ w ػցֶशσʔλ͔ΒԿΒ͔ͷ๏ଇΛಋ͖ग़͢ख๏ Ͱ͋Δ w χϡʔϥϧωοτϫʔΫΛͬͨػցֶशػߏΛ 1)1Ͱ࣮ͨ͠ w ػցֶशʹݩʹͳΔσʔλͷઃܭ͕େͰ͋Δ w
͏·͍͔͘ͳͯ͘୰͔ͳ͍
͝ਗ਼ௌ͋Γ͕ͱ͏͟͝ ͍·͢ʂ