Jump to content

전문가 소환술! Self-consistency에서 다중 패널 프롬프팅까지


Recommended Posts

image.png.a69dee0c85772c9cb65bb84ebe86aae5.png

ExpertPrompting


Quote

“너는 과학 선생님이야.”

그동안 모델에 정체성을 부여하는 것이 프롬프트 엔지니어링 관점에서 얼마나 효과적인지 경험해 왔습니다. "You are a {job}" 형태로 말이죠. ExpertPrompting 관련 논문에서도 전문가 정체성(Expert identity)을 이용한 프롬프트 설계가 언어 모델의 출력 품질에 미치는 중요성을 강조하고 있습니다. (2023, ExpertPrompting: Instructing Large Language Models to be Distinguished Experts(https://arxiv.org/abs/2305.14688)

이제 한 걸음 더 나아가, 복잡한 문제에 대해 더욱 깊이 있고 다각적인 분석을 얻을 수 있는 방법을 소개하고자 합니다.

 

Self-consistency


패널 접근법을 설명하기 전에 먼저 'Self-Consistency'라는 개념을 살펴볼 필요가 있습니다. Self-Consistency는 Self-Consistency Improves Chain of Thought Reasoning in Language Models 논문에서 소개된 기법으로, 언어 모델의 추론 능력을 향상시키는 데 중요한 역할을 합니다.(2022, Wang et al., Self-Consistency Improves Chain of Thought Reasoning in Language Models, https://arxiv.org/abs/2203.11171). 

Self-Consistency의 핵심 아이디어는 다음과 같습니다:

  1. 다양한 추론 경로 생성: 동일한 문제에 대해 여러 번의 추론을 수행하여 다양한 해결 경로를 만듭니다.
  2. 확률적 디코딩: 각 추론 과정에서 모델의 출력을 샘플링하여 다양성을 확보합니다.
  3. 일관성 평가: 생성된 여러 추론 경로 중에서 가장 일관성 있는 답변을 선택합니다.

이 방법의 장점은 모델이 단일 추론 경로에 의존하지 않고, 여러 가능한 해결책을 탐색한다는 점입니다. 이를 통해 복잡한 문제에 대해 더 견고하고 신뢰할 수 있는 답변을 얻을 수 있습니다.

image.png.50c8ca54f2599c9e70061e0f008a53d4.png

기존의 Chain-of-thought(CoT) 프롬프팅을 확장한 것으로, 세 가지 핵심 단계로 구성됩니다. 먼저, 언어 모델을 CoT 프롬프트를 이용하여 출력합니다. 다음으로, 단일 추론 경로 대신 다양한 추론 경로를 생성합니다. 마지막으로, 이 여러 경로에서 나온 답변들 중 가장 일관된 것을 선택합니다. 이 접근법의 장점은 복잡한 문제에 대해 더 안정적이고 정확한 답변을 얻을 수 있다는 것입니다. 단일 추론에 의존하지 않고 여러 가능한 추론 과정을 고려함으로써, 모델은 오류를 줄이고 더 신뢰할 수 있는 결과를 제공할 수 있습니다.

예를 들어, "Janet의 오리가 하루에 알을 16개 낳는데, 아침에 3개를 먹고 4개로 머핀을 만들어 친구들에게 주며, 나머지는 개당 2달러에 판매한다. 하루에 얼마를 벌까?"라는 문제에 대해 여러 추론 경로를 생성하고, 가장 일관된 답변인 18달러를 최종 결과로 선택하는 과정을 보여줍니다.

이 논문은 다양한 작업에도 아이디어를 주었습니다.

 

전문가 소환술! 다중 패널 접근법


모델이 출력하는 결과는 어떻게 신뢰할 수 있을까요? 문제를 좀 더 다각도로 살펴볼 수 있는 방법을 소개해보겠습니다. 예를 들어 볼게요. 세 명의 각기 다른 전문가들이 어떠한 질문에 답하고 있다고 상상해 보세요. 각 전문가들은 자신의 생각을 말하고, 서로 다른 추론을 함으로써 문제를 입체적으로 바라볼 수 있을 것입니다. 이는 답변의 편향성을 줄이는 데 도움이 됩니다.

image.png.7c35ba82b85d2b6e53801169ccc54d26.png

이러한 접근법을 구현한 "PanelGPT"라는 프롬프팅 기법이 있습니다.(PanelGPT: Prompt Language Models with a Panal Discussion, Hao Sun. https://github.com/holarissun/PanelGPT). 이 기법 또한 Self-consistency의 방법에 영감을 받는데, 핵심 프롬프트는 다음과 같습니다.

여러 '전문가'의 관점을 활용해 문제를 다각도로 접근하며, 복잡한 문제를 체계적으로 단계별로 해결합니다. 또한 '전문가들' 간의 상호 검토를 통해 오류를 최소화합니다. 이러한 종합적 접근법은 AI의 답변 품질을 개선하며, 더 신뢰할 수 있는 결과를 산출합니다.

"3명의 전문가가 패널 토론을 통해 질문에 대해 논의하고 있습니다.
그들은 단계별로 문제를 해결하려 노력하며, 결과가 정확한지 확인합니다."

GSM8K 데이터셋을 사용한 실험 결과, PanelGPT는 기존의 다른 프롬프팅 방법들보다 우수한 성능을 보였다고 합니다. 1,000개의 테스트 데이터셋에서 0.899의 정확도를 달성했는데, 이는 기존의 Zero-Shot Chain-of-Thought (0.854)나 Tree-of-Thoughts (0.842) 방식보다 높은 수치입니다.

 

하이퍼클로바X에서 Panel-of-Experts 활용해보기


하이퍼클로바X 모델을 활용하여 가능성을 탐구해 보았습니다. 시스템 프롬프트에는 논리적인 관계에 주목하여 추론하고 적절한 근거를 제시하라는 지시문을 입력했습니다.

image.png.49b39fd781d13562cd04c999a1f49c87.png

Alpha(철학자), Bravo(변호사), Charlie(통계학자)라는 세 가상 전문가를 설정하여 다양한 질문에 대한 다각적 분석을 시도했습니다.

  • Alpha: 과학사적 사례를 바탕으로 답변하는 철학가입니다. 과학적 방법론과 철학적 논리를 결합하여 분석합니다.
  • Bravo: 법률적 관점에서 접근하는 변호사입니다. 법적 책임과 인과관계의 관점에서 문제를 바라봅니다. 직접적인 원인과 간접적인 원인, 그리고 개입 사건의 법적 의미를 고려하여 분석합니다.
  • Charlie: 확률론적 관점에서 접근하는 통계학자입니다. 각 행위가 결과에 미치는 영향의 정도를 확률적으로 계산하고, 복합적인 원인의 가능성을 고려합니다.

▼ “인공지능이 인간의 일자리를 대체할 것인가? 각 전문가의 의견을 듣고, 서로의 관점에 대해 토론해주세요. 마지막으로 종합적인 결론을 내려주세요.”라고 요청했습니다. 각 전문가는 고유의 배경과 접근 방식을 바탕으로 문제를 해석하고 답변했습니다.

image.png.040fa54da272e794c958d61c19e02bf6.png

 

▼ 상호 토론을 통해 깊이 있는 결론을 도출하기도 합니다. Alpha의 의견에 대해 Bravo와 Charlie가 반응하고, Bravo의 의견에 대해 다른 전문가들이 코멘트하는 등 실제 토론과 유사한 형태의 상호작용이 이루어졌습니다.

image.png.d75442f8e49e59fd9093d46052a07556.png

 

실험 결과, 다각적 분석과 깊이 있는 추론이 가능해졌고, 전문가 간 상호 검증을 통해 오류가 감소했으며, 사용자의 추가 질문에 유연하게 대응할 수 있었습니다. 다만 간단한 질문에 대해 과도하게 복잡한 분석이 이루어지는 경우도 있어, 질문 난이도에 따른 전문가 패널 규모 조절의 필요성을 확인했습니다.

 

마치며


다중 전문가 패널 접근법은 프롬프트 엔지니어링의 새로운 가능성을 보여줍니다. 이 방법을 통해 우리는 AI 모델로부터 더욱 깊이 있고, 다각적이며, 신뢰할 수 있는 답변을 얻을 수 있습니다. 물론 이 방법이 완벽한 것은 아니지만, 복잡한 문제에 대한 우리의 이해를 넓히고 AI와의 상호작용을 더욱 풍부하게 만들어주는 방법이 될 수 있습니다.

수학적 문제 해결뿐만 아니라 윤리적 딜레마, 정책 결정 등 다양한 분야로의 확장에 활용될 수도 있을 것이고, 사용자가 여러명의 전문가 패널과 상호작용할 수 있는 시스템에 활용될 수도 있을 것입니다. 프롬프트 엔지니어링은 어떻게 발전하고 다양한 분야에 적용될지 지켜보는 것도 흥미로울 것입니다.

 

image.png.2c552324a6486cd10dc9e4c1a4369a46.png

  • Thanks 1
링크 복사
다른 사이트에 공유하기

게시글 및 댓글을 작성하려면 로그인 해주세요.



로그인
×
×
  • Create New...