1. Учиться
  2. /
  3. Courses
  4. /
  5. Python으로 배우는 금융 분야 Machine Learning

Connected

Exercise

사용자 정의 손실 함수

지금까지는 평균제곱오차(mean squared error)를 손실 함수로 사용했어요. 이 방법도 괜찮지만, 주가 예측에서는 사용자 정의 손실 함수를 구현하면 유용할 때가 있습니다. 사용자 정의 손실 함수는 우리가 선택한 특정 방식으로 모델의 성능을 개선하는 데 도움이 됩니다. 예를 들어, 이번에는 가격 변동 방향을 잘못 예측했을 때 큰 패널티를 주는 사용자 정의 손실 함수를 만들어 보겠습니다. 이렇게 하면 최소한 방향은 올바르게 예측하도록 네트워크가 학습하는 데 도움이 돼요.

이를 위해 (y_true, y_predicted)를 인수로 받는 함수를 작성해야 합니다. 또한 백엔드 keras(내부적으로 tensorflow 사용)의 기능을 활용해 실제 값과 예측 값의 부호가 일치하지 않는 경우를 찾아 그 사례에 패널티를 줄 것입니다.

Инструкции

100 XP
  • sign_penalty() 함수의 인수를 y_true와 y_pred로 설정하세요.
  • y_true와 y_pred의 부호가 다를 때 제곱 오차(tf.square(y_true - y_pred))에 penalty를 곱하세요.
  • 함수에서 loss 변수의 평균을 반환하세요. 이는 평균제곱오차이며, 실제 값과 예측 값의 부호가 반대일 때 패널티가 반영됩니다.