선형 회귀: 손실

손실은 모델의 예측이 얼마나 잘못되었는지 설명하는 수치 측정항목입니다. 손실은 모델의 예측과 실제 라벨 간의 거리를 측정합니다. 모델을 학습시키는 목표는 손실을 최소화하여 가능한 한 가장 낮은 값으로 줄이는 것입니다.

다음 이미지에서는 데이터 포인트에서 모델로 그려진 화살표로 손실을 시각화할 수 있습니다. 화살표는 모델의 예측이 실제 값과 얼마나 차이가 있는지를 보여줍니다.

그림 9. 손실 선은 데이터 포인트를 모델에
연결합니다

그림 9. 손실은 실제 값에서 예측 값까지 측정됩니다.

손실 거리

통계와 머신러닝에서 손실은 예측 값과 실제 값의 차이를 측정합니다. 손실은 방향이 아닌 값 사이의 거리에 초점을 맞춥니다. 예를 들어 모델이 2를 예측하지만 실제 값이 5인 경우 손실이 음수 $ -3 $ ($ 2-5=-3 $)인지는 상관없습니다. 대신 값 사이의 거리가 $ 3 $임을 고려합니다. 따라서 손실을 계산하는 모든 방법에서 부호를 삭제합니다.

표지판을 삭제하는 가장 일반적인 두 가지 방법은 다음과 같습니다.

  • 실제 값과 예측값의 차이의 절댓값을 취합니다.
  • 실제 값과 예측값의 차이를 제곱합니다.

손실 유형

선형 회귀에는 다음 표에 요약된 네 가지 주요 손실 유형이 있습니다.

손실 유형 정의 등식
L1 손실 예측값과 실제값 간의 차이의 절대값 합계입니다. $ ∑ | actual\ value - predicted\ value | $
평균 절대 오차 (MAE) 일련의 예에 대한 L1 손실의 평균입니다. $ \frac{1}{N} ↘ | 실제\ 값 - 예측\ 값 | $
L2 손실 예측값과 실제값 간의 제곱 차이의 합계입니다. $ ∑(actual\ value - predicted\ value)^2 $
평균 제곱 오차 (MSE) 일련의 예시에서 L2 손실의 평균입니다. $ \frac{1}{N} ∑ (실제\ 값 - 예측\ 값)^2 $

L1 손실과 L2 손실(또는 MAE와 MSE)의 기능적 차이는 제곱입니다. 예측과 라벨의 차이가 클수록 제곱하면 손실이 더 커집니다. 차이가 작으면 (1 미만) 제곱하면 손실이 더 줄어듭니다.

한 번에 여러 예시를 처리할 때는 MAE 또는 MSE 중 무엇을 사용하든 모든 예시에서 손실을 평균화하는 것이 좋습니다.

손실 계산 예시

이전의 최적 일치 선을 사용하여 한 가지 예의 L2 손실을 계산합니다. 최적선에서 다음과 같은 가중치 및 편향 값이 나왔습니다.

  • $ \small{가중치: -3.6} $
  • $ \small{편향: 30} $

모델이 2,370파운드 차량의 갤런당 마일리지가 21.5마일이라고 예측했지만 실제로는 24마일이라고 가정하면 L2 손실을 다음과 같이 계산합니다.

등식 결과
예측

$\small{bias + (weight * feature\ value)}$

$\small{30 + (-3.6*2.37)}$

$\small{21.5}$
실제 금액 $ \small{ label } $ $ \small{ 24 } $
L2 손실

$ \small{ (예측 - 실제\ 값)^2} $

$\small{ (21.5 - 24)^2 }$

$\small{6.25}$

이 예에서 단일 데이터 포인트의 L2 손실은 6.25입니다.

손실 선택

MAE 또는 MSE를 사용할지 여부는 데이터 세트와 특정 예측을 처리하려는 방식에 따라 달라질 수 있습니다. 데이터 세트의 대부분의 지형지물 값은 일반적으로 고유한 범위 내에 있습니다. 예를 들어 자동차는 일반적으로 2,000~5,000파운드이고 갤런당 8~50마일을 주행합니다. 8,000파운드의 자동차 또는 갤런당 100마일에 달하는 자동차는 일반적인 범위를 벗어나므로 이상점으로 간주됩니다.

이상치는 모델의 예측이 실제 값과 얼마나 차이가 있는지도 나타낼 수 있습니다. 예를 들어 3, 000파운드(약 1,360kg)의 자동차 또는 갤런당 40마일(약 64km)의 자동차가 일반적인 범위 내에 있습니다. 하지만 3,000파운드 차량이 갤런당 40마일을 주행하는 경우 모델의 예측에 따르면 이상치가 됩니다. 모델은 3,000파운드 차량이 갤런당 18~20마일을 주행한다고 예측하기 때문입니다.

최적의 손실 함수를 선택할 때는 모델이 외부값을 처리하는 방식을 고려하세요. 예를 들어 MSE는 모델을 이상점 쪽으로 이동하지만 MAE는 그렇지 않습니다. L2 손실은 L1 손실보다 이상점에 훨씬 더 높은 패널티를 부과합니다. 예를 들어 다음 이미지는 MAE를 사용하여 학습된 모델과 MSE를 사용하여 학습된 모델을 보여줍니다. 빨간색 선은 예측에 사용될 완전히 학습된 모델을 나타냅니다. 이상치는 MAE로 학습된 모델보다 MSE로 학습된 모델에 더 가깝습니다.

그림 10. 모델이 이상치 쪽으로 더 기울어집니다.

그림 10. MSE로 학습된 모델은 모델을 이상치에 더 가깝게 이동합니다.

그림 11. 모델이 이상치에서 더 멀리 기울어집니다.

그림 11. MAE로 학습된 모델은 이상치에서 더 멀리 떨어져 있습니다.

모델과 데이터 간의 관계를 확인합니다.

  • MSE. 모델이 이상점에 더 가깝지만 대부분의 다른 데이터 포인트에서 더 멀리 떨어져 있습니다.

  • MAE 모델이 이상치에서 더 멀리 떨어져 있지만 다른 데이터 포인트의 대부분에 더 가깝습니다.

이해도 확인

다음 두 그래프를 고려해 보겠습니다.

점 10개가 있는 도표입니다.
      선이 6개의 점을 통과합니다. 2개의 점은 선 위 1단위, 다른 2개의 점은 선 아래 1단위입니다. 점 10개가 있는 도표 선이 8개의 점을 통과합니다. 한 점은 선 위 2단위, 다른 점은 선 아래 2단위입니다.
위 도표에 표시된 두 개의 데이터 세트 중 평균 제곱 오차 (MSE)가 더 높은 것은 무엇인가요?
왼쪽의 데이터 세트
이 줄의 6개 예시의 총 손실은 0입니다. 선에 있지 않은 네 가지 예시는 선에서 그리 멀지 않으므로 오프셋을 제곱해도 여전히 낮은 값이 나옵니다. $MSE = \frac{0^2 + 1^2 + 0^2 + 1^2 + 0^2 + 1^2 + 0^2 + 1^2 + 0^2 + 0^2} {10} = 0.4$
오른쪽의 데이터 세트
이 줄의 8개 예시의 총 손실은 0입니다. 그러나 선에서 벗어나는 점은 2개뿐이지만, 두 지점 모두 선에서 벗어나면 왼쪽 그림의 이상점 점보다 2배 더 큽니다. 제곱 손실값의 경우 이러한 차이가 증폭되므로 오프셋 2의 경우 오프셋 1보다 4배 더 큰 손실이 발생합니다. $MSE = \frac{0^2 + 0^2 + 0^2 + 2^2 + 0^2 + 0^2 + 0^2 + 2^2 + 0^2 + 0^2} {10} = 0.8$