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
機械学習勉強会03 最急降下法/MLStudy03
Search
hachiilcane
March 03, 2022
Technology
40
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
機械学習勉強会03 最急降下法/MLStudy03
機械学習勉強会03 最急降下法
hachiilcane
March 03, 2022
More Decks by hachiilcane
See All by hachiilcane
機械学習勉強会01 1次関数での回帰分析/MLStudy01
hachiilcane
0
66
機械学習勉強会02 多項式近似と最小二乗法による推定/MLStudy02
hachiilcane
0
100
機械学習勉強会04 偏微分と連鎖律/MLStudy04
hachiilcane
0
44
機械学習勉強会05 パーセプトロン/MLStudy05
hachiilcane
0
45
機械学習勉強会06 ロジスティック回帰/MLStudy06
hachiilcane
0
59
機械学習勉強会07 ROC曲線/MLStudy07
hachiilcane
0
44
機械学習勉強会08 2次元入力3クラス分類/MLStudy08
hachiilcane
0
74
機械学習勉強会09 2層フィードフォワードニューラルネット/MLStudy09
hachiilcane
0
72
WPF勉強会 第1回 動的レイアウト/WPFStudy1
hachiilcane
0
200
Other Decks in Technology
See All in Technology
モバイルアプリ開発概論2026
recruitengineers
PRO
6
670
つくって納得、つかって実感! 大規模言語モデルことはじめ ver2.0
recruitengineers
PRO
5
2k
JavaScript 研修 (2026)
recruitengineers
PRO
2
640
Agent 時代の Kaggle 展望 / kaggle-in-the-agentic-era
upura
1
840
猫付きpingコマンドを自作
uyuki234
0
260
2026-08-15 JAWS-UG 茨城 #16 Secrets ManagerにおけるSecret値の管理(Terraformの場合) / Secrets Manager Secrets
masasuzu
0
310
AIペネトレーションテスト・ セキュリティ検証「AgenticSec」紹介資料
laysakura
2
9.3k
Breaking the Seal: Static Deobfuscation of Compiled V8 JavaScript Bytecode Malware
hshrzd
0
870
【CEDEC2026】Creative Approaches to Localizing the Dialects and Unique Speech of Umamusume: Pretty Derby Characters in English
cygames
PRO
3
25k
その“隠したつもり”が命取り ── 自前と平文をやめて「正解」に委ねる
kuroneko13
0
130
コーチングの奥義 何もしないテクニック
jinwatanabe
0
120
Sets in Go
ramalho
1
1.1k
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
470
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.1k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
250
Fireside Chat
paigeccino
42
4k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Testing 201, or: Great Expectations
jmmastey
46
8.2k
Accessibility Awareness
sabderemane
1
180
For a Future-Friendly Web
brad_frost
183
10k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Visualization
eitanlees
152
17k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.5k
Transcript
࠷ٸ߱Լ๏ ඍͷྗͰ࠷ྑͷύϥϝʔλΛٻΊΔ @hachiilcane
ҰൠతͳύϥϝτϦοΫϞσ ϧͷ̏ͭͷεςοϓʢ෮शʣ ࣍ͷ̏ͭͷεςοϓͰΰʔϧͱͳΔϞσϧɺ ͢ͳΘͪࣜΛܾఆ͢Δ 1.ύϥϝʔλΛؚΉϞσϧʢࣜʣΛઃఆ͢ Δ 2.ύϥϝʔλΛධՁ͢Δج४ΛఆΊΔ 3.࠷ྑͷධՁΛ༩͑ΔύϥϝʔλΛܾఆ͢Δ
લճ·Ͱ εςοϓ̏ʹ͓͍ͯɺղͷެࣜΛ༻͍ͯ࠷ྑ ͷύϥϝʔλΛٻΊͨ ͔͍ͭ͠͠ղͷެ͕ࣜ͑ΔΘ͚Ͱͳ͍ εςοϓ̍Ͱఆٛͨ͠Ϟσϧʢࣜʣ͕ ෳࡶͩͱɺࣜมܗ͕͍͠ͷ͕͋Δ W = ( T
) 1 T t
ΑΓ൚༻తͳ࠷ྑͷύϥ ϝʔλΛٻΊΔํ๏͕͋Δ ͦΕ͕࠷ٸ߱Լ๏ʢޯ߱Լ๏ʣ
ࠓճֶͿ༰Λ͍ͬͨΜ ·ͱΊΔͱ ػցֶशͷΞϧΰϦζϜʮྨʯʮճؼੳʯʮΫ ϥελϦϯάʯͷ͏ͪͷʮճؼੳʯΛߟ͑Δ ϞσϧΛଟ߲ࣜͱͯ͠ߟ͑ɺ࠷খೋ๏ʹΑͬͯ ࠷ྑͷύϥϝʔλΛٻΊΔʢ͜͜·Ͱલճͱಉ ͡ʣ લճղͷެࣜΛͬͯ࠷ྑͷύϥϝʔλΛٻΊ ͕ͨɺࠓճͦͷΘΓʹ࠷ٸ߱Լ๏Λ༻͍ͯ࠷ ྑͷύϥϝʔλΛٻΊΔํ๏ΛֶͿ
Ͱɺ࠷ٸ߱Լ๏Λ͏લ ·ͰͷલఏΛ෮श͠·͢Α ҰൠతͳύϥϝτϦοΫϞσϧͷεςο ϓ̍ʙ̏Λҙ্ࣝͨ͠Ͱࢥ͍ग़͠· ͠ΐ͏
εςοϓ̍ɿύϥϝʔλΛؚ ΉϞσϧʢࣜʣΛઃఆ͢Δ ͍͵͞ΜͷഎதͷͲ͜ʢҐஔxʣΛͰͨΒɺͲΕ͘Β͍͍͵͞Μ͕تͿ͔ ʢتͼtʣΛΓ͍ͨ ͦΕΛҎԼͷΑ͏ͳଟ߲ࣜͷؔͱͯ͠දͤΔͷͰͳ͍͔ͱఆ͢Δ Mଟ߲ࣜͷ࣍ʢ࠷େͰԿͷ߲·Ͱ༻͍Δ͔ʣ ࣮ࡍʹܭࢉ͢Δͱ͖MͷΛԿ͔ʹܾΊΔͱͯ͠ɺMʴ1ݸͷ͕ະ ͷύϥϝʔλͱͳΔˠ f(x) =
w0 + w1x + w2x2 + ... + wM xM = M X m=0 wmxm {wm }M m=0
εςοϓ̎ɿύϥϝʔλ ΛධՁ͢Δج४ΛఆΊΔ ޡࠩؔΛఆٛ͠ɺೋޡࠩΛ࠷খͱ ͢Δύϥϝʔλ͕ྑ͍ύϥϝʔλͱ͢Δ Ϟσϧͷؔf(x)Λޡࠩؔʹೖ͢Δ ͱ͜͏ͳΔ ED = 1 2
N X n=1 {f(xn) tn }2 ED = 1 2 N X n=1 ( M X m=0 wmxm n tn)2
εςοϓ̏ɿ࠷ྑͷධՁΛ༩ ͑ΔύϥϝʔλΛܾఆ͢Δ ……͜͜Ͱ࠷ٸ߱Լ๏Λ༻͍Δ
·ͣΛ۩ମతͳ Ͱߟ͑ͯΈΑ͏ ҎԼͷޡࠩؔΛ࠷খʹ͢Δύϥϝʔ λɹɹɹɹΛٻΊΔͱͲ͏͍͏͜ͱ ͔ ED = 1 2 N
X n=1 ( M X m=0 wmxm n tn)2 {wm }M m=0
Mʹ1ʢ1࣍ؔʣͰߟ͑ ͯΈΔ Λ؆୯ʹ͢ΔͨΊʹɺMʹ1ͱܾΊ Δɻ͢ΔͱϞσϧͷࣜͱޡࠩؔ ҎԼͷΑ͏ʹͳΔ ύϥϝʔλw0ɺw1Λదʹ̎ύλʔϯ ߟ͑ͯɺޡࠩؔͷΛٻΊΔ f(x) = w0
+ w1x ED = 1 2 N X n=1 (w0 + w1xn tn)2
ύλʔϯ̍ w0 = 1, w1 = 3 f(x) = 1
+ 3x ED = 1 2 N X n=1 (1 + 3xn tn)2
ύλʔϯ̎ w0 = 1, w1 = 4 f(x) = 1
+ 4x ED = 1 2 N X n=1 (1 + 4xn tn)2
Կ͕Θ͔͔ͬͨ ٻΊͨޡࠩؔͷʢ32.7862ͱ49.3727ʣͷࣗମʹҙຯ ͳ͍͕ɺύϥϝʔλw1ͷΛม͑ͨΒޡࠩؔͷมԽͨ͠ ʢԿ܁Γฦ͕͢ʣޡࠩؔEDͷΛͬͱখ͘͢͞ ΔύϥϝʔλwmΛݟ͚ͭΔ͜ͱ͕Ͱ͖ͨΒɺͦͷύϥϝʔ λwmΛͬͨf(x)ͬͱ͍͵͞ΜͷتͼΛਖ਼֬ʹਪଌ Ͱ͖ΔؔʢϞσϧʣͰ͋Δͱ͍͏͜ͱʹͳΓɺ͜Ε͕ࠓ ٻΊ͍ͯΔ͜ͱ ͢Δͱw1ͷΛͬͱখͨ͘͞͠Βͬͱޡࠩؔͷখ͞ ͘ͳΔͩΖ͏͔
w0Λݻఆʹͯ͠w1ͷΛมԽͤ͞ ͯΈͨͱ͖ͷޡࠩؔͷΛϓϩο τͯ͠ΈΔ ͔֬ʹɺw1͕3ͱ͔4ΑΓ 0ͱ͔-1ͷํ͕ྑͦ͞͏
͜ͷΓํͰશͯͷύϥϝʔ λwΛٻΊΒΕͦ͏͕ͩ…… ߟ͑ํͱ͍͍ͯͩͨ͠߹͍ͬͯΔ ͨͩɺw0ͷΛม͑Δͱ͖ͬ͞ͷw1ʹ͍ͭͯ ͷάϥϑͷۃখͷҐஔ͕มΘͬͯ͘Δͷ ͰɺෳͷύϥϝʔλΛಉ࣌ʹݟͯஅ͠ͳ ͍ͱ͍͚ͳ͍͔Βख࡞ۀ͡Όແཧ ͱ͍͏͔ɺ2ͭͳΒ·͍͍͚ͩͲɺ3ͭͩͱͦ ͦάϥϑඳ͚ͳ͍͔Βແཧ
w0ͱw1Λಉ࣌ʹมԽͤͨ࣌͞ͷޡ ࠩؔͷΛ3DͰϓϩοτͯ͠ΈΔ ͜ͷลΓ͕Ұ൪খ͍͞ʁ surfaceදࣔ ߴઢදࣔ
άϥϑͷ୩ఈΛػցతʹ ٻΊΔʹʁ ඍͷߟ͑ํΛ༻͍Δ
࠷ٸ߱Լ๏ͱ ·ͣॳظҐஔͱͯ͠దͳw0, w1ΛܾΊΔ ʢ͕͜͜ॏཁʣ ͜ΕEDͷܗ্ͷ͋Δ1ʹରԠ͢Δ ͜ͷͰͷ͖ΛௐͯɺED͕ͬͱݮ গ͢Δํw0ͱw1Λগ͚ͩ͠ਐΊΔʢͭ ·Γw0ͱw1Λม͑Δʣ ͜ͷखଓ͖ΛԿ܁Γฦ͢ͱɺ࠷ऴతʹ ED͕ͬͱখ͘͞ͳΔ୩ఈʹͨͲΓண͚
Δ
ED͕ͬͱݮগ͢Δํ ͱ ͋Δ(w0, w1)ʹ͍Δͱ ͖ɺࡔͷ্ͷํEDΛw0 ͱw1Ͱภඍͨ͠ϕΫτϧͰ ද͞ΕΔɻ͜ΕΛޯϕΫτ ϧͱݺͿ EDΛ࠷খʹ͢ΔʹɺEDͷ ޯͷରํʹਐΜͰ͍͚
ྑ͍ rED(w) = @ED @w0 @ED @w1 ! ޯϕΫτϧʢࡔͷ্ͷํʣ
EDΛภඍͨࣜ͠ ʢภඍͷৄࡉ·ͨผ్ʣ ภඍͱݴͬͯɺʮ1ͭͷม͚ͩʹணͯ͠ɺଞͷมఆͱΈ ͳͯ͠ඍ͢Δʯ͚ͩ ී௨ͷඍ͕άϥϑͷ͖Λද͍ͯ͠Δͷͱಉ͡Α͏ʹɺw0ͱw1ʹؔ ͢ΔภඍͧΕͧΕw0ํͷ͖ɺw1ํͷ͖Λද͍ͯ͠Δ 2ͭͷ͖Ληοτʹͯ͠ɺϕΫτϧͱͯ͠ղऍͨ͠ͷ͕ޯϕΫτ ϧɻޯϕΫτϧ͖ͷͬͱେ͖͍ํͱͦͷେ͖͞Λද͢ @ED @w0
= N X n=1 (f(xn) tn) = N X n=1 (w0 + w1xn tn) @ED @w1 = N X n=1 (f(xn) tn)xn = N X n=1 (w0 + w1xn tn)xn
ޯϕΫτϧΛΑ͘ݟͯ ΈΔ w0ํw1ํɺw0ͱw1͕ܾ·ͬͯॳΊ͖͕ܾͯ·Δ ͔֬ʹάϥϑΛݟΔͱɺܗ্Ͳͷʹཱ͔ͭʹΑͬͯ ͖ҧͬͯ͘Δ rED(w) = @ED @w0 @ED
@w1 ! ޯϕΫτϧʢࡔͷ্ͷํʣ @ED @w0 = N X n=1 (w0 + w1xn tn) @ED @w1 = N X n=1 (w0 + w1xn tn)xn
w0ͱw1ΛมԽͤͯ͞ɺޯϕ ΫτϧΛάϥϑͰදͯ͠ΈΔ Ͳͷ͔Βελʔτͯ͠ɺҹΛٯʹͨͲΔͱɺܗͷΑΓ͍෦ʹ ਐΊΔ ͭ·Γ܁Γฦͨ͠Ͳ͍͚ͬͯɺ࠷খʢͱࢥΘΕΔʣͷEDʹͨͲΓண͚Δʂ Ͳ͔͜ͷ ͔Βελʔτ
࠷ٸ߱Լ๏ͱʢ࠶ܝʣ ·ͣॳظҐஔͱͯ͠దͳw0, w1ΛܾΊΔ ʢ͕͜͜ॏཁʣ ͜ΕEDͷܗ্ͷ͋Δ1ʹରԠ͢Δ ͜ͷͰͷ͖ΛௐͯɺED͕ͬͱݮ গ͢Δํw0ͱw1Λগ͚ͩ͠ਐΊΔʢͭ ·Γw0ͱw1Λม͑Δʣ ͜ͷखଓ͖ΛԿ܁Γฦ͢ͱɺ࠷ऴతʹ ED͕ͬͱখ͘͞ͳΔ୩ఈʹͨͲΓண͚
Δ ͭ·ΓɺޯϕΫτ ϧͱٯํʹw0ͱw1Λ ߋ৽͢Ε͍͍
࠷ٸ߱Լ๏Λ༻͍ͨύϥϝʔ λwͷߋ৽ํ๏ʢֶशଇʣ ֶशΛБͱͯ͠ύϥϝʔλΛҎԼͷΑ͏ʹߋ৽͢Δ ʮ:=ʯɺࠨลΛӈลͰߋ৽͢ΔɺΛҙຯ͢Δͷͱ͢Δ ޯϕΫτϧͷʮٯํʯ͔ͩΒɺ্هࣜϚΠφεΛ͍ͬͯΔ ͜ͷֶशଇͰɺͪΐͬͱͣͭw0, w1Λߋ৽͍ͯ͘͠ w0 := w0
⌘ @ED @w0 w1 := w1 ⌘ @ED @w1 @ED @w0 = N X n=1 (f(xn) tn) = N X n=1 (w0 + w1xn tn) @ED @w1 = N X n=1 (f(xn) tn)xn = N X n=1 (w0 + w1xn tn)xn ࠶ܝ
͍ͭ·Ͱߋ৽͠ଓ͚Εྑ͍͔ ʢͲΕ͘Βֶ͍शΛଓ͚Δ͔ʣ ʢਖ਼͍͑͠ͳ͍͕ʣྫͱͯ͠ҎԼͷΑ͏ͳ݅ΛΈ߹ Θͤͯ͏ ܁Γฦ͠ճ্ݶΛܾΊ͓͍ͯͯͦͷճ·Ͱ ޡࠩؔEDͷ͕͋ΔΛԼճΔ·Ͱ ޯϕΫτϧͷେ͖͕͋͞ΔΛԼճΔ·Ͱʢ͍͍ͩͨฏ Βͳͱ͜ΖʹདྷΔ·Ͱʣ ߋ৽લͷwͱߋ৽ޙͷwͷϕΫτϧͱͯ͠ͷ͕ࠩɺ͋Δ ΛԼճΔ·Ͱ
ʢࢀߟʣM࣍ͷଟ߲ࣜʹ ҰൠԽ͢Δͱ ্هͷϞσϧͰEDΛΑΓখ͘͢͞ΔʹɺֶशΛБͱͯ͠ ύϥϝʔλΛҎԼͷΑ͏ʹߋ৽͢Δ ED = 1 2 N X
n=1 {f(xn) tn }2 wm := wm ⌘ @ED @wm f(x) = w0 + w1x + w2x2 + ... + wM xM = M X m=0 wmxm ۩ମతʹҎԼͷΑ͏ͳࣜʹͳΔ wm := wm ⌘ N X n=1 (f(xn) tn)xm n
ֶश͕ऴΘͬͨΒྃʁ ہॴղʹั·Δ͜ͱΛ͍ͭ ߟྀ͓ͯ͘͠ඞཁ͕͋Δ ͭ·ΓɺಘΒΕͨղ͕࠷খ Ͱ͋ΔอূͲ͜ͳ͍ ύϥϝʔλwͷॳظΛม ͑ͳ͕ΒԿճ͔܁Γฦ͢ͳ Ͳɺ͍Ζ͍Ζͳ͕ඞཁ x y
0 ͔͜͜Βελʔ τͨ͠Βʁ ͜͜ʹͨͲΓண͍ͯ ऴΘͬͪΌ͏͔ ࠷খ
࠷ٸ߱Լ๏ʢޯ߱Լ๏ʣ ͷઆ໌ͱͯ͜͜͠·Ͱ ऴΘΔલʹɺ࠷ٸ߱Լ๏ͷੜʢͱ͍ ͏͔࣮ફతͳద༻๏ʣΛհ͠·͢
֬తޯ߱Լ๏ ࠷ٸ߱Լ๏Λར༻ͨ͠ύϥϝʔλͷߋ৽ํ๏͜͏͕ͩͬͨ ֬తޯ߱Լ๏Ͱ͜͏ͳΔ ͭ·ΓɺτϨʔχϯάηοτNݸશ෦ͬͯҰճߋ৽͢ΔͷͰ ͳ͘ɺ1ݸϥϯμϜʹબΜͰͦΕΛͬͯҰճߋ৽͢Δ Ұճߋ৽͢Δ·Ͱͷܭࢉྔ͕গͳ͘ͳΔͷͰޮ͕ྑ͘ͳΔ͜ͱ ͱɺہॴղʹั·Γʹ͘͘ͳΔͱ͍͏ϝϦοτ͋Δ wm := wm
⌘ N X n=1 (f(xn) tn)xm n wm := wm ⌘(f(xk) tk)xm k
ϛχόον๏ ֬తޯ߱Լ๏ͰϥϯμϜʹ1ݸτϨʔχϯάηοτΛબ Μ͕ͩɺϛχόον๏ͰϥϯμϜʹpݸબͿɻpݸϥϯμϜʹ બΜͩτϨʔχϯάηοτͷΠϯσοΫεͷू߹ΛKͱ͢Δͱ 100ݸͷ͏ͪ10ݸΛϥϯμϜͰબΜͰֶश͢Δɺͱ͍͏͜ͱΛ ܁Γฦ͢Έ͍ͨͳΠϝʔδɻ࠷ٸ߱Լ๏ͱ֬తޯ߱Լ๏ͷ தؒΈ͍ͨͳײ͡ ݴޠͷ࣮ܥʹΑͬͯܭࢉॲཧͷޮ͕ྑ͘ͳΔͱ͍͏ϝ Ϧοτ͕͋Δ wm
:= wm ⌘ X k2K (f(xk) tk)xm k
͋ͱͱΓ͋͑ͣͬͯ ΈΑ͏ʂ ࣮࣮ͯ͠ફ͋ΔͷΈ
՝ ͜Ε·Ͱ༻͍ͯͨ͠ղͷެࣜΛͬͨϓϩάϥϜ02-square_error.ipynb Λϕʔεʹͯ͠ʢ͠ͳ͍͍͚ͯ͘Ͳʣɺ࠷ٸ߱Լ๏Λ࣮ͯ͠ΈΑ͏ ͱΓ͋͑ͣБ0.001ͱ͔Ͱ܁Γฦ͠ճඦճ͘Β͍͔ͳʁ wͷ ॳظཚͰৼͬͯΈΑ͏ ֶश͍ͯ͘͠աఔͷޡࠩؔEDͱύϥϝʔλwͷมԽͷ༷ࢠΛϓϩοτ ͯ͠ΈΑ͏ ֬తޯ߱Լ๏ʹมߋͯ͠ΈΑ͏ M=1ͱͨ࣌͠ͷɺύϥϝʔλw0ͱw1ΛมԽͤͨ࣌͞ͷޡࠩؔEDͷ
Λ3DͰϓϩοτͯ͠ΈΑ͏
ࢀߟจݙ தҪ ӻ࢘ʮITΤϯδχΞͷͨΊͷػցֶश ཧೖʯٕज़ධࣾ, 2015 ҏ౻ ਅʮPythonͰಈֶ͔ͯ͠Ϳʂ͋ͨΒ͠ ͍ػցֶशͷڭՊॻʯᠳӭࣾ, 2018 ཱੴݡޗʮֶ͘͞͠Ϳ
ػցֶशΛཧղ͢ ΔͨΊͷֶͷ͖΄Μ ʯϚΠφϏग़൛, 2017