You are on page 1of 2

2013 년, 독일의 한 건설회사는 자신들이 사용하는 제록스(Xerox) 복사기에서 이상한 점을 발견한다.

건물의
평면도를 복사할 때마다 복사본이 원본과 미묘하지만 분명하게 달랐던 것이다. 원본 건물에 있는 세 개의 방은 각각
그것의 면적을 지정하는 직사각형과 함께 표기되어 있었다. 방들은 각각 14.13, 21.11, 그리고 17.42 제곱 미터였다.
하지만 복사본에서는 모든 방이 14.13 제곱미터로 표기되어 있었다. 회사는 이 얼핏 이해하기 어려운 결과를
분석하기 위해 다비드 크리셀 (David Kriesel)이라는 컴퓨터 공학자에게 연락했다. 그들이 컴퓨터 공학자를 찾아
나선 것은 그 당시 최신 제록스 복사기가 물리적인 제로그래픽 프로세스 (xerographic process)라는, 1960 년대
당시에 대중화된 기술을 사용하지 않았기 때문이다. 이 기술 대신 그 복사기는 문서를 디지털의 형태로 스캔하여 얻은
이미지를 인쇄하는 방식으로 작동했다. 이를 거의 모든 디지털 이미지 파일이 공간 절약을 목적으로 압축된다는
사실과 함께 고려해보면, 그 수수께끼의 실마리가 드러난다.

파일 압축에는 두 가지의 과정이 필요하다. 첫째는 인코딩으로, 파일을 더 작은 포맷으로 변환하는 과정이다.
둘째는 디코딩으로, 앞선 과정을 거꾸로 수행하는 것이다. 만일 두 번째 과정을 통해 복구된 파일이 원본과
동일하다면, 우리는 그것을 무손실 압축이라고 부른다. 어떠한 정보도 손실되지 않은 것이다. 반면에, 복구된 파일이
원본의 근사치에 불과하다면 그것은 손실 압축이라 불린다. 무손실 압축은 주로 텍스트 파일과 컴퓨터 프로그램에
사용되는데, 이는 이들 영역에서는 단 하나의 잘못된 글자조차도 치명적인 문제를 일으킬 수 있기 때문이다 . 손실
압축은 주로 사진, 오디오, 그리고 비디오에 사용되는데, 이는 이들에게 완벽한 정확도가 요구되지 않기 때문이다.
우리는 대체로 사진, 음악, 혹은 영화가 완벽하게 재생되지 않더라도 알아차리지 못한다. 오직 압축율이 매우 높은
경우에만 우리는 그 손실을 인지하게 된다. 이러한 경우에 우리는 압축 아티팩트 (compression artifacts)라고
하는 현상을 보게 된다 (역주: 이는 학술적으로 사용되는 명칭이며, 일상 용어에서 화질 저하 혹은 디지털 풍화/
열화라고 한다). 작은 JPEG 와 MPEG 파일의 흐릿함, 낮은 비트레이트의 MP3 에서 듣게되는 작은 소리들이
이러한 아티팩트이다.

제록스 복사기는 JBIG2 라고 알려진, 흑백 이미지에 사용하도록 디자인된 손실 압축 포맷을 사용한다. 이


복사기들은 내부 저장 공간을 절약하기 위해 이미지 내부에 유사해보이는 영역들을 식별하여 그 영역들을 하나의
영역으로 저장한다. 그 이후 재구축 과정에서, 복사기는 저장된 하나의 영역을 모든 유사한 영역을 위해 사용한다.
결국 그 복사기는 방들의 면적을 표기한 영역들이 충분히 유사하여 오직 하나의 (14.13) 표기만을 저장하면 된다고
판단/저장 했으며, 그 저장된 표기를 재사용하여 평면도를 인쇄한 것이다.

OpenAI 의 ChatGPT, 그리고 A.I. 연구자들이 대형 언어 모델 (large language model)이라고 부르는


유사한 프로그램들을 고려한다면, 나는 이 제록스 복사기 사건이 오늘 날 재고할 가치가 있는 사건 이라고 생각한다 .
복사기와 대형 언어 모델 사이의 관계는 얼핏 눈에 보이지 않을지도 모르겠다. 하지만 이하와 같은 시나리오를
고려해보자. 당신이 곧 인터넷을 앞으로 영원히 사용하지 못하게 된다고 상상해보라. 그리고 당신은 이에 대한
대비책으로 인터넷 상의 모든 텍스트를 복사/압축하여 개인 서버에 저장하려고 한다. 그러나 안타깝게도 당신의 개인
서버는 요구되는 전체 크기의 단 1 퍼센트만을 충족한다. 따라서 당신이 모든 텍스트를 저장하려고 한다면, 무손실
압축은 불가능한 선택지다. 그리하여 당신은 텍스트의 통계적 규칙성을 식별하여 특수한 포맷으로 그 텍스트를
저장하는 알고리즘을 작성한다. 이 작업에 사용될 수 있는 연산 능력은 사실상 무한하기 때문에, 당신의 알고리즘은
고도로 미묘한 통계적 규칙성까지 식별할 수 있으며, 이를 통해 당신은 당신이 원하는 1/100 의 압축율을 달성한다.

자, 이제 인터넷을 사용하지 못하는 것이 그렇게까지 끔찍하진 않다. 당신은 인터넷에서 필요한 모든 정보를
서버에 저장했다. 한 가지 문제가 있다면, 이 텍스트들이 고도로 압축되어 있는 탓에 정확하게 일치하는 문구를
검색할 수 없다는 것이다. 왜냐하면 저장된 텍스트는 더이상 이전의 텍스트와 동일하지 않기 때문이다. 당신은 이
문제를 해결하기 위해 인터페이스를 만든다. 그 인터페이스에 당신은 질문 형태의 쿼리를 입력하고, 서버에 저장된
정보의 요점을 기반으로 작성된 답변을 받는다.

내가 여기 서술한 내용은 ChatGPT 혹은 대부분의 대형 언어 모델과 유사하다. ChatGPT 를 웹상에 있는 모든


텍스트를 흐릿하게 처리한 JPEG 라고 생각해보자. 마치 JPEG 가 고해상도의 이미지가 갖고 있는 정보를 대체로
잘 유지하고 있듯이, ChatGPT 또한 웹상의 정보를 대체로 잘 간직하고 있다. 하지만 당신은 정확한 비트시퀀스
(sequence of bits)를 검색하지는 못한다. 당신이 그것으로부터 얻을 수 있는 것은 다만 근사치에 불과하다.
ChatGPT 의 경우, 이 근사치가 문법적인 텍스트의 형태로 제공되며, ChatGPT 는 이를 탁월하게 수행하기
때문에 우리는 대체로 납득 가능한 결과를 얻게 된다. 그러니까, 우리는 여전히 흐릿한 JPEG 를 바라보고 있지만,
그것은 사진 전체의 선명도를 떨어뜨리지 않는 방식의 흐릿함이다.

손실 압축을 통한 이 비유는 웹상의 정보를 재포장하는 ChatGPT 의 기능을 그저 다른 방식으로 설명하기만 하는


것이 아니다. 이를 통해 우리는 ChatGPT 와 같은 대형 언어 모델에서 발생하기 쉬운 “환각” (hallucination) 혹은
사실에 입각한 질문에 대한 터무니없는 대답을 이해할 수 있다. 이 환각은 압축 아티팩트인데, (제록스 복사기가
출력한 잘못된 표기들과 같이) 이들은 충분히 그럴듯하게 보여 이들을 식별하기 위해서는 원본과 대조하는 과정이
요구된다. 이 경우에 원본은 웹상의 정보, 혹은 세계에 대한 우리들 자신의 지식일 것이다. 이러한 방식으로
생각해보면, 환각은 전혀 놀라운 일이 아니다. 압축을 위한 알고리즘이 원본의 99%를 폐기하도록 설계되었다면,
이후에 재생산되는 생성물의 대부분은 완전히 조작된 것이라고 예측하는 것이 타당하다.

이 비유는 우리가 손실 압축 알고리즘이 사용하는 일반적인 기법이 보간(interpolation), 다시 말해 거리를 두고


떨어진 서로 다른 둘 사이의 값을 그 간격의 양쪽 끝에 있는 값을 바탕으로 추정하는 것이라는 점을 기억하면 더욱 잘
이해될 것이다. 어떤 이미지를 보여주는 프로그램이 사진 한 장을 보여주는 과정에서 누락된 픽셀을 재생시켜야
한다면, 그 프로그램은 누락된 픽셀 인근에 있는 픽셀들의 값을 참조하여 그 평균을 계산한다. 예를 들어 ChatGPT
에게 건조기에서 양말을 잃어버린 상황을 독립선언서 스타일로 서술하라고 해보. 그 후에 그것이 수행하는 작업은
다음과 같다.

You might also like