AI연구회
경남ICT협회 AI 연구 모임
ChatGPT와 처음 대화해본 순간을 기억하시나요? 마치 인간과 대화하는 것 같은 자연스러움에 누구나 한 번쯤 놀랐을 것입니다. 하지만 그 뒤에는 컴퓨터가 인간의 언어를 이해하고 생성하기 위한 놀라운 기술적 여정이 숨어있습니다. 0과 1밖에 모르는 컴퓨터가 어떻게 "안녕하세요"라는 인사말의 의미를 파악하고, 상황에 맞는 적절한 답변을 만들어낼 수 있을까요?
이 글에서는 AI가 언어를 이해하고 생성하는 전 과정을 단계별로 따라가며, 각각의 핵심 기술들이 어떻게 작동하고 왜 필요한지 알아보겠습니다.
컴퓨터에게 언어를 가르치는 첫 번째 단계는 우리가 사용하는 말과 글을 컴퓨터가 이해할 수 있는 숫자로 변환하는 것입니다. 이 과정은 마치 외국인에게 한국어를 가르칠 때 먼저 단어를 하나씩 설명하는 것과 비슷합니다.
토큰화: 언어를 조각내기
가장 먼저 해야 할 일은 문장을 의미 있는 최소 단위로 쪼개는 것입니다. 이를 토큰화라고 부르죠. 예를 들어 "안녕하세요, 반갑습니다"라는 문장은 "안녕", "하세요", ",", "반갑", "습니다" 같은 토큰들로 나뉩니다. 이 과정은 언어마다 다르게 적용되는데, 한국어는 조사와 어미 때문에 영어보다 복잡한 토큰화 과정을 거칩니다.
토큰화가 중요한 이유는 같은 의미를 가진 단어들을 일관성 있게 처리하기 위해서입니다. "먹었다", "먹는다", "먹을 것이다"에서 공통된 "먹"이라는 핵심 의미를 AI가 파악할 수 있도록 도와주는 것이죠.
임베딩: 단어의 DNA 만들기
토큰을 숫자로 바꾸는 과정을 임베딩이라고 합니다. 이는 단순히 "사과=1, 바나나=2" 같은 방식이 아니라, 각 단어의 의미와 특성을 포착하는 정교한 과정입니다. 마치 사람의 특징을 키, 몸무게, 나이, 성격 등 여러 차원으로 설명하는 것처럼, 단어도 수백 또는 수천 개의 차원으로 표현됩니다.
예를 들어 "왕"이라는 단어는 권력, 지위, 남성성, 역사성 등의 특성을 높은 값으로 가질 것이고, "개미"라는 단어는 작음, 근면함, 집단성 등의 특성을 높은 값으로 가질 것입니다. 이렇게 만들어진 숫자들의 배열을 벡터라고 부르며, 비슷한 의미를 가진 단어들은 비슷한 벡터를 갖게 됩니다.
OpenAI의 임베딩 API는 3,072차원의 벡터를 사용합니다. 즉, 하나의 단어를 3,072개의 숫자로 표현하는 것이죠. 이처럼 높은 차원을 사용하는 이유는 언어의 복잡하고 미묘한 의미 차이까지 정확하게 포착하기 위해서입니다. "사랑"과 "연애"의 미묘한 차이, "화나다"와 "짜증나다"의 강도 차이까지 구별할 수 있게 되는 것입니다.
단어를 숫자로 바꾸는 것만으로는 충분하지 않습니다. 같은 단어라도 문맥에 따라 완전히 다른 의미를 가질 수 있기 때문입니다. "은행에서 돈을 찾았다"와 "강 은행에서 산책했다"에서 "은행"은 완전히 다른 의미입니다. AI가 이런 맥락을 파악할 수 있게 해주는 기술이 바로 어텐션입니다.
어텐션: AI의 집중력
어텐션 메커니즘은 영어 문장을 번역할 때 중요한 단어에 형광펜으로 밑줄을 긋는 것과 같습니다. AI가 문장을 처리할 때 어떤 단어에 더 주목해야 하는지 결정하는 기술이죠. "은행에서 돈을 찾았다"라는 문장에서 AI는 "돈"과 "찾았다"라는 단어에 높은 어텐션 가중치를 주어 "은행"이 금융기관임을 파악합니다.
어텐션의 작동 방식은 검색 과정과 매우 유사합니다. 찾고자 하는 정보(Query), 정보 목록(Key), 그리고 실제 내용(Value)이라는 세 가지 요소가 있습니다. "은행이 무슨 뜻이지?"라는 질문(Query)에 대해 문장 내 다른 단어들("돈", "찾았다")을 색인(Key)으로 사용하여 적절한 의미 정보(Value)를 찾아내는 과정입니다.
이 과정은 인간이 언어를 이해하는 방식과 놀랍도록 유사합니다. 우리도 "은행"이라는 단어를 들었을 때 주변 맥락을 보고 금융기관인지 강가인지 판단하잖아요. AI도 마찬가지로 주변 단어들에 주의를 기울여 올바른 의미를 찾아내는 것입니다.
어텐션 기술을 바탕으로 혁명적인 AI 구조가 탄생했습니다. 바로 트랜스포머입니다. 2017년 구글의 연구진이 발표한 "Attention Is All You Need"라는 논문에서 소개된 이 구조는 AI 분야의 패러다임을 완전히 바꾸어 놓았습니다.
트랜스포머의 가장 놀라운 점은 "오로지 어텐션만으로" 구성되었다는 것입니다. 이전의 AI 모델들은 순환 신경망, 합성곱 신경망 등 다양하고 복잡한 구조를 조합해서 사용했습니다. 마치 여러 종류의 재료와 복잡한 철골 구조로 건물을 짓는 것처럼 말이죠. 하지만 트랜스포머는 어텐션이라는 단일 재료만으로도 더 튼튼하고 효율적인 건물을 지을 수 있음을 증명했습니다.
멀티헤드 어텐션: 여러 관점으로 동시에 보기
트랜스포머는 하나의 어텐션이 아니라 여러 개의 어텐션을 동시에 사용합니다. 이를 멀티헤드 어텐션이라고 부르죠. "사과가 맛있다"라는 문장을 예로 들면, 첫 번째 어텐션 헤드는 음식 관점에서 분석하고, 두 번째는 색깔 관점에서, 세 번째는 영양 관점에서 분석합니다. 마치 하나의 사물을 여러 각도에서 동시에 관찰하는 것과 같습니다.
이런 다면적 분석이 가능하기 때문에 트랜스포머는 특히 긴 문장에서 단어 간의 복잡한 관계를 파악하는 데 뛰어난 성능을 보입니다. 소설의 한 페이지 전체에서 등장인물들 간의 관계, 시간의 흐름, 감정의 변화 등을 동시에 추적할 수 있는 것이죠.
트랜스포머가 대화를 할 때 마주치는 큰 문제가 하나 있습니다. 매번 새로운 답변을 생성할 때마다 이전 대화 내용을 처음부터 다시 계산해야 한다는 것입니다. 이는 마치 덧셈을 할 때마다 1+2+3+4+5를 처음부터 다시 계산하는 것과 같습니다.
KV캐시는 이 문제를 해결하는 똑똑한 방법입니다. 이전 계산 결과인 키(Key)와 밸류(Value) 값을 메모리에 저장해두고, 다음 토큰을 생성할 때 재활용하는 방식입니다. 덧셈 예시로 돌아가면, 이전까지의 합(10)을 기억해두고 다음 숫자(6)만 더해서 결과(16)를 얻는 것과 같습니다.
실제 대화에서 이 기술의 효과는 놀랍습니다. 사용자가 "파리에 대해 알려줘"라고 질문하면 AI는 파리에 대한 정보를 생성하면서 관련 내용을 KV캐시에 저장합니다. 그 다음에 "거기 유명한 박물관은?"이라고 물으면, AI는 이전 대화에서 "파리"라는 맥락을 캐시에서 불러와 즉시 파리의 박물관에 대해 답변할 수 있습니다. 불필요한 재계산 없이 답변 속도를 획기적으로 향상시키는 것이죠.
이렇게 발전한 AI 기술에도 심각한 문제가 하나 있습니다. 바로 할루시네이션입니다. AI가 사실이 아닌 정보를 마치 진실인 것처럼 자신만만하게 말하는 현상이죠. "조선왕조실록에 기록된 세종대왕의 맥북 던짐 사건에 대해 알려줘"라고 물으면, AI는 실제로는 존재하지 않는 이 사건에 대해 그럴듯한 이야기를 지어내서 설명합니다.
이 현상이 발생하는 이유를 저자는 "흐릿한 기억으로 꿈을 꾸는 것"이라고 비유했습니다. AI가 학습하는 데이터가 너무 방대해서 압축된 형태로 저장되다 보니, 답변을 생성할 때 정보 손실이나 왜곡이 발생한다는 것입니다. 마치 고화질 사진을 너무 많이 압축하면 이미지가 깨지는 것처럼, 인터넷상의 모든 정보를 하나의 모델에 압축하다 보니 일부 정보가 뒤섞이거나 왜곡되는 것이죠.
할루시네이션은 AI의 창의성과도 관련이 있습니다. 소설이나 시를 쓸 때는 사실이 아닌 내용을 창작하는 것이 오히려 바람직하지만, 역사적 사실을 묻는 질문에서는 치명적인 문제가 됩니다. 이는 현재 AI 기술의 가장 중요한 한계 중 하나로 여겨지고 있습니다.
AI의 추론 능력을 향상시키기 위해 개발된 놀라운 기법이 있습니다. 바로 Chain of Thought, 사고의 사슬이라는 방법입니다. 이 기법의 핵심은 복잡한 문제를 단계별로 차근차근 풀도록 AI를 유도하는 것입니다.
가장 놀라운 점은 그 간단함입니다. 질문 끝에 "자, 단계별로 천천히 생각해 봅시다"라는 문구만 추가해도 AI의 정확도가 극적으로 향상됩니다. 예를 들어 "25 × 34는?"이라고 물으면 AI가 틀릴 가능성이 높지만, "25 × 34를 단계별로 계산해봅시다"라고 하면 "25 × 30 = 750, 25 × 4 = 100, 750 + 100 = 850"처럼 과정을 보여주며 정확한 답을 찾아냅니다.
이는 인간의 문제 해결 방식과 매우 유사합니다. 우리도 복잡한 수학 문제를 풀 때 중간 과정을 종이에 적어가며 단계별로 접근하잖아요. AI도 이런 방식으로 "생각"할 수 있게 된 것입니다. 이는 AI가 단순한 패턴 매칭을 넘어서 진정한 추론 능력을 갖게 되었다는 중요한 신호로 받아들여지고 있습니다.
할루시네이션 문제와 최신 정보 부족 문제를 해결하기 위해 개발된 기술이 RAG(Retrieval-Augmented Generation)입니다. 이는 AI에게 참고서를 주면서 답변하게 하는 방식이라고 이해하면 됩니다.
기존 방식은 학생이 기억에만 의존해서 시험 답안을 작성하는 것과 같았습니다. 할루시네이션의 위험이 높고, 최신 정보를 반영하기 어려웠죠. 하지만 RAG는 학생에게 참고서를 보면서 답안을 작성하게 하는 방식입니다. 훨씬 정확하고 신뢰할 수 있는 답변을 얻을 수 있습니다.
RAG의 작동 과정은 다음과 같습니다. 사용자가 "2024년 올림픽 금메달리스트는?"이라고 질문하면, AI는 먼저 최신 스포츠 데이터베이스에서 관련 정보를 검색합니다. 그 다음 검색된 결과를 바탕으로 답변을 생성하고, 출처와 함께 정확한 정보를 제공합니다.
이 기술의 실무 활용 가능성은 무궁무진합니다. 기업에서는 내부 문서 데이터베이스와 연결하여 회사 정책이나 프로세스에 대한 정확한 안내를 제공할 수 있고, 의료 분야에서는 최신 의학 논문을 참조하여 더 정확한 진단 보조 정보를 제공할 수 있습니다. 법률 분야에서도 방대한 판례 데이터베이스를 활용하여 정확한 법률 상담을 제공할 수 있게 되었습니다.
이 모든 기술들은 독립적으로 작동하는 것이 아니라 서로 유기적으로 연결되어 하나의 완전한 시스템을 만듭니다. 사용자가 질문을 입력하면, 먼저 토큰화와 임베딩을 통해 컴퓨터가 이해할 수 있는 형태로 변환됩니다. 그 다음 어텐션 메커니즘을 통해 문맥을 파악하고, 트랜스포머 구조 안에서 복잡한 추론 과정을 거칩니다. 이 과정에서 KV캐시가 효율성을 높이고, Chain of Thought가 추론의 정확성을 향상시킵니다. 마지막으로 RAG가 사실 확인과 최신 정보 제공을 담당하여 신뢰할 수 있는 답변을 만들어냅니다.
각 기술은 특정 문제를 해결하기 위해 개발되었지만, 모두 함께 작동할 때 우리가 경험하는 놀라운 AI 능력이 탄생합니다. 자연스러운 대화, 정확한 정보 제공, 창의적 문제 해결, 복잡한 추론까지 - 이 모든 것이 지난 몇 년간 개발된 이 기술들의 조합으로 가능해진 것입니다.
이제 우리는 AI가 어떻게 작동하는지 조금 더 깊이 이해할 수 있게 되었습니다. 단순히 "AI가 똑똑하다"는 것을 넘어서, 그 똑똑함이 어떤 정교한 기술적 과정을 통해 만들어지는지 알게 된 것이죠. 이런 이해는 AI를 더 효과적으로 활용하고, 그 한계를 인식하며, 미래의 발전 방향을 예측하는 데 도움이 될 것입니다.
기업 홍보를 위한 확실한 방법협회 홈페이지에 회사정보를 보강해 보세요.