モデルの構築 - Amazon Fraud Detector

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

モデルの構築

Amazon Fraud Detector モデルは、特定のイベントタイプの不正を検出する方法を学びます。Amazon Fraud Detector では、まずモデルを作成します。これは、モデルバージョンのコンテナとして機能します。モデルをトレーニングするたびに、新しいバージョンが作成されます。AWS コンソールを使用してモデルを作成およびトレーニングする方法の詳細については、「ステップ 3: モデルを作成する」を参照してください。

各モデルには、対応するモデルスコア変数があります。Amazon Fraud Detector は、モデルを作成するときにユーザーに代わってこの変数を作成します。この変数をルール式で使用して、不正評価中にモデルスコアを解釈できます。

AWS SDK for Python (Boto3) を使用したモデルのトレーニングとデプロイ

CreateModel および CreateModelVersion オペレーションを呼び出すことにより、CreateModel はモデルを開始します。これは、モデルバージョンのコンテナとして機能します。CreateModelVersion がトレーニングプロセスを開始すると、特定のバージョンのモデルが作成されます。ソリューションの新しいバージョンは、CreateModelVersion を呼び出すたびに作成されます。

次の例は、CreateModel API のサンプルリクエストを示しています。この例では、オンライン不正インサイトモデルタイプで、イベントタイプ sample_registration を作成したと仮定します。イベントタイプの作成の詳細については、「イベントタイプを作成」を参照してください。

import boto3 fraudDetector = boto3.client('frauddetector') fraudDetector.create_model ( modelId = 'sample_fraud_detection_model', eventTypeName = 'sample_registration', modelType = 'ONLINE_FRAUD_INSIGHTS')

CreateModelVersion API を使用して最初のバージョンをトレーニングします。TrainingDataSource と には、トレーニングデータセットのソースと Amazon S3 の場所ExternalEventsDetailを指定します。には、Amazon Fraud Detector がトレーニングデータを解釈する方法、具体的にはどのイベント変数を含めるか、およびイベントラベルを分類する方法TrainingDataSchemaを指定します。デフォルトでは、Amazon Fraud Detector はラベル付けされていないイベントを無視します。このコード例ではunlabeledEventsTreatmentAUTOに を使用して、Amazon Fraud Detector がラベルなしイベントの使用方法を決定するように指定します。

import boto3 fraudDetector = boto3.client('frauddetector') fraudDetector.create_model_version ( modelId = 'sample_fraud_detection_model', modelType = 'ONLINE_FRAUD_INSIGHTS', trainingDataSource = 'EXTERNAL_EVENTS', trainingDataSchema = { 'modelVariables' : ['ip_address', 'email_address'], 'labelSchema' : { 'labelMapper' : { 'FRAUD' : ['fraud'], 'LEGIT' : ['legit'] } unlabeledEventsTreatment = 'AUTO' } }, externalEventsDetail = { 'dataLocation' : 's3://bucket/file.csv', 'dataAccessRoleArn' : 'role_arn' } )

リクエストが成功すると、ステータス TRAINING_IN_PROGRESS の新しいモデルバージョンになります。トレーニング中の任意の時点で、UpdateModelVersionStatus を呼び出し、ステータスを [TRAINING_CANCELLED] に更新することでトレーニングをキャンセルできます。トレーニングが完了すると、モデルバージョンのステータスは [TRAINING_COMPLETE] に更新されます。Amazon Fraud Detector コンソールを使用するか、DescribeModelVersions を呼び出すことにより、モデルのパフォーマンスを確認できます。モデルのスコアとパフォーマンスの解釈の詳細については、「モデルスコア」および「モデルパフォーマンスメトリクス」を参照してください。

モデルのパフォーマンスを確認したら、モデルをアクティブ化し、Detectors でリアルタイムの不正予測を使用できるようにします。Amazon Fraud Detector は、Auto Scaling をオンにした状態で冗長性を確保するために、モデルを複数のアベイラビリティーゾーンにデプロイし、不正予測の数に合わせてモデルをスケーリングするようにします。モデルをアクティブ化するには、UpdateModelVersionStatus API を呼び出し、ステータスを [ACTIVE] に更新します。

import boto3 fraudDetector = boto3.client('frauddetector') fraudDetector.update_model_version_status ( modelId = 'sample_fraud_detection_model', modelType = 'ONLINE_FRAUD_INSIGHTS', modelVersionNumber = '1.00', status = 'ACTIVE' )