Main Content

linkdist

リンク距離関数

構文

d = linkdist(pos)

説明

linkdist は層の距離関数で、層にある複数のニューロンの位置が与えられた場合に、その間の距離を求めるために使用します。

d = linkdist(pos) は、次の 1 つの引数を取ります。

pos

NS 列のニューロンの位置行列

これは、SS 列の距離行列を返します。

以下では、3 次元空間に配置される 10 個のニューロンの位置のランダムな行列を定義し、それらの間の距離を求めます。

pos = rand(3,10);
D = linkdist(pos)

ネットワークの利用

selforgmap を呼び出すことによって、linkdist を距離関数として使用する標準的なネットワークを作成できます。

層のトポロジによって linkdist が使用されるようにネットワークを変更するには、net.layers{i}.distanceFcn'linkdist' に設定します。

いずれの場合も、sim を呼び出し、dist を使用してネットワークのシミュレーションを行います。

アルゴリズム

ベクトル S の集合から取得した 2 つの位置ベクトル Pi および Pj の間のリンク距離 D は、次のようになります。

Dij = 0, if i == j
     = 1, if (sum((Pi-Pj).^2)).^0.5 is <= 1
     = 2, if k exists, Dik = Dkj = 1
     = 3, if k1, k2 exist, Dik1 = Dk1k2 = Dk2j = 1
     = N, if k1..kN exist, Dik1 = Dk1k2 = ...= DkNj = 1
     = S, if none of the above conditions apply

バージョン履歴

R2006a より前に導入