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.

[Japan Tech summit 2017] MAI 005

967 views

Published on

[Japan Tech summit 2017] MAI 005セッション資料

Published in: Travel
  • Be the first to comment

[Japan Tech summit 2017] MAI 005

  1. 1. Microsoft Tech Summit 2017 ~ DBAのAIことはじめ ~
  2. 2. © 2017 日本電気株式会社 All rights reserved.
  3. 3. © 2017 日本電気株式会社 All rights reserved.
  4. 4. © 2017 日本電気株式会社 All rights reserved. 何かもっと良 いものあれば 差し替え 出典)https://deepmind.com/blog/alphago-zero-learning-scratch/
  5. 5. © 2017 日本電気株式会社 All rights reserved. 出典)https://www.microsoft.com/
  6. 6. © 2017 日本電気株式会社 All rights reserved. 出典)https://www.apple.com/
  7. 7. © 2017 日本電気株式会社 All rights reserved. お手伝い しましょうか? 出典)https://www.google.com/
  8. 8. © 2017 日本電気株式会社 All rights reserved. 人相 名前は? あなたは何者? 好きな食べ物は? コルタナと申します。 仕事はあなたのお役 に立つことです。 ドーナツです。言っ てみただけですけど。 私の名前はシリです。 もうご存知かとお もっていました。 私がだれかなんて、 どうでもいいことで すよ。 私の好みなんて、気 にしないでください。 私はGoogleアシス タントです。 アシスタントです。 私は様々な食べ物が 好きです。 Microsoft Apple Google
  9. 9. © 2017 日本電気株式会社 All rights reserved.
  10. 10. © 2017 日本電気株式会社 All rights reserved.出典)https://i.ytimg.com/vi/-YRB0eFxeQA/maxresdefault.jpg
  11. 11. © 2017 日本電気株式会社 All rights reserved. ① 今更何ができるの?もう遅いよ。 ② DBA仕事に関係ないしさ。 ③ 今回もブームで終わるでしょ。
  12. 12. © 2017 日本電気株式会社 All rights reserved. ① 今更何ができるの?もう遅いよ。
  13. 13. © 2017 日本電気株式会社 All rights reserved. 出典)https://www.gartner.co.jp/press/html/pr20170823-01.html
  14. 14. © 2017 日本電気株式会社 All rights reserved. 0 20 40 60 80 100 120 140 160 180 200 0 10 20 30 40 50 60 70 2012/10/28 2013/10/28 2014/10/28 2015/10/28 2016/10/28 2017/10/28 「AI Deep Learning」Trend Search 「NVIDIA Corp」Stock Price 出典)https://trends.google.com/trends/explore?date=today%205-y&q=AI%20Deep%20Learning 出典)https://stooq.com/q/d/?s=nvda.us&c=0&d1=20121027&d2=20171027&i=w
  15. 15. © 2017 日本電気株式会社 All rights reserved. 0 5 10 15 20 25 30 2010年 NEC 2011年 Xerox 2012年 University of Toronto 2013年 Clarifai 2014年 Google 2015年 Microsoft 2016年 MPS 人間 画像識別誤り率(%) 人間の識別能力を超過 本番システムで実用可能 出典)Large Scale Visual Recognition Challenge (ILSVRC) コンピューター画像識別 世界競技会 ベストレコード推移
  16. 16. © 2017 日本電気株式会社 All rights reserved. ② DBA仕事に関係ないしさ。
  17. 17. © 2017 日本電気株式会社 All rights reserved. t f in Mobile APP IoT SoR Social Desktop APP Web Browser Data Source ConsumerPublishAI Predict ETL DWH/DM Report API BI Data Prep ModelingEvaluation AI Train GPU
  18. 18. © 2017 日本電気株式会社 All rights reserved. t f in Mobile APP IoT SoR Social Desktop APP Web Browser Data Source ConsumerPublishAI Predict ETL DWH/DM Report API BI Data Prep ModelingEvaluation AI Train GPU
  19. 19. © 2017 日本電気株式会社 All rights reserved. t f in Mobile APP IoT SoR Social Desktop APP Web Browser Data Source ConsumerPublishAI Predict ETL DWH/DM Report API BI Data Prep ModelingEvaluation AI Train GPU SQL Server Integration Services SQL Server Analysis Services SQL Server Reporting Services SQL Server R Server Power BI Report Server
  20. 20. © 2017 日本電気株式会社 All rights reserved. t f in Mobile APP IoT SoR Social Desktop APP Web Browser Data Source ConsumerPublishAI Predict ETL DWH/DM Report API BI Data Prep ModelingEvaluation AI Train GPU SQL Server Integration Services SQL Server Analysis Services SQL Server Reporting Services SQL Server R Server Power BI Report Server SQL Server の門外
  21. 21. © 2017 日本電気株式会社 All rights reserved. アプリケーション + インテリジェンス データベース アプリケーション インテリジェンス + データベース SQL Server 2017 の コンセプト のひとつ 『 データがあるところにインテリジェンスを』
  22. 22. © 2017 日本電気株式会社 All rights reserved. t f in Mobile APP IoT SoR Social Desktop APP Web Browser Data Source ConsumerPublishAI Predict ETL DWH/DM Report API BI Data Prep ModelingEvaluation AI Train GPU SQL Server Integration Services SQL Server Analysis Services SQL Server Reporting Services SQL Server R Server Power BI Report Server ML Services により SQL Server が AIをサポート SQL Server Machine Learning Services NEW
  23. 23. © 2017 日本電気株式会社 All rights reserved. SQL Server サーバー Python/R ランタイム APP Machine Learning Services Database Services プロシージャA GPU プロシージャCプロシージャB Python/R記述 Predict処理 RAPID機械学習Chainer CNTK Python/R記述 Train処理 Python/R記述 その他処理 TensorFlow その他FW
  24. 24. © 2017 日本電気株式会社 All rights reserved. t f in Mobile APP IoT SoR Social Desktop APP Web Browser Data Source ConsumerPublishAI Predict ETL DWH/DM Report API BI Data Prep ModelingEvaluation AI Train GPU SQL Server Integration Services SQL Server Analysis Services SQL Server Reporting Services SQL Server R Server Power BI Report Server SQL Server Machine Learning Services
  25. 25. © 2017 日本電気株式会社 All rights reserved. t f in AI for X Data Source Consumer本番システムで利用可能なAI実行基盤 AI for Y AI for Z ETL DWH/DM Report API BI Mobile APP IoT SoR Social Desktop APP Web Browser SQL Server ワンボックス AI プラットフォーム
  26. 26. © 2017 日本電気株式会社 All rights reserved.
  27. 27. © 2017 日本電気株式会社 All rights reserved. ▌システムモデル ▌Y県自治体のお悩み事 毒キノコの誤食による食中毒の被害があとを絶たない。なんとか減らせないものか…。 Deep Learning on SQL Server による画像判定 Predict Train Internet ETL Bing Image Search API スマホ 食用キノコ 画像 毒キノコ 画像 学習モデル (AI) 要判定キノコ画像 キノコ狩り 判定結果 可視化
  28. 28. © 2017 日本電気株式会社 All rights reserved. ▌Y県自治体のお悩み事 毒キノコの誤食による食中毒の被害があとを絶たない。なんとか減らせないものか…。 Deep Learning on SQL Server による画像判定 ▌登場人物 Data Scientist :AIを開発。 SQL Server DBA:AIをSQL Serverにデプロイ。 Developer :AIをアプリに組込み、結果を可視化。
  29. 29. © 2017 日本電気株式会社 All rights reserved. Internet ETL Bing Image Search API スマホ 食用キノコ 画像 毒キノコ 画像 学習モデル (AI) 要判定キノコ画像 判定結果 事前環境 SQL Server on IaaS w/GPU VS Code on IaaS w/GPU キノコ狩り
  30. 30. © 2017 日本電気株式会社 All rights reserved. PredictTrain ETL デモ① Data Scientist「私が慣れ親しんだ環境でAIを開発します。」 可視化 Internet Bing Image Search API 食用キノコ 画像 毒キノコ 画像 学習モデル (AI) 要判定キノコ画像 判定結果 キノコ狩り スマホ
  31. 31. © 2017 日本電気株式会社 All rights reserved. PredictTrain ETL Predict Train デモ② DBA「AIを『コピペ』のプロシージャ化 で SQL Server にデプロイします」 Internet Bing Image Search API 食用キノコ 画像 毒キノコ 画像 学習モデル (AI) 要判定キノコ画像 判定結果 キノコ狩り スマホ
  32. 32. © 2017 日本電気株式会社 All rights reserved. PredictTrain ETL Predict Train デモ③ Developer「SQL文1行でAIを実行し、結果を可視化します」 可視化 Internet Bing Image Search API 食用キノコ 画像 毒キノコ 画像 学習モデル (AI) 要判定キノコ画像 判定結果 キノコ狩り 可視化 スマホ
  33. 33. © 2017 日本電気株式会社 All rights reserved. t f in Data Source Consumer本番システムで利用可能なAI実行基盤 Mobile APP IoT SoR Social Desktop APP Web Browser システム構成要素が少なく信頼性が高い 入口と出口が標準化されたI/Fで接続可能 AIがSQL Serverのリッチな機能に相乗可能 1 2 3 AI for X AI for Y AI for Z Report API BI ETL DWH/DM
  34. 34. © 2017 日本電気株式会社 All rights reserved. ③ 今回もブームで終わるでしょ。
  35. 35.  200人の日本人の身体データ 誤って100人分の性別情報を削除 身体データから,その方の性別を推定する以外にオ プションがありません。
  36. 36.  90個の身体特徴があるので,頑張れば性別判定できそう。
  37. 37. © 2017 日本電気株式会社 All rights reserved. 1st Step:ルール・ドリブン アプローチ (自分のアタマで考える) 現在の時刻:午後6時 (残り12時間)
  38. 38.  身体データに入っている90個の身体特徴を見ながら, 性別を予測するプログラムをゼロから書こう。  「身長」と「体重」の2つの特徴を使えば, おそらく個人の性別を判定できるだろう。
  39. 39.  「身長」と「体重」だけでは性別判定できなさそう。 他の身体特徴も使う必要がありそうだ。
  40. 40. © 2017 日本電気株式会社 All rights reserved. 2nd Step:インサイト・ドリブン アプローチ (データに教えてもらう) 現在の時刻:午前0時 (残り6時間)
  41. 41.  残り時間は6時間。性別判定プログラムを 6時間で書き上げるのは難しそうだ。  プログラム開発の生産性をアップする, 何か別の良いソリューションはないかな?  データ削除を免れた100人の身体データから, 日本人の性別と身体特徴の関係を調べたら?  あなたが知らない,男女判別に有用な身体特徴 を見つけられるかもしれませんよ。
  42. 42.  性別情報が残った100人の身体データから, 日本人の性別判定する予測モデルを作ろう。  性別情報を削除してしまった残り100人の性別は, この予測モデルを使ってレストアしよう。 200人 100人 100人
  43. 43.  最初は,「身長」と「体重」だけで 日本人の性別判定できるか試してみよう。  追加の身体特徴を使うかどうかは, この予測結果を見てから判断しよう。
  44. 44.  「身長」と「体重」だけで72%, 日本人の性別を判定できそうだな。  予測精度を100%に近づけたいから, 追加の身体特徴を使おう。何を使うべきか? 混同行列 予測 女性 男性 正解 女性 15 6 男性 8 21
  45. 45.  100人の日本人の身 体データは,2つの クラスタに分割 できそうだ。  各クラスタの代表点 (重心)を見ると,女 性は「体脂肪」 が性別判定に効 きそうだ。
  46. 46. 身体特徴 重要度 身体寸法 体脂肪 0.43 関節可動域 肘関節.伸展 0.21 体力測定 長座体前屈 0.16 身体寸法 腹囲 0.09 身体特徴 重要度 被験者情報 身長 0.86 身体寸法 頚椎高 0.85 体力測定 握力 0.66 被験者情報 体重 0.49
  47. 47.  次は「身長」「体重」に「体脂肪」を加えて, 日本人の性別を予測できるか試してみよう。  追加の身体情報を使うかどうかは, この予測結果を見てから判断しよう。
  48. 48.  「身長」と「体重」に「体脂肪」を加えると, 日本人の性別を84%判定できそうだな。  予測精度を100%に近づけたいけど, 午前6時までにモデリングが終わるか不安だ。 混同行列 予測 女性 男性 正解 女性 19 2 男性 6 23
  49. 49. © 2017 日本電気株式会社 All rights reserved. 3rd Step:データ・ドリブン アプローチ (AIに教えてもらう) 現在の時刻:午前2時 (残り4時間)
  50. 50.  残り4時間。予測モデルを4時間で仕上げ できるか不透明だ。  プログラム開発の生産性を更に加速する, 何か別の良いソリューションはないかな?  データ削除を免れた100人の身体データに含まれる 90個すべての身体特徴を使ったらどう?  ディープラーニングを使えば, 性別判定に効く身体特徴を勝手に探してくれますよ。
  51. 51.  性別情報が残った100人の身体データから, 日本人の性別判定する予測モデルを作ろう。  性別情報を削除してしまった残り100人の性別は, この予測モデルを使ってレストアしよう。 200人 100人 100人
  52. 52.  最初に,90個すべての身体特徴を使って 日本人の性別判定できるかざっと試してみよう。  これでダメだったら,身体特徴から性別を当てるのは 難しいとあきらめがつきそうだ。
  53. 53.  90個すべての身体特徴を使うと, 日本人の性別を96%予測できそうだな。  間違えた日本人 2名は,プログラムで個別にケアすれば, なんとかなりそうだ!! 混同行列 予測 女性 男性 正解 女性 26 1 男性 1 22
  54. 54. © 2017 日本電気株式会社 All rights reserved.
  55. 55. © 2017 日本電気株式会社 All rights reserved. ① 今更何ができるの?もう遅いよ。 ② DBA仕事に関係ないしさ。 ③ 今回もブームで終わるでしょ。 → システム化はこれから! → SQL Server がAIをサポート! → 使うべき実用的テクノロジー!
  56. 56. © 2017 日本電気株式会社 All rights reserved. “Data is the New Oil” 出典)https://www.photo-ac.com/
  57. 57. © 2017 日本電気株式会社 All rights reserved. 出典)https://www.photo-ac.com/
  58. 58. © 2017 日本電気株式会社 All rights reserved. ▌シナリオ あるスキーレンタル事業者のレンタルデータ(月日、曜日、祝日、天気 、降雪量など)をもとに将来のレンタル数の予測を行います。 ▌ポイント シンプルなサンプルです。 まずはPythonの開発環境でモデルトレーニング(scikit-learn×線形回 帰アルゴリズム)とスコアリングを実装し、これとまったく同じ処理を SQL Server にデプロイする方法を学びIn Database Analyticsを実践し ます。 https://goo.gl/QDnxp1
  59. 59. © 2017 日本電気株式会社 All rights reserved. ▌シナリオ ニューヨークのタクシー事業者の乗車データ (時刻、距離、ピックアップ場所など)をも とに特定の乗車においてチップが得られるか どうかを予測を行います。 ▌ポイント In Database Analytics の開発ライフサイク ルを体感するようにチュートリアルが構成さ れています。 同じシナリオのサンプルコードをPython、R の両言語で用意しています。 scikit-learnとRevoScaleそれぞれでロジス ティック回帰モデルをトレーニングします。 モデルの デプロイ モデルの オペレー ション 探索と 可視化 特徴抽 出 トレー ニング テスト ETL https://goo.gl/Lq8GVt
  60. 60. © 2017 日本電気株式会社 All rights reserved. ▌シナリオ ローンデータをモデル化し、貸付金利を上昇させた場合の貸倒償却度合 の変化についてWhat-If分析を行います。 ▌ポイント In Database Analyticsの真価を体感できるようにチュートリアルが構 成されています。 PowerBIによる可視化を含んだサンプルです。 RevoScaleRでディシジョンフォレストモデルをトレーニングします。 In-memory TableColumn Store Power BI Predict (parallel) VisualizeTrain R loan Data Import https://goo.gl/zb8Rwb
  61. 61. © 2017 日本電気株式会社 All rights reserved. https://goo.gl/QDnxp1 https://goo.gl/Lq8GVt https://goo.gl/zb8Rwb
  62. 62. © 2017 日本電気株式会社 All rights reserved. ご清聴いただき ありがとうございました
  63. 63. © 2017 日本電気株式会社 All rights reserved.
  64. 64. © 2017 日本電気株式会社 All rights reserved.
  65. 65. © 2017 日本電気株式会社 All rights reserved. CREATE PROCEDURE ユーザ定義プロシージャ AS BEGIN EXEC sp_execute_external_script @language = N'Python', @script =N'#Python code#' END SQL Server 2017 Machine Learning Services Python Runtime APP 結果返却 Python/Rコード実行 T-SQL Java C/C++ C#/VB.NET PHP Node.js Python Ruby ② ③ ① EXEC ユーザ定義プロシージャ sp_execute _external _script の呼び出し EXEC sp_execute_external_script @language = N'Python', @script =N'#Python code#' もしくは Server
  66. 66. © 2017 日本電気株式会社 All rights reserved. Sqlsrvr.exe Launchpad.exe Pythonlauncher.dll /Rlauncher.dll Python.exe /RTerm.exe Python35.dll /R.dll PyLink.dll /RxLink.dll BxlServer.exe SqlSatellite.dll Database Engine Services Launchpad Services Machine Learning Services Python/R Process BxlServer Process Named Pipe ① ② ③ ④ Named Pipe ⑤⑥ TCP/IP conhost.exe APP Server sp_execute _external _script
  67. 67. © 2017 日本電気株式会社 All rights reserved. 1.SQL Server Database Engine Services と SQL Server Machine Learning Services のインストール 2.外部スクリプト実行機能の有効化 (EXEC sp_configure 'external scripts enabled', 1;) 3.SQL Server の再起動
  68. 68. © 2017 日本電気株式会社 All rights reserved. SQL Server 2016 の R Services が改名して Machine Learning Services となっている
  69. 69. © 2017 日本電気株式会社 All rights reserved. ▌Machine Learning Services Python/RをSQL Serverに統合した In Database な実行環境を提供 • SQL17CU1でWindows版のみ ▌Machine Learning Server スケーラブルなPython/Rの実行環境を 提供 • SQL Serverとは直接かかわりがない – Windows版はSQL Serverのライセンスによっ て提供される • Windows/Linuxに対応こっち(Machine Learning Server) は別物
  70. 70. © 2017 日本電気株式会社 All rights reserved. ▌Python:version 3.5.2 Anaconda 4.3 がインストールされる • Continuum Analytics社が提供するPythonディストリビューション Python HOME • C:¥Program Files¥Microsoft SQL Server¥MSSQL14.MSSQLSERVER¥PYTHON_SERVICES ▌R:version 3.3.3 Microrosft R がインストールされる • Revolution Analytics社(2015年Microsoft社が買収)が提供するRディストリビューション R HOME • C:¥Program Files¥Microsoft SQL Server¥MSSQL14.MSSQLSERVER¥R_SERVICES
  71. 71. © 2017 日本電気株式会社 All rights reserved. ▌Machine Learning Services は Standard Edition でも使えます Enterprise Edition 比較で機能差は無し。 • (抜粋) Standard Edition has all the capabilities of in-database analytics included with Enterprise Edition, except for resource governance. Performance and scale is also limited: the data that can be processed must fit in server memory, and processing is limited to a single compute thread, even when using the RevoScaleR functions. スレッド数やリソースのスケーラビリティに制約有り。
  72. 72. © 2017 日本電気株式会社 All rights reserved. ▌プラットフォームは SQL Server on Windows のみ SQL Server on Linux は今時点未サポート ▌AlwaysOn による可用性構成は Availability Group のみサポート Failover Cluster Instance は未サポート

×