메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

한빛랩스 - 지식에 가능성을 머지하다 / 강의 콘텐츠 무료로 수강하시고 피드백을 남겨주세요. ▶︎

IT/모바일

LLM(대규모 언어 모델)은 어떻게 읽고 쓰는 것을 배울까요?

한빛미디어

|

2024-02-02

|

by 시난 오즈데미르

14,054

ChatGPT가 막을 올린 AI 시대가 이제는 본격적인 LLM 경쟁 시대로 흘러갈 것으로 예상됩니다. 가장 널리 알려진 GPT를 비롯해 Gemini, BERT, LLaMA 등 글로벌 IT 기업들이 경쟁하듯 LLM 모델을 선보였을 뿐 아니라 네이버의 CLOVA, 카카오브레인의 코GPT2.0 등 국내 기업에서도 LLM을 앞다퉈 공개하고 있습니다. 바야흐로 LLM 천하인 것입니다.

 

LLM은 분명 우리의 삶에 놀랍고도 편리한 변화를 일으켰습니다. 하지만 거대한 크기와 많은 복잡성 때문에 여전히 접근하기 어려운 주제이기도 합니다. 실무자 조차 자신의 업무에 적용하기 쉽지 않구요.

 

그래서 오늘은 LLM의 신비를 조금이나마 풀어볼까 합니다. 어려운 전문 용어로 여러분을 압도하고자 하는 것은 아닙니다. 여러분이 복잡한 개념을 쉽게 이해하고, 연관 짓고, 더 나아가 LLM이라는 광대한 바다를 탐험하고 싶도록 약간의 힌트를 드리려는 거죠.

 

우선 LLM이란 무엇인지, 특징은 무엇이 있을지 살펴보는 것부터 시작해보겠습니다.

 

☑️LLM(대규모 언어모델)이란?

LLMLarge Language Model(대규모 언어 모델)은 대부분 트랜스포머 아키텍처에서 파생된 AI 모델로, 사람의 언어, 코드 등을 이해하고 생성하기 위해 설계되었습니다. 이러한 모델들은 방대한 양의 텍스트 데이터로 학습되어, 사람 언어의 복잡성과 뉘앙스를 포착할 수 있습니다. LLM은 간단한 텍스트 분류부터 텍스트 생성에 이르기까지 언어 관련 작업을 넓은 범위에서 높은 정확도로 유창하고 유려하게 수행할 수 있습니다.

 

의료 산업에서 전자 의무 기록(EMR) 처리, 임상시험 매칭, 신약 발견에 LLM을 사용되고 있으며 금융 분야에서는 사기 탐지, 금융 뉴스의 감정 분석, 심지어 트레이딩 전략에도 활용되고 있습니다. 챗봇과 가상 어시스턴트를 통한 고객 서비스 자동화에도 사용되고 있죠. 예로 든 분야 외에도 산업 전반에서 쓰이고 있다고 말해도 무방합니다. LLM의 다양성과 뛰어난 성능 덕분에, 트랜스포머 기반의 LLM은 다양한 산업과 응용 분야에서 점점 더 가치 있는 자산이 되고 있습니다.

 

LLM과 트랜스포머의 성공은 여러 아이디어의 결합 덕분입니다. 이러한 아이디어 대부분은 수년 동안 존재해 왔고, 같은 시기에 적극적으로 연구되고 있었습니다. 트랜스포머에 필요한 어텐션, 전이학습, 신경망의 스케일링 같은 메커니즘이 정확히 같은 시기에 돌파구를 찾은 셈입니다. 아래 그림은 자연어 처리 Natural Language Processing(NLP)에서 지난 몇십 년 동안 있었던 큰 발전들 중 일부에 대한 개요이며, 이 모든 것이 트랜스포머의 발명으로 이어지는 것을 보여줍니다.

 

입체표지_쉽고 빠르게 익히는 실전 LLM_그림1-1.jpg

 

2017년 트랜스포머 아키텍처의 등장 이후로, 트랜스포머의 사용과 배포를 위한 생태계가 폭발적으로 성장하였습니다. 적절하게 이름이 지어진 ‘트랜스포머’라는 라이브러리와 그것을 지원하는 패키지들은 전문가들이 모델을 사용하고, 훈련하고, 공유하는 것을 가능하게 해서, 이 모델의 적용을 크게 가속화시켰습니다. 그 결과 현재 수천 개의 조직에서 사용되고 있으며 그 수는 계속 증가하고 있습니다. 

 

또한, Hugging Face와 같은 인기 있는 LLM 저장소가 등장하면서 대중들에게 강력한 오픈 소스 모델에 대한 접근을 제공하고 있습니다. 간단히 말해서, 트랜스포머를 사용하고 상용화하는 것이 어느 때보다도 쉬워졌습니다.

 

☑️LLM 정의

약간만 되돌아가서, LLM과 트랜스포머가 해결하고 있는 구체적인 NLP 작업에 대해 먼저 얘기하겠습니다. 이 작업은 다양한 작업을 해결할 수 있는 기반을 제공합니다. 언어 모델링Language modeling은 NLP의 하위 분야로, 지정된 어휘(제한되고 알려진 토큰의 집합) 내의 토큰 시퀀스 가능성을 예측하기 위한 통계/딥러닝 모델의 생성을 포함합니다. 일반적으로 두 종류의 언어 모델링 작업이 있습니다. 아래 그림은 자동 인코딩 작업과 자기회귀 작업입니다.

 

 

입체표지_쉽고 빠르게 익히는 실전 LLM_그림1-2.jpg

자기회귀 언어 모델Autoregressive Language Model은 문장에서 이전 토큰만을 기반으로 다음 토큰을 예측하도록 훈련됩니다. 이러한 모델은 트랜스포머 모델의 디코더 부분에 해당하며, 어텐션 헤드attention head가 앞서 온 토큰만 볼 수 있도록 전체 문장에 마스크mask가 적용되어 있습니다. 자기회귀 모델은 텍스트 생성에 이상적입니다. 이러한 모델 유형의 좋은 예는 GPT입니다.

 

자동 인코딩 언어 모델Autoencoding Language Model은 손상된 버전의 입력 내용으로부터 기존 문장을 재구성하도록 훈련됩니다. 이러한 모델은 트랜스포머 모델의 인코더 부분에 해당하며 마스크 없이 전체 입력에 접근할 수 있습니다. 자동 인코딩 모델은 전체 문장의 양방향 표현을 생성합니다. 텍스트 생성과 같은 다양한 작업에 파인튜닝될 수 있지만 주요 애플리케이션은 문장 분류 또는 토큰 분류입니다. 이 모델 유형의 전형적인 예는 BERT입니다.

 

요약하면, LLM은 자기회귀거나 자동 인코딩 또는 두 가지의 조합이 될 수 있는 언어 모델입니다. 현대의 LLM은 대체로 트랜스포머 아키텍처를 기반으로 하지만(이 책의 LLM), 다른 아키텍처를 기반으로 할 수도 있습니다. LLM의 정의적 특징은 그들의 큰 크기와 광범위한 학습 데이터셋으로, 이를 통해 텍스트 생성 및 분류와 같은 복잡한 언어 작업을 거의 또는 전혀 파인튜닝이 필요 없을 만큼 높은 정확도로 수행할 수 있습니다.

 

[표 1-1]은 여러 인기 있는 LLM들의 디스크 크기, 메모리 사용량, 파라미터 수, 그리고 사전 훈련 데이터의 대략적인 크기를 보여줍니다. 이 크기들은 대략적인 것이며, 사용되는 특정 구현 방식 및 하드웨어에 따라 다를 수 있습니다.

 

입체표지_쉽고 빠르게 익히는 실전 LLM_표1-1.jpg

 

 

하지만 크기가 전부는 아닙니다. 이제 더 깊이 들어가서 LLM의 주요 특성들을 살펴보고 어떻게 읽고 쓰는 것을 배우는지에 대해 자세히 알아보겠습니다.

 

☑️LLM 주요 특징

앞서 언급했듯이, 일반적으로 LLM은 세 가지 주요 카테고리로 분류될 수 있습니다.

 

● GPT와 같은 자기회귀 모델은 이전 토큰을 기반으로 문장의 다음 토큰을 예측합니다. 이러한 LLM은 주어진 맥락을 따라서 일관성 있는 텍스트를 생성하는 데 효과적입니다.

 

●BERT와 같은 자동 인코딩 모델은 입력 토큰 중 일부를 가리고 남아있는 토큰으로부터 그것들을 예측하여 문맥을 양방향으로 이해하여 표현을 구축합니다. 이러한 LLM은 토큰 간의 맥락적 관계를 빠르고 대규모로 포착하는 데 능숙하여, 예를 들면 텍스트 분류 작업에 이용하기에 좋습니다.

 

●T5와 같은 자기회귀와 자동 인코딩의 조합은 다양하고 유연한 텍스트를 생성하기 위해 인코더와 디코더를 함께 사용할 수 있습니다. 이러한 조합 모델은 인코더를 사용하여 추가 맥락을 포착하는 능력 때문에, 순수한 디코더 기반의 자기회귀 모델보다 여러 가지 문맥에서 더 다양하고 창의적인 텍스트를 생성할 수 있습니다.

 

더불어 모든 LLM은 어떻게 구성되고 트랜스포머의 어떤 부분을 사용하는지에 관계없이, 문맥에 신경을 씁니다. 문맥에 신경을 쓰는 게 어떤거냐고요? 바로 아래 예시와 함께 설명하겠습니다.

 

입체표지_쉽고 빠르게 익히는 실전 LLM_그림1-3.jpg

 

만일 누군가가 대화 중 ‘Python’이라는 단어를 이야기했다고 합시다. Python이라는 단어를 들은 우리는 그동안의 대화 내용을 되새기며 이 사람이 말하는 프로그래밍 언어 이름인 파이톤인지, 그리스 신화에 나오는 커다란 뱀 피톤인지 판단하게 됩니다.

 

LLM도 동일합니다. 문맥에 따라 단어가 다른 의미를 지닐 수 있음을 알고, Python이라는 단어가 문장에 포함되어 있을 경우 문맥을 고려해 뱀에 대한 이야기를 하고 있는지, 상당히 멋진 코딩 언어를 이야기 하고 있는지를 판단하게 됩니다.

 


 

위 내용은 『쉽고 빠르게 익히는 실전 LLM』에서 내용을 발췌하여 재구성하였습니다.

 

2013년경 Word2vec가 도입된 이래로 NLP 전문가들과 연구자들은 의미(기본적으로 단어 정의)와 문맥(주변 토큰과 함께)을 결합하여 가능한 가장 의미 있는 토큰 임베딩을 만들 수 있는 가장 좋은 방법을 찾았습니다. 트랜스포머는 어텐션 계산을 이용해서 이 조합을 현실로 만듭니다.물론 어떤 종류의 트랜스포머 파생 모델을 원하는지 선택하는 것만으로는 충분하지 않습니다. 인코더만 선택한다고 해서 당신의 트랜스포머가 텍스트를 이해하는 데 자동으로 훌륭해지는 것은 아닙니다.

 

따라서 이 LLM들이 실제로 어떻게 읽고 쓰는 것을 배우는 지 살펴본다면 우리가 LLM이 어떤 것을 잘하고, 어떤 것을 못 하며, 우리만의 맞춤 데이터로 업데이트할 필요가 있는지 여부를 이해할 수 있게 되죠.

 

LLM라는 광활한 바다를 항해할 때 내가 원하는 길로 안내해 줄 지도가 필요하다면 『쉽고 빠르게 익히는 실전 LLM』을 확인해 보시기 바랍니다.

 

입체표지_쉽고 빠르게 익히는 실전 LLM_섬네일.jpg

쉽고 빠르게 익히는 실전 LLM

 

 

댓글 입력
자료실

최근 본 상품0