본문 바로가기
삶 알아두면 좋은 소소한 이야기

AI 대형 언어 모델의 환각 문제: 원인과 해결 방안

by 멍양닥터 2024. 10. 10.
반응형

이 글에서는 AI 대형 언어 모델(LLM)에서 발생하는 "환각" 문제와 그 해결 방안에 대해 구체적으로 설명합니다. 환각 현상은 LLM이 존재하지 않는 정보를 마치 사실인 것처럼 생성하는 현상으로, 이는 모델의 학습 과정에서 발생하는 여러 가지 문제로 인해 나타납니다. 특히, 환각 문제는 모델이 입력된 데이터에 대한 충분한 이해 없이 잘못된 정보를 생성하거나, 실제로 존재하지 않는 내용을 만들어내는 경우를 말합니다.

 

인공지능의 환각(Hallucination)

환각, 착각, 망각, 망상에 대한 비교

 

환각(Hallucination), 착각(Illusion), 망각(Amnesia), 망상(Delusion)은 모두 인간의 인지 과정에서 나타날 수 있는 오류를 설명하지만, 그 의미와 특성이 서로 다릅니다.

 

1. 환각 (Hallucination)

 

환각(Hallusination)

 

환각은 외부에서 자극이 없는데도 불구하고 실제로 자극이 있는 것처럼 느끼는 현상을 말합니다. 예를 들어, 소리가 나지 않는데도 음악 소리가 들린다고 느끼는 경우가 환각에 해당합니다. LLM에서의 환각은 모델이 실제 존재하지 않는 정보를 생성하는 현상으로, 마치 학습 데이터에 없는 내용을 마치 사실인 것처럼 만들어내는 것을 의미합니다. 이는 모델이 학습한 패턴을 잘못 적용하거나, 불완전한 입력에서 불필요한 세부사항을 만들어내는 경우에 발생합니다.

 

2. 착각 (Illusion)

착각(Illusion)

 

착각은 실제로 존재하는 자극을 잘못 해석하는 현상을 의미합니다. 즉, 외부의 자극이 있지만 그 자극을 뇌가 잘못된 방식으로 인식하는 것입니다. 예를 들어, 멀리 있는 물체를 사람으로 착각하는 경우가 착각에 해당합니다. LLM에서도 입력된 데이터의 의미를 잘못 해석하거나, 잘못된 문맥적 결론을 내리는 경우 착각과 유사한 오류가 발생할 수 있습니다. 이는 데이터의 해석 단계에서 발생하는 문제로, 모델이 입력의 맥락을 잘못 이해했을 때 주로 나타납니다. 

 

3. 망각 (Amnesia)

 

망각은 기억을 잃어버리는 현상을 의미하며, 뇌가 이전에 학습한 정보를 떠올리지 못하는 경우를 말합니다. 이는 인간의 인지 과정에서 자연스럽게 발생할 수 있는 일입니다. LLM에서 망각과 유사한 개념은 학습된 정보 중 일부를 무시하거나 잘못된 가중치로 인해 특정 정보를 기억하지 못하는 경우입니다. 이는 모델이 학습 과정에서 특정 패턴을 충분히 학습하지 못하거나, 중요하지 않다고 판단한 정보를 잃어버리는 경우 발생할 수 있습니다. 

 

4. 망상 (Delusion)

 

망상은 현실과 맞지 않는 잘못된 믿음을 고수하는 현상을 말합니다. 이는 외부의 자극이나 논리적 근거와 무관하게 특정한 잘못된 신념을 가지고 있는 상태를 의미합니다. 예를 들어, 자신이 특별한 초능력을 가지고 있다고 믿는 경우가 망상에 해당합니다. LLM에서 망상과 유사한 오류는 학습 데이터의 편향에 의해 발생합니다. 특정 주제나 관점에 대해 지나치게 확신에 찬 출력을 생성할 때, 실제 근거 없이 마치 사실인 것처럼 잘못된 정보를 반복하거나 강하게 주장하는 경우가 이에 해당합니다.

 

환각 현상의 원인

 

LLM의 환각 현상은 여러 요인에 의해 발생합니다.

 

1. 학습 데이터의 품질 문제

 

첫 번째 요인은 학습 데이터의 품질 문제입니다. 학습 데이터에 잘못된 정보가 포함되어 있거나, 소스와 레퍼런스 간 불일치가 있을 경우, 모델은 이러한 잘못된 정보를 학습하게 됩니다. 예를 들어, WIKIBIO와 같은 데이터셋에서 소스와 타겟 문장 간에 불일치가 발생하면, 모델이 잘못된 데이터를 학습하여 환각을 일으킬 가능성이 높아집니다. 또한, 데이터셋의 중복 항목을 제대로 필터링하지 못할 경우, 모델은 동일한 내용을 반복 학습하여 편향된 결과를 생성할 수 있습니다.

 

2. 학습과 추론 과정에서의 문제

 

두 번째 요인은 학습과 추론 과정에서의 문제입니다. 모델이 입력 데이터를 잘못 해석하거나, 디코딩 과정에서 잘못된 출력을 생성하는 경우 환각이 발생할 수 있습니다. 디코더는 인코더가 인코딩한 입력을 기반으로 최종 출력을 생성하는데, 이 과정에서 디코더가 잘못된 부분에 주의를 기울이거나, 유사한 엔티티 간의 혼합된 사실을 생성하면 환각이 발생할 수 있습니다. 또한, 디코딩 전략 자체가 환각에 기여할 수 있습니다. 예를 들어, Top-k 샘플링과 같은 디코딩 전략은 출력의 다양성을 높이기 위해 의도적으로 무작위성을 추가하지만, 이로 인해 예상치 못한 환각 콘텐츠가 생성될 가능성이 높아집니다. 

 

3. 노출 편향(Exposure Bias)

 

세 번째 요인은 노출 편향입니다. 학습 시 모델은 주어진 정답 시퀀스를 기반으로 다음 토큰을 예측하도록 학습되지만, 추론 시에는 이전에 자체적으로 생성한 시퀀스를 기반으로 다음 토큰을 예측하게 됩니다. 이로 인해 학습과 추론 간의 불일치가 발생하며, 타겟 시퀀스가 길어질수록 잘못된 생성이 이루어질 가능성이 커집니다. 또한, 대규모 코퍼스로 사전 학습된 모델은 파라미터에 지식을 기억하게 되는데, 이러한 "파라메틱 지식"이 모델의 일반화 가능성을 높이는 동시에 환각을 초래할 수 있습니다. 이는 모델이 입력된 정보보다 사전에 학습된 지식을 우선시하여 잘못된 출력을 생성하는 경우를 말합니다.

 

환각 완화를 위한 방법

 

환각을 완화하기 위한 방법으로는 크게 두 가지가 있습니다.

 

1. 데이터 관련 방법

 

첫 번째는 데이터 관련 방법입니다. 믿을만한 데이터셋을 구축하고, 데이터의 의미론적 노이즈를 줄이기 위해 데이터를 자동으로 정리하거나, 외부 정보를 활용하여 입력을 증강하는 등의 방법이 사용됩니다. 이러한 접근법은 모델이 더 나은 의미론적 이해를 바탕으로 정확한 출력을 생성하도록 돕습니다. 예를 들어, Annotator를 고용하여 데이터셋을 처음부터 깨끗하고 신뢰성 있게 구축하거나, 기존 데이터셋의 타겟을 재작성하여 노이즈를 줄이는 방식이 있습니다. 또한, 외부 지식을 활용해 입력을 보강함으로써 소스와 타겟 간의 상관관계를 개선하고, 모델이 태스크 관련 기능을 더 잘 학습할 수 있도록 합니다.

 

2. 모델링과 추론 방법

 

두 번째는 모델링과 추론 방법입니다. 환각 문제를 줄이기 위해 인코더와 디코더의 구조를 수정하는 등 모델 아키텍처를 개선할 수 있습니다. 인코더는 입력 텍스트를 의미 있는 표현으로 인코딩하는 역할을 하며, 이 과정에서 입력의 의미론적 해석을 더 잘 수행하도록 인코더 구조를 개선할 수 있습니다. 디코더 역시 주어진 입력 표현을 자연어로 변환하는 과정에서 발생하는 환각을 줄이기 위해 다양한 구조적 수정이 제안되었습니다. 예를 들어, Multi-branch 디코더, 불확실성을 인지하는 디코더(Uncertainty-aware decoder), 듀얼 디코더(Dual decoder) 등이 사용될 수 있습니다.

 

결론

 

이 글에서는 이러한 환각 현상의 발생 원인과 이를 완화하기 위한 다양한 방법들을 구체적으로 다뤄보았습니다. 결론적으로는 LLM의 환각 문제는 여전히 해결해야 할 중요한 과제이며, 이를 줄이기 위해서는 데이터 품질 개선, 모델 아키텍처의 수정, 추론 과정의 개선 등 다각적인 접근이 필요합니다.

반응형