ビッグデータダイジェスト制作 出典: floydhub 編纂者:Luan Hongye、Zhang Dabiru、Xiaoqi GAN は、最近の人工知能界で最もよく知られている技術の 1 つかもしれません。 しかし、この技術が人気を博したのは、その優れた使いやすさだけではなく、この技術が生み出した関連アプリケーションがさまざまな倫理的問題を引き起こしたためでもあります。 最も注目を集めているのは、もちろんディープフェイクです。これは、使いやすく完璧な顔を変えるアプリケーションで、人々は「GAN」という言葉に恐怖を感じています。
朱寅の顔は楊冪に置き換えられた 最近、ディープフェイクにはワンクリックでヌード写真を生成するソフトウェア「DeepNude」というアップグレード版まで登場し、ネット上で人気を博している。女性の全身写真を入力するだけで、対応するヌード写真を自動的に生成できる。このアプリが広く普及したため、予想外の事態を引き起こし、開発者は最終的にアプリを店頭から撤去した。
テイラー・スウィフトはクリック1つで裸になった 関連技術は一連の社会的影響を引き起こし、政府の立法部門の注目を集めました。 2019年6月13日、米国下院情報委員会はAIディープフェイクに関する公聴会を開催し、ディープフェイク技術が国家、社会、個人に及ぼすリスクや予防・対応策について公開討論した。 人々はそれを嘲笑するかもしれないが、本物の研究者も GAN を使って人類社会の発展を促進している。 MITテクノロジーレビューによると、リューベック大学の研究者らは最近、ディープフェイクの背後にある同じ技術を使用して、実際の画像と区別がつかない医療画像を合成し、トレーニングデータが不十分であるという問題を解決した。これらの画像は、X線画像からさまざまな癌を検出するAIのトレーニングに使用できる。 では、テクノロジー自体に原罪があるのでしょうか? 何が悪かったのでしょうか? GAN が誕生した日に戻り、人々に愛され、嫌われるこの技術の発展の過去と現在を振り返ってみましょう。 GANの誕生物語:酔った気まぐれ 2014年のある夜、イアン・グッドフェローは卒業したばかりの博士課程の学生と祝杯を挙げて飲んでいた。モントリオールのバーで、何人かの友人が彼に、自分たちが取り組んでいる難しいプロジェクトについて助けを求めました。それは、コンピューターに独自の画像を生成させる方法でした。 研究者たちは、人間の脳内のニューロンのネットワークを模倣したアルゴリズムであるニューラルネットワークを、もっともらしい新しいデータを作成するための生成モデルとして使用してきました。しかし、その結果は満足のいくものではないことが多いです。コンピューターで生成された顔の画像は、ぼやけていたり、耳や鼻が欠けていたりすることが多々あります。 イアン・グッドフェロー氏とその友人らが提案した解決策は、画像を構成する要素に対して複雑な統計分析を実行し、機械が画像自体を生成できるようにするというものである。これには大量のデータ処理が必要となり、イアン・グッドフェロー氏はそれは絶対にうまくいかないだろうと彼らに告げた。 ビールを飲みながら問題について考えていたとき、彼は突然あるアイデアを思いつきました。 2 つのニューラル ネットワークを互いに対戦させたら何が起こるでしょうか? 彼の友人は懐疑的でした。 家に着くと、ガールフレンドはすでに寝ていたので、彼はすぐに自分のアイデアを試してみることにしました。彼はその日の早朝までコードを書き、その後テストを実施しました。最初の実行は成功しました! その夜彼が提案した手法は現在、GAN、つまり敵対的生成ネットワークと呼ばれています。
グッドフェロー氏自身も、この分野がこれほど急速に発展し、GAN がこれほど広く使用されるようになるとは予想していなかったでしょう。 以下の写真をいくつか見てみましょう。 私が実際に訪れた場所を見たことがないなら、これらの写真は完全に偽物だと考えて構いません。 もちろん、これらがすべてフォトショップや CGI で編集されていると言っているわけではありません。Nvidia が自社の新技術をどれほど素晴らしいと主張しても、それは単なる画像であり、現実の世界ではありません。 つまり、これらの画像は GPU 計算を使用してレイヤーごとに完全に重ね合わされており、お金を燃やすことによって生成されています。 これらのことを実現できるアルゴリズムが、Generative Adversarial Network (GAN) です。機械学習を学び始めたばかりの人にとって、GAN の作成は長い道のりです。過去数年間、GAN の使用においては、Facebook のプライバシー スキャンダルよりもさらに多くの革新が起こっています。 GAN は 2014 年から継続的に改良され、今日の成果を達成しましたが、このプロセスを 1 つ 1 つ見直すのは、8 シーズンの「ゲーム・オブ・スローンズ」をもう一度見るようなもので、非常に長いです。そこで、ここでは、長年にわたる GAN 研究におけるいくつかの優れた成果の背後にある主要なアイデアを簡単に確認したいと思います。 転置畳み込みやワッサーシュタイン距離などの概念については詳しく説明しません。代わりに、これらの概念を簡単に理解して、アルゴリズムでどのように使用されているかを確認できる優れたリソースへのリンクをいくつか紹介します。 以下の内容を読むには、ディープラーニングの基礎知識を習得し、畳み込みニューラル ネットワークの仕組みを理解している必要があります。そうでないと、読むのが少し難しくなるかもしれません。 これを踏まえて、GAN 開発ロードマップを以下に示します。 GAN ロードマップ 以下、図のプロセスを順を追って説明します。まずはコンテンツの概要を見てみましょう。
GAN: 生成的敵対ネットワーク この写真を見たとき、最初に頭に浮かぶことは何ですか? ピクセルが低すぎて、特にトライポフォビアの人にとっては見るのが不快だと思いますか? この写真は、数学オタクが Excel スプレッドシートで縮小された写真を拡大したように見えます。 この写真が何なのか見てみましょう。 https://mp.weixin.qq.com/s?__biz=MjM5MTQzNzU2NA==&mid=2651672132&idx=1&sn=b18213b102733d1ce4bf4793db270a2c&chksm=bd4c69d78a3be0c134619102e0f4b9e64fcab0a71b496a381f2f5b12b0091da16b4b89df8847&mpshare=1&scene=23&srcid=#rd ビデオを見た後、Excel 以外のすべてを正しく推測できたことに気づきましたか? 2014 年に、イアン・グッドフェローは、2 つのニューラル ネットワークを互いに競合させる (または協力させる、これは見方の問題です) という革新的なアイデアを提案しました。 興味のある学生は、Ian Goodfellow が GAN を提案したときの原文を確認することができます。
1 つのニューラル ネットワークは実際のデータの生成を試み (注: GAN は任意のデータ分布をモデル化するために使用できますが、最近では主に画像に使用されています)、もう 1 つのニューラル ネットワークは実際のデータとジェネレーター ネットワークによって生成されたデータを区別しようとします。 ジェネレーター ネットワークは、識別器を損失関数として使用し、そのパラメーターを更新して、より現実的に見えるデータを生成します。 一方、識別器ネットワークは、偽のデータと実際のデータをより適切に区別できるようにパラメータを更新し、この作業の精度を高めます。 この猫とネズミのゲームは、システムがいわゆる「均衡」に達するまで続きます。均衡に達すると、ジェネレーターは、識別器が本物か偽物かを簡単に正しく判断できるほど本物らしく見えるデータを生成できるようになります。 これまでのところ、すべてがうまくいって、コードが正しく、Amazon がスポットインスタンスを強制終了していない場合 (ちなみに、FloydHub を使用する場合は、予備の GPU マシンが提供されているため、これは問題になりません)、同じデータ分布から新しいデータを正確に生成するジェネレーターが残り、そのジェネレーターが生成したデータがトレーニング セットになります。 これは非常に単純なタイプの GAN です。この時点で、GAN は 2 つのニューラル ネットワーク (1 つはデータを生成するためのもの、もう 1 つは偽のデータと実際のデータを区別するためのもの) を使用することを理解する必要があります。理論的には、両方を同時にトレーニングし、それらが収束するまで反復して、ジェネレーターが新しい現実的なデータを生成できるようになります。 DCGAN: 深層畳み込み生成敵対ネットワーク
原文を読むのは非常に時間がかかりますが、この記事を読むと時間を節約できます。 まずいくつかの数式を見てみましょう。
後から考えると、イアン・グッドフェロー自身がレックス・フリッドマンとのポッドキャストで指摘したように、ディープラーニングと画像に関連するほとんどすべてが今日では深層畳み込みであるため、このモデルを DCGAN (「Deep Convolutional Generative Adversarial Network」の略) と呼ぶのは愚かなように思えます。 また、ほとんどの人が GAN について学ぶとき、まず「深層畳み込み」について学びます。 しかし、GAN が必ずしも畳み込みベースの演算を使用せず、代わりに標準的な多層パーセプトロン アーキテクチャに依存していた時代もありました。 DCGAN は、転置畳み込み演算、またはあまり好ましくない言い方をするなら、逆畳み込み層と呼ばれるものを使用してこれを変更します。 転置畳み込みは、低解像度の画像を高解像度の画像に変換するのに役立つリフティング操作です。 しかし、厳密に言えば、転置畳み込みの原理を習得したいのであれば、上記の紹介を読むだけでは十分ではありません。リンク先のリソースを詳細に研究する必要があります。結局のところ、これがすべての現代の GAN アーキテクチャの基礎なのです。 視聴する時間がない場合は、転置畳み込みがどのように機能するかを理解するために、これを非常によくまとめたアニメーションを以下に示します。 一般的な畳み込みニューラル ネットワークでは、一連の畳み込み (およびその他の操作) を使用して、画像を通常は低次元のベクトルにマッピングします。 同様に、複数のデコンボリューションを適用することで、単一の低解像度配列を鮮やかなフルカラー画像にマッピングできます。 先に進む前に、GAN を使用するユニークな方法をいくつか試してみましょう。 あなたの現在の位置: 赤いX CGAN: 条件付き生成的敵対ネットワーク
オリジナルのGANはランダムノイズからデータを生成します。つまり、たとえば犬の画像でトレーニングすると、より多くの犬の画像が生成されることになります。 猫の画像でトレーニングすることもできます。その場合、猫の画像が生成されます。 ニコラス ケイジの画像でトレーニングすることもできます。その場合、ニコラス ケイジの画像が生成されます。 他の画像などでトレーニングすることもできます。 ただし、犬と猫の画像を同時に学習させようとすると、ぼやけた混血の画像が生成されます。 CGAN は、ジェネレーターに猫、犬、ニコラス・ケイジなどの特定の種の画像を生成するように指示するだけで、この問題を解決することを目指しています。 具体的には、CGAN は単一のエンコードされたベクトル yy をランダム ノイズ ベクトル zz に連結し、次のようなアーキテクチャを実現します。 これで、同じ GAN を使用して猫と犬の両方を生成できるようになりました。 サイクルGAN 論文: https://arxiv.org/abs/1703.10593v6 コード: https://github.com/junyanz/CycleGAN その他のプロジェクトと記事:
GAN は画像を生成するためだけのものではありません。上の写真のように、「馬 + シマウマ」のような新しい生き物を作成することもできます。 これらの画像を作成するために、CycleGAN は「画像から画像へ」の変換の問題を解決することを目指しています。 CycleGAN は、最先端の画像合成を進化させる新しい GAN アーキテクチャではなく、GAN を使用するスマートな方法です。したがって、このテクニックは好きなアーキテクチャに自由に適用できます。 この時点で、論文 (https://arxiv.org/abs/1703.10593v6) を読むことをお勧めします。とてもわかりやすく書かれていて初心者でも理解しやすいです。 CycleGAN のタスクは、ソース ドメイン XX の画像をターゲット ドメイン YY にマッピングするネットワーク G(X)G(X) をトレーニングすることです。 しかし、「これは通常のディープラーニングやスタイル転送とどう違うのか?」と疑問に思うかもしれません。 まあ、下の図がそれをよく表しています。 CycleGAN は、ペアになっていない画像に対して画像変換を実行します。つまり、トレーニングに使用する画像は同じものを表す必要はありません。 多数の画像ペア (画像、レオナルド ダ ヴィンチの絵画の画像)(画像、レオナルド ダ ヴィンチの絵画の画像) がある場合、レオナルド ダ ヴィンチの絵画画像のトレーニングは (比較的) 簡単になります。 残念ながら、この男の絵画はあまりありません。 ただし、CycleGAN はペアになっていないデータでトレーニングできるため、同一の画像が 2 つ必要ありません。 一方、スタイル転送を使用することもできます。しかし、これは特定の画像のスタイルを抽出して別の画像に転送するだけなので、馬をシマウマに変換するなど、仮想的なものを変換することはできません。 ただし、CycleGAN は 1 つの画像ドメインから別の画像ドメインへのマッピングを学習します。それでは、モネの絵画トレーニングについてお話ししましょう。 彼らが使った方法は非常にエレガントです。 CycleGAN は、2 つのジェネレーター GG と FF、および 2 つの識別器 DXDX と DYDY で構成されています。 GG は XX からイメージを取得し、それを YY 内のイメージにマッピングしようとします。識別子 DYDY は、画像が GG によって生成されたのか、実際に YY で生成されたのかを予測します。 同様に、FF は YY から画像を受信し、それを XX 内の画像にマッピングしようとします。一方、識別子 DXDX は、画像が FF によって生成されたものか、実際に XX 内にあるかを予測します。 4 つのニューラル ネットワークはすべて、通常の GAN 方式でトレーニングされ、DYDY と DXDX を騙すのに十分な画像間変換タスクを実行する強力なジェネレーター GG と FF が残ります。 この種の敵対的損失は良いアイデアのように思えますが、それだけでは十分ではありません。パフォーマンスをさらに向上させるために、CycleGAN は別のメトリックであるサイクル一貫性損失を使用します。 一般的に言えば、適切な変換には次の特性が必要です。つまり、変換を繰り返すと、同じ結果が返されるということです。 CycleGAN は、ニューラル ネットワークに次の制約を強制することで、このアイデアを巧妙な方法で実装します。 F(G(x))≈x,x∈X F(G(x))≈x,x∈X G(F(y))≈y,y∈YG(F(y))≈y,y∈Y 視覚的に見ると、サイクルの一貫性は次のようになります。 全体的な損失関数は、ネットワークが上記の特性を満たさない場合、ペナルティを課すような方法で構築されます。この損失関数をここで書き出すつもりはありません。そうすると、論文での要約が台無しになってしまうからです。 さて、ドラゴンボールはまだ召喚されていません。より良い GAN アーキテクチャを見つけるという主なタスクに戻りましょう。 CoGAN: 結合型生成敵対ネットワーク
1 つの GAN よりも優れているものは何だと思いますか? 2 つの GAN です! CoGAN (Coupled Generative Adversarial Networks、Conditional Generative Adversarial Networks の略である CGAN と混同しないでください) はまさにそれを行います。単一の GAN ではなく 2 つの GAN をトレーニングします。 もちろん、GAN の研究者は、警察と偽造者の間のゲーム理論的な状況との類似点を指摘し続けています。これが CoGAN の背後にあるアイデアです。著者自身の言葉で言うと次のようになります。 ゲームには 2 つのチームがあり、各チームには 2 人のメンバーがいます。生成モデルはチームを形成し、協力して 2 つの異なるドメインで画像のペアを共同で合成し、識別モデルを混乱させます。識別モデルは、各ドメインのトレーニング データ分布から抽出された画像と、各生成モデルから抽出された画像を区別しようとします。同じチーム内の参加者間のコラボレーションは、重量配分の制約に基づいて確立されます。 GAN のマルチプレイヤー LAN コンテストがあるというのは素晴らしいことのように思えますが、実際にどのように機能させるのでしょうか? これはそれほど複雑ではなく、ネットワークがいくつかのレイヤーに対してまったく同じ重みを使用するようにするだけです。 私の(おそらくあまり控えめではない)意見では、CoGAN の最も素晴らしい点は、画像生成品質の向上でも、複数の画像ドメインでトレーニングできるという点でもない。 むしろ、4 分の 3 の価格で 2 つの画像が実際に手に入ります。 一部の重みを共有するため、CoGAN のパラメーターは 2 つの個別の GAN よりも少なくなります (したがって、メモリ、計算、およびストレージがさらに節約されます)。 これは微妙なテクニックですが、少し時代遅れなので、今日見られる新しい GAN の中にはこれを使用していないものもあります。 しかし、このアイデアは将来再検討されることになると思います。 ProGAN: 生成的敵対ネットワークの漸進的成長 論文: https://arxiv.org/abs/1710.10196 コード: https://github.com/tkarras/progressive_growing_of_gans その他の記事とビデオ:
トレーニング セット GAN には多くの問題がありますが、最も重要なのは不安定性です。 場合によっては、ジェネレータと識別器が互いの学習をキャンセルするため、GAN の損失が振動することがあります。場合によっては、ネットワークが収束した直後にエラーが発生し、画像がひどく見えることがあります。 ProGAN は、生成された画像の解像度を徐々に高めることでトレーニング セットを安定させる手法です。 常識的に考えると、1024x1024 の画像よりも 4x4 の画像を生成する方が簡単です。また、2x2 の画像を 32x32 の画像にマッピングするよりも、16x16 の画像を 32x32 の画像にマッピングする方が簡単です。 したがって、ProGAN は最初に 4x4 ジェネレーターと 4x4 ディスクリミネーターをトレーニングし、トレーニング プロセスの後半で対応する高解像度レイヤーを追加します。アニメーションでまとめてみましょう: WGAN: ワッサーシュタイン生成的敵対ネットワーク 論文: https://arxiv.org/abs/1701.07875v3 コード: https://github.com/eriklindernoren/Keras-GAN 追加リソース:
この論文はおそらくこのリストの中で最も理論的かつ数学的な論文です。著者は記事の中で大量の証拠、推論、そして別の種類の数学用語を使用しています。したがって、積分確率論とリプシッツ連続体があなたにとって無関係であれば、それらについて多くの時間を費やすつもりはありません。 つまり、WGAN(「W」はワッサーシュタインの略)は、純粋数学者と統計学者の間で大流行した新しいコスト関数を提案しました。 以下は、GAN ミニマックス関数の古いバージョンです。 これは WGAN で使用される新しいバージョンです: ほとんどの場合、WGAN 関数について知っておく必要があるのは、Jensen-Shannon ダイバージェンスと呼ばれる統計を近似する古いコスト関数をクリアし、1-Wasserstein 距離と呼ばれる統計を近似する新しいコスト関数をスライドさせるということだけです。 なぜこれを実行する必要があるのかは、以下の図を見ればわかります。 もちろん、興味があれば、WGAN 論文がこれほど好評を博している理由である数学的詳細を以下で簡単に説明します。 オリジナルの GAN 論文では、識別器が最適な場合、ジェネレーターは Jensen-Shannon ダイバージェンスを最小化する方法で更新されると述べられています。 よくわからない場合は、ジェンセン・シャノン ダイバージェンスとは、2 つの確率分布の差を測る尺度です。 JSD が大きいほど、2 つの分布の「違い」が大きくなります。逆もまた同様です。計算式は以下のとおりです。 しかし、JSD を最小限に抑えることが最善の選択肢なのでしょうか? WGAN 論文の著者はおそらくそうではないと考えています。特別な理由により、2 つの分布がまったく重ならない場合は、JSD の値は 2log22log2 という一定値のままであることが示されます。 定数値を持つ関数の勾配はゼロになりますが、勾配がゼロというのはジェネレーターがまったく何も学習していないことを意味するため、好ましくありません。 WGAN の著者らが提案する代替の距離測定基準は、地球移動距離 (EMD 距離) としても知られる 1-ワッサーシュタイン距離です。 「地球移動距離」という用語は類推から来ています。2 つの分布の 1 つが土の山で、もう 1 つが穴であると想像してください。 土の移動距離は、シルト、砂、ゆるい土などを可能な限り効率的に運搬できると仮定して、土の山をピットまで運搬するコストを測定します。ここで、「コスト」は、ポイント間の距離 × マウンドの移動距離 × 移動したマウンドの量であると考えられます。 つまり、2 つの分布間の EMD 距離は次のように表すことができます。 inf が最小値の場合、xx と yy は 2 つの分布上の点であり、γγ は最適な輸送計画です。 しかし、これを計算するのは困難です。したがって、まったく異なる値を計算します。 これら 2 つの方程式の関係は、最初は明らかではないかもしれませんが、カントロビッチ-ルーベンシュタイン双対性と呼ばれる複雑な数学 (これを 3 回素早く読んでみてください) を通じて、ワッサーシュタイン / 地球移動距離のこれらの式が同じものを計算しようとしていることがわかります。 私がリンクした論文やブログ記事の重要な数学の概念を理解するのが難しくても、あまり心配しないでください。 WGAN に関する作業のほとんどは、単純なアイデアに対して複雑な正当化を提供することです。 SAGAN: 自己注意生成的敵対ネットワーク 論文: https://arxiv.org/abs/1805.08318v1 コード: https://github.com/heykeetae/Self-Attention-GAN 追加リソース:
GAN は転置畳み込みを使用して特徴マップを「スキャン」するため、近くの情報にしかアクセスできません。 転置畳み込みを単独で使用するのは、ブラシの小さな半径内のキャンバスの領域のみを見て絵を描くようなものです。 最もユニークで複雑な細部を完璧に仕上げることができる最高のアーティストであっても、創作の過程では一歩下がって全体像を見る必要があります。 SAGAN(「Self-Attention Generative Adversarial Network」の略)は、転送モデル アーキテクチャにより近年非常に人気が高まっている自己注意メカニズムを使用します。 自己に焦点を当てることで、ビルダーは一歩下がって「全体像」を見ることができます。 BigGAN: 大規模生成敵対ネットワーク 論文: https://arxiv.org/abs/1809.11096v2 コード: https://github.com/huggingface/pytorch-pretrained-BigGAN 追加リソース:
4 年もの歳月を経て、DeepMind は前例のない形で、GAN に取り組むことを決定しました。その際に採用されたのがディープラーニングと呼ばれる謎の技術です。この技術は非常に強力で、最先端のものであり、先進技術のリーダーボードで他のすべての技術を凌駕しています。 次は BigGAN です。これはまったく何もしない GAN ですが (ただし、多数の TPU クラスター上で実行され、このリストに載るに値するものです)。 冗談です!DeepMind チームは BigGAN で多くの成果を達成しました。 BigGAN は、驚くほどリアルな画像に加えて、GAN のトレーニングの非常に詳細な大規模な結果も示します。 BigGAN のチームは、多数のマシンにまたがる大規模なバッチで GAN をトレーニングする際の不安定性に対処するために、さまざまな手法を導入しました。 まず、DeepMind は SAGAN をベースラインとして使用し、スペクトル正規化と呼ばれる機能を追加しました。 次に、画像バッチサイズを 50% 拡大し、幅 (チャネル数) を 20% 拡大しました。当初は、レイヤーを追加しても効果がないように見えました。 他の 1 桁のパーセンテージの改善をいくつか行った後、著者らは「切り捨てトリック」を使用して、サンプル画像の品質を改善しました。 BigGANはトレーニング中にzN(0,I)から潜在ベクトルを抽出し、画像生成時に潜在ベクトルが指定された範囲外になった場合はそれを再サンプリングします。 範囲は ψψ で表されるハイパーパラメータです。 ψψ が小さいほど範囲が狭くなり、多様性を犠牲にしてサンプルの忠実度が向上します。 では、この複雑な調整作業にはどんな落とし穴があるのでしょうか? これをドッグボールと呼ぶ人もいます。
BigGAN テクノロジーでは、大規模な GAN トレーニングには一連の問題が発生する可能性があることも判明しました。 注目すべきは、トレーニング セットはバッチ サイズや幅などのパラメーターを増やすことで適切に拡張されるように見えますが、何らかの理由で常に縮小してしまうことです。 特異値を分析することでこの不安定性を理解することに興味がある場合は、論文を読んでみてください。そこには多くのことが書かれています。 最後に、著者らは、3億枚の画像を含むImageNetのようなデータセットであるJFT-300と呼ばれる新しいデータセットでBigGANをトレーニングしました。彼らは、BigGAN がこのデータセットでより優れたパフォーマンスを発揮することを示しており、より大規模なデータセットが GAN の今後の方向性となる可能性があることを示唆しています。 論文の最初のバージョンが発表された後、著者らは数か月後に BigGAN を再検討しました。レイヤーを追加しても機能しないと言ったことを覚えていますか? これはトレーニング セットの選択が適切でなかったことが原因であることが判明しました。 チームは、モデルに単にレイヤーを追加するのではなく、実験を行い、ResNet を使用してボトルネックを突破できることを発見しました。 上記の継続的な調整、スケーリング、および慎重な実験を通じて、BigGAN のトップ ラインは、合計スコア 152.8 のうち 52.52 ポイントを獲得し、以前の最先端技術を完全に打ち負かしました。 これが正しいステップでないなら、どれが正しいのか分かりません。 StyleGAN: スタイルベースの生成的敵対ネットワーク 論文: https://arxiv.org/abs/1812.04948 コード: https://github.com/NVlabs/stylegan 追加リソース:
StyleGAN は Nvidia の研究の延長であり、従来の GAN 研究とはほとんど関係がありません。従来の GAN は主に損失関数、安定性、アーキテクチャなどに重点を置いています。 地球上のほとんどの人を騙すことができる世界クラスの顔生成器を持っていても、車の画像を生成したい場合には役に立ちません。 したがって、StyleGAN は、よりリアルな画像を作成することに重点を置くのではなく、生成された画像を細かく制御する GAN の機能を向上させます。 前述したように、StyleGAN にはアーキテクチャを開発したり損失関数を計算したりする機能がありません。代わりに、これはあらゆる GAN で使用できる一連のテクニックであり、画像のブレンド、複数のレベルでの詳細の変更、より高度なスタイル転送の実行など、さまざまなクールな操作を実行できます。 言い換えれば、StyleGAN は Photoshop プラグインのようなものですが、GAN 開発のほとんどは Photoshop の新しいバージョンに過ぎません。 このレベルの画像スタイル制御を実現するために、StyleGAN は、適応インスタンス正規化、潜在ベクトル マッピング ネットワーク、定数学習入力などの既存の技術を採用しています。 StyleGAN について詳しく説明せずに説明するのは難しいので、興味があれば、StyleGAN を使用して Game of Thrones のキャラクターを生成する方法を説明した私の記事をご覧ください。すべてのテクニックについて詳しく説明しており、その過程でクールな結果もたくさん得られます。 結論は 最後までお読みいただき、ありがとうございます。皆さんは、偽の個人写真を作成するという非常に学術的な分野の最新の動向を把握しています。 しかし、ソファに倒れ込んでWeiboやWeChatを延々とスクロールし始める前に、少し立ち止まって、まだどれくらい進む必要があるか考えてみてください。 次は何だ?!未踏の領域! ProGAN と StyleGAN を習得し、BigGAN の規模に到達すると、その世界に迷い込むのは簡単です。 しかし、地図を拡大してよく見てください。緑の土地が見えますか?北に赤い三角形が見えますか? これらは突破されるのを待っている未知の領域であり、チャンスをつかめばすべてあなたのものになることができます。 さようなら!友よ、あなたたちの航海を待っている未知の海がまだたくさんあります! 結論: 興味深い最先端の研究 この記事を読んでいただきありがとうございます。これまでに私が共有したすべてのリソースに従っていれば、GAN テクノロジーにおける最も重要なブレークスルーのいくつかをしっかりと理解しているはずです。 しかし、学ぶべきことはまだまだあることは間違いありません。科学研究のペースに追いつくのは難しいですが、不可能ではありません。私のアドバイスは、最新の公開論文を読むことです。それらはあなたのプロジェクトに新しいアイデアやアプローチをもたらす可能性があります。 始めるにあたって、最先端の(2019 年 5 月現在)研究プロジェクトをいくつかお勧めします。 DeOldify について聞いたことがあるかもしれません。そうでない場合は、こちらにアクセスしてください。 Webサイト: https://blog.floydhub.com/colorizing-and-restoring-old-images-with-deep-learning/! 最近、NoGAN と呼ばれる新しいトレーニング手法を導入するアップデートがありました。詳細については、ブログとコードをご覧ください。 Google レベルのデータがない場合、BigGAN の結果を最初から複製するのは面倒な作業になる可能性があります。 ICML 2019 では、より少ないラベルで BigGAN 品質のモデルをトレーニングすることを提案する論文が発表されました。 もちろん、GAN はディープラーニング ベースの唯一の画像生成技術ではありません。最近、OpenAI は、画像生成に転送モデル アーキテクチャを使用する新しいモデル、スパース転送モデルを発表しました。いつものように、彼らは論文、ブログ投稿、コードをオープンソースとしてリリースしました。 係数移行モデルの知識リンク:
ああ、これは新しい研究でも何でもないのですが、GAN の起源の話を聞いてみる価値はあるでしょう。 Nvidia には、GauGAN という本当に素晴らしいプロジェクトがあり、これを使うと、お子様の落書きをリアルな傑作に変えることができます。それは実際に体験してみなければ理解できないことです。まず Soplay のデモを見て、次にブログと論文を読んでください。
GAN を「デバッグ」する方法を考えたことはありませんか? 有望な解決策を提案する ICLR 2019 の論文をご紹介します。 ICLR2019 論文: https://openreview.net/pdf?id=Syx_Ss05tm GAN をどれだけ強力に見せても、解決すべき問題はまだたくさんあります。記事では、未解決の問題のいくつかを簡潔にまとめています。 概要記事のリンク: https://distill.pub/2019/gan-open-problems/ 誰かが GAN の別の現実的な応用方法を発見したようです。 関連レポート:
[この記事は51CTOコラムBig Data Digest、WeChatパブリックアカウント「Big Data Digest(id: BigDataDigest)」からのオリジナル記事です] この著者の他の記事を読むにはここをクリックしてください |
最近、セキュリティ業界で2つの大きな出来事が起こりました。大手証券会社にとって、これはブラックマンデ...
最も強力な中国語 - 英語バイリンガル モデルがオープン ソースになりました。今日、Wudao Ti...
2021年12月末、4つの部門が共同で「インターネット情報サービスのアルゴリズム推奨管理に関する規則...
RPA は、その幅広い適用性、無制限のシナリオへの適応性、既存の情報システムを損なわない親和性、AI...
JD.comでは以前から物流ロボットを活用しているといわれています。東莞市麻容のJD仕分けセンター...
この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...
現代の若者は、ベテランスターたちの若い頃の見事な姿を見る機会がもうないが、それは問題ではない。人工知...
タスクの数が増えるにつれて、現在の計算方法を使用して汎用の日常的なロボットを構築するコストは法外なも...
[[203712]]ニューラルネットワークを自分で構築するのは複雑すぎますか? [[203713]...
この記事は、Heart of Autonomous Driving の公開アカウントから許可を得て転...