본문 바로가기

AC-GAN8

AC-GAN Introduction & Background이전에 설명한 CGAN에서 C를 충분하게 활용하지 못한다는 문제가 있었다. 즉, 조건부 생성이 제대로된 건지 알 수 없다. 따라서, ACGAN에서는 이러한 문제를 해결하고자 Auxiliary Classifier를 이용해서 C에 해당하는 이미지가 제대로 생성된건지 확인하는 과정을 추가하였다.   1. 구조적 요소 추가: Auxiliary Classifier: 기존 GAN의 구조에 Auxiliary Classifier를 추가해서 특정 클래스에 맞는 이미지를 생성할 수 있도록 한다. 2. 특화된 손실 함수 사용: Ls & Lc: 기존 GAN과 다른 Loss Function을 이용해서 더 정확하고 품질 높은 이미지를 생성한다. 3. 변동성 평가지표 도입: Incept.. 2024. 11. 22.
[기본 용어 설명] Latent Space(잠재 공간)와 latent vector(잠재 벡터) 잠재 공간: 잠재공간이란 데이터를 표현할 때 주요 특징을 모아놓은 추상적인 공간으로 이해할 수 있다. 즉, 복잡한 데이터를 낮은 차원에서 표현하여 주요 특징을 간결하게 담고 있는 공간이다. 하나의 데이터만 한정해서가 아니라 여러 데이터의 특징들이 잠재 공간에 들어갈 수 있다. 쉽게 말해서, 얼굴 이미지 데이터를 학습한 잠재 공간이 있다고 가정하면 코, 눈, 입의 위치나 크기 같은 중요한 특징들이 요약되어 표현된다.  잠재 벡터: 잠재공간의 하나의 지점(벡터)이다. 즉, 하나의 이미지의 모든 특징을 압축한 것이 바로 잠재 벡터이다.      https://www.youtube.com/watch?app=desktop&v=gJ86ixUx6MU 2024. 11. 16.
[기본 용어 정리] 밀도추정(Density Estimation) 밀도 추정이란?우선 밀도가 뭔지부터 알아보자. 밀도란 물리, 수학에서 말하는 밀도와는 좀 다르다. 확률/통계에서 말하는 밀도란 확률 밀도를 의미한다. 즉, 분포를 의미한다. 이제 밀도 추정에 대해서 알아보자. 밀도 추정(Density Estimation)은 여러 데이터 x에서 확률 밀도 함수(분포) P(x)를 예측하는 것이 밀도 추정이다.  [밀도 추정 방법] 모수적 밀도 추정(Parametric Density Estimation)미리 확률 밀도 함수(분포)에 대한 모델을 정해놓고 데이터들로부터 확률 밀도 함수(분포)의 파라미터(θ)를 추정하는 방식이다. 모수적 밀도 추정의 대표적인 예로는 MLE(최대 우도 추정)가 있다. 다만, 이렇게 확률 밀도 함수(분포)가 정해져있는 경우는 현실에서 많지 않기 때문.. 2024. 11. 16.
[기본 용어 설명] Generative approach vs Discriminative approach Generative approach: 주어진 데이터가 특정 결과에 속할 가능성을 구할 뿐만 아니라, 새로운 데이터를 생성할 수도 있는 접근 방식이다. 최종적으로 P(x | y)를 구하여 클래스 y에 따른 데이터 x의 분포를 예측하는 것이다. 또한, 클래스 y가 주어지지 않는 P(x) 즉, x의 분포를 예측하는 것은 VAE, GAN이 있다.  위의 Generative 이미지에 대해서 설명하자면, 빨간색 y와 파란색 y는 각각 다른 y인데, 이 각각의 해당하는 클래스 y에 따른 데이터 분포 x를 예측한다라는 의미이다.  장점데이터 생성 가능: 학습된 분포를 바탕으로 새로운 데이터를 생성할 수 있어, 비지도 학습이나 데이터 증강에 유용합니다.데이터 분포에 대한 심층적 이해: 입력 데이터와 결과 간의 전체 분포.. 2024. 11. 16.
[기본 용어 설명] MLE(Maximum Likelihood Estimation) - 최대 우도 추정 사전 확률 P(θ | D)에서 우도는 P(D | θ)이다. 즉, 우도란 매개변수가 특정한 값일 때 데이터 D가 나올 확률을 의미한다. 최대 우도 추정이라는 것은 결국 데이터 D가 많이 관찰되는 매개변수 θ를 찾는 것이다.  즉, 우리가 가진 데이터를 가장 잘 설명할 수 있는 매개변수 θ(분포를 결정하는 값)를 찾는 방법이다.  MLE를 구하기 위해서는 로그 우도 함수를 사용해야한다.   (1) --- 모든 x가 동시에 발생했을 때의 모든 우도를 구하는 것이기 때문에 결합 확률을 이용해 모든 우도를 곱한다. (2), (3) --- 연산을 좀더 간단하게 말들기 위해서 로그를 사용해서 로그의 기본 성질인 곱을 합으로 바꿀 수 있는 특징을 사용했다.  (4) --- 시그마로 모든 합을 표현 (오른쪽 수식) --.. 2024. 11. 16.
[기본 용어 설명] 베이즈 정리를 통한 사전 확률(Prior)과 사후 확률(Posterior), 우도(Likelihood) 우선 베이즈 정리를 알기 전 결합 확률(joint prbability)와 조건부 확률(condition probability)에 대해서 알아야한다. 결합 확률 - P(x, y)결합 확률이란 x사건과 y사건이 동시에 일어날 확률을 의미한다.  조건부 확률 - P(x | y)조건부 확률이란 y사건이 일어난 후 x사건이 일어날 확률을 의미한다.  결합 확률과 조건부 확률의 관계 - P(x, y) = P(x| y)P(y)결합 확률은 조건부 확률과 사건 x가 일어날 확률을 곱한 식으로 나타낼 수 있다.    베이즈 정리 이러한 관계를 이용해서  베이즈 정리를 정의할 수 있다. 일반적으로 P(x, y)와 P(y, x)의 확률이 같기때문에 아래의 식이 성립된다.  위 식을 P(y|x)에 대해서 정리를 하면 아래와 같.. 2024. 11. 15.
[이전 논문] CGAN CGAN이란? CGAN(Conditional GAN)은 생성 모델 G와 감별 모델 D의 입력에 조건 C를 추가하였다. C는 클래스 레이블, 속성 정보 등 데이터 생성에 필요한 추가 정보로, 생성 모델 G는 노이즈 z와 조건 C를 함께 입력받아 C에 맞는 데이터를 생성한다. 감별 모델 D는 입력 데이터가 진짜인지 가짜인지 판단한다이렇게 CGAN은 조건에 따라 데이터를 생성하도록 설정함으로써 GAN의 출력을 제어할 수 있게 된다." 💡C를 통해서 어떻게 조건부 생성을 할 수 있게 되는 것인가? 위 이미지로 설명을 해보겠다. 우선 C라는 조건은 노이즈 벡터를 샘플링할 때와 이미지 셋에서 샘플링할 때 주어진다. z는 C라는 정보를 토대로 샘플링을 하겠지만 원할하게 하지 못한다. 하지만 이미지 셋에서 샘.. 2024. 11. 12.
[이전 논문] GAN GAN의 구조 간단하게 설명하자면, Generator는 랜덤 노이즈 z를 입력 받아서 이미지를 생성하고, Deiscriminater는 가짜 이미지(G가 생성한 이미지)와 진짜 이미지를 랜덤으로 입력 받아서 진짜인지 가짜인지 구분한다. 진짜 이미지라면 1에 가까운 값을 가짜 이미지라면 0에 가까운 값을 출력한다. 여기서 헷갈리면 안되는 점은 X는 이미지 한개가 아니라 여러 이미지가 있는 이미지 데이터 셋이다. 따라서, 생성자는 실제 이미지 하나에 대해 특징을 학습하는 것이 아니라 이미지 데이터 셋 전체의 이미지들의 특징을 파악한다.  1. 초기 생성 과정이미지에서 보이듯이 상단의 노이즈 벡터가 생성기(G)의 입력으로 들어갑니다생성기는 이 랜덤 노이즈를 기반으로 초기 이미지를 생성합니다2. 학습 과정이미지의.. 2024. 11. 12.