ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 생성형 AI ChatGPT 이후 연구 동향
    인공지능 2023. 10. 27. 23:30

    1. ChatGPT 이후 연구 동향

    1.1 모델 크기 증가 방향

    생성형 언어 모델인 GPT-3의 강력한 성능은 무려 1750B(1750억) 개의 파라미터를 가진 초거대 규모의 모델을 학습한 결과입니다. 이후의 연구에서는 모델의 크기를 더욱 증가시키는 방향에 집중되었습니다. 예를 들어, Gopher 모델은 280B 개, MT-NLG는 530B 개, 구글의 PaLM은 540B 개의 파라미터 규모의 모델을 학습하였습니다.

    그러나 모델 크기의 증가는 두 가지 주요 문제를 동반하고 있습니다. 첫 번째로, 초거대 모델을 학습하는 데 필요한 비용이 상당히 높아져서 수억 달러에서 십억 달러 이상까지 치솟는 막대한 수준에 도달하고 있습니다. 이는 작은 연구 그룹에서는 감당하기 어려운 수준이며, 모델 추론에도 상용 GPU에서 처리하기 어려울 정도입니다. 두 번째로, 초거대 언어 모델을 운영하는 기업들은 컴퓨팅 인프라 비용과 환경 문제로 인해 큰 부담을 겪고 있습니다.

    그런데, 최적의 생성형 언어 모델을 얻기 위해서는 고정된 컴퓨팅 자원에서 모델 크기와 학습되는 토큰 수의 비중을 재조정해야 한다는 딥마인드의 연구 결과가 발표되었습니다. 이 연구에서는 모델 크기의 증가 스케일을 줄이고, 그만큼의 컴퓨팅 자원을 활용하여 토큰 수를 증가시키는 것이 더 효율적임을 제안하고 있습니다. 예를 들어, 공개된 Chinchilla 언어 모델은 70B 개의 파라미터로 구성되며, 학습에 참여한 토큰 수는 1.4T(1.4조) 개에 달합니다. 이는 이전의 GPT-3, Gopher, MT-NLG와 같은 모델보다 훨씬 많은 토큰을 학습한 것입니다. 그 결과 Chinchilla 모델은 기존 모델을 능가하는 성능을 보여주며, 효율적인 인프라 비용을 제공하고, 저사양 하드웨어에서도 사용 가능하며, 빠른 추론 속도를 가질 수 있게 되었습니다.

    고성능 언어 모델을 학습하는 데 필요한 컴퓨팅 자원은 여전히 상당히 많으며, 편향과 같은 이슈를 해결하고 고품질의 다양한 주제를 다루는 데이터셋을 구축하는 것은 여전히 어려운 과제입니다. 이러한 모델을 학습하려면 거대한 모델을 학습하기 위한 분산 및 병렬 계산 능력이 필요하며, 이는 자본 지원이 가능한 상위 테크 기업에만 가능한 상황입니다. 막대한 비용을 투자하여 구축된 모델은 해당 산업에서 큰 경쟁 우위를 유지할 수 있기 때문에 기업들은 이러한 모델을 더 이상 공개하지 않는 경향이 있습니다.

    그러나 MetaAI는 최근 LLaMA라고 하는 생성형 언어 모델의 학습 결과물을 오픈소스로 공개하였습니다. LLaMA 모델은 Chinchilla 모델의 성능과 최신 엔지니어링 지식을 반영하고 있으며, 모델 사이즈는 6.7B, 13B, 32.5B, 65.2B 개의 파라미터로 구성되었습니다. 학습에 참여한 토큰 수는 1.0T 또는 1.4T 개로 Chinchilla와 유사합니다. 이 모델을 위해 구축된 데이터셋은 중복을 제거하고 편향 이슈 등을 개선하기 위해 주의 깊게 관리되었으며, 프로그래밍 관련 GitHub 데이터, 논문과 같은 전문적인 글 관련 ArXiv 데이터, 그리고 커뮤니티 기반 지식 공유와 문제 해결에 관련된 StackExchange 데이터를 포함하고 있습니다.

    연구 결과에 따르면, 13B 파라미터를 가진 LLaMA-13B 모델은 다양한 성능 비교에서 GPT-3를 능가하며, LLaMA-65B는 GPT-3보다 큰 규모로 학습된 모델들과 유사한 최고 수준의 성능을 보여주었습니다. GPT-3를 능가하는 LLaMA 언어 모델의 공개는 후속 연구와 개발을 크게 촉진하고 있으며, 상용 GPU에서 운영 가능한 규모의 LLaMA 모델을 특정 분야에 미세 튜닝하고 응용 프로그램을 개발하며 이를 오픈소스로 공개하는 다양한 시도들이 활발히 진행되고 있습니다. 이러한 노력은 인공지능 분야의 발전과 혁신을 촉진하고, 더욱 다양한 분야에서 적용할 수 있는 가능성을 제시하고 있습니다.

    생성형 AI 연구 동향
    생성형 AI 연구 동향

    1.2 유사 ChatGPT 훈련

    ChatGPT는 OpenAI의 노력으로 독립적인 채팅형 명령-응답 시스템에 대한 큰 관심을 불러일으켰습니다. OpenAI는 GPT-3 모델부터 모델을 공개하지 않고 있으며, 더 큰 규모의 생성형 언어 모델을 사용하더라도 휴먼 라벨러를 운영하고 유지하는 데에는 여전히 상당한 비용이 필요합니다.

    이러한 도전을 극복하기 위한 연구 중 하나인 "Self-Instruct"는 GPT-3를 강화학습이 아닌 대안적인 방법으로 미세 튜닝하여 채팅형 명령-응답 시스템을 구현하는 데에 성공한 연구입니다. 이 연구는 GPT-3 API를 활용하여 명령-응답 예제를 생성하고 결과를 수집하여 명령-응답 데이터셋을 구축하는 과정에서 독창성을 발휘합니다.

    구체적으로, 연구 저자들은 175개의 태스크를 준비하고 태스크 풀을 초기화한 후, 템플릿을 활용하여 명령-응답 예제 태스크를 생성하기 위한 프롬프트를 작성합니다. 이 프롬프트는 자연어 문장으로 작성되며, 정해진 개수의 태스크를 무작위로 선택하여 템플릿의 Task을 대체한 후, 마지막 문장을 "Task:'''"로 고정합니다. 작성한 프롬프트를 GPT-3 API에 요청하여 GPT-3가 생성한 결과를 확인하고 태스크 풀에 추가합니다. 이 과정을 반복하여 82,000개의 데이터셋을 확보합니다. OpenAI는 GPT-3 모델을 공개하지 않지만, 이러한 데이터셋에 대해 GPT-3를 미세 튜닝하고 그 결과를 API 엔드 포인트로 제공합니다. 연구 저자들은 이를 통해 미세 튜닝을 수행하고 성능 평가를 진행합니다. 결과적으로, 미세 튜닝된 결과 모델은 ChatGPT와 유사한 성능을 보이게 됩니다.

    Self-Instruct 연구의 성공은 여러 가지 중요한 시사점을 제시하고 있습니다. 

    첫째로, 이 연구는 강화학습 기법을 사용하지 않고도 의도에 부합하는 응답을 생성하는 채팅형 명령-응답 시스템을 구현할 수 있다는 가능성을 보여줍니다. 이는 모델의 미세 튜닝과 프롬프트 기반 접근을 통해 달성되었습니다.

    둘째로, Self-Instruct 연구 결과는 GPT-3 이상의 초거대 언어 모델이 명령 의도에 부합하는 결과를 생성할 수 있는 능력을 갖고 있음을 보여줍니다. 이러한 모델은 퓨샷 학습을 통해 문제를 해결하고 의도에 따라 적절한 응답을 생성할 수 있는 능력을 발휘합니다. 명령형 프롬프트에 대한 응답형 생성은 일종의 문제로 간주되지만, Self-Instruct 연구는 자체 생성한 명령-응답형 데이터셋을 미세 튜닝을 통해 이 문제를 효과적으로 해결하였습니다. 이후, 명령형 프롬프트에 대해서도 응답형 생성이 가능하게 되었습니다.

    또한, Stanford Alpaca 연구에서는 GPT-3를 미세 튜닝하여 채팅형 명령-응답 시스템을 구현하였는데, 이는 Self-Instruct와 유사한 접근 방식을 사용하며 일부 과정을 효율화했습니다. 이 연구에서는 최신 ChatGPT 모델(text-davinci-003)에 프롬프트를 요청하여 52,000개의 데이터셋을 구축하고, 이를 통해 LLaMA 모델을 미세 튜닝하였습니다. 결과적으로, 이 모델은 text-davinci-003와 유사한 성능을 보여주었습니다.

    이러한 연구 결과는 강력한 언어 모델을 효과적으로 활용하여 채팅형 명령-응답 시스템을 구현하고, 강화학습 기법을 사용하지 않고도 의도에 부합하는 응답을 생성할 수 있다는 가능성을 제시하며, 미래의 자연어 처리 연구와 개발에 새로운 방향성을 제시하고 있습니다.

    1.3 생성형 언어 모델 응용을 위한 엔지니어링 생성형

    생성형 언어 모델을 응용 프로그램 및 서비스 개발에 적용하는 데에는 모델의 크기와 관련된 여러 가지 제약 사항이 존재합니다. 예를 들어 175B 파라미터로 이루어진 모델의 추론을 위해 모델을 메모리에 로딩하는 경우, 32비트 부동 소수점(FP32)의 사용으로 인해 막대한 메모리 공간이 필요하게 됩니다. 이로 인해 많은 연구 그룹이나 스타트업에서는 모델을 처리하는 데 어려움을 겪고 있습니다. 최근에는 이러한 문제를 극복하기 위한 엔지니어링 연구가 활발히 진행되고 있으며, 양자화(Quantization) 기술이 그 중 하나의 해결책으로 떠올랐습니다.

    양자화는 실수 값을 작은 구간으로 분할하고, 각 구간의 대푯값을 사용하여 모델의 행렬 연산을 수행하는 기술입니다. 이를 통해 메모리 사용량을 획기적으로 감소시키고 상용 GPU에서 모델을 처리할 수 있는 가능성을 제시합니다. 예를 들어, 4비트 양자화를 적용하면 메모리 요구량이 크게 줄어들어 한 장 또는 두 장의 상용 GPU로 모델을 처리할 수 있게 됩니다.

    그러나 양자화에는 단점이 존재합니다. 원본 행렬 연산과 양자화된 행렬 연산 사이에 오차가 발생할 수 있으며, 이로 인해 모델의 추론 결과가 원본과 다를 수 있습니다. 이를 해결하기 위해 오차를 최소화하려는 다양한 양자화 방법들이 개발되고 있으며, 그 중 GPTQ 양자화 기법은 원본과 양자화 행렬 연산 간의 오차를 고려하여 구간 분할을 조정함으로써 이를 최소화합니다. 이로써 3비트 양자화된 모델과 원본 모델 간의 성능 차이를 크게 줄였습니다. 3비트 양자화는 추론 속도를 빠르게 하고 GPU 메모리 요구량을 감소시켜 다양한 응용 프로그램과 서비스에 적용 가능한 실용적인 결과를 얻을 수 있게 합니다.

    양자화 기술은 생성형 언어 모델의 추론 과정을 최적화하는 데에 주로 활용되며, 이를 통해 메모리 효율적인 엔지니어링이 가능합니다. 그러나 양자화를 모델의 학습 과정에 적용하기는 아직 어려움이 존재합니다. 학습 단계에서는 그래디언트 계산과 최적화 과정에서 FP16 이상의 고정밀도가 필요하기 때문에 양자화를 적극적으로 적용하기 어렵습니다. 그럼에도 불구하고, QLoRA(Quantization-Aware LoRA) 연구에서는 메모리 효율적인 미세 튜닝 방법을 제안하며 학습과 양자화를 결합한 혁신적인 방법론을 제시하고 있습니다.

    QLoRA 방법론은 이전의 연구 결과인 LoRA(Loose Random Adapter)를 기반으로 합니다. LoRA는 사전 훈련된 모델의 파라미터 값을 고정시킨 후 GPU에 로딩하는 방식을 사용하여 모델의 파라미터를 고정 상수값으로 취급합니다. 대신, 어텐션 가중치 행렬을 낮은 차원의 어댑터 행렬 두 개의 곱으로 근사화하고, 이를 유일한 학습 파라미터로 사용하여 미세 튜닝하는 방식을 채택합니다. 이러한 방식을 통해 모델 파라미터의 수를 크게 줄일 수 있어, LoRA 기반의 미세 튜닝이 생성형 언어 모델 응용에서 인기를 얻고 있습니다.

    QLoRA에서는 사전 훈련된 모델에 4비트 양자화를 적용하고, 어댑터의 계산은 부동 소수점 연산으로 진행함으로써 그래디언트 계산과 최적화를 수행합니다. 이를 통해 메모리 48GB를 가진 상용 GPU 한 장에서 LLaMA-65B 규모의 모델을 미세 튜닝할 수 있는 가능성을 시연하였습니다. 이러한 혁신적인 방법론은 양자화와 미세 튜닝을 조화롭게 결합함으로써 생성형 언어 모델의 성능을 향상시키고 메모리 효율성을 극대화하는 데 큰 도움을 주고 있습니다.

    출처 : 생성형 AI의 기술 진화 및 연구 동향 : 언어 모델을 중심으로
    KISDI AI Outlook(2023년 Vol. 13), 오장민 성신여자대학교 AI융합학부, 부교수

Designed by Tistory.