[카카오AI리포트]Do you know 바카라 토토 사이트? 1/2
유재준 | 카이스트
최근 딥러닝 분야에서 가장 뜨겁게 연구되고 있는 주제인바카라 토토 사이트(generative adversarial network)을 소개하고 학습할 수 있는글을 연재하려고 한다. 바카라 토토 사이트은 이름 그대로 뉴럴 네트워크(neuralnetwork)를 이용한 생성 모델이다. 흔하게는 이미지를 생성하는것에서부터 음성, 문자에 이르기까지 다양한 분야에 적용되고 있다.2014년에 이안 굿펠로우(Ian Goodfellow)가 바카라 토토 사이트을 처음 선보였을때부터 이미 대박의 '낌새'가 보였지만, NIPS 2016 이후부터는 바카라 토토 사이트에대한 관심이 더욱 폭발적으로 늘어나고 있다. 원래도 핫한 기계학습분야에서도 바카라 토토 사이트에 대한 연구는 유독 빠르게 발전하고 있다. 일주일이멀다 하고 새로운 아이디어를 사용한 논문이 나오는 한편, 재미있는방향의 관련 어플리케이션들이 속속들이 나오면서 바카라 토토 사이트의 기세는 더해가고 있다. 페이스북의 얀 레쿤(Yann Lecun) 교수도 바카라 토토 사이트을 최근10~20년 간에 기계학습 분야에서 나온 아이디어 중 최고라는 찬사를보내는 만큼, 그 열기가 쉽게 식지는 않을 것 같다.
이번 호에서는 이렇게 사람들이 열광하는 바카라 토토 사이트이 무엇인지,어떤 원리로 그림을 생성하는지에 대해 먼저 소개하고자 한다. 그리고독자들이 바카라 토토 사이트의 개념과 그 밑에 깔려 있는 기본적인 수학적 배경을이해하게 하고, 추후 새로운 바카라 토토 사이트 연구를 봤을 때 관련 흐름을 따라갈 수있는 기초적인 지식을 제공하는 것을 목표로 한다.
[카카오 AI 리포트] Vol. 7 (2017년 9/10월 합본호 ) 는 다음 내용으로 구성되어 있습니다.
[1] A special edition : Kakao Mini - 카카오미니의 음성인식 기술
01. 이석영 : 세상을 바꿀 변화의 시작, 음성 인터페이스와 스마트 스피커
02. 김명재 : 카카오미니는 말하는 사람을 어떻게 인식할까?
[2] industry - AI 현장의 이야기
03. 성인재 : 카카오I의 추천 엔진의 진화, 뉴스 적용 사레를 중심으로
[3] learning - 최신 AI 연구 흐름
06.김형석,이지민,이경재: 최신 AI 논문 3선(選)
07. 안다비 : 최신 기계학습의 연구 방향을 마주하다, ICML 2017 참관기
08. 천영재 : 2013년과 2017년의 CVPR을 비교하다
[04] exercise - 슈퍼마리오 그리고 바카라 토토 사이트
09. 송호연 : 강화학습으로 풀어보는 슈퍼마리오 part.1
10. 유재준 : Do you know 바카라 토토 사이트? (1/2)
[05] information
[카카오 AI 리포트] Vol. 7_10. 다운받기
[카카오 AI 리포트] Vol. 7 전체글 다운받기
Generative Adversarial Networks
바카라 토토 사이트 이전에도 생성 모델(generative model)은 매우 다양하게있었는데 왜 하필 바카라 토토 사이트만 유독 이렇게 난리일까? "잘되니까."
[그림 1]은 구글에서 올해 3월에 발표한 BE바카라 토토 사이트 모델로생성한 이미지들이다.
즉, 이 사진들은 모두 실존하는 인물의 것이 아니란 것이다. 상당히그럴듯하지 않은가? 자세히 뜯어봐도 실제 사람의 사진인 것으로착각할 정도이다. 워낙 (이미지 생성이) 잘되다 보니 우리나라로치면 디시인사이드(dcinside.com)와 같은 레딧(Reddit)의 'MachineLearning' 게시판에서는 한때 [그림2]와 아래의 글이 게시되어세간의 눈길을 끌기도 했다.
"BE바카라 토토 사이트으로 학습시키던 중 16만8천 번째쯤 귀여운 그녀를보았습니다.
그리고... 다시는 보지 못했어요. :("
사실 바카라 토토 사이트이란 모델을 이렇게 잘 학습시키는 것은 쉬운 일이아니다. 그 이유에 대해서는 나중에 차차 설명하도록 하고, 바카라 토토 사이트의원리에 대해 먼저 소개하고자 한다.
바카라 토토 사이트의 개념
바카라 토토 사이트은이름만뜯어봐도큰줄기를알수있다:
・ Generative : CNN을 이용한 이미지 분류기(classifier)와 같이이미지의 종류를 구별하는 것이 아닌 이미지를 만들어 내는방법을 배우는 '모델'이라는 것을 알 수 바카라 토토 사이트.
・ Adversarial: 이 단어의 사전적 의미는 "대립하는, 적대하는"이다.대립하려면 상대가 있어야하니 바카라 토토 사이트은 크게 두 부분으로 나뉘어있다는 것을 직관적으로 알 수 있다.
・ Network : 뉴럴 네트워크을 사용해서 모델이 구성되어 있다.바카라 토토 사이트은 이미지를 만들어 내는 네트워크(generator)와 이렇게만들어진 이미지를 평가하는 네트워크(discriminator)가 있어서 서로대립(adversarial)하며 서로의 성능을 점차 개선할 수 있는 구조로만들어져 있다. 좀 더 직관적으로 이해하고 싶다면, generator를지폐위조범, discriminator를 경찰이라 생각해 보면 된다.
지폐위조범(generator)은 위조 지폐를 최대한 진짜와 같이 만들어 경찰을 속이기 위해 노력하고, 경찰(discriminator)은 이렇게 위조된 지폐를 진짜와 구별(classify) 하려고 노력한다. 이런 과정을 반복하면서 두 그룹이 각각 서로를 속이고 구별하는 능력이 발전하게 된다. 궁극적으로는 지폐위조범의 솜씨가 매우 좋아져서 경찰이 더 이상진짜 지폐와 위조 지폐를 구별할 수 없을 정도(구별할 확률 p=0.5)가 된다는 것.
앞선 예시를 수학적 용어를 섞어 표현하면 다음과 같다.
Generative 모델 G는 우리가 갖고 있는 실제 이미지 x의 분포(datadistribution)를 알아내려고 노력한다. 만약 G가 정확히 데이터분포를 모사할 수 바카라 토토 사이트면, 이 분포로부터 뽑은 (혹은 생성한) 샘플이미지는 진짜 이미지와 전혀 구별할 수 없다. 즉, G는 z ~ pz일 때가짜 이미지 샘플G(z)의 분포pg를정의하는 모델로 생각될 수 바카라 토토 사이트.여기서 z는 G라는 샘플링 모델에 들어갈 입력(input) 값이다. 보통z의 분포 pz는 가우시안(Gaussian) 분포를 사용하는데 이 부분은차차 설명하겠다.
한편, discriminator모델 D는 현재 자기가 보고 있는 샘플이진짜 이미지 x인지 혹은 G로부터 만들어진 가짜 이미지 G(z)인지구별하여 샘플이 진짜일 확률을 계산한다. 앞서 예를 든 것처럼 pg= pdata가 된다면 각각의 분포로부터 뽑힌 샘플만을 가지고 어느쪽에서 왔는지 구별할 방법이 없기 때문에 D가 할 수 있는 최선은'동전 던지기'이다. 즉, 임의의 샘플 x에 대해서는 [바카라 토토 사이트 1]처럼나타낼 수 있다.
최소최대의 문제 (minimax problem)
우리의 목적은 generator는 점점 더 실제 이미지와 닮은 샘플을생성하게 하고 discriminator는 샘플을 점점 더 잘 구별하는모델을 만드는 것이다. 따라서 [그림 3]을 보면 알 수 있듯이, D의입장에서는 data로부터 뽑은 샘플 x는 D(x) = 1이 되고, G에 임의의input z 넣고 만들어진 샘플에 대해서는 D(G(z)) = 0이 되도록 노력한다. 즉, D는 실수할 확률을 낮추기(minimize) 위해 노력하고반대로 G는 D가 실수할 확률을 높이기(maximize) 위해 노력하는데,따라서 둘을 같이 놓고 보면 "minimax two-player game orminimax problem"이라 할 수 바카라 토토 사이트.
이를 바카라 토토 사이트으로 정리하면 우리가 하고자 하는 것은 다음과같은 가치 함수(value function) V(G, D)에 대한 최소최대 문제(minimax problem)를 푸는 것과 같아진다.
무엇이든지 간에 이런 바카라 토토 사이트이 있으면, 극단적인 예시를 넣어이해하는 것이 빠르다. 먼저 G 입장에서 가장 이상적인 상황을생각해 보자. G가 진짜 이미지와 완벽히 닮은 샘플을 만들고, G(z)가만들어 낸 이미지가 진짜일 확률이 1이라고 D가 잘못된 결론을내린다면,D(G(z))=1이므로두번째항의값이 -∞가된다.이때G의 입장에서 V가 "최솟값"이라는 것은 자명하다.
반면에 D가 진짜 이미지와 가짜 이미지를 완벽하게잘 구별하는 경우, 현재 보고 있는 샘플 x가 실제로 datadistribution으로부터 온 녀석일 때 D(x) =1, 샘플이 G(z)가 만들어낸 녀석이라면 D(G(z))= 0이 되므로 위 바카라 토토 사이트 첫 번째 항과 두 번째항이 모두 0으로 사라지죠. 이 때 D의 입장에서 V의 "최댓값"을얻을 수 있다는 것 역시 자명하다.
이제 드디어 우리가 풀 문제를 바카라 토토 사이트으로 명확히 정의하였다.그런데 보시다시피 이 문제는 변수 G와 D, 두 개가 서로 엮여 있다.이런 관계 덕분에 서로에게 피드백을 줘서 성능이 각각 좋아지기도하지만, 한편으로 한쪽 모델에 대해 문제를 풀면 다른 한쪽은 손해를보기때문에둘모두를만족시키는평형점을찾기가쉽지않다.
따라서 실제로 문제를 풀기 위해서는 한쪽을 상수로고정하고 다른 변수에 대해 문제를 푸는 방식의 접근을 할 수밖에없다. 예를 들자면, 먼저 현재 생성 모델을 G'으로 고정하고, D와관련해서는 다음 문제를 먼저 풀어서 D'을 구한다. [바카라 토토 사이트 3]이렇게 얻은 D'를 넣고 G에 대해서는 다음 문제를 번갈아 푸는 전략을 쉽게 떠올려 볼 수 있다.
이론적 근거(theoretical results)
이제 방법도 알았고 문제를 열심히 잘 풀기만 하면 될 것 같지만, 그러기전에아직해결해야할것들이몇가지남아바카라 토토 사이트.먼저우리가 정의한 이 문제가 실제로 정답이 있는지(existence), 만약해가 존재한다면 유일한지(uniqueness) 확인할 필요가 바카라 토토 사이트. 그리고제안한 방법이 실제로 원하는 해를 찾을 수 있는지(convergence)확인해야 한다. 애초에 답이 없는 문제를 풀거나, 답이 있더라도여러 가지이거나, 풀 방법을 제안했는데 그 방법이 해로 수렴한다는보장이 없으면 여러 모로 곤란해진다.
따라서 이제부터는 이 부분들을 하나씩 체크해 보겠다. 이장에서중요한내용은크게두가지로나눌수바카라 토토 사이트.
1) 최소최대 문제(minimax problem)가 pg = pdata에서 전역해 (globaloptimum)로 유일해(unique solution)를 갖는다는 것과
2) 알고리듬이 global optimum로 수렴한다는 것이다.
일단, 첫 번째 주제인 global optimality에 관한 얘기를 하기위해서는먼저가져가야할도구가하나바카라 토토 사이트.임의의G에대하여,최적의 discriminator D는 다음과 같다.
위 바카라 토토 사이트을 증명하는 것은 크게 어렵지 않다. 먼저 V(G, D)를 다음과같이 풀어 쓸 수 있다.
마지막식의형태를참고하면,D*을구하는문제는임의의[바카라 토토 사이트7]에 대하여.
[바카라 토토 사이트 8] 함수에서 최댓값을 구하는 문제로 단순화할 수 있다.
위 함수는 [바카라 토토 사이트 9]에서 최댓값을 갖기 때문에 이것으로 증명이완료된다.
결국, 위 결과를 바탕으로 최소최대의 문제(minimax problem)을 다시 써 보면 이제 변수가 G 하나인 C(G)라는 문제로 나타낼 수 바카라 토토 사이트.
전역적 최적해(global optimum) 증명
이제 이 도구를 사용해서 주요 정리(main theorem)을 증명해보고자 한다. C(G)의 global minimum은 오직 pg = pdata으로유일하게 존재하며, 이때 C(G)의 값은 -log(4)이다.증명은 양방향으로 진행된다. 먼저 가장 이상적으로 pg = pdata 일때C(G)가어떤값을갖는지확인하려한다.앞서구한[바카라 토토 사이트 5]에
pg = pdata를 입력하면 [바카라 토토 사이트 11]이 나오고
이를 [바카라 토토 사이트 2]에 대입하면 다음과 같이 나타낼 수 있다.
한편, C(G) 바카라 토토 사이트을 바꿔 표현해서 -log(4)가C(G)가 가질 수 있는유일한 최적값임을 알기 위해서는 다음과 같이 C(G)를 표현하는것이 가장 중요하다.
첫 번째 등호에서 두 번째 등호로 넘어가기 위해서는 쿨백-라이블러발산(Kullback-Leible divergence)에 대한 정의를 알아야 한다.쿨백-라이블러 발산은 P라는 확률 분포와 Q라는 확률 분포가 있을때 두 분포가 얼마나 다른지를 측정하는 값이다.
P와 Q의 분포가 일치하면 log 안의 값이 1이 되어 divergence가0이 되는 것을 알 수 있다. 따라서 첫 번째 바카라 토토 사이트의 C(G)+log(4)를풀어서, [바카라 토토 사이트 15]와 같이 나타낼 수 있다.
이와 같이 나타낸 후 각 기댓값(expectation) 안으로 log(2)를 넣어주면 두 번째 등호의 바카라 토토 사이트 형태로 나오게 된다. 두 번째에서 세번째 등호도 JSD(Jensen–Shannon divergence)의 정의를 알면자연스럽게 따라온다.
여기서 [바카라 토토 사이트 17]이므로 그대로 원 바카라 토토 사이트에 비교 대조해 보면, 쉽게유도할 수 있다. 결국 JSD는 분포 간의 차이를 나타내는 값으로항상양수이며,비교하는두분포가일치할때만값이0이기때문에C*=-log(4)가 C(G)의 global minimum이며 그 유일한 해가 pg = pdata임을 알 수 있다.
앞서 정의한 minimax problem을 잘 풀기만 하면(즉, 전역적최적해를 찾으면), generator가 만드는 확률분포(probabilitydistribution) pg가 data distribution pdata와 정확히 일치하도록 할수 바카라 토토 사이트. generator가 뽑은 샘플을 discriminator가 실제와 구별할수 없게 된다는 것이다.
수렴성(convergence) 증명
남은 것은 앞서 제시한 것과 같이 G와 D에 대해 번갈아 가며 문제를풀었을때,pg= pdata를얻을수있는지확인하는것이다.여기서증명을 용이하게 하기 위해 몇 가지 조건에 대한 상정(想定)이필요하다. 먼저 G와 D라는 모델이 각각 우리가 원하는 데이터의확률 분포를 표현하거나 구별할 수 있는 모델을 학습할 수 있을만큼 용량(capacity)이 충분하고, discriminator D가 주어진 G에대해 최적값인 D*으로 수렴한다고 가정합니다.위 가정이 충족되었을 때, [바카라 토토 사이트 18]에 대하여 G의 최적값을 구하면pg가 pdata로 수렴한다.
먼저 D가 고정일 때, V(G,D)=U(pg,D)라 표현하려 한다. 증명의방향은 먼저 U(pg, D)가 pg에 대해서 볼록(convex) 함수임을확인하는 것이다. U(pg, D)의 유일한 해가 pg = pdata라는 것은 앞선정리에서 확인하였기 때문에 이로써 증명이 끝나게 된다. 정의에의해 [바카라 토토 사이트 19]가 도출된다.
pg에 대해 미분을 하면 log(1-D(x))만 남게 되고 이는 pg에 대해서상수이기 때문에 U(pg, D)가 선형 함수임을 알 수 있다. 그러므로[바카라 토토 사이트 20]이 pg에 대해 볼록 함수*로 유일한 전역해(globaloptimum)를 갖는다.
따라서 pg에 대한 적은 수의 gradient decent 계산만으로도*1[바카라 토토 사이트21]이 도출될 수 있다.
앞서 제안한 전략이 전역적 최적해으로 해가 수렴한다는 것까지도증명했다. 단! 지금까지 전개한 논리들에는 몇 가지 꼭 알고넘어가야 할 내용들이 바카라 토토 사이트.
첫째, 지금까지 논리를 전개하면서 G와 D를 만들 모델에대해 어떤 제약을 두지 않았다. 즉, 여기서 G와 D는 무한대의 표현용량을 가진(임의의 어떤 함수라도 표현할 수 있는) 모델로서앞서 진행한 증명들은 모두 확률 밀도 함수(probability densityfunction) 공간에서 전개된 것이다. 그러나 실제로 모델을 만들때 위와 같은 non-parametric 모델을 만드는 것은 현실적으로어려움이 많다.
그런데 뉴럴 네트워크은 충분한 용량만 주어진다면 보편근사기(universal function approximator)로서 역할을 잘해 주며,미분이 가능한 함수들로 표현되므로 역전파(backpropagation)라는매우 직관적이고 효율적인 학습이 가능하다. 또한 뉴럴 네트워크은확률분포 (probability distribution)를 학습하기 위해 마르코프 사슬몬테 카를로(Markov Chain Monte Carlo, MCMC)와 같은 다소소모적인 방법을 사용하지 않아도 되기 때문에 상대적으로 빠르다.이러한 여러 장점들 때문에 실용적인 측면에서 바카라 토토 사이트에서는 뉴럴네트워크을 활용한다.
각각의 G와 D를 단순한 뉴럴 네트워크인 다중충인식망(multilayer perceptron, MLP)으로 모델을 만들면, G는입력값(input) z에 대해 출력값(output)으로 이미지 샘플을 뽑아주는 G(z; θg)로 표현할 수 바카라 토토 사이트. 한편, D 역시 D(x; θg)로 나타내며output으로 샘플 x가 pdata로부터 뽑혔을 확률값을 내보낸다.여기서 θg와 θg는 각 MLP의 매개변수(parameter)이다.
그러나 이렇게 함수 공간을 일반적인 공간에서 뉴럴네트워크이 표현할 수 있는 공간으로 바꾸게 되면, 바카라 토토 사이트이 표현할 수있는 pg가 G(z;θg) 함수로 나타낼 수 있는 종류로 제한이 된다. 뿐만아니라더이상pg에대해직접최적화문제를푸는것이아닌θg에대해 최적화 문제를 푸는 것으로 모든 구조가 바뀌기 때문에 앞서증명들에서 사용한 가정들이 모두 깨지게 된다. 즉, MLP를 모델로사용하면 G가 모수 공간(parameter space)에서 다중임계점(multiplecritical point)을 가지기 때문에 완전히 증명한 바와 합치하지는않는다.다만실제로학습을해보면성능이잘나오는것으로미루어 봤을 때, MLP가 이론적 보장이 좀 부족할지라도 실용적으로쓰기에는 합리적인 모델이라고 할 수 바카라 토토 사이트.
둘째, 수렴성 증명에 들어간 가정들은 '생각보다' 매우 강력한제약이다. 실제로는 계산량이나 학습 시간에 한계가 있기 때문에D*를 얻기 위해 D가 수렴할 때까지 학습시키는 것은 현실적으로어렵다. 게다가 모델의 용량이 pdata를 학습하기에 충분한지에 대한문제 역시 다루기 어렵다. 최대한 이론적 상황과 비슷하게 맞춰
주기 위하여 D에 대한 학습을 G에 비해 보다 많이 수행해 주는 등기술적인 노하우를 사용하기는 하지만 근본적인 해결책이라 할 수는없다. 따라서 어떤 면에서는 유명무실한 증명이라 할 수도 바카라 토토 사이트.
셋째, 심지어 구현 시 사용하는 가치 함수(value function)의형태가 이론과 다르다. 실제로는 minG log(1-D(G(z))) 대신 maxGlog(D(G(z)))로 모델을 바꾸어 학습시킨다. 학습 초기에는 G가 매우이상한 이미지를 생성하기 때문에 D가 너무도 쉽게 이를 진짜와구별하고 log(1-D(G(z)))의 기울기가 아주 작아서 학습이 엄청느리다. 문제를 G = maxG log(D(G(z)))로 바꾸면, 위와 같은 문제가생기지 않기 때문에 쉬운 해결 방법이다. 하지만 문제를 다른 형태로바꿨기 때문에 이 역시도 아쉬운 점이라 할 수 바카라 토토 사이트.
이로써 바카라 토토 사이트에 대해 원 논문에서 나온 이론적 증명까지 모두살펴보았다. 다음 호에서는 이런 배경지식을 바탕으로 기존 생성모델과 바카라 토토 사이트의 차이점에 대해 살펴보고 바카라 토토 사이트의 특징과 장단점에대해 본격적으로 소개하겠다.
글| 유재준 jaejun2004@gmail.com
카이스트 바이오및뇌공학과 학부를 졸업하고 동 대학원 박사 과정을 밟고 있는 공돌이.바이오영상신호처리 연구실에서 전통적인 신호처리 이론을 이용한 영상 복원이나 대수적위상수학을 이용한 뇌 네트워크 분석을 연구하였으나, 최근에는 기계 학습에 빠져서 이를이용한 의료 영상 복원에 적용해보고 있다. 처음 가본 NIPS 2016 학회에서 바카라 토토 사이트을 접하고매우 흥분하여 열심히 가지고 놀아보고 있지만 사실 당장 졸업에 필요한 연구 주제와는 전혀관계가 없다는 것이 함정. 딥러닝은 이제 갓 1년차 공부 중인 초짜 대학원생이며, 혼자 공부하던것을 블로그에 정리하던 것이 취미였는데 많은 분들이 좋아해 주셔서 매우 신이 나있다. 최근졸업이 다가오면서 외부활동이 점차 줄어들고 있지만, 앞으로 더 많은 분들과 교류하고 배워 이분야에서 내가 아는 것을 꾸준히 나눌 수 있는 사람이 되는 것이 꿈이다.
참고문헌
*1참고 | pg에 대해 볼록함수이기 때문에 이 함수의 최소값을 구하는 것을 gradient descent로 iterative하게 찾으면 적은수의 업데이트 만에 최소값 pg를 찾게 된다.