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.9k
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.6k
新人さんでもテストを書くべきだっていう話
niisantokyo
1
840
一次元畳み込みフィルターによる音声データのオートエンコーダ
niisantokyo
1
3.2k
タグ付けデプロイの話
niisantokyo
1
1k
TensorFlow.jsに保存機能が実装された件
niisantokyo
1
290
PHP-FPMのコンテナログ2重出力問題
niisantokyo
0
230
Laradockの紹介
niisantokyo
0
970
deeplearnjsの紹介
niisantokyo
1
230
ひたすら楽して、PHPアプリをコンテナ運用の縮小版
niisantokyo
0
790
Other Decks in Technology
See All in Technology
BLADE: An Attempt to Automate Penetration Testing Using Autonomous AI Agents
bbrbbq
0
290
複雑なState管理からの脱却
sansantech
PRO
1
140
Lexical Analysis
shigashiyama
1
150
AWS Lambdaと歩んだ“サーバーレス”と今後 #lambda_10years
yoshidashingo
1
170
Can We Measure Developer Productivity?
ewolff
1
150
Why does continuous profiling matter to developers? #appdevelopercon
salaboy
0
180
【Startup CTO of the Year 2024 / Audience Award】アセンド取締役CTO 丹羽健
niwatakeru
0
950
OCI Security サービス 概要
oracle4engineer
PRO
0
6.5k
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
3.2k
ノーコードデータ分析ツールで体験する時系列データ分析超入門
negi111111
0
410
iOS/Androidで同じUI体験をネ イティブで作成する際に気をつ けたい落とし穴
fumiyasac0921
1
110
スクラム成熟度セルフチェックツールを作って得た学びとその活用法
coincheck_recruit
1
140
Featured
See All Featured
A Tale of Four Properties
chriscoyier
156
23k
Optimizing for Happiness
mojombo
376
70k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
25
1.8k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
410
Building Applications with DynamoDB
mza
90
6.1k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.2k
Agile that works and the tools we love
rasmusluckow
327
21k
BBQ
matthewcrist
85
9.3k
Navigating Team Friction
lara
183
14k
Faster Mobile Websites
deanohume
305
30k
Adopting Sorbet at Scale
ufuk
73
9.1k
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
͏·͍͔͘ͳͯ͘୰͔ͳ͍
͝ਗ਼ௌ͋Γ͕ͱ͏͟͝ ͍·͢ʂ