AWS Summit 2015 - Day2 - 今日から始められる、機械学習!Amazon Machine Learningのご紹介
- AWS 今井さん
機械学習の例
スパムメール判定
- 二値判定、二項分類
- 教師データ
- 別の方法でSpam判定ずみのデータを元に学習
- それを元に判定
商品カテゴリの判定
- マルチクラス分類
- この商品はどのカテゴリのものか?
明日の売上の予測
- 回帰分析
- 過去のデータ群を教師データとする
- それを元にモデルの線を引き、明日の条件に最も合う条件で予測する
スマートのアプリケーションを作るには
これは大変
- なので、Amazon Machine Learning
Amazon Machine Learning
- Amazonがアルゴリズムを提供
- パッケージサービスとして提供
- ワークフローが予め提供されている
- MLは教師あり学習に対応している
スケーラビリティ
取り扱えるモデルとアルゴリズム
- 二項分類
- ロジスティック回帰
- 多クラス分類
- 多項式ロジスティック回帰
- 回帰分析
- 線形回帰
- 二項分類
予測手法
- バッチ予測
- S3にあるデータをまとめて予測を実施
- リアルタイム予測
- データを一件ずつAPIを使って投げて予測
- バッチ予測
AMLの使い方
- 教師用・評価用データを準備
- 教師データからモデルを作成
- モデルの品質評価
- 評価用のデータを流してテスト
- 7割の教師データを使って学習、3割を使って品質評価をする(自動で分けてくれる)
- Scoreの許容度をどこにするかをグラフィカルに設定できる!
- 制度に満足できない場合は、教師データを精査して繰り返す
- 実際の予測に使う
料金
- 分析、トレーニング、評価
- $0.42/インスタンス時
- バッチ予測
- $0.10/1000
リアルタイム予測
- $0.10/1000
- +モデル10MBあたり$0.001/h
リージョンはus-east-1のみ
- どのS3リージョ運のデータでも大丈夫
利用例
広告の不正クリック検出
- 教師データ: 実際のクリックログ
- 問題の分類: 二項分類
- 出力: ログごとに不正かどうかチェック
広告のリダイレクタの中でAPIを叩けば、その場で不正かどうかの判定が可能
デモグラ推定
- 教師データ: でもグラがわかっているユーザーの行動ログ
- 問題の分類: 多クラス分類
- 出力: ユーザーを行動ログからデモグラ判定
デモグラに基づいたレコメンデーション
- 教師データ:購入履歴にデモグラをマッピングされたもの
- 問題の分類: 多クラス分類
- 出力: ユーザーのデモグラを入力し、F1なので商品カテゴリこれがいい、みたいな出力
写真からの判定
- この後デモ
アーキテクチャへの組み込み
- S3からデータを出し、MLにかけてまたS3へ
- Redshiftをデータソースとして扱い、S3へ
- リアルタイム予測
- DynamoDB StreamsやLambdaを使って MLにかける
AML説明まとめ
- 機械学習の導入が用意になり、すぐにでもデータ分析が始められる
AMLデモ
榎並さん
顔写真から特定の人物判定
- 顔写真をグレースケールにしたビットマップ
- 各ピクセルの明度を数値化して、大きな配列にする
- 二項分類
- 顔写真をグレースケールにしたビットマップ
構成
- OpenCVで顔部分を検出
- 写真をグレースケールに
トレーニングデータについて
- 前処理の部分は自分で用意する必要はある
流れ
- トレーニングデータCSVをS3にアップロード
- AMLのコンソールからCSVを指定
- CSVの最後の部分が二項分類の値だよね(binaryだよね)というのを予測してくれる
- 自動で学習と品質評価をしてくれる
- アップロードデータの3割を自動で評価データにしてくれる
- 出た結果を元に、許容度を設定
ML real time の設定をすると、リアルタイム予測ができるようになる
APIで正しい写真を渡すと、正解フラグとスコアが帰ってくる
- 間違った写真でも同様