안다비 | 카카오브레인
호주 시드니에 있는 달링하버(Darling Harbour)는 정말 아름다운항구다. 올 8월에 운 좋게도 여기를 다시 오게 되었다. 이번엔 놀러 온 게아니고 말하자면 일하러.......
이렇게 멋진 곳에서 새로운 연구 접하며 굳은(?) 뇌를말랑말랑하게 자극하고, 바다를 보며 혼자 고심도 해보는 시간을 가질수 있어 행복했다. 세계에서 모여드는 대단한 연구자들을 한 자리에서만날 수 있음도 물론이지만, 국제기계학습학술대회(InternationalConference on Machine Learning, ICML)는 올해 34회를 맞은,세계에서 가장 명성 있는 머신러닝 학회 중 하나이고 다양한 세부분야를 다루므로 연구의 시야를 넓히기에 제격이었다.
특히 'Lifelong learning'*1 이나, 'Interpretability'*2 등은눈여겨볼 만했다. 최근 몇 년간 딥러닝이 머신러닝 주요 방법론 측면에서 가장 높은 지위에 올랐지만, 여전히 확률모델 기반의 방법론과 강화학습도 활발히 연구되고 있다. 더 중요한 사실은 연구 방법론들이 따로 발전하는 게 아니라 서로 경계를 넘나들며 조합되고 있다는 것이다. 이번 학회에서 확률모델과 딥뉴럴 네트워크(deep neural network, DNN)을 조합한 LDA(latent dirichlet allocation) 모델도 보았고, 딥뉴럴 네트워크에 강화학습을 적용하여 성능을 높인 사례도 보았다.
응용분야 별로 열린 워크숍에서는 자율주행 분야의 인기가 많았는데, 오전에 학회장에 들어가려고 했더니 내부 공간에 사람이 꽉 차서 출입문 앞에서 들어가지 못하는 일까지 겪어야 했다. (결국 오후에는 들어갔지만.) 뮤직 디스커버리 워크숍에도 참여했는데, 원하는 아티스트 스타일로 기타 연주 생성하기, 음악 스트리밍 서비스를 하는글로벌 기업인 스포티파이(Sportify)의 음악 추천 방법 등 흥미로운 주제들이 많았다. 발표된 연구들 중 절반 정도는 전통적인 머신러닝방법을 활용하였는데, 딥뉴럴 네트워크을 활용하여 조금 더 확장해 볼만한 여지가 보였다.
[카카오 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 - 슈퍼마리오 그리고 GAN
09. 송호연 : 강화학습으로 풀어보는 슈퍼마리오 part.1
10. 유재준 : Do you know GAN? (1/2)
[05] information
[카카오 AI 리포트] Vol. 7_07. 다운받기
[카카오 AI 리포트] Vol. 7 전체글 다운받기
RNN 관련 두 연구 소개
최근 언어 발화(speech)나 음악(music), 자연어 처리(natural language processing, NLP)에 관심을 가지게 되면서 시퀀스 형태의데이터를 다뤄야 할 일이 많아졌다. 따라서 이에 적합한 모델인 순환신경망(recurrent neural networks, RNNs)에 많은 관심을 갖고있었고, 여러 날에 걸쳐서 열린 4개의 RNN 세션에 모두 참여했다. 앞 두 세션에서는 RNN이라는 큰 틀에서, 풀고자 하는 문제에최적화된 변형 모델을 제시하는 연구들이 주를 이루었다. 나머지 두세션에서는 RNN을 현실적인 문제에 응용한 연구들로 구성되었는데음악 및 동영상을 다루는 영역에서 RNN을 활용한 연구들이 많이 소개되었다.
앞의 두 세션에서 두 가지 연구가 기억에 남아 하나씩 구체적으로 얘기해 보고자 한다. 바로 RHNs(recurrent highway networks)과 시퀀스 튜터(sequence tutor)인데, 두 연구 모두 여러 도메인에서 범용적으로 적용해 볼 수 있는 모델 혹은 방법론을 제시해 주기 때문에 도움이 될 것 같다.
Recurrent Highway Networks
RHNs(recurrent highway networks)를 이해하려면 먼저 Highway Networks(ICML, 2015*3)를 알고 있어야 한다. highway는 '고속도로' 라는 뜻을 가지고 있다. 간단히 말해 highway networks는 어떤 레이어를 통과할 때 해당 레이어에서 수행되어야 하는 선형 연산과 활성화(activation) 같은 연산을 거치지 않고빠르게 지나만 가는 우회로도 제공하자는 것이다. 이렇게 함으로써 얻을 수 있는 효과는 '빠른' 학습이다.
보통은 레이어가 많아질수록 앞쪽 레이어에서는그라디언트(gradient) 소실 문제로 인해 학습이 매우 느리거나되지 않는 경우가 많은데, highway networks에서는 레이어를 연산 없이 통과하므로 레이어를 적게 사용하는 것처럼 동작하게 해준다. 레이어를 얼마만큼 거쳐 갈 것인지, 혹은 얼마나 연산없이 그냥 지나칠 것인지를 학습하게 되는데 각각의 비중을 조정하기위해 변형 게이트(transform gate)와 캐리 게이트(carry gate) 같은 2개의 게이트가 사용된다.
Highway Networks가 우리에게 주는 의의는 두 가지다. 하나는, 레이어가 아무리 많아져도 학습이 느려지지 않게 하는모델을 만들 수 있다는 것이다. 다른 하나는, 모델의 하이퍼파라미터중 하나인 레이어의 개수를 데이터의 복잡도에 관계없이 크게 잡아도 된다는 것이다. 데이터로부터 배우는 데 필요한 학습은 앞쪽 레이어에서부터 주로 일어나고 뒤쪽 나머지 레이어들에서는 그냥 highway를 통과하는 형태로 스스로 학습될 것이기 때문이다.
RHNs는 DT-RNN(deep transition RNN) 은닉 상태(hiddenstate)의 전이에 highway network를 적용하여 학습 속도를 높인 모델이다. DT-RNN는 은닉 상태의 전이가 한 타임스텝에서도 여러 번 일어나는 RNN이다*4. 이 연구에서 밝힌 사실은, 같은 수의 파라미터를 가지는 기존의 DT-RNN에 비해 RHN에서 학습 속도가 빨라졌으며 특히 은닉 상태 전이 부분의 여러 highway block 중 첫번째 블록에서 가장 은닉 상태의 변화가 많고 나머지 블록들에서는조금씩 정제만 하는 경향이 있었다는 것이다. 데이터의 복잡성이 크지 않을 때는 일반 (stacked) RNN처럼 매 타임 스텝마다 한번씩만 전이해도 은닉 상태의 변화를 담아내는 데에 큰 무리는 없다는 의미로도 이해할 수 있다. RHN은 시퀀스 형태의 데이터를 다루는 문제에서 stacked RNN을 넘어서 적용해 볼 여지가 있는 모델이라고 생각한다.
Sequence Tutor
Sequence Tutor는 구글 마젠타(Magenta)팀에서 주축이 되어 진행한 연구이다. 연구 내용을 한마디로 요약하자면, 작곡과 같은 시퀀스 생성(sequence generation) 문제에서 모델을 RNN으로 학습시킨 뒤 부족한 부분을 강화학습을 통해 정제하자는 것이다.
여기서 말하는 부족한 부분이란, 길이가 상당히 긴 시퀀스를 학습시켰을 때 전체적인 일관성이 깨지는 문제이다. 보통 노래는 처음부터 끝까지 전체적인 멜로디의 규칙성이나 스타일이 유지되어야 하는데, 이런 일관성을 유지하게끔 RNN을 학습시키는 것은 쉽지 않다. 다시 말해, 듣기에 별로 감동스럽지 않은 멜로디를 만들어 낸다. 이는 Character RNN이 얼핏 보기에 그럴듯한 문장을생성하지만, 실제 사람이 보기에 맥락적으로 '말이 되는' 문장을 생성하지는 못하는 것과 같다.
Sequence Tutor에서는 말이 안 되는 노래를 말이 되게끔 하는 데에 강화학습이 들어간다. 방법론은 다음과 같다. 우선 LSTM-RNN으로 앞서 말한 '말이 안 되게' 작곡하는 모델을만든다(Note RNN). 그런 뒤 이제 이 작곡 문제를 강화학습이라고 보고 현재까지의 작곡된 것은 환경(environment), 다음 멜로디를 행위(action)이라고 본다. 그러면 다음 행위를 추측하기 위한 정책 네트워크(policy network)를 구성해야 할 것이고, 이를 위해 가치함수(value function)도 정의해야 할 것이다.
정책 네트워크에서는 DQN(Deep Q-Networks)을사용하는데 Note RNN에서 학습된 것을 초기 모델로 사용한다.여기서 핵심이 되는 부분은 가치 함수인데, 여기에 말이 안 되는노래를 말이 되게끔 바꾸어 주는 음악이론 규칙이 들어간다. 예를 들면, 노래가 C장조라면 그 외 다른 음은 배제한다, 같은 음을 4번 이상 만들지 않는다 등 정의된 규칙에 맞는 음에 높은보상(reward)을, 그렇지 않은 음에는 낮은 보상을 준다. 한편 정의된 규칙만을 따르게 하면 창의적이지 못한 경직된 멜로디만 생성될 것이므로 어느 정도의 창의성도 필요한데, 기존에 학습된Note RNN으로부터의 복제 모델인 Reward RNN으로부터끌어온다. 즉, 기존 음악에서는 어떤 음을 주로 사용했는지 힌트를얻어 오는 것이다. 결과적으로 가치 함수는 Reward RNN에서의 보상과 음악이론 규칙에서의 보상을 더한 값으로 정의한다.
RNN에 강화학습을 접목한 이 방법론은 마법처럼 말이 되는노래를 만들어 낸다. 사용한 데이터가 무엇인지, 음악 이론 규칙을 어떻게 정의했는지에 따라 다른 노래를 만들어 내겠지만 어쨌든 좀 더 그럴싸한 창작이 가능하게 된 것이다. 여기서는 주로 음악을 예로 설명했지만 시퀀스 생성이 필요한 다른 도메인에서도 시도해볼 만한 방법론이라고 생각한다.
인공지능이 바꾼 연구 생태계
얘기가 너무 연구 내용으로 빠진 것 같으니 다시 학회 분위기로돌아가 보자. 최근 이 분야의 IT 업계의 높은 관심에 걸맞게 딥마인드, 구글, 페이스북, 바이두 등 글로벌 기업들의 연구 성과가 특히 눈에 띄었다. 체감상 절반 이상은 기업에서 이루어진 연구로 보였다. 장기간의 투자로 결과들도 굉장히 훌륭해서 그저 부러울 따름이었다. 딥뉴럴 네트워크은 수 년 전까지만 해도 캐나다의 소수의 연구자들에 의해 소소하지만 꾸준히 발전해 왔다. 그러던 어느 날 딥뉴럴 네트워크의 가능성이 입증되면서 이제는 기업에서도 적극적으로 인공지능 연구에 동참하게 된 것이다. 이를 학회장에서도 온전히 체감할 수 있었다.
그동안 학계와 산업계에서 꽤 명확하게 구별하여 연구돼 오던 다른 분야의 성장 양상과는 전혀 다르게 이 분야는 학계와산업계에서 인기를 동시에 지속하며 폭발적으로 성장하고 있다. 머신러닝 연구 자체를 지향점으로 삼고 연구 결과를 통해 기여하고자 하는 리서치 사이언티스트와, 좋은 연구 결과를 잘 활용하여 현실 세계에서 도움이 될 만한 프로덕트를 만드는 데 관심있는 리서치 엔지니어가 함께 어우러져 발전해 나가는 모습이 참 조화롭다는 생각이 든다.
마치며
현재의 인공지능 열풍이 지속될까? 앞으로는 사람이 인공지능이 사용되었다는 것을 인지하지 않을 정도로 대부분의 분야에서 인공지능을 활용하는 시대가 되지 않을까? 향후 10년 동안의 관전포인트다. 개인적으로는 지금과 같은 관심이 지속되어서 10년내에는 영화 '설국열차'에 등장했던 동시통역기가 현실화되고 더이상 영어공부를 하지 않아도 되는 세상이 오길 매우 기대해 본다.
글 | 안다비
사람들은 '다비'라는 이름을 두고 단지 예쁜 한글이름이라고 생각하지만 실은 한자로 많다 '다', 크다 '비'로 많고 크다는 뜻을 갖고 있다. 주어도 없이 많고 크다니.. 참 욕심많은이름이다. 그래서인지 매사에 의욕이 많지만 가끔은 생각이 많은 스스로에게 힘들어한다.컴퓨터 사이언스를 배우고 연구하기를 6년, 그리고 엔지니어로 5년. AI 같은 기술적인 것을원래 좋아하던 차에 알파고가 세상을 놀래키면서 AI가 핫하게 떠오르기까지 하니 시대를참 잘 타고났다고 느끼는 요즘이다. 구글 검색, 넷플릭스 처럼 멋진 기술이 접목되면서도동시에 지구상의 많은 이들이 좋아하는 유명한 서비스를 만들고싶은 자칭 야망가이자 속세엔지니어이다.
참고문헌
*1 참고 | 태스크마다 별도의 학습데이터와 모델을 사용하는 것이 아니라 과거 태스크로부터 배운 지식을 현재의 태스크에 활용하자는 패러다임
*2 참고 | 블랙박스처럼 좀처럼 속을 알기 어려운 딥뉴럴 네트워크의 내
부 동작을 설명하는 분야
*3 참고 | Srivastava, R.K., Greff, S., Schmidhuber, J., (2015). Highway Networks.doi:arXiv:1505.00387.
*4참고|사실은닉상태가딱한번만전이하라는법은없으니조금더여러번전이할 수 있도록 만든 일반화된 RNN이라고 생각할 수 있다.
*5 참고 | https://github.com/julian121266/RecurrentHighwayNetworks
*6 논문 | Jaques, N. et al. (2017). Sequence Tutor: Conservative Fine-Tuningof Sequence Generation Models with KL-control, ICML.