如何在Python / Scikit Learn中转换输入的结构回归

问题描述 投票:2回答:1

我正在尝试将Excel模型转换为Python。该模型设置如下:

1-有3列A,B,C包含输入变量(列F包含目标变量)。我们想在逻辑函数中针对这些A,B和C列中的值学习系数。

2-那些列通过逻辑函数合并,并且其输出在列D中。

3-列E然后保存列D的Z分数。

4-最后,E列对D列的Z得分进行线性变换。

这是在Excel中通过求解器插件进行设置的,该插件可以找到导致列E与列F的平方误差之和最小的A,B,C系数。我想知道如何设置这样的值Python / scikit-learn / Statsmodels /其他Python包中的东西?

等式系列基本上看起来像这样:

1 / (1 + e^-(A + B + C)) -> X
z_score(X)*CONSTANT1 + CONSTANT2 -> estimate

CONSTANT1CONSTANT2是事先已知的。

目标是使estimate与y之间的平方误差最小。

我在scikit中进行了回归分析,在此之前我简单地调用model.fit(X, y),其中X是输入变量的某些序列,而y是目标输出变量。但是Excel模型中的步骤顺序似乎不适合简​​单的model.fit调用。我希望我可以用Python / Scikit写的代码看起来像这样:model.fit(z_score(logistic(A + B + C))*CONSTANT1 + CONSTANT2, y),但是我认为这种事情在我所知道的任何Python软件包中都不合法(因为scikit想要第一个参数到model.fit为数字。

我正在尝试做的可能吗?另外,这种回归分析称为什么类型?我什至不知道该如何用Google来获取更多有关此的信息。

python scikit-learn regression modeling
1个回答
0
投票

如果要在python + sk-learn中执行此操作,则应使用常规的拟合/预测方法。 LogisticRegression类具有可以返回的属性,例如LogisticRegression.coef_,它返回决策函数中要素的系数。

AFAIK,sk-learn无法返回z_scores,因为它实际上不支持统计推断(因为它是机器学习软件包,而不是统计软件包)。如果您确实需要Logistic回归的统计元素,那么使用Statsmodels可能会更好。请查看This问题以获取更多信息。

希望有所帮助

© www.soinside.com 2019 - 2024. All rights reserved.