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
機械学習も筋肉が大事?意外と知らない数学
Search
Kimikazu Kato
September 11, 2019
Technology
0
930
機械学習も筋肉が大事?意外と知らない数学
2019/9/11 みんなのPython勉強会でしゃべったときの資料です。
機械学習の話も筋肉の話もせず、ただひたすら数学の話をしました。
Kimikazu Kato
September 11, 2019
Tweet
Share
More Decks by Kimikazu Kato
See All by Kimikazu Kato
PyTorchの最近の動向
hamukazu
0
640
Python 3.11: What changed in math?
hamukazu
0
430
レコメンデーションシステムのキホン
hamukazu
4
850
機械学習の中身を理解する
hamukazu
28
10k
機械学習に役立つ数学
hamukazu
11
6.1k
Pythonと数学と 多面体とペーパークラフトとベルヌーイと長門屋と田宮模型と私
hamukazu
1
1.6k
Other Decks in Technology
See All in Technology
What is DRE? - Road to SRE NEXT@広島
chanyou0311
3
630
推薦システムを本番導入する上で一番優先すべきだったこと~NewsPicks記事推薦機能の改善事例を元に~
morinota
0
130
「単なる OAuth 2.0 を認証に使うと、車が通れるほどのどでかいセキュリティー・ホールができる」のか検証してみた
terara
0
380
ここがすごいよ! AWS Systems Manager!
saichan11
0
1.8k
ペパボのオブザーバビリティ研修2024 説明資料
kesompochy
0
1.1k
AOAI Dev Day LLMシステム開発 Tips集
hirosatogamo
15
3.8k
Amazon FSx for NetApp ONTAPのパフォーマンスチューニング要素をまとめてみた #cm_odyssey #devio2024
non97
0
220
サービスの持続的な成長と技術負債について
siva_official
PRO
10
4.4k
Github Actions 로 Android 팀의 효율성 극대화
hadonghyun
0
160
コンテナ・K8s研修 - 前半 コンテナ基礎・ハンズオン【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
170
[I/O Extended Android 2024] What`s new in Android 2024
kyeongwan
0
220
データ分析基盤を作ってみよう~設計編~
nrinetcom
PRO
1
110
Featured
See All Featured
Thoughts on Productivity
jonyablonski
64
4.1k
Principles of Awesome APIs and How to Build Them.
keavy
124
16k
The Pragmatic Product Professional
lauravandoore
29
6.1k
Adopting Sorbet at Scale
ufuk
71
8.8k
GraphQLとの向き合い方2022年版
quramy
36
13k
Robots, Beer and Maslow
schacon
PRO
157
8.1k
Become a Pro
speakerdeck
PRO
15
4.8k
Fireside Chat
paigeccino
25
2.8k
Rails Girls Zürich Keynote
gr2m
93
13k
Why You Should Never Use an ORM
jnunemaker
PRO
51
8.9k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
26
2.1k
Typedesign – Prime Four
hannesfritz
37
2.2k
Transcript
ػցֶशے͕େࣄʁ ҙ֎ͱΒͳֶ͍ ΈΜͳͷPythonษڧձ @ΫϦʔΫɾΞϯυɾϦόʔ 2019/9/11 Ճ౻ެҰ
ͻͲ͍
ࣗݾհ ࢯ໊ɿՃ౻ެҰʢ͔ͱ͏͖Έ͔ͣʣ ॴଐɿιϑτόϯΫגࣜձࣾʢࠓ7݄Ҡ੶ʣ Twitterɿ@hamukazu ࣄɿػցֶशͷΞϧΰϦζϜΛߟ͑Δ͜ͱ झຯɿےτϨ
Ṗͷ҉߸ SQ: 120 BP: 100 DL: 90 ʢීஈͷτϨʔχϯάͰͷɺmaxࢼͨ͜͠ͱͳ͍ʣ
ຊͷհ ॻ͖·ͨ͠ʂ म͠·ͨ͠ʂ https://bit.ly/mlessence https://bit.ly/mlzukan
ۙگ ࣾͰʮػցֶशͷΤοηϯεʯΛಡΉษڧձΛ։࠵ͯ͠· ͢ɻ ༰ࠓͷͱ͜Ζ΄΅ֶͷߨٛɻ
ࠓͷ ֶʹؔ͢Δ͜ͱͰɺ • ීஈ͔Β࣭Λड͚Δ͕ʮػցֶशͷΤοηϯεʯͰॻ͖ ͖Εͳ͔ͬͨ͜ͱ • ʮػցֶशͷΤοηϯεʯͷಡऀ͔Βड͚࣭ͨ
ॳڃฤ
Q: 0÷0Ͳ͏ͳΓ·͔͢ʁ A: ʮఆٛ͞Ε͍ͯͳ͍ʯͰ͢
ׂΓࢉͱͳΜͰ͔͋ͬͨ 6 ÷ 3 3 × ɹ= 6 ͱ ͷ˘ʹ͍ΔͷΛٻΊΑͷҙຯ
༩͑ΒΕͨa, bʹ͍ͭͯ b × x = a Λຬͨ͢x͕།Ұଘࡏ͢Δͱ͖ͦΕΛ a ÷ b ͱॻ͘ ͱͳΔx།ҰͰͳ͍ͷͰ0÷0ఆٛ͞Εͯͳ͍ʢundefinedʣ 0 × x = 0
Α͋͘Δؒҧ͍ https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q117470996 ͷղෆఆʢͳΜͰ͍͍ʣ 0 × x = 0 ํఔࣜ ղͳ͠ʢෆೳʣ
0 × x = 1 ํఔࣜ 0÷0ͱ1÷0undefined ํఔࣜͷղΛग़͢͜ͱͱɺԋࢉͷఆٛผ
ڭ܇ɿ ఆٛʹΔͷେࣄ
Q: ແݶʢ∞ʣͳͷͰ͔͢ʁ A: ʮʯͰͳ͍ͱΈΔͷ͕ҰൠతͰ͢ ∞ ∉ ℝ
∞͕ͩͱࢥ͏ͱ͍Ζ͍Ζͱෆ߹͕ى͜Δ ྫ͑ ∞ − ∞ ͕ҰҙʹܾΊΒΕͳ͍ Ͱ lim x→+0 1
x = ∞ ͬͯͲ͏͍͏͜ͱʁ lim x→+0 1 x ∞ Λܭࢉͨ͠ʮ݁Ռʯ͕͋ͬͯɺͦͷ݁Ռͱ ͍͠ͱ͍͏ҙຯͰͳ͍ʂ ͕ ͜ͷ߸͕͍͜͠ͱΛද͍ͯ͠ΔͷͰͳ͘ɺ ʮ=∞ʯ·ͰؚΊͯܗ༰ࢺͷΑ͏ͳͷͩͱࢥ͏ͱΑ͍ɻ
lim x→+0 f(x) = ∞ R ∈ ℝ δ ∈
ℝ 0 < x < δ f(x) > R ͷਖ਼֬ͳఆٛ ʮҙͷ ʹ͍ͭͯ ͕ଘࡏͯ͠ ͳΒ Ͱ͋Δʯ ҎԼɺԿݴͬͯΔ͔Θ͔Βͳ͍ਓͷͨΊͷऍ 2ਓʹΑΔήʔϜΛߟ͑Δ ϓϨΠϠAɿ࣮ R ΛҰͭબΜͰఏࣔ͢Δ ϓϨΠϠBɿϓϨΠϠAͷఏࣔͷ͋ͱʹ࣮ δ ΛҰͭબΜͰఏࣔ͢Δ 0 < x < δ f(x) > R ͳΒ ʯ ͜ͷͱ໋͖ʮ ͕ΓཱͯϓϨʔϠBͷউͪ lim x→+0 f(x) = ∞ Ͱ͋Δͱɺͭ·ΓϓϨΠϠB͕ඞউͰ͋Δ͜ͱ ʢϓϨΠϠA͕Ұੜݒ໋ҙѱͯ͠উͯͳ͍ʣ ϧʔϧɿ
ҙ ֶͱ࣮ผ >>> 0/0 Traceback (most recent call last): File
"<stdin>", line 1, in <module> ZeroDivisionError: division by zero >>> import numpy as np >>> np.float64(0)/np.float64(0) nan >>> np.inf inf >>> np.inf+1 inf >>> np.inf-1 inf ͱ͘ʹແݶΛࡶʹѻ͏ͱཧతໃ६ͷͱʹͳΓ͕ͪ
Q: ͳͥ a1 2 = a A: ࢦ͕ࣗવͷ߹ͷ๏ଇ͔Β ࣗવʹఆٛ͞ΕͨͷͰ͢ a−1
= 1 a Ͱ ͳͷʁ
ax × ay = ax+y ࢦ๏ଇ ax ÷ ay =
ax−y (ax)y = axy ͜Ε͕ɺx, y͕ࣗવͷͱ͖ΓཱͭͷΘ͔Δ 22 × 23 = (2 × 2) × (2 × 2 × 2) = 25 25 ÷ 23 = 2 × 2 × 2 × 2 × 2 2 × 2 × 2 = 22 (22)3 = (2 × 2) × (2 × 2) × (2 × 2) = 26 (1) (2) (3) ࢦ๏ଇ͕x, y͕ࣗવҎ֎ͰΓཱͭΑ͏ʹͯ͠ΈΔ a2 ÷ a2 = 1 a2 ÷ a2 = a2−2 = a0 ҰํͰ(2)ΑΓ Αͬͯ a0 = 1 1 a = 1 ÷ a = a0 ÷ a1 = a0−1 ʢ(2)ΑΓʣ = a−1 ྫɿ (a1 2)2 = a1 2 ×2 ʢ(3)ΑΓʣ = a1 = a Αͬͯ ͱɺ2ͯ͠ ʹͳΔ a1 2 a a1 2 = a ͭ·Γ ʢx͕࣮ͷͱ͖ͷ ɺ ax a > 0 ͷͱ͖ʹݶఆʣ
͜͜ͰͷετʔϦʔɿ ͱͱɹɹx͕ࣗવͷͱ͖ͷΈΛߟ͍͑ͯͨ ࣗવͷͱ͖ʹΓཱ͍ͬͯͨ๏ଇ͕ΓཱͭΑ͏ʹɺ ࣮ͷͱ͖ʹ֦ுͨ͠ ͜ͷΑ͏ʹɺݶఆతͳൣғͰߟ͑ΒΕ͍ͯͨͷΛɺ ͦΕ·Ͱͷ๏ଇ͕ΓཱͭΑ͏ʹ֦ு͢Δͱ͍͏͜ͱ ͕Α͋͘Δ ax ͜͏͍͏ͷɺֶͰ ʮʙͷ֓೦ͷࣗવͳ֦ுʯ
ͱݴͬͨΓ͢Δɻ
্ڃฤ
Q: ೋ࣍ܗࣜͷϔοηߦྻͷܭࢉ͕Θ͔Γ·ͤΜ ʢʮػցֶशͷΤοηϯεʯp168ʣ A: ͖ͪΜͱ͝ͱʹҙࣝͯ͠ܭࢉ͠·͠ΐ͏ ҎԼॻ੶ΑΓஸೡʹઆ໌͠·͢
f(x) = xT Ax ͷͱ͖ͷ ∇2f ΛٻΊ͍ͨ f(x) = n
∑ i=1 n ∑ j=1 aij xi xj ͳͷͰɺ͜ΕΛ Ͱภඍ͍ͨ͠ xk (k = 1,2,…, n) A͕ରশߦྻͱͯ͠ i ≠ k, j ≠ k ͷͱ͖ ∂ ∂xk (aij xi xj ) = 0 ͋ͱɺi, jͷҰํ͕kͷͱ͖ɺ྆ํ͕kͷͱ͖ʹ ͚ͯܭࢉ͢ΕΑ͍
∂f ∂xk = ∂ ∂xk akk x2 k + ∑
j≠k aik xi xk + ∑ i≠k akj xk xj = 2akk xk + ∑ j≠k aik xi + ∑ i≠k akj xj = 2akk xk + ∑ j≠k aki xi + ∑ i≠k akj xj = 2akk xk + 2∑ j≠k aki xi = 2 n ∑ i=1 aki xi ∇f = 2∑n i=1 a1i xi 2∑n i=1 a2i xi ⋮ 2∑n i=1 ani xi = 2Ax ↑͜͜ͰA͕ରশͰ͋Δ͜ͱΛͬͨ ∇2f ͱɺ ∇f ͷ֤Λ xl (l = 1,2,…, n) Ͱภඍͨ͠ͷ
∂ ∂xl ( 2 n ∑ i=1 aki xi) ∂
∂xl (aki xi) = 0 i ≠ l ͷͱ͖ Λܭࢉ͍ͨ͠ɻ ͳͷͰ ͷͱ͖͚ͩΛߟྀ͢ΕΑ͍ i = l ∂ ∂xl ( 2 n ∑ i=1 aki xi) = ∂ ∂xl (2akl xl) = 2akl ∇f ͜Εɺ ͷk൪ͷΛ xl Ͱภඍͨ͠ͷͳͷͰ ͭ·Γ ∇2f ͷ (k, l) ∇2f ͷ ͕ (k, l) ͭ·Γ 2akl ͱ͍͏͜ͱ ∇2f = 2A
Q: ࠷খೋ๏ͷܭࢉ A: ͖͞΄Ͳͷܭࢉ͕ʹཱͪ·͢ E(w) = ∥y − Xw∥2 ͷͱ͖
∇E = − 2XTy + XT Xw ͕Θ͔Γ·ͤΜɻ ʢˡ࣮͜ͷεϥΠυͷ४උதʹޡ২͕ݟ͔ͭͬͨʣ
E(w) = ∥y − Xw∥2 = (y − Xw) T
(y − Xw) = (yT − (Xw)T) (y − Xw) = (yT − wT XT) (y − Xw) = yTy − yT Xw − wT XTy + wT XT Xw ∇E = − 2XTy + 2XT Xw ∇(yT Xw) = XTy ∇(wT XTy) = XTy } ∇(wT XT Xw) = 2XT Xw ࣗͰܭࢉͯ͠ΈΑ͏ ʢͦΜͳʹ͘͠ͳ͍ͣʣ ͖͞΄Ͳͷೋ࣍ܗࣜͷܭࢉͱಉ͡ Αͬͯ
·ͱΊ • ఆٛʹͬͯߟ͑Δ͜ͱ͕༗ޮͳ͜ͱ͋Δ • ֶͷཧͱίϯϐϡʔλ্ͷ࣮ผ • ʮࣗવͳ֦ுʯͷߟ͑ํΛ͓ͬͯ͜͏ • ϔοηߦྻͷܭࢉɺҰͭҰͭΛߟ͑ΔͱͦΕ΄Ͳ ͘͠ͳ͍͔Αʢʁʣ