浅いニューラルネットワークのミニバッチトレーニング
6 ビュー (過去 30 日間)
古いコメントを表示
現在,関数近似ニューラルネットワークを作成しようとしています.
そこでミニバッチで学習をしようとしていますが,trainではサポートされていないのでしょうか?
trainNetworkでしか実行できないのでしょうか?
0 件のコメント
採用された回答
Naoya
2020 年 6 月 19 日
残念ながら Deep Learning Toolboxの Shallow Nural Network (train関数ベース)においては、ミニバッチサイズを設定するオプションはありません。
よろしければ、trainNetwork関数ベースの学習の使用をご検討ください。
2 件のコメント
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 件)
参考
カテゴリ
Help Center および File Exchange で イメージを使用した深層学習 についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!