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
Ringa_hyj
June 15, 2020
Technology
0
340
第三章-分類と周辺の知識【数学嫌いと学ぶデータサイエンス・統計的学習入門】
第三章【数学嫌いと学ぶデータサイエンス・統計的学習入門】
Ringa_hyj
June 15, 2020
Tweet
Share
More Decks by Ringa_hyj
See All by Ringa_hyj
Catching up with the tidymodels.[Japan.R 2021 LT]
ringa_hyj
3
800
多次元尺度法MDS
ringa_hyj
0
250
因子分析(仮)
ringa_hyj
0
120
階層、非階層クラスタリング
ringa_hyj
0
89
tidymodels紹介「モデリング過程料理で表現できる説」
ringa_hyj
0
400
深層学習をつかった画像スタイル変換の話と今までの歴史
ringa_hyj
0
370
正準相関分析(仮)
ringa_hyj
0
100
対応分析
ringa_hyj
0
120
2020-11-15-第1回-統計学勉強会
ringa_hyj
0
700
Other Decks in Technology
See All in Technology
Qiita埋め込み用スライド
naoki_0531
0
860
Snowflake女子会#3 Snowpipeの良さを5分で語るよ
lana2548
0
220
非機能品質を作り込むための実践アーキテクチャ
knih
3
840
成果を出しながら成長する、アウトプット駆動のキャッチアップ術 / Output-driven catch-up techniques to grow while producing results
aiandrox
0
180
10分で学ぶKubernetesコンテナセキュリティ/10min-k8s-container-sec
mochizuki875
3
330
スタートアップで取り組んでいるAzureとMicrosoft 365のセキュリティ対策/How to Improve Azure and Microsoft 365 Security at Startup
yuj1osm
0
210
20241214_WACATE2024冬_テスト設計技法をチョット俯瞰してみよう
kzsuzuki
3
440
GitHub Copilot のテクニック集/GitHub Copilot Techniques
rayuron
24
11k
re:Invent をおうちで楽しんでみた ~CloudWatch のオブザーバビリティ機能がスゴい!/ Enjoyed AWS re:Invent from Home and CloudWatch Observability Feature is Amazing!
yuj1osm
0
120
DevOps視点でAWS re:invent2024の新サービス・アプデを振り返ってみた
oshanqq
0
180
社外コミュニティで学び社内に活かす共に学ぶプロジェクトの実践/backlogworld2024
nishiuma
0
250
生成AIのガバナンスの全体像と現実解
fnifni
1
180
Featured
See All Featured
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
Building Applications with DynamoDB
mza
91
6.1k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.2k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.3k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
48
2.2k
Typedesign – Prime Four
hannesfritz
40
2.4k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
111
49k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.9k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
510
Why Our Code Smells
bkeepers
PRO
335
57k
Transcript
第三章 1 第三章 1 @Ringa_hyj 日本一の数学嫌いと学ぶ データサイエンス ~第三章:分類と周辺の知識~
第三章 2 第三章 2 対象視聴者: 数式や記号を見ただけで 教科書を閉じたくなるレベル
第三章 3 第三章 3 分類(classification)
第三章 4 第三章 4 ・どうやって機械に判断させる? 画像は犬か猫か 今日のお客は男と女どちらが多いか 明日の株価は上がるか下がるか (クラスタリングはラベルがわからない状態で、データをどう分割するかを考えるもの)
第三章 5 第三章 5 ・どうやって機械に判断させる? 身体データから男女分類を例に考える ラベル 身長 体重 男
170 75 男 180 90 女 160 50 女 155 45 以前ダミー変数の話をした 男を1としてダミー変数に変換する ラベル 身長 体重 1 170 75 1 180 90 0 160 50 0 155 45 1,0を100%,0%と考えると、 ラベル列が「男である確率」となる
第三章 6 第三章 6 ・どうやって機械に判断させる? ラベル 身長 体重 1 170
75 1 180 90 0 160 50 0 155 45 ・身⾧,体重のデータに手を加えて、何とか「確率」を計算したい。 ・アルゴリズムには男なら確率を高く、女なら低くしてもらいたい。 ・確率は1から0の間の値を必ずとる ・学習の関数を確率の間違い具合で更新する
第三章 7 第三章 7 ロジスティック回帰
第三章 8 第三章 8 ・ロジスティック回帰 – ロジスティック方程式 「回帰」だけど「分類」に使う ・確率は1から0の間の値を必ずとる ロジスティック方程式
フェルフルストさんが1838年に発見 生物個体数の変化をモデル化 - 環境収容力(上限)と最小存続可能個体数(下限)がある - 増殖力は種によって変化させられる 回帰の例として SNS登録者数予測などにも使う 増加率:a 環境収容力:k 開始時の個体数:n0 時点:t
第三章 9 第三章 9 ・ロジスティック回帰 – シグモイド関数 ・確率は1から0の間の値を必ずとる -∞から∞まで、上限1下限0
ロジスティック方程式 シグモイド関数
第三章 10 第三章 10 ・ロジスティック回帰 – シグモイド関数 ・確率は1から0の間の値を必ずとる シグモイド関数のZに入れた数字は ・大きいほど1
・小さいほど0 ・0のとき0.5 になる 男のデータは0より大きくなり、 女のデータは0より小さくなるように変換する係数wを考えたい
第三章 11 第三章 11 ・ロジスティック回帰 – シグモイド関数 と 尤度 ・確率は1から0の間の値を必ずとる
・学習の関数を確率の間違い具合で更新する この式で確率っぽい値に変換できる 尤度(likelihood)の話 尤度 = (y=1の時σ(wx)が出した男である確率)× (y=0の時1-σ(wx)がだした男でない確率)× ・・・ 上記の計算が最大になるようなwの時が、 最も綺麗に σ(wx)を男のデータの時1,女のデータの時0に出力できている 「パラメータの尤もらしさ」の度合いを測る指標を「尤度」と呼ぶ
第三章 12 第三章 12 ・ロジスティック回帰 – 尤度関数 ・学習の関数を確率の間違い具合で更新する 尤度 =
(y=1の時σ(wx)が出した男である確率)× (y=0の時1-σ(wx)が計算する男でない確率)× ・・・ 数式で表現すると 尤度 = × × ・・・ 2つも式が必要で、計算するときに厄介 1つの式で表現したい 尤度関数
第三章 13 第三章 13 ・ロジスティック回帰 – 尤度関数 ・学習の関数を確率の間違い具合で更新する yが1の時(sex=1)、後項は0乗となり1になる yが0の時(sex=0)、前項が0乗となり1になる
都合よく場合分けしてくれる式ができた sexをsに変える。 尤度の計算を一般化して書き直すと ୀଵ ௦ ଵି௦ ୀଵ 尤もらしい値を求める関数 尤度関数
第三章 14 第三章 14 ・ロジスティック回帰 – 対数尤度関数 ・学習の関数を確率の間違い具合で更新する ୀଵ
௦ ଵି௦ ୀଵ 複雑な値の掛け算を繰り返すより、 足し引きのほうが計算しやすいので、 対数をとって掛け算を足し算に変換する。(対数ってそういう性質) log(尤度) = + + ・・・ 対数尤度関数 尤度関数が最大の時のwを求める 対数尤度関数が最大の時のwを求める どちらも同じwになる 最適なwのこと:最尤推定量 ୀଵ = ୀଵ
第三章 15 第三章 15 ・ロジスティック回帰 – 負の対数尤度関数 ・学習の関数を確率の間違い具合で更新する ୀଵ
対数尤度関数の最大値を求める 数学的に最大化問題を解くのは少し厄介 対数尤度関数が最大のxのとき 負の対数尤度関数は最小になる よって最小化問題として解ける 最小化は微分して0を求めればいい 負の対数尤度関数(交差エントロピー関数) ୀଵ
第三章 16 第三章 16 ・ロジスティック回帰 – 負の対数尤度関数の最小化(微分して0) ・学習の関数を確率の間違い具合で更新する ୀଵ
負の対数尤度関数を目的の関数(コスト関数)と考え、 パラメータWに関する関数 J(W)と置く s=1の時も、s=0の時も、下に凸なので、微分して0の点がJ(W)の最小値である
第三章 17 第三章 17 ・ロジスティック回帰 – 負の対数尤度関数の最小化(微分して0) ・学習の関数を確率の間違い具合で更新する ୀଵ
を求める (合成関数の微分、連鎖率の知識)
第三章 18 第三章 18 ・学習の関数を確率の間違い具合で更新する まずlog(f(x))について微分 最初のマイナスを分配 定数1は0になり、-σ(wx)のマイナスをくくりだすと、 前後項にσ(wx)の微分が共通に出てくる。 σ(wx)の微分でくくりだして整理する
・ロジスティック回帰 – 負の対数尤度関数の最小化(微分して0)
第三章 19 第三章 19 ・学習の関数を確率の間違い具合で更新する σ(wx)の微分を考える ・ロジスティック回帰 – 負の対数尤度関数の最小化(微分して0)
第三章 20 第三章 20 ・ロジスティック回帰 – シグモイド関数のwでの微分 ・学習の関数を確率の間違い具合で更新する = ୢ
ୢ௭ ୢ௭ ୢ௪ wx=Zとおく。連鎖率の性質より、複数回の微分を順番に計算していく。 = ୢ ୢ௭ ୢ ୢ௪ ここで である ୢ ୢ௭ = シンプルに1変数の微分を考えて ୢ ୢ௭ ଵ ଵାୣష = ି௭ ିଵ ି௭ ିଶ ି௭ ି௭ ିଶ ି௭
第三章 21 第三章 21 ・学習の関数を確率の間違い具合で更新する = ୢ ୢ௭ ୢ௭ ୢ௪
= ୢ ୢ௭ ୢ ୢ௪ ୢ ୢ௭ = ୢ ୢ௭ ଵ ଵାୣష = ି௭ ିଵ ି௭ ିଶ ି௭ ି௭ ିଶ ି௭ ି௭ ି௭ ି௭ = ଵ ଵାୣష ିଵାଵାୣష ଵାୣష = ଵ ଵାୣష ଵ ଵାୣష ି௭ に書き直すと より ୢ ୢ௭ ୢ ୢ௪ ・ロジスティック回帰 – シグモイド関数のwでの微分
第三章 22 第三章 22 ・学習の関数を確率の間違い具合で更新する 中略 ・ロジスティック回帰 – 負の対数尤度関数の最小化(微分して0) シグモイド関数の微分を代入して、角括弧の中を整理
約分して分子を計算すると = 間違えた差分をデータで重みづけした値が 0となれば目的の関数は最小を取る
第三章 23 第三章 23 ・ロジスティック回帰 – 使う 今回は計算の都合上Z=wxとしましたが、 実際にはwx+bと切片項をつけます 切片項に関してもwと同じようにbに関し
て微分して求めます y=(1,0) x=(180,155) σ(wx + b)を使って微分を求め代入 w=-315.78 b=1.885 それぞれのxの地点で綺麗に1,0へ変換できています 分類ラベルが複数の場合 1対全で分類