機械学習と azure ml studio の基本
TRANSCRIPT
Techfair.jp 2017年3月2017年3月4日
瀬尾佳隆 (@seosoft)Microsoft MVP for Windows Dev
機械学習とAzure ML Studio の基本
おことわり
本資料は、2017年3月4日時点の内容です
Slideshare 公開した 2018年1月時点では一部古い内容を含んでいることがありますが、記録・参考として公開します
自己紹介
瀬尾佳隆 (せおよしたか)•MVP for Windows Development• http://yseosoft.wordpress.com/• 乃木坂46 / 欅坂46 と仏像 / 屏風絵が好き
Techfair 主宰 (http://techfair.jp/)
Cogbot コミュニティ スタッフ
今日の内容
機械学習の基本的な考え方
Azure ML Studio の操作方法
扱わないこと• R 言語や Python は扱いません(できません)•統計学的な深堀りはしません(できません)
機械学習とは
機械学習とは
「蓄積したデータを、コンピューターが自動的に上手く使って、人間が思いつかないような全く新しい答えを考え出してくれる」 こと
機械学習とは
「蓄積したデータを、コンピューターが自動的に上手く使って、人間が思いつかないような全く新しい答えを考え出してくれる」 こと
※実際に、これを期待した相談を受けたことがあります
機械学習とは
Azure Machine Learning Hands on Labs によると:
https://github.com/Azure-Readiness/hol-azure-machine-learning
機械学習とは
Using known data, develop a model to predict unknown data.
既存のデータを使って
Using known data, develop a model to predict unknown data.
Known data 既存のデータを使って
学習モデルを開発して
Using known data, develop a model to predict unknown data.
Known data 既存のデータを使って
Model 学習モデルを開発して
新しいデータを予測すること
Using known data, develop a model to predict unknown data.
Known data 既存のデータを使って
Model 学習モデルを開発して
Unknown data 新しいデータを予測する
学習モデル
初期モデル
(アルゴリズム)
学習用データ
結果を予測
するための
“方法”
学習モデルの種類
教師あり・・・過去のデータから未来を予測する•分類(二項/多項)•回帰•異常検出
教師なし・・・過去のデータを整理する•グループ化(=クラスタリング)
https://docs.microsoft.com/ja-jp/azure/machine-learning/machine-learning-algorithm-choice
分類
「Aか Bか」• この気温・湿度ならば、晴れか雨か(曇りか)?• この条件ならば、Aか Bか?
https://docs.microsoft.com/ja-jp/azure/machine-learning/machine-learning-data-science-for-beginners-the-5-questions-data-science-answers
回帰
「どのくらいの量/数か」• この気温・曜日ならば、商品は何個売れそうか?•今日はこの気温なら、明日は何度になりそうか?
https://docs.microsoft.com/ja-jp/azure/machine-learning/machine-learning-data-science-for-beginners-the-5-questions-data-science-answers
異常検出
「これは異常か」• この温度・音ならば、機械は故障しているか?•猫が混じっているが、どれか?
https://docs.microsoft.com/ja-jp/azure/machine-learning/machine-learning-data-science-for-beginners-the-5-questions-data-science-answers
グループ化(=クラスタリング)
「どのような構成か」•似た者同士で、班を作ろう• このデータは、このグループに入れよう
https://docs.microsoft.com/ja-jp/azure/machine-learning/machine-learning-data-science-for-beginners-the-5-questions-data-science-answers
ML Studio の使い方
用意するもの
MS アカウント• https://www.microsoft.com/ja-jp/msaccount/signup/default.aspx
ML Studio サインイン• https://studio.azureml.net/
ML Studio~Home 画面
作成済みのワークスペース、学習モデルの一覧
ページ下部には、サンプルやチュートリアルが多数
ML Studio~Studio 画面 (1/4)Experiments
(学習モデル作成)
ML Studio~Studio 画面 (2/4)作成済み
Web サービス一覧
ML Studio~Studio 画面 (3/4)アップロード済み学習用データ(再利用可能)
ML Studio~Studio 画面 (4/4)作成済み学習モデル(再利用可能)
学習モデルの作り方
モデリングの流れ
1 データ入力
2 データ加工
3 初期モデルの決定
4 学習モデルの作成
5 学習結果の測定
6 評価用データを予測
7 未来を予測
モデリングの流れ
1 データ入力 学習に使うデータを用意する
2 データ加工 適切な形式に加工する
3 初期モデルの決定 学習に使うアルゴリズムを決める
4 学習モデルの作成 データ+アルゴリズム
5 学習結果の測定 学習結果を数値で確認
6 評価用データを予測 実際のデータで学習結果を予測
7 未来を予測 サービス化して学習モデルを活用
今日、一番のポイント!
ML Studio で大事な点
「モデリングの流れ」 に沿って進めること• この流れから外れることはありません
モジュールを置くごとに、”Run selected” する•次のモジュールのパラメーター設定するために必須
Run selected したら、”Visualize” する•モデリングが適切かどうかをチェック
(もう一度)モデリングの流れ
1 データ入力 学習に使うデータを用意する
2 データ加工 適切な形式に加工する
3 初期モデルの決定 学習に使うアルゴリズムを決める
4 学習モデルの作成 データ+アルゴリズム
5 学習結果の測定 学習結果を数値で確認
6 評価用データを予測 実際のデータで学習結果を予測
7 未来を予測 サービス化して学習モデルを活用
参考自習のために
今回の資料
機械学習と Azure ML Studio の基本 (この資料)• http://bit.ly/mlstudio20161203
IoTキットハンズオン解説 (ML Studio パート) #1 共通手順• http://bit.ly/mlhol_1_20161203
IoTキットハンズオン解説 (ML Studio パート) #2 回帰分析• http://bit.ly/mlhol_2_20161203
IoTキットハンズオン解説 (ML Studio パート) #3 分類分析• http://bit.ly/mlhol_3_20161203
IoTキットハンズオン解説 (ML Studio パート) #4 グループ化• http://bit.ly/mlhol_4_20161203
“20161203” ですごめんなさい
MS の公式資料
hol-azure-machine-learning• https://github.com/Azure-Readiness/hol-azure-machine-learning
Azure Machine Learning のドキュメント• https://docs.microsoft.com/ja-jp/azure/machine-learning/
初心者向けデータ サイエンス ビデオ• https://docs.microsoft.com/ja-jp/azure/machine-learning/machine-learning-data-science-for-beginners-the-5-questions-data-science-answers
サンプルデータ
Azure Machine Learning Studio におけるサンプル データセットの使用• https://docs.microsoft.com/ja-jp/azure/machine-learning/machine-learning-use-sample-datasets
UC Irvine Machine Learning Repository• http://archive.ics.uci.edu/ml/index.html