You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

加载pickle存储的LogisticRegression模型预测测试集Race字段

后续预测操作步骤
  • 首先修正训练阶段的模型保存逻辑(必须操作,原训练代码存在逻辑错误)
    你之前的验证流程中,先对输入特征做了独热编码再训练模型,但最后保存的模型是直接在未编码的原始特征上训练的,和验证逻辑不一致,还会因为Gender为类别特征直接报错。需要修改训练代码的保存部分,将独热编码器和训练好的模型一起保存:
# 训练阶段修改后的保存代码
ohe = OneHotEncoder(handle_unknown='ignore')
ohe.fit(X_train)
X_train_ohe = ohe.transform(X_train).toarray()

clf = LogisticRegression(solver='liblinear')
clf.fit(X_train_ohe, y_train.values.ravel())

# 同时保存编码器和模型
pickle.dump({'ohe': ohe, 'model': clf}, open('model.pkl','wb'))
  • 预测阶段补全以下代码即可完成预测
    在你现有预测代码的基础上,追加以下逻辑:
# 加载编码器和模型
loaded_obj = pickle.load(open('model.pkl','rb'))
ohe = loaded_obj['ohe']
model = loaded_obj['model']

# 测试集特征执行和训练阶段一致的独热编码
X_test_ohe = ohe.transform(X)

# 生成预测结果
pred_race = model.predict(X_test_ohe)

# 将预测结果写入测试集的Race列
df['Race'] = pred_race

# 可选:将带预测结果的测试集保存为新文件
df.to_csv('test_pred_result.csv', index=False)
  • 额外优化提示
    你当前的NaN填充代码无法覆盖pandas原生的浮点型空值,建议替换为更可靠的写法:
    df['Race'] = df['Race'].fillna(0)

内容的提问来源于stack exchange,提问作者Ahmet Furkan Aydoğan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.18 12:24:04