전문가 심사위원 만들기

프로덕션을 위한 평가 도구를 준비하세요.

기본 평가 모델 설정1부2부에서 빌드한 기본 평가 도구는 자체 라벨링된 데이터를 기반으로 했습니다. 테스트 기준선을 설정하는 좋은 방법입니다. 하지만 프로덕션 등급 품질을 얻으려면 도메인 전문가처럼 생각하는 평가 도구가 필요하며, 대규모로 신뢰할 수 있는 강력한 통계 측정항목이 필요합니다. 여기에서 다룰 내용입니다.

전문가와 함께 정렬 데이터 세트 만들기

정렬 데이터 세트에 인간 전문가를 사용하여 라벨링하는 것은 안정적인 LLM 평가 도구를 빌드하는 데 중요합니다. 양보다 품질을 우선시하세요. 도메인 전문가의 고품질 라벨 30개가 비전문가의 라벨 300개보다 훨씬 낫습니다.

라벨러 찾기

브랜드 정렬에는 사내 디자이너와 브랜드 전문가를 사용하세요. 유해성의 경우 동일한 라벨러를 사용하거나 중앙 기준표를 기반으로 팀에서 라벨을 크라우드소싱하여 라벨러가 동일한 등급 기준을 공유하도록 할 수 있습니다.

전문 라벨러는 몇 명인가요?

  • 전문가 1명: 빠르고 시작하기에는 괜찮지만 평가 도구가 해당 전문가의 편향을 상속합니다.
  • 전문가 2명: 예산에 적합한 지점일 수 있습니다. 동점을 깨뜨릴 수는 없지만 의견 불일치를 발견할 수 있습니다.
  • 3명 이상: 가장 이상적인 결과입니다. 홀수를 사용하면 예시와 같이 바이너리 PASSFAIL 평가에 자동 동점 깨기 기능을 제공합니다. 다수 평점을 사용할 수 있기 때문입니다.

ThemeBuilder의 경우 전문가 라벨러가 되기로 동의한 사내 브랜드 디자이너가 3명 있다고 가정합니다.

전문가가 기준표를 공식화함

라벨링하기 전에 전문가에게 엄격한 기준표의 구체적인 기준에 대한 PASS를 정의하도록 요청하세요. 이렇게 하면 전문가가 개별적으로나 집단적으로 판단을 내릴 때 일관성을 유지하는 데 도움이 됩니다.

예를 들면 다음과 같습니다.

Criteria:
• Psychological association: Do the colors evoke the emotions associated with the desired tone?
• Harmony: Do the colors work together to create the right atmosphere?
• Appropriateness: Is the palette suitable for the company's industry?

전문가가 데이터에 라벨링함

전문가에게 샘플 30~50개를 검토하고, 기준표에 따라 PASS 또는 FAIL 라벨을 할당하고, 판단을 설명하는 rationale을 작성하도록 하세요. 근거는 평가 도구와 전문가 간의 정렬 불일치를 해결하고 수정하는 데 사용되므로 중요합니다.

전문가가 테마를 판단하는 데 도움이 되는 스프레드시트 인터페이스
전문가 라벨러를 위한 웹 애플리케이션 이 UI는 Eugene Yan'sAlignEvals에서 영감을 받았습니다.

효율적인 라벨링을 위한 팁

수동 라벨링은 비용이 많이 듭니다. 다음 기법을 사용하여 전문가의 효율성을 최적화해 보세요.

  • 확인만: LLM을 사용하여 초기 라벨과 근거를 생성한 후 전문가가 감사하고 수정하도록 합니다. 처음부터 판단을 내리는 것보다 확인하는 것이 더 빠릅니다.
  • 선택적 라벨링: 두 번째 전문가가 첫 번째 전문가의 작업 중 작은 하위 집합을 감사하도록 합니다. 의견이 일치하지 않으면 중지하고 더 라벨링하기 전에 기준표를 수정합니다.
  • LLM을 두 번째 의견으로: 전문가 1명과 LLM 평가 도구 1개가 동일한 항목에 라벨링하도록 합니다. 동의율이 낮으면 LLM이 기준표를 다르게 이해하고 있는 것입니다. 일치할 때까지 기준표를 반복합니다.
  • 평가자 내 확인: 전문가가 한 명뿐인 경우 일주일 후에 데이터를 무작위로 10% 다시 라벨링하도록 합니다. 과거의 자신과 동의하지 않으면 기준표가 안정적이지 않은 것입니다.

다음은 전문가의 PASSFAIL 라벨과 자세한 근거를 포함하여 전문가가 라벨링한 데이터 세트 항목의 JSON 스니펫입니다.

{
  "id": "sample-001",
  "userInput": {
    "companyName": "Kinetica",
    // Company description, audience and tone
  },
  "appOutput": {
    "motto": "Unlock your kinetic potential.",
    // ... Color palette
  },
  "humanEvaluation": {
    "mottoBrandFit": {
      "label": "PASS",
      "rationale": "This motto powerfully aligns the brand's technical
        engineering with the ambitious goals of its elite athletic audience.
        Relevance: Leverages 'kinetic' to expertly link the brand to physical
        energy. Audience appeal: 'Unlock your potential' resonates perfectly
        with competitive runners. Tone consistency: Nails the required
        aggressive, high-performance marks."
    },
    // ... Human evals for colorBrandFit and mottoToxicity:
  }
}

전문가 동의 도달 및 측정

기준표는 모델의 안내 역할을 하므로 기준표를 개선하는 데 시간을 투자하는 것이 중요합니다. 한 디자이너가 "재미있는""창의적인 언어" 로 정의하는 반면 다른 디자이너는 "밝은 색상" 으로 해석하면 LLM도 충돌합니다. 기준표를 평가 도구에 제공하기 전에 이러한 모호성을 없애기 위해 기준표를 강화해야 합니다. 라벨러 간 신뢰성 또는 평가자 간 동의라고 하는 높은 동의율은 평가 모델이 안정적인 고품질 라벨을 제공하도록 보장합니다.

인간의 의견 불일치는 점수 기준표에 추가 작업이 필요한 위치를 알려주는 유용한 신호입니다. 전문가가 PASSFAIL 사례에 동의할 때까지 반복합니다.

평가 도구는 평가 도구를 빌드한 인간보다 더 잘 정렬될 수 없습니다.

기본 동의

인간 간 동의를 측정하는 한 가지 방법은 전문가가 동의하는 빈도를 백분율로 나타내는 것입니다. 이는 기본 평가 도구의 인간 평가 도구 동의 점수에도 사용되었습니다.

// total = all test cases
// aligned = test cases where human1Eval.label === human2Eval.label
// (for example PASS and PASS)
const alignment = (aligned / total) * 100;

우연을 넘어서는 동의: 카파

기본 백분율 동의는 간단하지만 오해의 소지가 있을 수 있습니다. 데이터 세트가 절반은 PASS이고 절반은 FAIL이라고 가정해 보겠습니다. 전문가 두 명이 동전을 던지면 순전히 우연히 50% 의 시간 동안 동의하게 됩니다. 이를 우연의 바닥 이라고 합니다.

동의를 정확하게 계산하려면 순전히 우연을 넘어서는 신뢰성을 측정하는 통계 측정항목을 대신 사용하세요.

  • 라벨러 2명을 위한 Cohen의 카파
  • 라벨러 3명 이상을 위한**Fleiss의 카파**

  • 테스트: 상당한 동의의 표준인 카파 점수 0.61 이상을 목표로 합니다. 점수가 0이면 무작위 추측보다 나을 것이 없고 완벽한 동의입니다.1.0

  • 수정: 카파 점수가 0.61 미만이면 기준표가 너무 모호한 것입니다. 전문가가 동의하지 않은 샘플을 그룹화하고, 근거를 검토하고, 기준표를 업데이트하여 이러한 특정 엣지 케이스를 다루고, 0.61에 도달할 때까지 반복합니다. 전문가가 정렬된 후에만 다음 단계로 진행합니다.

카파 점수 작업
0.60 미만: 좋지 않음 반복하고 전문가가 다르게 보는 이유를 알아보세요. 기준표가 너무 모호할 수 있으므로 기준표를 개선하세요.
0.610.80: 좋음 기준선이 안정적입니다. 이 기준표로 진행하세요.
0.81-1.00 거의 완벽함 믿기 어려울 정도로 좋습니다. 작업이 너무 쉬운지 또는 전문가가 지나치게 단순화하는지 확인하세요.

전문가 라벨 접기

3명 이상의 인간 전문가를 사용하여 데이터에 라벨링한 경우 각 샘플에 대한 투표를 단일 다수 평점으로 접습니다. 이 목록이 실제 정답이 됩니다.

평가 도구 구성

기본 평가 도구에서와 마찬가지로 모델 매개변수를 구성하고 프롬프트를 작성해야 합니다. 시스템 안내를 엄격한 전문가 페르소나로 설정하고 일관성을 극대화하기 위해 온도를 0으로 유지합니다. 프롬프트에서 인간 전문가가 데이터를 등급을 매기는 데 사용한 정확한 기준표를 제공합니다. 전문가가 라벨링한 샘플 몇 개를 퓨샷 예시로 추가하여 평가 도구에 추론 방법을 정확하게 보여줍니다.

평가 도구 정렬 및 테스트

인간 전문가가 동의하면 이제 LLM 평가 도구가 동의하는지 확인할 차례입니다.

기본 설정에서는 원시 정렬 (정확성)을 살펴보았습니다. 하지만 이 숫자만으로는 오해의 소지가 있을 수 있습니다. 테스트 데이터의 90% 가 PASS라고 가정해 보겠습니다. 게으른 평가 도구는 매번 PASS를 출력하고 유해한 모토를 하나도 포착하지 못하면서 정확도 90% 를 기록할 수 있습니다.

양성 클래스 정의

양성 클래스를 정의합니다. 양성 클래스(또는 타겟 조건 또는 관심 이벤트라고도 함)는 감지, 측정 또는 플래그를 지정하려는 특정 결과입니다. 평가 파이프라인은 게이트키퍼 역할을 합니다. 주요 목표는 잘못된 출력을 포착하고 차단하는 것입니다.

ThemeBuilder가 일반적으로 브랜드 슬로건과 팔레트를 생성하는 데 능숙하고 유해한 모토도 드물게 발생한다고 가정하면 모든 평가 기준의 양성 클래스는 FAIL입니다.

이를 기준으로 보면 다음과 같습니다.

  • 거짓양성은 FAIL로 잘못 플래그가 지정된 좋은 출력입니다.
  • 거짓음성은 놓친 FAIL입니다.
  • 참양성은 올바르게 식별된 FAIL입니다.

정밀도와 재현율

양성 클래스를 염두에 두고 이제 원시 정렬보다 더 나은 측정항목인 정밀도와 재현율을 사용할 수 있습니다.

  • 정밀도: LLM 평가 도구가 FAIL이라고 말했을 때 얼마나 자주 맞았나요? 예를 들어 평가 도구가 모토에 유해성 플래그를 지정했을 때 실제로 얼마나 자주 맞았나요?
  • 재현율: 인간이 FAIL이라고 말했을 때 LLM 평가 도구가 얼마나 자주 포착했나요? 예를 들어 실제로 유해한 모든 출력과 실제로 브랜드에 맞지 않는 모든 모토와 팔레트 중에서 평가 도구가 포착한 것은 몇 개였나요?

실수의 비용 이해 + 타겟 점수 설정

애플리케이션에 어떤 실수가 더 나쁜지 자문해 보세요.

  • 유해성: 유해성은 안전 문제입니다. 평가 도구가 때때로 너무 엄격하고 안전한 모토에 플래그를 지정하더라도 모든 유해한 모토를 포착 (거짓음성 최소화)하려고 합니다. 안전한 모토에 플래그를 지정 (거짓양성)하면 약간의 지연 또는 인간 검토가 필요합니다. 따라서 재현율 100% 를 목표로 합니다. 정밀도는 낮을 수 있습니다.
  • 브랜드 적합성: 균형이 필요합니다. 잘못된 디자인을 놓치는 것과 좋은 디자인을 거부하는 것은 모두 비용이 많이 듭니다. 따라서 견고한 정밀도와 재현율을 원합니다.
정밀도 및 재현율을 위한 패턴 인식
Walber 작성 - CC BY-SA 4.0

F1 점수

재현율이 증가하면 정밀도가 떨어지는 경우가 많습니다. 유해성의 경우 재현율에만 관심이 있으므로 문제가 되지 않습니다.

브랜드 적합성의 경우 재현율과 정밀도가 모두 중요합니다. 이 중요성의 균형을 맞추기 위해 F1 이라는 새로운 측정항목을 사용할 수 있습니다. F1 점수는 정밀도와 재현율을 단일의 균형 잡힌 측정항목으로 결합합니다.

정렬 도달

전문가가 라벨링한 데이터 세트에 대해 평가 도구를 실행하고 각 기준의 정확성, 정밀도, 재현율, F1 점수를 계산합니다. 타겟을 달성하고 있는지 평가합니다.

그렇지 않은 경우 실패 사례를 그룹화하고 LLM의 근거를 읽습니다. 측정항목이 타겟에 도달할 때까지 평가 도구의 시스템 안내와 점수 기준표를 업데이트하여 격차를 해소합니다.

평가 도구가 타겟에 도달하면 평가 도구가 정렬됩니다.

최종 검증

이제 기본 평가 도구 설정에서 다룬 것과 동일한 단계를 사용하여 평가 도구를 검증하지만 새로운 고급 측정항목을 적용합니다.

  • 부트스트래핑으로 스트레스 테스트: 10회 반복을 위해 대체 로 데이터 세트를 무작위로 재샘플링합니다. 이러한 실행에서 정밀도, 재현율, F1 점수의 분산을 계산하여 높은 점수가 우연이 아님을 수학적으로 증명합니다.
  • 자가 일관성 테스트: 평가 도구를 통해 정확히 동일한 입력을 여러 번 실행하여 평결이 100% 안정적인지 확인합니다. 모든 반복에서 분산이 0 이 되기를 원합니다.
  • 평가 도구에 최종 시험 제공: 이전에 본 적이 없는 전문가가 라벨링한 새로운 샘플 15~20개의 홀드아웃 세트에서 평가 도구를 테스트합니다. 이 숨겨진 세트에서 Cohen의 카파, 정밀도, 재현율, F1 점수를 계산합니다. 이러한 측정항목이 계속 가까이 있으면 평가 도구가 정렬 데이터에 과적합되지 않았으며 실제 세계로 일반화할 준비가 되었음을 증명합니다.

평가 도구 재정렬

완료되면 축하드립니다. 매우 안정적인 평가 파이프라인을 빌드했습니다.

평가 도구가 의존하는 기본 LLM을 업데이트하거나 애플리케이션의 기능 세트가 근본적으로 변경될 때마다 평가 도구를 재정렬해야 합니다.