Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

lvqnet

学習ベクトル量子化ニューラル ネットワーク

構文

lvqnet(hiddenSize,lvqLR,lvqLF)

説明

LVQ (学習ベクトル量子化) ニューラル ネットワークは 2 つの層で構成されます。最初の層は、学習時にネットワークによって検出されるクラスターに入力ベクトルをマッピングします。2 番目の層は、最初の層のクラスターのグループをターゲット データによって定義されたクラスにマージします。

最初の層のクラスターの総数は、隠れニューロンの数によって決まります。隠れ層が大きいほど、最初の層でより多くのクラスターを学習することができ、ターゲット クラスへの入力のマッピングがより複雑になります。各ターゲット クラスに割り当てられる最初の層のクラスターの相対数は、ネットワークの初期化の時点でのターゲット クラスの分布によって決まります。これは、train の最初の呼び出しでネットワークが自動的に構成されたり、関数 configure を使用して手動で構成したり、関数 init を呼び出して手動で初期化した場合に起こります。

lvqnet(hiddenSize,lvqLR,lvqLF) は、次の引数を取ります。

hiddenSize

隠れ層のサイズ (既定 = 10)

lvqLR

LVQ 学習率 (既定 = 0.01)

lvqLF

LVQ 学習関数 (既定 = 'learnlv1')

これは、LVQ ニューラル ネットワークを返します。

学習関数 lvq の他のオプションは、learnlv2 です。

すべて折りたたむ

この例では、アヤメの花を分類するために LVQ ネットワークに学習させる方法を示します。

[x,t] = iris_dataset;
net = lvqnet(10);
net.trainParam.epochs = 50;
net = train(net,x,t);

Figure Neural Network Training (27-Jul-2023 15:34:36) contains an object of type uigridlayout.

view(net)

y = net(x);
perf = perform(net,y,t)
perf = 0.0489
classes = vec2ind(y);

バージョン履歴

R2010b で導入