モデル変数の重要度 - Amazon Fraud Detector

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

モデル変数の重要度

モデル変数の重要度は、モデルバージョン内のモデル変数をランク付けする Amazon Fraud Detector の機能です。各モデル変数には、モデルの全体的なパフォーマンスに対する相対的な重要度に基づいて値が与えられます。最も高い値を持つモデル変数は、そのモデルバージョンのデータセット内の他のモデル変数よりもモデルにとって重要であり、デフォルトで最上位にリストされます。同様に、最小値を持つモデル変数はデフォルトで最下位にリストされ、他のモデル変数と比較して最も重要度が低くなります。モデル変数重要度値を使用すると、モデルのパフォーマンスを左右するのはどのような入力かを把握することができます。

トレーニング済みモデルバージョンのモデル変数重要度値は、Amazon Fraud Detector コンソールまたは DescribeModelVersion API を使用して表示できます。

モデル変数の重要度は、モデルバージョンのトレーニングに使用される変数ごとに次の値のセットを示します。

  • 変数タイプ: 変数のタイプ (IP アドレスや E メールなど)。詳細については、「変数タイプ」を参照してください。Account Takeover Insights (ATI) モデルの場合、Amazon Fraud Detector は raw 変数タイプと集計変数タイプの両方に変数重要度値を提供します。Raw 変数タイプは、指定した変数に割り当てられます。集計変数タイプは、Amazon Fraud Detector が集計された重要度値を計算するために組み合わせた一連の raw 変数に割り当てられます。

  • 変数名: モデルバージョンのトレーニングに使用されたイベント変数の名前 (、ip_addressemail_address、 などare_creadentials_valid)。集計変数タイプでは、集計変数重要度値の計算に使用されたすべての変数の名前が一覧表示されます。

  • 変数重要度値: モデルのパフォーマンスに対する未加工または集計された変数の相対的な重要度を表す数値。標準範囲:0~10

Amazon Fraud Detector コンソールでは、オンライン不正インサイト (OFI) モデルまたはトランザクション不正インサイト (TFI) モデルのいずれかについて、モデル変数重要度値が次のように表示されます。アカウント乗っ取りインサイト (ATI) モデルは、未加工の変数重要度値に加えて、集計された変数重要度値を提供します。ビジュアルチャートでは、最高位の変数の重要度を参照する垂直点線を使用して、変数間の相対的な重要度を簡単に確認できます。

モデル変数の重要度グラフ。

Amazon Fraud Detector は、追加費用なしで、すべてのFraud Detector モデルのバージョンに対して変数重要度値を生成します。

重要

2021 年 7 月 9 日以前に作成されたモデルバージョンには、変数重要度値はありません。モデル変数重要度値を生成するには、モデルの新しいバージョンをトレーニングする必要があります。

モデル変数重要度値の使用

モデル変数重要度値を使用して、モデルのパフォーマンスを上げるか下げる要因と、最も寄与する変数を把握できます。次に、モデルを微調整して、全体的なパフォーマンスを向上させます。

具体的には、モデルのパフォーマンスを向上させるには、ドメインの知識に対する変数重要度値を調べ、トレーニングデータ内の問題をデバッグします。例えば、Account ID がモデルへの入力として使用され、それが上部にリストされている場合は、その変数重要度値を確認します。変数重要度値が他の値よりも大幅に高い場合、モデルが特定の不正パターンで過剰適合している可能性があります (例えば、すべての不正イベントが同じアカウント ID からのものである)。ただし、変数が不正ラベルに依存している場合、ラベル漏れが発生する場合もあります。ドメイン知識に基づく分析の結果によっては、変数を削除してより多様なデータセットを使用してトレーニングさせたり、モデルをそのまま維持したりできます。

同様に、最下位にランク付けされた変数を見てみましょう。変数重要度値が他の値よりも大幅に低い場合、このモデル変数はモデルのトレーニングにおいて重要性を持たない可能性があります。その変数を削除して、より単純なモデルバージョンをトレーニングすることを検討できます。モデルに変数が 2 つしかないなど、変数が少ない場合でも、Amazon Fraud Detector は変数重要度値を示し、変数をランク付けします。ただし、この場合のインサイトは限られます。

重要
  1. モデル変数の重要度チャート中の変数が欠落していることに気付いた場合、次のいずれかの原因による場合があります。データセット内の変数を変更し、モデルを再トレーニングすることを検討してください。

    • トレーニングデータセット内の変数の一意の値の数が 100 未満である。

    • 0.9 より大きい変数の値がトレーニングデータセットから欠落している。

  2. モデルの入力変数を調整するたびに、新しいモデルバージョンをトレーニングする必要があります。

モデル変数重要度値の評価

モデル変数重要度値を評価する場合は、以下を考慮することをお勧めします。

  • 変数重要度値は、常にドメイン知識と組み合わせて評価する必要があります。

  • モデルバージョン内の他の変数の変数重要度値と比較した場合の変数重要度値を調べます。1 つの変数の変数重要度値を個別に考慮しないでください。

  • 同じモデルバージョン内の変数の変数重要度値を比較します。モデルバージョン内の変数の変数重要度値が、異なるモデルバージョンの同じ変数の値と異なる可能性があるため、モデルバージョン間で同じ変数の変数重要度値を比較しないでください。同じ変数とデータセットを使用して異なるモデルのバージョンをトレーニングする場合、これは必ずしも同じ変数重要度値を生成するとは限りません。

モデル変数の重要度ランキングの表示

モデルトレーニングが完了したら、Amazon Fraud Detector コンソールまたは DescribeModelVersion API を使用して、トレーニングしたモデルバージョンのモデル変数重要度ランキングを表示できます。

コンソールを使用してモデル変数の重要度ランキングを表示するには、
  1. AWS コンソールを開き、アカウントにサインインします。Amazon Fraud Detector に移動します。

  2. 左側のナビゲーションペインで [モデル] を選択します。

  3. モデルを選択してから、モデルバージョンを選択します。

  4. 概要タブが選択されていることを確認します。

  5. 下にスクロールしてモデル変数の重要度ペインを表示します。

モデル変数重要度値の計算方法の理解

各モデルバージョントレーニングが完了すると、Amazon Fraud Detector はモデル変数重要度値とモデルのパフォーマンスメトリクスを自動的に生成します。このために Amazon Fraud Detector は SHapley Additive exPlanations (SHAP) を用いています。SHAP は、基本的に、すべてのモデル変数の可能なすべての組み合わせを考慮した後のモデル変数の平均期待寄与率です。

SHAP は、まず、各モデル変数の寄与度をイベントの予測に割り当てます。次に、これらの予測を集約して、モデルレベルで変数のランキングを作成します。予測に各モデル変数の寄与度を割り当てるために、SHAP は、可能なすべての変数の組み合わせにおけるモデル出力の差を考慮します。モデルの出力を生成するために特定の変数セットを含めるか削除する可能性をすべて含めると、SHAP は各モデル変数の重要度に正確にアクセスできます。これは、モデル変数が互いに高い相関関係にある場合に特に重要です。

機械学習モデルでは、ほとんどの場合、変数を削除することはできません。代わりに、モデル内で削除または欠落している変数を、1 つ以上のベースラインの対応する変数値 (例えば、不正でないイベント) に置き換えることができます。適切なベースラインインスタンスを選択するのは難しい場合がありますが、Amazon Fraud Detector では、このベースラインを人口平均として設定することで、これを簡単にしています。