回答編集履歴
4
一部修正
answer
CHANGED
@@ -22,4 +22,8 @@
|
|
22
22
|
しかし、転移学習をする元となるpretrainedされた重みパラメータは、ImageNetをもとに224×224サイズに切り出した画像を学習してできたものです。よって、多少のサイズのズレは吸収されると思いますが、大きくズレてしまうと精度が悪くなると思われます。
|
23
23
|
|
24
24
|
参考: [ImageNetの訓練時の前処理についてまとめた](https://blog.shikoan.com/imagenet-preprocessing/)
|
25
|
-
ResNetほか代表的モデルの前処理方法を解説しています。単に224×224なら良いというわけではなく、元の前処理の方法をなるべく踏襲しましょう。
|
25
|
+
ResNetほか代表的モデルの前処理方法を解説しています。単に224×224なら良いというわけではなく、元の前処理の方法をなるべく踏襲しましょう。
|
26
|
+
|
27
|
+
なおResNetの記載はデータ拡張を考慮したものですので、推論だけさせる場合はAlexNetの記載にある、「画像の短辺の長さが256になるように画像を再スケーリングし,得られた画像から中央の256×256のパッチを切り取る」で十分です。具体的な前処理コードは以下の記事が参考になります。
|
28
|
+
|
29
|
+
参考: [Pytorch – 学習済みモデルで画像分類を行う方法](https://pystyle.info/pytorch-how-to-use-pretrained-model/)
|
3
一部修正
answer
CHANGED
@@ -22,4 +22,4 @@
|
|
22
22
|
しかし、転移学習をする元となるpretrainedされた重みパラメータは、ImageNetをもとに224×224サイズに切り出した画像を学習してできたものです。よって、多少のサイズのズレは吸収されると思いますが、大きくズレてしまうと精度が悪くなると思われます。
|
23
23
|
|
24
24
|
参考: [ImageNetの訓練時の前処理についてまとめた](https://blog.shikoan.com/imagenet-preprocessing/)
|
25
|
-
ResNetほか代表的モデルの前処理方法を解説しています。
|
25
|
+
ResNetほか代表的モデルの前処理方法を解説しています。単に224×224なら良いというわけではなく、元の前処理の方法をなるべく踏襲しましょう。
|
2
補足追記
answer
CHANGED
@@ -16,4 +16,10 @@
|
|
16
16
|
|
17
17
|
最後の全結合層の手前にあるavgpoolが犯人?で、AdaptiveAvgPool2dが任意のサイズの画像をoutput_sizeにpoolingします。内部的には画像サイズとoutput_sizeとの関係でkernel_sizeを自動調整しています。これにより、任意のサイズの入力に対して動作ができます。
|
18
18
|
|
19
|
+
参考: [Why AvgPool2d instead of AdaptiveAvgPool2d for ResNet?](https://github.com/HobbitLong/CMC/issues/16)
|
20
|
+
PyTorch本家とは直接関係無い派生ソフトの質疑ですが、「なぜわざわざResNetのAdaptiveAvgPool2dを(自動サイズ調整の無い)AvgPool2dに入れ替えたのか?」「224×224の画像しか前提としていないからだ」といったやりとりがあります。
|
21
|
+
|
19
|
-
しかし、転移学習をする元となるpretrainedされた重みパラメータは、ImageNetをもとに224×224サイズに切り出した画像を学習してできたものです。よって、多少のサイズのズレは吸収されると思いますが、大きくズレてしまうと精度が悪くなると思われます。
|
22
|
+
しかし、転移学習をする元となるpretrainedされた重みパラメータは、ImageNetをもとに224×224サイズに切り出した画像を学習してできたものです。よって、多少のサイズのズレは吸収されると思いますが、大きくズレてしまうと精度が悪くなると思われます。
|
23
|
+
|
24
|
+
参考: [ImageNetの訓練時の前処理についてまとめた](https://blog.shikoan.com/imagenet-preprocessing/)
|
25
|
+
ResNetほか代表的モデルの前処理方法を解説しています。
|
1
一部修正
answer
CHANGED
@@ -16,4 +16,4 @@
|
|
16
16
|
|
17
17
|
最後の全結合層の手前にあるavgpoolが犯人?で、AdaptiveAvgPool2dが任意のサイズの画像をoutput_sizeにpoolingします。内部的には画像サイズとoutput_sizeとの関係でkernel_sizeを自動調整しています。これにより、任意のサイズの入力に対して動作ができます。
|
18
18
|
|
19
|
-
しかし、転移学習をする元となるpretrainedされた重みパラメータは、ImageNet
|
19
|
+
しかし、転移学習をする元となるpretrainedされた重みパラメータは、ImageNetをもとに224×224サイズに切り出した画像を学習してできたものです。よって、多少のサイズのズレは吸収されると思いますが、大きくズレてしまうと精度が悪くなると思われます。
|