不正検知をしない場合のコスト
検知モデルを使わない場合、transfers データセット内のすべての取引は正当とみなされます。ここでは、そのときの混同行列を求めます。不正は稀でも、金銭的損失は非常に大きくなり得ます。不正な送金を検知しなかった場合の総コストを計算しましょう。
caret パッケージはすでに読み込まれており、confusionMatrix() が使えます。transfers データセットもワークスペースに読み込まれています。必要に応じてコンソールで中身を確認してください。
この演習はコースの一部です
Rで学ぶ不正検知
演習の手順
- すべての取引を正当(クラス0)と予測するベクトル
predictionsをrep.int()を使って作成してください。ビデオでの使用例はスライドでも確認できます。 caretパッケージのconfusionMatrix()を使い、predictionsとtransfersのfraud_flag列から混同行列を計算してください。- 不正を検知しなかった場合の総コストを、不正取引の金額合計として計算してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Create vector predictions containing 0 for every transfer
predictions <- factor(___(___, times = ___(___)), levels = c(0, 1))
# Compute confusion matrix
confusionMatrix(data = ___, reference = ___)
# Compute cost of not detecting fraud
cost <- sum(___[___ == ___])
print(cost)