當前位置:
首頁 > 最新 > AI:亞馬遜、微軟、谷歌機器學習服務平台比較

AI:亞馬遜、微軟、谷歌機器學習服務平台比較

對於大多數企業來說,機器學習似乎與火箭科學接近,昂貴且對人才的要求頗高。如果你想建立一個Netflix的推薦系統,它確實是。但讓一切都成為服務的趨勢影響了這個複雜的領域。如果你是數據科學的新手只想抓住一個小小的成果,你就可以啟動一個沒有多少投資的ML計劃,這將是正確的選擇。

其中一個最鼓舞人心的故事是關於一個日本農民的故事,他決定決定自動分揀黃瓜來幫助他的父母。不像那些關於大型企業的故事,這個人既沒有機器學習方面的專業知識,也沒有龐大的預算。但他確實設法熟悉了TensorFlow,並深入學習認識不同類別的黃瓜。

通過使用機器學習雲服務,您可以開始構建您的第一個工作模型,從相對較小團隊的預測中獲得有價值的見解。我們已經討論過機器學習策略。現在讓我們來看看市場上最好的機器學習平台,並考慮一些基礎設施的決定。

機器學習作為一種服務是什麼?

機器學習即服務(MLaaS)是涵蓋大多數基礎設施問題(如數據預處理,模型培訓和模型評估)以及進一步預測的自動化和半自動化雲平台的總體定義。通過REST api,可以將預測結果與內部IT基礎結構聯繫起來。

亞馬遜機器學習服務、Azure機器學習和Google Cloud AI是三種領先的雲MLaaS服務,允許在很少或沒有數據科學專業知識的情況下進行快速模型培訓和部署。如果用可用的軟體工程師組建一個本土數據科學團隊,應首先考慮這些問題。看看我們的數據科學團隊結構故事,以更好地了解角色分布。

在本文中,我們將首先概述亞馬遜、谷歌和微軟主要的機器學習即服務平台,並將通過比較這些供應商支持的機器學習API來跟蹤它。請注意,這個概述並不是要提供何時和如何使用這些平台的詳盡說明,而是在開始閱讀文檔之前要查找的內容。

用於自定義預測分析任務的機器學習服務

Amazon ML的預測分析

亞馬遜機器學習服務有兩個層面:Amazon ML的預測分析和數據科學家的SageMaker工具。

亞馬遜機器學習預測分析是市場上最自動化的解決方案之一,最適合截止日期敏感的操作。該服務可以載入來自多個來源的數據,包括Amazon RDS,Amazon Redshift,CSV文件等。所有數據預處理操作都是自動執行的:該服務標識哪些欄位是分類的,哪些是數字的,並且不要求用戶選擇進一步數據預處理的方法(降維和白化)。

Amazon ML的預測能力限於三種選擇:二元分類,多類分類和回歸。也就是說,這個Amazon ML服務不支持任何無監督的學習方法,用戶必須選擇一個目標變數在訓練集中標記它。而且,用戶不需要知道任何機器學習方法,因為Amazon在查看提供的數據後自動選擇它們。

這個高度自動化的水平既是亞馬遜ML使用的優勢也是劣勢。如果您需要一個完全自動化但有限的解決方案,該服務可以符合您的期望。如果沒有,那就是SageMaker。

亞馬遜SageMaker和基於框架的服務

SageMaker是一個機器學習環境,通過提供快速建模和部署工具來簡化數據科學家的工作。例如,它提供了Jupyter,一個創作筆記本,可以簡化數據瀏覽和分析,而無需伺服器管理麻煩。亞馬遜也有內置演算法,針對分散式系統中的大型數據集和計算進行了優化。這些包括:

內置的SageMaker方法與Amazon建議的ML API很大程度上相交,但是在這裡它允許數據科學家使用它們並使用自己的數據集。

如果您不想使用這些功能,您可以添加自己的方法,並通過SageMaker利用其部署功能運行模型。或者,您可以將SageMaker與TensorFlow和MXNet集成深度學習庫。

一般來說,亞馬遜機器學習服務為經驗豐富的數據科學家和那些只需要完成工作而不深入數據集準備和建模的人員提供了足夠的自由。對於那些已經在使用亞馬遜環境並且不打算轉移到其他雲供應商的公司來說,這將是一個堅實的選擇。

微軟 Azure機器學習工作室

Azure機器學習的目的是為新手和有經驗的數據科學家建立一個強大的遊樂場。微軟的ML產品名單與亞馬遜的產品相似,但就現在而言,Azure在現成演算法方面似乎更為靈活。

Azure提供的服務可以分為兩大類:Azure機器學習工作室和Bot服務。讓我們來看看AzureML Studio的內幕。我們將在專用於特定API和工具的部分返回到Bot Service。

ML Studio是主要的MLaaS包。幾乎所有AzureML Studio中的操作都必須手動完成。這包括數據探索,預處理,選擇方法和驗證建模結果。

使用Azure接近機器學習需要一些學習曲線。但最終導致對該領域所有主要技術的更深入的了解。另一方面,Azure ML支持圖形界面以可視化工作流中的每個步驟。也許使用Azure的主要好處是可以使用各種演算法。 Studio支持大約100種處理分類(二元+多分類)、異常檢測、回歸、推薦和文本分析的方法。值得一提的是,該平台有一個聚類演算法(K-means)。

Azure ML的另一大部分是CortanaIntelligence Gallery。它是由社區提供的機器學習解決方案的集合,供數據科學家探索和重用。 Azure產品是從機器學習入手並將其功能引入新員工的強大工具。

Google預測API

Google在兩個層面上提供AI服務:精明的數據科學家的機器學習引擎和高度自動化的Google預測API。不幸的是,谷歌預測API最近已被棄用,谷歌將在2018年4月30日停止使用。

這個失敗的Predicion API類似於Amazon ML,其簡約的方法縮小了兩個主要問題:分類(二進位和多類)和回歸。經過訓練的模型可以通過REST API介面進行部署。

Google並沒有公開哪些演算法被用於繪製預測,也沒有讓工程師自定義模型。另一方面,Google的環境是在緊迫的期限內進行機器學習的最佳時機,也是最早啟動ML計劃的環境。但似乎這款產品並沒有Google的預期那麼受歡迎。使用Prediction API的用戶將不得不使用其他平台來「重新創建現有模型」,,就像「生命的盡頭」常見問題所暗示的那樣。

所以,會發生什麼呢?

谷歌雲機器學習引擎

預測API的高度自動化是以靈活性為代價的。 Google ML Engine正好相反。它迎合了經驗豐富的數據科學家,非常靈活,並建議使用TensorFlow的雲基礎設施作為機器學習驅動程序。所以,ML Engine原則上和SageMaker非常相似。

TensorFlow是另一個Google產品,它是一個開源的機器學習庫,包含各種數據科學工具,而不是ML-as-a-service。它沒有可視化界面,TensorFlow的學習曲線會非常陡峭。但是,圖書館也面向計劃向數據科學過渡的軟體工程師。 TensorFlow非常強大,但主要針對深度神經網路任務。

基本上,TensorFlow和Google雲服務的結合,意味著根據三層雲服務模式,基礎架構即服務和平台即服務解決方案。

為了結束機器學習的服務平台,似乎Azure目前在MLaaS市場上擁有功能最多的工具集。它涵蓋了大多數與ML相關的任務,為構建自定義模型提供了一個可視化界面,並且為那些不想單純依靠數據科學的人提供了一套可靠的API。但是,它仍然缺乏亞馬遜的自動化能力。

來自亞馬遜、微軟和Google的機器學習API比較

除了成熟的平台之外,您還可以使用高級API。這些都是在訓練有素的模型下的服務,您可以將數據提供給您並獲取結果。 API不需要機器學習專業知識。目前,這三家廠商的API大致可分為三大類:

語音和文本處理API:亞馬遜

亞馬遜提供了多個針對文本分析中常見任務的API。這些在機器學習方面也是高度自動化的,只是需要適當的整合才能工作。

亞馬遜Lex。由於Lex API包含自動語音識別(ASR)和自然語言處理(NLP)能力,因此創建Lex API以將聊天機器人嵌入到您的應用程序中。這些基於深度學習模式。 API可識別書面和口頭文本,Lex界面允許您將識別的輸入連接到各種後端解決方案。很顯然,亞馬遜鼓勵使用其Lambda雲環境。所以,在訂閱Lex之前,也要熟悉Lambda。除了獨立的應用程序,Lex目前支持為Facebook Messenger,Slack和Twilio部署chatbots。

亞馬遜轉錄。雖然Lex是一個複雜的chatbot為導向的工具,轉錄是專為識別口頭文本創建。該工具可以識別多個揚聲器,並使用低質量的電話音頻工作。這使得API成為音頻歸檔編目的一種解決方案,或者為進一步的呼叫中心數據文本分析提供良好的支持。

亞馬遜Polly。 Polly服務與Lex相反。它將文本轉換為語音,這將使您的聊天機器人以語音回應。雖然不會構成文本,只是使文本接近人類。如果你曾經嘗試Alexa,你有想法。目前,它支持25種語言的女性和男性聲音,大部分是英語和西歐語言。一些語言有多個女性和男性的聲音,所以甚至有多種選擇。像Lex一樣,Polly推薦使用Lambda。

亞馬遜了解。理解是另一個NLP API集,不同於Lex和Transcribe,針對不同的文本分析任務。目前,Comprehend支持:

此服務將幫助您分析社交媒體的回復,評論以及不適合手動分析的其他大型文本數據,例如Comprehend和Transcribe的組合將有助於分析您的電話驅動的客戶服務的情緒。

亞馬遜翻譯。正如名字所述,翻譯服務翻譯文本。亞馬遜聲稱,它使用神經網路 - 與基於規則的翻譯方法相比 - 提供更好的翻譯質量。不幸的是,目前的版本只支持六種語言翻譯成英文,而英文翻譯成六種語言。語言是阿拉伯文、中文、法文、德文、葡萄牙文和西班牙文。

語音和文本處理API:Microsoft Azure認知服務

就像亞馬遜一樣,微軟也提出高級API(認知服務),可以將其與基礎設施集成,並執行任務,而不需要任何數據科學專業知識。

語音。語音集包含四個API,它們將不同類型的自然語言處理(NLP)技術應用於自然語音識別和其他操作:

翻譯語音API

語言。 API的語言組側重於類似於Amazon Comprehend的文本分析:

語言理解智能服務是一種分析文本意圖被識別為命令(例如「運行YouTube應用程序」或「打開客廳燈」)的API

語音和文本處理API:Google雲服務

雖然這套API主要與亞馬遜和微軟Azure建議的相關,但它有一些有趣和獨特的東西需要考慮。

Dialogflow。隨著各種聊天機器人超過了今天的趨勢,谷歌也有東西提供。 Dialogflow採用NLP技術,旨在定義文本的意圖,解釋人們的需求。可以使用Java,Node.js和Python為API調整和定製所需的意圖。

雲自然語言API。這個版本的核心功能幾乎與微軟的亞馬遜和語言完全相同。

雲語音API。這項服務能夠識別自然語言,與類似的API相比,它的主要優勢在於Google支持的語言豐富。目前,它的辭彙與超過110種全球語言及其變體一起使用。它也有一些額外的功能:

單詞提示允許對特定的上下文和可以說出的單詞進行自定義識別(例如,為了更好地理解本地或行業術語)

過濾不適當的內容

處理嘈雜的音頻

雲翻譯API。基本上,您可以使用此API在您的產品中使用Google翻譯。這包括超過一百種語言和自動語言檢測。

除了文字和演講外,亞馬遜、微軟和谷歌還提供用於圖像和視頻分析的相當通用的API。

儘管圖像分析與視頻API密切相關,但許多視頻分析工具仍在開發或測試版本中。例如,Google建議對各種圖像處理任務提供豐富的支持,但絕對缺乏微軟和亞馬遜公司已有的視頻分析功能。

圖像和視頻處理API:Amazon Rekognition

不,我們沒有拼錯這個詞。 Rekognition API用於圖像以及最近的視頻識別任務。他們包括:

對象檢測和分類(查找和檢測圖像中的不同對象並定義它們是什麼)

在視頻中,可以檢測「跳舞」等活動或「撲滅火」等複雜動作,

人臉識別(用於檢測人臉和找到匹配的人臉)和面部分析(這個方法非常有趣,因為它可以檢測到笑臉,分析眼睛,甚至在視頻中定義情感情緒)

檢測不適當的視頻

認識圖片和視頻中的名人(無論目標是什麼)

圖像和視頻處理API:Microsoft Azure認知服務

來自Microsoft的Vision軟體包結合了六個API,專註於不同類型的圖像,視頻和文本分析。

計算機視覺識別物體、運作(如行走),並定義圖像中的主導色彩。

內容主持人在圖片,文字和視頻中檢測到不適當的內容

臉部API檢測臉部,將其分組,定義年齡、情緒、性別、姿勢、笑容和面部毛髮

Emotion API是描述面部表情的另一種面部識別工具

Custom Vision Service支持使用您自己的數據構建自定義圖像識別模型

視頻索引器是一種在視頻中查找人物的工具,定義語音情感並標記關鍵字

圖像和視頻處理API:Google雲服務

雲視覺API。該工具是為圖像識別任務而建立的,對於查找特定圖像屬性非常有用:

雲視頻智能。 Google的視頻識別API在開發初期就缺乏Amazon Rekognition和Microsoft Cognitive Services提供的許多功能。目前,API提供了以下工具集:

在功能列表級別上,Google AI服務可能缺乏一些功能,但Google API所具有的強大功能就在Google可以訪問的大量數據集中。

特定的API和工具

在這裡,我們將討論來自Microsoft和Google的特定API產品和工具。我們在這裡沒有包括Amazon,因為它們的API集合僅僅匹配上面提到的文本分析和圖像+視頻分析類別。但是,這些特定的API的一些能力也存在於Amazon產品中。

Azure服務機器人框架。微軟為其用戶提供了靈活的機器人開發工具。基本上,該服務包含了構建、測試和部署使用不同編程語言的機器人的成熟環境。

有趣的是,Bot服務並不一定需要機器學習方法。由於微軟為殭屍工具(基本,形式,語言理解,主動和問答)提供了五個模板,只有語言理解類型。

目前,您可以使用.NET和Node.js技術在Azure上構建機器人,並將其部署到以下平台和服務上:

從微軟Bing搜索。微軟提出了七個與核心Bing搜索功能連接的API,包括自動建議、新聞、圖片和視頻搜索。

來自微軟的知識。這個API組將文本分析與廣泛的獨特任務相結合:

建議API允許構建購買個性化的推薦系統

Knowledge Exploration Service允許您輸入自然查詢以從資料庫檢索數據,可視化數據和自動完成查詢

實體鏈接智能API旨在突出表示適當實體(例如探索時代)的名稱和短語,並確保消除歧義。

學術知識API會自動完成辭彙,在文檔和概念中找到文檔中的相似性,並在文檔中搜索圖形模式。

QnA Maker API可用於將問題的變體與答案進行匹配,以構建客戶關懷聊天機器人和應用程序。

定製決策服務是一種強化學習工具,可根據用戶的喜好對不同類型的內容(例如鏈接,廣告等)進行個性化和排名

Google雲工作發現。 API仍處於早期發展階段,但很快就可能重新定義我們今天的求職能力。與依賴精確關鍵字匹配的傳統求職引擎不同,Google採用機器學習來找出高度不同的職位描述之間的相關聯繫,並避免模稜兩可。例如,它努力減少不相關或太廣泛的回報,例如將所有關鍵字「assistant」的作業返回給「銷售助理」查詢。API的主要特點是什麼?

之前描述的所有三個平台提供了相當詳盡的文檔,以啟動機器學習實驗,並在公司基礎架構中部署經過訓練的模型。還有一些其他ML-as-a-service解決方案來自初創公司,並受到PredicSis和BigML等數據科學家的推崇。

但IBM Watson Analytics呢?

IBM Watson Analytics還不是一個完整的機器學習平台,用於商業預測。目前,Watson的優勢是可視化數據並描述不同的數值如何相互作用。它也具有類似於Google提供的視覺識別服務以及一系列其他認知服務(API)。沃森目前的問題是,該系統執行的是非專業人員易於操作的狹窄和相對簡單的任務。當談到定製機器學習或預測職責時,考慮IBM Watson的發展還為時尚早。

數據存儲

如果您的數據科學家有足夠的知識來操作流行的存儲解決方案,那麼尋找合適的存儲來收集數據並使用機器學習進一步處理數據不再是一個很大的挑戰。

在大多數情況下,機器學習需要SQL和NoSQL資料庫方案,這些方案受到Hadoop分散式文件系統(HDFS),Cassandra,Amazon S3和Redshift等許多已建立和可信的解決方案的支持。對於在開始機器學習之前使用強大存儲系統的組織,這不會成為障礙。如果您打算使用一個ML-as-a-service系統,最直接的方法是選擇同一個提供者用於存儲和機器學習,因為這將減少配置數據源的時間。

但是,其中一些平台可以輕鬆與其他存儲集成。例如,Azure ML主要與其他Microsoft產品(Azure SQL,Azure Table,Azure Blob)集成,但也支持Hadoop和其他一些數據源選項。這些包括從桌面或內部伺服器直接上傳數據。如果您的機器學習工作流程多樣化並且數據來自多個來源,則可能會出現這些挑戰。

建模和計算

我們已經討論了主要提供計算能力的ML-as-a-service解決方案。但是如果學習工作流程是在內部執行的,計算挑戰遲早會出現。機器學習在大多數情況下需要很多計算能力。不管大數據時代到來,數據抽樣(製作子集)仍然是一個相關的實踐。雖然模型原型可以在筆記本電腦上完成,但使用大型數據集來訓練複雜模型需要投入更強大的硬體。數據預處理也是如此,在常規的辦公機器上可能需要幾天的時間。在截止日期敏感的環境中 - 有時模型應該每周或每天進行改動和再培訓 - 這根本就不是一種選擇。有三種可行的方法來處理處理,同時保持高性能:

加速硬體。如果您執行相對簡單的任務,並且不將模型應用於大數據,請使用固態驅動器(SSD)執行數據準備或使用分析軟體等任務。可以用一個或多個圖形處理單元(GPU)來解決計算密集型操作。許多圖書館可以讓GPU處理用Python等高級語言編寫的模型。

考慮分散式計算。分散式計算意味著多台機器的任務分離。但是,這種方法不適用於所有的機器學習技術。

使用雲計算實現可擴展性。如果您的模型處理具有密集高峰時刻的客戶相關數據,雲計算服務將允許快速的可擴展性。對於只需要內部部署數據的公司而言,值得考慮私有雲基礎架構。

下一步

在各種可用解決方案中很容易迷失方向。它們在演算法上有所不同,它們在所需技能方面有所不同,最終在任務上有所不同。這種情況對於這個年輕的市場是相當普遍的,因為即使我們談到的三個領先的解決方案也不是完全相互競爭。更重要的是,變化的速度令人印象深刻。很有可能你會堅持一個供應商,而另一個供應商會突然推出一些符合你的業務需求的事情。

正確的做法是儘可能早地闡明你打算用機器學習來實現什麼。這並不容易。如果您缺乏數據科學或領域專業知識,那麼在數據科學和業務價值之間搭建橋樑就非常棘手。在與客戶討論機器學習應用程序時,AltexSoft經常遇到這個問題。這通常是將一般問題簡化為單一屬性的問題。無論是價格預測還是其他數值,對象的類別或將對象分成多個組,一旦找到該屬性,決定供應商並選擇提議的內容將會更簡單。

DCVC創始合伙人Bradford Cross認為ML-as-a-services不是一個可行的商業模式。據他介紹,它落在了將要使用開源產品的數據科學家和將要在上級購買工具解決任務的高管之間的差距。然而,目前業界似乎正在克服其長期存在的問題,最終我們會看到更多的公司轉向ML-as-a-Service,以避免昂貴的人才收購,並且仍然擁有多功能的數據工具。

來源:kdnuggets

作者:Altexsoft.

編譯:ifintechnews.com


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 機器學習 的精彩文章:

攻防最前線:黑客利用機器學習發動攻擊的6種方式

TAG:機器學習 |