엔지니어링
들어가며
래블업 리서치팀은 Backend.AI를 활용하여 다양한 사례를 만드는 일을 하고 있습니다. Backend.AI 내부의 CLI command를 사용자의 지시 사항에 맞도록 자동으로 생성하는 AI Agent를 개발하기도 하고, 각종 행사에 사용되는 간단한 데모를 만들기도 합니다. 예를 들어, 사용자 사진을 활용한 이미지 및 동화 생성 서비스 'VisuTale'도 저희 리서치팀의 작품입니다. VisuTale은 다양한 행사에서 Backend.AI를 이용하여 개발할 수 있는 AI 서비스의 예시로 관람객들의 시선을 한눈에 받았습니다.
최근 리서치팀 내부에서 연구를 진행하던 중, AI 기반 이미지 생성 모델이 특정 문화적 맥락이나 언어를 제대로 반영하지 못하는 경우가 많다는 사실을 확인했습니다. 이는 글로벌 AI 모델들이 대체로 영어 기반으로 학습되거나, 일반적인 범용 도메인 데이터에 기반하여 학습되는 경우가 많기 때문입니다. 프롬프트에 특정 지역, 혹은 문화에 대한 내용을 입력하면 고유한 특성이 제대로 표현되지 않는 경우가 많죠. 리서치팀에서 다양한 모델을 대상으로 실험해본 결과, 한국어 텍스트 프롬프트를 활용하여 이미지를 생성할 때 한국의 정체성이 이미지에 충분히 드러나지 않는 이슈가 있었습니다.
예를 들어, Stable Diffusion v1.5와 DALL-E 3와 같은 유명한 모델들은 한국어 텍스트 프롬프트를 제대로 해석하지 못하거나, 생성된 이미지에서 한국의 정체성을 충분히 반영하지 못한다는 문제를 보여줍니다.
- Stable Diffusion v1.5는 “한국의 라면을 그려줘”라는 한국어 프롬프트를 입력했을 때, 라면 대신 건물 이미지를 생성했습니다. 이는 해당 모델이 한국어 입력을 제대로 처리하지 못했음을 보여줍니다.
- DALL-E 3는 동일한 프롬프트로 면 요리 이미지를 생성하긴 했지만, 한국의 라면이 아니라 일본의 라멘에 가까운 이미지를 생성하며 한국적인 색채를 담아내지 못했습니다.
영어로 프롬프트를 입력하는 것 또한 해답은 아닙니다. 한국어 프롬프트를 영어로 번역하는 과정에서 일대일로 대응되는 단어가 없거나, 번역기가 문맥을 이해하지 못해 제대로 된 번역을 내놓지 못하기도 합니다. 예를 들어 "고추장진미채볶음" 이라는 음식을 번역기에 입력하면 "stir-fried vegetables with red pepper paste"라는, 다소 음식에 대한 정확하지 않은 번역을 내놓습니다.
이에 대한 해결책으로, 한국의 문화와 정체성을 온전히 반영하는 이미지 생성 모델 **KIMCHI (Korean dIffusion Model adapting Culture and HIstory)**가 탄생하게 되었습니다.
'KIMCHI' 담그기
Attached Image Source: Wikipedia & Lotte Group
래블업은 CES, MWC, GTC, SC 등 다양한 해외 행사 및 컨퍼런스에 참여하고 있기 때문에 다양한 데모를 선보일 기회가 정말 많습니다. 이런 상황에서 'KIMCHI'는 문화 특화형 AI 모델의 좋은 사례로 사용될 수 있을 것으로 생각합니다. 래블업의 'KIMCHI'가 문화적 특색을 반영한 맞춤형 이미지를 실시간으로 생성하는 모습을 보여준다면, 해외에서 이목을 끌고 브랜드의 차별성을 효과적으로 알릴 수 있을 것입니다. 더 나아가, KIMCHI는 각종 행사에서 마케팅 자료로도 활용하며 차별화된 콘텐츠를 제공할 수 있는 가능성 또한 열려 있습니다.
'KIMCHI'는 두 가지 목표를 가지고 개발되었습니다. 1. 한국어 프롬프트를 직접 이해하고 번역 과정을 거치지 않더라도 정확하게 이미지를 생성해내는 것. 2. 한국 문화와 정체성을 반영한 이미지를 생성하는 것. 이 두가지 목표를 모두 달성한다면, 위에서 예시로 사용한 "한국의 라면을 그려줘" 혹은 "한국의 롯데월드타워를 그려줘" 라는 프롬프트에 각각 한국적인 라면과 한국 도심지에 서 있는 롯데월드타워를 생성해낼 수 있을 것입니다.
이번 글에서는 이러한 'KIMCHI' 모델의 개발 과정과 함께 데이터셋 전처리 프레임워크 한계점을 소개합니다.
데이터셋 준비
'KIMCHI' 모델의 학습에는 AIHub에서 수집한 Korean Food Dataset, Korean Historical Building and Landmark Dataset, 한국형 이미지가 포함된 외부 지식 기반 멀티모달 질의응답 데이터와 같은 데이터셋이 사용되었습니다.
데이터 전처리 과정
1. VLM(Vision Language Model) Processing: 첫번째로, 준비한 이미지를 LLaVA라는 VLM의 Input으로 프롬프트와 함께 넣어주게 됩니다. 여기서 VLM은 이미지와 텍스트를 함께 이해할 수 있는 멀티모달 AI 모델입니다. 즉, 이미지 안에 담긴 정보를 분석하고, 그 내용을 사람이 이해할 수 있는 텍스트로 바꿔주는 역할을 합니다. 예를 들어, 한 장의 사진을 보고 "A plate of food with a red sauce and a green vegetable." 이라는 영어 캡션을 만들어내는 것입니다. 2. LLM(Large Language Model) Refinement: 그렇게 만들어진 영어 캡션은 언어 모델인 LLaMA에 전달됩니다. LLaMA는, 기존의 영어 캡션을 좀 더 자세하고 정확한 한국어 설명으로 바꿔주는 역할을 하게됩니다. 기존의 영어 캡션이 "A plate of food with a red sauce and a green vegetable."로 이미지에 대한 시각적 정보만을 담고 있었다면, LLaMA는 그것을 "흰색 접시에 놓인 빨간 소스로 버무려진 청갓으로 만든 한국의 전통 요리인 갓김치" 라는 한국어 문장으로 바꿔주게 됩니다.
이 두 과정을 통해, 기존의 이미지를 잘 설명할 수 있는 한국어 캡션이 만들어집니다. 이렇게 만들어진 캡션은 이후 이미지 생성 모델 학습에 사용됩니다.
모델 학습
이러한 과정에서 생성된 한국어 설명은 텍스트 프롬프트로 사용되며, Diffusion 모델의 학습에 활용되었습니다.
위 이미지에서는 갓김치 이미지에 대해 “흰색 접시에 놓인 빨간 소스로 버무려진 청갓으로 만든 한국의 전통 요리인 갓김치”라는 한국어 설명을 얻었습니다. Diffusion Model을 full finetuning 하는 것은 매우 비용이 많이 드는 작업이므로, 학습 효율성을 높이기 위해 LoRA(Low-Rank Adaptation) 기법을 적용하였고, 한국어 프롬프트를 인코딩 하기 위해 Korean-CLIP 모델의 텍스트 인코더를 사용하였습니다. 이때 Korean-CLIP 모델은 CLIP 모델을 Korean-English parallel 데이터에 추가로 학습한 모델입니다. 이러한 과정을 통해 모델을 추가로 학습시켜, 한국어 프롬프팅이 가능하고 한국의 문화를 자연스럽게 반영하여 이미지를 생성할 수 있는 'KIMCHI'를 개발할 수 있었습니다.
실험 및 성능 평가
이미지 생성 실험
Experiment (1) - 문화적 요소 표현
위의 비교 실험은 실제 이미지와 함께 DALL-E 3, ChatGPT-4o, Stable Diffusion 2.1(영어 번역 프롬프트 사용), 그리고 KIMCHI 모델이 동일한 한국어 프롬프트를 기반으로 이미지를 생성했을 때의 결과입니다.
다른 모델들 또한 우수한 성능을 보여주지만, KIMCHI는 부자연스러운 모습 없이 음식의 식감과 재료, 전통 건축물의 디테일 등을 잘 반영하고 있습니다. 이는 KIMCHI가 한국어 텍스트를 정확히 이해하고, 번역 과정 없이도 자연스러운 한국적 이미지를 생성할 수 있도록 학습되었다는 것을 의미합니다.
Experiment(2): 일반 이미지 생성 능력 보존
위의 이미지는 KIMCHI가 학습 이후에도 Pretrained model의 생성 능력을 유지하는지에 대한 검증에 대한 결과입니다. KIMCHI는 Stable Diffusion 1.5를 Base model로 활용하여 학습했기 때문에, 함께 비교했습니다.
성능 평가
Result(1): 문화적 요소 표현
실험 이후, 이미지 생성 결과에 대해 평가를 진행했습니다. 평가는 53명의 평가자에게 설문을 통해 진행되었고, 평가자들은 각 모델의 생성 이미지에 대해 위의 항목별로 [매우 그렇다 ~ 매우 그렇지 않다]의 5개 선지 중 하나를 선택했습니다. 이후 평가자의 응답을 1~5점으로 환산하여 각 항목별로 평균값을 측정했습니다.
위의 표는 Experiment(1)에 대한 실험 결과를 표로 나타낸 것입니다. KIMCHI는 Text-Image Alignment, Reality, Domain-Specific Suitability 에서 다른 모델들을 모두 앞서는 성능을 보여주었습니다. 이는 KIMCHI가 한국어 프롬프트를 잘 반영하여, 실제 이미지에 근접한 이미지를 잘 생성했다는 것을 의미하며 문화적 요소 또한 잘 반영하고 있다는 것을 의미합니다.
Result(2): 일반 이미지 생성 능력 보존
위의 표는 Experiment(2)에 대한 Human Evaluation을 통한 평가 결과입니다. Base model인 Stable Diffusion 1.5와 비교했을 때 근소한 차이이지만 Text-Image Alignment, Error Detection에서 뒤쳐지는 결과를 보였습니다. 이는 KIMCHI가 특정 도메인에 특화된 학습을 하는 과정에서 해당 도메인에 집중한 결과 일반적인 이미지에 대한 생성 능력이 다소 감소하였음을 나타냅니다. 하지만 Reality 성능은 잘 보존하고 있는 것을 확인할 수 있었습니다.
한계점 및 결론
한계점
KIMCHI는 Stable Diffusion v1.5를 Base model로 활용하여 fine-tuning된 모델입니다. Stable Diffusion v1.5는 2022년 10월 공개된 모델로, 지금으로부터 2년이 지난 오래된 모델입니다. 따라서 fine-tuning을 한다고 해도 이후에 나온 최신 버전의 모델에 비해 이미지 성능이 높지 않을 수 있습니다. 또한, 한국어 프롬프트를 이해할 수 있도록 이해 능력을 학습시킬 수는 있지만, Text-Image Alignment 능력은 Base model의 능력에 의존적이라는 점에서 한계를 가지고 있습니다.
결론
KIMCHI는 한국어 프롬프트를 직접 이해하고, 문화적 뉘앙스를 잘 반영하도록 이미지를 생성하는 모델로, 기존의 이미지 생성 모델들이 가지는 한계점에 도전해본 연구입니다. 아직 많은 한계점들이 존재하지만 본 연구는 다음과 같은 기여점을 가지고 있습니다.
- VLM과 LLM를 통한 문화적 맥락 반영 데이터셋 전처리 파이프라인 구축
- 별도의 번역을 거치지 않은 한국어 프롬프팅을 통한 이미지 생성
- 보다 사실적이고 문화적 맥락을 반영하는 이미지 생성
이러한 기여점을 바탕으로 특정 문화권의 이미지만 모을 수 있다면 KIMCHI에서 활용했던 데이터셋 생성 전처리 파이프라인을 활용하여 Diffusion model을 fine-tuning할 수 있는 데이터셋을 구축할 수 있고, 이를 통해 해당 언어와 문화에 특화된 생성 모델 개발도 가능할 것입니다.
본 연구는 한국 문화만을 정교하게 반영한 이미지를 생성하는 데에서 시작되었지만, 이후에는 다양한 문화권을 이해하는 AI 기술로 확장될 수 있습니다. 향후에도 관련 연구들이 계속 발전하여 KIMCHI와 같은 문화 특화 모델이 세계적으로 다양한 문화권에 기여하고, 또한 다양한 문화권을 이해하고 존중하는 AI 기술로 발전할 수 있기를 기대합니다.