[レポート] DVC301 – Building Fraud Detection Systems with AWS Batch and Containers #reinvent

re:Invent 2018レポート。AWS Batch を使用した不正検出のセッションをレポートします。
2018.11.27

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

本記事は、AWS re:Invent 2018 のセッション 「DVC301 - Building Fraud Detection Systems with AWS Batch and Containers」のレポートです

When analyzing information for fraud detection, tasks must be run periodically. When building a fraud detection system, start by preparing the data, and work with small chunks of data and run parallel jobs so your machine learning (ML) models can predict fraudulent activity. For that, you schedule computer resources and, of course, the script. With AWS Batch, you only worry about your application job and run it at scale. With containers, you think in small processes and let AWS Batch run them concurrently. In this session, learn to build a fraud detection system and integrate it with other AWS services.

  • スピーカー
    • Christian Melendez (Cloud Architect , Equinix)

レポート

不正検出システム

  • それは銀行にとってだけではない
  • 構造化データのほうが優れている
  • 継続的な学習
  • 簡単ではない!
  • 迅速に反応する

データ分析方法

  • 知識の発見
  • データマイニング
  • 機械学習
  • 統計

統計データ分析の例

  • データの準備または修正
  • 平均リクエスト数
  • クラスタリングと分類
  • 異常検出

ラムダアーキテクチャ

不正検出のための既存のオープンソースツール

  • Samza
  • Apache Spark
  • Apache Apex
  • Apache Storm
  • Apache Flink

バッチ処理

事前作業が必要

  • 「少なくとも1回配送」
  • バッチ処理で開始する
  • 複雑な分析はより多くのデータを必要とする
  • まず高精度で、不正の様子を学ぶ
  • 複数の仮説を並行してテストする
  • 時間を遡ってトラブルシューティングする

持っているものから始める

機械学習のためのバスケット
  • strangler パターンを使用してください!
  • やっていることをやり続ける
  • 並行して、データストリームを送信する
  • A/B テストを実行する
  • 結果を比較する
  • 洗練と、選択

コンテナ

Work Queue パターン

  • 汎用的な work queue

  • コンテナ

  • AWS Batch

  • 遠い昔、はるか彼方の銀河系で・・・

AWS Batch re:Cap

  • 無料の管理ジョブスケジューラ
  • 必要に応じて EC2 インスタンスを起動する(カスタム AMI)
  • インスタンスタイプを決定するために AWS に任せることができる
  • スポットインスタンスを使用することができる
  • VPC と IAM の役割と統合されている
  • 複数のジョブキューが優先される     

AWS Batch の落とし穴

  • コンピューティングリソースでは、vCPUs!= CPU units
  • ジョブ定義では、CPU ユニットを使用しない
  • It Cloud Stick in the RUNNABLE State
  • トリガーが「Submit job」 コール     

アーキテクチャのアイデア

  • コンテナによる従来のバッチ処理

  • リアルタイムでバッチ処理

  • 機械学習を含める

まとめ

  • 不正の仕組みを学ぶ
  • バッチ処理がまだ必要です
  • simultaneously: バッチ、リアルタイム、および機械学習
  • 車輪の再発明しないで、AWS Batch を使う
  • コンテナでリードタイムを短縮する
  • 学ぶ、適用する、試してみる

さいごに

不正検出のために AWS Batch をうまく利用している事例のセッションでした。セキュリティを求められる環境では、「防御」と同時に「検出」も重要な要素かと思います。セキュリティ要件の高い環境において、今後のアーキテクチャ検討の参考になりそうです!

以上!大阪オフィスの丸毛(@marumo1981)でした!