Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
機械学習 入門
- Data によって作られる世界への入り口 -
畠山 大有 | Daiyu Hatakeyama | @dahatake
Architect && Software Engineer && Applied Data Scien...
蒸気 や 電気 ソフトウェア
(+AI)
AI
Perception Cognition
Text (OCR)
“(1) Validate enrichment pipeline”
Tags
“throwing”, “ball”, “girl”, “grass”,
“basketball”
Caption
“A girl throwing a ball”
Entities
Persons
“Anita Christiansen”,
“Conrad Nuber”,
Locations
“Bothell”, “Woodinville”
Organization
“Litware Insurance ...
1950 1960 1970 1980 1990 2000 2010
手法
Machine
Learning
教師あり
学習
教師無し
学習
強化学習
Classification
Regression
Clustering
Reward-based
種類 カテゴリ アルゴリズムの例
・故障分類
・販促効果分類
利用例...
-0.5 -0.4 -0.3 -0.2 -0.1 0 0.1 0.2
-0.6
-0.4
-0.2
0
0.2
0.4
error
error
3
2
1
0
-1
-2
-3
-4
-3
-2
-1
0
1
2
3
4
・売上予測
・需要予測...
Goal: 分類を予測する
教師あり学習
ゴールの例:
このクレジットカードは不正
か?
Class 1 Class 2
2つ以上でも良い
Goal: 値を予測する
教師あり学習
ゴールの例:
来月この製品は何個売れるか?
• 車の各種情報から車の価格を予測する
• ブランド
• 燃料タイプ (ガソリン, ディーゼル)
• 吸気タイプ (ターボ, NA)
• ドアの数 (2ドア, 4ドア)
• 車体 (セダン, ワゴン, ハードトップ)
• 駆動方式 (FWD, ...
Goal: 構造を理解する
教師無し学習
ゴールの例:
私たちの顧客セグメントは
どうなっているのか?
Cluster 1
Cluster 2
Cluster 3
• あやめの「がく片の長さ」「がく片の幅」のみの情報で
データの類似性から100個のあやめを2種類に分類する
• 訓練用の答えデータを必要としない教師なし学習
がく片の幅
がく片の長さ
データの類似性から
2 種類に分類する
学習時と推論時
学習時のフロー
予測時のフロー
データ
準備
アルゴリズム
&
パラメータ選
択
学習 評価
予測
特徴量
エンジニアリ
ング
モデ
ル
結果
特徴量
抽出
既存
デー
タ
新し
い
デー
タ
学習により作成され
た
「ロジック...
“Hello World”
MNIST
https://keras.io/examples/vision/mnist_convnet/
利用ライブラリーの設定
データセット (学習用のデータ) の読み込み
# the data, split between train and test sets
# Scale images to the [0, 1] range
# Make sure images...
Neural Network の設定
学習の実行
学習したモデルのテスト (評価)
中核部分は
この分量です
<Python> Modelの保存
出力された Model <C#>Model の読み込み
<C#>Model の利用 (実行)
プログラミング
と
機械学習
2 + 3 = 5
2 + 3 = 5
簡単
大変…
2 + 3 = 5
簡単
大変…
それぞれの写真: 猫? Yes/No
Program = Algorithm
人が書く
タスクの仕様の定義
アルゴリズムは固定
アルゴリズムは容易に説明できる
ソフトウェアが書く
目的: 汎化
アルゴリズムはデータに依存
アルゴリズムは時間とともに変わる
Program = Algorithm
ソフトウェアが書く
目的: 汎化
アルゴリズムはデータに依存
アルゴリズムは時間とともに変わる Algorithm
Algorithm
人が書く
タスクの仕様の定義
アルゴリズムは固定
アルゴリズムは容易...
Program = Algorithm
人が書く
タスクの仕様の定義
アルゴリズムは固定
アルゴリズムは容易に説明できる
ソフトウェアが書く
目的: 汎化
アルゴリズムはデータに依存
アルゴリズムは時間とともに変わる
実世界の全てを想定して、
...
ドアの後ろに人がいます
入ってくる人は、男性 / 女性 のどちらで
しょうか?
既知の情報は以下のみ
年齢: 35歳
年収: 600万円
有給残数: 12日
F (性別) = (0.03 * 年齢) + (0.07 * 年収) – (0.04 ...
Data
を元にロジック
が作られる意味
推論
デプロイメント
データの準備 モデル構築・学習
世界中の研究者の
論文とコードも
公開されている
どんなデータが
準備できるか?
アプリケーションの
どこにモデルを
利用すべきか?
Data
Alpha Go Zero
Code と Data の関係
独占
権威
• オープンに共有される深層学習の研究
• 論文、サンプルコード、データセット
変革の速度
競争領域
引用: http://www.ics.kagoshima-u.ac.jp/~fuchida/edu/algorithm/sort-algorithm/
引用: https://twitter.com/fchollet/status/1052228463300493312
Data
ML
Code
Configuration
Data Collection
Data
Verification
Feature
Extraction
Machine
Resource
Management
Analysis Tools...
• 何を意味しているのか?
• いつ、どこで、取得したのか?
• 入手漏れが無いのか?
• 項目同士に関連があるのか?
• 欠損や例外がどれだけ含まれているのか?
http://tylervigen.com/spurious-correlations
https://www.researchgate.net/publication/8258751_Momentous_sprint_at_the_2156_Olympics
万能なものは無い
成果物である
モデルの
評価の考え方
①True Positive(真陽性) : 100%に近いほど良好
⇒A/(A+C)
②False Positive(偽陽性) : 0%に近いほど良好
⇒B/(B+D)
③True Negative : 100%に近いほど良好
⇒D/(B+D)...
Karugamoが写っているの
に、
モデルは推論できなかっ
た
-> モデルの見逃し
あり[推
論]
なし[推
論]
あり[正
解]
XX XX
なし[正
解]
XX XX
Karugamo でないもの
に、
Karugamo と推論
->モデルの過検知?
あり[推
論]
なし[推
論]
あり[正
解]
XX XX
なし[正
解]
XX XX
再現率(Recall)
適合率
(Precision)
ヒット数↑
ノイズ ↑
精度↑
漏れ↑
再現率、適合率の最適な
ブレイクポイント
精度
プログラミ
ング
機械学習
アプローチ 演繹的 帰納的。つまりブラックボックスは
残る
機能保証 (≒ 精度):
Function Test
可能 訓練データ次第。ただ、統計の域を
出ない
性能保証:
Performance Test
可...
機械学習を行うのに必要なもの
大量のデータ
データ
に対する知見
データ分析の
知識・経験
データ分析
ツール・基盤
× × ×
大量の分析用データを
保持している
分析用データの中身を
理解している
分析内容やデータ
に適してアルゴリ
ズムを...
数年前だと…
コンサル費用数千万 + 数か月
誰でも数分でできる
襟あり
RALPH LAUREN
Cognitive Services
Custom Vision
会員数 4,150 名
全国 6 都市で
36 回イベント開催
福岡
大阪
広島
名古屋
東京
札幌
オンライン・オフライン含めた
機械学習教育講座の全国での推進
機械学習 SI エコシステム
日本最大の AI コミュニティ
https://d...
• AI や 機械学習の最新の
トレーニング
• 概要・基礎・チュートリアル
• 自分に適した、トレーニングコースの作成
• AI Business School
• Conversational AI
• AI Services
• Mach...
Step-by-Step Learning Achievements スムーズな学習環境
 無料
 日本語対応
 ブラウザーのみ。ハンズオ
ン環境も含めて
 ダウンロード可能なサンプ
ルコード
 Product/Service, 技術...
Open Source Repo Link
Azure ML Notebook Examples
Azure Machine Learning 公式サンプル
コード
https://aka.ms/ml-notebooks
BERT Large ...
Invent with purpose.
東北大学AIE - 機械学習入門編
東北大学AIE - 機械学習入門編
東北大学AIE - 機械学習入門編
東北大学AIE - 機械学習入門編
東北大学AIE - 機械学習入門編
東北大学AIE - 機械学習入門編
東北大学AIE - 機械学習入門編
東北大学AIE - 機械学習入門編
Upcoming SlideShare
Loading in …5
×

東北大学AIE - 機械学習入門編

機械学習が再度注目を集めている中、皆さんの生活や社会の中で活用され始めています。ところが「AI」という言葉が
先行している事もあり、機械学習の実体の理解が浅いがために、誤解をした使い方なども見受けられています。
ここでは、機械学習に興味のある方や、機械学習のモデルの作成はした事があるものの、実業務や社会などに展開し
た事の無い方向けに、機械学習とは何か?プログラミングと何が違うのか?そのモデル作成の手順などをご紹介しま
す。

  • Be the first to comment

東北大学AIE - 機械学習入門編

  1. 1. 機械学習 入門 - Data によって作られる世界への入り口 - 畠山 大有 | Daiyu Hatakeyama | @dahatake Architect && Software Engineer && Applied Data Scientist (目指している) Microsoft Japan
  2. 2. 蒸気 や 電気 ソフトウェア (+AI) AI
  3. 3. Perception Cognition
  4. 4. Text (OCR) “(1) Validate enrichment pipeline”
  5. 5. Tags “throwing”, “ball”, “girl”, “grass”, “basketball” Caption “A girl throwing a ball”
  6. 6. Entities Persons “Anita Christiansen”, “Conrad Nuber”, Locations “Bothell”, “Woodinville” Organization “Litware Insurance Corp.”
  7. 7. 1950 1960 1970 1980 1990 2000 2010
  8. 8. 手法
  9. 9. Machine Learning 教師あり 学習 教師無し 学習 強化学習 Classification Regression Clustering Reward-based 種類 カテゴリ アルゴリズムの例 ・故障分類 ・販促効果分類 利用例 ・売上予測 ・需要予測 ・セグメンテー ション ・顧客グルーピン グ ・メール キャン ペーン ・自動運転 ・自立型ビル管理
  10. 10. -0.5 -0.4 -0.3 -0.2 -0.1 0 0.1 0.2 -0.6 -0.4 -0.2 0 0.2 0.4 error error 3 2 1 0 -1 -2 -3 -4 -3 -2 -1 0 1 2 3 4 ・売上予測 ・需要予測 ・品質管理 ・不良品分析 ・故障予測 ・チャーン分析 ・販促効果測定 ・与信分析 ・セグメンテー ション ・顧客グルーピン グ ・メール キャン ペーン 値 ラベル
  11. 11. Goal: 分類を予測する 教師あり学習 ゴールの例: このクレジットカードは不正 か? Class 1 Class 2 2つ以上でも良い
  12. 12. Goal: 値を予測する 教師あり学習 ゴールの例: 来月この製品は何個売れるか?
  13. 13. • 車の各種情報から車の価格を予測する • ブランド • 燃料タイプ (ガソリン, ディーゼル) • 吸気タイプ (ターボ, NA) • ドアの数 (2ドア, 4ドア) • 車体 (セダン, ワゴン, ハードトップ) • 駆動方式 (FWD, RWD, 4WD) • エンジン位置 (フロント, リア) • ホイールの大きさ • シリンダーの数 • 車体の長さ, 幅, 高さ ・・・など
  14. 14. Goal: 構造を理解する 教師無し学習 ゴールの例: 私たちの顧客セグメントは どうなっているのか? Cluster 1 Cluster 2 Cluster 3
  15. 15. • あやめの「がく片の長さ」「がく片の幅」のみの情報で データの類似性から100個のあやめを2種類に分類する • 訓練用の答えデータを必要としない教師なし学習 がく片の幅 がく片の長さ データの類似性から 2 種類に分類する
  16. 16. 学習時と推論時 学習時のフロー 予測時のフロー データ 準備 アルゴリズム & パラメータ選 択 学習 評価 予測 特徴量 エンジニアリ ング モデ ル 結果 特徴量 抽出 既存 デー タ 新し い デー タ 学習により作成され た 「ロジック(IF文な ど)」「関数」のよ うなもの データやモデルに応じ て色々な構造&アルゴ リズムが用意されてい る モデルに対して、新たな データを入力して、予測/ 分類結果を得る
  17. 17. “Hello World” MNIST https://keras.io/examples/vision/mnist_convnet/
  18. 18. 利用ライブラリーの設定
  19. 19. データセット (学習用のデータ) の読み込み # the data, split between train and test sets # Scale images to the [0, 1] range # Make sure images have shape (28, 28, 1) # convert class vectors to binary class matrices
  20. 20. Neural Network の設定
  21. 21. 学習の実行
  22. 22. 学習したモデルのテスト (評価)
  23. 23. 中核部分は この分量です
  24. 24. <Python> Modelの保存 出力された Model <C#>Model の読み込み <C#>Model の利用 (実行)
  25. 25. プログラミング と 機械学習
  26. 26. 2 + 3 = 5
  27. 27. 2 + 3 = 5 簡単 大変…
  28. 28. 2 + 3 = 5 簡単 大変…
  29. 29. それぞれの写真: 猫? Yes/No
  30. 30. Program = Algorithm 人が書く タスクの仕様の定義 アルゴリズムは固定 アルゴリズムは容易に説明できる ソフトウェアが書く 目的: 汎化 アルゴリズムはデータに依存 アルゴリズムは時間とともに変わる
  31. 31. Program = Algorithm ソフトウェアが書く 目的: 汎化 アルゴリズムはデータに依存 アルゴリズムは時間とともに変わる Algorithm Algorithm 人が書く タスクの仕様の定義 アルゴリズムは固定 アルゴリズムは容易に説明できる
  32. 32. Program = Algorithm 人が書く タスクの仕様の定義 アルゴリズムは固定 アルゴリズムは容易に説明できる ソフトウェアが書く 目的: 汎化 アルゴリズムはデータに依存 アルゴリズムは時間とともに変わる 実世界の全てを想定して、 プログラミングするのは、難しい…
  33. 33. ドアの後ろに人がいます 入ってくる人は、男性 / 女性 のどちらで しょうか? 既知の情報は以下のみ 年齢: 35歳 年収: 600万円 有給残数: 12日 F (性別) = (0.03 * 年齢) + (0.07 * 年収) – (0.04 * 有給残数) + 0.05 = (0.03 * 3.5) + (0.07 * 6.0) – (0.04 * 1.2) + 0.05 = 0.41 0.5 よりも小さいから = 女性
  34. 34. Data を元にロジック が作られる意味
  35. 35. 推論 デプロイメント データの準備 モデル構築・学習 世界中の研究者の 論文とコードも 公開されている どんなデータが 準備できるか? アプリケーションの どこにモデルを 利用すべきか?
  36. 36. Data Alpha Go Zero
  37. 37. Code と Data の関係
  38. 38. 独占 権威
  39. 39. • オープンに共有される深層学習の研究 • 論文、サンプルコード、データセット 変革の速度 競争領域
  40. 40. 引用: http://www.ics.kagoshima-u.ac.jp/~fuchida/edu/algorithm/sort-algorithm/
  41. 41. 引用: https://twitter.com/fchollet/status/1052228463300493312
  42. 42. Data ML Code Configuration Data Collection Data Verification Feature Extraction Machine Resource Management Analysis Tools Process Management Tools Serving Infrastructure Monitoring “Hidden Technical Debt in Machine Learning Systems,” Google NIPS 2015
  43. 43. • 何を意味しているのか? • いつ、どこで、取得したのか? • 入手漏れが無いのか? • 項目同士に関連があるのか? • 欠損や例外がどれだけ含まれているのか?
  44. 44. http://tylervigen.com/spurious-correlations
  45. 45. https://www.researchgate.net/publication/8258751_Momentous_sprint_at_the_2156_Olympics
  46. 46. 万能なものは無い
  47. 47. 成果物である モデルの 評価の考え方
  48. 48. ①True Positive(真陽性) : 100%に近いほど良好 ⇒A/(A+C) ②False Positive(偽陽性) : 0%に近いほど良好 ⇒B/(B+D) ③True Negative : 100%に近いほど良好 ⇒D/(B+D) ④False Negative : 0%に近いほど良好 ⇒C/(C+D) ⑤Accuracy(正解率) : 100%に近いほど良好 ⇒「○」「×」を正しく予測できた割合 ⇒(A+D)/(A+B+C+D) : 100%に近いほど良好 ⑥Precision(適合率) : 100%に近いほど良好 ⇒A/(A+B) ⑦Recall(再現率) : 100%に近いほど良好 ⇒①に同じ ⑧F1 Score :1.0に近いほど良好 ⇒⑥、⑦の複合指標 ⇒2×(⑥×⑦)/(⑥+⑦) 検証用データ 推論で得た分類 ○ × 正解の 分類 ○ A件 C件 × B件 D件 正解が「○」 のデータ 推論で「○」と されたデータ A件 C件 B件 D件 推論結果の例 主な評価指標
  49. 49. Karugamoが写っているの に、 モデルは推論できなかっ た -> モデルの見逃し あり[推 論] なし[推 論] あり[正 解] XX XX なし[正 解] XX XX
  50. 50. Karugamo でないもの に、 Karugamo と推論 ->モデルの過検知? あり[推 論] なし[推 論] あり[正 解] XX XX なし[正 解] XX XX
  51. 51. 再現率(Recall) 適合率 (Precision) ヒット数↑ ノイズ ↑ 精度↑ 漏れ↑ 再現率、適合率の最適な ブレイクポイント
  52. 52. 精度 プログラミ ング 機械学習 アプローチ 演繹的 帰納的。つまりブラックボックスは 残る 機能保証 (≒ 精度): Function Test 可能 訓練データ次第。ただ、統計の域を 出ない 性能保証: Performance Test 可能 可能 妥当性確認試験: Validation Test 可能 やってみないと、わからない https://www.slideshare.net/hironojumpei/ai-129527593
  53. 53. 機械学習を行うのに必要なもの 大量のデータ データ に対する知見 データ分析の 知識・経験 データ分析 ツール・基盤 × × × 大量の分析用データを 保持している 分析用データの中身を 理解している 分析内容やデータ に適してアルゴリ ズムを把握してい る 大量データを分 析できるツール を持ち 使いこなせる 最も重要
  54. 54. 数年前だと… コンサル費用数千万 + 数か月 誰でも数分でできる 襟あり RALPH LAUREN Cognitive Services Custom Vision
  55. 55. 会員数 4,150 名 全国 6 都市で 36 回イベント開催 福岡 大阪 広島 名古屋 東京 札幌 オンライン・オフライン含めた 機械学習教育講座の全国での推進 機械学習 SI エコシステム 日本最大の AI コミュニティ https://dllab.connpass.com/
  56. 56. • AI や 機械学習の最新の トレーニング • 概要・基礎・チュートリアル • 自分に適した、トレーニングコースの作成 • AI Business School • Conversational AI • AI Services • Machine Learning • Autonomous System • Responsible AI aischool.microsoft.com
  57. 57. Step-by-Step Learning Achievements スムーズな学習環境  無料  日本語対応  ブラウザーのみ。ハンズオ ン環境も含めて  ダウンロード可能なサンプ ルコード  Product/Service, 技術レベル, job role, などに応じたガイダ ンス  Videos, チュートリアル, ハン ズオン  スキルアップを促す  ユーザー プロファイ ル毎に カスタマイズ www.microsoft.com/learn
  58. 58. Open Source Repo Link Azure ML Notebook Examples Azure Machine Learning 公式サンプル コード https://aka.ms/ml-notebooks BERT Large 自然言語モデル BERT のサンプルコード http://aka.ms/azure-bert Microsoft Recommenders レコメンデーション サンプルコード http://aka.ms/recommenders LightGBM LightGBM トップページ https://aka.ms/lightgbm Natural Language Recipies 自然言語 サンプルコード https://aka.ms/nlp-recipes ONNX ONNX トップページ https://aka.ms/onnx ONNX RT ONNX Runtimeトップページ https://aka.ms/onnx-rt Kubeflow & MLOps Kubeflow + Azure ML + DevOps サンプル コード https://aka.ms/kubeflow-and-mlops Azure Open Datasets Azure Open Datasets Webページ https://aka.ms/azure-open-datasets Azure ML Free Trial Azure フリートライアル https://aka.ms/amlfree Azure ML Docs Azure Machine Learning ドキュメント https://aka.ms/azureml-ja-docs
  59. 59. Invent with purpose.

×