浅いニューラルネット​ワークのミニバッチト​レーニング

1 ビュー (過去 30 日間)
Hiroki Murakami
Hiroki Murakami 2020 年 6 月 18 日
コメント済み: Naoya 2020 年 7 月 2 日
現在,関数近似ニューラルネットワークを作成しようとしています.
そこでミニバッチで学習をしようとしていますが,trainではサポートされていないのでしょうか?
trainNetworkでしか実行できないのでしょうか?

採用された回答

Naoya
Naoya 2020 年 6 月 19 日
残念ながら Deep Learning Toolboxの Shallow Nural Network (train関数ベース)においては、ミニバッチサイズを設定するオプションはありません。
よろしければ、trainNetwork関数ベースの学習の使用をご検討ください。
  2 件のコメント
Naoya
Naoya 2020 年 7 月 2 日
簡単な例で恐れ入りますが、trainNetworkベースでの回帰モデル例を示します。
入出力データ共に乱数としており、精度面は考慮していません。
あくまでもフローについてまでの例となります
% 回帰用 NN layers の作成
layers = [...
imageInputLayer([3,1,1]); % 入力 3ユニット
fullyConnectedLayer(10);
tanhLayer();
fullyConnectedLayer(3);
regressionLayer];
% 入力と教師データの作成
X = randn(3,1,1,1000); % 3入力 / 1000 パターン分
Y = rand(1000,3); % 3出力 / 1000パターン分
% 学習オプション
options = trainingOptions('sgdm', ...
'MiniBatchSize',100,...
'MaxEpochs',100,...
'InitialLearnRate',1e-4, ...
'Verbose',false, ...
'Plots','training-progress');
% 学習
net = trainNetwork(X,Y,layers,options);
% 予測 (新規3入力分を適用)
predict(net, rand(3,1))

サインインしてコメントする。

その他の回答 (0 件)

製品


リリース

R2019b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!