运行 没有特征组合的多项式回归
Run a polynomial regression without combinations of the features
我正在 运行 进行 p 阶的多项式回归。为了简单起见,我们在这道题中使用顺序p = 2
。
假设我们 X
有两个特征 x1, x2
和 y
。我正在尝试 运行
的多项式回归
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
这样的东西。有没有什么包可以按照我的意愿做多项式回归?
谢谢!
老实说,这对我来说似乎很奇怪。 poly 特征的很多优势来自于交互特征。
我很确定没有内置的东西,但是
- 你可以看一下
PolynomialFeatures
预处理器,然后自己修改。您需要 "revert" interaction_only
参数的逻辑
- 只需构建你的预处理器,你的情况很简单,
.fit
会像 concat(a, a**2)
numpy.polynomial.polynomial.polyfit 似乎可以满足您的需求。
对于更具体的需求,请使用此 statistics tool
我正在 运行 进行 p 阶的多项式回归。为了简单起见,我们在这道题中使用顺序p = 2
。
假设我们 X
有两个特征 x1, x2
和 y
。我正在尝试 运行
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
这样的东西。有没有什么包可以按照我的意愿做多项式回归?
谢谢!
老实说,这对我来说似乎很奇怪。 poly 特征的很多优势来自于交互特征。
我很确定没有内置的东西,但是
- 你可以看一下
PolynomialFeatures
预处理器,然后自己修改。您需要 "revert"interaction_only
参数的逻辑 - 只需构建你的预处理器,你的情况很简单,
.fit
会像concat(a, a**2)
numpy.polynomial.polynomial.polyfit 似乎可以满足您的需求。
对于更具体的需求,请使用此 statistics tool