Tus*_*hta 1 python machine-learning feature-selection pyspark google-cloud-dataproc
我正在研究一种机器学习形状模型1,456,354 X 53.我想为我的数据集做功能选择.我知道如何python使用以下代码进行功能选择.
from sklearn.feature_selection import RFECV,RFE
logreg = LogisticRegression()
rfe = RFE(logreg, step=1, n_features_to_select=28)
rfe = rfe.fit(df.values,arrythmia.values)
features_bool = np.array(rfe.support_)
features = np.array(df.columns)
result = features[features_bool]
print(result)
Run Code Online (Sandbox Code Playgroud)
但是,我找不到任何可以显示如何执行递归特征选择的文章pyspark.
我试图sklearn在pyspark中导入库,但是它找不到错误的sklearn模块.我正在google dataproc集群上运行pyspark.
可以请有人帮助我在pyspark实现这个目标
小智 7
你有几个选择这样做.
如果您需要的模型是用Spark MLlib或spark-sklearn`实现的,那么您可以调整代码以使用相应的库.
如果您可以在本地训练模型并且只想部署它以进行预测,则可以使用用户定义函数(UDFs)或vectorized UDFs在Spark上运行训练模型.这是一篇很好的帖子,讨论如何做到这一点.
如果需要sklearn在Spark 上运行不受spark-sklearn支持的模型,则需要在集群中的每个工作节点上为Spark提供sklearn.您可以通过在Spark集群中的每个节点上手动安装sklearn来实现此目的(确保安装到Spark正在使用的Python环境中).
或者,您可以使用Pyspark作业打包和分发sklearn库.简而言之,您可以pip install sklearn进入脚本附近的本地目录,然后压缩sklearn安装目录并使用--py-files标志spark-submit将压缩的sklearn与脚本一起发送给所有工作人员.本文全面概述了如何完成此任务.
我们可以在pyspark中尝试以下特征选择方法
参考: