2017-12-07 8 views
0

1000個のimagenetクラスすべてではなく、2つのクラス(猫と犬)の画像のみを分類するためにResNet50 Kerasを微調整するにはどうすればよいですか?私はPythonを使用し、1000のImageNetクラスでResNet50とkerasを使ってランダムな画像を分類できました。今度はImageNetの代わりにKaggle画像を使って猫と犬を分類するようにコードを微調整したい。それをどうやって行うのですか?ResNet50 Kerasはどのようにして1000個のimagenetクラスすべてではなく、2つのクラス(猫と犬)で画像を分類するだけですか?

答えて

0

転送学習を適用するにはいくつかの方法があり、試行は&のエラーが最も効果的です。

  1. のみ最後の層までを設定して2つの出力
  2. をモデルに、単一の緻密層を追加します。ただし、ImageNetは、私は次の操作を実行する理由である、その1000のクラスで猫や犬の複数の種類を含んでいます
  3. トレーニング可能あなたが一層のみを訓練しているので、これはかなり早く固体結果を取得します猫と犬

の画像のみを使用してネットワークをリトレイン。つまり、ネットワーク全体をバックプロパゲーションする必要はありません。さらに、あなたのモデルは、オリジナルのcatsおよびdogsサブクラスからこのバイナリ出力への、むしろリニアなマッピングを学ばなければなりません。

関連する問題