メインコンテンツ

linkdist

R2026b

(削除予定) リンク距離関数

linkdist は将来のリリースで削除される予定です。詳細については、レガシ ニューラル ネットワーク コードの dlnetwork ワークフローへの移行を参照してください。

コードの更新に関するアドバイスについては、バージョン履歴を参照してください。

構文

d = linkdist(pos)

説明

linkdist は、層内のニューロンの位置に基づいて、ニューロン間の距離を求めるために使用される、層の距離関数です。

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

pos

N 行 S 列のニューロンの位置行列

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

例

以下では、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 より前に導入

すべて折りたたむ