データのスコアリング

データのスコアリングとは

注: データサイエンスには、モデルスコアリングとデータスコアリングの 2 つの種類のスコアリングがあります。この記事では後者について述べます。

機械学習でのスコアリングは、履歴データセットから構築したアルゴリズムのモデルを新しいデータセットに適用して、ビジネス上の問題の解決に役立つ実用的なインサイトを見つけ出すプロセスです。

一般に、モデル開発には 2 段階のプロセスがあります。第 1 段階はトレーニングと検定です。結果がわかっているデータにアルゴリズムを適用して、特徴量ターゲット変数との間のパターンを見つけ出します。第 2 段階はスコアリングです。トレーニングされたモデルを新しいデータセットに適用します。次に、分類の問題には確率スコア、回帰の問題には推定平均の形で結果が返されます。最後に、トレーニングされたモデルを実稼働環境のアプリケーションにデプロイするか、またはモデルで見つけ出したインサイトを使用してビジネスプロセスを改善します。

たとえば、顧客離れの可能性を予測するためのモデルをスコアリングするには、以下を行います。

  1. 解約した顧客に関する情報や解約の原因と思われるその他情報を含む履歴データセットを使用して、解約行動モデルを構築します。
  2. モデルを既存の顧客データに適用して、解約する可能性を推定する値、つまり「スコア」を生成します。

モデルをスコアリングする方法はいくつかあります。

  1. バッチスコアリング。モデルの決定を直ちに実装する必要がない場合に便利です。たとえば、マーケティング担当者は、購入したリードのリストに基づいてモデルをバッチスコアリングし、商品を購入する可能性が最も高いリードを判断することができます。
  2. リアルタイムスコアリング。モデルから価値を実現するにあたって時間が最重要である場合に役立ちます。たとえば、銀行が詐欺の可能性があるトランザクションを迅速に拒否するには、クレジットカードトランザクションが数ミリ秒以内でスコアリングされる詐欺モデルが必要になります。

スコアリングを使用して、既存のモデルを評価することもできます。履歴データでモデルをトレーニングし、結果がわかっている他の履歴データをそのモデルでスコアリングして、スコアを既知の値と比較することで、モデルのパフォーマンスがどのぐらい適切であるかを判断します。

スコアリングが重要である理由

スコアリングは、機械学習モデルの結果を理解し、価値あるインサイトを生成する高精度モデルを選択するための重要な要素です。モデルが実稼働環境に導入されて新しいデータをスコアリングするようになると、ビジネス価値を生み出すために役立つインサイトが明らかになります。

上記の例を使用すると、現顧客のうち解約リスクの高い顧客がモデルスコアにより明らかになります。これにより、解約を防止するためのアウトリーチや特別オファーを計画することができます。

スコアリング + DataRobot

DataRobot の予測の説明機能によってモデル出力スコアが可視化されます。

予測の説明のプレビュー

DataRobot は、個々のレコード IDの左から 2 番目の列にスコアを表示します。

上記の例では、ある病院が分類モデルを作成し、患者が 30 日以内に再入院する可能性を判断しました。患者 ID 9155 に対するモデルのスコアは 0.888 です。つまり、この患者は 88.8% の確率で 30 日以内に再入院します。[Explanations(説明)]列には、その確率スコアをもたらした主な要因が表示されます。

モデルスコアを使用して、病院では、再入院率が高い患者と同様の患者の退院を遅らせるなど、再入院の確率を減らすための措置をとることができます。これにより、患者の転帰が改善し、病院が罰金を科せられる事例が減少します。

DataRobot でのスコアリングとデプロイの方法については、Wiki のデプロイページをご覧ください。