Tigris
묵묵히 걸어가기
Tigris
전체 방문자
오늘
어제
  • 분류 전체보기 (40)
    • CS (15)
      • Algorithms (1)
      • Linux (3)
      • Python (4)
      • Git & Github (2)
      • Cloud Service (1)
    • Data Science (8)
      • Maching Learning (9)
      • Framework (1)
    • Notes (2)
    • Data (4)

태그

  • python
  • 트랜스포머
  • 딥러닝
  • 한빛미디어
  • 나는리뷰어다
  • 파이썬
  • Deep learning
  • attention
  • 어텐션
  • Transformer
hELLO · Designed By 정상우.
Tigris

묵묵히 걸어가기

ML. Pinball Loss
Data Science/Maching Learning

ML. Pinball Loss

2023. 9. 28. 23:40

 

주로 Quantile Prediction을 위해 사용되는 Loss로 Quantile Loss라고도 불린다. 계산식은 다음과 같다.$$
\begin{align}
\mathcal{L}
&=(Y_{t}-Q_{t}(u)){\cdot}u{\cdot}{\mathbb{1}\{Q_{t}(u){\leq}Y_{t}\}}
+(Q_{t}(u)-Y_{t}){\cdot}(1-u){\cdot}{\mathbb{1}\{Q_{t}(u){\gt}Y_{t}\}} \\ \\
&=\begin{cases}
(Y_{t}-Q_{t}(u)){\cdot}u & if $Q_{t}(u){\leq}Y_{t}$, \\ \\
(Q_{t}(u)-Y_{t}){\cdot}(1-u) & otherwise.
\end{cases}
\end{align}
$$

이 때 

  • $Y_t$는 t 시점의 실제값
  • $Q_{t}(u)$는 t 시점에서의 u 분위수에 대한 예측값
  • $\mathbb{1}$은 Indicator function이다.

수식만으로는 Pinball Loss를 이용했을 때 모델이 어떤 방향으로 학습될지, 어떤 예측 결과가 나와야 Pinball Loss가 낮아지는지 알아보기 어려우니 분위수에 따른 Loss 값의 그래프를 확인해본다.

분위수에 따른 Loss 변화

1. 중위수

중위수를 예측할 때의 Pinball Loss

위 그래프에서 확인할 수 있듯이 50% 분위수의 예측값이 실제값과 동일하도록 학습이 진행될 것이다.

2. 50% 미만

50% 미만 분위수에 대한 Pinball Loss

  • 예측값이 실제값보다 높을 때 Loss가 크다.
  • 분위수가 작아질수록 예측값이 실제값보다
    • 큰 경우의 Loss가 커지지만,
    • 작은 경우의 Loss는 작아진다.

즉, Pinball Loss를 이용하여 모델을 학습하게 되면 

  • 50% 미만 분위수에 대한 예측값이 실제값보다 낮도록 학습이 되는 동시에
  • 분위수가 낮아질수록 더 낮은 예측값을 얻게 될 가능성이 커도록 학습이 이루어질 것이다.

3. 50% 초과

50% 초과 분위수에 대한 Pinball Loss

50% 미만일 때와 정반대로

  • 예측값이 실제값보다 낮을 때 Loss가 크다.
  • 분위수가 커질수록 예측값이 실제값보다
    • 작은 경우의 Loss가 커지지만,
    • 큰 경우의 Loss는 작아진다.

즉, Pinball Loss를 이용하여 모델을 학습하게 되면 

  • 50% 초과 분위수에 대한 예측값이 실제값보다 높도록 학습이 되는 동시에
  • 분위수가 높아질수록 더 높은 예측값을 얻게 될 가능성이 커도록 학습이 이루어질 것이다.

정리

Quantile 별 예측값은 단일 값을 이용하기보다는 예측 범위를 만들 때 사용된다는 점을 고려하면 

  1. 50% 미만 분위수의 예측값과 50% 초과 분위수 예측값 사이에 실제값이 존재하기를 바랄 것이므로 50% 미만 분위수에 대해서는 예측값이 실제값보다 클 때 큰 Loss가 부여되고, 50% 초과 분위수에 대해서는 예측값이 실제값보다 작을 때 큰 Loss가 부여되는 점, 그리고 분위수가 작아질수록(높아질수록) 더 낮은(높은) 예측값이 나올 수 있도록 해주는 점을 이해할 수 있다.
  2. 또한, 1번 조건이 만족될 경우 최대한 예측 범위를 줄이는 것이 도움이 된다는 점에서 모든 분위수에 대하여 예측값이 실제값을 벗어나는 경우 일정 부분의 Loss가 부여되는 점을 이해할 수 있다.

잘못된 내용, 오타, 부정확한 문장 등 어떤 피드백이든 환영합니다. 감사합니다.

저작자표시 비영리 변경금지

'Data Science > Maching Learning' 카테고리의 다른 글

Vision Transformer(1): Theory  (2) 2022.06.26
차근차근 이해하는 Transformer(5): Positional Encoding  (0) 2022.05.18
차근차근 이해하는 Transformer(4): Masked Multi-Head Attention과 Decoder  (2) 2022.05.09
차근차근 이해하는 Transformer(3): Multi-Head Attention과 Encoder  (0) 2022.05.06
차근차근 이해하는 Transformer(2): Single-Head Attention으로 이해하는 Encoder  (2) 2022.05.05
    'Data Science/Maching Learning' 카테고리의 다른 글
    • Vision Transformer(1): Theory
    • 차근차근 이해하는 Transformer(5): Positional Encoding
    • 차근차근 이해하는 Transformer(4): Masked Multi-Head Attention과 Decoder
    • 차근차근 이해하는 Transformer(3): Multi-Head Attention과 Encoder
    Tigris
    Tigris
    Data Science, Data Engineering, 그리고 Data Product와 관련된 이야기를 함께 나누고 싶습니다.

    티스토리툴바