南江县住房和城乡建设局网站,成都十大著名景点,网上书城网站开发,做网站一般用什么 语言参考资料 【1】 Spark MLlib 机器学习实践 【2】 统计学习方法 1、Logistic分布 设X是连续随机变量#xff0c;X服从Logistic分布是指X具有下列分布函数和密度函数 #xff0c;。其中u为位置参数#xff0c;γ为形状参数。如下图#xff1a; 分布函数以(u,1/2)为中心…参考资料 【1】 Spark MLlib 机器学习实践 【2】 统计学习方法 1、Logistic分布 设X是连续随机变量X服从Logistic分布是指X具有下列分布函数和密度函数 。其中u为位置参数γ为形状参数。如下图 分布函数以(u,1/2)为中心对称满足其中形状参数γ越小中心部分增加越快。 2、Logistic回归模型 二项logistic回归模型是一种分类模型由条件概率P(Y|X)表示这里随机变量X取实数而Y取0或者1。定义 和 Logistic回归比较两个条件概率将x归为较大条件概率的那一类。本质上它是将一个线性函数wx b的输出转换为了条件概率。 多项logistic回归模型是二项模型的扩展支持多分类问题模型如下 3、逻辑回归Spark Mlib例子 package com.fredric.spark.logisticimport org.apache.spark.mllib.classification.LogisticRegressionWithSGD
import org.apache.spark.mllib.linalg.Vectors
import org.apache.spark.mllib.regression.LabeledPoint
import org.apache.spark.{SparkContext, SparkConf}/*-* 逻辑回归* Fredric 2017*/
object logistic {def main(args:Array[String]): Unit {val conf new SparkConf().setMaster(local).setAppName(logistic)val sc new SparkContext(conf)val Array new Array[LabeledPoint](10)//构造训练数据虚拟一个以5为值的分类//针对一元二项逻辑斯特回归分类for(i - 0 to 9){if(i 5){Array(i) new LabeledPoint(1,Vectors.dense(i))}else{Array(i) new LabeledPoint(0,Vectors.dense(i))}}val data sc.makeRDD(Array);val model LogisticRegressionWithSGD.train(data, 50)//model.weights输出[0.20670127500478114]println(model.weights)var test -2//当输入为-1时返回概率为0.0//当输入为11时返回概率为1.0val result model.predict(Vectors.dense(test))println(result)//验证该方式//计算P(Y1|X)测算输入x返回1的条件概率
val res1 Math.exp(model.weights(0)*test)/(1 Math.exp(model.weights(0)*test))//计算P(Y0|X)测算输入x返回0的条件概率val res0 1/(1 Math.exp(model.weights(0) * test))//输出for target:-2 propalitity for 1 is : 0.3980965348017618 propalitity for 0 is : 0.6019034651982381//根据两个条件概率的比较可知-2属于分类0println(for target: test propalitity for 1 is : res1 propalitity for 0 is : res0)}
} 转载于:https://www.cnblogs.com/Fredric-2013/p/8496070.html