AI 평균 완료 시간이 같아도 손실은 다르다: 비선형 손실과 기댓값 계산 순서

AI의 평균 완료 시간이 같아도 업무 손실은 다를 수 있다. 마감을 넘긴 뒤에만 손실이 생긴다면, 평균 시간에 벌점을 매겨서는 늦게 끝난 실행의 비용을 놓친다. 실행별 시간을 먼저 손실로 바꾸고, 그 손실을 평균해야 한다. 어떤 손실 함수를 쓸지는 실제 업무 조건으로 정해야 한다.

앞선 글은 추가 평가의 가치를 기대 순편익으로 계산했다. 이번에는 그 기대값에 무엇을 넣을지 살펴본다. 대상은 두 AI 처리 경로의 검증된 완료 시간이다. 첫 글자가 나타난 시간이 아니라 요청한 작업이 끝났음을 확인한 시각까지 잰다. 아래 시간·확률·벌점은 모두 학습용 합성 값이며 실제 모델 성능이나 계약 조건이 아니다.

둘 다 평균 4초인데 한쪽만 마감을 넘긴다

경로 A는 매번 4초에 끝난다. 경로 B는 절반의 확률로 1초, 나머지 절반의 확률로 7초에 끝난다고 가정하자. 두 경로는 같은 요청 범위에서 동일한 품질·보안·권한 조건을 충족하며, 실패나 미완료 실행은 없는 단순 모형이다. 평균은 A도 4초, B도 (1+7)/2=4초다.

이 업무의 마감은 5초라고 놓는다. 5초까지는 지연 벌점이 없고, 그 뒤 초과 시간 1초당 10점을 부과한다. 손실 함수는 L(t)=10×max(0,t−5)다. 여기서 10의 단위는 점/초다. 벌점은 설명을 위한 평가 단위이며 현금 비용이나 실제 손해액으로 해석하지 않는다.

경로·결과확률완료 시간지연 손실
A100%4초0점
B의 빠른 결과50%1초0점
B의 느린 결과50%7초20점

A의 기대손실은 0점이다. B는 0×0.5+20×0.5=10점이다. 반면 평균 시간에 손실 함수를 적용하면 두 경로 모두 L(4)=0점으로 보인다. B가 마감을 넘기는 실행을, 빠르게 끝나는 실행과 먼저 섞어 버렸기 때문이다.

합성 예제에서 A는 항상 4초로 기대손실 0점, B는 1초와 7초가 각각 50%로 기대손실 10점이다. 두 경로의 평균 시간은 4초지만 실행별 손실을 먼저 계산하면 차이가 드러난다.
마감 5초, 초과 1초당 10점으로 정한 합성 예제. 실제 AI 성능이나 금전 손해가 아니다.

평균을 내는 순서가 판단을 바꾼다

구분할 것은 L(E[T])와 E[L(T)]다. 앞의 식은 평균 시간의 손실, 뒤의 식은 실행별 손실의 평균이다. 목표가 요청 한 건당 기대 지연 손실을 줄이는 것이라면 뒤의 값을 비교한다. 둘이 같다고 가정하려면 손실 함수와 시간 분포의 조건을 확인해야 한다.

이번 손실 함수는 볼록하다. 5초까지 기울기가 0이고 그 뒤에는 10으로 커진다. 볼록 함수에 대한 Jensen 부등식은 관련 기대값이 존재할 때 L(E[T])≤E[L(T)]라고 말한다. 따라서 이 모형에서는 평균 시간만 넣은 계산이 기대손실을 과소평가하거나 같게 계산한다. 이것은 실제 AI를 시험해 얻은 결론이 아니라, 정한 손실 함수의 수학적 성질이다.

다만 볼록하다는 이유만으로 항상 차이가 생기지는 않는다. 모든 시간이 5초 이하라면 손실은 모두 0이다. 모두 5초 이상이면 이 함수는 그 구간에서 선형이어서 평균 전후 계산이 일치한다. 이번 B는 마감 양쪽에 결과가 나뉘어 있어 차이가 난다.

마감 위반 횟수와 초과 시간은 다른 목적이다

마감을 한 번이라도 넘겼을 때 초과 길이와 관계없이 10점을 부과하고 싶다면 L(t)=10×1(t>5)처럼 다른 함수를 쓴다. 이 경우 B의 기대손실은 5점이다. 7초 실행의 벌점이 20점에서 10점으로 바뀌기 때문이다. 이 계단 함수는 전체 구간에서 볼록한 함수가 아니므로 앞의 Jensen 설명을 그대로 적용하면 안 된다.

두 벌점 중 어느 쪽이 맞는지는 수학이 정해주지 않는다. 마감 위반 자체가 문제인지, 늦어진 시간만큼 후속 작업의 대기 비용이 늘어나는지부터 정한다. 마감을 넘기면 작업이 무효가 되는 업무라면 완수율·재작업까지 별도로 모델링해야 한다. 벌점을 사후에 바꿔 원하는 AI를 1위로 만드는 것은 평가 기준을 바꾼 것이다.

판단하려는 문제필요한 기록
마감 위반이 얼마나 잦은가마감 초과 여부와 전체 요청 수
얼마나 오래 지연되는가실행별 초과 시간
실제 업무 손실은 얼마인가검증된 손실 규칙·단위·기간
실패나 미완료가 있는가성공 실행과 분리한 결과 상태

복사해서 계산하기

다음 코드는 위 합성 분포의 기대값만 계산한다. 확률은 관측한 성공률이 아니라 예제의 가정이다. 외부 패키지·모델 호출·파일 접근 없이 실행할 수 있다. 운영 로그를 읽거나 실제 분포를 추정하는 프로그램은 아니다.

cases = {"A": [(1.0, 4.0)],
         "B": [(0.5, 1.0), (0.5, 7.0)]}

def loss(t):
    return 10 * max(0, t - 5)

for name, outcomes in cases.items():
    mean_time = sum(p*t for p, t in outcomes)
    mean_loss = sum(p*loss(t) for p, t in outcomes)
    print(f"{name}: 평균 {mean_time:.1f}초, "
          f"평균의 손실 {loss(mean_time):.1f}점, "
          f"기대손실 {mean_loss:.1f}점")
A: 평균 4.0초, 평균의 손실 0.0점, 기대손실 0.0점
B: 평균 4.0초, 평균의 손실 0.0점, 기대손실 10.0점

실제 평가에 옮길 때 먼저 고정할 것

1. 완료의 정의와 측정 구간을 맞춘다. 첫 응답 시간과 저장·검증까지 끝난 시간을 섞지 않는다.
2. 마감, 벌점 단위, 손실 함수를 평가 결과를 보기 전에 기록한다. 부서나 업무별로 규칙이 다르면 따로 계산한다.
3. 실행별 결과를 보존한다. 평균만 남기면 나중에 새 손실 규칙을 적용할 수 없다. 실제 로그는 필요한 필드만 남기고 민감한 요청 원문을 불필요하게 수집하지 않는다.
4. 실패·시간초과·미확인을 분모에서 지우지 않는다. 종료 시점까지 미완료라면 완료 시간이 확정되지 않은 것이다. 미완료를 임의의 짧은 시간이나 0점 손실로 채우지 않는다.
5. 요청 구성과 관측 기간을 맞춘다. 표본 평균 손실은 미래의 참 기대손실이 아니므로 표본 수, 불확실성, 작업군별 차이를 함께 확인한다.

이 비교는 지연 손실 하나에 한정된다. 호출 비용·정확도·사람의 검토량은 별도 기준일 수 있다. 안전·권한 조건을 지연 벌점과 상쇄해 통과시키지 않는다. 실제 금액으로 바꾸려면 계약·작업 흐름·재작업 비용을 근거로 환산 규칙을 검증해야 한다.

기대효용과 연결하되 같은 말로 뭉개지 않는다

성과가 클수록 좋은 문제에서는 결과별 효용 u(x)를 구한 뒤 E[u(X)]를 비교할 수 있다. 증가하는 오목한 효용을 쓰면 같은 평균 성과를 확정적으로 얻는 쪽을 적어도 같은 정도로 선호하는 위험회피를 표현할 수 있다. 그러나 이번 예제는 시간에 따른 지연 손실을 명시한 것이다. 사람의 위험 선호를 측정하거나, 분산이 큰 AI는 언제나 나쁘다는 법칙을 입증한 것은 아니다.

평가 점수가 이미 원하는 손실이나 효용을 반영한다면 임의의 비선형 변환을 한 번 더 씌우지 않는다. 그 변환은 단순한 표시 변경이 아니라 선택 기준을 바꿀 수 있다. 같은 평균이라는 말로 결론을 내리기 전에, 평균낸 대상이 시간인지 손실인지부터 확인하면 된다.

이어서 읽기

첫 응답과 검증된 완료 시간을 나누어 재기: 시간 지표의 측정 구간과 미확인 결과를 구분한다.
완전정보 가치로 평가 예산 상한 계산하기: 비교 대상인 편익을 정의한 뒤 추가 정보의 가치를 계산한다.

근거와 확인 범위

UC Berkeley Stat 210A, Unbiased Estimation의 Convex Loss Functions 절에서 볼록 손실과 Jensen 부등식의 방향을 확인했다. 원문은 추정 문제를 다루며, AI 완료 시간에 적용한 사례와 벌점은 이 글에서 만든 합성 예제다. MIT 14.121, Lecture 9: Attitudes toward Risk에서 기대효용과 오목한 효용의 위험회피 해석을 대조했다. 두 원문 확인일은 2026년 10월 21일이다.

계산 예제는 Python 3.12.14에서 실행해 위 출력을 확인했다. 실제 AI 호출, 완료 시간 측정, 업무 손실 추정, 현장 선호 조사는 수행하지 않았다. 특정 SDK나 모델 버전에 종속된 기능 설명이 아니라 확률과 손실 함수에 관한 교육용 계산이다.


다른 글 보기 · 주제 탐색 · 작성자와 편집 기준 · 문의·정정 요청

RUDA DIRECTOR에서 더 알아보기

지금 구독하여 계속 읽고 전체 아카이브에 액세스하세요.

계속 읽기