AI의 자연어 처리를 위한 핵심 기술, LLM

AI의 자연어 처리를 위한 핵심 기술, LLM

ChatGPT의 등장 이후 다양한 생성형 AI가 출시되고 있는데, 이와 관련해서 주목받고 있는 분야가 대규모 언어 모델 또는 거대 언어 모델이라 불리는 LLM 분야다. ChatGPT가 등장하기 전에도 인간이 컴퓨터와 대화하는 형태의 AI는 존재했는데(ex. Siri, Bixby, Google Assistant 등), 대규모 언어 모델이 등장하면서 정확도가 비교도 안 될 정도로 높아졌기 때문이다.
LLM은 무엇이길래 이전까지 AI에 사용됐던 언어 모델과 비교해 월등한 성능을 자랑하는 것일까? 왜 생성형 AI를 연구하는 글로벌 빅테크 회사들이 막대한 비용을 쓰면서까지 고가의 엔비디아의 AI 가속기를 구매해 LLM을 학습시키는 것일까? 이번 기사에서 LLM의 개요, 원리, 장점, 활용예 등을 살펴보고자 한다.


네 줄 요약

  • LLM은 방대한 데이터와 고급 딥 러닝 기술을 이용해 자연어 처리를 효과적으로 실행하기 위해 만든 모델이다.
  • LLM은 토큰화→벡터화→신경망 통해 특징 파악→문맥 이해→디코딩의 과정을 거친다.
  • 기업이 LLM을 도입하면 효율화, 자동화, 분석 정보 생성, 고객 경험 개선 등의 메리트를 누릴 수 있다.
  • LLM 도입에는 높은 비용, 개인 정보 보호와 보안 문제, 결과의 정확도와 편향 문제 등 한계점도 존재한다.

LLM은 무엇인가?

LLM(Large Language Models)은 방대한 텍스트 데이터와 고급 딥 러닝 기술을 사용하여 구축된 자연어 처리(NLP : Natural Language Processing) 분야의 혁신적인 기술이다. 참고로 자연어 처리란 컴퓨터가 인간이 말하는 언어를 이해하고, 또 인간이 이해할 수 있게 말하도록 만드는 모든 과정을 말하는데, 얼핏 이 개념을 이해하기는 쉬워도 실제 자연어 처리를 위해선 정보 검색, 정보 추출, 문장/문서 분류, 단어 분류, 구문 분석, 감정 분석, 의미역 결정, 음성 인식, 자동 대화 시스템 등등 매우 많은 분야의 첨단 기술이 총망라되는 고도의 복합 융합 기술이다.
LLM이 기존의 언어 모델과 크게 차별되는 부분은 ‘계산량’(컴퓨터가 처리하는 작업량), ‘데이터양’(입력된 정보량), ‘파라미터 수’(딥 러닝 기술 고유 계수의 집합체)라는 세 가지 부분인데, 이들 요소를 크게 강화함으로써 언어를 더 높은 수준으로 이해할 수 있도록 만든다.
물론, 구축된 LLM을 그대로 사용하는 건 아니다. 알기 쉽게 표현하자면 최적화, 언어 모델과 관련한 전문 용어를 사용하자면 ‘파인 튜닝’을 통해 정보 추출, 문장/문서 분류, 문장 요약, 감정 분석, 텍스트 생성, 질문 응답과 같은 다양한 자연어 처리 작업에 맞춤 적용할 수 있다.


여기서 잠깐!

언어 모델

언어 모델은 사람들이 말하거나 쓰는 ‘단어’ 또는 ‘문장’을 기반으로 단어의 출현 확률을 모델링하는 기술이다. 구체적으로는 대량의 텍스트 데이터에서 학습하여 특정 단어 뒤에 어떤 단어가 어느 정도의 확률로 나타나는지 예측하는 방식인데, 예를 들어 ‘오늘 점심 메뉴는’이라는 문장 뒤에는 ‘파스타’, ‘햄버거’, ‘설렁탕’ 등의 단어가 높은 확률로 나타난다고 판단하고, ‘지하철’, ‘검은색’ 등의 단어는 낮은 확률로 판단하여 언어를 모델링한다. 이처럼 언어 모델은 통계적으로 단어의 출현 확률을 분석함으로써 인간의 언어를 이해하고 예측하게 된다.

파인 튜닝

파인 튜닝은 기계 학습에서 사용되는 용어로 미세 조정을 의미한다. 학습된 모델을 다른 데이터셋을 사용하여 다시 훈련하고, 새로운 서비스나 작업에 맞게 기계 학습 모델의 매개변수를 조정하는 방식으로 진행된다.


LLM은 생성형 AI, ChatGPT와 어떻게 다른가?

LLM과 생성형 AI는 모두 인공 지능(AI)의 한 유형이지만, 계층과 특화 분야에서 다른 특징을 가지고 있다. 생성형 AI는 텍스트, 이미지, 음성 등의 데이터를 자율적으로 생성할 수 있는 AI 기술을 전반적으로 일컫는 이름이며, LLM은 자연어 처리에 ‘특화’한 생성형 AI로 대량의 텍스트 데이터를 학습하여 언어 이해를 더 높은 수준으로 실현한 형태를 말한다.

생성형 AI가 더 포괄적인 의미를 담고 있다.

ChatGPT 역시 LLM과 마찬가지로 인공 지능(AI)의 한 유형이지만, 기능과 관계에서 구별되는 특징을 가지고 있다. LLM은 대량의 텍스트 데이터를 학습하여 언어를 높은 수준으로 이해하는 기술인 것과 달리, ChatGPT는 LLM을 응용해 사람과 자연스럽게 대화하는 부분에 초점을 맞춘 대화형 AI(와 이를 개발한 OpenAI가 제공하는 서비스명)다.

LLM의 원리

LLM이 어떻게 언어를 이해하고 결과물을 내보내는지를 알기 위해선 LLM의 원리를 알아야 한다. LLM은 대략 5단계의 과정을 거쳐 언어를 이해하고 결과물을 내보낸다.

1단계. 토큰화(Tokenization)

토큰화는 텍스트 데이터를 컴퓨터가 이해하기 쉬운 작은 단위인 토큰으로 나누는 과정을 말한다. 토큰은 단어, 구두점, 기호 등 텍스트 데이터의 최소 단위로, 영어의 경우 보통 단어나 구두점이 토큰으로 사용된다. 토큰화를 실행하는 이유는 컴퓨터의 한계 때문이다. 텍스트 데이터는 그대로 컴퓨터가 이해할 수 없으므로 숫자 데이터로 변환하는 작업이 필수인데, 숫자 데이터로 변환하기 위한 준비 단계로 토큰화가 실행되는 것이다.
토큰화는 LLM이 텍스트 데이터를 이해하고 처리하는 데 필수적인 중요한 기술이다. 토큰화를 통해 컴퓨터는 텍스트 데이터를 효율적으로 처리할 수 있게 되며, 기계 학습 모델의 정확도도 향상된다.
물론 토큰화가 만능은 아니다. 대소문자를 잘못 인식하거나(Hello는 하나의 토큰으로 인식하지만, HELLO는 ‘H’, ‘EL’, ‘LE’로 인식) 관용구에 사용되는 공백을 별도의 토큰으로 인식해 전혀 다른 결괏값을 생성하는 등 다양한 오류를 발생시킨다. 또, 비영어권 언어는 토큰화가 제대로 이루어지지 않아 더 비싼 요금을 지불하면서도 정확한 결과를 얻지 못하는 문제도 있다. 이들 문제는 계속해서 개선이 진행되고 있다.

2단계. 벡터화(Vectorization)

벡터화는 토큰화된 데이터를 숫자 벡터로 변환하는 과정을 말한다. 앞서 설명한 대로 토큰화로 분할된 데이터를 컴퓨터가 그대로 분석할 수 없기에 토큰을 숫자로 변환하여 컴퓨터가 정보를 분석할 수 있도록 하는 처리가 이어져야 하는데, 이 과정이 백터화다. 벡터화를 통해 컴퓨터는 토큰(단어의 최소 단위)을 숫자로 처리할 수 있게 되며, 언어를 더 높은 수준으로 이해할 수 있게 된다.

3단계. 신경망을 통한 학습

신경망(Neural Network)은 LLM의 핵심 부분으로, 여러 층으로 구성된 복잡한 구조를 지니고 있다. 텍스트 데이터가 신경망을 통과할 때 각 층에서 데이터는 변환되고 조정되며, 이 과정에서 모델은 입력 데이터의 특징을 추출하고 학습을 진행한다. 또한, 신경망은 단어의 출현 확률뿐만 아니라 단어 간의 관계나 문맥도 고려하여 학습하므로 텍스트 데이터의 문맥이나 뉘앙스를 이해할 수 있게 된다. 즉, 신경망을 통한 학습을 거침으로써 LLM은 고급 언어 처리 능력을 갖추게 되는 것이다.

4단계. 문맥 이해

문맥(컨텍스트) 이해는 LLM이 텍스트 데이터를 이해하기 위해 필수적인 기능이다. 신경망을 통해 입력된 텍스트의 문맥이나 배경을 파악하고 이를 기반으로 의미를 해석하는데, 이를 통해 LLM은 단순한 단어 나열이 아니라 문장 전체의 의미나 문장 간의 관련성을 이해할 수 있게 된다.
예를 들어 ‘겨울밤, 창밖에 눈이 내린다’라는 문장의 경우, LLM은 문맥 이해를 통해 ‘눈’이 발음기호 ‘눈’으로 표시되는 ‘눈(eye)’가 아니라 발음기호 ‘눈ː’으로 표시되는 ‘눈(snow)’임을 판단할 수 있다. 문맥 이해는 LLM이 인간에 가까운 이해력과 응답 능력을 발휘하기 위해 필수적인 기능으로 LLM은 문맥 이해를 통해 다양한 작업을 수행할 수 있게 된다.

5단계. 디코딩

디코딩(출력 벡터를 수정하여 텍스트로 변환)은 LLM 처리의 최종 단계로, 출력 벡터를 수정하여 인간이 이해할 수 있는 자연스러운 텍스트 데이터로 변환하는 작업이다. LLM 내부에서 처리되던 벡터 데이터를 수정하여 가장 확률이 높은 단어나 구절을 선택함으로써, 인간이 이해할 수 있는 자연스러운 텍스트 형태로 출력하며, 이를 통해 LLM은 인간과 자연스러운 대화를 나눌 수 있게 된다.

지금까지 발표된 주요 LLM

2018년에 구글이 대규모 언어 모델 BERT를 공개한 이후 많은 LLM이 탄생했다. GPT-3, LaMDA, PaLM, LLaMA 등 많은 LLM이 현재 운용되고 있는데, 혹시 이들 언어 모델 대부분이 기본적으로 ‘Transformer’라 불리는 딥 러닝 모델 원리를 이용하고 있다는 걸 알고 있는가?
‘Transformer’는 2017년에 발표된 획기적인 연구 논문 ‘Attention Is All You Need’에서 제시된 딥 러닝 모델로 기존 기술과 비교해 처리를 간략화함으로써 더 빠르고 정확한 결과를 도출해내도록 만드는 원리가 적용됐다. 현재 생성형 AI와 이를 뒷받침하는, 자연어 처리를 위한 LLM의 눈부신 진화는 ‘Transformer’의 바탕 위에서 가능했다 해도 과언이 아닐 정도다. 참고로 CahtGPT의 ‘T’도 ‘Transformer’를 의미한다.

지금까지 등장한 주요 LLM과 개발사.

LLM은 왜 주목받는가?

기계 학습 모델은 텍스트 생성, 콘텐츠 요약, 번역, 리라이팅, 분류, 카테고리화, 분석 등을 수행할 수 있는데, 이런 기능은 창의성을 보완하고 어려운 문제를 해결하기 위한 강력한 수단으로 이용할 수 있다. 이를 통해 우수한 LLM은 기존의 PC에서는 상상하기 어려웠던 방식으로 언어를 이해하고 활용할 수 있다. LLM은 실제 업무 환경에서 다음과 같은 메리트를 제공한다.

효율화, 자동화

LLM은 고객 지원, 데이터 분석, 콘텐츠 생성처럼 언어 관련 업무를 보조하거나 완전히 담당할 수 있다. 회사는 자동화를 통해 인적 자원을 전략적인 업무에 할당하고 운영 비용을 절감할 수 있다.

분석 정보 생성

LLM은 대량의 텍스트 데이터를 신속하게 검토할 수 있으므로 기업은 소셜 미디어, 리뷰, 연구 논문 등의 소스를 수집해 시장 동향이나 고객 피드백을 더 깊게 이해하고, 이를 비즈니스 의사 결정에 활용할 수 있다.

고객 경험 개선

LLM은 기업이 고도로 맞춤화된 콘텐츠를 고객에게 제공하여 참여도를 높이고 사용자 경험을 높이는 데 도움이 된다. 24시간 고객 지원을 제공하는 챗봇 도입, 마케팅 메시지를 사용자에 맞춰 최적화, 언어 번역 및 다문화 커뮤니케이션을 촉진하는 등 다양한 방법으로 활용할 수 있다.

LLM의 한계와 과제

LLM은 앞서 설명한 것처럼 다양한 메리트를 우리에게 제공하지만, 이에 못지 않게 해결해야 할 다양한 문제점을 내포하고 있다.

막대한 비용

LLM 개발, 훈련 및 배포에는 많은 리소스가 필요하다. LLM 대부분이 자연어 처리 능력을 이용해 사전에 훈련되어 더 복잡한 LLM을 구축하기 위한 언어 이해의 기준선을 제공하는 파운데이션 모델(PM)을 기반으로 구축되는 건 바로 이 때문이다. 오픈 소스 또는 오픈 소스 라이선스의 LLM은 무료로 이용할 수 있으므로 막대한 비용을 들여 자체적으로 LLM을 개발할 여유가 없는 조직에 이라면 이를 우선시하는 게 좋다.

개인 정보 보호와 보안

LLM은 많은 정보에 접속해야 하며, 고객 정보나 고유한 비즈니스 데이터가 이들 정보에 포함될 수 있다. 최근에는 개인 정보 보호와 보안 관련해서 규제가 더 엄격해지고 있으므로 서드파티 프로바이더가 배포하는 모델에 접속할 때처럼 기밀 데이터에 접속할 때는 주의해야 한다.

정확도와 편향

딥러닝 모델이 통계적으로 편향된 데이터나 모집단을 정확하게 반영하지 않는 데이터로 훈련됐을 경우 올바른 결과가 도출되지 않을 수 있다. 안타깝게도 요즘에는 특정 계층의 편견이 인공 지능에 반영되는 경우가 많아지면서, 편견이 있는 알고리즘이나 편향된 출력을 초래할 수 있는 위험성은 높아지고 있다. 조직은 생산성과 성과를 높이기 위해 AI를 더 적극적으로 활용하려고 하지만, 정보 오염과 편향을 최소한으로 줄이기 위한 대책을 세우는 것에는 상대적으로 관심이 적다. 정확도를 높이고 편향을 줄이기 위해서는 포괄적인 디자인 프로세스와 수집한 데이터 내의 대표적 다양성을 꼼꼼히 고려하는 것이 필수다.

AI의 정확도와 편향 오류를 뜻하는 할루시네이션(Hallucination)은 현재로서는 근원적으로 방지할 수가 없다. 어떻게 이를 최소한으로 줄이고, 발생한 오류를 최대한 빨리 수정하느냐가 중요하다.