E資格受験前なので復習がてら学んだことをざっくり振り返る ~ 深層学習後編、開発環境編~
前回の続きになります。深層学習の後編になります。もう一息です。 まずは生成モデルと識別モデルについてです。 識別モデルは入力Xから出力Yへの直接的なマッピングを学習することを目指しています。このマッピングは条件付き確率P(Y | X)を使用して表される。与えられた入力データに基づいて出力ラベルの確率を最も正確に予測する。 生成モデルはデータの同時確率P(X,Y)またはデータの周辺確率P(X)を通じて行われる。観測されたデータがどのように生成されるかの理解を深め、新しいデータポイントを生成する能力を持つこと。 ナイーブベイズ:P(X | Y) = ΠnP(xi |Y)、P(xi |Y)は特徴xiが与えられたクラスYに属する条件付確率 GAN:生成器Gがランダムノイズからデータを生成し、識別器Dが実データと生成データを区別しようとする。minG maxD V(D,G) = ExPdata(x) [logD(x)] + EzP(z) [log(1 - D(G(z)))]、V(D,G)は識別機Dと生成器Gの値関数、Pdataは実データの分布、Pzは生成器の入力となるノイズの分布。 次はVAEとVQ-VAEについてです。 VAE(Variational Autoencoder):入力データを低次元の潜在空間にエンコードし、その潜在表現から元のデータを復元するように学習するオートエンコーダの一種。潜在空間における確率分布をモデリングすることにより、新しいデータの生成も可能。 データxから潜在変数zの分布qΦ(z | x)を推定し、デコーダを用いてzからxを再構築する確率pθ(x | z)を最大化する。 潜在変数zの事後分布qΦ(z | x)が事前分布p(x)に近づくように制約をかける。そして以下の損失関数を最大化する。 L(θ,Φ; x) = Eq(z | x)[logpθ(x | z)] - Dkl(qθ(z | x)||p(x))、DklでqΦ(z | x)とp(z)の分布の類似度を測る。 VQ-VAE(Vector Quantized-Variational Autoencoder):VAEの概念を拡張し、潜在空間において離散的な表現を使用する。ンコーダが出力する連続的な潜在表現を、事前に定義された離散的なコードブックにマッピングすることにより、潜在表現をベクトル量子化する。 エンコーダが出力する潜在変数ze(x)を、コードブック内の最も近いコードベクトルzqにマッピングする。損失関数は以下のように定義する。 L = logpθ(x | zq) + ||sg[ze(x)] - zq||^2 + β||ze(x) - sg[zq]||^2、sg[⋅]はstop-gradient演算子、バックプロパゲーション時にその入力に対する勾配の計算を停止させる。βはハイパーパラメータ 使用例:画像生成や画像編集、データ圧縮、音声合成と音声変換、テキスト生成とスタイル転送、異常検知、強化学習 次はDCGANとConditional GANについてです。 DCGAN(Deep Convolutional Generative Adversarial Networks):CNNを用いたGANの一種、プーリング層を使わずに、ストライド畳み込みと逆畳み込みを使用する。 学習済みモデルは、未ラベルの大規模データセットから有用な特徴を自動で抽出するでき、他のタスクに転移学習で利用可能。 バッチ正規化をGeneratorとDiscriminatorの両方に適用することで、学習過程を安定させる。 ...