多次元尺度構成法を使って画像の類似度を可視化する(その2)
前回の類似画像可視化ですが、お世辞にもうまくいっていたとは言えない結果でした。ふと忘れていたことがあってそちらで少し調整してみたのが今回のハイライトです。
正規化したらいい感じになりました。
前回では、特徴量を抽出したあと、そのままCMD(GNU Rでいうcmdscale)に投げていたんですけれども、そういえば、前回紹介した論文*1中に「SVMに仕事を投げる前に、データを正規化しておけよ」という文章があったことを思い出して、実行してみました。
正規化の方法は、正規分布を仮定
今回行った正規化の方法は、データから標本平均を引いて、標本分散で割る手法を取っています。ようするに、今回の正規化によって加工されたデータは、平均が0、分散が1となります。
数値の正規化については、こちらがとても参考になります。
結果
結果画像がこちら。色の似ている画像がそれぞれ近くに配置されて全体としてグラデーションが生成されていることがわかります。
正規化は大事です
今回の経験で、データの正規化が重要だということを身を以て知りました。正規化するだけでこんなによくなるなんて。
しかし、今回行った正規化というのは、全てのデータがなければ個々のデータが設定できないということです。各データの平均や分散を求めるのに、N(標本数)が必要ですよね。オンライン学習などにおいて厳しいのかなと感じました。
各特徴量の値域を的確に制限できれば、今回のような正規化することで劇的によくなる現象は発生しなくなるんでしょうかね。