Sat, 16 Oct 2021 20:57:38 GMT

master
大蒟蒻 4 years ago
parent 1135697a8a
commit 5aa441f3fe

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

@ -1,5 +1,3 @@
# 要添加一个新单元,输入 '# %%'
# 要添加一个新的标记单元,输入 '# %% [markdown]'
# %%
import pandas as pd
@ -41,8 +39,8 @@ y = df[target_cols]
data_keys = ['X_train', 'X_test', 'y_train', 'y_test']
data_vals = train_test_split(X, y, test_size=0.2)
train_test_data = dict(zip(data_keys, data_vals))
train_test_data['X_test'] = test_set[feature_cols]
train_test_data['y_test'] = test_set[target_cols]
# train_test_data['X_test'] = test_set[feature_cols]
# train_test_data['y_test'] = test_set[target_cols]
# train_test_data = {
# 'X_train': train_set[feature_cols],
# 'y_train': train_set[target_cols],
@ -79,17 +77,24 @@ for reg in [CatBoostRegressor, LGBMRegressor, XGBRegressor]:
# %%
from sklearn import metrics
with open("cat.pickle", "rb") as f:
models = pickle.load(f)
X, ys = train_test_data['X_test'], train_test_data['y_test']
evals = []
for target_col, reg in models.items():
y_hat = reg.predict(X) # fake
y = ys[target_col] # real
rmse = metrics.mean_squared_error(y, y_hat, squared=False)
r2 = metrics.r2_score(y, y_hat)
eval_dict = {'Error': target_col, 'RMSE': rmse, 'R^2': r2}
evals.append(eval_dict)
pd.DataFrame(evals)
def eval_model(regType):
with open(f"models/model_{regType.__name__}.pickle", "rb") as f:
models = pickle.load(f)
X, ys = train_test_data['X_test'], train_test_data['y_test']
evals = []
for target_col, reg in models.items():
y_hat = reg.predict(X) # fake
y = ys[target_col] # real
rmse = metrics.mean_squared_error(y, y_hat, squared=False)
r2 = metrics.r2_score(y, y_hat)
eval_dict = {'Error': target_col, 'RMSE': rmse, 'R^2': r2}
evals.append(eval_dict)
print(regType.__name__)
print(pd.DataFrame(evals))
for reg in [CatBoostRegressor, LGBMRegressor, XGBRegressor]:
eval_model(reg)
# %%

Loading…
Cancel
Save