PyTorch→ONNXのコンバートでモデルの入力サイズを可変にして推論する
13k{icon} {views} ONNXでモデルは入力サイズを可変にできます。PyTorch→ONNXの変換と、ONNXRuntimeでの推論方法、また可変にしたことによる速度の副作用を検証していきます。 きっかけ […]...
SwinTransformerで転移学習(EfficientNet/ResNet50との比較)
8.7k{icon} {views} Swin Transformerを転移学習してみます。1から学習させる場合と異なり、そこまで強いData Augmentationをかけなくても訓練は安定します。訓練済み係数も含め、 […]...
Self-attention GAN(SAGAN)を実装して遊んでみた
9.8k{icon} {views} 前回の投稿では、Spectral Noramlizationを使ったGAN「SNGAN」を実装しましたが、それの応用系であるSelf-attention GAN「SAGAN」を実装し […]...
画像分類で比較するBatch Norm, Instance Norm, Spectral Normの勾配の大きさ
8.8k{icon} {views} GANの安定化のために、Batch Normalizationを置き換えるということがしばしば行われます。その置き換え先として、Spectral Norm、Instance Norm […]...
PyTorchでweight clipping
3.6k{icon} {views} WGANの論文見てたらWeight Clippingしていたので、簡単な例を実装して実験してみました。かなり簡単にできます。それを見ていきましょう。 Weight Clippingと […]...
GANでGeneratorの損失関数をmin(log(1-D))からmaxlog Dにした場合の実験
11.5k{icon} {views} GANの訓練をうまくいくためのTipとしてよく引用される、How to train GANの中から、Generatorの損失関数をmin(log(1-D))からmaxlog Dにし […]...
pix2pix HDのCoarse to fineジェネレーターを考える
3.5k{icon} {views} pix2pix HDの論文を読んでいたら「Coarse to fineジェネレーター」という、低解像度→高解像度と解像度を分けて訓練するネットワークの工夫をしていました。pix2pi […]...
KerasのLearningRateSchedulerとPyTorchのLambdaLRの微妙な違い
4.7k{icon} {views} 学習率の調整は大事です。エポック後に学習率を減衰させる際、現在のエポックを引数として更新後の学習率を返す関数を与えると便利なことが多いです。この操作はKeras,PyTorchどちら […]...
PyTorchで行列(テンソル)積としてConv2dを使う
4.1k{icon} {views} PyTorchではmatmulの挙動が特殊なので、思った通りにテンソル積が取れないことがあります。この記事では、基本的な畳み込み演算である「Conv2D」を使い、Numpyのドット積 […]...
Google ColabのTPUでResNetのベンチマークを取ってみた
5.9k{icon} {views} Google ColaboratoryでTPUが使えるようになりましたが、さっそくどのぐらい速いのかベンチマークを取ってみました。以前やったResNetのベンチマークを使います。 環 […]...