Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

浅いニューラル ネットワーク Simulink ブロック線図の配布

関数 gensim はネットワークを記述するブロックを生成します。Simulink® ソフトウェアを使用して、それらのシミュレーションを行うことができます。

gensim(net,st)

gensim への 2 番目の引数によってサンプル時間が決まります。通常は、正の実数値が選択されます。

ネットワークの入力重みまたは層の重みに遅延が関連付けられていない場合、この値を -1 に設定できます。値が -1 の場合、gensim は、連続サンプリングを行うネットワークを生成します。

一連の入力 p および対応するターゲット t を定義する簡単な問題を考えます。

p = [1 2 3 4 5];
t = [1 3 5 7 9];

以下のコードで、この問題を解く線形層を設計します。

net = newlind(p,t)

sim を使用すると、元の入力についてネットワークをテストできます。

y = sim(net,p)

この結果は、このネットワークによって問題が解かれたことを示しています。

y =
      1.0000    3.0000    5.0000    7.0000    9.0000

次のように gensim を呼び出し、このネットワークの Simulink バージョンを生成します。

gensim(net,-1)

2 番目の引数が -1 であるため、結果として得られるネットワーク ブロックは連続的にサンプリングを行います。

gensim を呼び出すと、次の Simulink エディターが開き、標本入力とスコープに結合された線形ネットワークで構成されるシステムが表示されます。

このネットワークをテストするために、左側にある入力の Constant x1 ブロックをダブルクリックします。

実際、この入力ブロックは標準的な定数ブロックです。定数値を、ランダムに生成された初期値から 2 に変更し、[OK] をクリックします。

メニュー オプション [シミュレーション][実行] を選択します。Simulink により、少しの間、システムのシミュレーションが行われます。

シミュレーションが完了してから、右側にある出力の y1 ブロックをダブルクリックすると、ネットワークの応答が次のように表示されます。

出力は 3 であり、入力 2 に対する正しい出力であることに注意してください。

推奨される演習

以下のいくつかの演習を試すことをお勧めします。

入力信号の変更

定数入力ブロックを、標準の Simulink Sources ブロックセットにあるシグナル ジェネレーターに置き換えます。システムのシミュレーションを行い、ネットワークの応答を表示します。

離散サンプル時間の使用

ネットワークを再度作成します。ただし、連続サンプリングではなく、0.5 の離散サンプル時間を使用します。

gensim(net,0.5)

この場合も、定数入力をシグナル ジェネレーターに置き換えます。システムのシミュレーションを行い、ネットワークの応答を表示します。

関数およびオブジェクトの生成

MATLAB® 関数を使用した浅いニューラル ネットワークのシミュレーションと配布については、浅いニューラル ネットワーク関数の配布を参照してください。