本篇文章給大家分享的是有關(guān)ML.NET 0.9的特性有哪些,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
發(fā)展壯大離不開廣大客戶長期以來的信賴與支持,我們將始終秉承“誠信為本、服務(wù)至上”的服務(wù)理念,堅(jiān)持“二合一”的優(yōu)良服務(wù)模式,真誠服務(wù)每家企業(yè),認(rèn)真做好每個細(xì)節(jié),不斷完善自我,成就企業(yè),實(shí)現(xiàn)共贏。行業(yè)涉及銅雕雕塑等,在成都網(wǎng)站建設(shè)、全網(wǎng)營銷推廣、WAP手機(jī)網(wǎng)站、VI設(shè)計(jì)、軟件開發(fā)等項(xiàng)目上具有豐富的設(shè)計(jì)經(jīng)驗(yàn)。
ML.NET 0.9已于上周發(fā)布,距離上次0.8版本的發(fā)布只有一個多月,此次增加的新特性主要包括特征貢獻(xiàn)計(jì)算,模型可解釋性增強(qiáng),ONNX轉(zhuǎn)換對GPU的支持,Visual Studio ML.NET項(xiàng)目模板預(yù)覽,以及API改進(jìn)。
特征貢獻(xiàn)計(jì)算(Feature Contribution Calculation)通過決定每個特征對模型分?jǐn)?shù)的貢獻(xiàn),從而顯示哪些特征在對特別個體的數(shù)據(jù)樣本的模型預(yù)測最有影響力。
當(dāng)你面臨歷史數(shù)據(jù)中有許多特征時(shí)而又想選擇使用最重要的特征時(shí),特征貢獻(xiàn)計(jì)算顯得十分重要。因?yàn)槭褂锰嗟奶卣?尤其是包含對模型沒有影響的特征)會減少模型的性能與準(zhǔn)確性。因此,使用特征貢獻(xiàn)計(jì)算你可以從原始特征集中識別最有影響力的正向與負(fù)向的貢獻(xiàn)。
示例代碼:
// 創(chuàng)建特征貢獻(xiàn)計(jì)算器
// 對已有訓(xùn)練模型參數(shù)的所有特征進(jìn)行計(jì)算貢獻(xiàn)
var featureContributionCalculator = mlContext.Model.Explainability.FeatureContributionCalculation(model.Model, model.FeatureColumn, numPositiveContributions: 11, normalize: false);
// FeatureContributionCalculatingEstimator可被用作管道中的一個步驟
// 被FeatureContributionCalculatingEstimator保存的特征將在FeatureContribution列中
var pipeline = mlContext.Model.Explainability.FeatureContributionCalculation(model.Model, model.FeatureColumn, numPositiveContributions: 11)
.Append(mlContext.Regression.Trainers.OrdinaryLeastSquares(featureColumn: "FeatureContributions"));
輸出結(jié)果可下:
The output of the above code is: Label Score BiggestFeature Value Weight Contribution 24.00 27.74 RoomsPerDwelling 6.58 98.55 39.95 21.60 23.85 RoomsPerDwelling 6.42 98.55 39.01 34.70 29.29 RoomsPerDwelling 7.19 98.55 43.65 33.40 27.17 RoomsPerDwelling 7.00 98.55 42.52
除了特征貢獻(xiàn)計(jì)算之外,排列特征重要性(PFI)與廣義加性模型(GAM)也有加強(qiáng)。
排列特征重要性支持大多數(shù)學(xué)習(xí)任務(wù):回歸,二元分類,多元分類與排序。
排列特征重要性允許你在特征重要性分?jǐn)?shù)上計(jì)算置信區(qū)間,以便可以得到更好的平均值估計(jì)。
廣義加性模型支持特征貢獻(xiàn)計(jì)算,以便你可以迅速看到哪些特征驅(qū)動個體的預(yù)測。
在ML.NET 0.9中通過集成高性能的ONNX運(yùn)行時(shí)庫添加了使用激活GPU的CUDA 10.0運(yùn)行ONNX模型的功能。ONNX模型的GPU支持現(xiàn)在已經(jīng)可以在Windows 64位系統(tǒng)上使用,不久之后將支持Linux與Mac系統(tǒng)。
Visual Studio項(xiàng)目模板現(xiàn)在推出了支持ML.NET的預(yù)覽版本。下載地址
模板涵蓋以下場景:
ML.NET控制臺應(yīng)用程序
ML.NET模型類庫
ML.NET 0.9以前你需要顯示的標(biāo)明列名:
var mlContext = new MLContext();var reader = mlContext.Data.CreateTextReader(new[] { new TextLoader.Column("IsOver50K", DataKind.BL, 0), new TextLoader.Column("Workclass", DataKind.TX, 1) },hasHeader: true);var dataView = reader.Read(dataPath);
現(xiàn)在你可以直接使用泛型:
var mlContext = new MLContext();var dataView = mlContext.Data.ReadFromTextFile(dataPath, hasHeader: true);private class InspectedRow{ [LoadColumn(0)] public bool IsOver50K { get; set; } [LoadColumn(1)] public string Workclass { get; set; } }
通過Calibrator Estimators,除了在評估模型質(zhì)量時(shí)可以獲得分?jǐn)?shù)列之外,還可以得到置信因子。
例如,你可以獲得每個預(yù)測值的概率:
Score - 0.458968 Probability 0.4670409 Score - 0.7022135 Probability 0.3912723 Score 1.138822 Probability 0.8703266
新特性替換了TermLookupTransform,同時(shí)提供了指定值之間匹配的新方法。你可以指定鍵列與值列的匹配關(guān)系,但需保證兩者數(shù)量一致。
允許ML.NET在Windows Nano容器及Windows機(jī)器上運(yùn)行,而無需安裝Visual C++運(yùn)行時(shí)。
在包含模型信息的DataView構(gòu)造器中提供元數(shù)據(jù)支持,比如被編碼為元數(shù)據(jù)的評估指標(biāo)可以通過代碼解析出來,由此能夠使用任何工具進(jìn)行可視化。
以上就是ML.NET 0.9的特性有哪些,小編相信有部分知識點(diǎn)可能是我們?nèi)粘9ぷ鲿姷交蛴玫降?。希望你能通過這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。