情報メディア基礎ゼミ/2019/第5回
をテンプレートにして作成
開始行:
**機械学習による図形推定(学習モデル作成編) [#fe389f61]
前回は作成済みの学習モデルを読み込んで使用したが,今回はM...
***学習データの作成 [#w8ce39e2]
学習データ作成用のUIを作る必要がある.以下の例では事前に...
#ref(../第4回/learning.gif,50%);
***学習データの読み込み [#baed2ded]
前回の,ストロークを特徴ベクトルに変換しラベル(正解)が...
mLContext = new MLContext();
IDataView trainingData = mLContext.Data.LoadFromEnumerab...
DataOperationsCatalog.TrainTestData splitDataView =
mLContext.Data.TrainTestSplit(trainingData, testFraction...
1で,ML.netで使用するためデータを読み込む.mLContext.Data...
2で,データをトレーニング用と評価テスト用に分ける.0.2で2...
***パイプラインの作成 [#e8fd6eca]
ML.netでは入力されたデータを学習に使用するデータへの加工→...
などの作業をパイプラインとして定義(作成)しておく.また...
var pipeline = mLContext.Transforms.Concatenate("Feature...
上記コードではまず,Transforms.Concatenateで,データ(Str...
続けて,.Appendで次の作業を登録する.ここではSdcaLogistic...
SdcaLogisticRegressionでは,データの"Label"属性をラベル(...
***学習モデルの作成 [#cba212d5]
前述の作成したパイプラインに学習データのトレーニング分を...
strokePredictModel = pipeline.Fit(splitDataView.TrainSet);
***学習モデルの保存 [#q6c66fd4]
作成した学習モデルはzipファイルで保存できる.保存する際は...
if (strokePredictModel != null)
{
Windows.Storage.StorageFolder storageFold...
Windows.Storage.StorageFile modelFile = a...
IDataView data = mlContext.Data.LoadFromE...
using (System.IO.Stream stream = await mo...
{
mlContext.Model.Save(strokePredictMod...
stream.Flush();
}
}
***学習モデルの評価 [#g5bc2778]
必須ではないが,テスト用のデータで作成した学習モデルの評...
IDataView predictions = strokePredictModel.Transform(spl...
CalibratedBinaryClassificationMetrics metrics =
mLContext.BinaryClassification.Evaluate(predictions, "La...
AddMessage("");
AddMessage("Model quality metrics evaluation");
AddMessage("--------------------------------");
AddMessage($"Accuracy: {metrics.Accuracy:P2}");
AddMessage($"Auc: {metrics.AreaUnderRocCurve:P2}");
AddMessage($"F1Score: {metrics.F1Score:P2}");
AddMessage("=============== End of model evaluation ====...
**提出方法 [#l8c978b9]
完成した最終的なストロークアプリケーションの.slnファイル...
締め切り:
7月18日(木)18時
\\nas002.term.usmc.dendai.ac.jp\授業用ワークスペース\千住...
終了行:
**機械学習による図形推定(学習モデル作成編) [#fe389f61]
前回は作成済みの学習モデルを読み込んで使用したが,今回はM...
***学習データの作成 [#w8ce39e2]
学習データ作成用のUIを作る必要がある.以下の例では事前に...
#ref(../第4回/learning.gif,50%);
***学習データの読み込み [#baed2ded]
前回の,ストロークを特徴ベクトルに変換しラベル(正解)が...
mLContext = new MLContext();
IDataView trainingData = mLContext.Data.LoadFromEnumerab...
DataOperationsCatalog.TrainTestData splitDataView =
mLContext.Data.TrainTestSplit(trainingData, testFraction...
1で,ML.netで使用するためデータを読み込む.mLContext.Data...
2で,データをトレーニング用と評価テスト用に分ける.0.2で2...
***パイプラインの作成 [#e8fd6eca]
ML.netでは入力されたデータを学習に使用するデータへの加工→...
などの作業をパイプラインとして定義(作成)しておく.また...
var pipeline = mLContext.Transforms.Concatenate("Feature...
上記コードではまず,Transforms.Concatenateで,データ(Str...
続けて,.Appendで次の作業を登録する.ここではSdcaLogistic...
SdcaLogisticRegressionでは,データの"Label"属性をラベル(...
***学習モデルの作成 [#cba212d5]
前述の作成したパイプラインに学習データのトレーニング分を...
strokePredictModel = pipeline.Fit(splitDataView.TrainSet);
***学習モデルの保存 [#q6c66fd4]
作成した学習モデルはzipファイルで保存できる.保存する際は...
if (strokePredictModel != null)
{
Windows.Storage.StorageFolder storageFold...
Windows.Storage.StorageFile modelFile = a...
IDataView data = mlContext.Data.LoadFromE...
using (System.IO.Stream stream = await mo...
{
mlContext.Model.Save(strokePredictMod...
stream.Flush();
}
}
***学習モデルの評価 [#g5bc2778]
必須ではないが,テスト用のデータで作成した学習モデルの評...
IDataView predictions = strokePredictModel.Transform(spl...
CalibratedBinaryClassificationMetrics metrics =
mLContext.BinaryClassification.Evaluate(predictions, "La...
AddMessage("");
AddMessage("Model quality metrics evaluation");
AddMessage("--------------------------------");
AddMessage($"Accuracy: {metrics.Accuracy:P2}");
AddMessage($"Auc: {metrics.AreaUnderRocCurve:P2}");
AddMessage($"F1Score: {metrics.F1Score:P2}");
AddMessage("=============== End of model evaluation ====...
**提出方法 [#l8c978b9]
完成した最終的なストロークアプリケーションの.slnファイル...
締め切り:
7月18日(木)18時
\\nas002.term.usmc.dendai.ac.jp\授業用ワークスペース\千住...
ページ名: