什麼是 Azure 機器學習,以及為什麼要使用它?
介紹
機器學習專案的生命週期由 Azure 機器學習雲服務驅動。機器學習專家、資料科學家以及工程師都可以在他們的日常工作流程中使用它:在訓練和部署模型的同時執行 MLOps。
這是一個開源平臺,包括 Pytorch、TensorFlow、sci-kit-learn,或者我們在 Azure 機器學習中組合的模型都是可選項。我們可以使用 MLOp 來觀察、重新訓練和部署模型。在本文中,我們將探討 Azure 機器學習及其用法。
認知服務和 Azure 機器學習服務
Azure 表儲存是微軟首個具有商業釋出日期的產品。自助式 MLOps 是 Azure 認知服務的一部分,當使用時,它還可以自動部署、監控和微調 ML 模型。
表儲存是一個完全託管的雲端儲存解決方案。它提供表、表空間、索引以及表本身以及這些表空間、索引和表的分析工具的儲存。
此外,R、Tensor、Microsoft Cognitive Toolkit 以及其他資料技術和機器學習 API 作為自助式雲服務透過 Azure 機器學習提供。該服務支援微軟眾多合作伙伴的所有基本 ML 引擎。任何這些 API 都允許我們快速共享模型的資料並利用其任何功能,例如標記或分類我們的資料。
微軟最近擴充套件了 Azure 機器學習提供的服務集,其中包括認知 API。使用者可以藉助認知 API 開發預測模型、顯示圖形、註釋照片、翻譯文字或語音,或最佳化影片內容。
Azure 可以解決的商業解決方案
鑑於企業收集的資訊量越來越大,ML 是一種新技術,可以幫助各個行業和企業從收集的資訊中獲得見解。
Azure ML 在金融服務領域的功能可以幫助銀行和金融服務提供商更好地瞭解他們的客戶,評估他們的信用度,並識別最有可能實施欺詐或其他金融犯罪的人。例如,Azure ML 可以識別開設多個賬戶或試圖在不同銀行和保險公司之間轉移資金的個人。
組織可以使用 ML 來識別有多少客戶訪問了商店,他們購買了什麼,以及他們多久退回一次商品。交通運輸中的 ML 有助於最佳化路線和交付,找出如何最好地滿足城市居民的需求等等。
如果我們有大量資料來訓練我們的 ML 模型,Microsoft Azure 的機器學習 API 有助於加快這一過程。ML API 提供強大的 ML 工具,可以幫助我們建立智慧應用程式並從現有資料中學習。

開發和使用機器學習模型
假設我們可以直接在自己的資料中心中將機器學習模型交付給 Azure 是企業常犯的一個錯誤。為了避免任何效能問題,ML 需要在 Azure 資料中心具有即時可用性。
為了確保任何模型都能可靠地部署到 Azure,建議我們將它作為這個新程式碼庫的一部分進行開發和部署。我們的程式碼庫的原始碼應該針對 Visual Studio IDE 中的 Microsoft Azure ML 工具,以便我們的資料科學團隊能夠將他們的新模型作為新程式碼庫的一部分發布。建立新模型時,我們應該關注 Azure ML 工具,並確保新模型的程式碼庫是使用 Azure ML 工具構建的。
將我們的新模型包含在一個 Web 服務中,我們的資料科學團隊可以將其上傳到 Azure,這是另一個最佳實踐。我們需要一個遠端 RESTful 服務和 Web 服務上的服務發現選項,以便我們的資料科學團隊能夠建立 Web 服務並連線到 Azure。如果我們還可以將 RESTful Web 服務託管在 Azure 上,那就更好了。
避免建立新的 SQL 資料庫來儲存模型是另一個好習慣。傳統的 NoSQL 資料庫是安裝 ML 模型的更快方法。為此,請建立一個新的 NoSQL 資料庫並將其連線到 Azure ML。虛擬化層(如 Azure 儲存)可用於僅部署一次我們的模型,並在整個組織中使其可用。
Microsoft 還提供多種建立和部署 ML 模型的工具。Microsoft Cognitive Toolkit 是建立和使用 ML 模型最有效的資源之一 (CNTK)。Azure ML 服務中 Microsoft AI 背後的 ML 工具包稱為 CNTK。為了幫助我們建立 ML 模型,CNTK 包含一個易於使用的預訓練原型。
此模型可以幫助我們為我們的應用程式選擇理想的 ML 模型。我們可以使用 CNTK 的基準模式在各種工作負載和情況下評估模型的效能。
另一個免費的 CNTK 工具是 CNTK Design Viewer,它可以幫助我們理解我們的 ML 模型。Design Viewer 允許我們研究我們的程式,並檢視 CNTK 模型如何改變訓練資料之間的連線。
此外,Microsoft 為每個庫提供預訓練的 CNTK 模型。這個預訓練模型可以作為建立應用程式的起點。透過這樣做,我們可以評估我們的應用程式,並觀察它在針對訓練模型執行時的效能。
結論
Azure ML Insights 為我們提供了對 Azure ML 資料的詳細檢視,以幫助我們瞭解哪些因素會影響模型的效能,哪些變數在我們的資料中被過度表示,以及給定應用程式的理想模型是什麼樣的。只有透過 Azure,我們才能訪問最先進的機器學習功能。使用 Azure Databricks 和 Azure 機器學習快速有效地建立、訓練和部署我們的機器學習模型。