python-3.x - 具有未缩放特征值的python pdpbox图
问题描述
我正在尝试为多层感知器分类器绘制部分依赖和 ICE 图。我正在使用 UCI 成人数据集。我已经对分类特征进行了标签编码并缩放了整个数据帧,然后对缩放的数据帧执行了测试训练拆分。
现在,当我尝试绘制 PDP 和 ICE 图时,我得到了按比例缩放的年龄值(图 X 轴中的列),因此无法理解。我希望年龄值是在对数据执行缩放之前的原始值。我怎样才能做到这一点?
这是地块的代码:
from pdpbox import pdp, info_plots
pdp_age = pdp.pdp_isolate(model=mlp, dataset=X_train, model_features=X_train.columns, feature='Age')
#PDP Plot
fig, axes = pdp.pdp_plot(pdp_age, 'Age', plot_lines=False, center=False, frac_to_plot=0.5, plot_pts_dist=True,x_quantile=True, show_percentile=True)
#ICE Plot
fig, axes = pdp.pdp_plot(pdp_age, 'Age', plot_lines=True, center=False, frac_to_plot=0.5, plot_pts_dist=True,x_quantile=True, show_percentile=True)
您可以从图中看到无法理解年龄值,我希望年龄值处于其真实形式。我怎样才能做到这一点 ?
解决方案
我能够通过使用 Pipeline 对象来解决上述问题。我对分类变量使用了一种热编码,然后将缩放和分类器操作推送到 Pipeline 对象中。然后,我能够使用编码的 X_train 对部分依赖图没有任何问题,并且我得到了我正在寻找的实际年龄值范围。
推荐阅读
- jsf - 如何在 JavaEE for JSF 中实现 Oauth 2 机制?
- javascript - 创建和访问不带“src”属性的 IFrame
- java - 从firebase中恢复数据,问题Firebase.class
- c# - 具有多个内容的 WPF 样式
- android - 如何创建一个底部导航视图,其中一个视图项始终突出显示,无论它是否被选中
- c++ - 任务栏上的 GLFW 加载状态
- node.js - 具有应该和必须的弹性搜索搜索
- node.js - 使用节点的 fs 会导致空对象
- r - 如何在 ggplot 中使用向量的内容作为标题?
- docker - 使用 SELinux 在 Docker 上挂载卷中的权限被拒绝