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
機械学習勉強会08 2次元入力3クラス分類/MLStudy08
Search
hachiilcane
March 03, 2022
Technology
71
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
機械学習勉強会08 2次元入力3クラス分類/MLStudy08
機械学習勉強会08 2次元入力3クラス分類
hachiilcane
March 03, 2022
More Decks by hachiilcane
See All by hachiilcane
機械学習勉強会01 1次関数での回帰分析/MLStudy01
hachiilcane
0
63
機械学習勉強会02 多項式近似と最小二乗法による推定/MLStudy02
hachiilcane
0
90
機械学習勉強会03 最急降下法/MLStudy03
hachiilcane
0
39
機械学習勉強会04 偏微分と連鎖律/MLStudy04
hachiilcane
0
43
機械学習勉強会05 パーセプトロン/MLStudy05
hachiilcane
0
44
機械学習勉強会06 ロジスティック回帰/MLStudy06
hachiilcane
0
58
機械学習勉強会07 ROC曲線/MLStudy07
hachiilcane
0
43
機械学習勉強会09 2層フィードフォワードニューラルネット/MLStudy09
hachiilcane
0
71
WPF勉強会 第1回 動的レイアウト/WPFStudy1
hachiilcane
0
200
Other Decks in Technology
See All in Technology
美味しいスイスチーズを作ろう🧀🐭
taigamikami
1
260
Oracle AI Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
6
1.9k
AI Engineering Summit Tokyo 2026 AIの前に、やることがある 〜医療データ企業の4フェーズ〜
dtaniwaki
0
2.1k
Diagnosing performance problems without the guesswork
elenatanasoiu
0
170
Platform Engineering as a Product: Criteria for Improvement and Multi-Tenant Design
kumorn5s
0
520
Oracle Cloud Infrastructure IaaS 新機能アップデート 2026/3 - 2026/5
oracle4engineer
PRO
1
210
新規ゲーム開発におけるAI駆動開発のリアル
202409e2
0
2.8k
運用を見据えたAIエージェント設計実践
amacbee
1
3.2k
個人の発見を、組織の知恵に 〜生成AI活用を"探索"から"組織の仕組み"へ〜
kintotechdev
2
1k
地元にいないローカルオーガナイザーの立ち回り
uvb_76
1
1.1k
PHP と TypeScript の型システム比較:AI 時代の「型」は誰のためにあるのか? #frontend_phpcon_do / frontend_phpcon_do_2026
shogogg
1
260
Agentic ERPをどう設計するか ー 受発注エージェントを動かす、現場の知見と設計思想ー
recerqainc
1
1.8k
Featured
See All Featured
The Mindset for Success: Future Career Progression
greggifford
PRO
0
350
30 Presentation Tips
portentint
PRO
1
320
Un-Boring Meetings
codingconduct
0
310
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
720
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Paper Plane
katiecoart
PRO
1
51k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
300
The Pragmatic Product Professional
lauravandoore
37
7.3k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
Transcript
2࣍ݩೖྗ3Ϋϥε ྨ χϡʔϥϧωοτϫʔΫ·Ͱ͋ͱҰา @hachiilcane
͜Ε·Ͱݟ͖ͯͨྨ 2࣍ݩೖྗ2ΫϥεྨΛઢͰ͚Δ ͷ͕ύʔηϓτϩϯ 2࣍ݩೖྗ2ΫϥεྨΛʢ͋Δҙຯʣ ֬తͳ෯Λ࣋ͭઢͰ͚Δͷ͕ϩ δεςΟοΫճؼ
ࠓճ ྨͰ͖ΔΛ1ͭ૿ͯ͠ɺ2࣍ݩೖྗ3Ϋϥε ྨΛϩδεςΟοΫճؼͰղ͘ t͕0·ͨ1ͩͱ̎ʹͳͬͪΌ͏͔ΒɺͦΕ ΛଟΫϥεʹ֦ு͢Δͱ͖ʹιϑτϚοΫεؔ Λ͏͚ͬͯͩͰͦΜͳ͍͠͡Όͳ͍ αΫοͱֶΜͰɺ࣍ʹֶͿϑΟʔυϑΥϫʔυ χϡʔϥϧωοτͷ͕͔Γʹ͠Α͏
೦ͷͨΊͷ֬ೝͰɺ3Ϋ ϥεͬͯʁ ͜Ε·Ͱྨͱͯ͠ʮපؾͰ͋ΔʯʮපؾͰͳ ͍ʯͷ2छྨʹ͚͍ͯͨʢˡ2Ϋϥεʣ ࠓʮʢපؾͷʣεςʔδ1ʯʮεςʔδ2ʯ ʮεςʔδ3ʯʹྨ͍ͨ͠ͱ͔ɺͦ͏͍͏ײ͡ ʢˡ3Ϋϥεʣ ྉཧΛʮ༸৯ʯʮ৯ʯʮத՚ʯͷͲΕ͔ʹ ͚͍ͨͱ͔ ΫϥεɺଞʹΧςΰϦʔɺϥϕϧͱ͔ݴͬͨΓ
͢Δ ྨʹ͓͚ΔతมtͷऔΓ͏Δͷ͕3ͭ͋ Δɺͱݴ͑Δ
(x,y)ฏ໘্ͷσʔλΛྨ͢ΔઢΛࣜͰදݱ͢Δ ͜ͷ࣌ɺ(x,y)ฏ໘Λׂ͢Δઢ࣍ࣜͰද͞ΕΔ ͜ΕΛγάϞΠυؔМͰแΈɺ (x,y)ͰಘΒΕͨσʔλͷ ଐੑ͕t=1Ͱ͋Δ֬࣍ࣜͰද͞ΕΔ ରʹɺt=0Ͱ͋Δ֬࣍ࣜʹͳΔ 2࣍ݩೖྗ2Ϋϥεྨϩ δεςΟοΫճؼͷ෮श f(x, y)
= w0 + w1 x + w2 y f(x, y) = 0 P(x, y) = σ(w0 + w1 x + w2 y) 1 − P(x, y)
χϡʔϥϧωοτϫʔΫ ෩ͷදݱʹͯ͠࠶ཧ x y ॏΈw1 ॏΈw2 f ग़ྗ ೖྗ ೖྗ
1 ͍ͭ1ͷ μϛʔೖྗ ॏΈw0 f(x, y) = w0 + w1 x + w2 y { P(x, y) = σ( f ) ⟶ t = 1 1 − P(x, y) ⟶ t = 0 ೖྗ૯
ࠓޙΛߟ͑ɺଟೖྗଟΫϥεΛѻ ͑ΔΑ͏ʹࣜͷදݱΛม͑Δ x1 x2 ॏΈw1 ॏΈw2 a ग़ྗ ೖྗ ೖྗ
x0 ͍ͭ1ͷ μϛʔೖྗ ॏΈw0 a = w0 x0 + w1 x1 + w2 x2 { y = σ(a) ⟶ P(t = 1|x) 1 − y ⟶ P(t = 0|x) ೖྗ૯ ͖݅֬ͷදݱ ʢx͕ϕΫτϧදهͳͷ ೖྗ͕ଟ࣍ݩͰ͋Δ ͜ͱʹ߹Θ͍ͤͯΔʣ ग़ྗΛyͱ͢Δ ೖྗ૯Λaͱ͢Δ ೖྗΛxͷఴࣈ Ͱදݱ͢Δ
2Ϋϥεͱ3Ϋϥεͷҧ͍ ͷ֓ཁ 2ΫϥεྨϩδεςΟοΫճؼɺग़ྗ ͕ҰͭͰɺγάϞΠυؔΛ௨͢ɻग़ྗͷ େখ͕2ΫϥεΛද͢ 3ΫϥεྨϩδεςΟοΫճؼɺग़ྗ ͕3ͭͰɺιϑτϚοΫεؔΛ௨͢ɻग़ྗ ͷͦΕͧΕͷ͕ͦΕͧΕͷΫϥεͷ֬ Λࣔ͢
3Ϋϥεྨʹ֦ு͢Δ ͱ͜͏ͳΔ x1 x2 a0 ग़ྗ ೖྗ ೖྗ x0 ͍ͭ1ͷ
μϛʔೖྗ w00 ೖྗ૯ ग़ྗΛ3ͭʹ͢Δͷʹ߹Θͤͯɺ ೖྗ૯Λ3ͭʹ͠ɺॏΈ߹Θ ͤͯ૿͑Δ ॏΈͷఴࣈͷ͚ͭํ͕ٯ ͡Όͳ͍͔ͱࢥ͏͔͠Ε ͳ͍͕ɺ͜ͷํ͕৭ʑศར 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
ೖྗxͱతมt n ೖྗ ೖྗ ਖ਼ղσʔλ ʢΫϥεʣ 0 5.604765 -0.837603 0
1 5.093028 -1.098183 1 2 -2.595448 1.348614 1 3 -0.662749 -5.056531 0 4 15.573566 10.073330 2 5 7.084038 2.165339 2 6 6.204333 -2.945187 1 7 13.349965 12.577250 0 8 16.487809 6.629031 0 9 0.060047 -2.900301 2 x1 x2 t 1-of-Kූ߸Խ ʢone-hotදݱʣ [[1 0 0] [0 1 0] [0 1 0] [1 0 0] [0 0 1] [0 0 1] [0 1 0] [1 0 0] [1 0 0] [0 0 1]] NݸͷσʔλશମͰେจࣈͷX ೖྗ1ͭͰখจࣈͷϕΫτϧදهx = x0 x1 x2 NݸͷσʔλશମͰT x0ৗʹ1ͷ μϛʔೖྗ
ॏΈwɺೖྗ૯aɺग़ ྗy ࠓ3ΫϥεྨͳͷͰɺೖྗ૯3ͭ͋ΔʢDೖྗ࣍ݩ ʣ Ϟσϧͷύϥϝʔλ·ͱΊͯߦྻͰද͢ͱ͜͏ͳΔ ೖྗ૯ΛιϑτϚοΫεؔʹೖྗͨ͠ͷΛग़ྗyͱ͢ΔʢK ྨ͢ΔΫϥεʣ ak = wk0
x0 + wk1 x1 + wk2 x2 = D ∑ i=0 wki xi (k = 0,1,2) yk = exp(ak ) ∑K−1 k=0 exp(ak ) (k = 0,1,2) w = w00 w01 w02 w10 w11 w12 w20 w21 w22
ιϑτϚοΫεؔ ෳͷ͕͋ͬͨͱ͖ɺͦΕΛιϑτϚοΫεؔʹೖྗ͢Δͱɺ ͦΕͧΕͷͷେখؔΛอͬͨ··ɺҎԼͷ݅Λຬͨ͢ʹ ม͞ΕΔ 0͔Β̍·Ͱͷ શͯΛͨ͠Β1 ͢ͳΘͪɺೖྗ͢ΔΛ֬Λද͢ʹม͢Δ͜ͱ͕Ͱ͖Δ ؔ ྨ͢Δχϡʔϥϧωοτͩͱग़ྗʹ͔·͢͜ͱ͕ଟ͍ͷͰ֮͑ ͓ͯ͘ͱྑ͍
yk = exp(ak ) ∑K−1 k=0 exp(ak )
ࠓճͷ3Ϋϥεྨ ιϑτϚοΫεؔʹΑͬͯɺy0+y1+y2=1Ͱ͋Δ͜ͱ͕อূ͞Ε Δɻ͜ͷϞσϧͷग़ྗy0,y1,y2Λɺ֤Ϋϥεʹଐ͢Δ֬Λද͢Α͏ ʹֶश͢Δͷ͕ࠓճΓ͍ͨ͜ͱ ͪΖΜֶशͱ͍͍ײ͡ͷύϥϝʔλwΛݟ͚ͭΔ͜ͱͰ͋Δ x1 x2 a0 ग़ྗ x0
w00 ೖྗ૯ a1 a2 w01 w02 w20 w21 w22 y0 = softmax(a0 ) y1 = softmax(a1 ) y2 = softmax(a2 ) 5.6 -0.8 1 0.85 0.11 0.04 y1͕Ұ൪େ͖͍͔ΒΫϥε1ͬΆ͍ͳ
తؔΛఆٛ͢ΔͨΊ ʹɺ·ͣؔ ɺશೖྗσʔλXʹରͯ͠શΫϥεσʔλT͕ੜ͞Εͨ֬ 1ͭͷೖྗσʔλxʹணͯ͠ɺͦͷΫϥε͕T=[1,0,0]ʢ͢ͳΘͪΫϥε0ʣ Ͱ͋ͬͨΒɺͦͷΫϥε͕ੜ͞Εͨ֬ Ϋϥε1Ͱ2Ͱಉ͡Α͏ʹදͤΔΑ͏ʹ͢Δͱ Nݸͷσʔλ͕ੜ͞Εͨ֬શ෦ֻ͚߹ΘͤΕ͍͍ͷͰ P(t = [1,0,0]|x)
= y0 P(t|x) = yt0 0 yt1 1 yt2 2 P(T|X) = N−1 ∏ n=0 P(tn |xn ) = N−1 ∏ n=0 ytn0 n0 ytn1 n1 ytn2 n2 = N−1 ∏ n=0 K−1 ∏ k=0 ytnk nk
ฏۉަࠩΤϯτϩϐʔޡ ࠩ ฏۉަࠩΤϯτϩϐʔޡࠩؔɺͷෛͷ ରͷฏۉͳͷͰɺ ্ͷࣜʹͳͬͯ͠·͑͏ؔΛѻ Θͳ͍ͷͰɺ͋Δҙຯؔͷҙຯ͕Θ͔ͬ ͯͳͯ͘ͳ͍ͬͪΌͳ͍ E(w) = −
1 N log P(T|X) = − 1 N log N−1 ∏ n=0 K−1 ∏ k=0 ytnk nk = − 1 N N−1 ∑ n=0 K−1 ∑ k=0 tnk log ynk
ฏۉަࠩΤϯτϩϐʔޡ ͕ࠩҙຯ͢Δͷ̍ ͋ΔҰͭͷσʔλ͚ͩʹ͢ΔͱɺɹɹɹɹͱͳΔ E(w) = − 1 N N−1 ∑
n=0 K−1 ∑ k=0 tnk log ynk tk log yk ͚ͩ͜͜ʹ ͢Δ a0 ग़ྗ ೖྗ૯ a1 a2 y0 = softmax(a0 ) y1 = softmax(a1 ) y2 = softmax(a2 ) 0.85 0.11 0.04 ਖ਼ղt 0 1 0 t0 log y0 = 0 t1 log y1 = − 0.1625 t2 log y2 = 0 ͜͜ͱ͜͜Λֻ ͚ͨʹͳΔ ͜͜ʢΛlogͱͬͨʣͱ͜͜ Λֻ͚ͨʹͳΔ
ฏۉަࠩΤϯτϩϐʔޡ ͕ࠩҙຯ͢Δͷ̎ ͋ΔҰͭͷσʔλ͚ͩʹ͢ΔͱɺɹɹɹɹɹɹͱͳΔ tkone-hotදݱͷਖ਼ղσʔλͳͷͰɺtk=1Ͱ͋Δyk͚͕ͩEͷ߹ ࢉରʹͳΔʢ͋ͱશ෦θϩʣ yk0ʙ1ͷͰ͋Γɺ1ʹ͍ۙ΄ͲlogΛऔΔͱ0ʹۙ͘ͳΔɻ0ʹ ͍ۙ΄ͲlogΛऔΔͱϚΠφεํʹେ͖ͳͱͳΔ ͭ·Γɺྨͷ݁Ռ͕ਖ਼͍͠ͳΒɹɹɹɹɹɹɹ΄΅0ʹͳΔ ͠ɺؒҧ͍ͬͯΔ΄ͲϚΠφεํʹେ͖͘ͳΔɻ͜Εͭ·Γ ޡࠩΛݟ͍ͯΔ͜ͱʹͳΓɺ͜ΕΒΛσʔλͷ͚ͩ͠߹Θͤ
ͨE(W)ೋޡࠩͱରͯ͠ൃมΘΒͳ͍ʢೋޡࠩͷྨ൛ Έ͍ͨͳΠϝʔδʣɻ E(w) = − 1 N N−1 ∑ n=0 K−1 ∑ k=0 tnk log ynk tk log yk ͚ͩ͜͜ʹ ͢Δ tk log yk
ޯ๏ʹΑΔղ ޯ๏ͰฏۉަࠩΤϯτϩϐʔޡࠩؔE(W)Λ࠷খԽ͢ΔWΛٻΊΔʹ ɺ͍ͭͷΑ͏ʹ֤wki ʹؔ͢ΔภඍΛ༻ҙ͢Εྑ͍ ಋग़লུ͢Δ͕ɺಋؔҎԼͷΑ͏ʹશͯͷkͱiʹରͯ͠ಉ͡ܗʹ ͳΔ ͪΖΜֶशଇ͜͏ ֶशଇʹैͬͯগͣͭ͠ύϥϝʔλwΛม͍͖͑ͯʢޯϕΫτϧͷ ରํͷࡔΛԼ͍͖ͬͯʣɺ࠷దͳύϥϝʔλwΛٻΊΔ ∂E
∂wki = 1 N N−1 ∑ n=0 (ynk − tnk )xni wki := wki − ∂E ∂wki
ޯ๏લճͱಉָ͘͡ ͠Α͏ scipy.optimizeϥΠϒϥϦʹؚ·ΕΔ minimize()ͱ͍͏ؔͰޯ๏͕ߦ͑Δ
՝ one-hotදݱͷਖ਼ղσʔλΛ༻ҙ͢Δ scipy.optimizeͷminimize()Λֶͬͯश͢Δ ΫϥεؒͷڥքઢΛάϥϑͰදࣔ͢Δɻ3Ϋϥε ͋ΔͷͰ୯७ʹઢͰදΘͤͳ͍ͷͰɺྫ͑ͦ ΕͧΕͷΫϥεͰ0.5Ҏ্ͷग़ྗ͕ಘΒΕΔྖҬ ΛߴઢͳͲͰදࣔ͢Δͱྑ͍ʢmatplotlibͷ ߴઢcontour()ͬͯͭʣ
ࢀߟจݙ தҪ ӻ࢘ʮITΤϯδχΞͷͨΊͷػցֶश ཧೖʯٕज़ධࣾ, 2015 ҏ౻ ਅʮPythonͰಈֶ͔ͯ͠Ϳʂ͋ͨΒ͠ ͍ػցֶशͷڭՊॻʯᠳӭࣾ, 2018 ཱੴݡޗʮֶ͘͞͠Ϳ
ػցֶशΛཧղ͢ ΔͨΊͷֶͷ͖΄Μ ʯϚΠφϏग़൛, 2017