Amazon Machine Learing と機械学習

29
Amazon Machine Learning と機械学習 re:growth 2015 Sapporo 1

Transcript of Amazon Machine Learing と機械学習

Page 1: Amazon Machine Learing と機械学習

Amazon Machine Learningと機械学習

re:growth 2015 Sapporo

1

Page 2: Amazon Machine Learing と機械学習

機械学習からみた re:Invent 2015• Amazon MLに関する新機能の発表

•ありませんでした

2

Page 3: Amazon Machine Learing と機械学習

今日話すこと• Amazon MLというAWSサービスの紹介• AMLで利用出来る機械学習について紹介

3

機械学習に関心を持ってもらう => Amazon MLの新機能要望をガンガン挙げて貰う

Page 4: Amazon Machine Learing と機械学習

自己紹介名前 : 平田 圭 (@masuwo3)

所属 : MLチーム現在 : 2015年5月よりクラスメソッド入社過去 : 特任助教、SE、IT講師、etc...

ML : 研究室でかじった程度

4

Page 5: Amazon Machine Learing と機械学習

MLチームの取り組み• 良品計画様

• Amazon MLを用いたキャンペーン効果分析• http://dev.classmethod.jp/cloud/aws/amazon-machine-

learning-poc-with-ryohin-keikaku/

• あきんどスシロー様• Amazon MLを用いた待ち時間予測• http://dev.classmethod.jp/machine-learning/amazon-

machine-learning-akindo-sushiro/

5

Page 6: Amazon Machine Learing と機械学習

Amazon Machine Learning についての紹介

6

Page 7: Amazon Machine Learing と機械学習

Amazon Machine Learningとは?• AWSが提供する機械学習サービス• データの投入から予測モデルの公開までを一貫して行える

• 高いスケーラビリティ・可用性• 他AWSサービスとの連携

7

Page 8: Amazon Machine Learing と機械学習

Amazon Machine Learningとは?予測モデル構築の流れ1. S3,Redshiftなどからデータソースを作成2.データソースを訓練用、評価用に分割3.訓練用データソースから予測モデルを構築4.評価用データソースから予測精度を評価

8

Page 9: Amazon Machine Learing と機械学習

Amazon Machine Learningとは?予測の種類

9

予測結果 学習モデル 例二項分類 2値のカテゴリ ロジスティック

回帰商品を購入する/しない

多項分類 多値のカテゴリ 多項ロジスティック回帰

どのカテゴリの商品を購入するか

回帰 数値 線形回帰 商品の購入金額

Page 10: Amazon Machine Learing と機械学習

Amazon Machine Learningとは?予測モデルの利用方法

A. バッチ予測• 複数件のデータをまとめて予測したい場合• CSVファイルを投入、結果はS3に

B. リアルタイム予測• 予測用APIを公開し、SDKから問い合わせ• 他AWSサービスと連携

10

Page 11: Amazon Machine Learing と機械学習

Amazon Machine Learningとは?• 一連の作業はすべてコンソール上で完結• SDKや他AWSサービスを利用すれば、モデルの自動更新なども実現できる

• データさえあれば、とても簡単に予測モデルの構築が出来るサービス

11

Page 12: Amazon Machine Learing と機械学習

12

「じゃあ、明日までに販売予測出来るようにしておいてよ」

もちろん無理

Page 13: Amazon Machine Learing と機械学習

Amazon MLで予測を行うためには• なぜ無理なのか?• 無関係なデータから正しい予測はできない• Garbage In, Garbage Out • 形だけ予測はできても、精度がでない

• 予測精度を向上させるためには、学習の元となる学習データをいかに作るかが重要

13

Page 14: Amazon Machine Learing と機械学習

Amazon MLで予測を行うためには• Amazon MLは何をもたらすか• 機械学習のためのマネージドな環境• 学習のための分散処理基盤• 予測モデルの提供や構築までのフロー• 予測モデル利用のための手段

14

Page 15: Amazon Machine Learing と機械学習

Amazon MLで予測を行うためには• Amazon MLを利用する際に感じる「壁」• 学習データ作成のためのノウハウがない• データ群からなにを学習データとして取り出せば良いのか

• 学習モデルに対してどの様な学習データを作れば良いのか

• 試行錯誤を行いながら精度を改善していく

15

Page 16: Amazon Machine Learing と機械学習

Amazon MLで予測を行うためには• 予測精度をあげるためには• 結果に関連する特徴の抽出• データ項目と結果の関係性を推測する• 対象データについての理解

• 予測モデル内部の仕組みを理解する• 学習モデルについての理解

16

Page 17: Amazon Machine Learing と機械学習

17

今回は学習モデルについて話します

Page 18: Amazon Machine Learing と機械学習

機械学習とはなにか?

18

Page 19: Amazon Machine Learing と機械学習

機械学習とは?

“不明確な環境の中で自動的にパターンを見つけ、これを用いて未来の予測や意思決定などを

行うための手段”

19

a set of methods that can automatically detect patterns in data, and then use the uncovered patterns to predict future data, or to perform other kinds of decision making under uncertainly

(Machine Learning: A Probabilistic Perspective)

Page 20: Amazon Machine Learing と機械学習

機械学習の分類• 教師あり学習• 教師なし学習• 強化学習• etc.

20

Amazon MLで利用可能な学習モデルについてお話しします

Page 21: Amazon Machine Learing と機械学習

21

注意点

Amazon MLは学習モデルの詳細を公開していないため、今回は一般的な

モデルについてお話しします

Page 22: Amazon Machine Learing と機械学習

教師あり学習とは?• 予測したい変数を学習時に与えられる

22

… euribor3m nr_employed y

4.857 5191 04.857 5191 04.857 5191 14.857 5191 14.857 5191 0

目的変数説明変数

目的変数 : 予測したい変数説明変数 : 状態を表す変数

Page 23: Amazon Machine Learing と機械学習

教師あり学習とは?• 予測の種類(再掲)

23

予測結果 学習モデル 例二項分類 2値のカテゴリ ロジスティック

回帰商品を購入する/しない

多項分類 多値のカテゴリ 多項ロジスティック回帰

どのカテゴリの商品を購入するか

回帰 数値 線形回帰 商品の購入金額

Page 24: Amazon Machine Learing と機械学習

線形回帰について最も簡単な例 : 単回帰• 各データにあてはまる

y = ax + b を考える• y : 目的変数• x : 説明変数• 重み a, b の値を求めたい

24

x y

1 42 83 11… …

Page 25: Amazon Machine Learing と機械学習

二乗誤差• 各点とy=ax+bの距離を表す値

• (yi - (axi + b))2

• 全ての点との二乗誤差が最小となるy=ax+b ⇒ 最も当てはまりの良い直線

線形回帰について

25

y=ax+b(x2, y2)

(x1, y1)

Page 26: Amazon Machine Learing と機械学習

線形回帰について損失関数 (loss function)

• 当てはまりの悪さを表す関数• 回帰の場合は平均二乗誤差(RMSE)が一般的

• 学習とは、損失関数が最小となる重みを求めること

26

Page 27: Amazon Machine Learing と機械学習

線形回帰について学習の流れ1.利用するモデル(y=ax+b)を決定する2.訓練データに学習モデルを適用する3.適用した結果から損失関数を求める4.損失関数の結果が最小となる重みを求める

27

学習とは、訓練データからモデルに最適な重みを見つけること

Page 28: Amazon Machine Learing と機械学習

話さなかったこと

28

• 他の学習モデルについて• 分類における学習モデル

• 損失が最小となる重みの求め方• 今回の場合は解析的に求められる• 探索的に重みを求める場合もある

• 予測モデルの評価について• 過学習とその対策

Page 29: Amazon Machine Learing と機械学習

まとめ• Amazon MLは機械学習を行うための「環境」

• 簡単に機械学習を実践できる• 機械学習についての理解があれば、効率よく精度改善を行える。

• 機械学習の一例として線形回帰を紹介• 機械学習の雰囲気について知ってもらった

• 学習とは、数式の重みを求めること

29