始める無料で始める

ロジスティック回帰モデルを評価する

正解率(Accuracy)は、最も多いターゲットクラスに偏りやすいため、一般的に信頼性の高い指標とは言えません。

他に有用な指標として、次の2つがあります。

  • 適合率(Precision)
  • 再現率(Recall)

それぞれの計算式は、このレッスンのスライドで確認してください。

適合率とは、「遅延あり」と予測したフライトのうち、実際に遅延していた割合です。

再現率とは、実際に遅延したフライトのうち、モデルが正しく予測できた割合です。

適合率と再現率は、通常、正のターゲットクラスを基準に計算されます。ただし、両方のターゲットクラスを考慮した 重み付き バージョンのメトリックを計算することも可能です。

混同行列の各要素は TNTPFNFP として、また prediction オブジェクトとして利用できます。

この演習はコースの一部です

Machine Learning with PySpark

コースを見る

演習の手順

  • 適合率と再現率を求めましょう。
  • マルチクラス評価器を作成し、重み付き適合率を評価しましょう。
  • 二値分類評価器を作成し、"areaUnderROC" メトリックを使って AUC を評価しましょう。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

from pyspark.ml.evaluation import MulticlassClassificationEvaluator, BinaryClassificationEvaluator

# Calculate precision and recall
precision = ____
recall = ____
print('precision = {:.2f}\nrecall    = {:.2f}'.format(precision, recall))

# Find weighted precision
multi_evaluator = ____
weighted_precision = multi_evaluator.____(prediction, {multi_evaluator.metricName: "____"})

# Find AUC
binary_evaluator = ____
auc = binary_evaluator.____(____, {____})
コードを編集して実行