SlideShare a Scribd company logo
1 of 31
Download to read offline
1
15分ではなす?
ぞくパタ #3 LT
@weda_654
わかりやすいパターン認識 2章
学習と識別関数 ver0.8
2
自己紹介
TwitterID : weda_654
所属 : GoogleMapとAWSとデータ分析の会社
業務 : 前処理! 集計! 資料作成!
使用言語 : R(メイン), Python(たまに)
こんなアイコンエアロバイクが欲しくなってきた
注意事項
本資料は個人の意見・認識によるものです
所属する組織の意見・認識とは無関係です
ご了承おねがいいたします
4
目次
学習の必要性
最近傍決定則と線形識別関数
パーセプトロンの学習規則
区分線形識別関数
* ニューラルネットワークとの関係は省略
5
はじめに
持っていない人は書店にGO
6
学習の必要性
7
プロトタイプの配置
学習の必要性
!2
!1
!3
重心にプロトタイプを配置した場合
!2
!1
!3
プロトタイプを重心からずらした場合
プロトタイプが重心にあっては各クラスを正しく分類できてない
正しく分類できて
いない!
正しく分類できるようにプロトタイプの配置を調整する
学習
8
学習とは
学習の必要性
学習パターンを用いて,学習パターンをすべて正しく識別できる
ようなクラス間分離面を見出すこと
プロトタイプを設定して特徴空間を分割する方法
* 学習パターン:識別部を設計するために収集されたパターン
9
最近傍決定則と線形識別関数
10
最小距離識別法
最近傍決定則と線形識別関数
1クラスあたり1プロトタイプの最近傍決定則(NN法)
!1, !1, ...!c p1, p2, ...pc
(i = 1, 2, ..., c)
• c個のクラス に対してプロトタイプ
を割り当てる
x• 入力パターンは とする
• NN法ではkx pik が最小となる i を求める
kx pik = kxk2
2pt
ix + kpik2
= kxk2
2(pt
ix
1
2
kpik2
) > 0
gi(x)とおきかえる
(1)
11
最小距離識別法
最近傍決定則と線形識別関数
式(1)が最小になるためには gi(x)が最大になればいい
max
i=1,...,c
{gi(x)} = gk(x) x 2 !k
最大となるi が x の属するクラスとなる
(2)
gi(x)•   を識別関数とよぶ
• 各クラスに gi(x) を対応させ,その値によってxの属する
クラスを判定する
識別関数法 * 入力パターンに対して線形な識別関数を線形識別関数とよぶ
12
線形識別関数
最近傍決定則と線形識別関数
g(x) = w0 +
dX
j=1
wjxj
g(x) = w0 + wt
x
g(x) = Wt
X
w0, w1, ..., wd重み係数
ベクトルで表現
d+1次元の拡張(特徴・重み)ベクトルを使用
w = (w1, ..., wd)t
x = (x1, ..., xd)t
W = (w0, w)t
X = (x0, x)t
(3a)
(3b)
(3c)
13
線形識別関数
最近傍決定則と線形識別関数
gi(x) = wi0 +
dX
i=1
wijxj
= wi0 + wt
ix
= Wt
iX
クラス !i の線形識別関数を gi(x) とすると
wi = (wi1, ..., wid)t
Wi = (wi0, wi1, ..., wid)t
(4a)
(4b)
(4c)
式(4b)を !i0 =
1
2
kpk2
wi = p, と置き換えると式(1)となる
14
線形識別関数
最近傍決定則と線形識別関数
入力x
gc(x)
gi(x)
g1(x)
識別関数
g1
gi
gc
最
大
値
選
択
機
出力
!k
クラス
図1:線形識別法のイメージ図
15
線形識別関数
最近傍決定則と線形識別関数
入力x
gc(x)
gi(x)
g1(x)
識別関数
g1
gi
gc
最
大
値
選
択
機
出力
!k
クラス
図1:線形識別法のイメージ図
x0
x1
xd wi0
wi1
wid
X
・・・
・・・
線形和と最大値選択からなる識別系をパーセプトロンとよぶ
16
パーセプトロンの学習規則
17
パーセプトロンの学習規則
線形識別関数の学習とは
:学習パターン全体
i (i = 1, 2, ..., c)!i:クラス に属する学習パターンの集合
i に属する全ての x に対して
gi(x) > gj(x) (j = 1, 2, ...c i 6= j) (5)
式(5)が成り立つようなwi が1組存在するとき
は線形分離可能という
wiwi0となるような , を決定することを指す
18
パーセプトロンの学習規則
例題:2つのクラスの識別
g1(x) g2(x)識別関数 , を以下のように表す
g(x) = g1(x) g2(x) = (W1 W2)t
X
= Wt
X W = W1 W2ただし
• この識別関数の識別法は
g(x) = Wt
X > 0
g(x) = Wt
X < 0
x 2 !1
x 2 !2
g(x) = Wt
X = 0 は2つのクラスの決定境界である•  
(6a)
(6b)
19
パーセプトロンの学習規則
例題:1次元の特徴空間
!2!1
-1.5 -1.0 -0.5 -0.2 0.2 1.2
図2:1次元の特徴空間
図2より線形分離可能であることがわかる
x1 x2 x3 x4 x5 x6
Wの張るd+1次元空間 = 重み空間を考えてみる 
* 今回は2次元の重み空間となる
20
パーセプトロンの学習規則
例題:1次元の特徴空間
w0
w1
重み空間上に引かれている直線は
任意のパターンXに対して
Wt
X = 0 が成り立つ超平面である
重み空間では各学習パターン
によって定まる超平面が存在する
* 今回は6つのパターン (n=6)
n個の超平面によって重み空間に
存在すべきWの領域を見つける
解領域
図3:2次元の重み空間
重み空間ではWは重み係数を
座標に持った点になる
(5, 2)
21
パーセプトロンの学習規則
パーセプトロンの学習規則
(1) 重みベクトルW の初期値を適当に選ぶ
(2) の中から学習パターンを1つ選ぶ
(3) 識別関数 g(x) = Wt
X によって識別を行い
正しく識別できなかった場合のみ修正を行いW
0
を作る
(4) (2),(3)を の全パターンで繰り返す
(5) の全パターンを正しく認識すれば終了
誤りがあれば(2)へ戻る
W
0
= W ± ⇢X (⇢ > 0) (7)
22
パーセプトロンの収束定理
  が線形分離可能ならば,パーセプトロンの学習規則を
有限回繰り返すことで解領域の重みベクトルに達する
パーセプトロンの学習規則
パーセプトロンの収束定理による学習はΦ関数の重みに
対して適用できる
Φ関数
x 1(x), 2(x), ..., d(x)の任意の関数 の
線形結合で表される関数
23
重みの空間における重みベクトルの移動
パーセプトロンの学習規則
w0
w1
図4:2次元の重み空間
⇢ の値が小さいと小刻みな
修正を繰り返す
⇢ の値が大きすぎると
解領域をまたいでしまう
この学習法は⇢ の値を固定する
方法である
固定増分法
24
多クラス(c>2)への拡張
パーセプトロンの学習規則
 !i !j
!i !j
に属するパターンを と誤ったとき
あるいは , の双方が候補になったとき
重みベクトルの修正を式(8)のように行う
W
0
i = Wi + ⇢X
W
0
j = Wj + ⇢X
パーセプトロンの学習則は誤認識が発生したときのみ
重みの修正を行うため誤り訂正法とも呼ばれる
(8)
25
区分的線形識別関数
26
区分的線形識別関数
線形分離が不可能な例
d=2,c=3の線形分離が不可能な分布
!1
!2
!3
図5:線形分離が不可能な分布
図5を分離するためには
プロトタイプを増やす
27
区分的線形識別関数
線形分離が不可能な例
d=2,c=3の線形分離が不可能な分布
図6:ボロノイ図
図5を分離するためには
プロトタイプを増やす
いくつもの超平面によって
決定境界が構成される
28
区分的線形識別関数
区分的線形識別関数
区分的線形識別関数は複数の線形識別関数の組で表される
gi(x) = maxl=1,...Li
g
(l)
i (x)
g
(l)
i (x) = w
(l)
i0 +
Pd
j=1 w
(l)
ij xj (i = 1, 2, ..., c)
g
(l)
i (x)gi(x) Liクラス!i の識別関数 は 個の線形識別関数
(l = 1, 2, ..., Li) の内,最大値を取るものが採択される
Li !i: のプロトタイプの数
g
(l)
i (x):区分的線形識別関数 gi(x):副次識別関数
(9a)
(9b)
29
区分的線形識別関数
入力x
gc(x)
gi(x)
g1(x)
識別関数
g1
gi
gc
最
大
値
選
択
機
出力
!k
クラス
図1:線形識別法のイメージ図
区分的線形識別関数
g
(l)
i
g
(1)
i
g
(Li)
i
g
(Li)
i (x)
g
(l)
i (x)
g
(1)
i (x)
最
大
値
選
択
機
・・・・・・
max{g
(l)
i (x)}
30
区分的線形識別関数
区分的線形識別関数
区分的線形識別関数にはパーセプトロンの学習則は適用できない
なぜなら
区分的線形識別関数はΦ関数ではないため
31
ご清聴ありがとうございました

More Related Content

What's hot

はじめてのパターン認識 第5章 k最近傍法(k_nn法)
はじめてのパターン認識 第5章 k最近傍法(k_nn法)はじめてのパターン認識 第5章 k最近傍法(k_nn法)
はじめてのパターン認識 第5章 k最近傍法(k_nn法)
Motoya Wakiyama
 
はじパタ6章前半
はじパタ6章前半はじパタ6章前半
はじパタ6章前半
T T
 
パターン認識第9章 学習ベクトル量子化
パターン認識第9章 学習ベクトル量子化パターン認識第9章 学習ベクトル量子化
パターン認識第9章 学習ベクトル量子化
Miyoshi Yuya
 

What's hot (20)

スペクトラル・クラスタリング
スペクトラル・クラスタリングスペクトラル・クラスタリング
スペクトラル・クラスタリング
 
はじめてのパターン認識 第5章 k最近傍法(k_nn法)
はじめてのパターン認識 第5章 k最近傍法(k_nn法)はじめてのパターン認識 第5章 k最近傍法(k_nn法)
はじめてのパターン認識 第5章 k最近傍法(k_nn法)
 
最適輸送入門
最適輸送入門最適輸送入門
最適輸送入門
 
[DL輪読会]Deep Neural Networks as Gaussian Processes
[DL輪読会]Deep Neural Networks as Gaussian Processes[DL輪読会]Deep Neural Networks as Gaussian Processes
[DL輪読会]Deep Neural Networks as Gaussian Processes
 
Transformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法についてTransformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法について
 
はじパタ6章前半
はじパタ6章前半はじパタ6章前半
はじパタ6章前半
 
パターン認識第9章 学習ベクトル量子化
パターン認識第9章 学習ベクトル量子化パターン認識第9章 学習ベクトル量子化
パターン認識第9章 学習ベクトル量子化
 
機械学習で泣かないためのコード設計
機械学習で泣かないためのコード設計機械学習で泣かないためのコード設計
機械学習で泣かないためのコード設計
 
続・わかりやすいパターン認識_3章
続・わかりやすいパターン認識_3章続・わかりやすいパターン認識_3章
続・わかりやすいパターン認識_3章
 
Transformerを雰囲気で理解する
Transformerを雰囲気で理解するTransformerを雰囲気で理解する
Transformerを雰囲気で理解する
 
Bayesian Neural Networks : Survey
Bayesian Neural Networks : SurveyBayesian Neural Networks : Survey
Bayesian Neural Networks : Survey
 
PRML第6章「カーネル法」
PRML第6章「カーネル法」PRML第6章「カーネル法」
PRML第6章「カーネル法」
 
機械学習と主成分分析
機械学習と主成分分析機械学習と主成分分析
機械学習と主成分分析
 
【メタサーベイ】数式ドリブン教師あり学習
【メタサーベイ】数式ドリブン教師あり学習【メタサーベイ】数式ドリブン教師あり学習
【メタサーベイ】数式ドリブン教師あり学習
 
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learningゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
 
Word2vecの並列実行時の学習速度の改善
Word2vecの並列実行時の学習速度の改善Word2vecの並列実行時の学習速度の改善
Word2vecの並列実行時の学習速度の改善
 
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
 
スパースモデリング入門
スパースモデリング入門スパースモデリング入門
スパースモデリング入門
 
混合モデルとEMアルゴリズム(PRML第9章)
混合モデルとEMアルゴリズム(PRML第9章)混合モデルとEMアルゴリズム(PRML第9章)
混合モデルとEMアルゴリズム(PRML第9章)
 
PRML輪読#1
PRML輪読#1PRML輪読#1
PRML輪読#1
 

Viewers also liked

Ensembles of example dependent cost-sensitive decision trees slides
Ensembles of example dependent cost-sensitive decision trees slidesEnsembles of example dependent cost-sensitive decision trees slides
Ensembles of example dependent cost-sensitive decision trees slides
Alejandro Correa Bahnsen, PhD
 
機会学習ハッカソン:ランダムフォレスト
機会学習ハッカソン:ランダムフォレスト機会学習ハッカソン:ランダムフォレスト
機会学習ハッカソン:ランダムフォレスト
Teppei Baba
 

Viewers also liked (6)

ハトでもわかる単純パーセプトロン
ハトでもわかる単純パーセプトロンハトでもわかる単純パーセプトロン
ハトでもわかる単純パーセプトロン
 
最適化超入門
最適化超入門最適化超入門
最適化超入門
 
Ensembles of example dependent cost-sensitive decision trees slides
Ensembles of example dependent cost-sensitive decision trees slidesEnsembles of example dependent cost-sensitive decision trees slides
Ensembles of example dependent cost-sensitive decision trees slides
 
決定木学習
決定木学習決定木学習
決定木学習
 
機会学習ハッカソン:ランダムフォレスト
機会学習ハッカソン:ランダムフォレスト機会学習ハッカソン:ランダムフォレスト
機会学習ハッカソン:ランダムフォレスト
 
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
 

Similar to わかりやすいパターン認識_2章

文字列曖昧検索によるマルウェアバイナリ解析
文字列曖昧検索によるマルウェアバイナリ解析文字列曖昧検索によるマルウェアバイナリ解析
文字列曖昧検索によるマルウェアバイナリ解析
Preferred Networks
 
Rのオブジェクト
RのオブジェクトRのオブジェクト
Rのオブジェクト
Itoshi Nikaido
 

Similar to わかりやすいパターン認識_2章 (10)

文字列曖昧検索によるマルウェアバイナリ解析
文字列曖昧検索によるマルウェアバイナリ解析文字列曖昧検索によるマルウェアバイナリ解析
文字列曖昧検索によるマルウェアバイナリ解析
 
講座Java入門
講座Java入門講座Java入門
講座Java入門
 
NINと画像分類 for 人工知能LT祭
NINと画像分類 for 人工知能LT祭NINと画像分類 for 人工知能LT祭
NINと画像分類 for 人工知能LT祭
 
Rのオブジェクト
RのオブジェクトRのオブジェクト
Rのオブジェクト
 
機械学習 / Deep Learning 大全 (2) Deep Learning 基礎編
機械学習 / Deep Learning 大全 (2) Deep Learning 基礎編機械学習 / Deep Learning 大全 (2) Deep Learning 基礎編
機械学習 / Deep Learning 大全 (2) Deep Learning 基礎編
 
Stacked Semantic Guided-Attention Model for Fine-Grained Zero-Shot Learning 論文紹介
Stacked Semantic Guided-Attention Model for Fine-Grained Zero-Shot Learning 論文紹介Stacked Semantic Guided-Attention Model for Fine-Grained Zero-Shot Learning 論文紹介
Stacked Semantic Guided-Attention Model for Fine-Grained Zero-Shot Learning 論文紹介
 
Inside frogc in Dart
Inside frogc in DartInside frogc in Dart
Inside frogc in Dart
 
データ解析13 線形判別分析
データ解析13 線形判別分析データ解析13 線形判別分析
データ解析13 線形判別分析
 
Introduction of Python
Introduction of PythonIntroduction of Python
Introduction of Python
 
第四回 JavaScriptから始めるプログラミング2016
第四回 JavaScriptから始めるプログラミング2016第四回 JavaScriptから始めるプログラミング2016
第四回 JavaScriptから始めるプログラミング2016
 

わかりやすいパターン認識_2章