[인공지능 모델 학습방법] AI 학습방법 완벽 정리!

투이컨설팅 DSB 서지은

인공지능(AI) 학습은 컴퓨터가 데이터를 통해 패턴을 인식하고, 그 패턴을 바탕으로 예측이나 결정을 내릴 수 있도록 하는 중요한 과정이다. 사전학습, 파인튜닝, RAG 등 AI학습을 위한 핵심 방법들의 개념, 목표, 절차 등을 알아보고 그 차이를 이해해보고자 한다.

사전학습

사전학습은 AI 모델이 특정 태스크에 대해 훈련되기 전에, 대규모 데이터셋을 이용하여 일반적인 언어적, 인지적 패턴을 학습하는 과정이다. 사전학습을 통해 모델은 특정 작업에 대한 지식을 갖추지 않고도, 인간이 학습하는 것처럼 일반적인 규칙과 패턴을 이해할 수 있는 능력을 갖추게 된다.

사전학습의 목적은 AI 모델이 기본적인 언어적, 시각적, 인식적 이해 능력을 획득하도록 돕는 것이다. 예를 들어, 자연어처리에서는 언어 모델이 수많은 문서 데이터를 기반으로 단어 간의 관계, 문법, 의미적 맥락 등을 이해하도록 훈련된다. 이렇게 학습된 모델은 다양한 언어 작업을 해결할 수 있는 기본적인 능력을 가진다.

구분

내용

목표

§  언어 이해: 모델이 다양한 텍스트 패턴과 의미를 인식할 수 있도록 훈련.

§  언어 모델링: 주어진 문맥에서 다음 단어를 예측하거나, 문장을 생성하는 능력을 배양

§  범용 지식 습득: 텍스트 데이터에서 일반적인 정보와 사실을 학습

방법

§  (지도학습) 입력값과 결과값(정답 Lable)이 지정된 데이터 세트를 사용하여 데이터를 분류하거나, 결과를 정확하게 예측하는 알고리즘을 학습

§  (비지도학습) 정답(Lable)을 주지 않고 데이터가 가지고 있는 특징을 기반으로 학습

§  (자기지도학습) 정답(Lable)이 없는 데이터 자체로부터 정답(Lable)을 생성하여 이를 이용해 학습

§  (준지도학습) 정답(Lable)이 지정된 데이터와 정답(Lable)이 지정되지 않은 데이터를 모두 사용하여 분류 및 회귀 작업을 위한 인공지능(AI) 모델을 학습

§  (강화학습) 룰 기반 학습 방법으로 정해진 룰 안에서 보상을 많이 얻는 방향으로 학습

사용 데이터

§  일반적인 텍스트 데이터(: 웹텍스트, , 뉴스, 학술자료, 소셜미디어 데이터 등)

사전학습을 통한 단순 언어모델링 만으로는 질의-응답 형식의 문제를 해결하거나 특정 도메인에 특화된 서비스 제공이 불가능하므로 사전학습은 파인튜닝으로 가기위한 필수적인 과정으로 볼 수 있다. 사전학습은 대량의 데이터셋을 AI모델에 학습시키는 과정이므로 대규모 데이터와 긴 학습시간, 막대한 컴퓨팅 자원을 필요로 한다.

파인튜닝

파인튜닝은 특정 도메인이나 작업에 높은 적합성을 확보하기 위해 이미 사전학습된 대규모 언어모델에 특정 데이터셋을 사용하여 추가적인 학습을 수행하는 것을 말한다.

AI모델은 파인튜닝을 통해 특정 문제 해결 능력이 강화되고, 태스크에 특화된 성능을 보유할 수 있다. 예를들어 공무원 전용 AI서비스를 구축하기 위해서는 사전학습된 AI모델에 공공에서 생산ㆍ활용되는 문서, 보고서, 지침 등의 데이터를 추가학습 시켜 공공에 특화된 AI모델을 만들고 이 모델을 AI 서비스에 활용 하는 것이다.

일반적으로 지도학습을 통해 파인튜닝이 수행되나 도메인 특성에 따라 자체 지도학습, 비지도학습 또는 준지도학습, 강화학습을 사용할 수도 있다.

구분

내용

목표

§  특정 태스크 최적화: 사전학습된 모델을 특정 태스크 자연어 처리에 최적화

§  도메인 특화 지식 학습: 도메인 특화 용어, 문맥 및 표현 학습 및 처리

방법

§  (전체모델 파인튜닝) 전체 모델의 모든 파라미터를 업데이트하는 방법

§  (부분 파인튜닝) 전체 모델의 파라미터 중 일부만 업데이트하는 방법

§  (학습률 조정) 적정 학습률을 사용하여 과도한 업데이트 방지 및 미세조정 최적화

§  (조기종료) 모델 성능 모니터링 중 성능향상이 멈추면 학습을 일찍 종료하는 방법

절차

§  ① 사전학습된 기본모델에 서비스 시나리오 기반의 질의를 활용하여 사전테스트를 진행하여 파인튜닝 학습이 필요한 영역ㆍ요소 정의

§  ② 정의된 영역ㆍ요소를 학습하기 위한 파인튜닝 학습데이터(입력값과 결과값(정답 Lable)이 지정된 데이터 세트) 준비

§  ③ 모범 질문/답변을 활용하여 파인튜닝 학습을 반복진행, 모델 파라미터 조정

§  ④ 생성된 특화AI모델을 AI서비스에 활용

사용 데이터

§  특정 도메인에서 생산된 또는 특정 도메인을 위한 문서, 보고서, 자료 등
) 공공부문 파인튜닝 데이터: 보도자료, 연설문, 공문서, 법령, 지침 등

사전학습을 통해 모델은 이미 방대한 언어적 지식을 내재화하고 있기 때문에, 파인튜닝은 사전학습에 비해 상대적으로 적은 데이터를 필요로 한다. 그러나 입력값과 결과값(정답Lable)이 지정된 데이터 세트를 적게는 수천개~ 많게는 수만개를 준비하기 위해 많은 시간과 비용이 투입된다.

또한 파인튜닝된 AI모델은 추가학습된 특정 도메인에 대해서만 전문적인 답변을 제공하며 그 외 학습되지 않은 도메인에 대해서는 사전학습과 동일한 수준의 일반적 서비스를 제공한다.

RAG(Retrieval Augmented Generation, 검색 증강 생성)

RAG는 검색기반 생성 모델로 사용자가 제공한 질의에 대한 답을 외부 DB에서 검색하고 그 결과를 바탕으로 질의에 대한 응답을 생성하는 방식이다.

이를 위해 RAG는 벡터[1]기반의 지식 RAG 지식 DB를 구축하고, AI모델이 구축된 RAG 지식DB에서 검색을 통해 지식을 증감함으로써 학습하지 않은 영역에 대한 답변을 할 수 있도록 한다.

사전학습 및 파인튜닝된 AI모델은 학습되지 않은 지식의 영역에 대해서는 잘못된 정보를 제공하는 환각현상(Hallucination)이 나타나는데 RAG를 이용하면 학습되지 않은 내용에 대해 RAG 지식 DB 검색을 통해 정확한 답변을 얻을 수 있고 해당 답변이 어떤 데이터를 참조하여 생성되었는지도 알 수 있다.

예를들어 “2024년 노벨문학상 수상자는 누구인가요?”라는 질문에 기존 AI모델은 학습되지 않았거나 학습의 시기가 2024년 이전이라면 부정확한 답변을 내놓는 반면, RAG는 해당 질문을 RAG 지식 DB에서 검색해 ‘한강’이라는 정확한 답변과 출처를 제공할 수 있다.

구분

내용

목표

§  정확성 향상: 외부 지식을 활용하여 학습하지 않은 영역의 정확한 정보 생성

§  전문성 제공: 다양한 도메인 지식이나 세부 정보를 요구하는 작업에 전문적 답변 제공

§  최신정보 제공: 실시간으로 검색된 최신정보 제공

방법

§  (정보검색사용자의 질문이나 입력을 분석하여 관련된 정보를 RAG DB에서 검색

§  (증강) 검색된 정보를 원래의 질문이나 프롬프트와 결합하여 컨텍스트를 풍부하게 형성

§  (생성) 증강된 입력을 바탕으로 AI모델이 최종 응답을 생성

절차

§  ① 텍스트 데이터를 벡터 형식*으로 변환하여 벡터 DB 구축

§  ② 입력된 사용자의 질문을 벡터화

§  ③ 벡터DB에서 사용자 질문과 가장 관련성이 높은 항목을 추출 & AI모델에 제공

§  AI모델은 벡터DB에서 추출된 관련 정보를 바탕으로 사용자 질문에 대한 최종 답변 생성, 이 과정에서 정확한 출처(근거)도 함께 제공

주요

역할

§  (응답의 신뢰성 확보) AI모델이 학습하지 않은 영역에 대한 답을 RAG DB를 검색하여 찾고 출처(근거)까지 제공 가능. 환각현상 감소

§  (질문 맥락에 맞는 답변생성) RAG는 질문이나 요청에 직접적으로 관련된 정보를 검색하고 이를 바탕으로 응답을 생성, 질문 맥락에 정확히 맞는 답변 제공

§  (범용성) RAG DB에 있는 다양한 도메인의 데이터에 접근할 수 있어 새로운 주제나 도메인에 대한 질문에도 유영하게 대응 가능

§  (실시간 정보 반영) AI모델을 학습하는 방법이 아닌 RAG DB를 업데이트 하는 방식으로 새로운 데이터를 추가할 수 있으므로 최신의 데이터를 기반으로 답변 생성 가능

구성

§  RAG 지식 DB: 검색의 대상이 되는 데이터베이스

§  검색엔진: 사용자 쿼리(질문) 분석 및 지식DB에서 관련 정보를 찾는 역할

§  AI모델: 검색된 정보를 바탕으로 최종 응답을 생성하는 역할 수행

사용 데이터

§  웹 페이지, 뉴스 기사, 학술 논문, 기업 내부 문서 등 다양한 형태의 텍스트 데이터

§  특정 도메인에서 생산ㆍ활용되는 도메인 고유 데이터

§  기타 실시간 업데이트 데이터 & 정기적 업데이트 데이터

AI학습은 사전학습(Pretraining), 파인튜닝(Finetuning), RAG(Retrieval-Augmented Generation) 등의 다양한 방식으로 구분된다.

사전학습(Pretraining)은 모델이 일반적인 언어 지식을 습득하도록 하고, 파인튜닝(Finetuning)은 특정 태스크에 맞게 모델을 최적화하여 성능을 높인다. RAG(Retrieval-Augmented Generation)는 외부 정보를 검색하여 모델의 응답을 강화하는 방식으로, 특히 정확한 정보 제공과 효율성을 동시에 추구하는 데 유용하다.

AI모델이 어떠한 방법으로 학습되어야 하는지는 지금까지 알아본 AI학습 방법들에 대한 정확한 이해와 AI서비스 목표, 보유데이터 특성, 성능 요구사항 등을 고려하여 결정하여야 한다.



[1] 텍스트, 이미지, 오디오와 같은 다양한 비수학적 데이터를 숫자의 배열로 다차원 공간의 점으로 표현하는 방식. 벡터는 숫자의 배열이며 각 숫자는 차원을 따라 객체가 있는 위치를 나타냄
(IBM 홈페이지: https://www.ibm.com/kr-ko/topics/embedding)