実践GAN 勉強記録#9 CycleGAN

はじめに

マイナビ出版の実践GANの勉強記録シリーズ第10弾です。

今日まとめるのは、第9章のCycleGANについてです!

リンゴ⇔オレンジ, 馬⇔シマウマのように相互に変換することを可能にするGANについて学んでいきます。

名前にある通りCycleの仕組みを取り入れることでどのような効用があったのかを考えると興味深い内容ですね!

前の記事はここから!

crinoid.hatenablog.com

このブログとしては、だいたい一記事あたり一章について扱うような形で勉強記録として自分なりにまとめてあげていこうと思います。また、解釈違い等がございましたらご指摘いただけると幸いです。

9章 : CycleGAN

3つのポイント

  • CycleGANに含まれる3つの「損失」とは?

  • 識別器と生成器のベースとなっている構造は?

  • CGANとCycleGANの違うところは?

f:id:crinoid:20210223203808p:plain f:id:crinoid:20210223203812p:plain f:id:crinoid:20210223203823p:plain

実践GAN 勉強記録#8 条件付きGAN (CGAN)

はじめに

マイナビ出版の実践GANの勉強記録シリーズ第9弾です。

今日まとめるのは、第8章の条件付きGAN(Conditional GAN)についてです!

この章では、これまでの7章までのGANの振り返りについてもまとめられていますが、それらのGANとこの章で扱う条件付きGANの違いはなんといっても、特定の種類のサンプルを生成することができるということです!

これまでサンプルを生成するとしても、訓練データのいずれかを生成する形になっていたため、生成データを変えたければ訓練データを変更しなければいけませんでした。この問題を解決する条件付きGANは面白いアイディアですね!

今回は、そんな条件付きGANについて勉強していきます!

前の記事はここから!

crinoid.hatenablog.com

このブログとしては、だいたい一記事あたり一章について扱うような形で勉強記録として自分なりにまとめてあげていこうと思います。また、解釈違い等がございましたらご指摘いただけると幸いです。

8章 : 条件付きGAN (CGAN)

3つのポイント

  • 条件付きGANとは?

  • 識別器と生成器の使い方は?

  • CGANの実装のために考えられているアーキテクチャは?

f:id:crinoid:20210222235227p:plain f:id:crinoid:20210222235217p:plain

次の記事

crinoid.hatenablog.com

実践GAN 勉強記録#7 半教師ありGAN (SGAN)

はじめに

マイナビ出版の実践GANの勉強記録シリーズ第8弾です。

今日まとめるのは、第7章の半教師ありGAN(Semi-supervised GAN)についてです!

このGANの魅力はなんといっても、少数のラベルつきデータで学習をすることができるようになること!

半教師ありGANで、生成した識別器を用いた分類はなんと、

89% ! (同数の教師あり学習より 19% 高い )

この章で扱っていたMNISTのラベルつきデータは100枚ですが、同数の教師あり学習の精度が約70%であることを考えると、いかに少ない枚数で精度を出すことができるかがわかります。

MNISTの 今まで「生成」するものとして活用していた「GAN」ですが、この半教師ありGANでは「識別」を行う分類器としての活用の可能性を感じさせられるGANです!

前の記事はここから!

crinoid.hatenablog.com

このブログとしては、だいたい一記事あたり一章について扱うような形で勉強記録として自分なりにまとめてあげていこうと思います。また、解釈違い等がございましたらご指摘いただけると幸いです。

7章 : 半教師ありGAN (SGAN)

3つのポイント

f:id:crinoid:20210221144555p:plain f:id:crinoid:20210221144614p:plain

実践GAN 勉強記録#6 プログレッシブなGAN

はじめに

マイナビ出版の実践GANの勉強記録シリーズ第7弾です。

今日まとめるのは、第6章のプログレッシブなGAN(PGGAN)についてです!

2014年に発案されたGANというアイデアですが、そこからわずか4年の2018年にフルHDの画質の画像を生成することができています!!これは、驚くべきことでもありますが、この章では、どのようにしてそのような高画質の画像を生成することができたのか? 仕組み・工夫点を勉強していきます!

前の記事はここから!

crinoid.hatenablog.com

このブログとしては、だいたい一記事あたり一章について扱うような形で勉強記録として自分なりにまとめてあげていこうと思います。また、解釈違い等がございましたらご指摘いただけると幸いです。

6章 : プログレッシブなGAN

実際に高精度の画像を生成しようとすると学習モデルの構築に多くの時間がかかります。そして、このプログレッシブGANもその例外ではありませんが、この章の最後ではTensorFlowHubを使って、学習済みのモデルを使うことでより簡単に試すことができるので、実際に実装してみて精度の高さを確かめてみます!

2つのポイント

  • 4つの革新的なアイデアとは?

  • 学習済みモデルが使える TensorFlowHubを使うという選択肢

f:id:crinoid:20210220102022p:plain f:id:crinoid:20210220103040p:plain

実践GAN 勉強記録#5 訓練とよくある課題 後編

はじめに

マイナビ出版の実践GANの勉強記録シリーズ6弾です。

今日まとめるのは、5章の訓練とよくある課題についてです!5章に関しては、内容も長く密度も濃い内容であったので前編・後編というように2回に分けていましたが、今回はその後編です。

前後編合わせて、全部でノート5ページとなったこの章ですが、GANの発展的話題を議論する上で重要な考えを学べる部分であると思うので、しっかり理解していきたいです!!

前編の記事はここから!

crinoid.hatenablog.com

このブログとしては、だいたい一記事あたり一章について扱うような形で勉強記録として自分なりにまとめてあげていこうと思います。また、解釈違い等がございましたらご指摘いただけると幸いです。

5章 : 訓練とよくある課題:GANをうまく動かすために

前編では、評価の部分について学びましたが、後編の今回では、訓練の難しさや訓練上の工夫点など「訓練」に着目した部分について学びます。

3つのポイント

  • 「訓練」上での課題とは?

  • 訓練をどこで終了する?

  • 訓練上の工夫点とは?

f:id:crinoid:20210219090304p:plain f:id:crinoid:20210219090313p:plainf:id:crinoid:20210219090320p:plain

次の記事

crinoid.hatenablog.com

実践GAN 勉強記録#5 訓練とよくある課題 前編

はじめに

マイナビ出版の実践GANの勉強記録シリーズ第5弾です。

今日まとめるのは、第5章の訓練とよくある課題についてです!5章に関しては、内容も長く密度も濃い内容であったので前編・後編というように2回に分けていこうと思います。

ちなみに、この5章からPart2として、GANの発展的な話題になっていくので、1~4章までの基礎的な内容の上で以下のような内容を勉強していきます!!

6章:プログレッシブなGAN

7章:半教師ありGAN

8章:条件付きGAN

9章:CycleGAN

前の記事はここから!

crinoid.hatenablog.com

このブログとしては、だいたい一記事あたり一章について扱うような形で勉強記録として自分なりにまとめてあげていこうと思います。また、解釈違い等がございましたらご指摘いただけると幸いです。

5章 : 訓練とよくある課題:GANをうまく動かすために

今回は前半として、評価の部分について学び、次回の後編で訓練の難しさについて学びます。

3つのポイント

f:id:crinoid:20210218222114p:plain f:id:crinoid:20210218222101p:plain

次の記事

crinoid.hatenablog.com

実践GAN 勉強記録#4 深層畳み込みGAN:DCGAN

はじめに

マイナビ出版の実践GANの勉強記録シリーズ第4弾です。

今日まとめるのは、第4章の深層畳み込みGANであるDCGANです!第3層のGANの実装と似ている部分もあるので畳み込みの恩恵を受けながらどの程度精度があがるのかにも注目しつつ、MNISTを用いてのGANのチュートリアルを行っていきます!!

前の記事はここから! crinoid.hatenablog.com

このブログとしては、だいたい一記事あたり一章について扱うような形で勉強記録として自分なりにまとめてあげていこうと思います。また、解釈違い等がございましたらご指摘いただけると幸いです。

4章 : 深層畳み込みGAN:DCGAN

この章では、GANが発明されてから2年経ち、発表されたGANの手法 "DCGAN" について学んでいきます!

3つのポイント

  • 3章で実装したGANとDCGANの違いは?

  • ConvNetとGANを組み合わせたときに生じた問題点とは?

  • バッチ正規化とは?

f:id:crinoid:20210217085325p:plainf:id:crinoid:20210217085329p:plain

次の記事

crinoid.hatenablog.com