summary.mlModel:Microsoft R 机器学习模型的摘要。

Microsoft R 机器学习模型的摘要。

用法

 ## S3 method for class `mlModel':
summary  (object, top = 20, ...)

参数

object

从 MicrosoftML 分析返回的模型对象。

top

指定线性模型(如 rxLogisticRegressionrxFastLinear)摘要中要显示的顶部系数的计数。 偏差首先出现,后跟其他权重,按其绝对值降序排序。 如果设置为 NULL,则显示所有非零系数。 否则,只显示第一个 top 系数。

...

要传递给 summary 方法的其他参数。

详细信息

提供有关原始函数调用、
用于训练模型的数据集以及模型中系数的统计信息的摘要信息。

MicrosoftML 分析对象的 summary 方法返回一个列表,其中包含原始函数调用和所使用的基础参数。 coef 方法返回权重的命名向量,并处理模型对象的信息。

对于 rxLogisticRegression,当 showTrainingStats 设置为 TRUE 时,摘要中也可能包含以下统计信息。

training.size

用于训练模型的数据集的大小(以行计数表示)。

deviance

模型偏差由 -2 * ln(L) 提供,其中 L 是在模型中包含所有特征的情况下获得观测值的可能性。

null.deviance

null 偏差由 -2 * ln(L0) 提供,其中 L0 是在不受特征影响的情况下获得观测值的可能性。 如果模型中有偏差,则 null 模型包括偏差。

aic

AIC(赤池信息量准则)定义为 2 * k ``+ deviance,其中 k 是模型系数的数量。 偏差算作系数之一。 AIC 是模型相对质量的度量值。 它处理模型拟合优度(以偏差衡量)和模型复杂度(以系数的数量衡量)之间的权衡。

coefficients.stats

这是一个包含模型中每个系数的统计信息的数据帧。 对于每个系数,将显示以下统计信息。 偏差出现在第一行,其余系数按 p 值升序显示。

  • 估计:模型的估计系数值。
  • 标准误差:这是系数估计的大样本方差的平方根。
  • z 评分:我们可以通过计算估计值与标准误差的比率来检验关于系数的基数的 null 假设,该假设指出系数应为零。 在 null 假设下,如果没有应用正则化,相关系数的估计值遵循均值为 0 且标准偏差等于上面计算得出的标准误差的正态分布。 z 分数输出系数的估计值与系数的标准误差之间的比率。
  • Pr(>|z|):这是 z 分数的双面测试的相应 p 值。 根据显著性级别,将一个显著性指标追加到 p 值。 如果 F(x) 是标准正态分布 N(0, 1) 的 CDF,则 P(>|z|) = 2 - ``2 * F(|z|)

作者

Microsoft Corporation Microsoft Technical Support

另请参阅

rxFastTreesrxFastForestrxFastLinearrxOneClassSvmrxNeuralNetrxLogisticRegression

示例


 # Estimate a logistic regression model
 logitModel <- rxLogisticRegression(isCase ~ age + parity + education + spontaneous + induced,
                   transforms = list(isCase = case == 1),
                   data = infert)
 # Print a summary of the model
 summary(logitModel)

 # Score to a data frame
 scoreDF <- rxPredict(logitModel, data = infert, 
     extraVarsToWrite = "isCase")

 # Compute and plot the Radio Operator Curve and AUC
 roc1 <- rxRoc(actualVarName = "isCase", predVarNames = "Probability", data = scoreDF) 
 plot(roc1)
 rxAuc(roc1)

 #######################################################################################
 # Multi-class logistic regression  
 testObs <- rnorm(nrow(iris)) > 0
 testIris <- iris[testObs,]
 trainIris <- iris[!testObs,]
 multiLogit <- rxLogisticRegression(
     formula = Species~Sepal.Length + Sepal.Width + Petal.Length + Petal.Width,
     type = "multiClass", data = trainIris)

 # Score the model
 scoreMultiDF <- rxPredict(multiLogit, data = testIris, 
     extraVarsToWrite = "Species")    
 # Print the first rows of the data frame with scores
 head(scoreMultiDF)
 # Look at confusion matrix
 table(scoreMultiDF$Species, scoreMultiDF$PredictedLabel)

 # Look at the observations with incorrect predictions
 badPrediction = scoreMultiDF$Species != scoreMultiDF$PredictedLabel
 scoreMultiDF[badPrediction,]