최종 업데이트 07:57
소개 검색
SEOUL AI PRESS

AI와 기술을, 사실부터

강좌 강좌

강화학습 파인튜닝 입문: 평가를 반영해 특정 업무에 맞춰 추가 학습하기

Cloudflare가 입력을 정해진 항목으로 분류해 판단을 돕는 모델인 Clef를 고객 업무에 맞게 미세조정하는 강화학습 서비스를 알리면서, 강화학습 파인튜닝이라는 말이 눈에 띕니다. 이 강좌는 그 뜻과 작동 맥락, 검토할 조건과 한계를 처음 배우는 분 눈높이로 정리합니다.

이 강좌를 끝내면 세 가지를 할 수 있습니다. 첫째, 강화학습 파인튜닝의 뜻을 한 문장으로 설명하기. 둘째, 결과 생성에서 재배포까지의 단계를 순서대로 말하기. 셋째, 적용을 검토할 조건과 맞바뀔 수 있는 성능을 구분하기. 사전지식은 모델이 입력(들어가는 자료)을 받아 출력(나오는 결과)을 내놓는 프로그램이라는 점 하나로 충분합니다.

한 문장으로 이해하기

파인튜닝(fine-tuning, 미세조정)은 이미 학습이 끝난 모델을 특정 용도에 맞게 추가로 학습시키는 일입니다. 강화학습(reinforcement learning, 줄여서 RL)이 붙으면, 모델이 내놓은 결과를 평가해 점수를 매기고 그 평가를 반영해 모델을 고쳐 나가는 방식을 뜻합니다.

이 강좌는 하나의 가상 예시를 끝까지 따라갑니다. 어떤 쇼핑몰 고객센터가 들어온 문의를 ‘결제팀·기술팀·영업팀’으로 자동 분류하려 한다고 가정합니다. 이 상황은 설명을 위해 지어낸 가상 예시이며, 실제 사례가 아닙니다.

왜 필요한가

Cloudflare는 고객의 업무 부하에 맞춰 의사결정 모델, 즉 입력을 정해진 항목으로 분류해 판단을 돕는 모델인 Clef를 미세조정하는 강화학습 서비스를 알렸습니다. 발표 시점에는 엔지니어 팀과 협력하는 형태로 제공하고, 고객이 스스로 수집·학습·재배포를 수행하는 자율 이용 플랫폼은 이를 토대로 구축할 계획이라고 설명했습니다(c1).

이런 요구가 나온 내부 용도로는 신뢰·안전 제출물 평가, 고객 지원 요청 분류, 웹을 돌아다니며 자료를 모으는 프로그램(크롤러)의 종류 판단이 제시됐습니다(c3). 가상 예시의 문의 분류도 이 중 고객 지원 요청 분류에 가까운 성격입니다.

특정 업무에 맞춘 추가 학습이 모든 영역의 성능 향상을 보장하지는 않습니다. Cloudflare는 미세조정이 일부 범용 성능, 즉 다양한 종류의 작업을 처리하는 성능을 대가로 특정 영역의 더 높은 정확도와 맞바뀔 수 있다고 밝혔습니다(c2).

어떻게 이루어지는가

Cloudflare가 소개한 서비스 흐름은 다음과 같습니다. 강화학습 전체의 필수 절차가 아니라 이 사례의 구성입니다(c4, c5). 일부 구성 요소는 당시 개발 중이었습니다(c4).

  1. 요청 데이터 수집: 인공지능(AI) 요청을 중계하는 AI Gateway로 데이터를 모읍니다.
  2. 기본 모델의 실행 결과 생성: Workers AI에서 기본 Clef 모델을 실행해 결과(롤아웃, 모델을 실행해 얻은 결과)를 만듭니다. 이는 기준 정답을 만드는 단계가 아닙니다.
  3. 행동 평가와 재생: Containers를 강화학습 샌드박스(행동을 시험하고 평가하는 실행 환경)로 써서 결과를 채점하고 다시 재생합니다.
  4. 가중치 갱신: Trainer가 모델의 계산에 영향을 주는 내부 수치인 가중치를 갱신합니다.
  5. 재배포: 갱신된 모델을 다시 서비스에 올립니다.

핵심은 3번입니다. 무엇이 좋은 결과인지 점수로 정의하지 못하면 평가를 반영할 방향이 생기지 않습니다.

하나의 예시로 따라가기

가상 예시를 다시 이어갑니다. 1단계로 실제 문의와 모델의 응답이 쌓입니다. 2단계로 기본 모델을 실행해 분류 결과를 얻습니다. 3단계에서 평가 규칙이 필요한데, 여기서는 과거 상담원이 최종 배정한 팀과 비교해 일치하면 높은 점수, 불일치하면 낮은 점수를 주기로 정했다고 가정합니다. 이 규칙은 강좌에서 가상으로 설계한 것입니다.

비교 기준이 되는 과거 배정 기록이 바로 이 사례의 라벨, 즉 과거 판단에 붙여 둔 정답 표시입니다. 4단계로 점수를 반영해 가중치를 갱신하고, 5단계로 모델을 다시 올립니다. 이후에는 이 쇼핑몰의 문의 분류에서 성능이 어떻게 변했는지, 그리고 다른 종류의 작업에서 성능이 떨어지지 않았는지 함께 확인해야 합니다.

언제 쓰고 언제 쓰지 않는가

Cloudflare는 자사의 구체적인 내부 용도에 여러 해 동안 쌓인 라벨 붙은 판단 기록이 있어 전용 분류 모델을 학습시킬 수 있다고 설명했습니다(c6). 여기서 두 가지 검토 항목을 끌어낼 수 있습니다. 업무가 구체적으로 정의되는지, 그리고 과거 판단 기록이 라벨 형태로 남아 있는지입니다. 다만 ‘데이터가 얼마나 있어야 충분한가’에 대한 일반적 기준은 이 자료로 확인되지 않습니다.

적용을 미뤄야 할 상황도 있습니다. 가상 예시에서 어떤 문의를 어느 팀에 보낼지 기준이 아직 정해지지 않았다면 점수 규칙을 만들 수 없고, 그러면 평가를 반영할 방향도 생기지 않습니다. 또 하나는 범용 성능이 중요한 경우입니다. 여러 종류의 작업을 함께 처리해야 한다면 성능 손실 가능성을 미리 검토해야 합니다(c2). 파인튜닝은 모델을 전반적으로 더 똑똑하게 만드는 작업이 아니라, 특정 업무에 맞춘 추가 학습입니다.

핵심 정리와 확인문제

강화학습 파인튜닝은 기존 모델의 결과를 평가하고 그 평가를 반영해 특정 업무에 맞게 추가 학습하는 방법이며, 특정 영역의 정확도 향상이 범용 성능의 일부 손실과 맞바뀔 수 있습니다.

확인문제

  1. 미세조정으로 특정 영역의 정확도를 얻을 때, 대가로 잃을 수 있는 성능은 무엇인가요?
  2. 다음 세 단계를 Cloudflare가 소개한 순서대로 배열하세요. (가) 가중치 갱신 (나) 기본 모델의 실행 결과 생성 (다) 결과 점수 평가
  3. 가상 예시에서 문의 배정 기준이 아직 정해지지 않았다면 강화학습 파인튜닝을 바로 적용하기 어려운 이유는 무엇인가요?

정답과 해설

  1. 정답: 범용 성능의 일부입니다. 해설: Cloudflare는 미세조정이 일부 범용 성능을 대가로 특정 영역의 더 높은 정확도와 맞바뀔 수 있다고 설명했습니다.
  2. 정답: (나) → (다) → (가)입니다. 해설: 기본 모델을 실행해 결과를 얻고, 그 결과를 점수로 평가한 뒤, 평가를 반영해 가중치를 갱신합니다.
  3. 정답: 점수 규칙을 정의할 수 없기 때문입니다. 해설: 무엇이 좋은 결과인지 점수로 정하지 못하면 평가를 반영할 학습 방향이 생기지 않습니다.

참고자료