运行没有特征组合的多项式回归

Posted

技术标签:

【中文标题】运行没有特征组合的多项式回归【英文标题】:Run a polynomial regression without combinations of the features 【发布时间】:2019-07-05 12:03:39 【问题描述】:

我正在运行 p 阶的多项式回归。为简单起见,我们在此问题中使用 order p = 2

假设我们有X 有两个特征x1, x2y。我正在尝试进行多项式回归

y = ε + α + β1•x1 + β2•x2 + β3•x1^2 + β4•x2^2

我发现 sklearn 有一个sklearn.preprocessing.PolynomialFeatures。但是,如果我使用 order p = 2,它会自动给出特征组合。这将导致回归:

y = ε + α + β1•x1 + β2•x2 + β3•x1^2 + β4•x2^2 + β5•x1x2

但是,我不想要这些功能的组合,即 x1x2 之类的东西。有没有可以按照我的意愿进行多项式回归的包?

谢谢!

【问题讨论】:

【参考方案1】:

Tbh,这对我来说似乎是一个非常奇怪的想法。多边形特征的很多优势都来自交互特征。

我很确定没有内置任何东西,但是

您可以查看PolynomialFeatures 预处理器,并自行修改。您需要“还原”interaction_only 参数的逻辑 只需构建你的预处理器,你的情况很简单,.fit 会像concat(a, a**2) 那样做

【讨论】:

【参考方案2】:

numpy.polynomial.polynomial.polyfit 似乎可以满足您的需求。

对于更具体的需求,请使用statistics tool

【讨论】:

以上是关于运行没有特征组合的多项式回归的主要内容,如果未能解决你的问题,请参考以下文章

特征与多项式回归

机器学习:逻辑回归(使用多项式特征)

逻辑回归-4.添加多项式特征

特征与多项式回归

添加多项式特征破坏了 SVM 回归

多项式回归(Polynomial Regression)