摘要:微軟在大會(huì)上興奮地宣布了的預(yù)覽版,這是一種跨平臺(tái)的開(kāi)源機(jī)器學(xué)習(xí)框架。核心組件作為的一部分而發(fā)布今天的代碼倉(cāng)庫(kù)包含用于模型訓(xùn)練和使用的,以及許多常見(jiàn)的機(jī)器學(xué)習(xí)任務(wù)如回歸和分類(lèi)所需要的各種轉(zhuǎn)換和學(xué)習(xí)器。
微軟在Build 2018大會(huì)上興奮地宣布了ML.NET的預(yù)覽版,這是一種跨平臺(tái)的開(kāi)源機(jī)器學(xué)習(xí)框架。ML.NET將讓廣大.NET開(kāi)發(fā)人員可以開(kāi)發(fā)自己的模型,并且將自定義的機(jī)器學(xué)習(xí)融入到其應(yīng)用程序中,無(wú)需之前擁有開(kāi)發(fā)或調(diào)整機(jī)器學(xué)習(xí)模型方面的專(zhuān)業(yè)知識(shí)。
ML.NET最初是在微軟研究中心開(kāi)發(fā)而它的,在過(guò)去的十年已發(fā)展成為一種重要的框架;它用于微軟的許多產(chǎn)品組合中,比如Windows、Bing和Azure等。
有了這第一個(gè)預(yù)覽版,ML.NET能夠支持諸多機(jī)器學(xué)習(xí)任務(wù),比如說(shuō)分類(lèi)(比如文本分類(lèi)和情緒分析)以及回歸(比如趨勢(shì)預(yù)測(cè)和價(jià)格預(yù)測(cè))。除了這些機(jī)器學(xué)習(xí)功能外,ML.NET的這第一個(gè)版本還引入了訓(xùn)練模型的.NET API初稿,使用模型用于預(yù)測(cè),還包括該框架的核心組件,比如學(xué)習(xí)算法、轉(zhuǎn)換和核心的機(jī)器學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)。
ML.NET首先是一個(gè)框架,這意味著它經(jīng)擴(kuò)展后可以添加流行的機(jī)器學(xué)習(xí)庫(kù),比如TensorFlow、Accord.NET和CNTK。我們致力于將開(kāi)發(fā)ML.NET的內(nèi)部功能方面的全部經(jīng)驗(yàn)帶給開(kāi)源界的ML.NET。
綜上所述,ML.NET代表了我們致力于通過(guò).NET讓機(jī)器學(xué)習(xí)變得很出色。
隨著時(shí)間的推移,ML.NET將充分利用流行的深度學(xué)習(xí)庫(kù)(比如TensorFlow、Caffe2和CNTK)以及一般的機(jī)器學(xué)習(xí)庫(kù)(比如Accord.NET),從而支持其他機(jī)器學(xué)習(xí)場(chǎng)景,比如推薦系統(tǒng)、異常檢測(cè)及其他方法(比如深度學(xué)習(xí))。
ML.NET還允許采用代碼優(yōu)先的方法,補(bǔ)充了Azure機(jī)器學(xué)習(xí)和認(rèn)知服務(wù)提供的體驗(yàn),并支持應(yīng)用程序本地部署以及自行構(gòu)建模型的功能。
ML.NET核心組件
ML.NET作為.NET Foundation的一部分而發(fā)布;今天的代碼倉(cāng)庫(kù)包含用于模型訓(xùn)練和使用的.NET C# API,以及許多常見(jiàn)的機(jī)器學(xué)習(xí)任務(wù)(如回歸和分類(lèi))所需要的各種轉(zhuǎn)換和學(xué)習(xí)器。
ML.NET旨在提供E2E工作流程,以便在預(yù)處理、特征工程、建模、評(píng)估和操作化等過(guò)程中將機(jī)器學(xué)習(xí)融入到.NET應(yīng)用程序中。
ML.NET本身支持機(jī)器學(xué)習(xí)各方面所需要的類(lèi)型和運(yùn)行時(shí)環(huán)境,包括核心數(shù)據(jù)類(lèi)型、可擴(kuò)展流水線(xiàn)、高性能數(shù)學(xué)、面向異構(gòu)數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)和工具支持等。
下面這張表顯示了作為ML.NET 0.1的一部分發(fā)布的完整組件列表。
我們旨在讓ML.NET的API具有通用性,那樣CNTK、Accord.NET和TensorFlow等其他框架以及其他庫(kù)就可以通過(guò)單一的共享式API來(lái)加以使用。
安裝入門(mén)
想開(kāi)始使用ML.NET,請(qǐng)使用下列命令從CLI來(lái)安裝ML.NETNuGet:
從軟件包管理器來(lái)安裝:
您可以直接從https://github.com/dotnet/machinelearning來(lái)構(gòu)建框架。
借助ML.NET實(shí)現(xiàn)情緒分類(lèi)
訓(xùn)練您自己的模型
這個(gè)簡(jiǎn)單的代碼片段用來(lái)訓(xùn)練情緒分類(lèi)模型(完整的代碼片段可在此:https://github.com/dotnet/machinelearning/blob/master/test/Microsoft.ML.Tests/Scenarios/Scenario3_SentimentPrediction.cs找到)。
讓我們更詳細(xì)地討論這個(gè)方面。我們創(chuàng)建了一個(gè)LearningPipeline,它將負(fù)責(zé)封裝數(shù)據(jù)加載、數(shù)據(jù)處理/特征化和學(xué)習(xí)算法。這些是訓(xùn)練機(jī)器學(xué)習(xí)模型所需要的幾個(gè)步驟,該模型讓我們得以拿來(lái)輸入數(shù)據(jù)后輸出預(yù)測(cè)結(jié)果。
這條流水線(xiàn)的第一部分是TextLoader,它將來(lái)自我們訓(xùn)練文件的數(shù)據(jù)加載到流水線(xiàn)。然后,我們使用TextFeaturizer將SentimentText列轉(zhuǎn)換成名為Features的數(shù)字向量,該數(shù)字向量可以被機(jī)器學(xué)習(xí)算法所使用(因?yàn)樗鼰o(wú)法接受文本輸入)。這是我們的預(yù)處理/特征化步驟。
FastTreeBinaryClassifier是我們將用于該流水線(xiàn)中的決策樹(shù)學(xué)習(xí)器。就像特征化步驟那樣,嘗試ML.NET中不同的學(xué)習(xí)器并更改其參數(shù)有望找到更好的結(jié)果。 PredictedLabelColumnOriginalValueConverter將模型的預(yù)測(cè)標(biāo)簽轉(zhuǎn)換回成原始值/格式。
pipeline.Train
將經(jīng)過(guò)訓(xùn)練的模型用于預(yù)測(cè)
為了得到預(yù)測(cè)結(jié)果,我們對(duì)新數(shù)據(jù)使用model.Predict()。請(qǐng)注意,輸入數(shù)據(jù)是一個(gè)字符串,模型包含特征化,所以我們的流水線(xiàn)在訓(xùn)練和預(yù)測(cè)期間都保持同步。我們不必編寫(xiě)專(zhuān)門(mén)用于預(yù)測(cè)的預(yù)處理/特征化代碼。
前方的道路
我們渴望將許多功能添加到ML.NET中,但我們很想了解哪些功能最適合您的要求。目前我們正在探索的領(lǐng)域包括:
另外的機(jī)器學(xué)習(xí)任務(wù)和場(chǎng)景
使用TensorFlow和CNTK的深度學(xué)習(xí)
ONNX支持
在Azure上橫向擴(kuò)展
更好的GUI,以簡(jiǎn)化機(jī)器學(xué)習(xí)任務(wù)
與VS工具集成,用于AI
針對(duì).NET的語(yǔ)言創(chuàng)新
歡迎加入本站公開(kāi)興趣群商業(yè)智能與數(shù)據(jù)分析群
興趣范圍包括各種讓數(shù)據(jù)產(chǎn)生價(jià)值的辦法,實(shí)際應(yīng)用案例分享與討論,分析工具,ETL工具,數(shù)據(jù)倉(cāng)庫(kù),數(shù)據(jù)挖掘工具,報(bào)表系統(tǒng)等全方位知識(shí)
QQ群:81035754
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/4759.html
摘要:十三套框架助你玩轉(zhuǎn)機(jī)器學(xué)習(xí)技術(shù)在今天的文章中,我們將共同了解十三款機(jī)器學(xué)習(xí)框架,一部分去年剛剛發(fā)布另一部分則在不久前進(jìn)行了全部升級(jí)。目前該項(xiàng)目正積極添加對(duì)的支持能力,不過(guò)此類(lèi)項(xiàng)目一般更傾向于直接面向各承載機(jī)器學(xué)習(xí)任務(wù)的主流環(huán)境。 導(dǎo)讀過(guò)去幾年以來(lái),機(jī)器學(xué)習(xí)已經(jīng)開(kāi)始以前所未有的方式步入主流層面。這種趨勢(shì)并非單純由低成本云環(huán)境乃至極為強(qiáng)大的GPU硬件所推動(dòng); 除此之外,面向機(jī)器學(xué)習(xí)的可用框架也迎...
摘要:年月宣布支持時(shí)間延長(zhǎng)到年。更詳細(xì)的發(fā)布列表參閱官網(wǎng)的版本號(hào)分為三段,形如。其中表示大版本號(hào),一般當(dāng)整體重寫(xiě),或出現(xiàn)不向后兼容的改變時(shí),增加表示功能更新,出現(xiàn)新功能時(shí)增加表示小的改動(dòng)如修復(fù)了某個(gè),只要有修改就增加。年公司正式發(fā)布。 < 返回索引頁(yè) Python語(yǔ)言簡(jiǎn)介 Python介紹及發(fā)展 介紹 Python 官方網(wǎng)站:https://www.python.org/, 大家可以到此處下...
摘要:對(duì)云術(shù)語(yǔ)模糊不清我們可以幫你厘清網(wǎng)站從到的云計(jì)算術(shù)語(yǔ)表對(duì)最流行的云計(jì)算術(shù)語(yǔ)逐一進(jìn)行了定義。云計(jì)算云計(jì)算通過(guò)網(wǎng)絡(luò)通常是互聯(lián)網(wǎng)交付信息技術(shù)服務(wù)。云計(jì)算常常被稱(chēng)為是一種顛覆性技術(shù)。 對(duì)云術(shù)語(yǔ)模糊不清?我們可以幫你厘清!Solutions Review網(wǎng)站從A到Z的云計(jì)算IT術(shù)語(yǔ)表對(duì)最流行的云計(jì)算術(shù)語(yǔ)逐一進(jìn)行了定義。A基于廣告的定價(jià)模式――這種定價(jià)模式將服務(wù)低價(jià)或免費(fèi)提供給客戶(hù),因廣告連同服務(wù)提供給...
閱讀 2936·2021-10-21 09:38
閱讀 2866·2021-10-11 10:59
閱讀 3198·2021-09-27 13:36
閱讀 1740·2021-08-23 09:43
閱讀 886·2019-08-29 14:14
閱讀 3105·2019-08-29 12:13
閱讀 3256·2019-08-29 12:13
閱讀 364·2019-08-26 12:24