그 중 한 가지는 화상 변환이다. 이것은 화상 생성 기법의 일종으로 파악된다. 다른 하나는 정규화(normalization, 正規化) 층(層)으로서 수많은 심층학습을 성공으로 이끈 주역 중 하나 다. 현재 많은 연구에서 당연한 것처럼 사용되고 있는 기술이다.

올해 초 NVIDIA 연구원이 개발한 GauGAN은 경관을 포함한 복잡하고 사실적인 이미지를 생성할 수 있는 최초의 시맨틱 이미지 합성 모델이다(사진:본지DB)
올해 초 NVIDIA 연구원이 개발한 GauGAN은 경관을 포함한 복잡하고 사실적인 이미지를 생성할 수 있는 최초의 시맨틱 이미지 합성 모델이다(사진:본지DB)

최근 심층학습을 활용한 애플리케이션이 속속 등장하고 있다. 인공지능(AI) 활용의 대표적인 최신 사례로는 올해 초 엔비디아 연구원이 개발한 아트 애플리케이션 ‘고갱(GauGAN)’을 꼽을 수 있다,

GauGAN은 경관을 포함한 복잡하고 사실적인 이미지를 생성할 수 있는 최초의 시맨틱 이미지 합성 모델이다. 일종의 페인트 소프트웨어로, 바위와 호수, 나무 등을 지정해 간단히 선 처리만 하면 조건에 맞는 사진과 같은 이미지가 몇 초에 생성된다. 대략적인 스케치를 놀랍고 사실적인 장면으로 바꿔주는 이 AI 페인팅 웹 앱은 생성적 적대 신경망(GAN, generative adversarial networks)을 기반으로 실연하기 위해 개발됐다.

후기 인상주의 화가 폴 고갱(Paul Gauguin)의 이름을 딴 고갱(GauGAN)은 장면의 레이아웃을 묘사하는 레이블이 지정된 스케치인 분할 지도(segmentation map)로부터 포토리얼리스틱 이미지를 제작하는 애플리케이션이다. 사람들은 페인트 브러쉬와 페인트 버킷 툴을 통해 강, 풀, 바위, 구름을 포함한 라벨로 자신만의 풍경을 디자인할 수 있는 것이며, 스타일 트렌스퍼(style transfer) 알고리즘은 크리에이터들이 필터를 적용하거나 생성된 이미지의 색상 구성을 수정하거나 포토리얼리스틱 장면을 그림으로 전환할 수 있게 한다.

건축 디자이너가 건축물이나 주변의 이미지를 화상으로 그려낼 때나 AI 연구자가 자율주행 시스템의 학습을 위해 특수한 입력 화상을 만들 때 활용하는 등 다양한 가능성을 내포하고 있는 것으로 알려져 있다.

이에 본지는 IT기술 전문매체인 닛케이크로스트렌드지에 기고된 “화상편집에 있어, 한껏 즐길 수 있는 매력적인 제품”이라며 도쿄대학교대학원 소속 관련 전문가의 의견을 토대로 그 매력을 지탱해주는 기술을 살펴보았다.

■ GauGAN을 이해하기위한 두 가지 관점

GauGAN는 어떤 구조로 돼 있는 것일까. 고성능 서버를 사용해 대량의 데이터를 학습시키는 것은 필요조건은 되지만, 그것만으로는 제대로 되지 않는다. 다른 연구나 애플리케이션과 마찬가지로 지금까지 축적된 심층학습 연구를 기반으로 하고 있다. 그 연구는 크게 두 가지로 나눠 접근해 볼 수 있다.

그 중 한 가지는 화상 변환이다. 이것은 화상 생성 기법의 일종으로 파악된다. 다른 하나는 정규화(normalization, 正規化) 층(層)으로서 수많은 심층학습을 성공으로 이끈 주역 중 하나 다. 현재 많은 연구에서 당연한 것처럼 사용되고 있는 기술이다.

우선, 화상 변환 관련의 유명한 연구로 ‘pix2pix’가 있다. 항공사진을 지도에 사용하는 화상으로 변환하거나, 선화(線畫)를 사진과 같은 이미지로 변환한다든지 할 수 있는, 범용성이 있는 화상변환 기법이다. pix2pix는 제너레이터(generator, 생성기)와 디스크리미네이터(discriminator, 식별장치)라는 2종류의 심층 네트워크를 사용해 화상을 생성하는 GAN(Generative Adversarial Networks, 적대적 생성 네트워크)를 기반으로 하고 있다. pix2pix는 GAN 조건부(컨디셔널) 버전으로 자리해 있다.

식별장치에는 변환 전의 화상과 ‘정확하게’ 변환한 화상의 조합을 학습시킨다. 한편, 생성기는 변환 전의 화상을 조건으로 화상을 생성시킨다. 식별장치는 생성기가 만든 화상과 변환 전의 화상의 조합이 올바른 조합인지 그 확률을 산출한다.

식별장치는 보다 정확하게 식별할 수 있도록, 또 생성기는 (가짜)조합이 식별장치에 의해 ‘진짜’라고 판정되는 화상을 생성할 수 있도록 학습을 진행한다. 이것을 반복하면 생성기는 입력 조건으로 ‘정확하게’ 변환한 화상을 출력할 수 있게 된다. 마지막으로, 조건으로 입력된 화상이 출력화상으로 변환된다.

pix2pix의 후속 버전으로 제안된 것이 ‘pix2pixHD’이다. pix2pix에서는 생성된 화상의 경계선이 흐릿해지는 단점이 있었지만, pix2pixHD보다 고화질의 화상을 지원한다. 식별장치에 의한 진위 판정을 생성 시의 여러 단계에서 실시해 학습에 사용되는 손실함수를 개선했다. 이외에도 개체의 경계를 나타내는 정보인 ‘인스턴스 바운더리 맵(instance boundary map)’의 추가를 비롯해 다양한 연구가 이루어지고 있다.

pix2pixHD의 등장으로 손으로 직접 그리는 얼굴 선화를 실제 인물의 얼굴 사진과 같은 화상으로 변환하는 등 다양한 화상 변환 작업이 가능하게 됐다. 그러나 이처럼 비약적인 진화를 이룬 pix2pixHD이라 해도, 그대로 사용해서는 GauGAN에서 실행하고 싶은 화상 변환 작업을 실현하지 못하는 경우가 있다. 그래서 GauGAN의 새로운 연구로 정규화가 나오는 것이다.

■ 심층학습을 음지에서 뒷받침하는 정규화

기계학습의 정규화라 함은 많은 경우 데이터 집합의 특징량(特徵量, 학습데이터에 어떤 특징이 있는지를 수치화한 것)의 평균을 ‘0’, 분산을 ‘1’이 되도록 변환하는 과정이다. 심층학습에서의 정규화 층은 주로 출력을 정규화한 후, 아핀변환(선형 변환과 평행 이동, 대략적으로 비유하면 1차 함수 ‘y=ax+b’의 다차원 버전)을 행한다. 심층 네트워크를 사용하여 학습할 때 입력 데이터를 그대로 학습시키면 학습이 불안정해질 수 있는데, 정규화 층을 중간에 끼우면 학습을 안정시켜 속도를 높일 수 것으로 알려져 있다.

지금까지 수많은 종류의 정규화 층이 제안됐지만, 가장 유명하면서 널리 사용되고 있는 것이 ‘배치 정규화(batch normalization)’일 것이다. 이는 입력 데이터에 대해 학습 시 배치 단위로 정규화와 아핀 변환을 행하는 것이다. 비교적 대규모의 심층학습 알고리즘에서는 당연한 것처럼 사용되는 기술이고, 심층학습의 실장을 시도해본 사람이라면 사용한 적이 있을 가능성이 높다.

GauGAN에서는 정규화 층으로 ‘SPADE(SPatially-Adaptive DEnormalization)’를 사용한다. SPADE 조건 별로 다른 매개 변수로 아핀 변환을 행하는 조건부 배치 정상화의 일종이며, 아핀 변환에서 사용되는 매개 변수를 그 전용 콘볼루션 신경망(Convolutional Neural Network, CNN)의 요구로 사용하고 있다.

기존의 배치 정규화를 이용한 pix2pixHD을 GauGAN에서 수행하려는 작업에 사용하면 정규화 층에서 조건의 정보가 손실돼버려 지정된 조건대로 변환할 수 없게 될 가능성이 있다. 예를 들어, 출력이 초원이 되도록 지정해도 넓은 바다가 출력될 수도 있다. 그래서 정규화 층에 SPADE를 사용하여 문제를 방지하는 것이다.

SPADE은 종래 제안돼 온 정규화 층에 비해 범용성이 좁아지고 있을지도 모른다. 그러나 GauGAN의 성립에 필요한 진전 작업이 진행된다고는 볼 수 있다. SPADE는 화상 관련 국제학회인 ‘CVPR(IEEE / CVF International Conference on Computer Vision and Pattern Recognition-2919)’에서 발표됐다. 사실은 pix2pix과 pix2pixHD도 이전이 CVPR에서 소개됐다.

한편, ‘고갱(GauGAN)’은 지난 7월 28부터 8월 1일까지 LA컨벤션센터(Los Angeles Convention Center)에서 열린 '시그라프(SIGGRAPH) 2019'에서 2개의 상을 수상했다.

고갱은 시그라프 프로패셔널 그래픽 컨퍼런스에서 시연되며 큰 호응을 이끌었다고 한다. 시그라프 컨퍼런스의 실시간 라이브 콘테스트에서 ‘베스트 오브 쇼(Best of Show)’ 및 ‘오디언스 초이스(Audience Choice) 부문을 수상했으며, 엔비디아의 류밍유(Ming-Yu Liu), 크리스 헤버트(Chris Hebert), 가브리일 클림로프(Gavriil Klimov) 연구원과 UC 버클리의 박태성(Taesung Park) 연구원은 고갱 앱을 선보이며 박수 갈채를 받았다.

연구자들은 게임 개발자, 조경 디자이너, 도시 계획자들이 이 기술의 혜택을 누릴 것으로 예상했지만 고갱은 환자를 치료하고 스트레스를 완화하는 툴에 활용되는 등 훨씬 더 광범위하게 보급되었다.

특히, 파이토치(PyTorch) 딥 러닝 프레임워크(deep learning framework)를 통해 개발된 고갱의 뉴럴 네트워크(neural network)는 엔비디아 DGX-1 딥 러닝 시스템을 이용해 백만 개 이미지를 학습했다. GTC에서 전시된 데모는 엔비디아 타이탄(TITAN) RTX GPU에서 실행됐으며 웹 애플리케이션은 아마존웹서비스(AWS)를 통해 엔비디아 GPU에서 호스팅됐다.

류 연구원은 박태성, 왕팅춘(Ting-Chun Wang), 주옌쥔(Jun-Yan Zhu) 연구원과 함께 딥 뉴럴 네트워크와 애플리케이션을 개발했다. 이들은 고갱의 뉴럴 네트워크에 대한 소스 코드를 공개하여 다른 개발자가 비상업적인 용도에서 해당 애플리케이션을 실험하고 구축할 수 있도록 했다.

한편, 고갱 데모는 엔비디아 AI 플레이그라운드(바로가기)에서 직접 체험해볼 수 있으며, 아래 영상으로 확인할 수 있다.

저작권자 © 인공지능신문 무단전재 및 재배포 금지