생각하는 기계에 대해서 논의하고자 할 때 우리는 두 가지 질문에 답해야 한다. 하나는 '생각한다는 것이 무엇인가?'라는 질문이며, 또 다른 하나는 '기계란 무엇인가?'라는 질문이다. 그러나 모두가 알다시피 이러한 질문들은 사람에 따라 정의하기 나름이며 그에 대한 답 또한 천차만별일 것이다. 현시점에 생각한다는 것이 구체적으로 무엇을 뜻하는지 명확히 정의 내릴 수 있는 사람은 없으며, 계산기부터 최첨단 디지털기계에 이르기까지 어디서부터 어디까지를 기계로 보아야 할지 알 수 있는 사람도 없다.
앨런튜링은 컴퓨터 과학자답게 이러한 난해한 철학적 논의에 시간을 할애하기보다는 매우 단순화된 방법을 택했다. 튜링 박사는 컴퓨터가 정말 사람처럼 생각할 수 있다면, 대화를 통해 사람이 자신을 인간이라고 착각하게 만들 수 있지 않겠느냐면서 재미있는 실험 하나를 제안한다. 바로 튜링 테스트(Turing test)라는 실험인데, 이 실험은 우리가 사람보다 더욱 사람처럼 말하는 컴퓨터의 존재에 대해 진지하게 생각해 보는 계기가 되었다. (튜링 테스트에 대해 더 자세히 알아보고 싶다면, ChatGPT는 생각할 수 있을까?를 읽어보시길.)
출처 : 영화 The Imitation Game
영화 '이미테이션 게임'으로도 잘 알려져 있는 앨런 튜링 박사는 1950년에 발표한 논문 'computing machinery and intelligence(계산 기계와 지능)'에서 위에 말한 튜링 테스트와 튜링 기게(Turing machine)이라는 것을 제안하며 '생각하는 기계'라는 개념으로 인공지능의 논리적이고 수학적인 구현을 위한 토대를 마련하였다. 그가 세상을 떠난 후에도 이미지 처리, 시계열 예측, 자연어처리 등 인공지능의 다양한 분야에서 인간과 유사한 생각과 작동을 하는 기계를 만드는 노력과 연구는 계속되어 왔다.
특히 자연어처리(Natural Language Processing, NLP) 분야에서는 인간의 언어를 보다 자연스럽게 컴퓨터에 구현하기 위해 다양한 방법들이 시도되었다. 룰 기반(rule-based) 챗봇은 패턴 매칭(pattern matching)과 치환(substitution) 등 미리 정의된 알고리즘을 활용하여 구현되었으며, 이후 초거대언어모델(Large Language Model, LLM)에 기반한 챗GPT가 등장하여 사람과 거의 구별이 안 가는 자연스러운 문장을 생성하는 기술로 진화해 왔다. 인공지능과 인간의 언어를 자연스럽게 연결하는 기술은 지속적으로 발전해오고 있으며, 챗봇은 기술의 발전에 따라 성능과 기능이 점차 향상되고 있다.
사람처럼 말하는 챗봇의 역사
1966년 정신과 의사를 묘사한 최초의 챗봇 ELIZA가 등장했을 때만 해도 사람들은 수년 안에 인간과 구분할 수 없는 인공지능 챗봇이 등장할 것이라고 믿어 의심치 않았다. 컴퓨터 공학자 요제프 바이첸바움에 의해 구현된 의료상담용 ELIZA는 매우 단순한 패턴매칭(Pattern Matching) 알고리즘으로 구현된 초기 챗봇이다. ELIZA는 내담자의 말을 듣고 일단 그에 호응한 뒤에 그에 따라 특정 정보에 맞는 키워드 속에서 적당한 질문을 던지는 방식으로 대화를 이어간다.
ELIZA는 문장을 이해하고 추론하는 능력은 전혀 갖추지 못한 유사인공지능이지만 환자들은 이 챗봇을 실제 상담사로 착각하는 경우가 많았다. 환자 개개인의 상황에 맞는 적절한 질문을 던지는 방식으로 환자들을 교묘하게 속이는 데에 성공했기 때문이다. 이때 ELIZA effect(일라이자 효과)라는 용어가 등장했는데, 이는 인간이 컴퓨터의 행동을 무의식적으로 의인화하는 현상을 말한다.
최초의 챗봇 ELIZA (출처 : wikipedia)
그 후 1972년에는 미국의 정신병 의사인 Kenneth Colby가 정신 분열증 환자를 흉내 낸 챗봇 PARRY를 만들었으며, 애플의 Siri와 Google Assistant도 등장했다. 하지만 이후 챗봇의 한계가 드러나면서 우리가 상상했던 수준의 인간과 구분할 수 없는 정교한 인공지능 챗봇은 등장하지 않았다.
2022년에 등장한 OpenAI의 챗GPT는 방대한 양의 텍스트 데이터를 사전 학습한 초거대 언어 모델로서 뛰어난 자연어 이해와 생성 능력, 추론 능력 등을 갖춘 챗봇으로 평가되고 있다. 그러나 챗GPT는 모르는 주제에 대한 질문에 대해 잘못된 정보를 지껄이는 환각 현상과 반복되는 명령에 대해 일관된 답변을 제공하지 못하는 단점을 가지고 있으며, 비즈니스와 연구 분야에서 정확한 정보가 필요한 경우에는 적용이 한계가 있다.
이러한 단점을 보완하기 위해 프롬프트 엔지니어링(Prompt Engineering)이라는 분야가 각광받고 있지만, 여전히 자연어 처리(NLP) 기술은 완벽히 구현되지 않았다. ELIZA부터 챗GPT까지 자연어 처리 기술은 놀라운 성과를 이루었지만, 여전히 난해한 분야이며 완벽한 해결책은 아직 존재하지 않는다. 그렇다면 자연어처리는 왜 어려운 것일까?
자연어처리가 어려운 이유
1. 초거대언어모델(LLM)의 작동방식과 그 한계
자연어처리의 어려움은 언어모델(Language Model)의 작동방식과 한계에서 기인한다. 특히 챗GPT와 같은 초거대언어모델(LLM)의 한계로 인해 언어처리에 어려움을 겪게 된다. 챗GPT는 수천억 건의 방대한 양의 텍스트 데이터를 인터넷상에서 학습하여 언어를 생성한다. 하지만 이러한 LLM은 여전히 인간의 말을 따라 하고 있을 뿐 의식이나 인간과 유사한 사고 프로세스를 거치며 말하지는 않는다는 한계가 있다.
출처 : attention is all you need
초거대언어모델(LLM)은 거의 모든 종류의 텍스트 데이터를 학습에 활용한다. 웹페이지, 책, 뉴스 기사, 블로그, 소셜 미디어 등 다양한 출처의 데이터를 사용하여 다양한 주제와 도메인에 대한 지식을 학습하고 이해함으로써 정교한 추론과 자연스러운 언어 표현이 가능하다. 이러한 사전학습과 전이학습 과정을 통해 LLM은 대규모 데이터를 기반으로 자연어를 생성하는데 우리 인간의 언어습득 과정과 유사한 면도 가지고 있다.
그러나 LLM은 인간과는 다르게 인공신경망(Artificial Neural Network)을 통해 학습한 데이터에 의존하여 문장과 단어를 확률적으로 예측하는 모델이기 때문에 인간의 언어습득과는 근본적으로 다른 접근 방식을 가지고 있다. 이러한 한계로 인해 챗GPT와 같은 LLM은 자연어 처리의 어려움을 겪고 있으며, 특히 환각현상(Hallucination)과 일관성 부족 등의 단점을 보완하기 위해 프롬프트 엔지니어링(Prompt Engineering)과 같은 다양한 기술적 접근이 시도되고 있다. 자연어 처리 기술은 여전히 높은 수준의 연구와 개선이 필요하며, 미래에는 보다 정교하고 자연스러운 언어 이해와 생성을 위한 새로운 모델들이 발전해 나갈 것으로 기대된다.
2. 자연어의 복잡성과 불규칙성
자연어처리의 두 번째 어려움은 자연어가 가지는 복잡하고 난해한 특성들 때문이다. 자연어는 다양한 문법, 어휘, 표현 방식을 가지며 문화, 지역, 시대에 따라 발전하여 다양한 형태를 취한다. 이러한 불규칙성과 가변성은 언어의 핵심적인 특징으로, 컴퓨터로 언어를 구현하려는 시도를 어렵게 만든다.
또한 자연어 문장은 문맥에 따라 다양한 의미를 가지고 있으며 동일한 표현도 다양한 해석이 가능하다. 예를 들어 "bank"라는 영어 단어는 문맥에 따라 '은행'이 될 수도 있고 '강둑'이 될 수도 있다. 이러한 다의성은 컴퓨터가 문맥을 파악하고 다의성을 처리하는 데 어려움을 겪는 원인이 된다.
행동 과학자 닉 채터와 언어 심리학자 모텐 H. 크리스티얀센은 자신들의 저서인 ‘진화하는 언어(The Language Game)’에서 언어의 복잡성과 불규칙성은 언어가 고정된 어떤 것이 아니라 인간의 의사소통을 위한 노력의 산물임을 주장한다. 이들은 언어가 인간들이 상호작용하며 의사소통하고자 하는 필요에 따라 만들어진 것이며, 언어는 '의사소통'이라는 목적을 기반으로 존재한다고 설명한다. 이에 따라 언어는 의사소통을 위한 도구로서 존재하는 것으로 해석된다.
비트겐슈타인의 '언어게임(Sprachspiel)'이론과도 일맥상통하는 이들의 주장은 언어를 특정한 규칙(문법)을 따르는 게임으로 설명한다. 언어는 상호작용과 커뮤니케이션에서 일어나는 것으로 이해되며, 특정한 규칙과 맥락 안에서 의미가 형성된다고 주장한다. 이러한 관점에서 보면 언어는 단순한 도구가 아니라 사회적 상호작용과 문화의 결과물로 볼 수 있다. 따라서 의사소통과 문화적 상호작용을 위한 수단으로써 언어가 발전해 나가게 된 것으로 이해된다.
이러한 관점들은 언어의 복잡성과 다의성, 문맥 의존성을 이해하고 해석하는 데에 중요한 통찰력을 제공한다. 언어는 사용자들 간의 상호작용과 의미 구성에 의해 발전하며, 그 의미는 특정한 상황과 문맥에서 형성된다. 이러한 이해는 자연어처리와 언어 모델링에 있어서 중요한 지침을 제공하며, 보다 정확하고 효과적인 언어처리 기술의 발전을 위해 필수적으로 고려되어야 할 사항이다. 자연어처리 기술의 발전을 위해서는 이러한 복잡한 특성들을 이해하고 적절하게 다루는 방법을 연구하는 것이 필요하다.
3. 사고의 매개체로서 자연어
언어는 인간의 의사소통의 도구일 뿐 아니라 사고의 매개체이기도 하다. 하루에 약 5만 가지의 생각이 언어의 틀 안에서 이루어진다고 하며, 이러한 사고과정이 언어를 통해 형성되고 발전된다. 하지만 언어의 한계와 사고의 관계에 대한 논쟁은 여전히 언어학자와 철학자들 사이에서 진행되고 있다.
비트겐슈타인은 언어 철학의 아버지로 불리며, '언어의 한계는 세계의 한계다'라는 주장을 했다. 이는 언어가 세상을 인식하고 사고하는 도구이므로 언어를 넘어선 개념은 존재할 수 없다는 것을 의미한다. '언어는 생각의 감옥인가?'라는 질문에 대한 해답은 알 수 없지만, 언어를 사용하여 세계를 인식하는 것은 분명하다. 따라서 새로운 외국어를 배우거나 언어 능력을 확장하는 것은 사고의 확장을 의미한다고 볼 수 있다.
언어와 사고의 관계를 이해하려면 컴퓨터가 언어를 인간과 동일한 수준으로 구사할 수 있을지에 대한 질문에 답해야 한다. 이러한 질문은 컴퓨터 과학자, 인공지능 연구자, 철학자, 뇌과학자, 인지 과학자 등 다양한 분야의 전문가들이 논의하고 합의점을 찾아가야 하는 복잡하고 방대한 영역이다. 언어를 피상적으로 구현하는 것이 아닌 '사고의 매개체로서 언어'를 컴퓨터에 구현하려면 언어와 사고의 본질적 이해가 필요하다.
인간처럼 사고하고 언어를 이해하는 인공지능의 구현은 여전히 어려운 도전이며, 이를 위해 다양한 분야의 연구가 진행되고 있다. 언어철학과 인지과학의 연구를 통해 언어와 사고의 복잡성을 이해하고, 이를 기반으로 자연어처리와 인공지능 기술의 발전을 추진하려는 노력이 계속될 것으로 예상된다. 이러한 노력을 통해 인간과 인공지능 간의 언어적 상호작용과 의사소통이 더욱 발전하며, 더욱 효과적인 인공지능 시스템이 구현될 수 있을 것으로 기대된다.