メニュー

技術ブログ

Denso IT Lab.社員による技術情報の紹介

Denso IT Laboratory researcher's blog sites

数式

RSS

ページトップへ

VCAとLS(3) 小さなことからコツコツと。そして Least Squares 再び。

p1
img-725224814_ページ_2
img-725224814_ページ_3
一つ前の投稿では、関数を多項式のクラスに限定することにより、(字面上は)簡単にVCが見つかることを示しました。

観測行列に多項式を追加していき、追加の際にその多項式が、与えられたデータを変換したベクトルをうまく使うことで、観測行列の正規直交性を保つことができるため、追加した多項式がVCかどうかは観測行列の対応する特異値が 0 かどうかでチェックできます。

ここでは、「ではどのような順序で多項式を追加すべきか」について考えてみます。

多項式は高次になればなるほど表現能力が上がりますが、それはオーバーフィッティングしやすいということと同義ですので、低次から進めて行くのが常識的ではないかと思います。
まずは「定数(つまり0次)」から始め、続いて「1次多項式」までの H を作ります。
その後は、2次多項式は 1次多項式 x 1次多項式 + 1次多項式 + 1 と表現できることから、1次多項式 x 1次多項式の組合せで多項式集合を作り、直交化し、null spaceかどうかを判断し、3次多項式については 2次 と 1次から、、、D次については D-1次 と 1次から…… と進めていきます。

すると、各多項式(データ X に関して互いに正規直交)は、実は多項式を和と積でつないだネットワーク構造で表現できることがわかります(当たり前ですね)。
VCA は、このネットワーク構造を効率良く学習できる手法である、と言えるのではないかな、と思います。

LS との比較を最後にすると、VCA ではネットワークは高次に行くにしたがってその深さはどんどん増して行きますが、LS はどんなに高次になろうとネットワークは1層のみです。あたり前と言えばあたり前ですがw

次回は学習の終了条件(の曖昧さ)と誤差に対するロバスト性、、、、、、、なんて言えるといいなあなんて思ってます。

このエントリーをはてなブックマークに追加

VCAとLS(2) Vanishing Component の求め方

img-725193633

前の投稿では、VC(Vanishing Component)の存在条件をLSと絡めて提示しました。
観測行列 H がNull subspaceを持つとき、つまり H のランクが落ちたときにVCは存在します(こう書くとあたり前だな……)。
そして、関数PがデータXを H の Null subspaceに対応する固有ベクトルへ写像するとき、関数PがVCであることを述べました。

ここでは、「そんな都合のいい関数ってそんなうまく見つかるの?」について回答できればと思います。

ポイントは、「関数を多項式にする」ということです。
多項式は実数倍と和について閉じていますから、ある多項式にデータを与えたときのベクトルをうまく使うことで、元々H内に存在する多項式と「与えられたデータについて」直交する新しい多項式を追加することができます。
#追加した瞬間には特異値分解が終わってるようなイメージですかね。。。。

このように追加した多項式は元々ある多項式と「与えられたデータについて」直交してますので(大事なことなので2回言いました)、あとはこの多項式に対応する特異値が 0 か否かを調べればおのずと多項式がVCかどうかもわかります。

次回は、「新しく追加する多項式はどんな風に選べばいいの?」について述べます。
# わかりにくいところについてはご指摘いただけると嬉しいです
# もちろん、おかしなところもご指摘ください m(__)m

P.S. 文字で書くとこういう流れなんですが、「多項式を計算機上で表現する」というのは、塚原さんも書いてましたがそれはそれで苦労します。。。

このエントリーをはてなブックマークに追加

VCAとLS(1) Vanishing Component Analysis と Least Squares

img-725180043
VCAを実装していて、「どうもうまく求まらんな」と思ったので、ちょっとまとめようと思います。

最小二乗法を足がかりにした方がわかりやすいと思いましたので、まずはそこから。

このメモのポイントは、観測行列H, パラメータベクトルθとしたとき、

Hθ=0

となる条件は、Hのランクが落ちるとき、です。

なので、H内の関数を逐次的に増やして行った場合、

Hのランクが落ちた瞬間に、Vanishing Component が存在することになるのですが、、、、

 

次はH内の関数を多項式に制限することにより、

SVDで上手に求まっていくあたりを説明できれば、、、、と思います。

 

# ほんとはちゃんとまとめてから投稿しようと練ってたんですが、

# あまりに手が早い人がいるので速報形式にします。仕事しろ!

このエントリーをはてなブックマークに追加