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
『画像認識』第5章「分類」輪読会資料 / Image Recognition Chapter 5
Search
Shotaro Ishihara
November 17, 2017
Technology
0
620
『画像認識』第5章「分類」輪読会資料 / Image Recognition Chapter 5
「画像認識」(講談社、機械学習プロフェッショナルシリーズ)の勉強会発表資料_第5章
Shotaro Ishihara
November 17, 2017
Tweet
Share
More Decks by Shotaro Ishihara
See All by Shotaro Ishihara
記者・編集者との協働:情報技術が変えるニュースメディア / Kaishi PU 2024
upura
0
55
ニュースメディアにおける生成 AI の活用と開発 / UTokyo Lecture Business Introduction
upura
0
160
マルチモーダル AI 実装の課題と解決策 / Developer X Summit
upura
0
220
ニュースメディアにおける事前学習済みモデルの可能性と課題 / IBIS2024
upura
3
710
「巨人の肩の上」で自作ライブラリを作る技術 / pyconjp2024
upura
3
910
Quantifying Memorization and Detecting Training Data of Pre-trained Language Models using Japanese Newspaper
upura
0
53
第 2 部 11 章「大規模言語モデルの研究開発から実運用に向けて」に向けて / MLOps Book Chapter 11
upura
0
440
第19回YANSシンポジウムスポンサー資料 / yans2024-nikkei
upura
0
51
Quantifying Memorization of Domain-Specific Pre-trained Language Models using Japanese Newspaper and Paywalls
upura
0
66
Other Decks in Technology
See All in Technology
Qiita埋め込み用スライド
naoki_0531
0
5.4k
ISUCON、今年も参加してみた / ISUCON, I challenged it again this year.
dero1to
0
110
多領域インシデントマネジメントへの挑戦:ハードウェアとソフトウェアの融合が生む課題/Challenge to multidisciplinary incident management: Issues created by the fusion of hardware and software
bitkey
PRO
2
130
株式会社ログラス − エンジニア向け会社説明資料 / Loglass Comapany Deck for Engineer
loglass2019
3
32k
Oracle Cloud Infrastructure:2024年12月度サービス・アップデート
oracle4engineer
PRO
1
350
マイクロサービスにおける容易なトランザクション管理に向けて
scalar
0
200
re:Invent をおうちで楽しんでみた ~CloudWatch のオブザーバビリティ機能がスゴい!/ Enjoyed AWS re:Invent from Home and CloudWatch Observability Feature is Amazing!
yuj1osm
0
140
プロダクト組織で取り組むアドベントカレンダー/Advent Calendar in Product Teams
mixplace
0
500
スケールし続ける事業とサービスを支える組織とアーキテクチャの生き残り戦略 / The survival strategy for Money Forward’s engineering.
moneyforward
0
130
日本版とグローバル版のモバイルアプリ統合の開発の裏側と今後の展望
miichan
1
150
20240522 - 躍遷創作理念 @ PicCollage Workshop
dpys
0
100
[Ruby] Develop a Morse Code Learning Gem & Beep from Strings
oguressive
1
200
Featured
See All Featured
Scaling GitHub
holman
459
140k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Designing for humans not robots
tammielis
250
25k
Building Better People: How to give real-time feedback that sticks.
wjessup
366
19k
Rails Girls Zürich Keynote
gr2m
94
13k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
920
A better future with KSS
kneath
238
17k
The Invisible Side of Design
smashingmag
299
50k
Producing Creativity
orderedlist
PRO
342
39k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Designing Experiences People Love
moore
139
23k
Transcript
画像認識勉強会 第5章 分類 2017年9⽉5⽇
2 本⽇伝えたいこと • 「分類」を体系的に知る • 適当に使うだけなら、ライブラリを⽤いて数⾏で実装できてしまう • どんな種類があり、どんな特徴があるのか、全体像を把握する
本⽇の内容 • 分類とは(5.1節+@) • ベイズ決定則(5.2節) • 識別関数(5.3, 5.4, 5.5, 5.6,
5.9節) • 識別的アプローチ(5.8節) • ⽣成的アプローチ(5.7節) • 分類結果の評価(5.10節) • まとめ 3
タスク • ⼊⼒画像から⽣成された特徴ベクトルにクラスを付与 4 ⼊ ⼒ 画 像 サ ン
プ リ ン グ と 記 述 統 計 的 特 徴 抽 出 コ デ ィ ン グ プ リ ン グ 分 類 器 ク ラ ス
5 より具体的なタスク • 特徴空間の適切な領域分割+領域へのクラス付与 ಛۭؒ ಛϕΫτϧ 原⽥達也: 画像認識 (機械学習プロフェッショナルシリーズ), 講談社,
p. 126 ,2017.
6 分類問題への3つのアプローチ 訓練データ $ クラス割り当て 推論 C.M.ビショップ: パターン認識と機械学習 上, 丸善出版,
pp. 37-45 ,2017. ($ ) $ 決定 + →決定理論を⽤いたアプローチ →そうでないアプローチ(識別関数を⽤いる)
本⽇の内容 • 分類とは(5.1節+@) • ベイズ決定則(5.2節) • 識別関数(5.3, 5.4, 5.5, 5.6,
5.9節) • 識別的アプローチ(5.8節) • ⽣成的アプローチ(5.7節) • 分類結果の評価(5.10節) • まとめ 7
8 ベイズ決定則 • (古典的な)統計的決定理論を⽤いた分類⽅法 • 「推論」と「決定」の2段階に分ける⼿法 • 事後確率を求め、その上で意思決定を⾏う • 事後確率が分かっていると、閾値の設定など⾼度な意思決定に活⽤できる
• 「損失」の期待値を最⼩化する分類器の設計を⽬指す • 損失:誤った分類で被る影響
9 損失 • 損失 $ | = ∑ $ ,
- - | ./ -01 • 損失関数 $ , - • クラス- をクラス$ と判断した時の損失の⼤きさ • 事後確率 - | • ⼊⼒に対してクラス- と判断する確率
10 損失の期待値 • にクラスを付与する関数を とする • 損失 | = ∑
, - - | ./ -01 • 損失の期待値 = Ε5 |
11 例:0-1損失 • ⾮常に単純な損失関数 (とはいえ汎⽤性が⾼い) • 以下、この損失関数を⽤いて 分類問題を考える • $
, - = 1 − $- • $- はクロネッカーのデルタ • $ = - : • 0 • $ ≠ - : • 1
12 例:0-1損失 • $ | = ∑ 1 − $-
- ./ -01 = ∑ - -<$ = 1 − $ • この損失の期待値 Ε5 1 − $ を最⼩にする ⟹ 事後確率 $ を最⼤にする(最⼤事後確率則) • に対する事後確率が最⼤となるクラスに分類する
13 事後確率 $ の求め⽅ 訓練データ $ クラス割り当て ⽣成的アプローチ 識別的アプローチ ($
) $ →そうでないアプローチ(識別関数を⽤いる)
本⽇の内容 • 分類とは(5.1節+@) • ベイズ決定則(5.2節) • 識別関数(5.3, 5.4, 5.5, 5.6,
5.9節) • 識別的アプローチ(5.8節) • ⽣成的アプローチ(5.7節) • 分類結果の評価(5.10節) • まとめ 14
15 識別関数(5.3節) • 「各クラスであるかどうか」を判定する何かしらの関数 • 最⼤の出⼒を得たクラスに⼊⼒を分類する • if $ ≥
- for ∀-<$ ⇒ ∈ $ 訓練データ クラス割り当て 識別関数を⽤いるアプローチ
16 識別関数の教師付き学習(5.4節) • 訓練データ(⼊⼒ベクトル G ,対となる情報 G )から、 損失を最⼩化するようなパラメータを推定する •
実際には「過学習」を防ぐため、以下のような式を最⼩化する のが⼀般的 • = 1 . ∑ G ; , G . G01 + 損失 ペナルティ : 損失とペナルティのどちらに 重きを置くかの度合い
17 識別関数の最適化⼿法(5.5節) • 1次の微分情報を⽤いた⼿法 • 勾配降下法、確率的勾配降下法 • 2次の微分情報を⽤いた⼿法 • ニュートン法
18 勾配降下法 • ⽬的関数 の1次微分を求めて、 勾配の逆⽅向にパラメータを 逐次的に更新していく⼿法 • PQ1 ←
P − U P 勾配⽅向
19 バッチ学習とオンライン学習 • バッチ学習 • ステップごとに全ての訓練データを⽤いてパラメータ更新 • 正確だが、計算量の問題あり • オンライン学習
• ⼀つのデータが与えられるたびにパラメータ更新 • 例:確率的勾配降下法
20 ニュートン法 • ⽬的関数の2次のテイラー展開を最⼩化するようにパラメータの 修正量を各ステップで決定する学習⼿法 • PQ1 = P +
= P + U W P + 1 2 WU P U = U Z ヘッセ⾏列(Hessian matrix) テイラー展開 (∗)
21 ニュートン法 • (∗)をで微分して停留点を求めると、修正量は以下になる • = −U [1 P U
P • 更新則 • PQ1 ← P − U [1 P U P
22 ニュートン法 • ⼀般に、ニュートン法は勾配降下法よりも良い結果を与える • 問題点: • ヘッセ⾏列の逆⾏列を計算するため、ヘッセ⾏列が⾮正則のとき適⽤ できない •
計算コストが⾼い
23 具体的な識別関数(5.6節) • 線形識別関数 • パーセプトロン • Adaline • サポートベクトルマシン(SVM)
24 線形識別関数 • 2クラス分類の場合: • = W + • ≥
0 → クラス1 • < 0 → クラス2 • a = argmax f ⇒ ∈ f
25 線形識別関数 • 多クラス分類の場合(one-vs-one): • $,- = W + •
$,- ≥ 0 → クラス • $,- < 0 → クラス • aは最も多くの票を集めたクラス(総数f f[1 Z 票)
26 線形識別関数 • 多クラス分類の場合(one-vs-rest): • $ = W + •
$ ≥ 0 → ∈ $ • $ < 0 → ∉ $ • a = argmax f ⇒ ∈ f
27 パーセプトロン • ⼊⼒ベクトルと重みベクトルの内積の正負で判別する • 学習データが線形分離可能な場合に 正しく分離できる平⾯を⾒つける
28 内積の意味 重みベクトル • ⋅ = cos • − s
Z < < s Z のとき正、 s Z < < ts Z のとき負になる
29 学習アルゴリズム 1. 重みベクトルを要素0で初期化 2. 訓練データからランダムにサンプルを選択 3. 分類が間違っていたら重みベクトルを更新 • 間違えたデータを正しく分類できるよう修正する
4. すべての訓練データを正しく分類できるまで2以降を繰り返す
30 重みベクトルの更新
31 パーセプトロンの特徴 線形分離不可能な場合に収束しない 線形分離可能な場合は収束する
32 Adaline • 線形分離不可能な場合でも解を求める⼿法 • 重みベクトルの更新に際して、1個ずつでなく全体をまとめて 扱う(コスト関数を⽤いる)ことで、落とし所を⾒つける • コスト関数として2乗損失を⽤いた場合: •
= 1 Z − W Z
33 Adalineでの更新式 • 勾配降下法を⽤いる(実⽤的には確率的勾配降下法) • ← − − − W
• 問題点: • 2乗損失では、決定境界から離れた訓練データの影響が⼤きくなる
34 サポートベクトルマシン • ヒンジ損失を⽤いる • max (0, 1 − W)
• 正しく分類できていても、決定境界に近い場合には損失を与える • = max 0, 1 − W + | |Z -1 1 W 1 0 ヒンジ損失 0-1損失
35 サポートベクトルマシンでの更新式 • 勾配降下法を⽤いる(実⽤的には確率的勾配降下法) • ← − 2 if 0
> 1 − W • ← − 2 − otherwise
36 サポートベクトルマシン • マージンの最⼤化に相当 原⽥達也: 画像認識 (機械学習プロフェッショナルシリーズ), 講談社, p. 138
,2017.
37 集団学習(5.9節) • 単純な分類器を複数組み合わせ、⾮線形な分類器を構築 • 複雑な決定境界の設定が可能 • 組み合わせる予測器は単純で⾼速計算が可能なため、リアルタイム性が求め られる画像認識システムでよく利⽤される •
代表的な⼿法 • バギング • ランダムフォレスト • ブースティング
38 バギング • 訓練データからサブセットを複数回抽出し、各結果で多数決 • 不安定な学習アルゴリズムに有効 訓練データ サブセット2 サブセット1 サブセットM
… ブートストラップ法 分類器1 分類器2 分類器M 多数決 …
39 決定⽊/不安定な学習アルゴリズム • ⼊⼒データに対して次々と「質問」していく 原⽥達也: 画像認識 (機械学習プロフェッショナルシリーズ), 講談社, p. 149
,2017.
40 ランダムフォレスト • バギングにおける弱学習器として決定⽊を採⽤した⼿法
41 ブースティング • 逐次的に予測器を学習し、多数決または重み付け和で予測する • 後段の学習器では、前段の学習器が苦⼿な訓練データを積極的に分類 できるように修正していく 訓練データ 分類器1 分類器2
分類器M 重み付き多数決 … 信頼度1 信頼度Z 信頼度y
本⽇の内容 • 分類とは(5.1節+@) • ベイズ決定則(5.2節) • 識別関数(5.3, 5.4, 5.5, 5.6,
5.9節) • 識別的アプローチ(5.8節) • ⽣成的アプローチ(5.7節) • 分類結果の評価(5.10節) • まとめ 42
43 識別的アプローチ • 確率分布を推定せず、 $ を直接的に求める • ⽣成的アプローチより⼀般に分類精度が⾼い
44 識別関数と識別的アプローチ • 識別関数の出⼒は−∞から∞ • クラスの事後確率(0-1)として捉えるのは難しい • 識別的アプローチ(確率的識別関数)では、識別関数を拡張して $ を予測する
45 ロジスティック回帰 • = 1 1Q{|} ([U~5) = W •
定義域が−∞から∞、値域が0から1 • 1 = W • Z = 1 − W 0.5 1.0 W
46 ロジスティック回帰での更新式 • = −ln • 尤度 = ∏ 1
| ƒ„ Z | 1[ƒ„ (G ∈ 0,1 ) . G01 • 勾配降下法やニュートン法を⽤いる • PQ1 ← P − U P • PQ1 ← P − U [1 P U P
47 ソフトマックス回帰 • ロジスティック回帰の⼀般化(多クラス分類に対応) • - = {|} U …
~5 ∑ {|} U † ~5 ‡/ †ˆ‰
48 ソフトマックス回帰での更新式 • = −ln • 尤度 = ∏ ∏
- G Š ƒ„0- ./ G01 . G01 • 指⽰関数 ⋅ : true = 1, false = 0 • 勾配降下法やニュートン法を⽤いる • PQ1 ← P − U P • PQ1 ← P − U [1 P U P
本⽇の内容 • 分類とは(5.1節+@) • ベイズ決定則(5.2節) • 識別関数(5.3, 5.4, 5.5, 5.6,
5.9節) • 識別的アプローチ(5.8節) • ⽣成的アプローチ(5.7節) • 分類結果の評価(5.10節) • まとめ 49
50 ⽣成的アプローチ • 訓練データから、⼊⼒を⽣成する規則(確率分布)を推定 • ベイズの定理を使⽤ $ = • $
• Ž† • 5 ∝ $ $ • 事前確率 $ : 訓練データ内の割合で近似することが多い • 条件付き確率 $ : 訓練データからベイズ推定法などで計算することが多 い • 確率分布の推定は⼀般に困難で、分類精度は⾼くない • 近年、画像⽣成の分野で発展が著しい(VAE, GANなど)
51 密度推定/⽣成的アプローチ • = ∫ ℛ (を含む⼩さい領域ℛに割り当てられた確率) • ≃ (全体の総数をとした場合のℛ内の個数)
• ≃ ( が⼀定と近似できるほど体積が⼩さい時) • ∴ = ˜ ™ = š .™ • を固定しを推定(K近傍密度推定) • を固定しを推定(カーネル密度推定)
52 K近傍法密度推定 • 超球の体積 = s › œ•œ ž ›
œ Q1 • : 訓練データが個含まれる超球の半径 • Γ: ガンマ関数 Γ = ∫ |¢[1[5| ¤ ¥ • $ = f¦† .¦† ™ で推定 • $ ∝ $ $ = f¦† .¦† ™ ⋅ .¦† . ∝ Ž† $ の⼤きさは$ に属する 訓練データの数に⽐例する
53 K近傍法密度推定による分類 原⽥達也: 画像認識 (機械学習プロフェッショナルシリーズ), 講談社, p. 143 ,2017.
54 カーネル密度推定 • 超⽴⽅体の体積 = ℎ¨(ℎ: バンド幅) • に⼊る標本数 =
∑ 5[5† © $:ª†0ª • $ = 1 .¦† ™ ∑ 5[5† © $:ª†0ª で推定 • カーネル関数 , $ には、ガウスカーネルがよく⽤いられる • $ ∝ $ $ = 1 .¦† ™ ∑ 5[5† © $:ª†0ª ⋅ .¦† . ∝ ∑ 5[5† © $:ª†0ª
55 カーネル密度推定による分類
本⽇の内容 • 分類とは(5.1節+@) • ベイズ決定則(5.2節) • 識別関数(5.3, 5.4, 5.5, 5.6,
5.9節) • 識別的アプローチ(5.8節) • ⽣成的アプローチ(5.7節) • 分類結果の評価(5.10節) • まとめ 56
57 正解率 • 正解率= 分類が当たった数 全データ数 • 問題点 • クラス1が1%、クラス2が99%のデータ群(ガンの判定など)
• 「全部クラス2と分類する分類器」→正解率99% • 「クラス1にも分類しようとする分類器」→正解率99%より低いことも…
58 評価指標 • 精度(precision)= • 再現率(recall)= • F値= Z×}-{®¯°¯±²×-{®³´´ }-{®¯°¯±²Q-{®³´´
検索結果の「再現率」と「適合率」, http://d.hatena.ne.jp/Zellij/20120214/p1
59 AUC(Area Under the Curve) precision 1 - recall ←理想的な曲線
←実際の曲線 AUC • ⼤きいほど良い分類器
60 交差検証法 • 分類器は未知のデータに対して性能評価しなければならない • 訓練データが少ない場合に⽤いられる検証⼿法 第21回(最終回)機械学習 はじめよう, http://gihyo.jp/dev/serial/01/machine-learning/0021
本⽇の内容 • 分類とは(5.1節+@) • ベイズ決定則(5.2節) • 識別関数(5.3, 5.4, 5.5, 5.6,
5.9節) • 識別的アプローチ(5.8節) • ⽣成的アプローチ(5.7節) • 分類結果の評価(5.10節) • まとめ 61
62 まとめ • 分類の具体的なタスクを説明し、3つのアプローチを紹介した • 識別関数 • 識別的アプローチ • ⽣成的アプローチ
• 分類結果の評価⽅法を紹介した
Appendix
64 テイラー展開 • = ¥ + µ ¥ − ¥
+ 1 Z! µµ ¥ − ¥ Z + ⋯ • = ¥ + ℎと置くと、以下のように表現できる • ¥ + ℎ = ¥ + µ ¥ ℎ + 1 Z! µµ ¥ ℎZ + ⋯
65 ⾏列のテイラー展開 • P + = P + U P
⋅ + 1 Z! U Z P ⋅ Z = P + U W P + 1 Z U P Z = P + U W P + 1 Z U P W = P + U W P + 1 2 WU P (∗) U P = U W P
66 (∗)をで微分したものを0と置く • U W P + 1 Z ⋅
2U P = 0 • = −U [1 P U P
67 ⽣成的アプローチの発展 • 推定した(潜在的な)確率分布から、新たに画像を⽣成 訓練データ $ 新規データ ⽣成的アプローチ ($ )
$
68 Variational Autoencoder (VAE) • “input”から確率分布を推定し、 “output”として新しい画像を出⼒ • 普通のAutoencoderとは、”hidden” の部分を変数ではなく確率分布にし
ているところが異なる http://blog.fastforwardlabs.com/2016/08/22/unde r-the-hood-of-the-variational-autoencoder-in.html
69 Generative Adversarial Networks (GAN)* * Generative Adversarial Nets. Ian
J. Goodfellow, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair, Aaron Courville, Yoshua Bengio. arXiv:1406.2661. In NIPS 2014. [Figure] https://www.slideshare.net/xavigiro/deep-learning-for- computer-vision-generative-models-and-adversarial-training-upc- 2016 • 近年注⽬を集める(画像の) ⽣成的アプローチ • ⽣成器(⽣成的アプローチ) と識別器(識別関数を⽤いた アプローチ)を戦わせて、 ⽣成精度を向上させる