TICA - 収束した

なんとか収束して、ガボールに見えなくもない基底ベクトルが得られました。

多項式カーネルを使っていたのですが、優ガウスの場合にはシグモイドカーネルを使うほうがよいらしく、カーネル関数にtanhを使うようにしたのがよかったです。

g(y) = tanh(y)

に変更して、学習係数を1.0e-4から1.0e-2にしました。
いままでバタついていたのが、嘘のように静まりました。

また、毎回のWの更新後に、行列演算により正規直交化をしていなかったという痛恨のミスもあり、これを入れたところ、うまく収束するようになりました。

tica_tanh.jpg

▲学習中の様子です。

今回はアニメのセル画っぽい画像からのパッチを使用しました。(森林の画像の場合、コントラストが悪く、初期のランダムなWからの収束が悪いかったです) 5,000枚から生成しています。PCAによる白色化をせず、生データを使っています。

位相や位置、方向、周波数に局所的な基底に分解されはじめているのが見えます。また、周波数の低い基底のまわりにトポロジが若干見えていると思います。それぞれの基底にまだ従属性がかなり残っているのと、マップが狭いので見えずらくなっています。

--

追記。 もう少し規模を拡大して実行してみました。

tica_5x5.jpg

Core2Duo 2.2GHz の1CPUで8時間実行した結果です。まだまだ位置の局所成分が従属しています。これを綺麗にするには、あとサンプルを1万パッチにして、2,3日放っておかないと駄目そうです。すごい計算量ですね。

トラックバック(0)

トラックバックURL: http://shigakuiwabuchi.jp/cgi-bin/mt/mt-tb.cgi/14

コメントする

このブログ記事について

このページは、Shigaku IWABUCHIが2009年9月17日 03:05に書いたブログ記事です。

ひとつ前のブログ記事は「TICA - Topographic Independent Component Analysis」です。

次のブログ記事は「小脳の計算機構の完全理解とその応用を目指して」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。