mllib逻辑回归 spark_Spark MLlib学习——分类和回归

本章节介绍了分类和回归的算法。它还包括讨论特定类别的算法部分,如:线性方法,树和集成。

下面是整个API Doc中的内容框架,这里不会每个都详细介绍,主要会把用到的介绍出来,后续用到的再陆续添加。(下面的链接都是指向官网文档而不是本笔记中的对应内容所在位置,而且有些内容没有出现在本笔记中)

逻辑回归

逻辑回归是预测分类问题的流行算法。它是 广义线性模型的一个特例来预测结果的可能性。 在spark.ml逻辑回归中可以使用二项式Logistic回归来预测二分类问题,也可以通过使用多项Logistic回归来预测多分类问题。 使用family参数在这两种算法之间进行选择,或者不设置它,让Spark自己推断出正确的值。

通过将family参数设置为“多项式”,也可以将多项Logistic回归用于二分类问题。它将产生两个系数的集合和两个intercept。

当在没有intercept的常量非零列的数据集上对LogisticRegressionModel进行拟合时,Spark MLlib为常数非零列输出零系数。此行为与R glmnet相同,但与LIBSVM不同。

二分类逻辑回归

有关二项式逻辑回归实现的更多背景和更多细节,请参阅spark.mllib中逻辑回归的文档。

代码示例:

以下示例显示了如何用elastic net regularization来训练的二项式和多项Logistic的回归模型用于二分类问题。 elasticNetParam对应于α,regParam对应于λ。

public class JavaLogisticRegressionWithElasticNetExample {

public static void main(String[] args) {

SparkSession spark = SparkSession

.builder()

.appName("JavaLogisticRegressionWithElasticNetExample")

.getOrCreate();

// $example on$

// Load training data

Dataset training = spark.read().format("libsvm")

.load("/home/paul/spark/spark-2.1.0-bin-hadoop2.7/data/mllib/sample_libsvm_data.txt");

LogisticRegression lr = new LogisticRegression()

.setMaxIter(10)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值