问题标签 [scikit-learn-pipeline]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
39653 浏览

python - sklearn 估计器管道的参数无效

我正在使用 Python 2.7 和 sklearn 0.16实现 O'Reilly 书籍“ Python 机器学习简介”中的一个示例。

我正在使用的代码:

返回的错误归结为:

这是与使用 v.0.16 中的 Make_pipeline 相关的错误吗?是什么导致了这个错误?

0 投票
3 回答
25439 浏览

python - 从 sklearn 中的 Pipeline 对象返回系数

我已经适合一个Pipeline对象RandomizedSearchCV

我想访问的coef_属性,best_estimator_但我无法做到这一点。我尝试使用coef_下面的代码进行访问。

sgd_randomized_pipe.best_estimator_.coef_

但是我得到以下 AttributeError ...

AttributeError:“管道”对象没有属性“coef_”

scikit-learn 文档说这coef_是 的一个属性SGDClassifier,它是 my 的类base_estimator_

我究竟做错了什么?

0 投票
0 回答
116 浏览

tensorflow - 如何在 gridsearch 中使用带有 KerasRegressor 的 Early Stopping(使用 sklearn 管道)?

KerasRegressor在 sklearn 管道中使用并用于GridSearchCV超参数调整。现在我想添加提前停止但是我找不到方法。我读了几篇较旧的帖子,但没有成功。我的代码如下,它可以正常工作,但似乎提前停止不起作用:

详细看起来像这样:

有人知道如何解决这个问题吗?

0 投票
1 回答
132 浏览

python - 使用 Scikit-Learn 在管道中包含预测器

实际上这个疑问更像是——“为什么这段代码工作正常?”。

我正在从教科书中解决一个问题。具体来说,问题是构建一个具有数据准备阶段(删除 NA 值,执行特征缩放等)和预测阶段的管道,该阶段涉及在转换后的数据集上训练的预测器并返回其预测。

在这里,我们使用了支持向量回归模块 (sklearn.svm.svr)。

我尝试了我的一些代码,但它没有工作。于是我查阅了教科书作者提供的实际解决方案——

我尝试了这段代码,它确实按预期工作。它如何才能正常工作?我的主要反对意见是:

  1. 我们只拟合了数据集,但我们实际上在哪里 转换它?我们不会在任何地方调用 transform() 函数......

  2. 另外,我们如何在这个管道中使用 predict() 函数?SVR 可能是该管道的一部分,但其他转换器也是如此,它们没有 predict() 函数。

提前感谢您的回答!

0 投票
0 回答
20 浏览

python-3.x - 交叉验证不适用于自定义元估计器

我有一个用两条管道初始化的两阶段元估计器。估计器旨在将观察结果分类为 1、-1 或 0。第一个管道学习区分 0 和 (1, -1),第二个管道学习区分 1 和 -1,去除所有的 0。这是元估计器的代码:

如果我将估算器称为

但是当我尝试使用 CV 时,它会中断。

错误消息似乎表明问题在于拟合中的索引与在 CV 中完成的索引之间存在冲突。

谁能在这里指出我的解决方案?

0 投票
1 回答
138 浏览

python - 在尝试评估决策树回归模型时测试分数 NaN

我正在尝试使用 ames 住房数据集中的数字和分类特征来评估决策树模型的准确性。对于数值特征的预处理,我使用了 SimpleImputer 和 StandardScalar。至于分类特征,我使用了一个热编码器。我尝试使用 10 折交叉验证来评估决策树模型(决策树回归器),但我得到了测试分数的 Nan 值。这是我的代码:

这是我得到的考试成绩:

为了找出问题的根源,我在交叉验证中将 (error_score='raise') 作为参数传递。结果发现错误是:

我该如何解决这个问题?任何帮助都感激不尽。谢谢 :)

这是我的模型的样子:

数据:

目标:

0 投票
1 回答
53 浏览

python - 特征不匹配:通过 scikit-learn 管道进行预测

我在一个名为的文件中实现了以下 scikit-learn 管道build.py,后来成功地对其进行了腌制。

然后将腌制管道读取到不同的文件app.py中,该文件接受用户数据以通过未腌制管道进行预测。

我遇到的挑战是未腌制的管道期望传入的测试数据具有类似于用于训练管道(X_train)的列结构。 特征错误

为了解决这个问题,我需要对传入的测试数据列进行排序以匹配 X_train 的列。

  • 肮脏的解决方案,将 X_train 列名称导出到文件中,然后在其中读取app.py以重新排列传入测试数据的列。

关于如何以python方式解决这个问题的任何建议?

0 投票
1 回答
35 浏览

python - 使用 `TfidfVectorizer`、`CountVectorizer` 等时需要对标签进行编码吗?

在处理文本数据时,我理解需要将文本标签编码为一些数字表示(即,通过使用LabelEncoderOneHotEncoder

但是,我的问题是,当您使用某些特征提取类(即等)时,您是否需要明确执行此步骤TfidfVectorizerCountVectorizer或者这些是否会为您编码标签?

如果您确实需要自己单独对标签进行编码,您是否可以在 a 中执行此步骤Pipeline(例如下面的那个)

或者您是否需要事先对标签进行编码,因为管道期望fit()transform()数据(而不是标签)?

0 投票
1 回答
65 浏览

feature-engineering - Scikit-Learn Pipeline 中的新功能 - 两个现有功能之间的交互

我的数据集中有两个特征:高度和面积。我想使用 scikit-learn 中的管道通过交互区域和高度创建一个新功能。

谁能指导我如何实现这一目标?

谢谢

0 投票
1 回答
49 浏览

python - 如何检查 Scikit-Learn Pipeline 所做的更改?

这是一个非常简单的问题,但我无法在任何地方找到答案。我尝试了 Google、TDS、Analytics Vidhya、StackOverflow 等……所以,事情就是这样,我正在使用 Scikit-Learn Pipelines,但我想看看我的数据是如何被 Pipeline 处理的。我的意思是,假设我缺少值,现在它已被填充。我想看填充的数据,我想看编码器生成的假人等等