Blogs & Articles
>
RAG의 오래된 숙제 - 동의어(Synonym)
Blog
January 7, 2025

RAG의 오래된 숙제 - 동의어(Synonym)

* 이 글은 올거나이즈 RAG팀의 이정훈 팀장님과 김성한 엔지니어님께서 작성하신 글입니다.

1. Problem

정보 검색(IR)과 자연어 처리(NLP) 분야에서 동의어 문제는 오랜 기간 해결해야 할 과제로 여겨져 왔습니다. 특히, 의료, 법률, 기술, 금융 같은 전문 분야에서는 동일한 개념이 다양한 표현으로 사용됩니다. 이를 정확하게 매칭하지 않으면 중요한 정보를 놓칠 수 있습니다.

예를 들어, 의료 분야에서 "전자의무기록"과 "EMR(Electronic Medical Record)"는 같은 의미지만, 표현 방식이 다릅니다. 이러한 동의어를 처리하지 못하면, 사용자가 원하는 정보가 검색되지 않을 수 있습니다.

RAG(Retrieval-Augmented Generation) 시스템에서도 이러한 동의어 문제는 검색 정확도와 생성된 답변의 품질에 큰 영향을 미칩니다. RAG는 크게 두 단계로 이루어집니다.

  1. Retriever(검색기): 사용자의 질문에 적합한 문서를 검색하는 단계
  2. Generator(생성기): 검색된 문서를 바탕으로 답변을 생성하는 단계

하지만 Retriever가 동의어를 처리하지 못하면, 올바른 문서를 찾지 못해 Generator가 제대로 된 답변을 생성하지 못합니다. 이는 질문의 표현 방식에 따라 답변의 정확성이 달라질 수 있다는 점을 의미합니다.

질문 : 환자가 자신의 전자의무기록을 직접 열람하는 경우 어떤 문제가 있나요?
문서(정답 근거) : 환자의 EMR 열람은 환자 중심의 의료 서비스로 나아가는 중요한 단계지만, 이를 위해 적절한 교육과 보안 조치가 필수적입니다.

이 경우, 사용자는 "전자의무기록"이라는 표현을 사용했지만, 문서에는 "EMR"이라는 표현이 사용되었습니다.

BM25와 같은 키워드 서치 방식의 Retriever는 "전자의무기록"이라는 단어를 검색할 때 "EMR"이라는 단어를 인식하지 못해 문서를 누락시킬 가능성이 큽니다. 사용자는 관련 문서를 찾지 못하고, 잘못된 답변을 생성하게 됩니다.

이처럼 RAG에서 동의어 처리가 제대로 이루어지지 않으면, 중요한 정보를 놓치게 됩니다.

1-1. Retriever

Retriever 구현 방법은 키워드 서치, 시멘틱 서치, 하이브리드 서치로 구성될 수 있습니다.

  • 키워드 서치(Keyword Search)에서 "전자의무기록"과 "EMR"처럼 의미는 같지만 형태가 다른 단어는 일반적인 키워드 매칭 알고리즘으로는 처리되지 않는 경우가 많습니다. BM25 기반의 전통적인 키워드 기반 검색은 정확하게 일치하는 단어만 검색하기 때문에, "전자의무기록"이라는 단어를 검색할 때 "EMR"이라는 단어는 결과에 포함되지 않습니다. 동의어 처리(synonym handling)가 이루어지지 않습니다.

  • 임베딩(Embedding)을 사용하는 시멘틱 서치(Semantic Search)는 BM25와 달리 동의어나 유사어에 대해 더 효과적으로 대응할 수 있습니다. 이는 임베딩이 단어의 의미적 유사성을 벡터 공간 상의 위치로 표현하기 때문입니다. 하지만, 임베딩 방법 또한 한계가 있습니다. 임베딩 모델은 훈련 데이터에서 학습한 단어들에 대해 잘 동작하지만, 도메인 특화 용어희귀한 단어는 임베딩 벡터가 적절히 표현되지 않을 수 있습니다. 예를 들어, "희귀 질병명"이나 특정 업계에서만 사용되는 전문 용어는 잘못된 벡터 위치에 배치될 수 있습니다.

NLP - Text Encoding: Word2Vec - AI PROJECTS

  • 하이브리드 서치(Hybrid Search)는 키워드 서치와 시멘틱 서치를 함께 사용합니다. 그렇기 때문에, 키워드 서치 < 하이브리드 서치 < 시멘틱 서치 순서대로 동의어 대응을 잘 합니다.

1-2. Generation

Retriever에서 올바른 문서를 찾았더라도, Generator에서 동의어를 적절히 이해하지 못하면 여전히 부정확한 답변이 생성될 수 있습니다.

예를 들어, 문서에 "EMR"이 포함되어 있지만, 생성기가 "EMR"을 "전자의무기록"으로 변환하지 못하면 사용자에게 명확한 답변을 제공하지 못할 수 있습니다.

이를 해결하기 위해서는 Prompt 엔지니어링을 통해 동의어를 명시하는 방식으로 개선할 수 있습니다.

2. Solution

2-1. Retriever

Retriever에서 동의어 문제를 해결하기 위한 방법 중 하나는 동의어 사전(synonym dictionary)을 구축하고 이를 검색 시스템에 적용하는 것입니다. Elasticsearch(ES)와 같은 검색 엔진에서는 쿼리를 전송할 때 특정 단어를 동의어로 변환하여 검색 범위를 넓힐 수 있습니다.

구체적으로, 검색 요청(query)을 생성할 때 사용자가 입력한 키워드에 대해 동의어를 포함한 여러 가지 표현을 리스트로 구성해 검색하도록 설정합니다. 예를 들어, 사용자가 "전자의무기록"을 검색하면, 시스템이 이를 "전자의무기록", "EMR", "Electronic Medical Record"와 같은 동의어로 변환하여 검색을 수행하는 방식입니다.

이러한 방식은 검색 색인(index)에 존재하는 문서의 다양한 표현을 포괄적으로 찾아낼 수 있게 합니다. 동의어를 적용한 쿼리를 구성하는 방식은 아래와 같습니다:

이 접근법은 동의어 사전이 잘 구축될수록 검색 성능이 향상됩니다. 특히, 도메인별로 특화된 동의어 사전을 수동 또는 자동으로 구축하여 검색 정확도를 높일 수 있습니다.

올거나이즈의 Alli는 도메인 별로 구축된 동의어 사전과 사용자가 직접 관리 및 추가한 동의어 사전을 함께 사용합니다. 이를 통해 지속적으로 검색 시스템을 업데이트하고, 새로운 용어나 표현을 반영할 수 있습니다.

2-2. Generation

Generation 단계에서도 동의어를 적절하게 반영해야 합니다. 검색 단계에서 올바른 문서를 찾았다 하더라도, 생성 모델이 동의어를 이해하지 못하면 사용자에게 명확하고 정확한 답변을 제공하기 어렵습니다.

이 문제를 해결하기 위해, 사용자가 질문을 입력할 때, 질문에 관련된 동의어를 prompt에 추가해 생성 모델이 이를 이해하고 반영할 수 있도록 합니다. 아래와 같이 프롬프트에 추가하면 대응이 가능합니다.

아래는 실제 Alli에서 적용된 synonym을 프롬프트에 적용한 방식입니다.

3. Experiment

실험은 총 21개의 일본어 질문과 문서를 대상으로 진행되었습니다. 각 실험에서 Retriever는 상위 3개의 결과를 추출하는 방식으로 테스트되었으며, 생성(Generation) 평가는 Retriever 이후의 결과에 기반해 답변을 생성하고 사람이 직접 정성 평가를 수행하는 방식으로 이루어졌습니다.

실험은 총 3가지 버전으로 구성되었습니다.

  • v1: 동의어 미적용 (기본 성능)
  • v2: Retriever에만 동의어 적용
  • v3: Retriever 및 생성 단계 모두 동의어 적용

각 버전의 구체적인 설정과 결과는 다음과 같습니다.

v1은 동의어를 전혀 사용하지 않은 상태로, 검색 및 생성 정확도가 31.25%로 다소 낮은 수준을 보였습니다. 이는 시스템이 다양한 표현을 인식하지 못하고, 질문과 문서 간의 매칭이 제한적이었기 때문입니다.

v2에서는 Retriever 단계에만 동의어를 적용하여 검색 정확도가 81.25%로 크게 향상되었습니다. 하지만 생성 단계에서 동의어가 적용되지 않아 생성 정확도는 43.75%로 다소 낮게 나타났습니다. 이는 검색된 문서의 품질이 높아졌지만, 생성 과정에서 문서 내 표현을 충분히 활용하지 못했기 때문입니다.

v3에서는 Retriever와 생성 단계 모두에 동의어를 적용한 결과, 검색 정확도는 v2와 동일한 81.25%를 유지하면서도 생성 정확도는 68.75%로 크게 향상되었습니다. 이는 동의어를 통해 문서 내 표현이 보다 자연스럽게 활용되고, 질문에 대한 답변 생성 과정이 더욱 정확해진 결과로 해석할 수 있습니다.

4. Result

올거나이즈는 RAG 시스템의 동의어 문제를 효과적으로 해결하기 위해 동의어 사전 구축, 프롬프트 엔지니어링 등 다양한 기술을 적극적으로 도입하고 있습니다. 이를 통해 검색 정확도를 높이고, 사용자 질문에 대한 답변 품질을 지속적으로 개선하고 있습니다.

도메인 특화 동의어 사전과 사용자 커스터마이징 기능을 결합해, 올거나이즈는 실제 비즈니스 환경에서 발생하는 복잡한 검색 및 응답 문제를 해결하는 강력한 솔루션을 제공합니다. 기업용 RAG 시스템을 고민하고 계신다면, 올거나이즈가 신뢰할 수 있는 파트너가 되어 드릴 것입니다.