学習済みモデルのゆくえについて
現在この質問をフォロー中です
- フォローしているコンテンツ フィードに更新が表示されます。
- コミュニケーション基本設定に応じて電子メールを受け取ることができます。
エラーが発生しました
ページに変更が加えられたため、アクションを完了できません。ページを再度読み込み、更新された状態を確認してください。
古いコメントを表示
0 投票
alexnetで転写学習を行ったのですが、ネットワークモデルがどこに保存されているのかわからず困っています。 教えて下さい。
採用された回答
Hirokazu Tanaka
2018 年 8 月 2 日
3 投票
実際に実行された内容(コード)をみないと何とも言えませんが、どういった状況でしょうか?
例1:学習後のネットワークを mat ファイルに保存などの作業を行わず MATLAB を終了した場合: 学習結果は消えてしまっています。
例2:trainNetwork 関数を出力なしで実行した場合:実行直後は ans という変数名として存在するはずですが、その後上書きされている可能性はあります。
6 件のコメント
chihiro sasaya
2018 年 8 月 3 日
編集済み: michio
2018 年 8 月 3 日
チュートリアルの構文をなぞり実行しました。
imds = imageDatastore('MerchData', ...
'IncludeSubfolders',true, ...
'LabelSource','foldernames');
[imdsTrain,imdsValidation] = splitEachLabel(imds,0.7,'randomized');
net = alexnet;
layersTransfer = net.Layers(1:end-3);
numClasses = numel(categories(imdsTrain.Labels));
layers = [
layersTransfer
fullyConnectedLayer(numClasses,'WeightLearnRateFactor',20,'BiasLearnRateFactor',20)
softmaxLayer
classificationLayer];
pixelRange = [-30 30];
imageAugmenter = imageDataAugmenter( ...
'RandXReflection',true, ...
'RandXTranslation',pixelRange, ...
'RandYTranslation',pixelRange);
augimdsTrain = augmentedImageDatastore(inputSize(1:2),imdsTrain, ...
'DataAugmentation',imageAugmenter);
augimdsValidation = augmentedImageDatastore(inputSize(1:2),imdsValidation);
options = trainingOptions('sgdm', ...
'MiniBatchSize',10, ...
'MaxEpochs',6, ...
'InitialLearnRate',1e-4, ...
'ValidationData',augimdsValidation, ...
'ValidationFrequency',3, ...
'ValidationPatience',Inf, ...
'Verbose',false, ...
'Plots','training-progress');
netTransfer = trainNetwork(augimdsTrain,layers,options);
YPred = predict(classifier,featuresTest);
idx = randperm(numel(imdsValidation.Files),4);
figure
for i = 1:4
subplot(2,2,i)
I = readimage(imdsValidation,idx(i));
imshow(I)
label = YPred(idx(i));
title(string(label));
end
Hirokazu Tanaka
2018 年 8 月 3 日
netTransfer = trainNetwork(augimdsTrain,layers,options);
とある通り、転移学習後のネットワークは netTransfer のように見受けられます。ただその直後の
YPred = predict(classifier,featuresTest);
がよくわかりませんでした。classifier はどこから来たのでしょう。
どのページにあるチュートリアルなのか、使っているMATLABバージョン情報もあればうれしいですが、、その前にお困りの点は何でしょうか?
chihiro sasaya
2018 年 8 月 3 日
編集済み: chihiro sasaya
2018 年 8 月 3 日
分かりづらくすみません。ご解答ありがとうございます。 alexnetをつかって、転移学習を行なった後のネットワークを使い自分で撮ってきた画像をつかって実験をしてみようと思っています。 現段階で転移後のネットワークモデルの場所が分からず困っていた次第です。
https://jp.mathworks.com/help/nnet/ref/alexnet.html
この中盤辺りの 事前学習済みのネットワークの読み込み の所から サンプルのデータを変えて見ておこないました。
バージョンは、'9.4.0.813654 (R2018a)' です。
Hirokazu Tanaka
2018 年 8 月 4 日
詳細ありがとうございます。おそらく「AlexNet を使用した転移学習」というサンプルコードのことだと思いますが、
netTransfer = trainNetwork(augimdsTrain,layers,options);
のコマンドで転移層と新しい層とで構成されるネットワークを学習していますので、netTransfer がお探しの「転移後のネットワークモデル」になるのかと思うのですがいかがでしょう。「モデルの場所」というものが今少し理解できずにおります・・。
chihiro sasaya
2018 年 8 月 5 日
ご回答ありがとうございます。 うまくいきました! 最近まで違うツールでネットワークを触っていて、その感じ学習済みモデルというものが生成されるのかなと思いこのように書いてしまいました。 教えていただいて本当に感謝しています!
Hirokazu Tanaka
2018 年 8 月 5 日
うまくいったようで、よかったです :) サンプルを実行してみるのもいいですが、こちらの「ディープラーニング入門」コースも無料ですし感触をつかむにはお勧めですよ。
その他の回答 (0 件)
カテゴリ
ヘルプ センター および File Exchange で Deep Learning Toolbox についてさらに検索
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)