Spark2.x AFTSurvivalRegression算法
Spark2.0的机器学习算法比之前的改变最大的是2.0基本采用了dataframe来实现的,但之前的都是用的RDD,看官网说貌似在3.0的时候RDD就不用了!还有一个就是hiveContext和sqlContext进行了合并,统一是sessioncontext。
在spark.ml中,实现了加速失效时间(AFT)模型,这是一个用于检查数据的参数生存回归模型。 它描述了生存时间对数的模型,因此它通常被称为生存分析的对数线性模型。 不同于为相同目的设计的比例风险模型,AFT模型更容易并行化,因为每个实例独立地贡献于目标函数。
当在具有常量非零列的数据集上匹配AFTSurvivalRegressionModel而没有截距时,Spark MLlib为常量非零列输出零系数。 这种行为不同于R survival :: survreg。
val spark = SparkSession
.builder
.appName("AFTSurvivalRegressionExample").master("local")
.getOrCreate()
AFTSurvivalRegression
#实现了加速失效时间(AFT)模型,这是一个用于检查数据的参数生存回归模型。 它描述了生存时间对数的模型,因此它通常被称为生存分析的对数线性模型
val training = spark.createDataFrame(Seq(
(1.218, 1.0, Vectors.dense(1.560, -0.605)),
(2.949, 0.0, Vectors.dense(0.346, 2.158)),
(3.627, 0.0, Vectors.dense(1.380, 0.231)),
(0.273, 1.0, Vectors.dense(0.520, 1.151)),
(4.199, 0.0, Vectors.dense(0.795, -0.226))
)).toDF("label", "censor", "features")
第一个label表示的是存活的时间,你可以把这个模型看做是预测你能活多长时间的,当然是需要很多方面的参数的
不然就是在扯淡了,虽然这预测听起来很扯淡。。。。。。
第二个censor是结局,1表示死亡,0表示删失数据,病历失访或者尚存活
表现在病人身上就是,你这个人得了一个癌症,根据你的各项指标,用这个模型预测你能活的时间
听起来就很残酷,1表示这个人已经去世,0可能是还活着或者其他因素而没获取到数据
后面的几个参数就是各种病症或者身体情况的症状了,最终都要转化为数据的形式,俗称归一化 分位数概率数组参数。
分位数概率数组的值应在范围内(,)
数组应该是非空的。
val quantileProbabilities = Array(0.3, 0.6)
val aft = new AFTSurvivalRegression()
.setQuantileProbabilities(quantileProbabilities)
#如果设置该列,则会输出相应的分位数概率的分位数
.setQuantilesCol("quantiles")
val model = aft.fit(training) #输出模型的系数 println(s"Coefficients: ${model.coefficients}")
#模型的截距
println(s"Intercept: ${model.intercept}") 源码里面是这个 val scale = math.exp(parameters())
println(s"Scale: ${model.scale}")
Coefficients: [-0.4963111466650707,0.19844437699933098]
Intercept: 2.63809461510401
Scale: 1.5472345574364692
model.transform(training).show(false) +-----+------+--------------+------------------+--------------------------------------+
|label|censor|features |prediction |quantiles |
+-----+------+--------------+------------------+--------------------------------------+
|1.218|1.0 |[1.56,-0.605] |5.718979487635007 |[1.1603238947151664,4.99545601027477] |
|2.949|0.0 |[0.346,2.158] |18.07652118149533 |[3.667545845471739,15.789611866277625]|
|3.627|0.0 |[1.38,0.231] |7.381861804239096 |[1.4977061305190829,6.44796261233896] |
|0.273|1.0 |[0.52,1.151] |13.577612501425284|[2.7547621481506854,11.8598722240697] |
|4.199|0.0 |[0.795,-0.226]|9.013097744073898 |[1.8286676321297826,7.87282650587843] |
+-----+------+--------------+------------------+--------------------------------------+
还可以通过类似sql的方式来选择展示结果
model.transform(training).
selectExpr(
"label", "censor",
"round(prediction,2) as prediction").orderBy("label")
导入包 :
import org.apache.spark.sql.SparkSession
import org.apache.spark.sql.Dataset
import org.apache.spark.sql.Row
import org.apache.spark.sql.DataFrame
import org.apache.spark.sql.functions._ import org.apache.spark.ml.linalg.Vectors
import org.apache.spark.ml.feature.VectorAssembler
import org.apache.spark.ml.Pipeline
import org.apache.spark.ml.evaluation.RegressionEvaluator
import org.apache.spark.ml.regression.AFTSurvivalRegression
import org.apache.spark.ml.tuning.{ CrossValidator, ParamGridBuilder }
导入样本数据:val spark = SparkSession.builder().appName("Spark Survival regression").config("spark.some.config.option", "some-value").getOrCreate()
// For implicit conversions like converting RDDs to DataFrames
import spark.implicits._ val dataList: List[(Double, Double, Double, Double,Double, Double, Double, Double,Double, Double)] = List(
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , ),
(, , , , , , , , , )) val data = dataList.toDF("label", "censor","race","poverty","smoke","alcohol","agemth","ybirth","yschool","pc3mth").orderBy("label")
建模并调优:
val colArray = Array("race", "poverty", "smoke", "alcohol", "agemth", "ybirth", "yschool", "pc3mth") val assembler = new VectorAssembler().setInputCols(colArray).setOutputCol("features") val vecDF: DataFrame = assembler.transform(data) val Array(trainingDF, testDF) = vecDF.randomSplit(Array(0.7, 0.3)) //###########################
// 建立生存回归模型
val AFT = new AFTSurvivalRegression().setFeaturesCol("features").setLabelCol("label").setCensorCol("censor").fit(trainingDF) // 设置管道
val pipeline = new Pipeline().setStages(Array(AFT)) // 设置参数网格
val paramGrid = new ParamGridBuilder().addGrid(AFT.maxIter, Array(, , )).addGrid(AFT.tol, Array(1E-, 1E-)).build() // 选择(prediction, true label),计算测试误差。
// 注意RegEvaluator.isLargerBetter,评估的度量值是大的好,还是小的好,系统会自动识别
val RegEvaluator = new RegressionEvaluator().setLabelCol(AFT.getLabelCol).setPredictionCol(AFT.getPredictionCol).setMetricName("rmse") // 设置交叉验证
val cv = new CrossValidator().setEstimator(pipeline).setEvaluator(RegEvaluator).setEstimatorParamMaps(paramGrid).setNumFolds() // 执行交叉验证,并选择出最好的参数集
val cvModel = cv.fit(trainingDF) // 查看全部参数
cvModel.extractParamMap()
// cvModel.avgMetrics.length=cvModel.getEstimatorParamMaps.length
// cvModel.avgMetrics与cvModel.getEstimatorParamMaps中的元素一一对应
cvModel.avgMetrics.length
cvModel.avgMetrics // 参数对应的平均度量 cvModel.getEstimatorParamMaps.length
cvModel.getEstimatorParamMaps // 参数组合的集合 cvModel.getEvaluator.extractParamMap() // 评估的参数 cvModel.getEvaluator.isLargerBetter // 评估的度量值是大的好,还是小的好
cvModel.getNumFolds // 交叉验证的折数 //################################
// 测试模型
val predictDF: DataFrame = cvModel.transform(testDF).selectExpr(
//"race","poverty","smoke","alcohol","agemth","ybirth","yschool","pc3mth", "features",
"label", "censor",
"round(prediction,2) as prediction").orderBy("label")
predictDF.show spark.stop()
代码执行结果 :
// 查看全部参数
cvModel.extractParamMap()
res2: org.apache.spark.ml.param.ParamMap =
{
cv_baf8c9af33b7-estimator: pipeline_20ba567066f7,
cv_baf8c9af33b7-estimatorParamMaps: [Lorg.apache.spark.ml.param.ParamMap;@412a07c8,
cv_baf8c9af33b7-evaluator: regEval_59075079f1c9,
cv_baf8c9af33b7-numFolds: ,
cv_baf8c9af33b7-seed: -
} // cvModel.avgMetrics.length=cvModel.getEstimatorParamMaps.length
// cvModel.avgMetrics与cvModel.getEstimatorParamMaps中的元素一一对应
cvModel.avgMetrics.length
res3: Int = cvModel.avgMetrics // 参数对应的平均度量
res4: Array[Double] = Array(18.53, 17.53, 19.53, 17.63, 18.53, 18.93) cvModel.getEstimatorParamMaps.length
res5: Int = cvModel.getEstimatorParamMaps // 参数组合的集合
res6: Array[org.apache.spark.ml.param.ParamMap] =
Array({
aftSurvReg_a7e5bc450599-maxIter: ,
aftSurvReg_a7e5bc450599-tol: 0.01
}, {
aftSurvReg_a7e5bc450599-maxIter: ,
aftSurvReg_a7e5bc450599-tol: 1.0E-6
}, {
aftSurvReg_a7e5bc450599-maxIter: ,
aftSurvReg_a7e5bc450599-tol: 0.01
}, {
aftSurvReg_a7e5bc450599-maxIter: ,
aftSurvReg_a7e5bc450599-tol: 1.0E-6
}, {
aftSurvReg_a7e5bc450599-maxIter: ,
aftSurvReg_a7e5bc450599-tol: 0.01
}, {
aftSurvReg_a7e5bc450599-maxIter: ,
aftSurvReg_a7e5bc450599-tol: 1.0E-6
}) cvModel.getEvaluator.extractParamMap() // 评估的参数
res7: org.apache.spark.ml.param.ParamMap =
{
regEval_59075079f1c9-labelCol: label,
regEval_59075079f1c9-metricName: rmse,
regEval_59075079f1c9-predictionCol: prediction
} cvModel.getEvaluator.isLargerBetter // 评估的度量值是大的好,还是小的好
res8: Boolean = false // 这里显示“评估的度量值”是小的好 cvModel.getNumFolds // 交叉验证的折数
res9: Int = //################################
// 测试模型
val predictDF: DataFrame = cvModel.transform(testDF).selectExpr(
| //"race","poverty","smoke","alcohol","agemth","ybirth","yschool","pc3mth", "features",
| "label", "censor",
| "round(prediction,2) as prediction").orderBy("label")
predictDF: org.apache.spark.sql.DataFrame = [label: double, censor: double ... more field] predictDF.show
+-----+------+----------+
|label|censor|prediction|
+-----+------+----------+
| 1.0| 1.0| 15.4|
| 1.0| 1.0| 20.02|
| 1.0| 1.0| 18.73|
| 1.0| 1.0| 21.58|
| 1.0| 1.0| 21.8|
| 1.0| 1.0| 21.8|
| 1.0| 1.0| 14.37|
| 1.0| 1.0| 13.5|
| 1.0| 1.0| 15.82|
| 1.0| 1.0| 19.51|
| 1.0| 1.0| 13.17|
| 1.0| 1.0| 11.9|
| 1.0| 1.0| 17.26|
| 1.0| 1.0| 13.57|
| 1.0| 1.0| 11.57|
| 1.0| 1.0| 13.55|
| 1.0| 1.0| 10.95|
| 1.0| 1.0| 14.92|
| 1.0| 1.0| 12.25|
| 1.0| 1.0| 19.62|
+-----+------+----------+
only showing top rows
Spark2.x AFTSurvivalRegression算法的更多相关文章
- Spark2.0机器学习系列之1: 聚类算法(LDA)
在Spark2.0版本中(不是基于RDD API的MLlib),共有四种聚类方法: (1)K-means (2)Latent Dirichlet allocation (LDA) ...
- Spark2.0协同过滤与ALS算法介绍
ALS矩阵分解 一个 的打分矩阵 A 可以用两个小矩阵和的乘积来近似,描述一个人的喜好经常是在一个抽象的低维空间上进行的,并不需要把其喜欢的事物一一列出.再抽象一些,把人们的喜好和电影的特征都投到这个 ...
- Apache Spark2.0正式发布
Apache Spark2.0正式发布 7月26日起Databricks开始提供Apache Spark 2.0的下载,这个版本是基于社区在过去两年的经验总结而成,不但加入了用户喜爱的功能,也修复了之 ...
- Spark2.1集群安装(standalone模式)
机器部署 准备三台Linux服务器,安装好JDK1.7 下载Spark安装包 上传spark-2.1.0-bin-hadoop2.6.tgz安装包到Linux(intsmaze-131)上 解压安装包 ...
- SparkMLlib学习分类算法之逻辑回归算法
SparkMLlib学习分类算法之逻辑回归算法 (一),逻辑回归算法的概念(参考网址:http://blog.csdn.net/sinat_33761963/article/details/51693 ...
- Hadoop 3.1.2(HA)+Zookeeper3.4.13+Hbase1.4.9(HA)+Hive2.3.4+Spark2.4.0(HA)高可用集群搭建
目录 目录 1.前言 1.1.什么是 Hadoop? 1.1.1.什么是 YARN? 1.2.什么是 Zookeeper? 1.3.什么是 Hbase? 1.4.什么是 Hive 1.5.什么是 Sp ...
- spark2.4 分布式安装
一.Spark2.0的新特性Spark让我们引以为豪的一点就是所创建的API简单.直观.便于使用,Spark 2.0延续了这一传统,并在两个方面凸显了优势: 1.标准的SQL支持: 2.数据框(Dat ...
- 基于spark实现并行化Apriori算法
详细代码我已上传到github:click me 一. 实验要求 在 Spark2.3 平台上实现 Apriori 频繁项集挖掘的并行化算法.要求程序利用 Spark 进行并行计算. ...
- spark-2.4.0-hadoop2.7-简单操作
1. 说明 本文基于:spark-2.4.0-hadoop2.7-高可用(HA)安装部署 2. 启动Spark Shell 在任意一台有spark的机器上执行 # --master spark://m ...
随机推荐
- node.js之web开发 koa入门
用Node.js开发Web服务器端,有几个显著的优势: 速度快,非常快!这得益于Node.js天生是异步的. 常见的Web框架包括:Express,Sails.js,koa,Meteor,DerbyJ ...
- 关于如何自定义handler
1.在web.config 中的webserver 下添加 <handlers> <add verb="*" path="*.html" ty ...
- 【BZOJ】1655: [Usaco2006 Jan] Dollar Dayz 奶牛商店(背包+高精度)
http://www.lydsy.com/JudgeOnline/problem.php?id=1655 背包就没什么好说的了,裸的完全背包.. 但是我一开始交开了ull都wa了T_T.. 精度太大. ...
- 【BZOJ】1639: [Usaco2007 Mar]Monthly Expense 月度开支(二分)
http://www.lydsy.com/JudgeOnline/problem.php?id=1639 同tyvj1359,http://www.cnblogs.com/iwtwiioi/p/394 ...
- 小结:A* & IDA* & 迭代深搜
概要: 在dfs中,如果答案的深度很小但是却很宽,而且bfs还不一定好做的情况下,我们就综合bfs的优点,结合dfs的思想,进行有限制的dfs.在这里A*.IDA*和迭代深搜都是对dfs的优化,因此放 ...
- php如何互换一个数组的首尾元素 中间不变 首尾互换
群里有人提出一个问题 如何互换一个数组的首尾元素 中间不变 首尾互换 代码如下: <?php $array=array(1,2,3,4,5,6,7,8,9,10); $first=array_s ...
- iOS开发之--FMDB的使用
在很多时候,我们会用到数据库,我们移动端使用的数据库,一般都是嵌入型数据库,是一种较轻型的数据库, 一般很多时候,大牛封装的FMDB的第三方,已经足够满足我们的需求了! 现在分享一下自己的学习心得,希 ...
- js解析json字符
这是真真遇到的问题,后台给我返回的是json的字符串: {"status":410,"data":"","message" ...
- 关东升的iOS实战系列图书 《iOS实战:入门与提高卷(Swift版)》已经上市
承蒙广大读者的厚爱我的 <iOS实战:入门与提高卷(Swift版)>京东上市了,欢迎广大读者提出宝贵意见.http://item.jd.com/11766718.html ...
- wxshop_my移动端前端开发项目
**************************************************************************************************** ...