플로우 기반 생성 모델

Flow-based generative model

흐름 기반 생성 모델은 단순한 분포를 복잡한 분포로 변환하기 위해 확률의 변화 법칙을 사용하는 통계적 방법인 정규화 흐름을 활용하여 확률 분포를 명시적으로 모델링하는 기계 학습에 사용되는 생성 모델입니다.[1][2]

우도를 직접 모형화하는 것은 많은 이점을 제공합니다.예를 들어 음의 로그 우도를 손실 함수로 직접 계산하고 최소화할 수 있습니다.또한 초기 분포에서 샘플링하고 흐름 변환을 적용하여 새로운 샘플을 생성할 수 있습니다.

대조적으로, VAE(variational autoencoder) 및 생성 적대적 네트워크와 같은 많은 대체 생성 모델링 방법은 우도 함수를 명시적으로 나타내지 않습니다.

방법

흐름 정규화 방식

을(를) 분포 인(다변수일 가능성이 있음 랜덤 변수라고 합니다.

= i = 1의 경우 = (- ) }=를 0 에서 변환된 일련의 임의 변수라고 합니다함수 K 은(는) 가역적이어야 합니다. 즉, - 1 {\i}^{-이(가) 존재합니다.최종 출력 은(는) 대상 분포를 모델링합니다.

의 로그 가능성은 다음과 같습니다(유도체 참조).

로그 우도를 효율적으로 계산하려면 함수 f }, 는 1. 반전시키기 쉽고, 2. 야코비안의 행렬식을 계산하기 쉬운 값이어야 합니다.실제로 함수 K 는 심층 신경망을 사용하여 모델링되며, 대상 분포에서 데이터 샘플의 부정적인 로그 가능성을 최소화하도록 훈련됩니다.이러한 아키텍처는 일반적으로 역과 야코비안 행렬식 계산 모두에서 신경망의 순방향 통과만 필요하도록 설계됩니다.이러한 아키텍처의 예로는 NICE,[3] RealNVP,[4] Glow 등이 있습니다.[5]

로그 가능성 도출

과 을(를) 고려합니다 = 1- ( 1 )}=을) 참조하십시오

변수 공식의 변경에 z 1 의 분포는 다음과 같습니다.

여기서 f - ( ) dz}}}는 - 1 의 야코비안 행렬의 결정 인자입니다

역함수 정리에 의해:

ID (- )= ( ) - })=\ (여기서 는 가역 행렬임)에 따라 다음과 같습니다.

로그 가능성은 다음과 같습니다.

일반적으로 위의 내용은 임의의 및 - 에 적용됩니다 ⁡ ( 은(는) ⁡ -1 -1) {\ \i-1})}을(는) 귀납법으로 추론할 수 있습니다.

교육방법

딥 러닝 모델을 교육할 때 일반적으로 수행되는 것처럼 흐름을 정규화하는 목표는 모델의 가능성과 추정되는 목표 분포 사이의 Kullback-Leibler 차이를 최소화하는 것입니다. θ 모델의 과 p∗{\ 학습 대상 분포를 나타내면, (정방향) KL-분산은 다음과 같습니다.

방정식의 오른쪽에 있는 두 번째 항은 목표 분포의 엔트로피에 해당하며 우리가 모델이 학습하기를 원하는 매개 θ {\ \와 무관하며, 이는 목표 분포 아래에서 최소화할 음의 로그 가능성의 예상만 남깁니다.이 다루기 어려운 항은 중요도 샘플링을 통해 몬테카를로 방법으로 근사화할 수 있습니다.실제로 데이터 집합{ = : = p 에서 각각 독립적으로 추출된 N개의 표본은 다음과 같이 추정할 수 있습니다

그러므로 학습목표는

로 대체됩니다.

즉, 모형의 우도와 목표 분포 사이의 Kullback-Leibler 분산을 최소화하는 것은 목표 분포의 관측된 표본에서 모형의 우도를 최대화하는 것과 같습니다.[6]

흐름을 정규화하는 훈련을 위한 의사 코드는 다음과 같습니다.[7]

  • INPUT. 데이터 집합 :n 흐름 모델 θ(⋅ ),
  • SOVEL. θ ∑ ⁡ θ _
  • RETURN. θ ^

변형

평면 흐름

가장 초기의 예.[8]일부 활성화 함수 을(를) 고정하고θ = =(을(를) 적절한 차원으로 설정한 다음

역 θ - 에는 일반적으로 닫힌 형식 솔루션이 없습니다.

자코비안은 (+ ⟨ ⟩+ ) )= + ⟨ w ⟩+ )⟨ ⟩ + (\

모든 곳에서 가역적이 되려면 모든 곳에서 0이 아니어야 합니다.예를 들어 = h =\ 및 ⟨ , ⟩> - 이(가) 요구 사항을 충족합니다.

비선형 독립 성분 추정(NICE)

∈ n 를 짝수차원이라고 하고, 그들을 가운데로 나누자.그러면 정규화 흐름 함수는

여기서 θ 는 가중치가 θ 인 신경망입니다

- 은 x z = - θ 1) }= }= 이며 Jacobian은 1에 불과하므로 흐름이 볼륨을 유지합니다.

= n=일 때 이것은 x 방향을 따라 휘어진 전단으로 보입니다.

실제 비볼륨 보존(Real NVP)

Real Non-Volume Preserving 모델은 NICE 모델을 다음과 같이 일반화합니다.[4]

그 는 1= 1 2 = - θ x ) ⊙ ( - θ( 1){\=}=이고 Jacobian은∏ = s θ( 1 ){\prod_{=NICE 모델은 θ = 0 }=을(를) 사용하여 복구됩니다 Real NVP 맵은 x 의 전반부와 후반부를 분리하여 유지하므로 일반적으로 Real NVP 레이어 뒤에 순열( 2 ↦ ( 2 1 {\를 추가해야 합니다.

생성 흐름(광채)

생성 흐름 모형에서 [5]각 층에는 다음과 같은 세 부분이 있습니다.

  • 채널별 아핀 변환
    야코비안 ∏
  • 반전 가능한 1x1 컨볼루션
    자코비안 (K \det여기서 는 임의의 가역 행렬입니다.
  • Real NVP, Real NVP에 설명된 Jacobian과 함께.

가역적인 1x1 컨볼루션을 사용하는 아이디어는 Real NVP에서처럼 전반부와 후반부를 단순히 퍼뮤트하는 것이 아니라 일반적으로 모든 레이어를 퍼뮤트하는 것입니다.

마스킹 자동회귀흐름(MAF)

에 대한 분포의 자기 회귀 모형은 다음과 같은 확률적 과정으로 정의됩니다.[9]

여기서 : - → } R\σ i: - →( ∞ sigma _는 자기회귀모형을 정의하는 고정함수입니다.

재매개변수화 트릭을 통해 자기 회귀 모델은 정규화 흐름으로 일반화됩니다.

회귀 은 z ~N( ) {\ N(I_})}을(를) 설정하여 복구됩니다

순방향 매핑은 느리지만(순차적이기 때문에) 역방향 매핑은 빠릅니다(평행적이기 때문에).

자코비안 행렬은 하위 대각선이므로 자코비안은 σ σ ⋯ σ n( 1: -

MAF의 두 맵 θ 와 θ - 을(를) 반대로 하면 순방향 매핑이 빠르고 역방향 매핑이 느린 IAF(Inverse Autoregressive Flow)가 됩니다.

CNF(Continuous Normalizing Flow)

함수 구성에 의해 흐름을 구성하는 대신, 다른 접근법은 흐름을 연속 시간 동적으로 공식화하는 것입니다.[11][12] 을(를) 분포 {\의 잠재 변수라고 하자 이 잠재 변수를 다음 흐름 함수를 사용하여 데이터 공간에 매핑하십시오.

여기서 는 임의의 함수이며 신경망 등으로 모델링할 수 있습니다.

그러면 역함수는 자연스럽게 다음과 같습니다.[11]

x 의 로그 우도는 다음과 같이 구할 수 있습니다.[11]

추적은 야코비안 ∂ 의 대각선에만 의존하기 때문에"자유 형식" 야코비안을 허용합니다.여기서 '자유형'이란 야코비아인의 형태에 아무런 제약이 없다는 뜻입니다.이는 흐름을 정규화하는 이전의 이산 모델과 대조되는데, 이 모델에서 야코비안은 효율적으로 평가될 수 있도록 상하 대각선으로만 신중하게 설계되었습니다.

그 흔적은 "허친슨의 속임수"로 추정할 수 있습니다.[14][15]

주어진 임의의 ∈ R × n{\ ^{ n 의 u ∈ [ ]= E E [ ( ] .(증명: 기대를 직접 확장합니다.)

일반적으로 랜덤 벡터는 정규 분포) 또는 - 라다마허 분포)에서 샘플링됩니다.

가 신경망으로 구현되면 신경망 ODE 방법이 필요합니다[16].실제로 CNF는 신경 ODE를 제안한 것과 같은 논문에서 처음 제안되었습니다.

CNF에는 두 가지 주요 단점이 있는데, 하나는 연속적인 흐름이 동형이어야 한다는 것이고, 따라서 방향과 주변의 등방성을 보존한다는 것입니다. (예를 들어, 공간을 연속적으로 변형하여 왼쪽을 오른쪽으로 뒤집는 것은 불가능하고, 구를 뒤집거나 매듭을 푸는 것은 불가능합니다.) 다른 하나는 학습된 f 은(즉, 모두 동일한 문제를 해결하는 이(가) 무한히 존재하기 때문에 잘못된 일 수 있습니다.

추가 차원을 추가함으로써 CNF는 방향을 반대로 설정하고 주변 동위원소를 초과할 수 있는 충분한 자유를 얻을 수 있습니다(책상에서 다각형을 집어 3-공간에서 뒤집거나 4-공간에서 매듭을 풀 수 있는 것과 마찬가지로). 이는 "증강 신경 ODE"를 산출합니다.[17]

의 임의의 동형 사상은 다양체에 대한 휘트니 임베딩 정리와 신경망에 대한 보편 근사 정리를 결합하여 증명된 n+ 1 에서 작동하는 신경 ODE에 의해 근사화될 수 있습니다.[18]

을 정규화하려면 정규화 손실을 부과할 수 있습니다이 논문은 최적 운송 이론을 바탕으로 다음과 같은 정규화 손실을 제안했습니다.

여기서 λ λ > > 은(는) 하이퍼 매개 변수입니다.첫 번째 항은 흐름 필드를 시간에 따라 진동시킨 모델을 처벌하고, 두 번째 항은 공간에 걸쳐 흐름 필드를 진동시킨 모델을 처벌합니다.두 항은 함께 모형을 공간과 시간에 걸쳐 매끄러운("범프"가 아닌) 흐름으로 유도합니다.

다운사이드

흐름을 정규화하여 고차원 밀도를 추정하는 데 성공했음에도 불구하고 설계에는 여전히 몇 가지 단점이 있습니다.우선, 입력 데이터가 투사되는 잠재 공간은 저차원 공간이 아니므로 흐름 기반 모델은 기본적으로 데이터 압축을 허용하지 않으며 많은 계산이 필요합니다.그러나 이미지 압축은 여전히 수행할 수 있습니다.[19]

흐름 기반 모델은 분포를 벗어난 표본(즉, 훈련 세트와 동일한 분포에서 추출되지 않은 표본)의 가능성을 추정하는 데 실패한 것으로도 악명이 높습니다.[20]이러한 현상을 설명하기 위해 몇 가지 가설을 공식화하였는데, 그 중 전형적인 집합 가설,[21] 모델 교육 시 추정 문제 [22]또는 데이터 분포의 엔트로피로 인한 근본적인 문제가 있습니다.[23]

흐름을 정규화하는 가장 흥미로운 특성 중 하나는 학습된 편향 지도의 가역성입니다.이 속성은 이론적 가역성을 보장하는 모델(cf.: RealNVP, Glow) 설계의 제약에 의해 부여됩니다.변수 변화 정리의 적용 가능성, 지도의 자코비안 계산 및 모델의 샘플링을 보장하기 위해서는 역의 무결성이 중요합니다.그러나 실제로는 이러한 가역성이 침해되고 수치의 부정확성 때문에 역지도가 폭발합니다.[24]

적용들

플로우 기반 생성 모델은 다음과 같은 다양한 모델링 작업에 적용되었습니다.

  • 오디오 생성[25]
  • 이미지생성[5]
  • 분자그래프생성[26]
  • 포인트 클라우드 모델링[27]
  • 비디오 생성[28]
  • 이미지 압축[19] 손실
  • 이상 탐지[29]

참고문헌

  1. ^ Tabak, Esteban G.; Turner, Cristina V. (2012). "A family of nonparametric density estimation algorithms". Communications on Pure and Applied Mathematics. 66 (2): 145–164. doi:10.1002/cpa.21423. hdl:11336/8930. S2CID 17820269.
  2. ^ Papamakarios, George; Nalisnick, Eric; Jimenez Rezende, Danilo; Mohamed, Shakir; Bakshminarayanan, Balaji (2021). "Normalizing flows for probabilistic modeling and inference". Journal of Machine Learning Research. 22 (1): 2617–2680.
  3. ^ a b Dinh, Laurent; Krueger, David; Bengio, Yoshua (2014). "NICE: Non-linear Independent Components Estimation". arXiv:1410.8516 [cs.LG].
  4. ^ a b Dinh, Laurent; Sohl-Dickstein, Jascha; Bengio, Samy (2016). "Density estimation using Real NVP". arXiv:1605.08803 [cs.LG].
  5. ^ a b c Kingma, Diederik P.; Dhariwal, Prafulla (2018). "Glow: Generative Flow with Invertible 1x1 Convolutions". arXiv:1807.03039 [stat.ML].
  6. ^ Papamakarios, George; Nalisnick, Eric; Rezende, Danilo Jimenez; Shakir, Mohamed; Balaji, Lakshminarayanan (March 2021). "Normalizing Flows for Probabilistic Modeling and Inference". Journal of Machine Learning Research. 22 (57): 1–64. arXiv:1912.02762.
  7. ^ Kobyzev, Ivan; Prince, Simon J.D.; Brubaker, Marcus A. (November 2021). "Normalizing Flows: An Introduction and Review of Current Methods". IEEE Transactions on Pattern Analysis and Machine Intelligence. 43 (11): 3964–3979. arXiv:1908.09257. doi:10.1109/TPAMI.2020.2992934. ISSN 1939-3539. PMID 32396070. S2CID 208910764.
  8. ^ Danilo Jimenez Rezende; Mohamed, Shakir (2015). "Variational Inference with Normalizing Flows". arXiv:1505.05770 [stat.ML].
  9. ^ Papamakarios, George; Pavlakou, Theo; Murray, Iain (2017). "Masked Autoregressive Flow for Density Estimation". Advances in Neural Information Processing Systems. Curran Associates, Inc. 30. arXiv:1705.07057.
  10. ^ Kingma, Durk P; Salimans, Tim; Jozefowicz, Rafal; Chen, Xi; Sutskever, Ilya; Welling, Max (2016). "Improved Variational Inference with Inverse Autoregressive Flow". Advances in Neural Information Processing Systems. Curran Associates, Inc. 29. arXiv:1606.04934.
  11. ^ a b c Grathwohl, Will; Chen, Ricky T. Q.; Bettencourt, Jesse; Sutskever, Ilya; Duvenaud, David (2018). "FFJORD: Free-form Continuous Dynamics for Scalable Reversible Generative Models". arXiv:1810.01367 [cs.LG].
  12. ^ Lipman, Yaron; Chen, Ricky T. Q.; Ben-Hamu, Heli; Nickel, Maximilian; Le, Matt (2022-10-01). "Flow Matching for Generative Modeling". {{cite journal}}:저널 요구사항 인용 journal=(도움말)
  13. ^ Grathwohl, Will; Chen, Ricky T. Q.; Bettencourt, Jesse; Sutskever, Ilya; Duvenaud, David (2018-10-22). "FFJORD: Free-form Continuous Dynamics for Scalable Reversible Generative Models". arXiv:1810.01367 [cs.LG].
  14. ^ a b Finlay, Chris; Jacobsen, Joern-Henrik; Nurbekyan, Levon; Oberman, Adam (2020-11-21). "How to Train Your Neural ODE: the World of Jacobian and Kinetic Regularization". International Conference on Machine Learning. PMLR: 3154–3164. arXiv:2002.02798.
  15. ^ Hutchinson, M.F. (January 1989). "A Stochastic Estimator of the Trace of the Influence Matrix for Laplacian Smoothing Splines". Communications in Statistics - Simulation and Computation. 18 (3): 1059–1076. doi:10.1080/03610918908812806. ISSN 0361-0918.
  16. ^ Chen, Ricky T. Q.; Rubanova, Yulia; Bettencourt, Jesse; Duvenaud, David (2018). "Neural Ordinary Differential Equations". arXiv:1806.07366 [cs.LG].
  17. ^ Dupont, Emilien; Doucet, Arnaud; Teh, Yee Whye (2019). "Augmented Neural ODEs". Advances in Neural Information Processing Systems. Curran Associates, Inc. 32.
  18. ^ Zhang, Han; Gao, Xi; Unterman, Jacob; Arodz, Tom (2019-07-30). "Approximation Capabilities of Neural ODEs and Invertible Residual Networks". arXiv:1907.12998 [cs.LG].
  19. ^ a b Helminger, Leonhard; Djelouah, Abdelaziz; Gross, Markus; Schroers, Christopher (2020). "Lossy Image Compression with Normalizing Flows". arXiv:2008.10486 [cs.CV].
  20. ^ Nalisnick, Eric; Matsukawa, Teh; Zhao, Yee Whye; Song, Zhao (2018). "Do Deep Generative Models Know What They Don't Know?". arXiv:1810.09136v3 [stat.ML].
  21. ^ Nalisnick, Eric; Matsukawa, Teh; Zhao, Yee Whye; Song, Zhao (2019). "Detecting Out-of-Distribution Inputs to Deep Generative Models Using Typicality". arXiv:1906.02994 [stat.ML].
  22. ^ Zhang, Lily; Goldstein, Mark; Ranganath, Rajesh (2021). "Understanding Failures in Out-of-Distribution Detection with Deep Generative Models". Proceedings of Machine Learning Research. 139: 12427–12436. PMC 9295254. PMID 35860036.
  23. ^ Caterini, Anthony L.; Loaiza-Ganem, Gabriel (2022). "Entropic Issues in Likelihood-Based OOD Detection". 163: 21–26. arXiv:2109.10794. {{cite journal}}:저널 요구사항 인용 journal=(도움말)
  24. ^ Behrmann, Jens; Vicol, Paul; Wang, Kuan-Chieh; Grosse, Roger; Jacobsen, Jörn-Henrik (2020). "Understanding and Mitigating Exploding Inverses in Invertible Neural Networks". arXiv:2006.09347 [cs.LG].
  25. ^ Ping, Wei; Peng, Kainan; Gorur, Dilan; Lakshminarayanan, Balaji (2019). "WaveFlow: A Compact Flow-based Model for Raw Audio". arXiv:1912.01219 [cs.SD].
  26. ^ Shi, Chence; Xu, Minkai; Zhu, Zhaocheng; Zhang, Weinan; Zhang, Ming; Tang, Jian (2020). "GraphAF: A Flow-based Autoregressive Model for Molecular Graph Generation". arXiv:2001.09382 [cs.LG].
  27. ^ Yang, Guandao; Huang, Xun; Hao, Zekun; Liu, Ming-Yu; Belongie, Serge; Hariharan, Bharath (2019). "PointFlow: 3D Point Cloud Generation with Continuous Normalizing Flows". arXiv:1906.12320 [cs.CV].
  28. ^ Kumar, Manoj; Babaeizadeh, Mohammad; Erhan, Dumitru; Finn, Chelsea; Levine, Sergey; Dinh, Laurent; Kingma, Durk (2019). "VideoFlow: A Conditional Flow-Based Model for Stochastic Video Generation". arXiv:1903.01434 [cs.CV].
  29. ^ Rudolph, Marco; Wandt, Bastian; Rosenhahn, Bodo (2021). "Same Same But DifferNet: Semi-Supervised Defect Detection with Normalizing Flows". arXiv:2008.12577 [cs.CV].

외부 링크