問題タブ [transfer-learning]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - ResNet50 転移学習が失敗する
転移学習の最初の苦痛を乗り越えるには、1 つまたは複数のヒントが必要です。
次のコードは、私が実際にやろうとしていることの簡素化されたバージョンですが、私がそこで使用する偽の画像 (A: 空 / B: 空 + 小さな四角形) の 1 つでも問題を示しています。最終バージョンでは、入力ははるかに複雑な画像になります (適用される基本モデルの複雑さが正当化されます)。
問題は単純に見えます。入力: 2 種類の画像、出力: 2 値分類 (「四角形の有無」)。修正された ResNet50 モデルには、準備されたトレーニング データが を介して供給されますImageDataGenerator
。任意の量の偽のデータを作成できるため、コードにデータ拡張の手順はありません。
とにかく、コードを実行すると、表示された損失 (Adam
とSDG
オプティマイザの両方) は改善されないようで、精度はすぐに 2 つの画像クラスの例の数の比率 (つまり B/A) に近づく傾向があります。 . (注: 週末には、500 エポックも試しましたが、変化はありませんでした。)
両方の(おそらく接続されている)問題について、私はまだ理由を見つけることができませんでした...できますか?それはハイパーパラメータの 1 つですか、モデルのセットアップまたは実装の他の部分に明らかな不具合はありますか? おそらくそれはばかげたことですが、それを追いかけて、さまざまな単純化されたバージョンで遊んだ後、次に何を試すかについてのアイデアが尽きそうです.