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
機械学習勉強会09 2層フィードフォワードニューラルネット/MLStudy09
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
hachiilcane
March 03, 2022
Technology
0
69
機械学習勉強会09 2層フィードフォワードニューラルネット/MLStudy09
機械学習勉強会09 2層フィードフォワードニューラルネット
hachiilcane
March 03, 2022
Tweet
Share
More Decks by hachiilcane
See All by hachiilcane
機械学習勉強会01 1次関数での回帰分析/MLStudy01
hachiilcane
0
60
機械学習勉強会02 多項式近似と最小二乗法による推定/MLStudy02
hachiilcane
0
77
機械学習勉強会03 最急降下法/MLStudy03
hachiilcane
0
37
機械学習勉強会04 偏微分と連鎖律/MLStudy04
hachiilcane
0
41
機械学習勉強会05 パーセプトロン/MLStudy05
hachiilcane
0
41
機械学習勉強会06 ロジスティック回帰/MLStudy06
hachiilcane
0
56
機械学習勉強会07 ROC曲線/MLStudy07
hachiilcane
0
39
機械学習勉強会08 2次元入力3クラス分類/MLStudy08
hachiilcane
0
66
WPF勉強会 第1回 動的レイアウト/WPFStudy1
hachiilcane
0
180
Other Decks in Technology
See All in Technology
AIと新時代を切り拓く。これからのSREとメルカリIBISの挑戦
0gm
0
770
Context Engineeringの取り組み
nutslove
0
280
usermode linux without MMU - fosdem2026 kernel devroom
thehajime
0
220
20260204_Midosuji_Tech
takuyay0ne
0
110
Context Engineeringが企業で不可欠になる理由
hirosatogamo
PRO
3
410
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
67k
月間数億レコードのアクセスログ基盤を無停止・低コストでAWS移行せよ!アプリケーションエンジニアのSREチャレンジ💪
miyamu
0
800
Bill One急成長の舞台裏 開発組織が直面した失敗と教訓
sansantech
PRO
1
300
We Built for Predictability; The Workloads Didn’t Care
stahnma
0
130
GitHub Issue Templates + Coding Agentで簡単みんなでIaC/Easy IaC for Everyone with GitHub Issue Templates + Coding Agent
aeonpeople
1
180
こんなところでも(地味に)活躍するImage Modeさんを知ってるかい?- Image Mode for OpenShift -
tsukaman
0
100
クレジットカード決済基盤を支えるSRE - 厳格な監査とSRE運用の両立 (SRE Kaigi 2026)
capytan
6
2.6k
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
200
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2k
For a Future-Friendly Web
brad_frost
182
10k
Fireside Chat
paigeccino
41
3.8k
The SEO Collaboration Effect
kristinabergwall1
0
350
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
120
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
150
How to Think Like a Performance Engineer
csswizardry
28
2.4k
Code Review Best Practice
trishagee
74
20k
Transcript
2ϑΟʔυϑΥϫʔ υχϡʔϥϧωοτ χϡʔϥϧωοτϫʔΫͷجૅ @hachiilcane
χϡʔϩϯϞσϧ֮͑ͯ ·͢ʁ ࣠ࡧ γφϓε ిؾύϧε f = { 0 (w0
+ w1 x + w2 y ≤ 0) 1 (w0 + w1 x + w2 y > 0) x y ॏΈw1 ॏΈw2 f ग़ྗ ೖྗ ೖྗ 1 ͍ͭ1ͷ μϛʔೖྗ ॏΈw0 ೖྗۭؒΛઢͰ ͚Δͱ͍͏ػೳ
χϡʔϩϯϞσϧΛ֦ு ͢Δ χϡʔϩϯϞσϧɺD࣍ݩͷೖྗۭؒΛD-1 ࣍ݩͷฏ໘ʢͷΑ͏ͳۭؒʣͰ2ͭʹ͚Δಇ ͖͕͋ͬͨ 2ͭʁ ͰχϡʔϩϯϞσϧΛͭͳ͛ͨΒͲ͏ ͳΔʁ ͬͱෳࡶʹ͚ΒΕΔͷͰʁ χϡʔϩϯϞσϧΛͭͳ͛ͯதؒΛ࡞ͬͨͷ
͕χϡʔϥϧωοτϫʔΫ
ࠓճֶͿ༰ χϡʔϥϧωοτϫʔΫͷҰ൪؆୯ͳܗɺ2ͷ ϑΟʔυϑΥϫʔυχϡʔϥϧωοτΛֶͿ લճͱಉ͘͡ɺΔ͜ͱ2ೖྗ3ΫϥεྨͰ ͕͢Ϟσϧͷ࡞Γํ͕ҧ͏͚ͩ Λ͢͜ͱͰɺΑΓෳࡶͳܗͰ͚Δ͜ͱ͕Ͱ͖ Δͱ͍͏ΞΠσΟΞΛΔ ඍͱ͍͏ݴ༿Λ͓ͬͯ͜͏
લճͷ෮शɿϩδεςΟο Ϋճؼͷ2ೖྗ3Ϋϥεྨ x1 x2 a0 ग़ྗ ೖྗ ೖྗ x0 ͍ͭ1ͷ
μϛʔೖྗ w00 ೖྗ૯ a1 a2 w01 w02 w20 w21 w22 y0 = exp(a0 ) ∑K−1 k=0 exp(ak ) → P(t = 0|x) y1 = exp(a1 ) ∑K−1 k=0 exp(ak ) → P(t = 1|x) y2 = exp(a2 ) ∑K−1 k=0 exp(ak ) → P(t = 2|x) a0 = ∑2 i=0 w0i xi
2ϑΟʔυϑΥϫʔυχϡʔϥ ϧωοτͷ2ೖྗ3Ϋϥεྨ த͕ؒՃ͞Ε͚ͨͩʂ 3ʹݟ͑Δ͚ͲɺॏΈύϥϝʔλ͕͋Δ͚ͩΛ͑ͯ2ͱ͍͏߹͕ଟ͍ x1 x2 a0 ग़ྗʢ2ʣ x0 όΠΞε߲
w00 தؒʢ1ʣ w01 w02 v20 v21 v22 P(t = 0|x) y0 b1 z1 b2 z2 z0 a1 y1 a2 y2 ೖྗ v00 v01 v02 = 1 = 1 όΠΞε߲ t0 t1 t2 P(t = 1|x) P(t = 2|x) D + 1 M + 1 K ؙͷࠨ͕ೖྗ૯ɺӈ͕ͦΕ Λ׆ੑԽؔʹ௨ͨ͠ ؙͷࠨ͕ೖྗ૯ɺӈ͕ͦΕΛ ιϑτϚοΫεؔʹ௨ͨ͠
׆ੑԽؔ தؒͷೖྗ૯bγάϞΠυؔΛ ௨ͯ͠ग़ྗzΛ࡞Δ͕ɺҰൠతʹγά ϞΠυؔҎ֎ͷؔΛ͏͜ͱ͋Δ ೖྗ૯͔Βग़ྗΛܾఆ͢ΔͳΜΒ͔ͷ ؔΛ׆ੑԽؔͱݺͿɻ͜͜Ͱh()Ͱ දݱ͢Δ
Ϟσϧͷࣜͷ֬ೝ h()ͱΓ͋͑ͣγάϞΠυؔͱ͢Δ தؒͷೖྗ૯ɿbj = ∑D i=0 wji xi தؒͷग़ྗɿzj =
h(bj ) ग़ྗͷೖྗ૯ɿak = ∑M j=0 vkj zj ग़ྗͷग़ྗɿyk = exp(ak ) ∑K−1 l=0 exp(al ) = exp(ak ) u ೖྗ࣍ݩ:Dɺதؒͷχϡʔϩϯͷ:Mɺग़ྗ࣍ݩ:K b = wx b0 b1 b2 = w00 w01 w02 w10 w11 w12 w20 w21 w22 x0 x1 x2 ϕΫτϧදه͢ΔͳΒ͜Μͳ͔Μ͡ʢҰ෦͚ͩʣ
ਤͱࣜΛηοτͰ֬ೝ x1 x2 a0 ग़ྗʢ2ʣ x0 όΠΞε߲ w00 தؒʢ1ʣ w01
w02 v20 v21 v22 P(t = 0|x) y0 b1 z1 b2 z2 z0 a1 y1 a2 y2 ೖྗ v00 v01 v02 = 1 = 1 όΠΞε߲ t0 t1 t2 P(t = 1|x) P(t = 2|x) D + 1 M + 1 K ೖྗ࣍ݩ:Dɺதؒͷχϡʔϩϯͷ:Mɺग़ྗ࣍ݩ:K bj = ∑D i=0 wji xi zj = h(bj ) ak = ∑M j=0 vkj zj yk = exp(ak ) ∑K−1 l=0 exp(al )
ޡࠩؔʁ ͜ͷ2ϑΟʔυϑΥϫʔυχϡʔϥϧωοτʹ3Ϋϥεྨ Λղ͔ͤΔ͜ͱΛߟ͑Δ ྨͳͷͰɺޡࠩؔલճͱಉ͘͡ฏۉަࠩϔϯτϩϐʔ ޡࠩΛ͏ yͷͱ͜Ζ͕݁ہલճͱಉ͡ͳͷͰɺࣜݟͨಉ͡ɻͨ ͩɺύϥϝʔλw͚ͩͰͳ͘v͋Δͱ͜Ζ͕ҧ͏ E(w, v) =
− 1 N N−1 ∑ n=0 K−1 ∑ k=0 tnk log ynk wͱvyͷࣜͷͳ͔ʹؚ·Ε ͍ͯΔ
͋ͱภඍͰ͖Εޯ ๏ͰֶशͰ͖Δʁ ·͞ʹͦͷͱ͓ΓɻޯϕΫτϧͷٯํ ʢ୩ఈํʣʹύϥϝʔλΛগͣͭ͠ ม͍͚͑ͯOKʂ χϡʔϥϧωοτͱݴͬͯ݁ہجૅ ͓Μͳ͡ͳͷͩ
ͰͲ͏ͬͯภඍ͢ Δͷʁ େม͚ͩͲɺஸೡʹ͍͚ͬͯภඍ Ͱ͖Δ ภඍΛಋग़ͯ͠ޯ๏Λద༻͍ͯ͘͠ ͱɺࣗવʹޡࠩٯ๏ʢόοΫϓϩ ύήʔγϣϯʣͱ͍͏χϡʔϥϧωοτ ϫʔΫʹ͓͚Δ༗໊ͳֶशํ๏͕ಋग़ ͞ΕΔ
ภඍͳΜ͔ͨ͘͠ͳ ͍ʂͱ͍͏߹ ඍ๏Λ͏ͱ͍͏ख͋Δɻ ඍͱ͖ͷ͜ͱͰɺ͋Δw*ͷ͖ΛಘΔʹɺ͜ͷਤͰ͍͏hΛͲΜͲΜখ ͍͚ͯۙ͘͞͠ࣅతʹٻΊΒΕΔɻ ภඍͩͬͨΒɺண͢ΔมҎ֎ݻఆʹ͢Δͱ͍͏ͷඍ๏Ͱ͓ͳ͡ɻ ͜ΕͰภඍಋؔΛಋग़͠ͳͯ͋͘ΔͷޯϕΫτϧΛͱΊΒΕΔɻ ඍͷఆٛɿ d dx
f(x) = lim h→0 f(x + h) − f(x) h E(w) w w* w* + h w* − h 2h ͲΜͲΜhΛখ͍͚ͯ͘͞͠ɺ͕ͯw*Ͱ ͷઢʹۙ͘ɻͦΕ͢ͳΘ͖ͪͰ͋Γɺͦ ͷॠؒͷมԽͰ͋ΓɺඍͰ͋Δɻඍͷ ఆٛࣜͱ͍͍ͩͨಉ͜͡ͱΛݴ͍ͬͯΔɻ ∂E ∂w | w=w* ≃ E(w* + h) − E(w* − h) 2h
ָ͔ͩΒ͍ͭඍ ๏Ͱ͍͍Μ͡ΌͶʁ ܭࢉεϐʔυ͕͍ͱ͍͏͕ܽ͋ΔɻͳͥͳΒɺ ઌ΄ͲͷࣜΛݟΕΘ͔Δ௨Γɺ͖ΛٻΊΔͷʹ E(w,v)ͷΛ2ճܭࢉ͠ͳ͍ͱ͍͚ͳ͍͔Βɻ ಋ͕ؔ͋Εɺ1ճͷܭࢉͰٻΊΒΕΔɻ ϓϩάϥϚͳΒΘ͔Δͱࢥ͏͚Ͳɺͱࢠͷ ͕ͷ͍͢͝খ͞ͳʹͳΔͷͰɺͪΌΜͱ͍Ζ ͍Ζߟ͑ͳ͍ͱؙΊޡ͕͍ࠩ͢͜͝ͱʹͳΔɻ
͡Ό͍͋ͭඍ๏Λ ͏ͷʁ ·ͩϞσϧͷ͕ࣜݻ·ͬͯͳͯ͘ɺภඍಋؔΛಋग़ ͢Δલʹͬ͟ͱֶशͰ͖Δ͔ײ͡Λ௫Έ͍ͨ࣌ɻ ภඍಋؔͷಋग़͕͍͋ͬͯΔ͔ͷݕূʹ͑Δɻ ·͋ɺֶशͷϥΠϒϥϦ͑ͦͦภඍ͠ͳͯ͘ ͍͍͜ͱ͕ଟ͍͚Ͳ……ɻ൚༻తͳߟ͑ํͳͷͰͳʹ ͔ͷʹ͔ͨͭ͠Εͳ͍ɻ ϥΠϒϥϦͷͳ͔Ͱඍ๏Λ͍ͬͯΔέʔε ͋Δ͔͠Εͳ͍ʢ͠ͳ͍͔͠Εͳ͍ʣɻ
ޡࠩٯ๏֓ཁ ೖྗΛೖΕͯग़ྗΛಘΔ ֤χϡʔϩϯͰͷޡࠩΛಘΔ ॏΈΛߋ৽͢Δ δ(2) k = yk − tk
←ୈ2ͷޡࠩ δ(1) j = h′ (bj ) K−1 ∑ k=0 vkj δ(2) k ←ୈ1ͷޡࠩ vkj := vkj − αδ(2) k zj /N wji := wji − αδ(1) j xi /N bj = ∑D i=0 wji xi zj = h(bj ) ak = ∑M j=0 vkj zj yk = exp(ak ) ∑K−1 l=0 exp(al ) x1 x2 a0 ग़ྗʢ2ʣ x0 w00 தؒʢ1ʣ w01 w02 v20 v21 v22 y0 b1 z1 b2 z2 z0 a1 y1 a2 y2 ೖྗ v00 v01 v02 = 1 = 1 t0 t1 t2 D + 1 M + 1 K δ(1) j δ(2) k
՝ 2ϑΟʔυϑΥϫʔυχϡʔϥϧωοτΛ࣮ͯ͠ΈΑ͏ TensorFlow·ͨKerasϕʔεָ͕ɻ͕࣌ؒ͋ΔͳΒ scipy.optimizeͷminimize()Ͱ࣮ͯ͠ΈΑ͏ɻ ޡࠩؔͱॏΈύϥϝʔλw, vͷֶशաఔͰͷมԽΛάϥ ϑԽͯ͠ΈΑ͏ɻ ӡ͕ྑ͚Εʢѱ͚ΕʁʣҌʹΓ্͛Δ༷ࢠ͕ ݟΒΕΔ͔ɻ
ࢀߟจݙ தҪ ӻ࢘ʮITΤϯδχΞͷͨΊͷػցֶशཧೖ ʯٕज़ධࣾ, 2015 ҏ౻ ਅʮPythonͰಈֶ͔ͯ͠Ϳʂ͋ͨΒ͍͠ػց ֶशͷڭՊॻʯᠳӭࣾ, 2018 ༔ีʮৄղ
σΟʔϓϥʔχϯά TensorFlowɾ KerasʹΑΔ࣌ܥྻσʔλॲཧʯϚΠφϏग़൛, 2017