- [17′ NIPS] Transformer : Attention Is All You Need
- [18′ OpenAI] GPT-1 : Improving Language Understanding by Generative Pre-Training
- [19′ NAACL] BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
- [20′ NIPS] GPT-3 : Language Models are Few-Shot Learners
- [22′ NIPS] InstructGPT : Training language models to follow instructions with human feedback
- [21′ ICLR] LORA: LOW-RANK ADAPTATION OF LARGE LANGUAGE MODELS
- [21′ IJCNLP] Prefix-Tuning: Optimizing Continuous Prompts for Generation
- [22′ NeurIPS] Chain-of-Thought Prompting Elicits Reasoning in Large Language Models
- [20′ NeurIPS] Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks
- [23′ ICLR] Self Consistence : SELF-CONSISTENCY IMPROVES CHAIN OF THOUGHT REASONING IN LANGUAGE MODELS
- Prompt Engineering, PEFT, RAG – LLM이 외부 정보를 사용하는 세 가지 방법
- [22′ NeurIPS] LIFT: Language-Interfaced Fine-Tuning for Non-Language Machine Learning Tasks
- [23′ ICLR] LANGUAGE MODELS ARE REALISTIC TABULAR DATA GENERATORS
1. 들어가며
최근 인공지능 기술, 특히 Large Language Models(LLM)의 발전은 언어 처리의 경계를 넘어서 다양한 분야에 혁신을 가져오고 있습니다. 이러한 모델들은 복잡한 언어 이해와 생성 능력을 바탕으로, 전통적인 언어 처리 작업을 넘어서 이미지 생성, 코드 작성, 심지어는 데이터 분석과 같은 다양한 비언어적 작업에도 활용되고 있습니다. 이 중에서도 특히 주목받는 분야가 바로 데이터셋 생성입니다. 고품질의 데이터셋은 기계학습 모델의 학습 및 평가에 있어 필수적인 요소이지만, 이를 생성하는 과정은 많은 시간과 노력을 요구합니다. 이러한 문제를 해결하기 위해 등장한 “GReaT” 논문은 LLM을 활용하여 실제와 유사한 Tabular Dataset을 생성하는 새로운 방법론을 제시합니다.
GReaT의 접근 방식은 기존의 데이터 생성 방법과는 확연히 구분됩니다. 기존 방법들은 주로 수치적 데이터나 범주형 데이터를 직접적으로 생성하는 데 초점을 맞추었으나, GReaT는 LLM의 언어 이해 및 생성 능력을 활용하여 데이터셋의 각 항목을 자연어 문장으로 변환하고, 이를 기반으로 새로운 데이터를 생성합니다. 이 과정에서 LLM은 데이터의 구조와 패턴을 학습하여, 실제 데이터셋과 유사한 새로운 데이터를 생성할 수 있게 됩니다. 이러한 방식은 특히 Tabular Data에 있어서 그 가치가 더욱 빛납니다. Tabular Data는 다양한 형태의 값들이 테이블 형태로 구성되어 있으며, 이를 통해 복잡한 현상이나 패턴을 분석할 수 있기 때문입니다.
GReaT의 핵심 아이디어는 단순하지만 그 파급 효과는 매우 큽니다. 이 방법론을 통해 생성된 데이터셋은 기계학습 모델의 학습 및 평가에 다양하게 활용될 수 있으며, 특히 데이터가 부족하거나 접근하기 어려운 분야에서의 연구에 큰 도움이 될 것입니다. 또한, 이러한 접근 방식은 LLM의 활용 범위를 더욱 확장시키며, 인공지능 기술의 새로운 가능성을 탐색하는 데 중요한 이정표가 될 것입니다. 이번 글에서는 GReaT가 어떻게 Tabular Dataset을 생성하는지, 그 과정에서 나타나는 독특한 특징과 장점에 대해 자세히 살펴보고, 이러한 방법론이 데이터 과학과 기계학습 분야에 어떤 새로운 기회를 제공할 수 있는지 탐구해보겠습니다.
2. 기존 방법의 문제점
최근 LLM은 단순한 언어 모델이 아니죠. 단지 대화를 하고, 요약하는 등의 일반적인 언어 문제를 넘어 다양한 Non Language Task까지 확장하고 있습니다. 그렇다면 LLM은 데이터를 생성할 수 있을까요? 정확히는 Tabular Data를 그럴듯하게 만들어낼 수 있을까요?
대표적인 Tabular Dataset을 예를 들어 생각해보겠습니다. Adult Income Dataset은 대표적인 Tabular Classification 데이터셋인데요. 나이, 학력, 직업, 성별 등 여러 특성에 따른 수입 정도를 구분하는 문제로 구성되어 있습니다. 만약 LLM이 Adult Income Dataset을 학습하면, 학습 데이터 분포와 비슷한 Tabular Dataset을 생성할 수 있을까요? 예를 들어 “40살의 남성 대졸 직장인의 수입은 5만$ 이상이다.” 라는 식으로 얘기를 해 줄 수 있을까요?
기존에도 LLM을 사용하지 않는 다양한 Tabular Dataset Generation 방법이 존재했는데요. Tabular Dataset의 특징 중 하나는 Numerical Value와 Categorical Value가 섞여 있다는 것입니다. 예를 들어 나이는 Numerical Value이고 성별은 Categorical Value에 해당하죠. 문제는 LLM을 사용하지 않고는 Categorical Value를 자연스럽게 생성하기가 쉽지 않다는 점입니다.
3. GReaT
이에 저자들은 LLM을 사용하여 Tabular Dataset을 생성하는 방법을 제안하는데요. 이번 논문은 Generation of Realistic Tabular data 의 약자를 따서 GReaT 이라고 부릅니다. LLM을 사용하는 방법들이 그렇듯이, GReaT도 동작 방법은 아주 간단한데요. 이번 챕터에서는 학습 방법과 추론 방법으로 나누어 GReaT의 동작 방법을 살펴보겠습니다.
3-1. Train
먼저 학습 과정을 살펴보겠습니다.
위 그림은 GReaT의 학습 과정을 전체적으로 표현한 그림입니다. 먼저 LLM이 Tabular Dataset을 학습하기 위해서는 Tabular 형태의 데이터 구성을 Text 형태로 변환해주어야 하는데요. 이 과정이 (a)과정에 표현되어 있습니다. Tabular는 각 인자별 이름을 갖고 있는데요. 위 예시에서는 Age, Education, Occupation에 해당합니다. 이렇게 각 인자들이 이름을 갖고 있기에 규칙 기반으로 (a)과정과 같이 쉽게 언어 형태로 변환해 줄 수 있습니다. 예를 들어 “나이는 39살이고, 대학을 졸업했고, 직업은 성직자고, 남성이고, 수입은 5만$ 미만이다.” 와 같이 하나의 문장으로 변환해주는 것이죠. 이렇게 변환된 하나의 문장이 하나의 학습 데이터가 되는 겁니다.
(b)과정에서는 이렇게 만든 문장의 Feature 순서를 섞어주는 모습을 표현하고 있습니다. 논문에서는 Feature Order Permutation이라고 표현하고 있습니다. 이 부분이 아주 재미있는 아이디어인데요. 이렇게 Feature 순서를 섞어줌으로서 Feature Order Dependency를 없애주는 효과를 줄 수 있습니다. 이러한 트릭은 Inference 단계에서 재미있는 효과를 만들어내는데요. 이 부분은 Inference 단계에서 살펴보겠습니다.
이제 이렇게 만든 ‘순서가 섞인’ 문장은 Pretrained LLM의 입력으로 들어가 Fine Tuning을 진행합니다. 이 과정은 (c)에 표현되어 있습니다. 이미 기본적인 언어 능력을 갖춘 LLM을 사용해서 나이, 학력, 직업, 성별에 따른 수입 정도를 추가로 학습해주는거죠. 이렇게 학습한 LLM은 학습 데이터에 존재하는 특성에 따른 수입 정도를 학습하게 될 것이고, 자연스럽게 그 특성을 이해하게 되겠죠?
3-2. Inference
이제 이렇게 학습한 LLM이 그럴듯한 데이터를 생성해내는 과정을 살펴보겠습니다. 즉 “나이는 몇살이고, 학력은 어떻고, 직업은 무엇이고, 성별은 무엇이고, 수입은 어느정도다” 라는 문장을 만들어 내는 과정인데요. LLM 입장에서는 Inference 과정이기에, 이러한 Data Generation 과정을 Inference 과정으로 부르겠습니다.
위 그림은 GReaT Inference 전체 과정을 표현한 그림입니다. 먼저 (a)과정을 살펴볼게요. 다양한 형태의 문장을 만들어준 모습인데요. 이렇게 만들어준 입력을 LLM에 넣어주고 있죠. 이렇게 입력을 받은 LLM은 이후 문장을 자연스럽게 생성해줄텐데요. 여기서 학습 과정에서 수행해준 Feature Order Permutation의 효과가 나옵니다. Feature Order Permutation을 해 준 덕분에 Feature Order에 대한 Dependency를 없애주었구요, 따라서 어떠한 순서로 Feature가 입력되어도 자연스럽게 반응할 수 있게 되었죠. 만약 Feature Order Dependency가 있었다면 반드시 “나이”, “학력”, “직업”, “성별” 등의 순서로 입력을 해 주어야겠죠?
(b)에서는 이렇게 입력 받은 ‘불완전한 문장’에 대해 나머지 문장을 자연스럽게 생성해주는 모습을 볼 수 있습니다. “나이” 만 입력 받았을 때에는 자연스럽게 “나이” 정보부터 시작해 이후 Feature들을 생성하고 있고요. “나이는 26살이고” 까지 입력 받았을 때에도 마찬가지로 자연스럽게 이후 Feature부터 이어서 생성해주는 모습을 볼 수 있습니다.
(c)에서는 이렇게 문장으로 만들어낸 데이터를 Tabular 형태로 변환하는 모습을 보여주고 있습니다. 이는 학습 과정에서 Tabular 데이터를 Text 형태로 변환했던 과정의 정확하게 반대 과정인데요. 만들어진 Text가 일정한 형태를 갖고 있기에 마찬가지로 규칙 기반으로 쉽게 Tabular 형태로 변환할 수 있습니다.
4. 실험 결과
이렇게 LLM이 학습하고, 만들어낸 Tabular 데이터는 과연 얼마나 실제 데이터와 비슷할까요? 이번 챕터에서는 두 가지 실험 결과를 통해 GReaT이 만들어낸 데이터가 실제와 유사함을 살펴보겠습니다.
4-1. MLE
첫 번째로 살펴볼 실험은 MLE (Machine Learning Efficiency) 입니다. 일반적으로 Tabular Dataset은 다양한 ML 모델들이 잘 학습하고 Classification, Regression 문제 등에서 좋은 성능을 보여주는데요. 그렇다면 GReaT이 만들어낸 데이터로 ML 모델을 학습하고, 실제 데이터로 테스트하면 그 성능은 어떨까요? 실제 데이터와 유사하게 생성했을수록 더 좋은 성능이 나오겠죠?
위 표는 이러한 아이디어에 착안해서 다양한 Data Generation 모델들의 성능을 비교한 그림입니다. ML 모델은 LR(Linear/Logistic Regression), DT(Decision Tree), RF(Random Forest)를 사용했습니다. Original 열은 데이터셋 별 기존 학습 데이터를 학습했을때의 성능을 의미합니다. GReaT을 비롯하여 VAE방식, GAN 방식들과 성능을 비교하는 모습을 볼 수 있습니다.
Original을 제외하고, GReaT의 성능이 가장 좋은 모습을 볼 수 있습니다. 이를 통해 기존 VAE, GAN 방식보다 GReaT 방식의 LLM이 생성한 Tabular Dataset이 더욱 실제 데이터 분포와 근사하다는것을 알 수 있습니다.
4-2. DCR
두 번째로 살펴볼 실험은 DCR (Distance to Closest Records) Histogram 입니다. 이 실험은 실제 데이터 중 생성된 데이터와 가장 가까운 거리를 측정하고, 이렇게 측정된 거리들을 Histogram으로 표현한 것입니다.
이렇게 만들어진 Histrogram은 Original Test Data의 Histogram과 유사할 수록 실제 데이터에 가깝게 만들어낸것이라고 할 수 있겠죠? 위 그림을 보면 GReaT이 만들어낸 Histogram이 Original Test Data Histogram과 가장 유사한 모습을 볼 수 있습니다. 이를 통해 마찬가지로 기존 VAE, GAN 방식보다 GReaT 방식의 LLM이 생성한 Tabular Dataset이 더욱 실제 데이터 분포와 근사하다는것을 알 수 있습니다.
5. 교훈
이번 논문도 LLM이 설계를 할 수 있을까? 라는 의문을 따라가다 만나 내용을 정리해보았는데요. 최근 AI 계에서는 이렇게 ‘설계’를 부르는 다양한 워딩이 존재하는것 같습니다. 목표 성능을 내는 설계를 찾는 과정이라는 의미에서 ‘Inverse Design’ 이라고도 하고요. 이번 GReaT에서 처럼 그럴듯한 데이터를 만들어내는 과정이라고 생각해보면 ‘Data Generation’이라고도 할 수 있겠네요.
이번 GReaT에서 재미있는 아이디어 중 하나는 Feature Order Permutation이었는데요. 이렇게 간단한 아이디어로 Data Generation, 즉 설계를 LLM을 통해 손쉽게 구현할 수 있습니다. Inference 과정에서는 내가 원하는 목표 성능을 입력해주면, 자연스럽게 LLM이 학습 데이터에 기반하여 목표 성능을 내기 위한 설계 인자를 생성해주게 되기 때문이죠.
6. 마치며
GReaT 논문의 제안 방법론은 Large Language Models(LLM)을 활용하여 Tabular Dataset을 생성하는 혁신적인 접근 방식을 제시합니다. 이 방법론은 데이터 과학과 기계학습 분야에서 데이터셋 생성의 새로운 지평을 열며, 특히 데이터 접근성이 제한적인 분야에서의 연구와 개발에 큰 도움이 될 것으로 기대됩니다. GReaT는 LLM의 언어 이해 및 생성 능력을 활용하여 실제 데이터셋과 유사한 데이터를 효과적으로 생성함으로써, 데이터 생성 과정에서의 시간과 노력을 대폭 줄여줍니다. 이러한 접근 방식은 기존의 데이터 생성 방법론을 보완하고, 향후 다양한 분야에서의 응용 가능성을 제시합니다.
본 논문 리뷰를 통해 GReaT 방법론의 핵심 아이디어와 구현 과정, 그리고 실험 결과를 살펴보았습니다. 실험 결과는 GReaT가 생성한 데이터가 기계학습 모델의 학습 및 평가에 유용하게 활용될 수 있음을 보여줍니다. 또한, 이 방법론은 데이터의 구조와 패턴을 학습하여 실제와 유사한 데이터를 생성할 수 있는 LLM의 능력을 입증합니다. 이는 LLM의 활용 범위를 넓히고, 인공지능 기술의 새로운 가능성을 탐색하는 데 중요한 기여를 합니다.
앞으로 GReaT 방법론은 데이터 과학과 기계학습 분야에서 더욱 발전될 것으로 기대됩니다. 특히, 데이터 접근성이 제한적인 분야에서의 연구와 개발에 큰 도움을 줄 수 있으며, 데이터 생성 과정의 효율성을 높이는 데 기여할 것입니다. GReaT는 LLM을 활용한 데이터 생성의 새로운 패러다임을 제시하며, 이를 통해 데이터 과학과 기계학습 분야의 발전을 촉진할 것으로 기대됩니다. 이러한 혁신적인 접근 방식은 앞으로도 계속해서 연구되고 발전해야 할 중요한 주제입니다.
Thank you for your sharing. I am worried that I lack creative ideas. It is your article that makes me full of hope. Thank you. But, I have a question, can you help me?
Sure, What can I do for you?