Microsoft Azure 高校生のための Azure Machine Learning By M. Takezawa
機械学習 (Machine Learning) とは 機械学習とは 機械にデータを学習させ データに潜むパターンや特性を発見し予測させることです Microsoft Azure Machine Learning とは Microsoft 社が提供する Azure の機能の一つであり 機械学習を用いたデータ分析をプログラミング手法を意識せず 視覚的に構築できるクラウドサービスです ただし,R や Python のスクリプトを記述するためのモジュールも用意してあります ここでは 回帰分析を例に R でのデータ分析と機械学習を用いたデータ分析を比較します
Microsoft Azure Machine Learningとは
Microsoft Azure Machine Learning とは Azure での Machine Learning の概要 ( 英語版 ) XYZW :Module Training Experiment Predictive Experiment Built in ML Algorithms Test Data Data for Evaluate Train Model Score Model Evaluate Model
Microsoft Azure Machine Learning とは Azure での Machine Learning の概要 XYZW : モジュール名 学習実験 : 機械に学習させる 組込アルゴリズム 学習用データ 予測実験 : 計算を実行する 評価用データ モデルの学習 モデルの予測 モデルの評価
Microsoft Azure Machine Learning とは 学習実験 (Training Experiment) XYZW : モジュール名 [ xyzw ]: メニュー名 アルゴリズムの選択 [Machine Learning] [Initialize Model] 組込アルゴリズム 学習用データ 学習用データの選択前操作 (Preprocess) 事前にいろいろ加工する ( 前操作 ) 不必要な列や行の削除欠損値の処理など [Data Transformation] [Manipulation] モデル学習の選択 [Machine Learning] [Train] モデルの学習 学習済みモデルとして保存モデルの予測データの分析 ( 予測 ) 選択 右クリック [Save as Trained Model] [Machine Learning] [Score] よく使う操作 : 実行 :RUN ボタン実行結果の可視化 : モジュールを右クリックで Visualize
Microsoft Azure Machine Learning とは 予測実験 (Predictive Experiment) XYZW : モジュール名 [ xyzw ]: メニュー名 データの分析 ( 予測 ) [Machine Learning] [Score] 評価用データ [DATASETS] : [New] アップロード モデルの予測 データの書き出し (csv など ) Convert to CSV [Data Format Conversions] [Convert to CSV] [Download] モデルの評価 データの評価 [Machine Learning] [Evaluate] よく使う操作 : 実行 :RUN ボタン実行結果の可視化 : モジュールを右クリックで Visualize
Microsoft Azure Machine Learning の操作 Azure での Machine Learning のログイン方法 Azure portal へのログイン方法 http://portal.azure.com/ もしくは検索ワード入力 :MLstudio Azure Machine Learning のログイン方法 https://studio.azureml.net/ Login ID : ******@manavi-i.com Password: *************** (Password は自分用に変更 )
Microsoft Azure Machine Learning の操作 新規の Experiment 作成 https://studio.azureml.net/ NEW を選択
Microsoft Azure Machine Learning の操作 新規の Experiment 作成 Blank Experiment クリック
Microsoft Azure Machine Learning の操作 空の Experiment の出現 メニュー キャンバス 空の Experiment には メニュー キャンバス の 2 画面構成 この空のキャンバスにいろいろなモジュールを配置する 次のスライドを参考のこと
回帰分析 1( 学習用データ :pop.csv, 評価用データ :pop2.csv) pop.csv と pop2.csv の読み込み 学習用データ 評価用データ pop.csv:2000-2010 までの人口データ pop2.csv:2011~2020 までの空のデータ [DATASETS] [New] アップロード
回帰分析 1( 学習用データ :pop.csv, 評価用データ :pop2.csv) 学習用データ評価用データ pop.csv:2000-2010までの人口データ pop2.csv:2011~2020までの空のデータ 1 XYZW : モジュール名 [ xyzw ]: メニュー名 学習用 評価用データの選択 1 アルゴリズムの選択 モデル学習の選択 1 学習用データ 1 評価用データ 外部ファイルとして読み込み後 [Saved Datasets] [My Datasets] [pop, pop2] 外部ファイル読込は前のスライドで 右クリックで [Visualize] で確認 データの分析 ( 予測 ) 説明変数 :year データの評価 目的変数 :number 線型単回帰
回帰分析 1( 学習用データ :pop.csv, 評価用データ :pop2.csv) 1 学習実験 データの配置 人口データ分析 XYZW : モジュール名 [ xyzw ]: メニュー名 2 アルゴリズムの選択 [Machine Learning] [Initialize Model] [Regression] 2 1 説明変数 :year 目的変数 :number 3 モデル学習 [Machine Learning] [Train] 3 予測したい列 ( 目的変数 ) を設定 Train Model を選択 [Launch column selector] number( 目的変数 ) 学習済みモデルとして保存する場合 : Train Model を右クリック [Save as Trained Model] 5 2 4 3 3 1 4 5 4 5 4 モデルの予測 : [Machine Learning] [Score] 5 Score Model を右クリック 次のスライド モデルの評価 [Machine Learning] [Evaluate] Evaluate Model を右クリック 2 枚後のスライドへ 実行 :RUN ボタン 実行結果の可視化 : モジュールを右クリックで [Visualize]
回帰分析 1( 学習用データ :pop.csv, 評価用データ :pop2.csv) 学習実験 4 人口データ分析 Scored Labels: モデル学習で計算 ( 予測 ) された数値 Score Model を右クリック Scored Labels この Scored Labels の意味は 2000-2010 までの人口データから分析した 2011~2020 までの人口の予想値
回帰分析 1( 学習用データ :pop.csv, 評価用データ :pop2.csv) 学習実験 5 予測精度の確認 人口データ分析 Evaluate Model 平均絶対誤差 :0 に近いほど分析精度は高い を右クリック 二乗平均平方根誤差 :0に近いほど分析精度は高い相対絶対誤差 :0に近いほど分析精度は高い(0~1) 相対二乗誤差 :0に近いほど分析精度は高い(0~1 ) 決定係数 :1に近いほど分析精度は高い(0~1)
回帰分析 2( 学習用 評価用データ :Automobile price data(raw)) 学習用 評価用データ Automobile price data(raw): 自動車のデータ分析 XYZW : モジュール名 1 5 1 2 1 [ xyzw ]: メニュー名 学習用 評価用データの選択 [Saved Datasets] [Samples] [Automobile price data(raw)] 3 4 説明変数 :make, fuel-type, num-of-doors, engine-size, horsepower. 6 目的変数 :price 7 説明変数 :1, 目的変数 :1 単回帰分析 8 説明変数 :2 以上, 目的変数 :1 重回帰分析
回帰分析 2( 学習用 評価用データ :Automobile price data(raw)) 入力データの前処理 [Data Transformation] [Manipulation] XYZW : モジュール名 1 Data Transformation Manipulation 2 2 利用する列の選択 Select Columns in Dataset を選択 Launch column selector 説明 目的変数をすべて選択 RUN 3 2 3 2 3 3 欠損値の修正 ( 行全体の除去の場合 ) Clean Missing Data を選択 Cleaning Mode(Remove entire row) RUN その他の方法 列の除去, 平均値での置換など 実行結果の可視化 : モジュールを右クリックで [Visualize]
回帰分析 2( 学習用 評価用データ :Automobile price data(raw)) 精度の評価 精度の評価のために ホールドアウト法 を用いる XYZW : モジュール名 [ xyzw ]: メニュー名 4 4 4 [Data Transformation] [Sample and Split] 学習用データと評価用データを分離する Split Data を選択 Fraction of Row in the First output Dataset 分離率の % を代入 (0.7 など ) RUN 実行結果の可視化 : モジュールを右クリックで Visualize
回帰分析 2( 学習用 評価用データ :Automobile price data(raw)) 学習実験 学習用 評価用データ Automobile price data(raw): 自動車のデータ分析 XYZW : モジュール名 [ xyzw ]: メニュー名 5 アルゴリズムの選択 [Machine Learning] [Initialize Model] [Regression] 5 6 モデル学習 [Machine Learning] [Train] モデルの予測 : [Machine Learning] [Score] 6 予測したい列 ( 目的変数 ) を設定 Train Model を選択 [Launch column selector] price( 目的変数 ) 学習済みモデルとして保存する場合 : Train Model を右クリック [Save as Trained Model] 6 7 実行結果の可視化 : モジュールを右クリックで Visualize 8 7 8 Score Model を右クリック 次のスライド モデルの評価 [Machine Learning] [Evaluate] Evaluate Model を右クリック 2 枚後のスライドへ
回帰分析 2( 学習用 評価用データ :Automobile price data(raw)) 学習実験 Automobile price data(raw): 自動車のデータ分析 Score Model を右クリック Price: 元のデータ,Scored Labels: モデル学習で計算 ( 予測 ) された数値 Price Scored Labels
回帰分析 2( 学習用 評価用データ :Automobile price data(raw)) 学習実験 Automobile price data(raw): 自動車のデータ分析 Evaluate Model を右クリック 予測精度の確認 平均絶対誤差 :0に近いほど分析精度は高い二乗平均平方根誤差 :0に近いほど分析精度は高い相対絶対誤差 :0に近いほど分析精度は高い(0~1) 相対二乗誤差 :0に近いほど分析精度は高い(0~1 ) 決定係数 :1に近いほど分析精度は高い(0~1)
回帰分析 3( 異なるアルゴリズムで比較する ) 回帰分析 デシジョンフォレスト回帰分析との比較 Automobile price data(raw): 自動車のデータを例に Split Data Linear Regression Train Model Score Model Decision forest Regression Train Model Score Model デシジョンフォレスト回帰分析とは 通常の多項式に基づいた回帰分析とは異なり 決定木 ( デシジョンツリー ) を基礎概念として回帰分析するアルゴリズムである ビッグデータ時代に相応しい機械学習の方法として最近注目されている 参考 : ランダムフォレスト (Random Forest) Evaluate Model
回帰分析 3( 異なるアルゴリズムで比較する ) 決定木 (Decision Tree) とは 説明変数の値をある基準にもとづいて分岐 ( 木構造 ) させ, 判別や予測 のモデルを構築する If-Then のルールで表すことが出来る 精度はやや落ちる デシジョンフォレスト回帰分析とは : 通常の多項式に基づいた回帰分析とは異なり 決定木 ( デシジョンツリー ) を基礎概念として回帰分析するアルゴリズムである ビッグデータ時代に相応しい機械学習の方法として最近注目されている 参考 : ランダムフォレスト (Random Forest) R データセットの cars より
回帰分析 3( 異なるアルゴリズムで比較する ) 決定木 (Decision Tree) とは 回帰直線 回帰木
回帰分析 3( 異なるアルゴリズムで比較する ) 回帰分析 デシジョンフォレスト回帰分析 : 精度の比較 上 : 線型回帰下 : デシジョンフォレスト回帰 右側に [Decision Forest Regression] のアルゴリズムを追加する