【論文紹介】 Approximate Bayesian Image
Interpretation Using Generative Probabilistic Graphics Programs
NIPS 2013 論文読み会 2014/1/23 @東大工学部6号館
加藤公一 @hamukazu
シルバーエッグ・テクノロジー株式会社
自己紹介
加藤公一(きみかず)
博士(情報理工学)
修士までは数学
シルバーエッグテクノロジー株式会社
レコメンドエンジン作ってます
論文
• タイトル:Approximate Bayesian Image Interpretation using Generative Probabilistic Graphics Programs
• 著者:V.Mansinghka, T.D,Kulkarni, Y.N.Perov, J.Tenenbaum
概要
• 画像認識の新しい手法を提案
• 応用例2例
– CAPTCHAの解析
–写真から道路の抽出
背景
• 「与えられた画像のシーンをシンボリックに記述する」という問題
• 従来、画像認識を使ったボトムアップのアプローチが成功してきた
• しかし、ボトムアップアプローチの問題点として、精度を上げるには大きなコーパス(学習データ)が必要
画像認識により分解する
分解された要素について、それぞれパラメータを推定する
構成要素を仮定する
構成要素がどのように組み合わされているかというパラメータを推定する
ボトムアップアプローチ トップダウンアプローチ
本論文で提案するのはトップダウンアプローチの方
モデル
Stochastic Scene Generator
Approximate Renderer
Stochastic Comparison
≘ ⊻ ≐ ∨ ≘ ∩ ≓ ⊻ ≐ ∨ ≓ ∩
≉ ≒ ⊻ ≦ ∨ ≓ ∻ ≘ ∩ ≉ ≄ ≐ ∨ ≉ ≄ ≪ ≉ ≒ ∻ ≘ ∩
CAPTCHAの場合の例
文字の種類、大きさ、位置、回転角度など
文字ごとのぼかし、全体のぼかしの係数
入力画像
≐ ∨ ≓ ≪ ≉ ≄ ∩ を求めたい
計算方法
MCMC法(Metropolis-Hastingsアルゴリズム)
元画像からある一定の距離にあると仮定してrejection sampling (確率αでaccept)
≐ ∨ ≓ ∩ ∽ ≙ ≩ ≐ ∨ ≓ ≩ ∩ ≱ ≩ ∨ ≓ ∰ ≩ ∻ ≓ ≩ ∩ ≐ ∨ ≘ ∩ ∽
≙ ≪ ≐ ∨ ≘ ≪ ∩ ≱ ≪ ∨ ≘ ∰ ≪ ∻ ≘ ≪ ∩ ∽ ≐ ∨ ≘ ∰ ≪ ∩
≐ ∨ ≉ ≄ ≪ ≦ ∨ ≓ ∻ ≘ ∩ ∻ ≘ ∩
⊮ ∨ ∨ ≓ ∻ ≘ ∩ ∡ ∨ ≓ ∰ ∻ ≘ ∰ ∩ ∩ ∽ ≭ ≩ ≮ ⊵ ∱ ∻ ≐ ∨ ≉ ≄ ≪ ≦ ∨ ≓ ∰ ∻ ≘ ∰ ∩ ∻ ≘ ∰ ∩ ≐ ∨ ≓ ∰ ∩ ≐ ∨ ≘ ∰ ∩ ≱ ∨ ∨ ≓ ∰ ∻ ≘ ∰ ∩ ∡ ∨ ≓ ∻ ≘ ∩ ∩ ≐ ∨ ≉ ≄ ≪ ≦ ∨ ≓ ∻ ≘ ∩ ∻ ≘ ∩ ≐ ∨ ≓ ∩ ≐ ∨ ≘ ∩ ≱ ∨ ∨ ≓ ∻ ≘ ∩ ∡ ∨ ≓ ∰ ∻ ≘ ∰ ∩ ∩
⊶
は、画像の差分をもとに計算する
(復習?) Metropolis-Hastingsアルゴリズム
以下を繰り返す
変数の初期値をランダムに設定
変数S_i, X_jの中から一つ選ぶ
選ばれた変数について、決められた確率分布に応じてサンプリング (そうやって更新したものをX’, S’とする)
確率αでS, XをS’, X’で置き換える。それ以外の場合はS’, X’を捨てる。 (rejection sampling)
応用例1:CAPTCHAの解読
• CAPTCHA: ウェブページで登録するときに人間であることを確認するための、文字画像
• TurboTax, E-Trade, AOLなどのデータを利用
• (わざと)文字の一部が重なっていたりして、読み取るのが難しい。
パラメータ
• S:グリフごとに、存在するか、位置、大きさ、回転角度
• X:グリフごとのぼかし係数、全体のぼかし係数
実験結果
提案手法による認識率:70.6% Tesseractによる認識率:37.7%
ロバスト性
イテレーションの過程で局所最適解をうまく脱している
応用例2:道路抽出
• 画像から道路を抽出したい
• 車の自動運転などでの応用を想定
• 実験用データはKITTI Vision Benchmark Suite
パラメータ
• S: 道路の高さ、道路の幅、車線の幅、道路の端のカメラからの相対位置
実験結果
(C)と(d)が既存手法の結果、(e)が提案手法の結果
実験結果(続き)
(GPGPは提案手法のこと)
自信がないケース) 自信があるケース)
結論
• レンダラを使った生成モデルで、シーン変数を正確に予測することができた。
• 2Dのアプリケーション:CAPTCHA、3Dのアプリ
ケーション:道路推定、で同じ手法が有効である。
• しかし、複雑なモデルな場合にスケールさせるのは難しい。