.NET開發(fā)人員關(guān)于ML.NET的入門學習
ML.NET一直在微軟的研究部門的工作。這些創(chuàng)新已經(jīng)用于他們自己的產(chǎn)品,如Windows Defender,Microsoft Office(Powerpoint設計理念,Excel圖表推薦),Azure機器學習,PowerBI。 ML.NET旨在提供終端工作流程,以便在機器學習(預處理,特征工程,建模,評估和操作)的各個步驟中將ML用于.NET應用程序。
ML.NET 1.0提供以下關(guān)鍵組件:數(shù)據(jù)表示機器學習任務(分類,回歸,異常檢測等)數(shù)據(jù)特征工程
機器學習模型應該讓分析師的生活更輕松,現(xiàn)在甚至可以構(gòu)建這些模型,因為新框架的設計考慮了AutoML。除了通常的機器學習任務外,ML.NET還支持AutoML。
對于機器學習初學者,Microsoft開發(fā)人員建議從Visual Studio中的ML.NET模型構(gòu)建器和任何平臺上的ML.NET CLI開始。對于可以隨時構(gòu)建模型的場景,AutoML API也非常方便。
使用ML.NET模型構(gòu)建器,只需右鍵單擊即可向應用程序添加機器學習。

在命令行使用ML.NET
還引入了另一個工具ML.NET CLI(命令行工具),它允許使用AutoML和ML.NET生成ML.NET模型。ML.NET CLI快速遍歷特定ML任務的數(shù)據(jù)集(目前支持回歸和分類)并生成最佳模型。
CLI除了生成最佳模型外,還允許用戶為最佳性能模型生成模型訓練和 消費模型代碼。
ML.NET CLI是跨平臺的,是.NET CLI 的全局工具。Visual Studio擴展ML.NET Model Builder 還使用ML.NET CLI提供模型構(gòu)建器功能。
安裝ML.NET CLI:
dotnet tool install -g mlnet
這是使用回歸預測出租車票價的代碼
加載數(shù)據(jù)集
IDataView trainingDataView = mlContext.Data.LoadFromTextFile(TrainDataPath, hasHeader: true);
IDataView testDataView = mlContext.Data.LoadFromTextFile(TestDataPath, hasHeader: true);
運行AutoML二進制分類
ExperimentResult experimentResult = mlContext.Auto().CreateRegressionExperiment(ExperimentTime).Execute(trainingDataView, LabelColumnName, progressHandler: new RegressionExperimentProgressHandler());
模型評估
ITransformer model = experimentResult.BestRun.Model;
并使用測試數(shù)據(jù)集評估其質(zhì)量(taxi-fare-test.csv)。
Regression.Evaluate() 計算已知票價與模型預測值之間的差異,以生成各種指標。
var predictions = trainedModel.Transform(testDataView); var metrics = mlContext.Regression.Evaluate(predictions,scoreColumnName:“Score”);
創(chuàng)建預測引擎
var predEngine = mlContext.Model.CreatePredictionEngine<TaxiTrip, TaxiTripFarePrediction>(model);
計算分數(shù)
var predictedResult = predEngine.Predict(taxiTripSample);
上面是使用Visual Studio內(nèi)部的模型構(gòu)建器以及CLI命令測試AutoML,還有一個API可以在.Net應用程序中使用它,使用非常簡單,添加[ Microsoft.ML.AutoML ] nuget包到項目中就可以使用API 進行工作

ML.Net示例倉庫中有一整套示例。可以重用了Common文件夾中的一些類來通過API使用AutoML 。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
介紹幾個ASP.NET中容易忽略但卻很重要的方法函數(shù)
介紹幾個ASP.NET中容易忽略但卻很重要的方法函數(shù)...2006-09-09
Asp.Net Core MVC項目實現(xiàn)多語言實例(Globalization/Localization)
本篇文章主要介紹了Asp.Net Core MVC項目實現(xiàn)多語言實例(Globalization/Localization) ,具有一定的參考價值,有興趣的可以了解一下2017-06-06
Asp.net中使用Sqlite數(shù)據(jù)庫的方法
Sqlite是最近比較流行的數(shù)據(jù)庫了,擁有比Access高效快速,易操作易實施。完全不需要在客戶端進行任何的配置,只需要在站點中引用入DLL文件即可使用了。2009-11-11
asp.net core mvc實現(xiàn)文件上傳實例
本篇文章主要介紹了asp.net core mvc實現(xiàn)文件上傳實例,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2016-12-12
.NET Core創(chuàng)建一個控制臺(Console)程序
這篇文章主要為大家詳細介紹了.NET Core如何創(chuàng)建一個控制臺程序,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-04-04
asp.net(c#)Enterprise Library 3.0 下載
asp.net(c#)Enterprise Library 3.0 下載...2007-04-04
如何使用Python實現(xiàn)阿拉伯數(shù)字轉(zhuǎn)換成中國漢字
本文提供了一個Python代碼示例,用于將阿拉伯數(shù)字轉(zhuǎn)換為中文漢字表示,代碼定義了數(shù)字到漢字的映射表,并實現(xiàn)了處理不同位數(shù)(如個、十、百、千、萬等)的函數(shù),特別地,處理方式包括對大數(shù)字的分解和轉(zhuǎn)換,以及對連續(xù)零的特殊處理,感興趣的朋友跟隨小編一起看看吧2024-09-09
Asp.Net的FileUpload類實現(xiàn)上傳文件實例
這篇文章主要介紹了Asp.Net的FileUpload類實現(xiàn)上傳文件的方法,以實例形式講述了上傳文件類的具體實現(xiàn)方法,是非常實用的技巧,需要的朋友可以參考下2014-11-11

