Upgrade to Pro — share decks privately, control downloads, hide ads and more …

深層生成モデルによるメディア生成

Hirokazu Kameoka
February 07, 2020

 深層生成モデルによるメディア生成

筑波大学
社会工学ファシリテーター育成プログラム「メディア生成AI」
講義資料(修正版)

Hirokazu Kameoka

February 07, 2020
Tweet

Other Decks in Research

Transcript

  1. 自己紹介 亀岡弘和(かめおかひろかず) 略歴: 2007 東京大学大学院情報理工学系研究科 システム情報学専攻 博士課程修了 2007 日本電信電話株式会社入社 NTTコミュニケーション科学基礎研究所配属

    2011 東京大学大学院情報理工学系研究科 システム情報学専攻 客員准教授 2015 NTTコミュニケーション科学基礎研究所 特別研究員 2016 国立情報学研究所 客員准教授 2019 筑波大学大学院システム情報工学研究科 客員准教授 専門:  音声・音楽などの音響信号を対象とした信号処理や機械学習  計算論的聴覚情景分析,音源分離,音声合成・変換など
  2. 本講義の目的と目標 深層学習(AI)研究に触れる  深層学習(AI)の研究の面白さや凄さを体感する  特に深層生成モデルと呼ぶ近年発展が著しい分野を扱う 温故知新(故きを温ねて新しきを知る)  深層生成モデルと古典的な確率モデルの関連を理解する 

    古典的な確率モデルがベースにする普遍的な考え方を学ぶ  信号処理の基礎を学ぶ プログラミングに触れる  簡単なプログラミングの演習を通して,信号やデータの扱いに 慣れ,確率モデルを用いた各種処理を実装する
  3. 深層生成モデル (Deep Generative Models) 深層学習×生成モデル=深層生成モデル  ニューラルネットワークの能力を活かして極めてリアルな データ(画像や音声など)の生成を可能にする確率モデル 代表例 

    自己回帰生成ネットワーク (AutoregressiveGenerativeNetwork)  変分自己符号化器 (VariationalAutoEncoder)  フローベース生成モデル (Flow‐based Generative Model)  敵対的生成ネットワーク (GenerativeAdversarialNetwork)
  4. 本講義の目的と目標 深層学習(AI)研究に触れる  深層学習(AI)の研究の面白さや凄さを体感する  特に深層生成モデルと呼ぶ近年発展が著しい分野を扱う 温故知新(故きを温ねて新しきを知る)  深層生成モデルと古典的な確率モデルの関連を理解する 

    古典的な確率モデルがベースにする普遍的な考え方を学ぶ  信号処理の基礎を学ぶ プログラミングに触れる  簡単なプログラミングの演習を通して,信号やデータの扱いに 慣れ,確率モデルを用いた各種処理を実装する
  5. 講義内容 深層生成モデルの実応用例の紹介 深層生成モデルと古典的な確率モデルの関連  自己回帰生成ネット (AGN) vs 自己回帰モデル (AutoRegressive model)

     変分自己符号化器 (VAE) vs 主成分分析 (Principal Component Analysis )  フローベース生成モデル (Flow) vs 独立成分分析 (Independent Component Analysis ) 古典的確率モデルのおさらい  ARモデル(=線形予測分析),PCA,ICA プログラミング演習 ニューラルネットワークの基礎 深層生成モデルのアイディアの解説  AGN (WaveNet),VAE,Flow,敵対的生成ネット (GAN)
  6. 各種深層生成モデルと古典的確率モデル 敵対的生成ネット (GAN) 自己回帰ネット (AGN) 自己回帰 (AR)モデル ニューラルネット (NN) 変分自己符号化器

    (VAE) 主成分分析 (PCA) ニューラルネット (NN) フローベース 生成モデル (Flow) 独立成分分析 (ICA) ニューラルネット (NN) 深層生成モデル 古典的確率モデル
  7. 線形予測分析 (LinearPrediction) ARモデルを用いた音声信号の分析法 音声情報処理研究の歴史の幕開けとなった信号処理技術 (統計的手法を取り入れた初めての音声研究として有名)  音声分析合成(ボコーダ)  音声音響符号化 

    音声認識のための音声特徴量  音声強調(残響除去、ブラインド音声分離) などへの応用 日本発の技術としても知られる  Levinson‐Durbin‐板倉アルゴリズム、偏自己相関(PARCOR)、線ス ペクトル対(Line Spectrum Pair) の発明や板倉齋藤距離 の発見など、板倉文忠氏(名古屋大学名誉教授)の 電電公社時代の活躍が世界的に有名
  8. 「予測誤差」を最小化 動機:符号化への応用  少ないパラメータで音声信号を表現したい 問題:線形予測誤差の最小化  時刻 の信号のサンプル値 を、過去のサンプル値 ,

    , … , の線形結合で「予測」  「予測」の誤差を最小にするには 結合係数(予測係数という)をどう置けば良い? time
  9. 線形予測符号化 (Linear Predictive Coding) 時系列信号の可逆圧縮符号化の標準的な方式 時系列信号 予測係数 予測誤差 Golomb‐Rice符号化 符号化して

    伝送 線形予測 分析器 出現頻度の高い振幅値に 短い符号の割り当て 予測誤差の振幅は 0付近に集中
  10. 線形予測分析によるソース・フィルタ分解 音声の分析と合成 声帯 音声波形 声道特性 声帯振動波形 • ソースフィルタモデル(音声生成過程モデル) パルス列音源 白色雑音源

    声帯波形 線形システム 合成音声 声道特性 (有声音源) (無声音源) 分析:音声波形 を声帯波形と声道特性に分解 合成:推定した声帯情報と声道情報から元音声を再現
  11. WaveNet(ニューラルボコーダ)の登場 [van den Oord+2016] 線形方式から非線形方式へ  線形予測分析  ニューラルネットの導入 ⇔

    where 過去サンプルの線形結合 (モデルとしての表現力は限定的) ガウス分布 where , … , , を入力として の分布を出力するニューラルネット を表す
  12. WaveNet [van den Oord+2016] 振幅の量子化 ( ‐law符号化) 条件付分布のモデル化  Causal

    Conv  Gated CNN  Residual Net  Dilated Conv WaveNetは高品質 だが を もとに1サンプルずつ 逐次生成するため、 波形生成に時間が かかるのが難点 振幅を256個の離散値に量子化 ( 層目) 時刻 より前の 個の振幅値系列 , ⋯ , s , s を入力 の離散分布 (256次元)を出力
  13. 各種深層生成モデルと古典的確率モデル 敵対的生成ネット (GAN) 自己回帰ネット (AGN) 自己回帰 (AR)モデル ニューラルネット (NN) 変分自己符号化器

    (VAE) 主成分分析 (PCA) ニューラルネット (NN) フローベース 生成モデル (Flow) 独立成分分析 (ICA) ニューラルネット (NN) 深層生成モデル 古典的確率モデル
  14. 超高次元データの生成モデル 音声波形や画像は超高次元なデータ  音声波形(44.1kHzサンプリング)の場合: わずか1秒間で40,000次元  画像(1024x1024ピクセル)の場合: 1,000,000次元 高次元であるだけでなく複雑な相関構造(つまり同時分布)をもつ 各種深層生成モデルのアイディア

     AGN  のようにfactorizeしてモデル化・学習の対象 を1次元の分布 に帰着させることで問題を簡単化  学習できたら により を生成可能  VAE, Flow, GANは? ⇒どうやって , … , の複雑な分布 をモデル化するか? [van den Oord+2016] ⇒本日はVAEの考え方について解説
  15. 次元圧縮法の1つ  射影したときにばらつきが大きく なる軸を1つ1つ見つける  各データが局在する低次元な 線形部分空間を見つける 定式化  データ

    の下で となるような および を求める問題(ただし, )  基底 の直交制約:  これを解くと,最適な は の固有ベクトルになる 主成分分析 (PrincipalComponentAnalysis) ⇔ 平均を0とする
  16. VAEの学習 学習ロス:  第一項  第二項 ※ は学習データによるサンプル平均を表す ガウス分布同士のKLダイバージェンス に関する期待値計算

    は によって具体形が 決まる の非線形関数になっており,期待値は 解析的に得られない のサンプリングによる モンテカルロ近似は? パラメータ がサンプリング元の分布に含まれる ためこれでは に関する勾配が計算できない に関して微分可能!
  17. Crossmodal Voice/Face Synthesis [Kameoka+2018] Time Time 言語情報 容貌特徴 できるだけ一致 させる

    声質特徴 抽出器 Channel 入力音声 変換音声 言語情報 抽出器 容貌特徴 抽出器 音声 合成器 入力顔画像 顔画像 生成器 声質特徴 音声変換器 顔画像 予測器 5つのNNを同時学習 言語抽出器 容貌特徴抽出器 音声合成器 声質特徴抽出器 顔画像生成器 : 入力音声の発話内容に相当する情報 を抽出 : 入力顔画像の容貌に相当する情報 を抽出 : 発話内容 と画像特徴 から音声 を生成 : 音声 の声質特徴に相当する情報 ̂を抽出 : 声質特徴 ̂から顔画像 を生成
  18. 各種深層生成モデルと古典的確率モデル 敵対的生成ネット (GAN) 自己回帰ネット (AGN) 自己回帰 (AR)モデル ニューラルネット (NN) 変分自己符号化器

    (VAE) 主成分分析 (PCA) ニューラルネット (NN) フローベース 生成モデル (Flow) 独立成分分析 (ICA) ニューラルネット (NN) 深層生成モデル 古典的確率モデル
  19. 超高次元データの生成モデル 音声波形や画像は超高次元なデータ  音声波形(44.1kHzサンプリング)の場合: わずか1秒間で40,000次元  画像(1024x1024ピクセル)の場合: 1,000,000次元 高次元であるだけでなく複雑な相関構造(つまり同時分布)をもつ 各種深層生成モデルのアイディア

     AGN  のようにfactorizeしてモデル化・学習の対象 を1次元の分布 に帰着させることで問題を簡単化  学習できたら により を生成可能  VAE  要素間に相関構造や制約がある高次元データは低次元空間に圧縮可能という考え方  符号化器 と復号化器 の をNNでモデル化し, となるように , を学習  学習できたら により を生成可能  Flow, GANは? ⇒どうやって , … , の複雑な分布 をモデル化するか? ⇒本日はFlow, GANの考え方について解説
  20. 最尤法によるICAの定式化 統計的独立性と非ガウス性 最尤法によるICA  音源の確率分布に非ガウス分布を仮定し分離行列 を最尤推定 音源数 振幅 頻度 振幅

    振幅の頻度分布が正規分布に近づいていく (中心極限定理) 非ガウス的 ガウス的 時間 分離信号の非ガウス性の最大化により音源信号を復元可能
  21. Flowの考え方  観測データ を潜在変数 の可逆な非線形変換(NN)でモデル化 潜在変数の確率分布 を仮定⇒観測データの確率分布 を導出⇒ が最大になるようにNNパラメータを推定 

    変数変換を多数回行い(既知の単純な)確率分布を変形して いくことで複雑な分布形を表現  が最大に なるように (の中のパラメータ)を学習  学習できたら で を生成可能 ... 学習では ,生成では を利用
  22. 可逆変換関数のモデル化  をどうモデル化するか  標準的な全結合NN? ... 活性化関数 は逆関数が 存在するもの を選ぶ

    → はどうなる? より よって 最悪 の計算が必要 ( を三角行列に制約?⇒かなり制約的)
  23. 可逆変換関数のモデル化  をどうモデル化するか  Nonlinear Independent Components Estimation (NICE) [Dinh+2014]

     Additive coupling layer  Random permutation layer ⇒要素を置換(置換行列を乗じる)  Scaling layer ⇒対角行列を乗じる ... : where where : ⇒ split copy non‐ linear
  24. 可逆変換関数のモデル化  をどうモデル化するか  Real‐valued non‐volume preserving (R‐NVP) flow [Dinh+2016]

     R‐NVP transformation layer  Glow [Kingma+2018] はNICEとR‐NVPの拡張 ... split : : ⇒ copy non‐ linear
  25. 可逆変換関数のモデル化  をどうモデル化するか  Masked Autoregressive Flow (MAF) [Papamakarios+2017] ...

    → : ヤコビ行列: 尤度関数の評価 は並列計算可能 : for 1, … , : 生成に逐次計算が必要
  26. 可逆変換関数のモデル化  をどうモデル化するか  Inverse Autoregressive Flow (IAF) [Kingma+2017] ...

    ヤコビ行列: 尤度関数の評価に逐次計算が必要 生成は並列計算可能 * : → :
  27. Flowの考え方(再掲)  観測データ を潜在変数 の可逆な非線形変換(NN)でモデル化 潜在変数の確率分布 を仮定⇒観測データの確率分布 を導出⇒ が最大になるようにNNパラメータを推定 

    変数変換を多数回行い(既知の単純な)確率分布を変形して いくことで複雑な分布形を表現  が最大に なるように (の中のパラメータ)を学習  学習できたら で を生成可能 ... 学習では ,生成では を利用
  28. 各種深層生成モデルと古典的確率モデル 敵対的生成ネット (GAN) 自己回帰ネット (AGN) 自己回帰 (AR)モデル ニューラルネット (NN) 変分自己符号化器

    (VAE) 主成分分析 (PCA) ニューラルネット (NN) フローベース 生成モデル (Flow) 独立成分分析 (ICA) ニューラルネット (NN) 深層生成モデル 古典的確率モデル
  29. Generative Adversarial Network (GAN) [Goodfellow+2014] 分布形を仮定することなく学習サンプルの分布に従う擬似サンプル を生成する生成器を学習する枠組 実サンプルか生成器 が生成した擬似サンプルかを識別する識 別器

    をだますように を学習  もだまされないように学習 は識別スコアを小さく したい 識別境界を越えたい は識別スコアを 大きくしたい 敵対ロス ( から見た識別スコア) ⇒音声合成への応用も [Kaneko+2016][Saito+2016]
  30. GANの問題点 学習が不安定になる傾向  と の学習率のバランス調整が難しい  モード崩壊(同じようなサンプルしか生成しないような が得られる) 原因はJSダイバージェンスにある? 

    JSダイバージェンスは各分布がdisjoint(重なりがない)場合に∞になる ⇒ が未熟な状態で が に達していると目的関数が∞になる ( をどう更新しても目的関数を小さくできない状況に・・・)
  31. Wasserstein GAN [Arjovsky+2017] Wasserstein距離で と の近さを測ることで前記問題を解決 Wasserstein距離の定義  のイメージ 

    ヒストグラム とヒストグラム の近さを測る規準  ヒストグラムを各地点に堆積した石と解釈し、 のように堆積した石 を運んで のような地形にする際にかかる最小の「労力」 ※ 1の場合は「Earth Mover’s Distance (EMD)」と呼ぶ A B
  32. Earth Mover’s Distance (EMD) EMDの計算自体が最適化問題(最小輸送問題)  地点 から地点 に運ぶ石の量: ,

     (労力)= (石の量) (運ぶ距離)と定義すると、 ヒストグラム とヒストグラム のEMDは以下となる  と が離散的な場合、線形計画問題の形式で書ける ただし 地点 に運ばれる石の総量 地点 から運ばれる石の総量
  33. EMDを計算するための線形計画問題  と置くと 不等式制約 は と書けるので 双対問題(再掲) A B も

    も非負値なので、 も もできるだけ大きくしたい (しかし制約がある)
  34. EMDを計算するための線形計画問題 不等式制約 のイメージ 従ってEMD(離散バージョン)は  と が連続分布の場合は もし , ⋯

    , が決まっていれば , ⋯ , の上限値が決まる(逆も然り) のとき とすると は に関して最大になる Lipschitz連続関数
  35. Wasserstein GAN の学習アルゴリズム  と のEMDを最小化する を求める最適化問題  と をニューラルネットワークで表現

     それぞれのパラメータ および を学習  がLipschitz連続となるようにするためのアイディア  Weight Clipping [Arjovsky+2017]  Gradient Penalty [Gulrajani+2017]  Spectral Normalization [Miyato+2018] GANと同様minmax問題 (敵対的学習)になっている
  36. 各種生成モデルのアイディアのまとめ AGN  を学習  学習できたら により を生成可能 VAE 

    符号化器 と復号化器 の をNNでモデル化し, となるように , を学習  学習できたら により を生成可能 Flow  が最大になるように , … , (NNパラメータ)を学習  学習できたら で を生成可能 GAN  生成器 ( )と識別器 ( )を敵対的に学習  学習できたら は ~ , により生成可能
  37. 本講義の目的と目標 深層学習(AI)研究に触れる  深層学習(AI)の研究の面白さや凄さを体感する  特に深層生成モデルと呼ぶ近年発展が著しい分野を扱う 温故知新(故きを温ねて新しきを知る)  深層生成モデルと古典的な確率モデルの関連を理解する 

    古典的な確率モデルがベースにする普遍的な考え方を学ぶ  信号処理の基礎を学ぶ プログラミングに触れる  簡単なプログラミングの演習を通して,信号やデータの扱いに 慣れ,確率モデルを用いた各種処理を実装する