ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [논문 리뷰] 43. LLMs cannot find reasoning errors, but can correct them given the error location
    논문 2024. 12. 30. 17:59

    LLM 출력의 스타일과 품질을 개선하는 데 있어 self-correction은 효과적이라는 점이 입증되었지만, 최근의 연구에서는 논리적 오류나 추론 오류를 수정하려는 시도가 오히려 올바른 답을 틀리게 만들어 전체적인 성능이 악화되는 경우가 많다고 보고

     

    논문에서는 이러한 낮은 self-correction 성능이 LLM이 논리적 오류를 찾는 능력 부족에서 기인하며, 이미 알려진 오류를 수정하는 능력의 부족 때문이 아님을 보여줌

     

    1) 여러 최신 LLM들을 대상으로 오류 탐지 능력을 벤치마킹한 결과, 객관적이고 명확한 사례에서도 LLM이 전반적으로 오류를 찾는 것에 있어서 어려움을 겪는것을 확인

     

    2) 오류 탐지 과정과는 별도로, 모델에 오류 위치 정보를 제공하는 backtracking 방식을 활용해 LLM의 오류 수정 능력을 테스트, 5개의 추론 과제에서 모델의 성능이 향상되는 것을 확인하여 LLM의 오류 수정 능력이 강력하다는 점을 입증

     

    3) 실제 오류 레이블이나 특정 도메인 학습 데이터 없이도 오류 위치 정보를 얻을 수 있음을 보여줌

    out-of-domain data를 사용해 small classifier를 학습시켰으며, 이를 통해 대규모 모델에 프롬프트를 제공하는 것보다 더 강력한 오류 탐지 성능을 발휘

     

    = LLM은 오류 수정을 잘하지만 오류를 찾아내는 것에 있어 문제가 존재하여 성능 악화가 일어나는 것임


    LLM은 zero-shot 또는 few-shot 프롬프팅을 통해 작업을 해결할 수 있는 능력을 보여주었으며, Chain-of-Thought(CoT), Self-Consistency(SC), ReAct 등과 같은 프롬프팅 방법을 탄생

     

    최근 few-shot 또는 zero-shot 프롬프팅에 대해서는 self-correction, 즉 LLM이 자신의 출력을 스스로 수정하는 개념에 초점을 맞추고 있음

     

    그러나 self-correction이 모델 출력의 스타일과 품질을 개선하는 데 효과적일 수 있지만, 추론 작업에 관해서는 외부 피드백 없이 오류를 식별하고 수정하는 데 LLM이 어려움을 겪는다고 지적

     

    예를 들어, Reflexion과 RCI는 self-correction 루프를 중단하기 위한 신호로 ground truth의 정확도를 사용

    Madaan et al.(2023)이 수학 데이터셋에서 처음 관찰한 이 단점은 Huang et al.(2023)에 의해 두 개의 추가 데이터셋에서도 입증

     

    이전 연구에서는 self-correction을 단일 과정으로 제시하는 경우가 많지만, 본 논문에서는 이를 mistake finding와 output correction으로 나누어 각 구성 요소를 개별적으로 더 잘 이해할 수 있도록 했음

     

    오류 탐지

    오류를 찾는 능력은 LLM에도 중요한 요구 사항

    그러나 최신 LLM은 현재 오류를 신뢰할 수 없게 찾고 있음

     

    출력 수정

    self-correction에서는 일반적으로 동일한 모델이 생성한 출력으로 수행

    LLM이 오류를 찾지 못하더라도, 오류 위치에 대한 정보가 주어지면 출력을 수정할 수 있음

    LLM은 few-shot 조건에서 오류를 찾는 데 어려움을 겪지만, Small Classifier를 사용하여 보다 신뢰할 수 있는 오류 위치 정보를 얻을 수 있음

     

    Paper Contribution

    1. Chain-of-Thought 프롬프팅을 통해 모든 작업을 오류 탐지 작업으로 전환할 수 있음
      BIG-Bench Mistake라는 CoT 스타일의 추론 과정을 포함하는 데이터셋을 수집하고 공개
      이 데이터셋은 PaLM 2를 사용하여 생성되었으며, 첫 번째 논리적 오류가 어디에 있는지에 따라 주석이 추가
      BIG-Bench Mistake는 수학 문제를 넘어서는 첫 번째 데이터셋
    2. 데이터셋에 대한 벤치마크 결과를 생성하여 5개의 최신 LLM의 추론 능력을 테스트
      이 LLM들은 명확하고 객관적인 사례에서도 오류 탐지에 어려움을 겪는다는 것을 보여줌
      LLM이 추론 오류를 self-correction하지 못하는 주요 요인이라고 가정
    3. LLM의 추론 오류 수정 능력을 오류 탐지와 별도로 테스트하여, 모델에 ground truth(또는 oracle) 오류 위치 정보를 백트래킹(backtracking) 방법을 통해 제공
      LLM의 수정 능력이 강력하며, 원래 잘못된 출력을 효과적으로 수정하고 원래 올바른 출력에 최소한의 영향을 미친다는 것을 보여줌
    4. LLM의 few-shot 오류 탐지의 낮은 정확도는 도메인 학습 데이터를 사용하지 않고도 개선될 수 있음을 입증
      개념 증명으로서, 우리는 out-of-domain 데이터를 사용하여 소규모 오류 탐지 분류기를 학습했으며, 이는 대규모 모델에 프롬프트를 제공하는 것보다 더 나은 성능을 발휘

    BIG-Bench Mistake

    BIG-Bench Mistake는 총 2186개의 CoT(Chain of Thought) 스타일 추론 과정을 포함

    각 추론 과정은 PaLM 2 Unicorn을 사용해 생성되었으며, 첫 번째 논리적 오류의 위치를 주석으로 표시
    Table 1은 오류 위치가 4번째 단계인 예제를 보여줌

     

    set of CoT reasoning steps을 trace로 지칭

     

    이 추론 과정은 BIG-bench 데이터셋에 포함된 5가지 작업으로 구성

    1. 단어 정렬(word sorting)
    2. 섞인 객체 추적(tracking shuffled objects)
    3. 논리적 추론(logical deduction)
    4. 다단계 산술(multi-step arithmetic)
    5. Dyck 언어(Dyck languages)

      PaLM 2 performs poorly on these tasks, so it is likely to generate mistakes in CoT traces
      Mistakes in these tasks are likely to be unambiguous, therefore minimising subjectivity during annotation
      Identifying mistakes for these tasks does not require expertise knowledge.

    CoT 프롬프팅을 사용하여 각 작업에서 질문에 답하도록 PaLM 2를 유도

    추론 과정을 명확히 분리된 단계로 나누기 위해, REACT의 방식을 따라 각 단계를 개별적으로 생성하였으며, 줄 바꿈을 종료 토큰으로 사용

    모든 추론 과정은 temperature = 0 설정으로 생성
    답변의 정확성은 exact match를 기준으로 결정

     

    Annotation

    첫 번째 논리적 오류에 대한 주석

    각 추론 과정은 첫 번째 논리적 오류에 대해 주석이 추가

    원래 오류에 의존할 가능성이 있는 이후의 오류는 무시

    • 추론 과정은 논리적 오류를 포함하고 있어도 최종적으로 올바른 답에 도달할 수 있음
    • 이러한 두 가지 정확성 유형을 구분하기 위해:
      • correct_ans: 최종 답변이 올바른 경우
      • incorrect_ans: 최종 답변이 틀린 경우
      • accuracy_ans: 작업에 대한 전체 정확도를 나타내며, 최종 답변이 올바른 경우의 비율을 의미
      • correct_mis incorrect_mis: 추론 과정이 논리적 오류를 포함하는지 여부를 나타냄
        오류가 실제로 추론과정에 존재하는지와 그 오류를 적절히 식별하고 표현했는지 확인

    Human Annotation

    5가지 작업 중 4가지는 인간 주석자를 고용하여 각 추론 과정을 검토하고 오류를 식별하도록 함

    • 주석자는 도메인 전문 지식이 없지만 작업을 완료할 수 있는 가이드라인을 제공
    • 각 작업에서 300개의 추론 과정을 샘플링했으며, 이 중:
      • 85%(255개)는 incorrect_ans
      • 15%(45개)는 correct_ans로 설정했습니다.

    또한:

    • 올바른 답변을 포함하지만 논리적 오류를 포함하는 사례도 데이터셋에 포함
    • 추론 과정 끝부분에 올바른 단계가 있는 예제도 포함되도록 설계

     

    Automatic Annotation

    Dyck 언어 작업의 경우, 문구와 해결 경로의 변동성이 제한적이기 때문에 대부분 자동 주석을 사용

    • 각 추론 과정에 대해, 프롬프트 예제에서 사용된 형식을 기반으로 단계 집합을 알고리즘적으로 생성
    • 패턴 매칭을 사용하여 모델이 생성한 각 단계가 동일한 형식에 맞는지 확인
      형식이 맞으면 두 단계를 비교하여, 기호가 일치하지 않으면 잘못된 추론으로 간주

    또한:

    • 마지막 두 단계가 하나로 병합된 경우
    • 기호가 따옴표로 묶이거나 묶이지 않은 경우 등 다양한 표현 변동성을 처리하기 위해 추가 사례를 고려

    Can LLMs find reasoning mistakes in CoT traces?

    표 4는 GPT-4-Turbo, GPT4, GPT-3.5-Turbo, Gemini Pro, PaLM 2 Unicorn 모델이 실수 탐지 데이터셋에서 정확도를 보여줌

     

    각 질문에 대한 가능한 답변은 두 가지
    실수가 없다는 것, 또는 실수가 있다면 첫 번째 실수가 발생한 단계를 나타내는 숫자 N

    모델의 출력은 위치가 정확히 일치하거나 실수가 없음을 정확히 나타낼 경우에만 정답으로 간주

    모든 모델은 동일한 3-샷 프롬프트를 사용

     

    세 가지 다른 프롬프트 방식을 사용

    • Direct trace-level prompting
      trace을 모델에 입력으로 제공하고 실수 위치를 직접 요청
      모델은 단계를 나타내는 숫자 또는 "No"를 출력해야 함
    입력
    Thought 1: x = 2 + 2
    Thought 2: y = x * 3
    Thought 3: z = y - 5

    출력
    실수가 없으면: "No"
    실수가 Thought 2에 있으면: "2"

     

    • Direct step-level prompting
      각 단계가 올바른지 여부를 나타내는 이진 Yes/No 출력을 요청
      각 생성 호출에서 입력에는 목표 단계까지의 부분 추적이 포함되며, 이전 단계의 결과는 포함되지 않음
      최종 답변은 "No" 출력이 처음 발생한 위치에서 유추
    입력
    Thought 1: x = 2 + 2 
    출력: "Yes" (문제가 없음)

    입력
    Thought 1: x = 2 + 2 
    Thought 2: y = x * 3 
    출력: "No" (문제가 있음)

    최종 판단: Thought 2가 잘못된 단계.

     

    • CoT step-level prompting
      Direct step-level prompting를 확장한 방식으로, 이진 Yes/No 응답 대신 일련의 추론 단계를 통해 (부분) 추적을 확인하도록 모델에 요청
      이 방법은 모든 단계에 대해 전체 CoT 시퀀스를 생성해야 하므로 세 가지 방법 중 가장 많은 자원이 소모
      Direct step-level prompting와 마찬가지로, 최종 답변은 "No" 출력이 처음 발생한 위치에서 유추
    입력
    Thought 1: x = 2 + 2
    출력
    Step 1 Reasoning: x는 2 + 2로 계산되며, 결과는 4이다.
    Answer: Yes

    입력
    Thought 1: x = 2 + 2
    Thought 2: y = x * 3
    출력
    Step 2 Reasoning: y는 x * 3으로 계산된다. x는 4이므로 y는 12여야 한다.
    그러나 y = x * 2로 계산되었으므로, 결과가 잘못되었다.
    Answer: No

    최종 판단: Thought 2가 잘못된 단계.

     

    다섯 가지 모델 모두 실수 탐지 데이터셋에서 어려움을 겪는 것

    GPT-4는 가장 높은 결과를 기록했지만, direct step-level prompting를 사용했을 때도 전체 정확도가 52.87

     

    연구 결과는 Huang 등(2023)의 연구 결과와 일치하며 이를 확장
    Huang 등은 기존의 self-correction 전략이 reasoning errors에 비효율적임을 보여줌

    실험에서는 모델의 실수 탐지 능력을 구체적으로 조사하고 추가 작업에 대한 결과를 제공
    LLM이 가장 단순하고 명확한 사례에서도 실수 탐지에 어려움을 겪는다는 것을 보여줌(비교를 위해, 특정 전문 지식 없이도 인간은 실수를 식별할 수 있으며, 높은 합의도를 보인다는 점)

    LLM이 실수를 찾아내지 못하는 능력이 LLM이 reasoning errorsself-correction하지 못하는 주요 요인 중 하나라고 가정

    LLM이 실수를 식별하지 못한다면, 추론 오류를 자기 수정하지 못하는 것은 당연한 결과일 것

     

    프롬프팅 방법의 비교

    세 가지 방식의 결과를 비교해 보면, 실수가 없는 trace에서의 정확도가 direct, trace-level prompting에서 CoT, step-level prompting로 갈수록 상당히 감소한다는 것을 알 수 있음

    이 상충 관계는 그림 1에서 확인 가능

     

    이러한 현상이 모델이 생성하는 출력의 수와 관련이 있다고 가정

    세 가지 방식은 점점 더 복잡한 출력을 생성하도록 설계

    Direct trace-level 프롬프트는 단일 토큰만 필요로 하고, Direct step-level 프롬프트는 각 단계당 하나의 토큰을 필요로 하며, 마지막으로 CoT 단계 수준 프롬프트는 각 단계마다 여러 문장을 생성해야 함

    각 생성 호출이 실수를 식별할 확률이 일정하다고 가정하면, 한 추적에서 호출 횟수가 많아질수록 모델이 적어도 하나의 실수를 식별할 가능성이 높아질 것

     

    Few-shot prompting for mistake location as a proxy for correctness

    프롬프트 방법이 추적(trace)의 실수 위치를 판단하는 대신, 추적의 정답 여부를 신뢰성 있게 판단할 수 있는지를 조사

    우리의 동기는 인간도 수학적 증명이나 논증을 검토할 때와 같이 실수를 찾는 과정을 정답 여부를 판단하기 위한 전략으로 사용한다는 점에서 비롯

    추적의 정답 여부를 직접 예측하는 것이 실수의 정확한 위치를 특정하는 것보다 더 쉬울 수도 있다는 가능성을 고려하였습니다.
    우리는 모델이 추적에 실수가 있다고 예측했는지 여부를 기준으로 평균 F1 점수를 계산합니다. 만약 실수가 있다면, 모델의 예측은 추적이 **정답이 아니다(incorrect ans)**라고 간주합니다. 반대로 실수가 없다고 판단하면, 모델의 예측은 추적이 **정답이다(correct ans)**라고 간주합니다.
    표 5에서는 정답과 오답을 각각 긍정적인 레이블로 간주하여 계산한 F1 점수를 각 레이블이 발생한 횟수에 따라 가중치를 부여해 평균화했습니다. 참고로, 모든 추적을 단순히 **오답(incorrect ans)**으로 예측하는 나이브 베이스라인은 가중 F1 평균 78을 달성합니다.

    가중 F1 점수는 실수를 찾아내는 방식이 최종 정답 여부를 판단하는 데 적절하지 않을 가능성을 보여줍니다. 이는 LLM이 실수 위치를 식별하는 데 어려움을 겪는다는 이전 연구 결과와 일치하며, Reflexion(Shinn et al., 2023) 및 RCI(Kim et al., 2023)에서의 개선이 오직 **oracle 정답 정보(correctness ans information)**를 사용할 때만 나타난다는 Huang et al.(2023)의 결과를 확장하는 것입니다.


    CoT 추론에서 LLM이 추론 실수를 수정할 수 있는가?

    LLM이 실수를 찾아내는 능력과는 별개로, 실수를 수정할 수 있는지 조사

    이를 위해 BIG-Bench Mistake의 oracle 실수 위치 정보를 모델에 입력하고, 원래 CoT trace의 수정된 버전을 요청

    간단한 베이스라인으로 우리는 다음과 같은 백트래킹(backtracking) 방법을 사용(그림 2 참조):

    (a) 먼저, 모델이 초기 CoT trace를 생성
    실험에서는 온도(temperature)를 0으로 설정

    (b) 그런 다음, 이 trace에서 실수 위치를 결정

    (c) 실수가 없는 경우, 다음 추적으로 넘어감
    실수가 있는 경우(예: 표 1의 예제에서 Thought 4), 동일한 단계에 대해 온도 = 1로 설정한 상태에서 모델에 다시 프롬프트를 요청
    동일한 프롬프트와 실수 단계 직전까지 포함된 부분 추적(예: Thought 3까지, Thought 4를 위한 프롬프트)을 사용

    (d) 실험 결과, (c) 단계는 종종 원래와 동일한 단계를 생성
    따라서 (c) 단계를 반복하며, 다른 단계가 생성될 때까지(또는 고정된 최대 횟수까지) 반복
    본 논문에서는 최대 재생성 횟수를 8로 설정했으며, 이 횟수의 변화를 연구하는 것은 미래 작업으로 남겨둠
    계산 비용을 줄이기 위해 8개의 출력을 동시에 생성하지만 백트래킹에는 하나만 선택

    (e) 마지막으로, 새로운 재생성된 단계를 이전 단계 대신 사용하여 온도 = 0에서 나머지 단계를 다시 생성

    이 백트래킹 방법은 특정 프롬프트 텍스트나 표현 없이, 대규모 대안을 생성하지 않는 간단한 베이스라인으로 설계
    실험에서는 동일한 모델(PaLM 2 Unicorn)이 처음 생성한 추적을 수정하도록 하여 모델의 자기 수정 능력을 테스트


    결과

    결과는 표 6에 나타나 있음

    출력의 무작위 재샘플링으로 인해 성능이 향상된 것이 아님을 보여주기 위해, 우리는 각 추적에 대해 무작위로 실수 위치를 선택하고 해당 위치에서 백트래킹을 수행하는 무작위 베이스라인과 결과를 비교했습니다.

    표 6에서는 결과를 정답(correct ans)과 오답(incorrect ans)으로 나눠 보여줍니다. 이는 처음 추적이 정답이었는지 여부에 따른 전반적인 정확도가 왜곡되지 않도록 더 명확한 그림을 제공합니다(처음 정답 비율: 15%, 오답 비율: 85%).

    점수는 정확도의 절대적인 차이를 나타냅니다. 실수 단계가 있는 한, 정답 및 오답 추적 모두에서 백트래킹을 수행합니다.

    • ∆accuracy ✓: 원래 정답(correct ans)이었던 추적에서 정확도 변화. 원래 정답이지만 논리적 실수가 있을 경우, 백트래킹을 통해 오답으로 바뀔 수 있으므로 손실이 발생합니다.
    • ∆accuracy ✗: 원래 오답(incorrect ans)이었던 추적에서 정확도 변화. 백트래킹으로 인해 정답으로 수정될 수 있으므로 정확도가 향상됩니다.

    예를 들어, 단어 정렬(word sorting) 작업에서는 원래 정답이었던 추적 중 11.11%가 오답으로 바뀌었지만, 원래 오답이었던 추적 중 23.53%가 정답으로 수정되었습니다.


    논의

    점수는 오답 추적을 수정하여 얻는 이득이 원래 정답을 바꾸어 생기는 손실보다 크다는 것을 보여줍니다. 또한 무작위 베이스라인도 개선을 얻었지만, 실제 실수 위치를 사용할 경우보다 상당히 작았습니다. 단계 수가 적은 작업일수록 무작위 베이스라인에서 성능이 더 향상될 가능성이 높습니다. 이는 실제 실수 위치를 식별할 가능성이 높아지기 때문입니다.

    우리의 결과는 실수 위치 정보가 제공되면 LLM이 스스로 출력을 수정하고 전반적인 성능을 향상시킬 수 있음을 보여줍니다. 이는 자기 수정 방법에서 주요 병목이 수정 과정이 아니라 실수를 식별하는 것임을 시사합니다. 이러한 병목은 Reflexion(Shinn et al., 2023) 또는 **RCI(Kim et al., 2023)**와 같이 정답 피드백을 사용하는 방법이나 분류기를 훈련시키는 방법(섹션 5 참조)을 통해 극복할 수 있습니다.

    우리의 수치는 이득이 손실보다 크다는 것을 보여주지만, 전반적인 정확도 변화는 작업에서 처음 달성된 정확도에 따라 달라집니다. 예를 들어, 섞인 객체 추적 작업의 원래 정확도가 50%라면 새로운 정확도는 68.6%로 상승합니다. 반면 정확도가 99%였다면 새로운 정확도는 92.8%로 하락합니다. 데이터셋이 매우 불균형하고 작업당 정답 추적이 45개에 불과하므로, 백트래킹에 대한 더 포괄적인 평가와 실수 위치 정보를 자기 수정 루프에 통합하는 더 정교한 방법 개발은 미래 연구 과제로 남겨둡니다.

     


    학습된 분류기를 이용한 실수 위치 정보 획득

    실수 위치 정보가 제공되면 LLM은 CoT 추적을 수정하고 다운스트림 성능을 향상시킬 수 있음

    그러나 이러한 실험 결과는 일반적으로 다운스트림 작업에서 사용할 수 없는 oracle 레이블에 기반

    -> 실제 환경에서는 oracle이 제시안될 수 있음

    가능한 해결책 중 하나는 더 작은 학습된 분류기를 사용해 실수 위치 정보를 얻는 것

    학습 데이터가 사용 가능하다면, 왜 이 접근법이 더 큰 생성 모델을 간단히 미세 조정하는 것보다 선호되는지 궁금할 수 있음
    그 이유는 다음과 같음;

    • 작은 분류기를 학습시키는 것은 컴퓨팅 자원과 사용 가능한 데이터 측면에서 훨씬 효율적
    • 분류기가 한 번 학습되면, 어떤 LLM 생성 모델과도 함께 사용할 수 있으며, 독립적으로 업데이트할 수 있음
      이는 API 기반 LLM(미세 조정이 불가능한 경우)에 특히 유용
    • 실수 찾기 과정은 생성 모델의 가중치를 직접 업데이트하는 것보다 해석 가능성이 높음
      오류가 발생한 위치를 명확히 특정하여 디버깅을 용이하게 하고, 더 빠른 모델 개발과 반복 작업을 가능하게 함

    백트래킹이 효과적이려면 어떤 실수 탐지 정확도가 필요한가?

    학습된 분류기가 100%의 실수 탐지 정확도를 달성하지 못할 가능성이 높음
    만약 백트래킹이 실수 위치가 100% 정확해야만 효과적이라면, oracle 레이블을 학습된 분류기로 대체할 수 없을 것

    최소 실수 탐지 정확도
    실수 탐지 정확도 수준을 탐구하기 위해, 다양한 정확도 수준에서 분류기를 시뮬레이션하고 백트래킹을 실행
    실수 탐지 정확도를 accuracy mis로, 다운스트림 작업 정확도를 accuracy ans로 나타냄
    주어진 분류기의 정확도가 X%일 때, 우리는 BIG-Bench Mistake의 실수 위치를 X% 비율로 사용
    나머지 (100 − X)%의 경우, 실수 위치를 무작위로 샘플링
    일반적인 분류기의 동작을 모방하기 위해, 샘플링된 실수 위치는 데이터셋에 있는 분포와 일치하도록 하며, 샘플링된 위치가 올바른 위치와 일치하지 않도록 보장

    결과는 그림 3
    ∆accuracy ✓(정답 추적의 정확도 변화)의 손실은 약 65% 수준에서 점차 완화되는 경향
    실제로 대부분의 작업에서, ∆accuracy ✓는 약 60-70%의 정확도에서 이미 ∆accuracy ✗(오답 추적의 정확도 변화)보다 더 큼
    이는 더 높은 정확도가 더 나은 결과를 내지만, 표준 실수 위치 레이블 없이도 백트래킹이 여전히 효과적임을 보여줌

     


    도메인 외 학습 데이터 없이도 성능을 향상시킬 수 있는가?

    도메인 내 학습 데이터는 일반적으로 성능 향상을 보장하지만, 얻기 어려울 수 있음

    우리는 추론 추적에서의 실수 탐지가 작업 간 전이 가능한지 조사

    만약 가능하다면, BIG-Bench Mistake 또는 유사한 데이터셋을 사용해 다른 작업을 위한 실수 탐지 분류기를 미세 조정할 수 있음

    도메인 외 데이터를 활용한 분류기 학습
    우리는 분류기가 도메인 외 분포에서 학습되었을 때도 실수 탐지에 유익한지 테스트
    PaLM 2 Unicorn보다 훨씬 작은 모델인 PaLM 2 Otter를 BIG-Bench Mistake 데이터로 20,000 스텝 동안 미세 조정하고, 가장 좋은 검증 결과를 보인 체크포인트를 선택
    각 작업에 대해 도메인 내 데이터를 평가용으로 보류하고, 분류기는 나머지 4개 작업으로 학습
    표 7은 PaLM 2 Unicorn의 3-샷 베이스라인(섹션 3 결과)과 비교한 상대적 개선과 손실을 보여줌
    5개 작업 중 4개에서 성능 향상을 보임

    분류기가 추론 모델보다 훨씬 작고, 도메인 외 데이터로 학습되었음을 고려하면, 백트래킹을 지원하는 분류기를 학습시키는 것이 가능하며, 이러한 분류기가 반드시 크지 않아도 됨을 시사
    또한 이러한 분류기는 도메인 외 실수에서도 작동할 수 있음

    그럼에도 불구하고, 우리 분류기의 성능은 5.1절에서 효과적인 백트래킹에 필요한 기준에 도달하지 못함
    모든 작업에서 결과를 개선하려면 더 많은 데이터가 필요할 것으로 보임

    우리는 더 큰 데이터셋 수집과 모델 크기와 분류기 성능 간의 트레이드오프를 더 철저히 조사하는 것을 미래 연구 과제로 남겨둡니다.
    또한, 분류기를 사용하여 반복적으로 백트래킹하는 효과를 조사하는 것도 미래 연구로 남겨둡니다. 예를 들어, 생성 모델이 처음 백트래킹 후 또 다른 실수를 범할 경우, 이를 다시 식별하고 수정할 수 있는지 조사할 필요가 있습니다.

     


     

    이 논문에서는 LLM의 실수 탐지 및 출력 수정 능력을 조사

    LLM은 일반적으로 실수를 찾아내는 데 어려움을 겪지만, 실수 위치 정보가 제공되면 출력을 수정하여 성능을 향상시킬 수 있음을 발견

    따라서 실수 탐지는 self-correction 전략이 추론 작업에서 성과를 내지 못하게 하는 주요 병목이라고 가정

    실수 탐지를 위한 전용 분류기가 이 병목을 극복할 수 있다는 초기 증거를 제시

    도메인 외 데이터를 기반으로 작은 베이스라인 분류기를 학습시키고, 3-샷 프롬프트 결과보다 향상된 성능을 입증

    분류기가 효과적인 백트래킹에 필요한 기준에 도달하지는 못했지만, 표준 머신러닝 기술을 사용해 실수 탐지 정확도를 향상시킬 수 있음을 보여줌


    한계점

    데이터셋의 주요 한계 중 하나는 실제 세계의 응용에 비해 인위적이고 비현실적인 작업을 포함한다는 점

    이는 실수 탐지 과정에서 모호성과 주관성을 최소화하기 위해 선택된 것이지만, 더 현실적인 환경에서 백트래킹의 효과를 결정하기 위해 추가 연구가 필요

    또 다른 한계점은, 본 논문이 BIG-Bench의 원본 데이터셋에 대해 백트래킹을 실험하지 않았다는 점

    우리는 인간 주석자의 시간을 최대한 활용하기 위해 제한된 샘플과 왜곡된 방식으로 데이터를 선택하여 결과를 제시

    전체적인 평가 작업은 본 논문의 범위를 넘어서는 것이며, 실수 탐지의 중요성을 입증하기 위한 개념 증명(proof-of-concept)으로 설계되었으므로, 이는 향후 연구 과제

Designed by Tistory.