창과 방패를 만드는 것은 누구인가?
최근 교육계에서는 ChatGPT가 표절에 사용된다는 우려가 커지고 있다. ChatGPT로 생성한 과제물 제출을 허용하지 않는 경우도 있고, 반대로 과제물을 작성할 때 ChatGPT를 사용하는 것을 허용하는 곳도 있었다. 이전에 쓴 글(https://brunch.co.kr/@codingchild/5)에서 다뤘지만, 후자는 펜실베이니아 대학의 베이커 교수가 대표적이다.
ChatGPT의 허용 여부는 개인의 신념에 따라 달라질 수도 있지만, 교육이나 학습의 결과가 진학과 취업에 영향을 주는지 여부에 따라 달라질 수 있다. 예컨대 학교에서 이루어지는 중간고사, 기말고사 등의 시험이나 TOEIC, TOEFL과 같은 공인영어시험이 대표적이다.
중간고사, 기말고사는 여전히 지필시험으로 이루어지기 때문에 ChatGPT가 사용될 가능성은 크지 않다(100년 뒤에는 컴퓨터로 중간고사, 기말고사를 치는 날이 오지 않을까?).
그러나 TOEFL의 경우는 다르다. 코로나-19 이후 TOEFL은 온라인 시험 방식을 도입하였다. 실제로 필자는 코로나-19 기간에 온라인으로 TOEFL 시험을 본 경험이 있다.
과거 오프라인으로 TOEFL을 본 경험이 있는 독자분들은 한 가지 의문이 생길 것이다. 온라인으로 시험을 보면 TOEFL 점수의 공정성이 보장이 될까? 그래서 온라인으로 TOEFL 시험을 볼 때는 ProctorU라는 별도의 보안 프로그램을 설치하여야 한다.
ProctorU를 설치하게 되면 TOEFL 시험을 치는 동안 인터넷 검색을 할 수 없다. 또한 TOEFL 시험 감독관이 당사자의 모니터와 웹캠에 접근할 권한을 가지게 된다. 시험 감독관은 웹캠으로 책상 위와 밑 그리고 방 전체를 비추게 한 이후 문제가 없으면 시험을 칠 수 있도록 한다. 또한 시험을 치는 내내 웹캠으로 시험 감독관이 방을 감시하게 된다.
이 정도면 오히려 오프라인 시험장보다 더 삼엄한(?) 커닝 방지 장치를 사용하는 것이 아닐까? 소프트웨어와 몇 가지 절차를 통해 온라인 TOEFL 시험은 공정성을 확보하였다.
그렇다면 점수의 공정성이 중요한 곳에서 ChatGPT가 쓴 글을 탐지할 수 있는 방법은 무엇일까? 필자가 처음 생각한 방법은 분류(classification) 모델을 만들어서 활용하는 것이다. 분류 모델을 만드는 방법은 아래와 같다.
1. ChatGPT로 대량의 문장을 생성한 이후 각 문장에 'Machine Generated'라는 라벨(label)을 붙인다.
2. 인간이 쓴 문장을 대량으로 확보하고, 각 문장에 'Human Generated'라는 라벨(label)을 붙인다.
3. BERT와 같은 대량의 자연어로 사전 학습된 인공지능 언어모델(Pre-trained Language Model)이 라벨이 달린 문장들을 구분할 수 있도록 다시 훈련한다. 이 과정을 미세 조정(Fine-tuning)이라 한다.
이 과정을 거치게 되면 ChatGPT가 생성한 글과 인간이 쓴 글을 분류할 수 있는 인공지능을 얻게 된다.
그러나 이러한 모델을 얻기 위해서는 엄청나게 많은 시간과 금전적인 비용이 들어간다. 일단 ChatGPT로 대량의 문장을 생성하는 것, 인간이 쓴 문장을 대량으로 확보하는 것부터 많은 비용이 필요하다. 또한 확보한 대량의 문장을 활용하여 인공지능 언어모델을 미세 조정하기 위해서도 많은 비용이 든다. 만약 비용을 줄이기 위해 수집하는 문장을 줄인다면, 당연하게도 인공지능 언어모델의 분류 능력은 매우 떨어질 것이다.
그렇다면 시간과 비용 등의 자원을 줄이면서도 효과적으로 ChatGPT가 생성한 글과 인간이 쓴 글을 분류할 수 있는 방법은 없을까?
최근 인공지능 분야에서 명성이 높은 스탠퍼드 대학의 Chelsea Finn 교수와 연구진들은 DetectGPT(Mitchell et al., 2023)라는 연구를 발표하였다(올해 1월 자에 발표된 연구라 매우 따끈따끈하다.). 이 방법은 별도의 추가적인 데이터로 모델을 훈련할 필요가 없는 제로샷(Zero-shot) 방식이라는 점이 주목할만하다.
논문에서 제시한 내용을 간단하게 요약하면 다음과 같다(수식은 모두 생략함.).
1. DetectGPT는 ChatGPT와 같은 생성적 인공지능이 문장을 생성하기 위해 만들어내는 확률값(정확히는 likelihood)을 활용한다.
2. 본 논문에서는 ChatGPT를 사용하지 않고, T5(Raffel et al., 2020)와 같은 좀 더 작은 인공지능을 사용하였다.
3. 생성적 인공지능이 문장을 생성하기 위해 만들어내는 확률값의 그래프와 인간이 만들어낸 문장이 만들어내는 확률값의 그래프 간의 형태가 다르다.
4. 3번의 관찰 결과를 활용하여 별도의 추가적인 데이터를 통한 인공지능 훈련 없이 두 가지를 구분할 수 있는 방법을 제시하였다.
이 방식은 매우 간단하면서 효율적인 방식이다. 그러나 필자는 이른 시간 내에 DetectGPT의 방법을 파훼할 새로운 방법이 등장할 것이라고 생각한다.
과거 컴퓨터 바이러스가 처음 등장하였을 때, 이를 막기 위한 백신도 개발되었다. 그러나 이후에는 우리가 이미 알고 있는 것처럼 백신을 우회하는 바이러스가 금방 등장하였다. 다시 이를 막기 위한 백신을 만들고, 이를 우회하는 바이러스가 등장하는 과정이 계속해서 반복되고 있다.
생성적 인공지능을 활용하는 분야에서도 창과 방패의 대결이 계속 이어지게 될 것이다. 그러나 생성적 인공지능과 이를 막기 위한 방법 간의 대결이 컴퓨터 바이러스의 사례처럼 팽팽하게 이루어지게 될까? 이에 대해 필자는 디스토피아적인 미래가 펼쳐질 것이라 생각한다.
기존의 컴퓨터 바이러스는 몇몇 천재적인 해커들이 개인단위로 혹은 집단 단위로 개발할 수 있었다(물론 국가나 기관 단위에서 개발된 것도 있겠지만..). 반면 백신을 만드는 쪽은 보안기업이나 대형 IT 기업이었다. 따라서 아무리 많은 바이러스를 만들더라도 지속적인 관리와 업데이트로 피해를 막을 수 있었다.
그러나 최근 만들어지는 ChatGPT와 같은 대형 인공지능은 대형 IT 기업 주도로 만들어진다. 최신 인공지능을 설계할 수 있는 천재적인 엔지니어 확보, 대량의 정제된 데이터 수집, 인공지능 모델 훈련을 위한 엄청난 수의 하드웨어 그리고 이 하드웨어를 작동시키는데 드는 막대한 비용을 감당할 수 있는 곳은 대형 IT 기업 밖에 없다.
그렇다면 ChatGPT와 같은 대형 인공지능이 생성한 문장을 구분할 수 있는 인공지능을 만드는 것은 누가 하게 될까? 아마 대형 IT 기업에 의해서 만들어져야 할 것이다. 고양이에게 생선가게를 맡긴 격이라고 할까? 즉, 창과 방패를 모두 대형 IT 기업에서 만들게 되는 것이다(참고로, DetectGPT를 만든 Chelsea Finn 교수마저도 Google과 함께 연구하고 있음). 자사의 대형 인공지능이 생성한 결과물을 막기 위한 방패를 대중들이 사용할 수 있도록 배포해 줄 것인가? 만약 배포한다고 해도 그 서비스는 유료로 제공되지 않을까(구독? 일시불?)?
대형 IT기업의 시혜만을 바라야 할 수도 있다는 암울한 생각이 든다.
Mitchell, Eric and Lee, Yoonho and Khazatsky, Alexander and Manning, Christopher D. and Finn, Chelsea (2023). DetectGPT: Zero-Shot Machine-Generated Text Detection using Probability Curvature. ArXiv. https://doi.org/10.48550/arxiv.2301.11305
Raffel, C., Shazeer, N., Roberts, A., Lee, K., Narang, S., Matena, M.,... & Liu, P. J. (2020). Exploring the limits of transfer learning with a unified text-to-text transformer. The Journal of Machine Learning Research, 21(1), 5485-5551.