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.9k
新人さんでもテストを書くべきだっていう話
niisantokyo
1
960
一次元畳み込みフィルターによる音声データのオートエンコーダ
niisantokyo
1
3.5k
タグ付けデプロイの話
niisantokyo
1
1.1k
TensorFlow.jsに保存機能が実装された件
niisantokyo
1
310
PHP-FPMのコンテナログ2重出力問題
niisantokyo
0
270
Laradockの紹介
niisantokyo
0
1k
deeplearnjsの紹介
niisantokyo
1
240
ひたすら楽して、PHPアプリをコンテナ運用の縮小版
niisantokyo
0
830
Other Decks in Technology
See All in Technology
5分でカオスエンジニアリングを分かった気になろう
pandayumi
0
260
普通のチームがスクラムを会得するたった一つの冴えたやり方 / the best way to scrum
okamototakuyasr2
0
110
現場で効くClaude Code ─ 最新動向と企業導入
takaakikakei
1
260
Android Audio: Beyond Winning On It
atsushieno
0
2.4k
Rustから学ぶ 非同期処理の仕組み
skanehira
1
150
Oracle Cloud Infrastructure IaaS 新機能アップデート 2025/06 - 2025/08
oracle4engineer
PRO
0
110
要件定義・デザインフェーズでもAIを活用して、コミュニケーションの密度を高める
kazukihayase
0
120
バイブスに「型」を!Kent Beckに学ぶ、AI時代のテスト駆動開発
amixedcolor
2
580
Snowflake Intelligenceにはこうやって立ち向かう!クラシルが考えるAI Readyなデータ基盤と活用のためのDataOps
gappy50
0
280
エンジニアリングマネージャーの成長の道筋とキャリア / Developers Summit 2025 KANSAI
daiksy
3
740
「その開発、認知負荷高すぎませんか?」Platform Engineeringで始める開発者体験カイゼン術
sansantech
PRO
2
320
開発者を支える Internal Developer Portal のイマとコレカラ / To-day and To-morrow of Internal Developer Portals: Supporting Developers
aoto
PRO
1
470
Featured
See All Featured
Code Reviewing Like a Champion
maltzj
525
40k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
Producing Creativity
orderedlist
PRO
347
40k
Unsuck your backbone
ammeep
671
58k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
810
4 Signs Your Business is Dying
shpigford
184
22k
How STYLIGHT went responsive
nonsquared
100
5.8k
KATA
mclloyd
32
14k
Optimizing for Happiness
mojombo
379
70k
Balancing Empowerment & Direction
lara
3
620
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
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
͏·͍͔͘ͳͯ͘୰͔ͳ͍
͝ਗ਼ௌ͋Γ͕ͱ͏͟͝ ͍·͢ʂ