SlideShare a Scribd company logo
カジュアル勉強会 @仙台
Excelで機械学習入門 第4回
株式会社 エクテック
データサイエンティスト
第10回までの流れ
1回~3回 4回~10回
AI周辺の
基本知識
最適化の基本
推論の基本
重回帰分析
機械学習
サポートベクタマシン
ナイーブベイズ
ニューラルネットワーク
RNN/BPTT
強化学習/Q学習
環境について
(Surroundings)
Excel 2013, 2016
Google Spreadsheets
本日のアジェンダ
1. 重回帰分析
2. サポートベクタマシン
重回帰分析
第1回で学んだ最⼩2乗法に対して
3変数以上にした回帰分析
次のデータは、ある企業の社員20名のデータ。
3年後の社員の実⼒を『給与』で測定しています。
社員番号k 筆記試験w ⾯接試験x 3年後給与y 社員番号k 筆記試験w ⾯接試験x 3年後給与y
1 65 83 345 11 94 95 371
2 98 63 351 12 66 70 315
3 68 83 344 13 86 85 348
4 64 96 338 14 69 85 337
5 61 55 299 15 94 60 351
6 92 95 359 16 73 86 344
7 65 69 322 17 94 84 375
8 68 54 328 18 92 92 361
9 68 97 363 19 70 70 326
10 80 51 326 20 98 98 387
このデータから、3年後の社員の実⼒『給与y』を
『筆記試験w』と『⾯接試験x』から予測しよう。
y = aw + bx + c (a, b, cは定数)
y = aw + bx + c
これを、『回帰⽅程式』といいます
重回帰分析の回帰⽅程式のイメージ
y = ax + b
回帰直線: a=2, b=1, のとき
y = aw + bx + c
回帰平⾯: a=3, b=2, c=1のとき
このイメージが、後々
効いてきます(分類問題などなど)
回帰⽅程式の求め⽅
第1回で学んだ内容と同じ
最⼩2乗法で決定するのが⼀般的
回帰⽅程式から得られる予測値と
実データとの誤差を考える
先ほどの表、k番⽬の要素に関する誤差...
k番⽬の社員に関する誤差 = yk - (awk + bxk + c)
社員番号k 筆記試験w ⾯接試験x 3年後給与y 社員番号k 筆記試験w
1 65 83 345 65a+83b+c
345-
(65a+83b+c)
2 98 63 351 98a+63b+c
351-
(98a+63b+c)
3 68 83 344 68a+83b+c
344-
(68a+83b+c)
… … … … … …
20 80 51 326 78a+98b+c
387-
(78a+98b+c)
『誤差』は正にも負にもなって、
⾜し合わせると結局ゼロになってしまう
ので、次の平⽅誤差ekを考える
ek = {yk - (awk + bxk + c)}
2
最⼩2乗法なので、平⽅誤差をデータ全体で
⾜し合わせた値 Eを考える
E = {345-(65a+83b+c)} +
{351-(98a+63b+c)} + … +
{387-(78a+98b+c)}
2
2
2
E は誤差の総量であり、
最適化の観点では、”⽬的関数”と呼ばれる
このEを最⼩にするように
定数a, b, cを決定するのが回帰分析になる
単回帰分析のときと同じ
δE
δa
= 0,
δE
δb
= 0,
δE
δc
= 0
を解くと、a=0.97, b=0.87, c=202.4
採⽤試験で、例えば
筆記試験wが82点、⾯接試験xが77点の
受験者の3年後の給与は
y = 0.97 ✖ 82 + 0.87 ✖ 77 + 202.4
= 349 (万円)
余談
多くの企業の、⼈事部⾨は
最初の書類選考で機械学習を⽤いて
構⽂解析の技術で⽂章⼒等を点数化し、
その数値化された結果から
受験者の能⼒を推定している(みたい)
サポートベクタマシン
ディープラーニングが普及する以前、
機械学習のデータ識別法として、
サポートベクタマシン(SVM)
が主流の位置を占めていた...!
※現在でもよく使う
1960年代に開発された
データ識別⽤の技術&⽅法
“マージンの最⼤化”
というアイデアを⽤いて
“識別関数”を求める
No 名前
好感度
識別
x y
1 A 0 0 男
2 B 0 1 男
3 C 1 1 男
4 D 1 0 ⼥
5 E 2 0 ⼥
6 F 2 1 ⼥
下表は、男性 A, B, Cと⼥性 D, E, Fを対象に、
製品 X, Yの好感度 x, y を調べた結果です。
この表から、SVMを⽤いた、男⼥を区別するx, y
の線形の識別関数を求めましょう。
好感度(x,y)を座標として点で、
6⼈のA~Fを表すと
x
y
1
10
男⼥を識別する2変数x,yの
「線形の識別関数」はこの平⾯上の直線を表わす
x
y
1
10
ところで、
⼆つに分ける直線はいくつもある
x
y
1
10
ここで活⽤される
“マージンの最⼤化”
いくつもある直線(識別関数)
これらの中から、1本選ぶ
x
y
1
10
ax + by +c = 0
(a, bは同時に0にならない)
ところで、
x
y
1
10
ちょうど男⼥の境界の縁(マージン)
を通る平⾏な2直線を考える
ax + by +c = 0
x
y
1
10
識別関数(識別直線)と、境界の直線までの幅dを
最⼤化することを “マージンの最⼤化”という
ax + by +c = 0
d
d
縁にある男⼥のデータの要素(少なくとも⼀つ)
“サポートベクター”
最⼤幅
サポートベクタ
マージンの最⼤化を
式で表現してみると
x
y
1
10
ax + by +c = 1, ax + by +c = 1
と置いてみる(直線の式の不定性)
ax + by +c = 1
d
d ax + by +c = -1
先ほどの問題に戻る
No 名前
好感度
識別 正負
x y
1 A 0 0 男 -1
2 B 0 1 男 -1
3 C 1 1 男 -1
4 D 1 0 ⼥ 1
5 E 2 0 ⼥ 1
6 F 2 1 ⼥ 1
負例
正例
男に”-1”, ⼥に“1”をそれぞれ与えてみる
“正例”, “負例”
x
y
1
10
ax + by +c = -1
ax + by +c = 1
ax + by +c ≧ 1
ax + by +c ≦ -1
x
y
1
10
ax + by +c = -1
d
ax + by +c = 1
ax + by +c ≧ 1
ax + by +c ≦ -1
負例(男) axi + byi +c ≦ -1
正例(⼥) axi + byi +c ≧ 1
x
y
1
10
ax + by +c = -1
d
ax + by +c = 1
ax + by +c ≧ 1
ax + by +c ≦ -1
サポートベクタとなる
データ要素を表す点(xi, yi)は...
x
y
1
10
ax + by +c = -1
d
ax + by +c = 1
ax + by +c ≧ 1
ax + by +c ≦ -1
負例(男) axi + byi +c = -1
正例(⼥) axi + byi +c = 1
x
y
1
10
d
d
x
y
1
10
d
d
距離dは「点と直線の距離の公式」から
サポートベクタ(xi, yi)から識別直線までの距離
x
y
1
10
d
d
| axi + byi + c |
(a + b )
d = 2 2 1/2
x
y
1
10
ax + by +c = -1
d
ax + by +c = 1
ax + by +c ≧ 1
ax + by +c ≦ -1
axi + byi +c = -1 or axi + byi +c = 1
なので、距離dは
x
y
1
10
ax + by +c = -1
d
ax + by +c = 1
ax + by +c ≧ 1
ax + by +c ≦ -1
1
(a + b )
d = 2 2 1/2
マージンの最⼤化は
この距離dを最⼤化すること
すなわち a + b を最⼩化すること
2 2
No 名前
好感度
識別
x y
1 A 0 0 男
2 B 0 1 男
3 C 1 1 男
4 D 1 0 ⼥
5 E 2 0 ⼥
6 F 2 1 ⼥
下表は、男性 A, B, Cと⼥性 D, E, Fを対象に、
製品 X, Yの好感度 x, y を調べた結果です。
この表から、SVMを⽤いた、男⼥を区別するx, y
の線形の識別関数を求めましょう。
No 名前
好感度
識別
x y
1 A 0 0 男
2 B 0 1 男
3 C 1 1 男
4 D 1 0 ⼥
5 E 2 0 ⼥
6 F 2 1 ⼥
下表は、男性 A, B, Cと⼥性 D, E, Fを対象に、
製品 X, Yの好感度 x, y を調べた結果です。
この表から、SVMを⽤いた、男⼥を区別するx, y
の線形の識別関数を求めましょう。
この問題は
No 名前
好感度
識別
x y
1 A 0 0 男
2 B 0 1 男
3 C 1 1 男
4 D 1 0 ⼥
5 E 2 0 ⼥
6 F 2 1 ⼥
下表は、男性 A, B, Cと⼥性 D, E, Fを対象に、
製品 X, Yの好感度 x, y を調べた結果です。
この表から、SVMを⽤いた、男⼥を区別するx, y
の線形の識別関数を求めましょう。
負例(男) axi + byi +c ≦ -1
正例(⼥) axi + byi +c ≧ 1
の条件下で、次の式の値を
最⼩にするa, b, cを求める
a + b
2 2
ここで唐突に、
話を⼀般化できるように変数
ti (i=1,2,..,6) を⽤意します
正例に対して、ti = 1
負例に対して、ti = -1
とすると
負例(男) axi + byi + c ≦ -1
正例(⼥) axi + byi + c ≧ 1
この条件式は
負例(男) axi + byi + c ≦ -1
正例(⼥) axi + byi + c ≧ 1
この条件式は、以下のようにまとまる
ti (axi + byi + c) ≧ 1
不等式の、⽚⽅がマイナスで
両辺にマイナスをかけると不等号は逆になりますよね
ti (axi + byi +c) ≧ 1 の条件下で
次の式の値を最⼩にするa, b, cを求める
a + b2 2
ti (axi + byi +c) ≧ 1 の条件下で
次の式の値を最⼩にするa, b, cを求める
a + b2 2
ちなみに、このti を
SVMにおいて“正解ラベル”と表現します
t: teacher
第2回を思い出してください
“不等式の最⼩を求める”
最⼩値2 (x=0, y=2)
ラグランジュの双対問題
ti (i=1,2,..,6) に対して
L = (a + b ) + μ1{1 - t1(ax1 + by1 + c)} +
μ2{1 - t2(ax2 + by2 + c)} + … +
μ6{1 - t6(ax6 + by6 + c)}
について、a, b, cの最⼩値を求める。
これは、得られるμ1, μ2, … , μ6の式について
その最⼤値を求める。
μ1, μ2, … , μ6 >0
余⼒のある⽅は、復習ついでに
⾃⼒で解いてみてください...!
(次回、第5回のAppendixに解答を差し込みます)
ヒント!
δL
δa
= 0,
δL
δb
= 0,
δL
δc
= 0①
② a, bの関係式を求める
③ t, μの関係式を求める
④ L についてt, μ, x, yで表現する
3連休の間に、やってみてください
※3時間かけて、解けそうもない時は
第5回までお待ちください
a, bが求まる & μも求まる
No 名前
好感度
μ
x y
1 A 0 0 1.648
2 B 0 1 0.000
3 C 1 1 2.352
4 D 1 0 3.648
5 E 2 0 0.000
6 F 2 1 0.352
No 名前
好感度
μ
x y
1 A 0 0 1.648
2 B 0 1 0.000
3 C 1 1 2.352
4 D 1 0 3.648
5 E 2 0 0.000
6 F 2 1 0.352
μiは、0以上のときに
a + b の最⼩値に関与する
(すなわち、それ⾃体がサポートベクタ)
2 2
No 名前
好感度
μ
SV
(サポートベク
タ)
c
x y
1 A 0 0 1.648 YES -1.000
2 B 0 1 0.000 No
3 C 1 1 2.352 YES -1.000
4 D 1 0 3.648 YES -1.000
5 E 2 0 0.000 No
6 F 2 1 0.352 YES -1.000
No 名前
好感度
μ
SV
(サポートベク
タ)
c
x y
1 A 0 0 1.648 YES -1.000
2 B 0 1 0.000 No
3 C 1 1 2.352 YES -1.000
4 D 1 0 3.648 YES -1.000
5 E 2 0 0.000 No
6 F 2 1 0.352 YES -1.000
サポートベクタは
No, 1,3,4,6
x
y
1
10
識別関数である、識別直線は
2x - 2y - 1 = 0
2x - 2y - 1 = -1
d
d 2x - 2y - 1 = 1
2x - 2y - 1 = -1
2x - 2y - 1 = 1
2x - 2y - 1 = 0
EoF

More Related Content

PDF
Casual learning machine learning with_excel_no2
PDF
Casual learning machine learning with_excel_no3
PDF
Casual learning machine learning with_excel_no5
PDF
Casual learning machine_learning_with_excel_no7
PDF
Casual learning machine learning with_excel_no6
PDF
化学科自主ゼミ1
PDF
Casual learning-machinelearningwithexcelno8
PDF
はじめてのパターン認識輪読会 10章後半
Casual learning machine learning with_excel_no2
Casual learning machine learning with_excel_no3
Casual learning machine learning with_excel_no5
Casual learning machine_learning_with_excel_no7
Casual learning machine learning with_excel_no6
化学科自主ゼミ1
Casual learning-machinelearningwithexcelno8
はじめてのパターン認識輪読会 10章後半

What's hot (17)

PDF
第8章 ガウス過程回帰による異常検知
PDF
「トピックモデルによる統計的潜在意味解析」読書会 2章前半
PDF
混合ガウスモデルとEMアルゴリスム
PDF
20170422 数学カフェ Part1
PDF
深層学習と確率プログラミングを融合したEdwardについて
PDF
20150922_楕円関数とおもしろい応用
PDF
パターン認識第9章 学習ベクトル量子化
PDF
凸最適化 〜 双対定理とソルバーCVXPYの紹介 〜
PDF
Oshasta em
PDF
自動微分変分ベイズ法の紹介
PDF
正則化つき線形モデル(「入門機械学習第6章」より)
PDF
Rで学ぶロバスト推定
PDF
Sparse pca via bipartite matching
PDF
第5章 拡張モデル(前半)
PDF
【Zansa】第12回勉強会 -PRMLからベイズの世界へ
PPTX
Introduction to Persistence Theory
PDF
20170408cvsaisentan6 2 4.3-4.5
第8章 ガウス過程回帰による異常検知
「トピックモデルによる統計的潜在意味解析」読書会 2章前半
混合ガウスモデルとEMアルゴリスム
20170422 数学カフェ Part1
深層学習と確率プログラミングを融合したEdwardについて
20150922_楕円関数とおもしろい応用
パターン認識第9章 学習ベクトル量子化
凸最適化 〜 双対定理とソルバーCVXPYの紹介 〜
Oshasta em
自動微分変分ベイズ法の紹介
正則化つき線形モデル(「入門機械学習第6章」より)
Rで学ぶロバスト推定
Sparse pca via bipartite matching
第5章 拡張モデル(前半)
【Zansa】第12回勉強会 -PRMLからベイズの世界へ
Introduction to Persistence Theory
20170408cvsaisentan6 2 4.3-4.5
Ad

Similar to Casual learning machine learning with_excel_no4 (20)

PDF
サポートベクターマシン(SVM)の数学をみんなに説明したいだけの会
PDF
はじめてのパターン認識 第8章 サポートベクトルマシン
PPTX
PPTX
統計的学習の基礎_3章
PDF
SMO徹底入門 - SVMをちゃんと実装する
PDF
東京都市大学 データ解析入門 6 回帰分析とモデル選択 1
PPTX
PDF
双対性
PDF
わかりやすいパターン認識 4章
PDF
パターン認識 第12章 正則化とパス追跡アルゴリズム
PDF
How to study stat
PDF
PATTERN RECOGNITION AND MACHINE LEARNING (1.1)
PDF
Nips yomikai 1226
PPTX
SVMについて
PDF
PRML10-draft1002
PDF
東京都市大学 データ解析入門 7 回帰分析とモデル選択 2
PDF
PRML 第4章
PDF
線形識別モデル
PDF
PRML復々習レーン#3 3.1.3-3.1.5
サポートベクターマシン(SVM)の数学をみんなに説明したいだけの会
はじめてのパターン認識 第8章 サポートベクトルマシン
統計的学習の基礎_3章
SMO徹底入門 - SVMをちゃんと実装する
東京都市大学 データ解析入門 6 回帰分析とモデル選択 1
双対性
わかりやすいパターン認識 4章
パターン認識 第12章 正則化とパス追跡アルゴリズム
How to study stat
PATTERN RECOGNITION AND MACHINE LEARNING (1.1)
Nips yomikai 1226
SVMについて
PRML10-draft1002
東京都市大学 データ解析入門 7 回帰分析とモデル選択 2
PRML 第4章
線形識別モデル
PRML復々習レーン#3 3.1.3-3.1.5
Ad

More from KazuhiroSato8 (12)

PDF
Casual learning anomaly_detection_with_machine_learning_no1
PDF
Casual data analysis_with_python_vol2
PDF
Casual datascience vol5
PDF
Basic deep learning_framework
PDF
Casual learning machine_learning_with_excel_no1
PDF
エクテック カジュアル勉強会 データサイエンスを学ぶ第2回
PDF
エクテック カジュアル勉強会 データサイエンスを学ぶ第1回
PDF
Casual data analysis_with_python_vol1
PDF
Casual datascience vol4
PDF
Casual datascience vol3
PDF
Casual datascience vol2
PDF
Casual datascience vol1
Casual learning anomaly_detection_with_machine_learning_no1
Casual data analysis_with_python_vol2
Casual datascience vol5
Basic deep learning_framework
Casual learning machine_learning_with_excel_no1
エクテック カジュアル勉強会 データサイエンスを学ぶ第2回
エクテック カジュアル勉強会 データサイエンスを学ぶ第1回
Casual data analysis_with_python_vol1
Casual datascience vol4
Casual datascience vol3
Casual datascience vol2
Casual datascience vol1

Casual learning machine learning with_excel_no4