※ 본 과제에는 별도의 베이스라인이 제공되지 않습니다. 아래는 평가에 사용하는 계산식이므로 참고바랍니다.
import sys
import numpy as np
import joblib
y_true = joblib.load(sys.argv[1])
y_pred = joblib.load(sys.argv[2])
# get absolute errors
y_true = np.concatenate(y_true)[:,:,3:]
y_pred = np.concatenate(y_pred)[:,:,3:]
error = np.abs(y_true - y_pred) * np.array([0.05, 1.0]).astype(np.float32) # temperature weights
error[:,:,(3, 11, 19, 29, 35, 39),:] *= 3.0 # POI weights
# remove non-water values
mask = np.where(y_true.reshape(-1) == -99)[0]
error = np.delete(error.reshape(-1), mask)
# get scores
score = np.mean(error)
print("score:", score)