인간은 언제 인공지능에게 놀랄까?
하나를 알려줬을 때 하나만 아는 게 아니라, 둘, 셋을 알 때 놀란다.
1. 안 알려준 규칙을 스스로 알아낼 때
아마 처음으로 놀랐을 때는 규칙 기반 모델에서 머신러닝으로 변화했을 때였을 것이다. 규칙 기반 모델은 말 그대로 주어진 규칙만 따른다. 예를 들어 'sister'를 '언니'로 번역하라는 규칙을 알려주면 규칙 기반 모델은 그 어떤 경우에도 'sister'를 '언니'라고만 번역한다. '여동생'이나 '누나'로 번역될 여지는 없다.
인간이 일일이 규칙을 만들어주는 데 한계를 느끼고 등장한 머신러닝은 인공지능이 데이터 속에서 스스로 규칙을 찾아내는 방식이다. 인간은 데이터만 전달해 주면 된다. 머신러닝으로 잘 학습된 모델은 문맥에 따라 'sister'를 '언니'로 번역하기도, '여동생'으로 번역하기도, '누나'로 번역하기도 한다. 학습에 사용된 데이터에서 'sister'가 '언니'로도, '여동생'으로도, '누나'로도 번역되었기 때문에 가능한 일이다.
2. 안 알려준 클래스를 스스로 이해할 때
'클래스(class)'란 분류 모델에서 정답으로 주어지는 카테고리들을 말한다. 문장 감정 분류 모델이라면 입력으로 주어진 문장이 긍정적인지 부정적인지, 사진 분류 모델이라면 주어진 사진이 강아지인지 고양이인지 분류한다. 이때 긍정과 부정, 강아지와 고양이가 각 모델의 '클래스'다. 분류 모델은 학습 데이터에 주어진 클래스 내에서만 분류할 수 있었다. 학습 데이터에서 강아지, 고양이를 분류하는 것만 배웠는데 갑자기 사자 사진을 주면서 사자로 분류하도록 강요할 순 없는 노릇이었다.
하지만 2021년에 등장한 CLIP 모델은 갑자기 나타난 사자 사진도 잘 분류할 수 있다. 정확히 말하면 CLIP 모델은 기존 분류 모델과 학습 목표가 다르긴 하다. 기존 분류 모델은 주어진 입력이 미리 정한 각 클래스에 속할 확률을 예측하는 방식이다. 이 사진이 강아지일 확률이 얼마, 고양이일 확률이 얼마인데 강아지일 확률이 더 높으니 강아지로 분류하는 식이다. CLIP은 '강아지'라는 텍스트의 임베딩과 여러 강아지 사진들의 임베딩은 가까워지게, '강아지'라는 텍스트의 임베딩과 고양이, 늑대, 케이크, 펭귄 등의 사진들의 임베딩은 멀어지게 학습한다. 이러한 방식으로 학습 데이터에 '사자'라는 텍스트나 사자 사진이 없었어도, 사자 사진을 주면 '강아지'라는 텍스트의 임베딩이나 '고양이'라는 텍스트의 임베딩보다 '사자'라는 텍스트의 임베딩과 가깝다는 것을 알게 된다. 학습 당시 사자에 대해서 알려주지 않았지만, 인공지능이 스스로 사자를 이해하게 된 것이다.
3. 안 알려준 과제를 스스로 수행할 때
인공지능의 각 분야마다 주요 '과제(task)'가 있다. 텍스트 데이터를 다루는 자연어처리에서는 문장 분류, 개체명 인식, 요약, 번역 등의 과제가 있다. 일반적으로 언어 능력이 뛰어난 사전학습 모델이 있으면, 각 과제에 맞는 데이터와 오차 함수(loss function)로 파인튜닝(finetuning)하여 과제별 모델을 만든다.
2022년 말에 혜성처럼 등장한 ChatGPT의 놀라운 점은 여기에 있다. ChatGPT는 분류든, 개체명 인식이든, 요약이든, 번역이든 뭐든지 다 잘해준다. 굳이 각기 다른 모델을 쓸 필요 없이 ChatGPT 하나로 다 해결되는 것이다. 여기에 언급된 일반적인 과제가 아니라도, A-Z까지 순서대로 써서 신데렐라 이야기를 요약해달라거나 소설의 일부분을 주고 여기서 '그녀'가 지칭하는 인물의 이름을 알려달라는 생소한 과제도 잘 수행한다. ChatGPT는 이러한 과제들을 잘 수행하는 것을 목표로 학습된 것이 아니라, 다음 단어를 잘 예측하는 것을 목표로 학습되었는데도 말이다.
4. 안 알려준 모달리티를 스스로 깨우칠 때?
현시점의 인공지능은 주로 글로 쓰인 상태의 언어, 즉 텍스트와 이미지 데이터를 잘 처리한다. '멀티 모달 모델(Multi-modal Model)'이라고 해봤자 텍스트와 이미지를 함께 이해할 수 있는 정도이다. 하지만 인간은 정말 다양한 감각을 이용해 세상을 이해한다. 인공지능이 인간처럼 세상을 이해하려면 말소리도, 발자국 소리도, 빵 냄새도, 케이크의 달콤함도 이해할 수 있어야 한다.
입력으로 주어진 데이터가 인공지능이 알 수 있는 세상의 전부인 만큼, 안 알려준 모달리티를 인공지능이 스스로 깨닫는 건 불가능해 보이긴 한다. 내가 보기엔 불가능해 보여도 어떤 천재가 뿅 하고 만들어줄 수도 있으려나?
하지만 굳이 안 알려주고 인공지능이 스스로 발자국 소리나 빵 냄새를 이해하길 바랄 필요는 없다. 어떻게든 인공지능이 이렇게 다양한 데이터를 이해할 수 있게 만들면, 그것도 충분히 놀라울 것이다.
개인적으로는 인공지능이 추리 문제를 잘 풀면, 정말 인간만큼 똑똑하다고 인정할 수 있을 것 같다. 추리 문제는 이질적인 데이터에 산발적으로 흩어진 단서를 조합해 논리적인 결론을 내야 한다. 피해자의 재무 상태는 통장을 통해, 가족 관계는 가족사진을 통해, 왼손잡이라는 사실은 수저를 어디에 놨는지를 통해, 범인이 청산가리를 썼다는 사실은 아몬드 냄새를 통해 알아낼 수 있다. 정답을 알아내는 데 필요하지 않은 노이즈도 많다. 추리 문제가 재밌으려면 의심스러운 용의자가 여럿 있어야 하기에, 이들을 그럴듯한 범인으로 만들어주기 위한 노이즈도 많이 섞여 있다. (여담이지만, 이런 추리 문제에 관심 있다면 책 <당신은 사건 현장에 있습니다>를 추천한다. 아주 재밌다!)
궁금해서 국정원 추리 퀴즈를 ChatGPT에게 풀어보라고 시켜봤는데 잘 못했다. 이미지에서 알 수 있는 정보는 최대한 텍스트로 풀어써줬는데도 못했다.
언젠가 추리 문제를 잘 푸는 인공지능 모델을 학습시켜보고 싶다. 현재로서 가장 잘할 가능성이 높은 LLM을 이용하고, 셜록 홈즈(Sherlock Holmes)의 이름을 따와서 이름은 "hoLLMes"! 하지만 데이터를 구하기가 매우 어렵겠지.
Thumbnail Image by Erwan Hesry on Unsplash