ヒートマップの評価手法(論文の要約・和訳)

生成したヒートマップの評価手法は色々な方法があるらしく,今後評価実験にものすごい労力がかかりそうなのでまとめておく.

参考にする論文は,以下の三つ.
評価手法の概要を抜粋する.

[1] What Do Different Evaluation Metrics Tell Us About Saliency Models? - IEEE Journals & Magazine
[2] [1810.03716] Saliency Prediction in the Deep Learning Era: Successes, Limitations, and Future Challenges
[3] Information-theoretic model comparison unifies saliency metrics | PNAS


また,MIT BenchMarkという評価プラットフォームもあるらしく,ここで取り上げる複数の評価手法を組み合わせて多くの観点からモデルを評価している.
MIT Saliency Benchmark

ヒートマップ評価手法の分類

ヒートマップの評価手法は大きく分けて,位置ベース手法と分布ベース手法の2種類に分類される[1].

  • 位置ベース手法: 実測の視線位置座標を離散的に捉えて処理を行う(それぞれのピクセルに対して個別に計算する).
  • 分布ベース手法: 実測の視線位置座標マップと生成したヒートマップの両方を連続的に捉えて処理を行う(ヒートマップ全体の分布に対して計算する).

分布ベースの手法に関しては,視線位置座標しかデータがないため実際の分布を得ることができない.したがって,ガウスぼかしを使って正規分布ガウス分布)状にぼかした形で近似する(スムージング).

f:id:Takuya-Shuto-Engineer:20190810120943p:plain
ガウスぼかしによる視線位置座標値から連続分布へのスムージング([1]より引用)

位置ベース手法

位置ベース手法の中でもよく用いられるものを一つずつまとめる.

Area Under ROC Curve (AUC)

機械学習モデルの評価手法としてしばしば使われているAUCと同じもの.
2クラス分類問題(対象物が目標物であるかどうかの判別 0 or 1)における真陽性率(TP rate)と偽陽性率(FP rate)の関係を表すのがROCである.ROCは媒介変数として推定確率pを持っており,pを変化させながらTPとFPの関係をプロットしていく.AUCはこのROC曲線の下の面積のことである.この面積が大きくなれば大きくなるほど,モデルの評価は高くなる.

これをヒートマップの評価に当てはめる場合を考えると,各ピクセル上でこの点は注視点であるかどうかを判別する2クラス分類問題であることがわかる.

手順:

  1. ヒートマップは[0,1]の範囲に正規化された値であり,これをある閾値(threshold)で[0 or 1]の二値表現(バイナリ)に変換する.
  2. バイナリヒートマップ上の1(陽性)の範囲内における実際に視線位置座標が占める割合がTP,注視点ではないのにバイナリヒートマップ上に含まれてしまったピクセルの割合がFPになる.
  3. 2を閾値を変化させながら繰り返し,ROC曲線をプロットする.
  4. ROC曲線に基づいてAUCを計算する.

f:id:Takuya-Shuto-Engineer:20190810160238p:plain
ヒートマップにおけるAUCの計算([1]より引用)

以上が基本的なAUCの計算方法である.ヒートマップ上でAUCを計算する方法をAUC-Juddと呼ぶらしく,単にAUCと呼ぶこともある.
AUCには更に拡張系があるので,AUCの拡張系についてもまとめる.

AUCの拡張は図を見ながら見比べるとわかりやすかった.

f:id:Takuya-Shuto-Engineer:20190810163826p:plain
AUC拡張系の比較([1]より引用)

AUC-Borji

AUCの拡張系では,主にFPの計算方法を工夫することで単純なAUCとは異なる特性を計算する.
TPの計算方法はこれ以上改善の余地がないため,ネガティブサンプルの表現方法や前提となる仮説から攻めようということだと考えられる.
AUC-Borjiでは,無作為にランダムサンプリングを行なって画面全体に一様に広がるネガティブサンプルを生成する.

ネガティブサンプルの中にはもちろん実際に注視点であるものも含まれてしまうが,あくまで"適当"に取ってきたものなので仕方ない.それを含めてFPを計算するらしい.

shuffled AUC(sAUC)

sAUCでは,ネガティブサンプルにデータセット内の対象画像以外の視線位置座標値をランダムに抽出することで表現する.
ランダムに色々な画像の注視点を抽出することで,自然と中心から外側へ広がる正規分布状のネガティブサンプルを生成することができるらしい.
人間の視覚特性には,センターバイアス効果と呼ばれる注視点が画面の中心に集まるという特性がある.sAUCではこれを実際のデータで再現している.

ネガティブサンプルが中心に集まるため,センターバイアス効果を考慮したモデルに対しては高いペナルティを課すため,FPが高くなる傾向にある.
言い換えると,センターバイアス効果があるからといって中心ばかりに注視点を取っているモデルに対しては低い評価をするということである.

AUC-Borjiと比較すると無作為にランダム抽出したものより,センターバイアスがかかったネガティブサンプルが抽出できていることがわかる.

Normalized Scanpath Saliency (NSS)

AUCの計算手法を採用する上で気をつけないといけないことは,全体を覆うようなヒートマップを生成してしまえば,TPが高くなり比較的スコアが高くなってしまうことである.
NSSでは,そういったスコアを上げるためのズルにペナルティを与えるために考案された評価手法である.

f:id:Takuya-Shuto-Engineer:20190810164832p:plain
AUCとNSSの評価値の比較([1]より引用)

NSSでは,ヒートマップの値を標準化することで平均値との差分で注視点に重みをつけて加算させる.NSSにて重視されるのは,注視点において高い予測値を,非注視点では低い推定血を設定することである.

計算式:
 NSS(P, Q^B) = \frac {1} {N} \sum_i \overline{P_i} × {Q^B}_i
 where \quad N = \sum_i {Q^B}_i \quad and \quad \overline{P} = \frac {P - \mu(P)} {\sigma(P)}
※ Pはヒートマップ {Q^B}は注視点のバイナリマップ(0 or 1), Nは1である注視点の数をカウントしているのと同じ
注視点における標準化されたヒート値の総和を計算している.

もし全体的にそこそこの推定値に設定していたとしても,全体的な平均値が上がってしまって平均値との差分によって得られるスコアが低くなってしまうため,AUCが高くてもNSSが低いようなモデルは信頼性が低いと考えられる.細かく注視点をカバーでき,可能性の低い領域にはしっかりと低い値を設定しているモデルには高いNSS値がつく.

Information Gain (IG)

IGは情報理論的手法でヒートマップと注視点座標の関係を表現する手法である.
IGでは注視点座標が何らかのベースラインマップに則っていると仮定して計算を行う.
通常はベースラインマップにはセンターバイアス効果モデルである,Center Prior Baselineが用いられるらしい.

計算式:
 IG(P, Q^B) = \frac {1} {N} \sum_i {Q^B}_i ({log}_2(\epsilon + P_i) - {log}_2(\epsilon + B_i))
※ Bはベースラインマップ(センターバイアス効果モデルの場合は中心からガウス分布状に広がる重みを注視点に対して付与する), \epsilon正則化

f:id:Takuya-Shuto-Engineer:20190810173626p:plain
IGの計算[1]より引用

f:id:Takuya-Shuto-Engineer:20190810180642p:plain
IGの計算([3]より引用)

IGはヒートマップ がセンターバイアス効果を考慮している(ベースラインマップが掛け算されていると予想している)ことを前提としているため,注視点マップとヒートマップの両方をベースラインマップで割る.
その後,二つの対数を取って差分を取ることでどの程度両者が一致しているかがわかる.

分布ベース手法

分布ベース手法の中でもよく用いられるものを一つずつまとめる.また,先に述べたように分布ベース手法ではガウスぼかしによるスムージングにより,正解の注視点を連続値として扱う.

Similarity(SIM)

SIMでは,単純な分布同士の比較によってヒートマップ間の類似度を計算する.
前処理として,ヒートマップと注視点マップの双方を正規化する(分布として画像を捉えたいので,全てのピクセル値の総和が1になるように正規化).

類似度計算は両マップの各ピクセルの小さい方の値の総和で計算される.

仮に分布が完全一致していた場合,単なる分布の総和なため,類似度は1となる.
一方で,分布がずれればずれるほど小さい方の値を計算に用いられてしまうため総和は少なくなり,重なる部分がなければ0になる.

f:id:Takuya-Shuto-Engineer:20190812200048p:plain
SIMの計算

単純な方法であり,計算も簡単.
正解注視点の全エリアに対して予測を行わないとスコアが低くなるため,細かい予測の抜けに敏感に評価を行う.

計算式:
 SIM(P,Q^D) = min(P_i,{Q^D}_i) \quad where \quad \sum_i P_i = \sum_i {Q^D}_i

SIMでは,偽陽性(FP)が偽陰性(FN)よりもペナルティが小さくなりがちになる.

Pearson’s Correlation Coefficient (CC)

日本語では,ピアソンの相関係数.画像処理では,Zero-mean Normalized Cross-Correlation(ZNCC)とも呼ばれるらしい.
統計的に相関を検討する手法であり,線形相関係数とも呼ばれる.

統計学で学んだように,ヒートマップ注視マップの分布の相関を計算する.

二つの分布に相関があるかどうかは,共分散を標準偏差の積で割るから,
計算式:
 CC(P,Q^D) = \frac {\sigma(P, Q^D)} {\sigma(P) × \sigma(Q^D)}
で求められる.

画像をベクトルとして見たとき,分子の共分散の計算はベクトルの内積の計算(各ピクセル値の平均との差を全ての要素間で積を取っているから),分母の標準偏差の掛け算はベクトルの長さ(各ピクセルの平均との差の二乗の総和の平方根だから,ピタゴラスの定理の拡張と同じことをしている)を計算していると捉えられる.
つまり,似ているヒートマップを生成できているのであれば,ベクトルとしてみなした時に内積が大きくなるため,類似度の計算になっているということ.

こちらのスライドがわかりやすかった: 「内積が見えると統計学も見える」第5回 プログラマのための数学勉強会 発表資料

CCは-1から1までの区間で対称性を持つため,FPとFNを平等に評価することができる.一方で,類似度が低い原因がFPなのかFNなのかは判別することができない.

Kullback-Leibler divergence (KL)

近日更新

Earth Mover’s Distance (EMD)

近日更新