summary.mlModel: Microsoft R Machine Learning モデルの概要
Microsoft R Machine Learning モデルの概要。
使用方法
## S3 method for class `mlModel':
summary (object, top = 20, ...)
引数
object
MicrosoftML の分析から返されるモデル オブジェクト。
top
rxLogisticRegression や rxFastLinear などの線形モデルの概要で表示する上位の係数の数を指定します。 最初にバイアスが表示され、その後に他の重みが絶対値の降順に表示されます。 NULL
に設定すると、0 ではないすべての係数が表示されます。 それ以外の場合は、最初の 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 (Akaike Information Criterion) は 2 * k ``+ deviance
と定義されます。k
はモデルの係数の数です。 バイアスは係数の 1 つとしてカウントされます。 AIC は、モデルの相対的な品質の尺度です。 これは、モデルの適合の良さ (逸脱によって測定) とモデルの複雑さ (係数の数で測定) のトレードオフを扱います。
coefficients.stats
これは、モデル内の各係数の統計が含まれるデータ フレームです。 係数ごとに、次の統計が示されます。 バイアスが最初の行に表示され、残りの係数は p 値の昇順に表示されます。
- Estimate モデルの推定された係数値。
- Std Error これは、係数の推定値の大きなサンプル分散の平方根です。
- z-Score 係数の推定値とその標準誤差の比率を計算することによる係数の有意性に関して、係数が 0 である必要があることを述べる、帰無仮説に対してテストできます。 帰無仮説では、正則化が適用されない場合、関係する係数の推定値は、平均 0 の正規分布と、上で計算された標準誤差と等しい標準偏差に従います。 z-score からは、係数の推定値と係数の標準誤差との比率が出力されます。
- Pr(>|z|) これは、z-score の両側検定に対応する p 値です。 有意性レベルに基づいて、有意性インジケーターが p 値に追加されます。
F(x)
が標準正規分布N(0, 1)
の CDF である場合、P(>|z|) = 2 - ``2 * F(|z|)
。
作成者
Microsoft Corporation Microsoft Technical Support
こちらもご覧ください
rxFastTrees、rxFastForest、rxFastLinear、rxOneClassSvm、rxNeuralNet、rxLogisticRegression。
使用例
# 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,]