浅層ニューラル ネットワーク 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] をクリックします。
メニュー オプション [シミュレーション] 、 [実行] を選択します。
シミュレーションが完了したら、右側の出力 y1
ブロックをダブルクリックしてネットワークの応答を確認します。
出力は 3 であり、これは入力 2 に対する正しい出力です。
推奨される演習
以下のいくつかの演習を試すことをお勧めします。
入力信号の変更
定数入力ブロックを、標準の Simulink Sources ブロックセットにあるシグナル ジェネレーターに置き換えます。システムのシミュレーションを行い、ネットワークの応答を表示します。
離散サンプル時間の使用
ネットワークを再度作成します。ただし、連続サンプリングではなく、0.5 の離散サンプル時間を使用します。
gensim(net,0.5)
この場合も、定数入力をシグナル ジェネレーターに置き換えます。システムのシミュレーションを行い、ネットワークの応答を表示します。
関数およびオブジェクトの生成
MATLAB® 関数を使用した浅層ニューラル ネットワークのシミュレーションと展開については、浅層ニューラル ネットワーク関数の展開を参照してください。