当前位置:   article > 正文

spark中api和sklearn中的api对比_spark ml与python sklearn算法性能效率

spark ml与python sklearn算法性能效率

1.逻辑回归对比

spark.ml.LogisticRegression

setMaxIter 设置最大迭代次数(默认100),具体迭代次数可能在不足最大迭代次数停止

setTol设置容错(默认1e-6),每次迭代会计算一个误差,误差值随着迭代次数增加而减小,当误差小于设置容错,则停止迭代

setRegParam设置正则化项系数(默认0),正则化组要用于防止过拟合现象,如果数据较小,特征维数又多,容易 出现过拟合,考虑增大正则化系数

setElasticNetParam正则化范式比(默认0),正则化有2种方式:L1(lasso)和L2(Ridge),L1用于特征的稀疏化,L2用于防止过拟合.0表示用L2正则化,1表示用L1正则化

setLabelCol设置标签列

setFeaturesCol设置特征列

setPredictionCol设置预测列

setThreshold设置二分类阈值

fitIntercept:是否设置截距项

sklearn.linear_model.LogisticRegression

penalty-默认l2正则化

tol-默认为1e-4

C-Inverse of regularization strength,正则化强度的倒数,可以理解为正则化系数的倒数,如下式所示

fit_intercept:是否要截距项,默认True

intercept_scaling-默认是1,当solver为'liblinear'并self.fit_intercept为True是有用,此时输入的x会变成[x,self.intercept_scaling],总之会对原始的截距项做些转换

spark.ml.classification.LogisiticRegression().setMaxIter(100).setRegParam(0.0)

上面sklearn的lr和spark的lr,跑出的结果spark的auc更高,当把2个的截距项都设为False时,2个逻辑回归计算的系数一样,auc也一样。

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/547146
推荐阅读
相关标签
  

闽ICP备14008679号