제퍼넷 로고

3가지 난이도로 설명되는 대규모 언어 모델 – KDnuggets

시간

우리는 머신러닝 모델이 최고조에 달하는 시대에 살고 있습니다. 수십 년 전과 비교하면 대부분의 사람들은 ChatGPT나 인공 지능에 대해 들어본 적이 없을 것입니다. 그러나 그것은 사람들이 계속해서 이야기하는 주제입니다. 왜? 노력에 비해 주어진 가치가 너무나 중요하기 때문입니다.

최근 몇 년 동안 AI가 획기적인 발전을 이룬 데는 여러 가지 요인이 있지만 그중 하나가 LLM(대형 언어 모델)입니다. 사람들이 사용하는 많은 텍스트 생성 AI는 LLM 모델을 기반으로 합니다. 예를 들어 ChatGPT는 GPT 모델을 사용합니다. LLM은 중요한 주제이므로 이에 대해 배워야 합니다.

이 기사에서는 3가지 난이도 수준의 대규모 언어 모델에 대해 논의하지만 LLM의 일부 측면만 다룰 것입니다. 우리는 모든 독자가 LLM이 무엇인지 이해할 수 있도록 하는 방식에서만 다릅니다. 이를 염두에 두고 들어가 보겠습니다.

첫 번째 수준에서는 독자가 LLM에 대해 모르고 데이터 과학/기계 학습 분야에 대해 조금 알고 있다고 가정합니다. 그래서 LLM으로 넘어가기 전에 AI와 머신러닝에 대해 간략하게 소개하겠습니다.

인공 지능 지능형 컴퓨터 프로그램을 개발하는 과학입니다. 인간이 할 수 있지만 인간의 생물학적 요구에 제한이 없는 지능적인 작업을 수행하는 프로그램을 위한 것입니다. 기계 학습 통계 알고리즘을 이용한 데이터 일반화 연구에 중점을 둔 인공지능 분야입니다. 어떤 의미에서 머신러닝은 데이터 연구를 통해 프로그램이 지시 없이도 지능적인 작업을 수행할 수 있도록 인공지능을 구현하려고 합니다.

역사적으로 컴퓨터과학과 언어학이 교차하는 분야를 자연과학이라고 합니다. 언어 처리 필드. 이 분야는 주로 텍스트 문서와 같은 인간 텍스트에 대한 기계 처리 활동에 관한 것입니다. 이전에는 이 분야가 규칙 기반 시스템으로만 제한되었지만, 모델이 아무런 방향 없이 학습할 수 있는 고급 준지도 및 비지도 알고리즘이 도입되면서 그 범위가 더욱 커졌습니다. 이를 수행하는 고급 모델 중 하나는 언어 모델입니다.

언어 모델 번역, 문법 수정, 텍스트 생성과 같은 많은 인간 작업을 수행하는 확률론적 NLP 모델입니다. 이전 형태의 언어 모델은 다음 단어의 확률이 이전 단어의 고정 크기 데이터에만 의존한다고 가정하는 n-gram 방법과 같은 순수 통계적 접근 방식을 사용합니다.

그러나, 신경망 이전 접근 방식을 폐기했습니다. 인공 신경망(NN)은 인간 두뇌의 뉴런 구조를 모방한 컴퓨터 프로그램입니다. 신경망 접근 방식은 텍스트 데이터의 복잡한 패턴 인식을 처리하고 텍스트와 같은 순차적 데이터를 처리할 수 있기 때문에 사용하는 것이 좋습니다. 이것이 바로 현재 언어 모델이 일반적으로 NN을 기반으로 하는 이유입니다.     

대규모 언어 모델, 또는 LLM은 범용 언어 생성을 수행하기 위해 수많은 데이터 문서로부터 학습하는 기계 학습 모델입니다. 이는 여전히 언어 모델이지만 NN이 학습한 수많은 매개변수로 인해 큰 것으로 간주됩니다. 일반인의 관점에서 보면 모델은 주어진 입력 단어에서 다음 단어를 매우 잘 예측하여 인간이 쓰는 방식을 수행할 수 있습니다.

LLM 작업의 예로는 언어 번역, 기계 챗봇, 질문 답변 등이 있습니다. 일련의 데이터 입력에서 모델은 단어 간의 관계를 식별하고 명령에 적합한 출력을 생성할 수 있습니다.

텍스트 생성을 사용하는 것을 자랑하는 거의 모든 Generative AI 제품은 LLM을 기반으로 합니다. ChatGPT, Google의 Bard 등과 같은 대형 제품에서는 LLM을 제품의 기초로 사용하고 있습니다.

독자는 데이터 과학 지식을 가지고 있지만 이 수준의 LLM에 대해 더 많이 배워야 합니다. 최소한 독자는 데이터 분야에서 사용되는 용어를 이해할 수 있습니다. 이 수준에서는 기본 아키텍처에 대해 더 자세히 살펴보겠습니다.

이전에 설명했듯이 LLM은 방대한 양의 텍스트 데이터에 대해 훈련된 신경망 모델입니다. 이 개념을 더 이해하려면 신경망과 딥러닝이 어떻게 작동하는지 이해하는 것이 도움이 될 것입니다. 

이전 단계에서는 신경 뉴런이 인간 두뇌의 신경 구조를 모방한 모델이라고 설명했습니다. 신경망의 주요 요소는 종종 노드라고 불리는 뉴런입니다. 개념을 더 잘 설명하려면 아래 이미지의 일반적인 신경망 아키텍처를 참조하세요.

 

3가지 난이도로 설명되는 대규모 언어 모델
신경망 아키텍처(이미지 출처: 너 겟츠)
 

위 이미지에서 볼 수 있듯이 신경망은 세 가지 레이어로 구성됩니다.

  1. 정보를 수신하고 이를 다음 계층의 다른 노드로 전송하는 입력 계층입니다.
  2. 모든 계산이 이루어지는 숨겨진 노드 레이어입니다.
  3. 계산 출력이 있는 출력 노드 레이어입니다.

두 개 이상의 숨겨진 레이어로 신경망 모델을 훈련하는 것을 딥러닝이라고 합니다. 사이에 많은 레이어를 사용하기 때문에 딥이라고 합니다. 딥러닝 모델의 장점은 기존 머신러닝 모델이 할 수 없는 데이터에서 기능을 자동으로 학습하고 추출한다는 것입니다.

대규모 언어 모델에서는 모델이 심층 신경망 아키텍처를 기반으로 구축되므로 딥 러닝이 중요합니다. 그렇다면 왜 LLM이라고 불리는가? 이는 수십억 개의 레이어가 엄청난 양의 텍스트 데이터를 기반으로 훈련되기 때문입니다. 레이어는 모델이 문법, 쓰기 스타일 등을 포함하여 언어의 복잡한 패턴을 학습하는 데 도움이 되는 모델 매개변수를 생성합니다.

모델 훈련의 단순화된 과정은 아래 이미지에 나와 있습니다.

 

3가지 난이도로 설명되는 대규모 언어 모델
Kumar Chandrakant의 이미지(출처: Baeldung.com)
 

이 프로세스는 모델이 입력 데이터의 각 단어나 문장의 가능성을 기반으로 관련 텍스트를 생성할 수 있음을 보여주었습니다. LLM에서 고급 접근 방식은 다음을 사용합니다. 자기지도 학습준지도 학습 범용 기능을 달성합니다. 

자기 지도 학습은 레이블이 없고 대신 훈련 데이터가 훈련 피드백 자체를 제공하는 기술입니다. 데이터에는 일반적으로 레이블이 없기 때문에 LLM 교육 프로세스에 사용됩니다. LLM에서는 주변 상황을 단서로 사용하여 다음 단어를 예측할 수 있습니다. 이와 대조적으로 준지도 학습은 지도 및 비지도 학습 개념을 소량의 레이블이 지정된 데이터와 결합하여 레이블이 없는 대량의 데이터에 대해 새로운 레이블을 생성합니다. 준지도 학습은 일반적으로 특정 상황 또는 도메인 요구 사항이 있는 LLM에 사용됩니다.

세 번째 수준에서는 LLM에 대해 더 깊이 논의하고, 특히 LLM 구조를 다루고 인간과 같은 생성 기능을 달성할 수 있는 방법을 논의합니다.

우리는 LLM이 딥러닝 기술을 갖춘 신경망 모델을 기반으로 한다는 점을 논의했습니다. LLM은 일반적으로 다음을 기반으로 구축되었습니다. 변압기 기반 최근 몇 년 동안의 건축. 변환기는 다음과 같이 도입된 다중 헤드 주의 메커니즘을 기반으로 합니다. 바스와니 et al. (2017) 많은 LLM에서 사용되었습니다.

Transformers는 이전에 RNN 및 LSTM에서 발생했던 순차적 작업을 해결하려고 시도하는 모델 아키텍처입니다. 언어 모델의 기존 방식은 RNN과 LSTM을 사용하여 데이터를 순차적으로 처리하는 것이었습니다. 여기서 모델은 모든 단어 출력을 사용하고 모델이 잊지 않도록 반복합니다. 그러나 변환기가 도입되면 긴 시퀀스 데이터에 문제가 발생합니다.

Transformers에 대해 더 자세히 알아보기 전에 이전에 RNN에서 사용되었던 인코더-디코더 개념을 소개하고 싶습니다. 인코더-디코더 구조를 사용하면 입력 및 출력 텍스트의 길이가 같지 않을 수 있습니다. 예제 사용 사례는 종종 시퀀스 크기가 다른 언어 번역입니다. 

구조는 2가지로 나눌 수 있습니다. 첫 번째 부분은 Encoder라고 하며, 데이터 시퀀스를 수신하고 이를 기반으로 새로운 표현을 생성하는 부분입니다. 표현은 모델의 두 번째 부분인 디코더에서 사용됩니다. 

 

3가지 난이도로 설명되는 대규모 언어 모델
작성자 별 이미지
 

RNN의 문제는 위의 인코더-디코더 구조를 사용하더라도 모델이 더 긴 시퀀스를 기억하는 데 도움이 필요할 수 있다는 것입니다. 이것이 바로 주의 메커니즘이 문제를 해결하는 데 도움이 될 수 있는 곳이며, 긴 입력 문제를 해결할 수 있는 계층입니다. 주의 메커니즘은 다음과 같이 논문에 소개되어 있습니다. 바다나우 . (2014) 출력 예측을 하면서 모델 입력의 중요한 부분에 집중하여 인코더-디코더 유형 RNN을 해결합니다.

트랜스포머의 구조는 인코더-디코더 유형에서 영감을 얻어 어텐션 메커니즘 기술로 구축되었으므로 데이터를 순차적으로 처리할 필요가 없습니다. 전체 Transformers 모델은 아래 이미지와 같은 구조로 되어 있습니다.

 

3가지 난이도로 설명되는 대규모 언어 모델
트랜스포머 아키텍처(바스와니 et al. (2017))
 

위의 구조에서 변환기는 데이터 벡터 시퀀스를 워드 임베딩으로 인코딩하고 디코딩을 사용하여 데이터를 원래 형식으로 변환합니다. 인코딩은 어텐션 메커니즘을 통해 입력에 특정 중요성을 할당할 수 있습니다. 

데이터 벡터를 인코딩하는 변환기에 대해 조금 이야기했지만 데이터 벡터란 무엇입니까? 그것에 대해 논의합시다. 머신러닝 모델에서는 원시 자연어 데이터를 모델에 입력할 수 없으므로 이를 수치 형식으로 변환해야 합니다. 변환 프로세스를 단어 임베딩이라고 하며, 각 입력 단어는 단어 임베딩 모델을 통해 처리되어 데이터 벡터를 얻습니다. 다음과 같은 많은 초기 단어 임베딩을 사용할 수 있습니다. 워드투벡 or 글 로베, 그러나 많은 고급 사용자는 자신의 어휘를 사용하여 이를 개선하려고 합니다. 기본적인 형태로 워드 임베딩 과정을 아래 이미지로 볼 수 있습니다.

 

3가지 난이도로 설명되는 대규모 언어 모델
작성자 별 이미지
 

변환기는 위의 데이터 벡터와 같은 숫자 형식으로 단어를 표시하여 입력을 받아들이고 보다 관련성 있는 컨텍스트를 제공할 수 있습니다. LLM에서 단어 임베딩은 일반적으로 상황에 따라 다르며 일반적으로 사용 사례와 의도된 출력에 따라 구체화됩니다.

우리는 초급부터 고급까지 세 가지 난이도로 대규모 언어 모델을 논의했습니다. LLM의 일반적인 사용법부터 구성 방식까지, 개념을 좀 더 자세히 설명하는 설명을 찾아볼 수 있습니다.
 
 

코넬리우스 유다 위자야 데이터 과학 보조 관리자 및 데이터 작성자입니다. Allianz Indonesia에서 풀타임으로 일하는 동안 그는 소셜 미디어와 글쓰기 미디어를 통해 Python 및 데이터 팁을 공유하는 것을 좋아합니다.

spot_img

최신 인텔리전스

spot_img