제53회 · LLM과 함께 배우는 생각그림

학습 곡선은 훈련과 검증의 간격을 어떻게 보여 줄까?

두 선 사이의 간격만 보지 않고 가로축, 성능 단위, 자료 분할, 반복 측정과 조기 종료 조건을 함께 기록합니다.

훈련은 좋아지는데 새 자료 성능은 나빠지는 순간을 찾는다

고객 문의를 네 유형으로 분류하는 작은 언어 모델을 미세조정한다고 하자. 훈련 손실은 에포크가 늘수록 계속 내려가지만 검증 손실은 12번째 에포크 뒤 다시 오른다. 학습 곡선은 이런 변화를 같은 가로축 위에 놓아 “더 오래 학습”과 “새 사례에 더 잘 일반화”가 언제 갈라지는지 보여 준다.

가로축이 에포크라면 한 훈련 실행의 시간 진행을, 표본 수라면 서로 다른 크기의 훈련 집합으로 다시 학습한 결과를 뜻한다. 둘 다 learning curve라 부르기도 하지만 질문이 다르다. 제목에 축을 쓰지 않으면 “12”가 에포크인지 1만 2천 표본인지 알 수 없으므로 먼저 측정 질문을 고정한다.

생각그림 1 · 에포크별 손실과 조기 종료 후보도표를 좌우로 움직여 전체 내용을 확인하세요.
에포크손실(낮을수록 좋음)검증 손실 최저
실선은 훈련 손실, 갈색 선은 고정한 검증 집합의 손실입니다. 점선은 검증 손실이 가장 낮은 교육용 지점입니다.

선 하나는 평균이며 띠는 반복의 흔들림이다

한 번의 무작위 분할과 시드에서 얻은 선은 우연한 표본 구성에 민감하다. 교차검증이나 여러 시드의 평균을 중심선으로 그리고 표준편차, 사분위 범위, 신뢰구간 중 하나를 띠로 표시한다. 띠의 정의와 반복 횟수를 쓰지 않으면 독자는 그것을 최댓값·최솟값이나 예측구간으로 오해할 수 있다.

훈련 점수와 검증 점수는 같은 평가 지표로 계산하고, 각 지점에서 검증 자료가 훈련에 들어가지 않았는지 확인한다. 하이퍼파라미터를 검증 점수로 고른 뒤 같은 검증 점수를 최종 일반화 성능이라고 부르면 선택 편향이 생긴다. 최종 평가는 끝까지 보지 않은 시험 집합으로 분리한다.

생각그림 2 · 중심선·띠·자료 분할의 역할
요소뜻반드시 기록
중심선반복 평균 또는 중앙값반복 수·집계법
주변 띠변동성 또는 추정 불확실성표준편차·신뢰구간 등
훈련 집합매개변수 적합에 사용표본 수·중복
검증 집합모델·시점 선택에 사용누수 방지
시험 집합최종 성능 확인선택에 미사용
선의 높이만큼 자료가 어떻게 나뉘고 반복됐는지가 중요합니다.

표본 수 학습 곡선은 자료를 더 모을 가치가 있는지 묻는다

scikit-learn의 공식 설명에서 학습 곡선은 훈련 표본 수를 바꾸며 훈련 점수와 검증 점수를 그린다. 작은 자료에서 훈련 점수는 높고 검증 점수는 낮다가 표본이 늘며 간격이 줄면 자료 추가가 분산을 낮출 가능성이 있다. 두 점수가 낮은 값에서 함께 평평해지면 모델·표현·잡음 문제를 먼저 살핀다.

표본 수만 잘라 쓰되 각 크기에서 같은 전처리와 평가 절차를 사용한다. 큰 집합이 작은 집합을 포함하는 중첩 설계인지 매번 새로 뽑는 독립 설계인지도 결과 변동에 영향을 준다. 범주 비율과 시간 순서를 보존하고, 중복 문서가 훈련과 검증에 걸치지 않도록 그룹 단위로 분할한다.

생각그림 3 · 표본 수에 따른 두 점수의 수렴도표를 좌우로 움직여 전체 내용을 확인하세요.
훈련 표본 수점수(높을수록 좋음)훈련 점수검증 점수
교육용 곡선에서 두 점수가 가까워지지만 낮은 값에서 만난다면 자료 추가만으로 충분하다고 단정하지 않습니다.

과소적합과 과대적합을 간격 하나로만 판단하지 않는다

훈련·검증 점수가 모두 낮으면 과소적합을 의심하고, 훈련은 높지만 검증이 낮으면 과대적합을 의심한다. 그러나 “낮다”의 기준은 업무 기준선과 오류 비용에 따라 달라진다. 정확도 90%가 불균형 자료에서는 다수 범주만 고른 결과일 수 있으므로 F1, 로그손실, 범주별 재현율도 함께 본다.

두 선의 간격이 작아도 자료 누수가 있으면 둘 다 비현실적으로 높을 수 있다. 반대로 강한 자료 증강이나 정규화 때문에 훈련 점수가 검증 점수보다 잠시 낮게 나올 수도 있다. 전처리 모드와 평가 모드를 구분하고, 선의 모양을 원인 진단이 아니라 다음 검사를 정하는 신호로 쓴다.

생각그림 4 · 곡선 패턴에서 다음 검사로 이어 가기
둘 다 낮음모델·특징·잡음 점검
훈련만 높음정규화·자료 추가·누수 점검
둘 다 높고 가까움별도 시험 집합 확인
검증이 더 높음증강·드롭아웃·분할 점검
갑작스런 꺾임학습률·자료 순서 확인
패턴은 진단 후보를 좁히지만 원인을 자동으로 증명하지 않습니다.

LLM에게는 측정표와 축 정의를 먼저 준다

“학습 곡선을 그려 줘”라고만 요청하면 모델이 그럴듯한 숫자를 채울 수 있다. 에포크 또는 표본 수, 반복별 훈련·검증 값, 지표 방향, 자료 분할, 시드, 조기 종료 규칙을 표로 준다. 값이 없으면 빈 양식과 검사 항목만 만들고 결과를 추정하지 못하게 한다.

모델에게 각 지점의 평균과 띠를 다시 계산하고, 최소 손실이나 최대 점수의 지점을 원표의 행 번호와 대조하게 한다. 그래프 설명에는 관찰과 행동 제안을 분리한다. “12 에포크 뒤 검증 손실이 증가했다”는 관찰이고 “12에서 멈춘다”는 비용과 재현 검사를 포함한 선택이다.

생각그림 5 · 원자료에서 학습 곡선까지의 검산 순서
축·지표 고정
분할·시드 기록
반복값 집계
선·띠 검산
선택과 최종시험 분리
숫자를 먼저 고정하고 그림을 나중에 만들면 자연스러운 설명이 원자료를 덮는 일을 줄입니다.

서로 다른 세 사례는 같은 모양이어도 조치가 다르다

문서 분류에서는 표본 수 곡선이 계속 좋아져 추가 라벨링을 검토할 수 있다. 미세조정에서는 에포크 곡선의 검증 손실 반등으로 조기 종료를 정한다. 검색 결합 생성에서는 생성 모델을 학습하지 않고 검색기·프롬프트 설정별 평가를 반복했으므로 이를 학습 곡선이라 부르지 않고 설정 비교 도표로 표시한다.

서비스의 응답시간이나 비용이 날짜별로 변한 선도 모델 학습 곡선이 아니다. 그것은 운영 시계열이며 배포·트래픽·캐시를 함께 분석한다. LLM 내부 계산, 모델 훈련 측정, 운영 지표를 같은 “성능 변화”라는 말로 뭉치지 않아야 잘못된 조기 종료나 자료 수집 결정을 피할 수 있다.

생각그림 6 · 비슷한 선 그래프의 질문 구분
도표가로축질문
에포크 학습 곡선학습 반복언제 일반화가 나빠지는가
표본 수 학습 곡선훈련 표본 수자료 추가가 도움이 되는가
검증 곡선하이퍼파라미터설정 변화 효과는 무엇인가
운영 시계열날짜·시간서비스가 언제 느려졌는가
도표 이름보다 축과 측정 절차가 어떤 질문에 답하는지 먼저 확인합니다.

수정 전후는 축·분할·선택 규칙에서 갈린다

수정 전 그림은 “학습이 좋아졌다”라는 제목 아래 훈련 정확도 한 줄만 그렸고, 검증 집합과 반복 수가 없었다. 가장 높은 지점을 게시 성능으로 적었지만 같은 자료로 설정을 골랐고 시험 집합을 따로 두지 않았다. 눈금도 92%에서 시작해 작은 차이가 급격해 보였다.

수정 후에는 “훈련 표본 수별 5겹 교차검증 F1”로 제목을 바꾸고 훈련·검증 평균과 표준편차 띠를 표시했다. 조기 종료용 검증 값과 최종 시험 값을 분리하고, 기준 모델·업무 임계값·자료 중복 검사를 캡션에 기록했다. 축 절단이 필요하면 숫자와 절단 표시를 명확히 했다.

생각그림 7 · 모호한 상승선을 재현 가능한 기록으로 고친다
수정 전훈련 정확도 한 줄
수정 전축·분할·반복 누락
수정 후축·지표·평균·띠 공개
수정 후선택 검증과 최종 시험 분리
도표가 아름다운지보다 같은 절차로 다시 계산할 수 있는지가 우선입니다.

공개 전에는 계산·해석·화면을 따로 검사한다

원표의 각 지점에서 평균, 변동 폭, 최적 지점을 독립 계산한다. 자료가 커질수록 학습 시간이 실제로 늘었는지, 실패한 실행을 임의로 뺐는지 확인한다. 조기 종료 지점은 여러 시드에서 안정적인지 보고, 한 번의 최저값만으로 일반 법칙을 만들지 않는다.

모바일 360·390·430px에서는 축 제목, 범례, 띠가 겹치지 않는지 확인하고 상세 SVG는 글자를 줄이지 않고 내부 가로 이동을 제공한다. 키보드로 실습 범위를 바꾸고 aria-live 결과가 읽히는지 시험한다. 마지막으로 검증값을 시험값이나 실제 서비스 품질로 바꿔 쓰지 않았는지 문장을 검토한다.

생각그림 8 · 학습 곡선 공개 전 검사표
검사통과 기준미통과 행동
축에포크·표본 수가 분명제목 수정
분할훈련·검증·시험 분리재분할
집계반복·띠 정의 공개원표 추가
해석패턴과 원인 구분문장 완화
접근성숫자·범례·키보드배치 분할
수치 검산, 주장 범위, 화면 접근성을 각각 통과해야 공개할 수 있습니다.

복사해서 쓸 수 있는 LLM 요청문

아래 요청문은 교육용 예시다. 원문을 함께 제공하고, 모델이 빈칸을 추측하지 않도록 금지 조건을 넣었다. 결과를 받으면 원문 문장과 노드·선의 대응을 사람이 다시 확인한다.

다음 학습 기록을 학습 곡선으로 정리해 줘.
1. 가로축이 에포크인지 훈련 표본 수인지 먼저 확인한다.
2. 모델·자료 버전·분할·시드·반복 수·지표와 좋은 방향을 적는다.
3. 반복별 원자료에서 훈련·검증 중심값과 띠를 다시 계산한다.
4. 검증으로 고른 시점과 끝까지 보지 않은 시험 성능을 분리한다.
5. 자료 누수·중복·불균형·실패 실행 누락을 검사한다.
6. 곡선 패턴을 원인으로 단정하지 말고 다음 검사와 연결한다.
7. 실제 값이 없으면 수치를 추정하지 말고 빈 양식만 만든다.
8. 조기 종료나 자료 추가 제안에는 근거와 불확실성을 붙인다.

[축·분할·반복별 측정표] …
생각그림 10 · 요청문에서 결과와 검토까지
원문 붙이기
도표 목적 명시
추정 금지
문장별 대조
요청문은 도표를 자동으로 진실로 만들지 않습니다. 원문과 결과를 왕복해 확인하는 절차가 핵심입니다.

직접 실습하고 결과를 읽기

이 실습은 브라우저 안에 준비한 교육용 자료만 사용한다. 외부 LLM을 호출하거나 실제 기관 자료를 조회하지 않는다. 입력을 바꾸어 결과가 어떻게 달라지는지 보고, 설명과 맞지 않는 결과가 나오면 어떤 정보가 빠졌는지 적어 본다.

에포크를 바꾸어 두 손실과 간격을 확인하세요.

자료와 출처

아래 자료는 이번 글의 정의와 표기법을 확인하는 데 사용했다. 생각그림과 사례 문장은 원자료를 복제하지 않고 이 글의 교육 목적에 맞게 새로 구성했다.