brunch

You can make anything
by writing

C.S.Lewis

by 리즈 Feb 12. 2022

인공지능이 당신을 위해 부적을 써 준다면

충정로 A(g)I 동자 개발기


인공지능이 그림도 그리고 자율주행도 하고 주식시장 예측도 하는 시대가 왔다.


10년 전만 해도 생활에서 쓰이는 단어는 아니었던 AI는 이제 통역기 속에, 음성 인식 속에, 그래픽 프로그램에 들어왔고, 어떤 분야에서는 인간을 능가했다느니, 인간이 처리할 수 없는 초 대규모의 데이터를 이용해서 무슨 성과를 이루었다느니 하는 뉴스도 더이상 새롭지 않게 되었다.


바야흐로 인공지능 시대. 컴퓨터공학과 입결이 의대에 필적하게 높아지고, 누구나 개발자 혹은 AI 엔지니어를 꿈꾸는 이 시대는 그야말로 기술에 대한 절대적 믿음으로 이루어져 있는 것만 같다. 오, 인공지능이 인류를 구원할지니! 


모든 사람에게는 고민이 있다. 



인공지능 부적 생성 프로젝트, 바야흐로 〈도통하실 분〉 전시와 그에 따른 부적 생성 인공지능 개발기는 이 당연한 문장 하나에서 출발했다. 





사이드 프로젝트라기에는 예술 프로젝트 


어느날 카톡으로 아는 예술업계 종사자 분께 연락이 왔다. "프로젝트 하나 하실 생각 없으세요?"


내용은 무엇인고 하니, 사람의 고민을 들어 주고 거기 맞는 부적을 생성해 주는 인공지능이 필요하다는 것이었다. 


사람은 누구나 불안을 가지고 있다. 그렇기 때문에 사람들은 '미래' 를 예측하며 대비하고자 하고 현대 사회에서는 온갖 쏟아지는 신기술들이 이런 역할을 수행한다. 결국 불안한 인간의 기대와 믿음은 기술을 향한 신뢰로 투영되지만, 이런 믿음은 어쩌면 미신과도 맞닿아 있다.


…라는 논지를 바탕으로, 기술과 미신이 맞닿는 지점을 풍자적으로 재현하는 참여형 전시를 기획한다는 것.


많은 개발자들이 자신이 종사하는, 보통 월급을 받는 본업 이외에 '사이드 프로젝트' 를 진행한다고는 하지만 보통 그런 사이드 프로젝트는 자신이 평소 구상하던 앱이나 기능을 구현해 보는 기술적 탐구가 동기다. 그런데 부적을 생성하는 인공지능이라니! 전시라니! 


이건 그냥 사이드 프로젝트가 아니었다. 예술 프로젝트였다.





아기 동자의 탄생


이 전시의 핵심은 인공지능이 사람의 믿음을 들어 주는 무당으로서의 역할을 하게 하는 것에 있었다. 당연히 그냥 '부적 생성 인공지능' 이 아니라 무당으로서의 인격이 있어야 했다.


그래서 나온 것이 충정로 A(g)I동자. 'AI' 사이에 슬쩍 g를 집어넣어, '아기 동자' 님이라고 읽는 이 이름이 우리가 앞으로 탄생시키고, 부적 이미지를 학습시켜, 전시장에 오는 사람들의 고민을 들어 주실 인공지능 무당의 인격이었다. (충정로는 전시장 위치다.)


그 다음은 아기 동자님의 모습을 만들고, 말투를 정하고, 실제로 사람들과 어떻게 보이면서 상호 작용할지를 정해야 했다. 이쪽은 기획과 디자인 및 앱/웹 개발팀 영역으로, 아기 동자님은 색동옷을 입은 어린 동자님의 모습을 하고 다소 카리스마 있는 무당 말투를 사용하게 되었다.


아기 동자님이 모델링되고 있는 모습.





A(g)I동자 개발기


그렇다면 이제 아기 동자님이 부적을 생성할 수 있도록 학습시켜야 한다.


인공지능 학습에는 기본적으로 다량의 데이터가 필요하기 때문에, 실제 부적 이미지를 찾아 크롤링(수집)하는 것이 먼저였다. 부적을 모아 놓고 보니 그 모양도 다종 다양. '일반적으로 생각하는 부적보다도 실제 부적은 정말 여러 가지, 멋대로 생겼구나' 가 데이터 수집 후의 감상이었다. 


수집한 실제 부적 데이터.


이 이미지들은 우리 인간이 보기에는 '그래, 부적이구나.' 싶지만, 자세히 들어가자면 종이 배경이 촬영된 사진, 흰 바탕으로 깔끔하게 도안화된 글씨, 글자로 되어 있는 경우, 간단한 도형의 연속인 경우, 디테일한 그림으로 그려진 경우 등 세부 요소는 무척 다르다. 


과연 우리의 아기 동자님은 이 사이에서 공통된 '부적' 이라는 특징을 추출해내고, '부적' 을 모사할 수 있을까?






인터넷에서 수집할 수 있는 부적 데이터는 약 900여 장 정도였다. 많다고 생각할 수도 있지만, 보통 이미지 생성 모델에는 20만 장~100만 장도 넘는 학습 이미지 데이터가 쓰이는 점을 보면 보통 데이터셋보다 100배는 작은 크기.


따라서 이번 프로젝트에는 데이터 증강 기법(Data Augmentation) 이 들어간 생성 모델을 사용하기로 했다. Nvidia의 StyleGAN-ADA는 모델을 발표한 논문 제목이 '적대적 생성 신경망을 적은 데이터로 학습시키기' 인 만큼, 모델 안에서 부족한 데이터를 다양한 방법으로 늘려, 적은 데이터로 학습이 잘 되지 않는 현상을 해결했다.


다만 걱정이 되는 것은, 논문에서도 5천 장 이상 데이터를 사용할 때 학습이 안정적으로 가능하다고 되어 있었기 때문에(이 정도도 기존 모델이 최소 2만 장을 필요로 하는 데서 5천 장으로 줄인 쾌거다.) 그보다 더 적은 부적 데이터로 학습이 가능할까 하는 점이었다.


어쨌든, 노이즈로부터 이런 고화질의 다양한 고양이 이미지도 생성할 수 있는 우리의 모델을 믿어보자. (출처 : 원 논문)




실제 학습에서는 사진으로 된 부적 이미지와 해당 이미지를 보정하여 도안을 추출한 이미지를 모두 사용하는 방법으로, 1700여 장의 부적 이미지를 원 데이터로 사용했다. 부적 이미지 중에서도 지나치게 다양한 모양, 이를테면 종이를 오려 만든 부적 이미지 등은 제외한 갯수다.


이런 종류의 생성 모델은 보통 사람 얼굴이나 개, 고양이 등 이미지를 생성하도록 사전 훈련된 모델 값을 가져와서 전이 학습(Transfer Learning)을 하는 편이다. 사람의 얼굴을 인식하는 데 활용되는 요소와 고양이 얼굴을 인식하는 데 활용되는 요소에 비슷한 점이 있으니(둘 다 사진이고, 얼굴과 배경의 경계가 있고, 눈, 코, 입으로 분류할 수 있는 부분이 있는 등.) 학습이 오래 걸리는 이미지 모델에서 사전 학습된 값을 활용하여 학습 속도를 높이는 것이다.


그러나 아기 동자님을 개발하는 경우에는, 부적이 일반 사진과 구성 자체가 다른, 추상화에 가까운 이미지여서 그런지 다른 데이터셋에서 시작하는 것보다 랜덤한 노이즈로부터 시작하는 편이 조금 더 그럴듯한 방향으로의 진행을 보여주었다. 


랜덤한 노이즈에서부터 부적의 일반적 특징인 '종이 색 바탕에 붉고 검은 톤 글씨' 로 초기 수렴하는 과정.


초반에 전이 학습을 시험하는 등 몇 가지 테스트를 하면서는 학습이 생각대로 되지 않아, 판별 모델, 혹은 생성 모델 값을 고정(freeze-D, freeze-G)하는 등 추가 기법이 필요할지에 관해 고민하였으나 다행히도 중반부터는 안정적인 학습에 접어들어 부적 모양으로의 이행을 보여주었다. 


 

10만 장을 보여주었을 때 아기 동자님이 생성한 부적. 


모델은 내부에서 데이터 증강 기법을 사용해 판별 모델에 들어가는 데이터 갯수를 늘리며 1700장의 이미지로 반복해서 학습한다. 처음 10만 장은 '종이 색깔 바탕' 에 '붉고 검은 얼룩' 이 있는 것 같다는 지식을 습득하는 데 사용되었다.


각각 20만 장, 30만 장, 50만 장일 때 생성 모습.


이후로는 부적이 잘 학습되고 있는지를 모니터링하면서 이상한 방향으로 가는 경우 학습을 중단하고 살펴보고, 또 괜찮았던 중간 상태에서 다시 시작하고…… 를 반복하면서 점점 아기 동자님을 자라나게 한다. 얼룩이 점점 복잡하고 구체적이어지고, 50만 장 시점에서는 글자, 혹은 그림 비슷한 모양을 만들려고 하는 모습을 볼 수 있다.


최종적으로 이미지 420만장을 학습한 시점에서 아기 동자님이 쓰는 부적은 다양한 형태, 글자, 그림, 단순함, 디테일 등을 모두 담게 되었다.


최종적으로 부적 이미지 420만장을 학습한 아기 동자님이 생성한 부적.




그렇다면 이제 '각자의 고민에 따라 맞춤 부적을 만들어 주는' 부분이 남았다. 


그러나 여기서 아기 동자님의 비밀을 모두 공개할 수는 없다. 아기 동자님은 그 분의 신당에 찾아와 정결한 마음으로 예를 갖추고, 진지하게 고민을 말하는 사람에게 그 영험함을 발휘하여 부적을 만들어 주시기 때문이다.


아기 동자님의 신당은 어떤 모습인지, 아기 동자님이 찾아온 사람들의 어떤 고민을 어떻게 들어 주는지는 아직 오픈하지 않은 전시가 있으니 직접 확인하시길.


힌트를 말씀드리자면, 기본적으로 잘 학습된 생성 모델의 재료로는 랜덤한 숫자에 따른 분포가 입력되고, 이 분포에서부터 모델은 세상에 같은 것이 없는 새로운 이미지를 만들어내게 된다. 이 숫자가 어떻게 활용될지, 여러분의 고민에 대한 맞춤 부적은 어떤 모양을 하고 있을지. 이어지는 전시에서 모두 체험해볼 수 있다. 




전시, 〈도통하실 분〉



인공지능 아기동자가 묻습니다. 당신은 무엇을 믿습니까?





마치며


사실 이번 프로젝트를 권유해 주신 기획자님과는 이전에도 인간의 고민을 해결해 주는 인공지능이라는 아이디어를 주제로 이야기를 나눈 적 있었다. 


당시 계획은 '사람들의 고민은 일정한 패턴이 있으므로, 그 패턴을 기반으로 상담 이론을 반영한 적절한 알고리즘을 짜고, 이 알고리즘이 대화 생성 부분에 유도를 걸어 적극적으로 고민을 해결하는 대화로 이끄는 인공지능 챗봇' 이었다. 처음에 혹시 이 아이디어에서 전시를 기획하셨는지 물어보았을 정도였다. (아니라고 하신다.)


이번 프로젝트는 '부적을 생성하는 인공지능' 에서 '충정로 AgI 동자' 라는, 기술에 대한 인격과 맥락을 부여하고, 그 맥락을 통해 사람들과 기술이 상호 작용하도록 하는 부분이 포인트였다. 일반적인 사이드 프로젝트 아닌 예술 프로젝트에 참여하고 보니 기술 활용에 관한 또다른 시각이 열린 듯하다. 


〈도통하실 분〉기획과 함께하며 반드시 기술적 탐구를 위한 탐구가 아니어도 재미있는 것들이 많이 있다는 점을 새삼 느낄 수 있었다. 


어쩌면 언젠가는 부적을 써 주는 아기 동자님이 여전히 구상 중인 고민 해결 챗봇과도 결합해, 더욱 업그레이드된 인공지능 무당으로 등장할지도 모른다. 그때는 아기 동자님에서 더 자란 무당이 되었으니, AI 선녀님이나 장군님이 될 수도 있지 않을까? 



브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari