2018aでのtrainNetwork

1 visualizzazione (ultimi 30 giorni)
Yuto Omae
Yuto Omae il 17 Lug 2018
Risposto: Yuto Omae il 17 Lug 2018
2017bのバージョンで保存させておいたNetworkを、2018aにバージョンアップさせた後にtrainNetworkで学習させようとしたところ、
「層12のクラス順序は、学習データで指定された順序と一致しなければなりません」
というエラーがでて、学習できなくなってしまいました。 プログラムを変更はしておらず、以前は問題なく学習できていました。
trainNetwork(DX, DY, oldNet, opt)
でエラーが出ます。
DXは画像ファイル、 DYはカテゴリカル型の教師データラベル、 oldNetは2017bで、trainNetworkにより作成したCNN、 optは学習条件となります。
oldNetは学習に数か月かかっており、再度1から学習ということはしたくありません。 再度、エラーをださずに学習を行うには、どのような対応が考えられますか。
よろしくお願いします。
備考: activations関数で、CNNにおける特定の層から特徴量抽出を行ったところ、 これまではn回目の入力がn行目に格納されていたのにも拘らず、 先ほど実行したところ、n列目に格納される、というように変更されていました。 これにより、いくつかプログラムを組みなおさねばならない事態になってしまいました。 CNNまわりで何か大きな変更などあったのでしょうか。

Risposta accettata

Yuto Omae
Yuto Omae il 17 Lug 2018
すいません、自己解決しました。
trainNetworkの中身をみていたところ、入力された教師データのラベルの型と、既に学習されたCNNの最終層のクラスラベルの型をチェックし、お互いの順序あり/なしが不一致ではないか、チェックしているコードを発見しました。 そのため、
DY=categorical(DY,'Ordinal',false)
とし、ラベルデータを順序なしのカテゴリカル型にしたところ、2018aのtrainNetworkで、2017bで作成したCNNを学習させることができました。

Più risposte (0)

Categorie

Scopri di più su Deep Learning Toolbox in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!