ChatGPT가 혼동하고 있는지 확인하는 방법

Researchers describe how to tell if ChatGPT is confabulating

박윤석 VP 승인 2024.06.21 14:08 의견 0

대규모 언어 모델이 쿼리에 대해 뻔뻔스럽게 잘못된 답변을 제공하고 올바르게 답변할 때와 구별할 수 없는 확신을 가지고 그렇게 한다는 것은 세계에서 가장 잘 알려진 비밀 중 하나입니다.

여기에는 여러 가지 이유가 있습니다. AI는 잘못된 정보에 대해 훈련을 받았을 수 있습니다. 대답은 LLM이 할 수 없는 사실로부터 약간의 외삽을 요구할 수 있습니다. 또는 LLM 교육의 일부 측면이 거짓을 조장했을 수 있습니다.

그러나 아마도 가장 간단한 설명은 LLM이 무엇이 정답을 구성하는지 인식하지 못하지만 정답을 제공하도록 강요받는다는 것입니다. 그래서 그것은 단순히 뭔가를 만들어내는 것인데, 이것을 혼동(confabulation)이라고 부르는 습관입니다.

LLM이 무언가를 구성하는 시점을 파악하는 것은 사람들이 대학 에세이에서 취업 지원에 이르기까지 모든 것에 LLM에 의존하기 시작한 속도를 감안할 때 분명히 엄청난 가치가 있을 것입니다. 이제 옥스퍼드 대학의 연구원들은 LLM이 혼동되는 것처럼 보이는 시점을 결정하는 비교적 간단한 방법을 찾았다고 말합니다. 그리고 그렇게 함으로써 그들은 LLM이 제공하는 대부분의 대안적 사실이 혼동의 산물이라는 증거를 발견합니다.

혼동(Confabulation) 잡기

새로운 연구는 엄밀히 말하면 혼동에 관한 것이지 잘못된 입력에 대한 훈련과 같은 사례가 아닙니다. 옥스퍼드 연구팀이 이 작업을 설명하는 논문에서 정의했듯이, 혼동은 "LLM이 틀리고 임의적인 주장을 유창하게 하는 곳"으로, 이는 무작위 시드와 같은 관련 없는 세부 사항에 대한 답변이 민감하다는 것을 의미합니다.

그들의 작업 이면에 있는 추론은 실제로 매우 간단합니다. LLM은 정확성을 위해 훈련되지 않습니다. 그들은 단순히 방대한 양의 텍스트에 대해 훈련을 받고 이를 통해 인간처럼 들리는 문구를 생성하는 방법을 배웁니다.

훈련에서 충분한 텍스트 예제가 일관되게 무언가를 사실로 제시하면 LLM은 그것을 사실로 제시할 가능성이 높습니다. 그러나 훈련의 예가 적거나 사실이 일치하지 않는 경우 LLM은 틀렸을 가능성이 있는 그럴듯하게 들리는 답변을 합성합니다.

그러나 LLM은 정답을 표현하기 위한 여러 옵션이 있는 경우에도 비슷한 상황에 처할 수 있습니다. 연구진의 논문을 예로 들자면, "파리", "파리에 있다", "프랑스의 수도 파리"는 모두 "에펠탑은 어디 있지?"에 대한 유효한 답이다. 따라서 이 맥락에서 엔트로피라고 하는 통계적 불확실성은 LLM이 정답을 표현하는 방법에 대해 확신하지 못하거나 정답을 식별할 수 없을 때 발생할 수 있습니다.

즉, LLM이 거의 동일한 몇 가지 답변에 직면했을 때 "I don't know"를 반환하도록 강제하는 것은 좋은 생각이 아닙니다. 그렇게 하면 많은 정답을 차단할 수 있습니다.

그래서 연구자들은 의미론적 엔트로피(semantic entropy)라고 부르는 것에 초점을 맞춥니다. 이것은 LLM에 의해 평가된 통계적으로 가능한 모든 답변을 평가하고 그 중 의미론적으로 동일한 답변의 수를 결정합니다. 큰 숫자가 모두 동일한 의미를 갖는 경우 LLM은 구문에 대해 불확실할 수 있지만 정답이 있습니다. 그렇지 않다면 아마도 혼동되기 쉬운 상황이므로 그렇게 하지 않도록 해야 합니다.

의미 추출

이것이 실제로 어떻게 작동합니까? 설명은 매우 간단합니다.

이 방법은 각 질문에 대해 가능한 여러 답변을 샘플링하고 알고리즘에 따라 유사한 의미를 가진 답변으로 클러스터링하는 방식으로 작동하며, 동일한 클러스터의 답변이 양방향으로 서로 수반되는지 여부를 기반으로 결정합니다. 즉, 문장 A가 문장 B가 참이고 그 반대의 경우도 마찬가지라면 동일한 의미 체계 클러스터에 있는 것으로 간주합니다.

단일 클러스터가 우세한 경우 AI는 유사한 사실 콘텐츠를 가진 하나의 옵션 컬렉션 내에서 답변을 선택합니다. 여러 클러스터가 있는 경우 AI는 모두 다른 사실 콘텐츠를 가진 서로 다른 컬렉션 중에서 선택하며, 이로 인해 혼동이 발생할 수 있는 상황입니다.

개념적 단순성 외에도 아이디어를 기반으로 시스템을 구현하는 것도 간단합니다. 대부분의 주요 LLM은 의미론적 엔트로피를 평가하는 데 필요한 쿼리에 대해 통계적으로 가능성이 있는 일련의 답변을 생성합니다. 이미 두 문장이 서로를 암시하는지 여부를 결정하기 위해 설정된 자연어 추론 도구라는 LLM과 소프트웨어가 있습니다. 그리고 이러한 도구가 존재하기 때문에 감독 교육이 필요하지 않으며, 이는 잠재적인 답변 집합의 의미론적 엔트로피를 결정하는 방법을 배우기 위해 시스템에 혼동의 예를 제공할 필요가 없음을 의미합니다.

연구원들은 의미론적 엔트로피 필터 덕분에 사용자가 경험할 수 있는 정확도 향상을 결정하는 척도를 개발합니다. 그런 다음 퀴즈 및 일반 지식, 생물학 및 일련의 Google 검색어와 같은 광범위한 주제에 대해 다른 여러 가지 오류 포착 접근 방식을 테스트합니다.

이 테스트에서 두 가지 사실이 분명해졌습니다. 하나는 몇 가지 극단적인 경우를 제외하고는 의미론적 엔트로피가 다른 어떤 방법보다 더 많은 오답을 잡았다는 것입니다. 두 번째는 LLM에서 발생하는 대부분의 오류가 혼동으로 보인다는 것입니다. 이는 다른 방법 중 일부가 다양한 오류 유형을 포착한다는 사실에서 유추할 수 있지만, 이러한 테스트는 혼동만 포착하지만 의미론적 엔트로피 테스트보다 성능이 뛰어납니다.

단순한 사실 그 이상

연구원들은 또한 시스템이 개별 사실의 대규모 모음인 전기를 처리하도록 변경함으로써 기본적인 사실 진술 이상의 작업을 수행하도록 조정할 수 있음을 보여줍니다. 그래서 그들은 전기 정보를 일련의 개별 사실 진술로 분해하고 의미론적 엔트로피를 사용하여 이들 각각을 평가하는 소프트웨어를 개발했습니다. 이것은 150개나 되는 개별적인 사실적 주장이 포함된 짧은 전기를 썼습니다.

전반적으로, 이 시스템은 매우 유연한 시스템으로, 새로운 주요 개발이 필요하지 않으며, LLM 퍼포먼스를 크게 개선할 수 있습니다. 그리고 다른 유형의 오류는 포착하지 않고 혼동만 포착하기 때문에 다른 방법과 결합하여 성능을 더욱 향상시킬 수 있습니다.

연구자들이 지적했듯이, 이 연구는 또한 LLM이 정답이 있을 때 알아야 할 모든 정보를 가지고 있는 것처럼 보인다는 것을 암시합니다. 단지 활용되지 않을 뿐입니다. 그들이 말했듯이, "오류를 감지하는 의미론적 엔트로피의 성공은 LLM이 주장된 것보다 '모르는 것을 아는 것'에 훨씬 더 낫다는 것을 시사합니다. 그들은 단지 그들이 무엇을 모르는지 알고 있을 뿐이다."

이상의 기사는 2024년 6월 21일 ArsTechnica에 게재된 “Researchers describe how to tell if ChatGPT is confabulating”제목의 기사내용을 편집하여 작성하였습니다.

* 원문정보 출처 : Researchers describe how to tell if ChatGPT is confabulating | Ars Technica

* 추가정보 출처 : Detecting hallucinations in large language models using semantic entropy | Nature

저작권자 ⓒ 창조아고라, 무단 전재 및 재배포 금지