AI는 어떻게 봄을 그렸을까


봄을 그리는 인공지능, 상상해 보셨나요? 위 그림은 LG의 초거대 AI가 ‘새싹이 움트는 봄’(Newly Sprouting Spring Scenery)이라는 뜻의 문구를 그림으로 표현한 이전에 없던 이미지입니다. AI가 세상에 밝은 봄기운을 전하는 것만 같습니다.

사람의 시각(vision)을 모방하는 비전 AI는 연구 초기에 이미지를 인식하는 분야에 초점이 맞춰져 있었습니다. 도로에서 무엇이 신호등이고 무엇이 다른 차인지 인식하는 것과 같은 기능을 말합니다. 그런데 OpenAI는 지난해 수억 장의 이미지-텍스트 짝지워진 데이터(pair)를 학습한 뒤 언어로부터 이미지를 생성하는(text2image) 흥미로운 사례를 소개하였습니다. 달리(DALL-E)라고 이름 붙은 AI 모델의 등장입니다. ‘아보카도 모양의 의자’ 이미지가 아이콘과 같이 여러 곳에서 등장했습니다. 비전 AI에서 ‘인식’이 아닌 ‘생성’에 초점을 맞춘 것입니다.

LG AI연구원의 EXAONE 멀티모달(Multi-modal) 모델은 DALL-E에서 한 발 더 나아갔습니다. DALL-E가 텍스트로부터 이미지를 생성하는 한 방향 학습을 하였다면 EXAONE은 이미지로부터 텍스트를 생성하는 양방향 모델[1]로 학습을 완료하였습니다. 한 모델이 말을 들려주면 그림을 생성할 뿐 아니라 그림을 보여주면 말로 풀어내는 능력도 함께 갖춘 것이지요.

‘Newly Sprouting Spring Scenery’란 말을 그림으로 표현하는 것은 사람이라 해도 쉬운 일은 아닙니다. 단순히 개나 고양이를 그려보라고 하는 것과는 다르니까요. 봄기운을 이미지로 나타내는 데는 다양한 구상물이 들어갈 수 있습니다. 꽃을 쓸 수도 있고 개구리를 그릴 수도 있을 것입니다. 그리고 그렇게 구성된 그림이 전체적인 봄의 심상을 표현하도록 하여야 합니다. 무덤 위의 꽃을 그리거나 자고 있는 개구리를 그린다면 목적을 달성했다고 하기 어려울 것입니다.

EXAONE 멀티모달 모델은 어떻게 그 과업을 수행하는 것일까요? 본 블로그에서 그 과정을 풀어서 살펴보겠습니다. 아래 그림은 전체를 개괄하고 있습니다.

[그림1] EXAONE Multi-modal Model 개괄

과정의 시작은 왼편의 데이터입니다. 이미지와 이미지에 대한 설명(언어)이 짝지워진 데이터(image-text paired data)입니다. LG AI연구원은 총 2억5천만 쌍의 데이터를 확보해 학습에 활용하였습니다.

 

VAE(Variational Autoencoder): 잘 정돈된 잠재 공간

[그림2] AugVAE

먼저 상단에 이미지를 학습하는 부분을 보겠습니다. 이 부분은 이미지 데이터로부터 AI 모델이 각 부분을 학습한다는 점을 묘사하고 있습니다. EXAONE 멀티모달 모델에서 이 부분 학습을 담당하는 것이 AugVAE(feature-Augmented Variational AutoEncoder)입니다.

DALL-E가 다양한 이미지를 생성할 수 있었던 비결은 VQ-VAE(Vector Quantized Variational Autoencoder)[2] 덕분입니다. LG AI연구원의 AugVAE는 VQ-VAE를 기반으로 하여 더 강화시킨 모델입니다.

그럼 VQ-VAE 가운데 먼저 Autoencoder란 무엇인지 살펴보겠습니다. Autoencoder는 주어진 데이터의 분포를 잠재 공간에 압축하는 방법을 학습하는 신경망 모델입니다. 이 모델은 두 부분으로 나누어지는데 압축하는 인코더(encoder)와 압축을 푸는 디코더(decoder)입니다.

[그림3] Autoencoder의 구조 (Wikimedia Commons)

본 사례의 경우 데이터는 이미지이지요. 이미지(X)가 인코더를 통하면 잠재 공간(위 그림의 z) 상의 벡터로 변환됩니다. 그리고 디코더가 벡터를 다시 이미지(X’)로 복원하는 것입니다. ‘압축’이란 말에서 알 수 있듯이 인코더를 거친 잠재 공간 상의 표현(z)은 입력 데이터(X) 보다 크기가 줄어들게 됩니다. VAE가 얼마나 데이터를 잘 학습한 우수한 모델인지는, 이렇게 원본 데이터(X)를 잠재 공간에 압축해서 집어넣었다가 다시 풀었을 때(X’)도 얼마나 원본과 비슷하게 잘 재현하는 지로 판가름하기도 합니다.

VAE(Variational Autoencoder)[3]는 Autoencoder인데, 학습 이미지를 변환한 잠재 공간(z)을 ‘잘 정돈되게 배치한’ Autoencoder를 말합니다. 다음 그림은 Autoencoder와 VAE의 차이를 잘 묘사하고 있습니다. 여기서 각 점은 학습한 데이터 포인트를 말합니다. 이미지의 경우 구분되는 패턴이라 할 수 있습니다. 그냥 Autoencoder는 같은 색으로 표현된 포인트들이 사방에 흩어져 있는 것을 볼 수 있습니다. 하지만 VAE는 이 점들을 특징에 따라 잘 정돈해 잠재 공간 상에 배치합니다.

[그림4] Autoencoder와 VAE (출처: ML@Berkely Understanding VQ-VAE)

 

AugVAE: 이미지의 크기와 무관하게 특징을 기억하는 Vision 모델

VAE에 대해서 살펴보았습니다. 그럼 처음으로 돌아가 VQ-VAE의 VQ(Vector Quantized)는 무엇을 의미할까요? 이 부분이 바로 아래 비주얼 코드북에 해당하는 부분입니다.

[그림5] Vector Quantization

비주얼 코드북이란 쉽게 말해 잠재 공간 상의 벡터들이 각각 실제 이미지의 어떤 부분과 매칭하는지 정리해 놓은 리스트를 뜻합니다. 그림 상의 ‘꽃잎’, ‘잎사귀’, ‘컵’, ‘집’과 같은 각 부분으로 말이죠. 단, 위 그림에서 유의할 점은 이해를 위해 사람이 구분하기 쉬운 이미지 단위로 정리된 코드북을 그렸지만, 실제 코드북은 이렇게 사람이 구분 가능한 이미지 단위가 아닐 수도 있다는 것입니다.
아래 그림은 최초로 VQ-VAE를 제시한 논문[4]에서 발췌한 그림입니다. 원래 VQ-VAE에서 코드북을 담당하는 요소는 인코더 뒤와 디코더 앞의 두 부분에 들어가 있으며 이미지의 특징을 기록하게 됩니다. 

[그림6] VQ-VAE 도식[4]

AugVAE의 기술적인 차별점은 이 VQ를 어떻게 배치하느냐에 있습니다. 인코더와 디코더 두 지점에만 코드북을 배치한 기존의 VQ-VAE와 달리 AugVAE는 이미지를 압축하는 과정의 중간 단계에 여러 차례 걸쳐서 이 코드북 컴포넌트를 배치하였습니다. 이미지를 압축하는 중간중간에 같은 특징을 갖는 부분이 같은 항목에 들어가도록 코드북에 여러 차례 기록하는 것이죠. AugVAE 논문[5]에 실린 아래 그림이 이를 묘사합니다.

[그림7] AugVAE의 Vector Quantizer[5]

이를 통해 AugVAE가 VQ-VAE보다 향상되는 점은 이미지의 패턴을 그 크기에 상관없이 잘 구분해 기억한다는 점입니다. 다음 그림을 보면 여러 크기의 얼룩말이 있습니다. 그런데 얼룩말은 크기와 무관하게 동일한 얼룩 패턴을 갖고 있습니다. AugVAE는 이런 패턴을 크기와 상관 없이 정확히 학습하기 때문에 이후 활용에 있어서도 다양한 크기의 이미지 패턴을 인식하고 생성에 활용할 수 있다는 강점이 있습니다.

[그림8] AugVAE 강점

결론적으로, AugVAE를 활용한 EXAONE 멀티모달 모델은 방대한 이미지로부터 각 사물 이미지의 부분 특징을 효과적으로 학습하는 모델입니다. 이런 효과적인 학습을 바탕으로 더 정교한 이미지를 생성할 수 있습니다.

언어와 이미지의 결합

전체를 개괄하는 첫 그림의 하단 부는 사진 설명, 즉 텍스트 데이터를 의미 단위별로 리스트화(코드북)하는 과정을 의미합니다.

[그림9] EXAONE 멀티모달 모델의 언어 부분

BP-Encoder는 바이트 쌍 인코더(Byte Pair Encoder)를 뜻하는데 연속되는 문자가 등장하면 그것을 다른 문자로 대체하는 식으로 데이터를 압축하는 일반적인 알고리즘입니다. 이를 통해 이미지 설명을 의미 단위로 정리해 이미지 벡터와 마찬가지로 코드북을 만듭니다. 여기 코드북도 VQ-VAE의 코드북과 마찬가지로 이해를 쉽게 하기 위해 사람이 이해할 수 있는 단어 단위로 정리된 것을 예시하였지만, 실제 코드북은 이렇게 단어 단위가 아닐 수도 있습니다. 코드북은 이미지 생성이란 목적에 맞게 정리된 텍스트의 의미 단위로 정리되어 있습니다.

전체 개괄 그림의 가장 오른편은 이미지와 텍스트 2개의 코드북을 가져다가 서로 어떻게 결합하는지 학습하는 것을 나타내는 부분입니다.

[그림10] EXAONE 멀티모달 모델의 트랜스포머

여기의 트랜스포머(Transformer) 모델이 바로 언어와 이미지의 결합을 학습하는 부분인 것입니다. 수억 쌍의 사례를 통해 트랜스포머는 어떤 텍스트에 대해 어떻게 이미지 요소를 결합하면 되는지 학습하게 됩니다. 즉, ‘꽃’을 생성하라고 했을 때 꽃잎의 특성, 잎사귀의 특성, 줄기의 특성 등을 어떻게 결합하여 사람이 꽃이라고 인식하는 사물의 이미지를 생성하는지 안다는 것이죠. EXAONE의 AugVAE는 이미지 부분(패치)의 크기와 상관 없이 특징을 학습해 여기서 보다 뛰어난 성능을 보이는 것입니다.

 

최고의 이미지 생성 모델을 향해

이런 구조를 바탕으로 대량의 데이터를 학습하고 완성된 EXAONE Multimodal Model은 ‘Newly Sprouting Spring Scenery’과 같이 다소 추상적일 수 있는 요구 조건을 받더라도 아름다운 이미지를 효과적으로 생성할 수 있습니다.

이와 같은 기술이 최초의 초거대 AI 두뇌를 갖춘 AI 휴먼, 틸다의 디자이너 데뷔에 쓰인 이미지(틸다 블로그 링크) 생성에도 쓰였습니다. 인간 디자이너의 질문(텍스트)을 받아 인공지능이 이미지를 생성하고, 이것이 인간에게 영감을 주어 아름다운 패션 의류로 탄생하는 멋진 협업의 과정입니다.

이 생성 모델을 연구하는 LG AI연구원 비전 랩(Vision Lab)은 앞으로 모델의 효율을 높여 생성 시간을 단축하고 활용 영역을 확장하는 데 힘쓸 계획입니다. 이미지가 실생활에 쓰이는 데 걸림돌 가운데 하나는 생성 시간입니다. 최종으로 쓰이는 이미지는 한 장일지라도 가장 적합한 이미지를 찾기 위해 수천에서 수만 장의 이미지를 생성하고 검토하는 과정이 선행합니다. 이를 위해선 보다 적합한 이미지를 보다 짧은 시간에 생성하는 보다 발전된 기술이 필요한 것입니다. 이런 기술력이 뒷받침된다면 광고 생성, 디자인 패턴 생성에서 나아가 보다 많은 영역에서 이미지 생성이 쓰일 수 있을 것입니다. LG AI연구원은 이를 달성해 초거대 AI 이미지 생성과 디자인 분야에 있어서 독보적 위치로 나아갈 계획입니다.

[그림11] AI가 팝 아트 스타일로 생성한 다양한 봄의 이미지

 



▶내가 원하는대로 그림을 그려주는 인공지능 #EXAONE 영상 보러 가기 (Link)


참고
[1] Kim, T., Song, G., Lee, S., Kim, S., Seo, Y., Lee, S., ... & Bae, K. (2021). L-Verse: Bidirectional Generation Between Image and Text.?arXiv preprint arXiv:2111.11133.
[2] Van Den Oord, A., & Vinyals, O. (2017). Neural discrete representation learning.?Advances in neural information processing systems,?30.
[3] Kingma, D. P., & Welling, M. (2013). Auto-encoding variational bayes.?arXiv preprint arXiv:1312.6114.
[4] Van Den Oord, A., & Vinyals, O. (2017). Neural discrete representation learning.?Advances in neural information processing systems,?30.
[5] Kim, T., Song, G., Lee, S., Kim, S., Seo, Y., Lee, S., ... & Bae, K. (2021). L-Verse: Bidirectional Generation Between Image and Text.?arXiv preprint arXiv:2111.11133.