Spark AFTSurvivalRegression参数

mce*_*aya 0 regression machine-learning apache-spark

我曾尝试使用Spark的AFTSurvivalRegression进行生存分析.这很简单.为了解标签参数我玩了一些.在网络上,我发现它有两种使用方式.1)作为一些观察.认为标签为患者计数特征=体温标签,检查员,特征2,1,38 1,0,28 2人38度存活1人28度无法存活

2)另一个与药物剂量相关的指标,该标签作为药物标签的剂量,检查员,特征2,1,38 1,0,28 2剂量药物存活38度2剂量药物没有存活28度

也许我对他们都错了.找不到参数的解释.检查R幸存函数,但更混乱.有谁知道标签参数的真正含义?

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")
val quantileProbabilities = Array(0.3, 0.6)
Run Code Online (Sandbox Code Playgroud)

Den*_*Lee 5

labelAFTSurvivalRegression模型中的概念是指机器学习(ML)中的监督学习.也就是说,label数据集中的已知值/类别.例如,当尝试使用线性回归(例如人口与价格线性回归(Spark 2.0))预测基于城市人口的房价中位数时,feature城市人口(包含我们将用于预测的信息的向量)价格)虽然label是你想要预测的价值.

在上面的示例中(供参考,完整示例可以在Spark分类和回归>生存回归中找到),生成的labels(例如1.218,2.949,...)是要由features(例如Vectors.dense( 1.560,-0.605),Vectors.dense(0.346,2.158),......).

说到这一点,展示这一点的一种可能更简单的方法是使用特定的生存分析示例.在这种情况下,我们可以使用随R包生存而附带的卵巢癌生存数据.例如,如果您要运行SparkR下面的代码段:

# Create SparkR DataFrame from the ovarian cancer survival data
df <- createDataFrame(ovarian)
model <- spark.survreg(df, Surv(futime, fustat) ~ ecog_ps + rx)
fitted <- predict(model, df)
display(fitted)
Run Code Online (Sandbox Code Playgroud)

结果将是: 在此输入图像描述

请注意,这labelfutime我们最终试图预测的生存或审查时间相同.注意,该prediction列包含R中的survreg对象的预测函数的结果,在Weibull分布的上下文中的数据的原始比例.下面是基于此数据集生成的四条生存曲线的可视化.

来自R*生存*包的卵巢癌数据的生存曲线

要查看完整的笔记本电脑,请参阅以下链接: