자연어처리부터 LLM 모델까지 - 1) 생각하는 기계

이희진·2025년 8월 27일

데이터 전문가, 특히 텍스트 데이터를 주로 다루는 개발자라면 자연어처리와 언어 모델에 대한 기초 지식이 부족함에 대한 불안함을 많이 느끼는 것 같습니다.
저도 그러한 단계에 머물러 있다는 생각이 들어서 저와 같은 데이터 엔지니어, 머신러닝 개발자, LLM 개발자 주니어들에게 도움이 되길 바라는 마음으로 정리해보고자 합니다.

기계가 사람처럼 생각할 수 있을까?

AI를 접하고 배우게 되면 많이 듣게 되는 앨런 튜링이라는 인물과 튜링 테스트, 튜링 머신.. 너무나 익숙하지만 누군가 물어본다면 자신있게 설명할 수 있을까요? 먼저 모든 이야기에 앞서, AI의 의미를 앨런 튜링이라는 인물을 시작으로 살펴보겠습니다.

앨런 튜링과 튜링 머신

앨런 튜링은 제2차 세계대전 당시에 연합군의 승리에 결정적인 역할을 한 인물로, 수학적 재능을 이용해 코드 브레이커로 활약했습니다. 당시 튜링 봄브이라는 거대한 기계를 만들어내어 가장 높은 수준의 암호 체계로 유명했던 독일의 애니그마 암호를 해독하며 큰 공을 세웠습니다. 그리고 이후, 알고리즘을 설명하기 위한 가상의 기계로써 튜링 머신을 제안하는 논문을 발표합니다. 수학적 상상을 통해 생각해낸 튜링 머신의 개념과 구조는 기호가 적힌 무한한 긴 띠를 읽는 기계로, 현대의 컴퓨터에 빗대자면 CPU에 해당합니다. 더불어 이 기계를 통해 모든 형태의 기계적인 계산을 할 수 있다고 말합니다. 이러한 연구들은 우리가 사용하는 컴퓨터의 기본 바탕이 되어 컴퓨터 과학과 인공지능 분야의 발전에 기여하게 됩니다.

그렇다면 그 당시의 연구가 어떻게 현재의 기술에 영향을 미치게 된 걸까요?
튜링은 'computing machinery and intelligence(계산 기계와 지능)'이라는 논문에서 '기계가 사람처럼 생각할 수 있을까?'라는 질문을 던지며 인공지능의 논리적, 수학적 기초를 제안합니다.

연구 내용 중 아래와 같은 내용이 있는데요,
'생각하는 기계에 대해 논의하고자 할 때는, 우선 두 가지 질문에 답해야 한다. 첫째, 생각한다는 것은 무엇인가? 둘째, 기계란 무엇인가? 이 질문에 대한 답은 사람에 따라 정의하기 나름일 것이다.'

이 질문에 대해 철학적 논의보다는 명확하고 단순한 방법을 제안하는데 바로 그것이 '튜링 테스트' 입니다. 튜링 박사는 기계가 사람처럼 생각할 수 있다는 것은 사람에게 자신을 인간이라고 착각하게 만든다는 것이라고 정의 내리며 한 실험을 합니다.

튜링 테스트


인간과 기계를 분리된 공간에 배치한 다음, 질문자가 각각과 텍스트로 대화를 나눕니다. 어떤 공간에 컴퓨터가 있는지, 사람이 있는지 알 수 없는 상태에서 몇 번의 질문과 응답을 반복하며 기계와 인간을 구분합니다. 여기서 기계와 인간을 명확하게 구분하지 못한다면 기계가 지능을 가진 것으로 판단합니다.

더불어서 튜링은 인간 자체를 모방하는 것 뿐만 아니라 특정 성별을 모방할 수 있는지 알아보는 실험도 제안합니다. 여기서는 두 번의 실험을 진행하는데, 첫번째는 남자와 여자가 위의 실험과 동일한 공간에 배치되고, 둘의 존재를 알 수 없는 질문자가 질문하고 답변을 받으며 누가 남자고 여자인지 가려냅니다. 여기서 남자는 질문자를 속이기 위해 여자인 척을 해야 합니다. 두 번째 실험에서는 남자 대신 기계가 배치되어 기계가 여자인 것처럼 대화를 하며 질문자를 속입니다. 여기서 질문자가 속게 되면 기계는 튜링 테스트를 통과하게 됩니다.

컴퓨터와 인간과 같은 완전한 사고를 갖춰야 된다는 개념이 아닌, 사람을 속이는 데에 성공한다면 즉, 기계가 사람의 말을 잘 알아듣고 그럴듯하게 말한다면 그 컴퓨터는 생각할 수 있다고 판단한다는 것이 튜링의 생각입니다. 더불어서 이 생각하는 기계를 만들 수 있는 방법으로 기계 학습에 대한 아이디어가 담겨 있으며, 2000년이 되면 기술적으로 가능할 것이라고 예측했습니다. 1950년 당시에 이런 생각을 한 튜링의 놀라운 통찰력에 감탄하게 되는 부분입니다.

물론 이 수준에 가기 위해서는 기계가 기술적으로 매우 발전해야 가능할 것입니다. 그리고 현재 많이 사용되는 GPT-4 모델이 튜링 테스트를 통과했다고 합니다. 이것은 현대의 컴퓨팅 기술, 인공지능이 얼마나 발전했는가 느끼게 해주는 대목입니다.


생각하는 기계와 자연어처리(NLP)

그렇다면 인공지능 언어모델이 튜링 테스트를 통과했다면 그 기계는 지능을 가지고 있다고 판단할 수 있을까요? 여기서 한 가지 생각해볼 것이 있습니다. 기계가 그럴 듯한 답변을 낸다고 해도 인간과 비슷한 사고 과정을 거치는 지는 알 수 없다는 점입니다.

구문(syntax)와 의미(semantic)의 딜레마

컴퓨터가 그럴 듯한 문장으로 인간과 대화를 하고 있지만, 실제로 그 내용을 이해하고 있지 않다는 것을 구문과 의미의 딜레마로 칭하여 설명합니다. 여기서 구문은 문장이 구성되는 방식, 의미는 문장이 나타내는 실제 의미를 말하는 데요, 챗 gpt와 같은 초거대언어모델(LLM)은 학습된 구문론에 따라 문장을 처리합니다. 그러므로 실제로 사용자의 말이 의미하는 바가 무엇인지 인간이 이해하는 내용을 알지는 못합니다.
예를 들어 '나는 배가 고프다' 라는 문장에서 '나는', '배가', '고프다' 세 단어의 관계와 구조, 순서 등을 구문이라고 하며 구문에 대한 이해로 그럴 싸한 대화 문장을 만들어냅니다. 그러나 그 말이 어떤 감정과 의미를 내포하고 있는 지는 기계가 생각할 수 없는 것입니다.

인공지능이 더욱 보편화 되기 위해서는 이 딜레마를 극복해야 된다고 생각하지만, 한편으로는 기계가 감정을 이해하는 미지의 세계에 대한 두려움도 가지게 되는 것 같습니다. 구문에 대한 이해가 굉장히 발전하면 이 또한도 인간이 볼 때 기계가 의미를 이해하는 것처럼 느껴질 것 같기도 합니다.

자연어처리가 왜 어려울까?

자연어 처리(NLP)의 정의

  • 자연어 처리(NLP, Natural Language Processing)는 인간의 언어(자연어)를 컴퓨터가 이해하고 처리할 수 있도록 구현하는 기술
  • 정보 검색, 문서 분류, 대화형 에이전트 등 다양한 응용 분야에서 활용

앞서 튜링 테스트를 통해 봤듯이, 기계가 스스로 생각할 수 있다고 믿게 될 정도로 교묘하고 정교해졌습니다. 하지만 중국어 방 실험을 통해 살펴본대로 인간처럼 세상을 이해하고 인식하는 것은 아닙니다. 그렇다면 자아를 가지지 못하는 챗GPT를 비롯한 여러 초거대언어모델 LLM은 어떻게 인간과 자연스럽게 대화할 수 있는 걸까? 바로 자연어처리(NLP) 기술에 대해 본격적으로 알아보겠습니다.

인공지능은 크게 데이터의 형식이나 활용 목적에 따라서 이미지 처리, 시계열 분석, 자연어처리 등의 다양한 분야로 나뉘는데 자연어처리는 자연어, 즉 사람의 말과 그 텍스트에 대해 연구하는 분야입니다.

사람과 완전히 다른 방식으로 세상을 바라보고 사고하는 컴퓨터가 인간의 언어를 다루는 것은 매우 어려울 수 밖에 없습니다. 특히 인간의 언어는 수많은 예외로 가득한, 정해진 규칙이 없는 비정형 데이터, 컴퓨터의 입장에서는 애매하고 불확실한 대상일 것입니다.

그렇다면 자연어의 모호함, 복잡한 패턴이 자연어처리의 허들이 되는 걸까요? 자연어처리는 모델에게 인간의 언어 체계를 학습시키는 것이라고 생각했을 때, 한번 시선을 돌려서 인간의 언어 학습 과정은 어떤지 고민해보면 좋을 것 같습니다.

촘스키의 언어습득장치(LAD)와 인공지능 언어 모델


현대 언어학의 아버지로 불리는 언어학자이자 명사 노엄 촘스키는 인간만이 언어본능을 지니고 있기 때문에 언어를 습득할 수 있다고 주장합니다. 진화의 과정에서 인간의 뇌에는 언어학습에 필요한 보편적인 기능, 보편문법(universal grammer)를 지니게 되었고 언어습득장치(Language Acquisition Device, LAD)를 통해 짧은 시간동안 문법 구조와 언어의 의미 습득을 빠르게 할 수 있다는 말입니다.
그렇다면 자연어처리의 key는 컴퓨터가 인간의 두뇌, 언어습득장치와 똑같은 원리로 작동할 수 있느냐 없느냐에 달려있다고 해도 과언이 아닐텐데요, 실제로 비슷한 장치를 만들어냈습니다. 바로 언어모델(language model)입니다. 한번 인간의 언어습득장치와 컴퓨터의 언어모델을 나란히 두고 살펴보겠습니다.

인간의 언어습득장치(LAD)

촘스키의 생성 문법 이론에 따르면 인간의 뇌 구조에는 언어 처리를 위한 일종의 프로그램인 언어습득장치가 내제되어 있고, 이 장치는 모든 언어의 보편적인 구조와 문법의 일부를 이해하고 인지하는 것을 도와준다고 합니다.
여기서 보편문법이라는 개념이 나타납니다.
보편 문법(Universal Grammer)은 인간의 진화 과정에서 쌓은 언어적 기본 지식으로 언어의 음가를 구별하고 단어를 구별하고 문법적인 사항들을 자동으로 인식할 수 있는 능력에 해당합니다. 아기에게 문법적 지식을 가르쳐 주지 않아도 생후 3년동안 문법적 지식을 스스로 갖추어 언어를 구사하게 되는 것이 바로 이 보편 문법을 태생적으로 지니고 있음을 입증한다고 볼 수 있습니다.
이렇게 사람은 언어적 입력을 받고, 언어습득장치는 이를 처리하고 내재된 보편 문법을 바탕으로 규칙을 형성해갑니다. 이 규칙은 언어 습득과 발달을 지원하고 말하기, 이해하기 능력을 향상시키게 됩니다. 이 언어습득장치는 동물도, 컴퓨터도 없는 인간만이 가지고 있는 장치입니다.

컴퓨터의 언어모델(language model)

언어모델은 통계학과 딥러닝 기술을 활용, 사전에 정의된 알고리즘을 바탕으로 문맥 속 단어와 문장을 계산하고 예측합니다. 클라우드 컴퓨팅 기술의 발달과 계산 용량의 증가로 인터넷 상의 수억개의 텍스트 데이터를 사전학습하는 것이 가능해지면서 방대한 양의 데이터를 학습한 고성능의 언어모델이등장했습니다. 바로 요즘 화두가 되고 있는 초거대언어모델(LLM)입니다.

언어모델은 수많은 텍스트 데이터를 학습, 언어 패턴을 파악합니다. 이 학습 데이터가 인간으로 치면 언어적 입력, 언어자극에 해당하며 이 학습 데이터를 바탕으로 언어의 패턴을 찾아내어 패턴대로 사용자와의 대화에 응답합니다. 챗GPT와 대화하고 있다고 느끼지만, 이또한 수많은 데이터를 학습하며 얻은 패턴대로 응답을 생성하고 있는 것입니다.

언어습득장치(LAD)와 언어모델(LM)의 차이


언어습득장치는 매우 다양한 케이스를 유연하게 처리할 수 있고 상황에 맞는 적절한 언어를 구사하거나 복잡한 뉘앙스를 구분해낼 수 있습니다. 문법 규칙에 어긋나는 문장도, 은어나 비유의 표현을 쓰는 언어적 상황도 이해하는 능력이 탁월합니다.
반면, 언어모델은 학습 데이터에 해당 문장이나 표현이존재하지 않는다면 언어적 상황을 이해할 수 없습니다. 마찬가지로 문법적으로 틀린 오류가 있는 문장을 처리하는 부분에서도 학습된 알고리즘, 내재된 규칙으로 처리하기에는 어려움이 있습니다.

인간과 컴퓨터의 언어 학습 매커니즘은 매우 유사하지만 본질적인 언어 습득이 다른 이유가 무엇일까요? 이는 감각기관의 유무에 나타난 차이라고 볼 수 있습니다. 인간은 언어를 배우는 과정 속에 오감을 통해 세상을 경험하고 여러 감정을 느낍니다. 그렇게 삶을 살아가며 겪었던 경험과 감정들을 비추어 앞뒤 문맥을 유추하고 상황에 맞게 새롭게 해석해낼 수 있습니다. 즉, 인간이 언어를 통해 소통한다는 것은 단순히 언어습득장치를 통해 들어온 언어자극으로 언어 처리 능력을 갖추고 다양한 문장을 만들어내는 하나의 차원만을 말하는 것은 아니라는 점입니다.

그렇다면 감각기관이 없는 컴퓨터, 언어모델의 자연어처리 기술에는 한계가 존재하는가 생각해보게 됩니다. 어찌되었든 인류는 컴퓨터 과학 기술과 다양한 분야의 지식, 테크닉을 빌려 자연어처리(NLP)라는 분야를 만들어냈고, 이미 언어모델(LM)으로 인간의 언어 현상을 컴퓨터 상에 훌륭하게 구현해냈습니다. 하지만 언어의 본질은 결국 커뮤니케이션이자 세상을 경험하는 도구라는 점에서 세상을 경험하지 못하는 컴퓨터가 완전히 사람처럼 소통하는 것은 불가능할 것이라고 생각합니다. 이어서 보다 직관적인 인간의 언어 학습 과정과 언어모델의 학습 방식 중 하나인 강화학습에 대해 살펴보겠습니다.


행동주의 언어학과 인공지능 강화학습

촘스키와 생득주의 언어학자들은 언어습득장치와 보편문법 개념을 통해 선천적인 언어 습득 능력을 가진 인간만이 언어를 배울 수 있다고 주장했습니다. 반면 행동주의 심리학자 스키너와 행동주의 언어학자들은 언어를 학습하는 데 있어서 선천적인 능력이 아닌 학습이라는 행위가 훨씬 중요하다고 생각했습니다. 더불어서 보상(reinforcement)를 통해 얼마든지 언어 능력을 강화할 수 있다고 주장했죠.

이 행동주의는 동물이나 인공지능이 언어 학습자가 될 수 있는 가능성을 활짝 열어주었습니다. 인간의 행동은 환경적 자극으로 촉발되며, 그 행동에 대한 보상에 의해 계속해서 강화된다고 주장했기 때문에 언어 학습은 철저히 후천적이며 행동(action)과 보상(reward)라는 과정으로 이루어진다고 빋었습니다.

인공지능에게도 언어를 배우는 여러가지 방법 중 하나로 강화학습(reinforcement learning)이라는 것이 있습니다. 강화학습은 기계학습의 대표적인 방식으로 훈련의 대상인 에이전트가 특정 환경에서 알고리즘에 맞게 행동하고, 그에 따른 보상에 따라 특정 능력을 강화하는 알고리즘으로 발전하게 됩니다.

강화학습에 대해


강화학습이란, 머신러닝의 세가지 방식(지도학습, 비지도학습, 강화학습( 중 하나로, 행동에 대한 보상을 받으면서 학습하는 방법입니다. 어떠한 환경 안에서 선택 가능한 행동들 중 보상을 최대화하는 행동, 또는 행동 순서를 선택하는 것으로 위 그림으로 설명하자면 주어진 Environment에서 Agent가 더 높은 Reward를 위해 최적의 Action을 취해나가는 학습 방법입니다. 사람이 시행착오를 겪으면서 무언가를 학습하는 과정과 매우 유사한데요, 일반적으로 '관찰 - 행동 - 보상'의 순서를 반복합니다.

강화학습에는 시행착오가 반드시 필요하므로 현재까지의 경험을 바탕으로 보상을 최대화할 수 있는 행동을 수행하는 exploitation(이용)과 경험을 풍부하기 위해서 하는 새로운 시도 exploration(탐험)을 적절하게 해가는 것이 중요합니다. 강화학습에 대해 더 자세히 알아보고 싶다면 오태호 님의 블로그를 살펴보시길 추천드리며 여기서는 개념만 알고 넘어가겠습니다.

챗GPT 역시 사람같이 자연스러운문장구사능력을 갖기 위해 이 강화학습의 과정을 거쳤습니다. 챗GPT는 GPT-3.5라는 1750억개의 매개변수로 인터넷 상의 방대한 데이터를 학습한 초거대언어모델(LLM)을 기반으로 합니다. 방대한 학습 데이터가 투입되었지만 이것만으로는 사람처럼 자연스럽게 소통하는 문장을 생성해내기 어렵습니다. 그래서 인간 피드백에 의한 강화학습(reinforcement learning from human feedback, RLHF)라는 과정을 거쳐 사람과 같은 자연스러운 현재의 모델이 되었습니다.

RLHF



RLHF(Reinforcemnet learning from human feedback)은 사람의 피드백에 의한 강화학습으로, 실제 사용자들이 만든 입력 값을 기반으로 별도의 보상 모델을 학습한 후, 이 모델과 기존의 LLM이 상호작용하며 최적화해가는 방식입니다. 위 이미지는 RLHF 학습 프로세스의 개요를 나타낸 것으로 챗GPT도 이 방식을 택했는데 그 과정에 대해 조금 더 살펴보겠습니다.

ChatGPT 개발 과정
1. 인터넷 상의 방대한 데이터를 활용, GPT-3 모델을 Conversational AI에 적합하게 튜닝
2. LLM은 인간과 유사한 텍스트를 생성할 수 있게 되었지만 아래와 같은 alignment 문제가 발생
- 유용성 부족: 사용자의 명시적 지시에 따르지 않음
- 환각: 존재하지 않거나 잘못된 사실을 생성
- 해석 가능성 부족: 모델이 도출해낸 방법을 인간이 이해하기 어려움
- 편향 또는 독성 출력 생성: 편향/독성 데이터로 학습된 언어 모델은 명시적 지시가 아닌 경우 평향되고 독성이 있는 답변을 출력
3. 지도학습과 강화학습을 모두 이용하여 ChatGPT를 finetuning
-> 여기서 InstructGPT 논문에서 소개한 RLHF(Reinforcement Learning from Human Feedback)이라는 기술을 사용

여기서 ChatGPT에 적용된 RLHF는 다음과 같이 3가지 단계로 나뉘어집니다.

1) Supervised Fine-Tuning(SFT)
인간이 의도하는 정책을 학습시키기 위해 인간 Labeler(or trainer)가 선별한 적은 양의 샘플 데이터셋으로 Pre-trained LM을 Fine-Tuning함.

2) Reward Model (Mimic Human Preferences)
인간 Labeler는 1)에서 Fine-Tuning된 SFT 모델이 생성한 여러 답변 후보들 중, 인간 labeler 들이 무엇이 더 좋은 답변인지 랭킹을 매겨 점수화한 데이터셋을 수집함. 이 데이터셋을 이용하여 새로운 Reward Model을 학습함

3) PPO(Proximal Policy Optimization)를 이용한 SFT 모델 강화학습
SFT 모델에 여러 사용자들의 입력을 주고, Reward Model과 함께 상호 작용하면서 강화학습을 시킴.

각 과정의 세부적인 내용은 Medium 게시글을 살펴보길 추천드립니다.

전반적인 과정을 보면 사람이 언어를 학습하는 행동과 보상의 방식으로 LLM 모델이 전 세계적에서 모두가 사용하는 챗GPT의 수준까지 발전해왔다는 것을 알 수 있습니다.
즉, 전통적인 강화학습의 개념과는 조금 다를 수 있지만 언어모델이 사람과 비슷한 방식으로 컴퓨터가 학습하여 인간과 유사한 언어 능력을 갖춘 챗GPT가 탄생했다는 것이죠
그럼에도 불구하고 자연어처리 분야는 언어 현상이라는 일부만 구현해내기 때문에 커뮤니케이션이라는 본질을 담기에는 분명한 한계가 존재할 것입니다. 그렇기에 자연어처리는 언어모델이 인간과 같은 의사소통 본능을 깨우치지 않는 한 계속해서 새로운 과제에 도전해가야 할 것입니다.

이어서 자연어처리에 대해 더 자세히 알아보겠습니다.


[참고자료]
https://brunch.co.kr/@plutoun/67
https://brunch.co.kr/brunchbook/thinkingmachine
https://minsuksung-ai.tistory.com/13

0개의 댓글