どのようにして Stacked Autoencoder の最終の層を 分類ではなく、回帰にすることができますか?
1 回表示 (過去 30 日間)
古いコメントを表示
MathWorks Support Team
2016 年 12 月 13 日
回答済み: MathWorks Support Team
2016 年 12 月 13 日
Neural Network Toolbox (R2016b) を利用しています。
AutoEncoder を用いて入力/教師パターンを学習したいと考えておりますが、教師データがtrainSoftmaxLayer で指定するような、離散値ではなく、連続値として指定したいと考えています。
採用された回答
MathWorks Support Team
2016 年 12 月 13 日
trainSoftmaxLayer の代わりに、 fitnet 関数がご利用いただけます。
※ 但し、fitnet 関数は通常のBackPropagation となりますので、
途中に中間層が含まれることご了承ください。
簡単な例となりますが、以下は一例となります。
>> X = abalone_dataset; % 8x4177 のデータセットを読み込み
>> autoenc = trainAutoencoder(X); % AutoEncoder ネットワーク作成
>> Y = encode(autoenc,X); % 中間層の出力を取得
>> net = fitnet(5); % softmaxlayer の代わりに回帰を取るBPを作成
>> net = train(net,Y,X); % 学習
>> statk_net = stack(autoenc,net); % ネットワークの結合
>> view(statk_net) % ネットワークを確認
0 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Deep Learning Toolbox についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!