ChatGPT에 ‘ChatGPT가 무엇입니까?’라고 질문하면 아래와 같이 답변한다.
ChatGPT는 OpenAI에서 개발한 언어모델입니다. GPT(Generative Pre-trained Transformer)의 한 버전으로, 대규모 텍스트 데이터셋에서 훈련되어 자연어 처리 작업에 사용됩니다. ChatGPT는 텍스트 기반의 질문에 대한 응답을 생성하는 데 특화되어 있으며, 다양한 주제에 대한 정보 제공, 대화, 문장 생성 등의 작업을 수행할 수 있습니다.
그렇다면 언어모델이란 무엇일까? 언어모델을 쉽게 이해하기 위해서, 학습모델에 텍스트를 이해시키기 위한 일련의 과정들을 알아보자. 학습모델은 간단하게 컴퓨터라고 생각하면 편하다.
‘2023년 8월 9일 서울아산병원 동관 중식은 소고기미역국밥과 동그랑땡’이라는 문장을 보자. 한국어에 익숙한 사람이라면 ‘2023년, 8월, 9일’은 시간, ‘서울아산병원, 동관’은 장소, ‘중식, 소고기미역국밥, 동그랑땡’은 음식이라고 자연스럽게 이해하게 된다. 하지만 컴퓨터가 위 문장을 사람처럼 이해하려면 어떤 과정이 필요할까?
첫 번째로 해볼 방법은 빈칸 맞추기다. 문장 중간 중간에 단어를 지우고 컴퓨터가 예측하게 한다. 이 방법이 어딘가 익숙하다면 ‘다음 문장의 빈칸에 들어갈 알맞은 단어를 <보기>에서 고르시오’ 문제를 많이 풀어봤기 때문일 것이다. 다시 문장으로 돌아가서 ‘중식’이라는 단어를 지우고 컴퓨터가 반복적으로 예측하게 한다면, 컴퓨터는 ‘중식’외에도 ‘점심’, ‘석식’, ‘저녁’, ‘아침’, ‘조식’ 등 유사하지만 조금은 다른 단어들을 예측하게 될 것이다. 이를 통해 컴퓨터는 해당 단어들이 유사하다고 학습하게 된다. 조금 어려운 표현을 사용하자면, 서로 유사한 단어들을 가까운 벡터 공간에 사상하게 된다.
두 번째로 해볼 방법은 다음 단어/문장 맞추기다. 문장의 앞부분을 보여주고 컴퓨터가 이어지는 단어/문장을 예측하게 한다. 역시 어딘가 익숙하다면 ‘문장 이어쓰기’ 또는 ‘글 이어 쓰기’ 문제와 비슷한 방식이기 때문이다. 다시 문장으로 돌아가서 ‘2023년 8월 9일 서울아산병원 동관 중식은’ 뒤에 이어지는 문장을 컴퓨터가 예측하게 한다면, 컴퓨터는 서울아산병원 동관 메뉴로 적절한 조합들을 이어서 작성하게 된다.
ChatGPT는 두 번째 방법으로 학습된 언어모델이다. ‘문장 이어쓰기’의 장점은 문답(Q&A)을 배우는 데 적합하다는 것이다. 앞서 ‘2023년 8월 9일 서울아산병원 동관 중식은’ 문장 끝에 물음표 하나만 붙이면 사람의 질문이고, 이어지는 ‘소고기미역국밥과 동그랑땡’은 ChatGPT의 답변이 된다. 인터넷에 존재하는 수많은 텍스트로 ‘문장 이어쓰기’를 반복하다 보면 사람들의 질문에 대한 이어지는 답변들을 예상할 수 있게 된다.
흔히 ChatGPT 답변에 거짓말이 많다는 할루시네이션(Hallucination) 문제도 이러한 작동 원리를 생각하면 당연한 결과이다. 인터넷에 존재하는 흔한 텍스트에서 얻을 수 있는 답변의 정확도는 높지만, 그렇지 않은 텍스트에서 얻을 수 있는 답변은 정확도가 낮을 수밖에 없다. ChatGPT는 어떠한 상황에서도 답변해야 하므로 본인이 학습한 텍스트에서 가장 가능성이 높은 문장을 이어서 답변하게 된다.
이번 칼럼에서는 언어모델을 학습하는 방법인 ‘빈칸 맞추기’와 ‘문장 이어쓰기’에 대해 알아보았다. 결국 두 방법 모두 컴퓨터에 제공되는 데이터의 양과 품질이 언어모델의 성능을 결정하게 된다. 초등학교 수학 교재로 10년을 공부해도 대학교 수학 문제를 풀 수 없듯이, 언어모델에 제공되는 데이터의 수준이 높을수록 복잡하고 어려운 질문에도 답을 할 수 있게 된다. 다음 칼럼에서는 생성형 AI 분야에 전세계 주요 IT 기업들이 어떤 형태로 참여하고 있는지 알아보도록 하겠다.
빅데이터연구센터
전태준 특수전문학자
전태준 특수전문학자는 2019년에 입사해 아산생명과학연구원 빅데이터연구센터 특수전문학자로 근무하고 있습니다. 의료 인공지능을 주제로 한국과학기술원(KAIST) 전산학과 박사를 졸업하였습니다. 현재 빅데이터연구센터 전산정보의학연구단을 이끌고 있으며, 인공지능 기술의 의료 분야 접목에 관심이 많습니다.