0
本文作者: AI研習社-譯站 | 2018-03-16 10:33 |
雷鋒網(wǎng)按:本文為雷鋒字幕組編譯的技術(shù)博客,原標題 Comparing Machine Learning as a Service: Amazon, Microsoft Azure, Google Cloud AI,作者為Altexsoft。
翻譯 | 彭珍 陳明霏 整理 | 凡江
對于大多數(shù)的公司來說,機器學習似乎接近于火箭科學,看起來昂貴而且需要人才。而且,如果你的目標是構(gòu)建另一個Netflix推薦系統(tǒng),那確實是。但是,一切即服務的趨勢也影響了這個復雜的領(lǐng)域。你可以在沒有太多投資的情況下啟動機器學習計劃,如果你是數(shù)據(jù)科學的新手,并且希望抓住成果,這會是正確的舉措。
機器學習最鼓舞人心的故事之一是關(guān)于一個日本農(nóng)民的,他決定用自動給黃瓜分類的方法來幫助他的父母做這項艱苦的工作。與大量關(guān)于大型企業(yè)的故事不同的是,他既沒有機器學習的專業(yè)知識,也沒有大的預算。但是他確實設法掌握了TensorFlow,并且運用深度學習來識別不同類別的黃瓜。
通過使用機器學習云服務,你可以開始構(gòu)建你的第一個工作模型,從相對較小的團隊預測中來產(chǎn)出有價值的見解。我們已經(jīng)討論了機器學習策略。現(xiàn)在讓我們一起看看市場上最好的機器學習平臺,并考慮一些基礎設施決策。
什么是服務型導向的機器學習
服務型導向的機器學習(MLaaS) 是自動化和半自動化云平臺的一個概括性定義,這個云平臺涵蓋了大多數(shù)的基礎設施,例如數(shù)據(jù)預處理、模型訓練、模型評估、以及進一步的預測。預測結(jié)果可以通過REST API與你的內(nèi)部IT基礎設施進行銜接。
亞馬遜機器學習服務、Azure機器學習和谷歌云AI是三個領(lǐng)先的云MLaaS服務,允許在只有少量或者沒有數(shù)據(jù)科學專業(yè)知識的情況下進行快速模型訓練和部署。如果用可用的軟件工程師來組建一支本土化的數(shù)據(jù)科學團隊,就應該首先考慮這些問題。來看看我們的數(shù)據(jù)科學團隊結(jié)構(gòu)的故事,以便于更好地了解角色分配。
在本篇文章中,我們將首先概述亞馬遜、谷歌和微軟的主要服務型導向的機器學習平臺,然后比較這些供應商所支持的機器學習API。請注意,本概述并非旨在提供有關(guān)何時和如何使用這些平臺的詳盡指南,而是在開始閱讀文檔之前需要查找的內(nèi)容。
用于自定義預測分析任務的機器學習服務
Azure 機器學習工作室擁有最全面的服務;然而,如果你的任務需要用到深度神經(jīng)網(wǎng)絡,我們還推薦查看亞馬遜的SageMaker和谷歌的機器學習引擎。
亞馬遜機器學習的預測性分析
亞馬遜機器學習服務有兩個層面:亞馬遜機器學習的預測性分析和數(shù)據(jù)科學家的SageMaker工具。
同于預測性分析的亞馬遜機器學習是市場上最自動化的解決方案之一,最適合于對截止時間敏感的操作。該服務可以載入多個來源的數(shù)據(jù),包括亞馬遜RDS,亞馬遜Redshift,CSV文件等等。所有的數(shù)據(jù)預處理操作都是自動執(zhí)行的:該服務區(qū)標識出哪些字段是分類的,哪些是數(shù)字的,并且不會要求用戶選擇進一步數(shù)據(jù)預處理的方法(降維和白化)
亞馬遜機器學習的預測能力受限于三種選擇:二元分類、多類分類和回歸。也就是說,亞馬遜的機器學習服務不支持任何無監(jiān)督的學習方法,用戶必須選擇一個目標變量并在訓練集中標注它。此外,用戶不需要了解任何機器學習方法,因為亞馬遜會在查看提供的數(shù)據(jù)后會自動選擇它們。
這種高度自動化水平既是亞馬遜機器學習使用的優(yōu)勢也是劣勢。如果你需要一個全自動但有限的解決方案,這項服務會符合你的預期。如果不是,那就選擇SageMaker。
亞馬遜SageMaker和基于框架的服務
SageMaker是一個機器學習環(huán)境,通過提供庫快速建模和部署的工具來簡化同行數(shù)據(jù)科學家的工作。例如,它提供Jupyter,一款創(chuàng)作筆記本,來簡化數(shù)據(jù)探索和分析,無需服務器管理的麻煩。亞馬遜也有內(nèi)置算法,針對分布式系統(tǒng)中的大型數(shù)據(jù)集和計算進行了優(yōu)化。這些優(yōu)化包括:
線性學習器,一種用于分類和回歸的監(jiān)督方法
因子分解機,用于稀疏數(shù)據(jù)集的分類和回歸
XGBoost 是一個監(jiān)督提升樹算法,通過結(jié)合簡單的預測算法來提升在分類、回歸和排序中的預測準確率
基于ResNet的圖像分類,也能應用于遷移學習
Seq2seq是一種預測序列的監(jiān)督式算法(例如,翻譯句子,將單詞串轉(zhuǎn)化為更短的摘要等)
K-means是一種用于聚類任務的無監(jiān)督學習方法
主要成分分析用于降維
主題模型是一種用于在文檔中查找分類的無監(jiān)督方法
神經(jīng)主題模型(NTM)是一種無監(jiān)督方法,用于探索文檔、揭示排名靠前的單詞和定義主題(用戶不能預定義主題,但是他們可以設置預期主題的數(shù)量)
內(nèi)置的SageMaker方法與亞馬遜建議的機器學習API在很大程度上相交,但它允許數(shù)據(jù)科學家參與進來并使用他們自己的數(shù)據(jù)集。
如果你不想使用這些,你可以通過SageMaker利用其部署功能來添加你自己方法并運行模型。或者你可以將SageMaker與TensorFlow以及MXNeT深度學習庫進行集成。
總的來說,亞馬遜機器學習服務為經(jīng)驗豐富的數(shù)據(jù)科學家和那些只需要完成工作不需要深入數(shù)據(jù)集準備和建模的人來說,提供了足夠的自由。這對那些使用了亞馬遜環(huán)境并且不打算轉(zhuǎn)移到另一家云提供商的公司來說,這將會是一個不二之選。
微軟Azure機器學習工作室
Azure機器學習旨在為新手和經(jīng)驗豐富的數(shù)據(jù)科學家提供一個強大的操作環(huán)境。微軟的機器學習產(chǎn)品名單與亞馬遜的類似,但是就當前而言,Azure在開箱即用的算法方面顯得更加靈活。
Azure提供的服務可以分為兩個主要類型:Azure機器學習工作室和機器人服務。讓我們了解下Azure機器學習工作室的內(nèi)幕。我們將會在講專用于特定API和工具的部門回到機器人服務。
機器學習工作室是主要的服務型導向機器學習軟件包。在Azure機器學習工作室上的幾乎所有操作都必須手動完成。這些操作包括數(shù)據(jù)探索、預處理、選擇方法和驗證建模結(jié)果。
使用Azure接近機器學習需要一些學習曲線。但最終會導致對該領(lǐng)域主要技術(shù)的更深入理解。另一方面,Azure機器學習支持圖形化界面以可視化工作流中的每個步驟。或許使用Azure的主要優(yōu)點在于可以使用各種算法。工作室支持近100種方法來處理分類(二元+多類)、異常檢測、回歸、推薦和文本分析。值得一提的是這個平臺擁有一種聚類算法(K-means)。
Azure機器學習的另一大部分是Cortana Intelligence Gallery。它是由社區(qū)提供的機器學習解決方案集合,提供給數(shù)據(jù)科學家進行探索和再利用。Azure的產(chǎn)品是入門機器學習并將其能力介紹給新員工的強大工具。
谷歌預測API
谷歌在兩個層面提供AI服務:為精明的數(shù)據(jù)科學家提供的機器學習引擎和高度自動化的谷歌預測API。不幸的是,谷歌預測API最近已被棄用,谷歌將在2018年4月30日停止這一服務。
注定失敗的預測API與亞馬遜的機器學習很像。它的簡約方法縮小到解決兩個主要問題:分類(二元和多類)和回歸。訓練好的模型可以通過REST API接口進行部署。
谷歌并沒有公布會使用哪種算法來繪制預測,也不允許工程師自定義模型。另一方面,谷歌的環(huán)境最適合在緊迫的期限內(nèi)進行機器學習,并推出早期的機器學習計劃。但似乎產(chǎn)品并不如谷歌預期的那樣受歡迎。很遺憾的是,正如臨終常見問題解答中所建議的,使用預測性API將不得不使用其他平臺來”重建現(xiàn)有模型“。
那么,接下來會是什么呢?
谷歌云機器學習引擎
預測API的高度自動化是以靈活性為代價的。谷歌的機器學習引擎則截然相反。它迎合有經(jīng)驗的數(shù)據(jù)科學家,它非常靈活,并建議將TensorFlow的云端基礎架構(gòu)來作為機器學習的驅(qū)動程序。那么,機器學習引擎原則上與SageMaker非常相似。
TensorFlow是谷歌的另一款產(chǎn)品,它是一個開源的機器學習庫,包括各種各樣的數(shù)據(jù)科學工具,而不是服務型導向的機器學習。它沒有可視化界面,并且TensorFlow的學習曲線也會十分陡峭。然而,這個庫的目標人群是那些計劃轉(zhuǎn)行到數(shù)據(jù)科學的軟件工程師。TensorFlow十分強大,但主要針對深度神經(jīng)網(wǎng)絡任務。
基本上,TensorFlow與谷歌云服務的結(jié)合表明,基礎架構(gòu)即服務和平臺即服務的解決方案取決于三層模型的云服務。我們在關(guān)于數(shù)字化轉(zhuǎn)型的白皮書中討論了這個概念。如果你不了解,那就看一看。
為了總結(jié)服務型導向的機器學習平臺,似乎Azure當前在服務型導向的機器學習的市場上擁有功能最多的工具集。它涵蓋了大多數(shù)的機器學習相關(guān)任務,為構(gòu)建自定義模型提供了可視化界面,為那些不愿徒手處理數(shù)據(jù)科學的人提供了一組可靠的API。但是,它在亞馬遜上仍缺乏自動化的能力。
比較亞馬遜、微軟和谷歌的機器學習API
除了成熟的平臺,你可以使用高級API。這些會提供底層訓練好的模型服務,你可以輸入數(shù)據(jù)然后獲取結(jié)果。API完全不需要機器學習的專業(yè)知識。目前,這三家供應商的API大致可以分為三大類:
1)文本識別、翻譯和文本分析
2)圖像+視頻識別和相關(guān)分析
3)其他,包括特定的未分類服務
微軟提供了最豐富的功能列表。但是,所有供應商都提供最重要的功能。
語音和文本處理API:亞馬遜
亞馬遜針對文本分析中的常見任務提供了多種API。就機器學習而言這些是高度自動化的,僅需要適當?shù)募删涂梢怨ぷ鳌?/p>
亞馬遜Lex。Lex API是用來在你的應用程序中內(nèi)嵌包含自動語音識別(ASR)和自然語言處理(NLP)能力的聊天機器人。這些都基于深度學習模型。這個API可以識別書面和口頭文本,Lex接口允許你將已識別的輸入連接到各種后端解決方案。顯然,亞馬遜鼓勵使用它的Lambda云環(huán)境。那么,在訂閱Lex之前,也需要熟悉Lambda。除了獨立的應用程序,Lex目前支持為 Facebook Messenger、Slack和Twilio部署聊天機器人。
亞馬遜Transcribe。雖然Lex是一個以聊天機器人為導向的復雜工具,Transcribe僅僅是為了識別口頭文本而生。該工具可以識別多個說話者,并且在低質(zhì)量的電話音頻中起作用。這使得這個API成為編目音頻檔案的一種解決方案,或者為呼叫中心數(shù)據(jù)的進一步文本分析提供良好的支持
亞馬遜Polly。Polly服務與Lex相反。它將文本轉(zhuǎn)換成語音,讓你的聊天機器人用語音來回復。它不會創(chuàng)作文本,只是讓文本聽起來更接近于人。如果你體驗過Alexa,那么你就能明白。目前,它支持25種語言的女聲和男聲,大部分是英語和西歐語言。一些語言還有多個女聲和男聲,所以就有多種選擇。Polly推薦與Lambda一起使用。
亞馬遜 Comprehend。與Lex和Transcribe不同,Comprehend是另一組NLP的APL,針對不同的文本分析任務。目前,Comprehend支持:
實體提?。ㄗR別名稱、日期、組織等)
關(guān)鍵短語檢測
語言識別
情緒分析(正面、中立、負面的文本是怎樣的)
主題模型(通過分析關(guān)鍵詞定義主要主題)
這項服務可以幫助你分析社交媒體的反應、評論和其他不適合手動分析的大量文本數(shù)據(jù)美麗如,Comprehend和Transcribe 的組合將有助于你分析你的以電話為主的客戶服務中的情緒。
亞馬遜 Translate。正如名字所示,Translate服務翻譯文本。亞馬遜聲稱它使用的是神經(jīng)網(wǎng)絡,相比于基于規(guī)則的翻譯方法,神經(jīng)網(wǎng)絡方法提供更好的翻譯質(zhì)量。不幸的是,當前的版本僅支持六種語言翻譯成英語,以及由英語翻譯成這六種語言。這些語言是阿拉伯語、中文、法語、德語、葡萄牙語和西班牙語。
語音、文字處理應用程序接口: 微軟 Azure 認知服務
像亞馬遜一樣, 微軟開發(fā)出的高級應用程序接口—— 認知服務,能與你的基礎開發(fā)環(huán)境兼容,非數(shù)據(jù)科學方面的專業(yè)人士也可以使用它進行工作。
語音。語音設置包含了四個應用程序接口,將不同的自然語言處理方法應用于自然語言識別以及其他操作:
翻譯語音接口
將語音轉(zhuǎn)變?yōu)槲淖忠约皩⑽淖洲D(zhuǎn)變?yōu)檎Z音的必應語音接口
執(zhí)行聲音核實任務的發(fā)音主體識別接口
基于自己的數(shù)據(jù)和模型應用Azure自然語言處理能力的定制語音服務
語言。接口的語言組主要類似于Amazon Comprehend進行文本分析
語言理解智能服務是一個用于分析文本中指令語句意圖的接口 (例如 “運行YouTube應用程序”或者 “打開起居室的燈”)
用于情感分析和主題歸納的文本分析接口
必應拼寫檢查
文本翻譯接口
用于估計詞語組合的概率并支持單詞自動結(jié)束的網(wǎng)絡語言模型接口
用于拆分句子、詞性標注以及將文本分為標記好的詞組的語言分析接口
語音、文本處理應用程序接口:谷歌云服務
雖然這種接口主要綜合了亞馬遜和微軟Azure開發(fā)的功能, 但是它也有一些有趣、特別的亮點值得一看
Dialogflow。隨著多樣的聊天機器人越來越流行,谷歌也開發(fā)出了一些產(chǎn)品。Dialogflow通過自然語言處理技術(shù)來支持運行,目標功能為解析文本的意圖并說明文本主體人的意愿??梢愿鶕?jù)需要使用Java、Node.js和 Python語言對這個接口進行修改和定制。
自然語言云處理接口。這個接口在內(nèi)核特征上幾乎與亞馬遜的Amazon Comprehend和微軟的Language相同。
定義文本實體
情感識別
分析句法結(jié)構(gòu)
主題分類(例如食物、新聞、電子等)
云語音接口。該服務用于自然語音識別,可能與類似接口相比最顯著的優(yōu)勢是谷歌豐富的語言庫。當前,語音云的詞匯可覆蓋超過110種全球性語言及其變體語言。它也有一些其他特征:
具有定制化識別特定可口頭表達的的文本及單詞功能的單詞提示(例如,為了更好地理解本地土話或者行話)
過濾不合適的內(nèi)容
處理噪音
云翻譯接口。總之,你可以用這個接口來在自己的產(chǎn)品上使用谷歌翻譯。它支持超過一百種語言,具有語種自動識別功能。
除了文本和語音,亞馬遜、微軟和谷歌還開發(fā)了應用于圖像、視頻分析的多功能接口。
雖然圖像分析與視頻分析接口有許多交叉之處,但是許多視頻工具仍在發(fā)展或處于良好的版本中。例如,谷歌對多種圖像處理任務可提供許多支持,但是明顯缺乏一些微軟和亞馬遜已能實現(xiàn)的視頻分析特征功能。
微軟看似是贏家,雖然我們?nèi)哉J為亞馬遜有最高效的視頻分析接口,如亞馬遜可支持流媒體處理。這個特征功能顯然拓寬了視頻分析技術(shù)的應用面。
圖像和視頻處理應用程序接口:亞馬遜 Rekognition
我們絕對沒有拼錯單詞。Rekognition應用程序接口是用于圖像識別以及最近的視頻識別任務。包括:
圖像目標檢測以及分類(發(fā)現(xiàn)并檢測圖像中的不同目標對象并且進行定位)
在視頻中,該接口能檢測一般活動(比如“跳舞”)或者復雜活動(如“撲火”)
面部識別 (用于檢測面部并進行匹配) 以及面部分析(這個接口有些非常有意思的功能比如檢測笑臉、分析眼睛,甚至看可以定義視頻中的情感情緒
檢測不合適的視頻
識別圖像和視頻中的名人 (無論出于何種目的)
圖像與視頻處理應用程序接口: 微軟 Azure 認知服務
微軟的圖像包結(jié)合了針對不同種類圖像、視頻和文本分析的六個應用程序接口
可識別目標對象、行為(如走路)以及定義圖像主顏色特征的計算機視覺
可檢測圖像、文本、視頻中不合適內(nèi)容的內(nèi)容評分機制
面部應用程序接口用于檢測面部并集中檢測結(jié)果,進行年齡、情緒、姿勢、笑容和面部毛發(fā)的識別定義
情緒應用程序接口是可描繪面部表情的另一個面部識別工具
定制視覺服務支持用自己的數(shù)據(jù)構(gòu)建定制圖像識別模型
視頻索引器是一個可在視頻中尋找人物、定義語音情感以及圈出關(guān)鍵詞的工具
圖像和視頻處理應用程序接口: 谷歌云服務
云視覺應用程序接口。該工具被用于圖像識別任務,并非常擅長查找特定的圖像屬性:
標記對象
檢測臉部并分析表情
發(fā)現(xiàn)地標并描繪場景(如度假,婚禮等)
發(fā)現(xiàn)圖像中的文本并辨識文本語言
主顏色特征
云視頻智能。該谷歌的視頻識別應用程序接口處于發(fā)展的早期,因此它缺少許多亞馬遜Rekognition和微軟認知服務的特征功能。現(xiàn)在該接口提供以下工具箱:
標記對象并定義行為
精確識別內(nèi)容
轉(zhuǎn)錄語音
雖然從特征表級別上來說,谷歌人工智能服務也許缺少一些功能,但是谷歌應用程序接口的優(yōu)勢力量在于谷歌握有的大數(shù)據(jù)集。
特種應用程序接口與工具
在這里,我們將討論微軟和谷歌開發(fā)的特種應用程序接口產(chǎn)品及工具。由于亞馬遜僅有上文提到的幾種用于文本分析和圖像/視頻分析的應用程序接口產(chǎn)品,我們這里的討論不包括亞馬遜。但是,這些特種應用程序接口擁有的一些功能也被亞馬遜的某些產(chǎn)品擁有。
Azure 服務機器人框架。微軟做了大量努力為其用戶提供靈活的機器人開發(fā)工具。總而言之,該服務包含一個可使用不同編程語言搭建、測試、部署機器人的全面環(huán)境。
有意思的是,該機器人服務不一定需要應用機器學習的方法。比如微軟開發(fā)了五個版本的機器人(基礎版、成型版、語言理解型、主動式,以及問答機器人),只有語言理解型機器人需要應用高級人工智能技術(shù)。
現(xiàn)在,你可以使用.NET和Node.js技術(shù)來通過Azure搭建機器人并在以下平臺和技術(shù)服務中部署它們:
必應
微軟小娜
Skype
微信
Office 365 郵箱
GroupMe
Facebook 信使
Slack
Kik
Telegram
Twilio
微軟必應搜索。微軟開發(fā)了7個與必應搜索特征功能相連的應用程序接口,包括自動提示、新聞、圖像和視頻搜索接口
微軟Knowledge。該應用程序接口群將文本分析與各種各樣的特別任務相結(jié)合:
推薦應用程序接口能用于搭建個性化消費推薦系統(tǒng)
知識搜索服務讓你輸入自然問題,從而在數(shù)據(jù)庫中檢索相應數(shù)據(jù)、可視化數(shù)據(jù)并自動補全提問
實體連接智能接口用來突出可表示正確實體的名字和短語(例如探索的時代)并且確保消除模棱兩可的情況
學術(shù)知識應用程序接口可進行單詞自動補全、尋找文件單詞和概念上的相似處,并且在文件中搜索圖表部分
問答者接口可以被用于匹配多樣的問題與對應的答案,從而可以被用于構(gòu)建客戶服務聊天機器人和應用
定制決策服務是一個強化學習工具,用于根據(jù)用戶的喜好特別定制不同種類的內(nèi)容并將它們排序(例如鏈接、廣告等)
谷歌云職位搜索。該應用程序接口仍處于發(fā)展階段早期,但不久就可能顛覆如今我們擁有的職位搜索能力。不像依賴于精確關(guān)鍵字匹配的傳統(tǒng)職位搜索引擎,谷歌應用機器學習方法來尋找高度多樣的職位描述與避免模糊之間的聯(lián)系。例如,它致力于減少不相關(guān)或者過于寬泛的返回結(jié)果,比如對“銷售助理”的搜索詢問返回所有關(guān)鍵字帶“助理”的職位。這個接口有哪些主要的特征功能呢?
修正職位搜索詢問中的拼寫錯誤
匹配所需的資歷水平
尋找可能有多樣描述方式以及行業(yè)行話的相關(guān)職業(yè)(如對于“服務員”這一搜索詢問而不是“網(wǎng)絡專家”的詢問返回“咖啡館咖啡師”結(jié)果;或者對“業(yè)務開發(fā)”搜索詢問返回“運營專家”)
處理縮略詞(例如對“HR“搜索詢問返回“人力資源部助理“搜索結(jié)果)
匹配多樣的地點描述
IBM 沃森以及其他
三個平臺都在拿出一份非常詳盡的文件來起動機器學習試驗以及在公司的基礎設備上部署訓練好的模型之前就被提出了。也有大量來自創(chuàng)業(yè)的其他服務型導向的機器學習的解決方案,為數(shù)據(jù)科學家所尊敬,比如PredicSis和BigML。
但是IBM沃森分析是什么情況呢?
以商業(yè)預測為目標功能的IBM 沃森分析現(xiàn)在還不是一個羽翼豐滿的機器學習平臺。當前,沃森的主打是數(shù)據(jù)可視化以及描繪不同的價值如何相互作用。它也有與谷歌提供的相似的視覺識別服務以及一串其他認知服務(應用程序接口)。當前沃森的問題是系統(tǒng)執(zhí)行的是狹隘、相對簡單并易于被非專業(yè)人士操作的任務。當涉及到定制機器學習或者預測的職責時,處于發(fā)展階段太早期的IBM沃森就難以駕馭了。
數(shù)據(jù)存儲
通過機器學習找到正確的存儲來收集數(shù)據(jù)以及進一步處理數(shù)據(jù)已經(jīng)不再是個重大挑戰(zhàn),數(shù)據(jù)科學家有足夠的學識來實施流行的存儲解決方案。
在大部分情況下,機器學習要求SQL和NoSQL兩個數(shù)據(jù)庫結(jié)構(gòu)支持,這兩個數(shù)據(jù)庫可被許多已建立的、值得信賴的解決方案支持,比如Hadoop Distributed File System (HDFS)、Cassandra、Amazon S3和Redshift。. 對于在開始機器學習之前使用強有力的存儲系統(tǒng)的組織來說,這將不會是個障礙。如果你計劃做一些服務型導向的機器學習系統(tǒng),最直接的方法就是選擇可用于存儲和機器學習兩者的供主,這將減少配置數(shù)據(jù)源的時間消耗。
然而,這些平臺中有一些很容易與其他存儲相融合。比如Azure機器學習,主要與其他微軟產(chǎn)品相融(Azure SQL, Azure 表格, Azure Blob) 但是也支持Hadoop 以及大量其他數(shù)據(jù)資源的選擇。 這些包含直接從桌面上傳數(shù)據(jù)或者部署服務器的功能。如果你的機器學習工作流程多樣化并且數(shù)據(jù)來自多種資源,也許會面臨更大的挑戰(zhàn)。
建模與計算
我們討論過主要提供計算力的服務型導向的機器學習解決方案。但是如果機器學習工作流程在內(nèi)部進行,計算挑戰(zhàn)將會遲早敲響鐘聲。 在大部分情況下,機器學習需要大量的計算力。即使忽略大數(shù)據(jù)時代已經(jīng)到來的事實,數(shù)據(jù)集(做一個策劃的子集) 仍是一個相關(guān)實踐。雖然模型原型可以在筆記本電腦中完成構(gòu)建,但是使用一個大數(shù)據(jù)集訓練復雜模型需要投入更多強有力的硬件。數(shù)據(jù)處理也是如此,它可以在正規(guī)的辦公設備上占用幾天時間,在快到截止日期時 ——有時候模型需要每周或每天修改、重新訓練——這顯然不是一種合理選擇。有三種可行方案來保持高效表現(xiàn):
1)加速硬件。如果你做的是相對簡單的任務并且不用將模型應用到大數(shù)據(jù)中,那么針對這些任務使用固態(tài)硬盤作為數(shù)據(jù)準備或者使用分析軟件。計算集中處理能被放置在一個或幾個圖形處理單元 (GPUs)上執(zhí)行。大量可獲得的庫能讓GPUs 的處理模型能被用像Python一樣的高級語言編寫。
2)采用分布式計算。分布式計算指使用多臺機器處理分別切分之后的任務。然而,這個方法不能適用于所有的機器學習方法。
3)使用云計算的可擴展性。如果你的模型在處理有集中高峰時段的顧客相關(guān)的數(shù)據(jù),云計算服務將具有急速可擴展性。對于要求擁有其內(nèi)部數(shù)據(jù)的公司,值得考慮架構(gòu)私有云設施 。
下一步計劃
我們很容易在大量可獲得的解決方案中迷失。 它們算法不同、要求的技術(shù)不同,最終他們做的任務也不同。此情況對于這個年輕的市場非常普遍,甚至我們之前談論的三大領(lǐng)先解決方案并沒有產(chǎn)生完全的相互競爭關(guān)系。不僅如此,變化的速度是非??斓摹S泻艽罂赡苣銏允匾粋€供應商,然后突然另一個供應商意外跳出來滿足你的商業(yè)需求。
正確的做法是盡早明了你打算通過機器學習獲得什么。這并不容易。如果你缺乏數(shù)據(jù)科學或相關(guān)領(lǐng)域?qū)I(yè)知識,在數(shù)據(jù)科學與商業(yè)價值中搭一座連接橋是非常困難的。我們在AltexSoft 與客戶討論機器學習應用時,經(jīng)常遇到這樣的問題。這通常是一個一般問題化為單一屬性的問題。無論是價格預測還是其他數(shù)值,確定對象的類別還是將對象分散成多個組, 一旦你找到這個單一屬性,確定供應商和選擇提議內(nèi)容將會簡單一些。
DCVC創(chuàng)立合伙人,Bradford Cross,認為服務型導向的機器學習不是一種可行的商業(yè)模式。據(jù)他所說,服務型導向的機器學習落入了傾向使用開源產(chǎn)品的數(shù)據(jù)科學家與傾向購買能解決更高級任務工具的高管之間的差異鴻溝中。然而,這個行業(yè)似乎現(xiàn)在還在克服它長期以來存在的問題,最終我們將看到更多的公司通過轉(zhuǎn)向服務型導向的機器學習方向來避免昂貴的人才收錄,并同時擁有多功能的數(shù)據(jù)處理工具。
博客原址:
https://www.altexsoft.com/blog/datascience/comparing-machine-learning-as-a-service-amazon-microsoft-azure-google-cloud-ai/
更多文章,關(guān)注雷鋒網(wǎng)
添加雷鋒字幕組微信號(leiphonefansub)為好友
備注「我要加入」,To be a AI Volunteer !
雷鋒網(wǎng)
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。