如何解决多元特征选择
假设我有一个设计矩阵X(X_1,...,X_84)并且一个多元目标Y = [Y_1,Y_2,Y_3,Y_4],我想执行特征选择。因此,这是一个多元多元线性回归。理想情况下,我希望使用Python RFE(递归特征消除),LassoCV和sm.OLS,但Y必须是向量而不是矩阵。
我该如何解决这个问题?
谢谢
解决方法
您必须为RFE选择两个常量:
-
- 回归方法:
* Which regression method will you use?
***
* Decision Tree Regressor?,Random Forest Regressor?,Linear Regressor? ...
***
-
- 功能数量:
- 您将为问题选择多少个功能? 1,5?
- 不幸的是,您必须将功能部件号设置为常数。
例如:
from sklearn.feature_selection import RFE
from sklearn.linear_model import LassoCV
rfe = RFE(estimator=LassoCV(),n_features_to_select=5)
可能的问题:如果我不知道应该选择多少个功能,应该怎么办?
好吧,您可以使用RFECV。
rfe = RFECV(estimator=LassoCV())
然后,您可以继续创建Pipeline
和fit
模型。
from sklearn.pipeline import Pipeline
model = LassoCV()
pipeline = Pipeline(steps=[('s',rfe),('m',model)])
pipeline.fit(X,y)
预测下一个值:
data = [[-7.05,0.32,0.94,....]]
y_hat = pipeline.predict(data)
打印y_hat
时,将获得下一个预测值。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。