시작하기무료로 시작하기

테스트 오류 추정하기

이제 작업 공간에 있는 posterior_predictive를 활용해 새 데이터에서 모델 성능을 평가해 볼까요. 이를 위해 테스트 관측치를 순회하면서, 각 관측치에 대해 이 관측치의 예측 분포와 실제 참값의 차이를 예측 오차로 계산하세요. 이렇게 하면 모델 오차의 분포를 얻을 수 있고, 이를 시각화할 수 있습니다.

pymc3numpy는 각각 pmnp로 임포트되어 있습니다. 테스트 데이터 bikes_test도 작업 공간에 준비되어 있어요. 시작해 봅시다!

이 연습은 강의의 일부입니다

Python으로 배우는 Bayesian 데이터 분석

강의 보기

연습 안내

  • errors를 빈 리스트로 초기화하세요.
  • bikes_test의 각 행에 대해, posterior_predictive에서 이 행에 해당하는 예측 샘플에서 그 행의 실제 num_bikes 단일 값(스칼라)을 뺀 값으로 예측 오차를 계산하세요.
  • errorsnumpy 배열로 변환한 다음 결과에 .reshape() 메서드를 적용해 모양을 변경하고, 최종 결과를 error_distribution에 할당하세요.
  • pymc3plot_posterior() 함수를 사용해 테스트 오차 분포를 그리세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# Initialize errors
errors = ____

# Iterate over rows of bikes_test to compute error per row
for index, test_example in bikes_test.iterrows():
    error = ____[____][:, ____] - ____[____]
    errors.append(error)

# Reshape errors
error_distribution = ____(____).____()

# Plot the error distribution
____
plt.show()
코드 편집 및 실행