kaggle
Resnet regressionモデルを
stackingを含めたアンサンブルモデルの中へ
組み込んで見る.
現在学習中(結構時間がかかる)
projective spaceを利用した線分及び面の表現
(x, y)2次元ユークリッド空間における線分は
ax + by + c = (x, y, 1)(a, b, c)^T = 0
の形式で表す事ができる.
ここで,l = (a, b, c)を線分と呼ぶ.
この時,係数をk倍した場合の
kax + kby + kc = (kx, ky, k)(a, b, c)^T = 0
も同じ線分を表しているため,このkに関する軸wを新たに含んだ
(x, y, w)の3次元空間をprojective spaceと呼び,
対応する線分上の点を(x/w, y/w)で代表して表現する.
ここで,(x, y, w)が線分上の点を表す条件は
上式で(kx, ky, k)を(x, y, w)で置き換えれば,
(x, y, w)(a, b, c)^T = 0
になる.
これは面表現に拡張する事が可能で,今度は(x, y, z)3次元ユークリッド空間で
考えた時,ある3次元直線ax + by + cz + d = 0があってそれを法線として捉えれば
対応する平面を構成出来る.
すると結局3次元直線だけを考えておけば良い事になる.
対応するprojective space(x, y, z, w)表現は
ax + by + cz + dw = 0
となる.
ここでn = (a, b, c)は法線ベクトル(必ずしも単位長でない)で
原点から平面への距離は
D = w / ||n||
で表せる.(http://mathinsight.org/distance_point_plane)