機械学習分野で最もホットな技術の1つに、GANがあります(ギャンと読むようです。generative adverserial networkの略で、日本語では敵対的生成ネットワークと言います)。adverserial(敵対的)という単語はあまり聞きなれませんが、画像などの生成用ニューラルネットワークと本物・偽物の判別用ニューラルネットワークを競い合わせるように訓練してくという点に、従来技術とは一線を画すGANの独創性があります。GAN用の専門書ないかなと思っていたら、2020年2月、ついに海外書籍の邦訳が出版されました。その書評を行います。この本の構成は以下の通りです。
- はじめてのGAN
- オートエンコーダを用いた生成モデル
- はじめてのGAN:手書き文字の生成
- 深層畳み込みGAN:DCGAN
- 訓練とよくある課題:GANをうまく動かすために
- プログレッシブなGAN
- 半教師ありGAN
- 条件付きGAN
- CycleGAN
- 敵対的サンプル
- GANの実用的な応用
- 将来に向けて
実践GAN ~敵対的生成ネットワークによる深層学習~ (Compass Booksシリーズ)
- 作者:Jakub Langr,Vladimir Bok
- 発売日: 2020/02/28
- メディア: 単行本(ソフトカバー)
全体としては、非常に有名なGANモデルをいくつか取り扱っており、self-attention(自己注意)付きのGANなど新しい話題にも触れていたので概観を学ぶのにもってこいの本だと思いました。またKerasによる実装コードも記載されているので実際に手を動かしてみることも可能です。GAN入門には良い本だという印象を受けました。
一方で、分かりやすさを重視した半面、数学的な説明はほぼ行われていないため例えば近年のGANの精度向上で重要な概念であるearth mover's distaceやWasserstein distanceといった概念をこの本から理解しきるのはかなり難しいと私は思いました。またCycleGANの生成器にはU-Netという画像のセグメンテーションによく使われる技術が活用されていますが、U-Netや逆畳み込み自体の説明はかなり少ないため馴染みのない読者はかなり面を食らう内容かとも思いました。
ですので、ニューラルネットワークの内容にある程度精通しているがGANにはまだとっかかっていない、という読者には刺さる内容かと思います(私のことです!)。一方で、GANを使い慣れた人にとっては重要なGANモデルや仕組みを振り返るための参考書として機能する気がします。
個人的には、少数の画像データしかない場合にGANを使って分類精度を上げる半教師ありGANが最も参考になりました。画像や文章の生成器としてだけだと、活用場面は限られてしまうと思うんです。ですが、分類など他のタスクへの活用が効くとなるとGANの重要性は一層増すのではないでしょうか。
(2020/6/6追記)
やってみました、半教師ありGAN。教師ありデータ数が少ないほど効果的だということが分かりました(MNISTのデータで検証)