본문 바로가기
개발 일기

ChatGPT가 갖추지 못한 능력 : 추론능력

by 김개발자 2023. 3. 25.

  ChatGPT는 방대한 양의 Text 데이터로 학습이 되어 있다. 즉, 웹상에 공개된 많은 글자 정보를 읽고 내용과 맥락에 맞게 대답하는 능력을 갖춘 것이다. 그렇다면 ChatGPT가 갖추지 못한 능력은 무엇일까? 바로 웹상에 공개되지 않은 것들이다. 사람들은 직관적으로 알게 되어서 굳이 누군가에게 묻거나 물을 필요가 없는 일들. 또는 정말 간단한 문제이지만 웹상에서 등록되지 않은 문제들이 바로 그렇다. 그래서 물리적 직관에 관한 문제를 내면 ChatGPT는 괴상한 답을 내놓기도 한다. 나는 이런 ChatGPT가 답을 내놓지 못하는 문제를 찾기위해 ChatGPT에게 종종 질문했다. 그리고 내가 찾은 ChatGPT가 갖추지 못한 능력을 공유하려 한다.

ChatGPT에게 낸 문제

  위의 문제는 어느정도 학습된 사람에게는 어렵지 않은 문제다. 새로운 연산자가 어떻게 동작하는지 추론하게 하는 문제인데, 예시를 조금만 보면 어떻게 동작하는 것인지 파악이 가능하다. 즉, 앞뒤의 숫자를 모두 뒤집어서 붙이면 된다. 따라서 43 @ 32 의 답은 3423 이 된다. 그러면 ChatGPT의 답은 어떠할까?

ChatGPT가 낸 답

  이 아래에는 나름의 설명을 적어주었지만 사실 맞는 설명은 아니었다. 문제가 어려웠던 것일까. 문제를 어떻게 푸는지 방법을 알려줘봤다.

@ 연산자의 동작 원리와 새로운 문제

  @ 연산자는 위의 설명과 같이 동작한다. 연산자 기준 좌 우측 숫자를 모두 각각의 자리에서 역정렬을 한 다음 그대로 이어붙이면 된다. 그럼 4321@8765 의 정답은 12345678이 된다. ChatGPT는 위의 설명을 잘 알아들었을까? 

풀이는 완벽, 하지만 오답

  ChatGPT는 정확히 풀이방법을 이해했다. 그런데 여기서는 기이한 모습을 보여준다. 풀이는 정답을 향했으나 최종 정답은 오답을 내놓았다. 다른 문제를 추가로 내줘보았다.

심지어 숫자 5는 주어지지도 않았다.

  이번 문제에서는 숫자 5는 주어지지도 않았다. 의심스러운 점은 각 연산의 과정과 결과를 개별적으로 인식하는 것이 아니라 유기적, 맥락적으로 접근하는 것이 아닌지 하는 생각이 들었다. 이를 실험해보기 위해 새로운 새로운 채팅을 시작해서 이를 확인해보려한다. 이번에는 처음부터 연산자의 동작방법을 설명하고 문제를 내보자.

정답은 맞춘 ChatGPT

  이번에는 정답을 맞췄다. 새로운 채팅에서는 처음부터 @연산자의 동작에 대해 설명해주었다. 그리고 문제를 내니 바로 잘 맞추는 모습을 볼 수 있었다. ChatGPT는 이해능력은 높으나 추론 능력은 떨어지는 것을 확인 할 수 있었다. 


추가
정답을 맞춘 채팅에서 새로운 연산자 문제를 냈을 때

전체 숫자를 역순으로 하는 연산자

전체 숫자를 역순으로 하는 연산자 #에 대한 문제를 내고 답을 구해달라고 했을때 ChatGPT는 이번에도 정답을 맞출 수 있었을까?

오답

  답을 낸 모습을 보면 앞선 @ 연산의 개념을 가져와서 # 연산에 적용한 흔적을 볼 수 있다. 즉, ChatGPT는 각각의 연산의 내용을 분리하지 못하고 하나의 맥락으로 이해하려고 하고 있다. 이후 추가로 힌트를 더 주고 문제를 냈을 때도 정확한 대답을 내진 못했다. 다만 @ 연산의 내용이 적용되는 오류는 줄어드는 모습을 보였다.

추가 hint
거의 정답에 근접했지만 오답

'개발 일기' 카테고리의 다른 글

FastAPI로 보는 API 인터페이스 레이어 설계  (0) 2023.03.23

댓글