無論是什么原因,科學家和數據分析師都逐漸地接受了遠程計算。用于機器學習、人工智能、數據分析的基于云計算的工具日前增多。其中的一些應用是在基于云計算的文檔編輯和電子郵件,技術人員可以通過各種設備登錄中央存儲庫,并在遠程位置,甚至在路上或海灘上進行工作。云計算可以處理文件備份和同步,簡化工作流程。
實際上,數據分析更適合采用云計算。當數據集很大時,云計算用戶可以在租用的硬件設施上運行大型作業(yè),從而更快、更好地完成工作。用戶沒有必要啟動電腦花費大量時間進行處理。而采用云計算,只需啟動數十個裝有大量內存的云計算實例,并在幾分鐘內觀察處理結果,因此可以節(jié)省時間和成本。
組織采用云計算也存在一定的風險,而最大的風險是對用戶隱私的擔憂。一些數據分析涉及用戶的個人信息。人們已經習慣了在實驗室中處理數據的安全問題,很難知道云中發(fā)生了什么。
人們對云計算提供商使用的最佳實踐感到滿意之前還需要一段時間。人們已經認識到,云計算提供商可能會聘請更多的安全顧問。如果個人電腦連接到全球互聯(lián)網,那么人們可能會說它已經是云計算的一部分。
幸運的是還有一些解決方法。最簡單的方法是使用隨機ID替換個人信息等技術來匿名化數據。這種方法并不完美,但是它可以在很大程度上緩解黑客在突破云計算的防御之后可能造成的麻煩。
還有一些其他的優(yōu)點。一些提供商可以向公眾共享或開放源數據集,這可能生成更多的組合。一些云計算提供商正在策劃自己的數據集,并減少存儲成本以吸引用戶。如果用戶愿意,可以嘗試將產品銷售與天氣或太陽黑子等公共數據集中的任何其他信息相關聯(lián)。誰知道呢?這里有很多奇怪的相關性。
以下是七種不同的基于云計算的機器學習服務,可幫助人們理解數據集中的相關性和信號。
(1)Amazon SageMaker
亞馬遜公司創(chuàng)建了SageMaker,以簡化使用其機器學習工具的工作。Amazon SageMaker將不同的AWS存儲選項(S3、Dynamo、Redshift等)組合在一起,并將數據傳輸到流行的機器學習庫(TensorFlow、MXNet、Chainer等)的Docker容器中。在最終模型作為自己的API部署之前,可以使用Jupyter記事本跟蹤所有工作。SageMaker將用戶的數據移動到亞馬遜公共云的服務器中,因此用戶可以專注于思考算法而不是過程。如果要在本地運行算法,可以隨時下載Docker鏡像以簡化操作。
(2)微軟Azure機器學習
微軟公司已經看到了機器學習的未來,并全力投入到Machine.ingStudio中,這是一種用于在數據中查找信號的復雜圖形工具。這就像人工智能的電子表格。有一個拖放界面,用于構建流程圖以理解數字。文檔上表明“不需要編碼”,這在技術上是正確的,但用戶仍然需要像程序員一樣思考才能有效地使用它,而不會陷入構建代碼的困境。但如果錯過了語法錯誤、數據類型以及編程的其他樂趣,用戶可以導入用Python、R或其他一些選項編寫的模塊。
最有趣的選擇是,微軟公司已添加基礎設施,以便從人工智能中學到的內容,并將預測模型轉換為在Azure公共云中運行的Web服務。因此,用戶可以構建訓練集,創(chuàng)建模型,然后只需點擊鍵盤和鼠標,就可以從Azure服務中提供JSON數據包的答案。
(3)BigML
BigML是一種用于數據分析的混合儀表板,可以在BigML云平臺中使用,也可以在本地安裝。其主界面是一個儀表板,列出了所有等待由幾十臺機器學習分類器、集群器、回歸器和異常檢測器分析的所有文件。單擊并顯示結果。
最近,該公司專注于新算法,增強了堆棧提供有用答案的能力。新的Fusion代碼可以集成多種算法的結果,以提高準確性。
通過在BigML自己的服務器上采用大量免費套餐。用戶還可以在AWS,Azure或谷歌云平臺上構建私有部署。如果這仍然比較公開的話,他們會將其部署在用戶的私人服務器上。
(4)Databricks
Databricks工具集由Apache Spark的一些開發(fā)人員構建,他們采用了開源分析平臺,并增加了一些顯著的速度增強功能,通過一些巧妙的壓縮和索引來提高吞吐量。名為Delta的混合數據存儲是可以存儲大量數據然后快速分析的地方。當新數據到達時,它可以壓縮到原有的存儲器中以進行快速重新分析。
Apache Spark的所有標準化分析程序都可以在這些數據上運行,但對Spark基礎結構進行了一些急需的改進,例如用于分析代碼的集成記事本。
Databricks與AWS和Azure集成,并根據消費和性能定價。每個計算引擎都在Databrick Units中測量。企業(yè)需要為更快的型號支付更多費用。
(5)DataRobot
這里的許多方法都讓用戶只需點擊鍵盤即可構建機器學習模型。DataRobot宣稱能夠同時構建數百個模型,只需單擊一下鍵盤即可。在完成模型后,用戶可以通過它們進行挑選,找出能夠做得更好的模型,并繼續(xù)進行預測。其秘密是采用一個大規(guī)模的并行處理引擎,換句話說就是采用多臺機器進行分析。
DataRobot正在通過實施新算法和擴展當前算法來擴展。該公司最近收購了Nutonian,其Eureqa引擎應該增強自動化機器學習平臺創(chuàng)建時間序列和分類模型的能力。該系統(tǒng)還為更高級的用戶提供了Python API。
DataRobot可通過DataRobot Cloud或嵌入式工程師隨附的企業(yè)軟件版本獲得。
(6)谷歌云機器學習引擎
谷歌公司在TensorFlow上投入了大量資金,TensorFlow是用于在數據中查找信號的標準開源庫之一,現(xiàn)在用戶可以在谷歌云平臺中嘗試采用TensorFlow。谷歌云機器學習引擎中的一些工具是開源的,對于任何下載它們的用戶來說都是免費的,有些工具是谷歌云平臺中商業(yè)選項的一部分。這使用戶可以自由地探索,并避免一些鎖定,因為大部分代碼都是開源的,并且可以在任何Mac,Windows或Linux機器上運行。
還有幾個不同的工具。采用最容易的工具可能是Colaboratory,它將Jupyter記事本連接到谷歌的TensorFlow后端,因此用戶可以編寫出代碼并查看它的運行情況。谷歌公司還為希望進行實驗的科學家提供TensorFlow研究云。在合適的情況下,用戶可以使用GPU或TPU在谷歌公司的加速硬件上運行機器學習模型。
(7)IBM Watson Studio
現(xiàn)在Watson將IBM公司的大部分資源都投入了人工智能。IBM Watson Studio是一種用于在云端或本地中探索數據和訓練模型的工具。在數據傳入時,其結果在公司的儀表板上顯示漂亮的圖表。
最大的區(qū)別可能是桌面版的Watson Studio。用戶可以使用基于云計算的版本來研究數據,并享受彈性資源和集中式存儲庫帶來的所有功能。或者用戶可以通過防火墻的隱私和桌面的便利做同樣的事情。
每個云平臺中的機器學習模型
雖然很多人都希望為他們的人工智能研究選擇一個儀表板,但是沒有理由不采用更多的選擇。一旦完成所有預處理和數據清理,用戶可以將相同的CSV格式數據提供給所有這些服務,并比較結果以找到最佳選擇。其中一些服務已經提供了算法之間的自動比較。為什么不使用多個呢?
用戶還可以利用一些不斷發(fā)展的開放標準。例如,Jupyter記事本通常無需太多修改即可運行。用戶可以在一個平臺上進行開發(fā),然后將大部分代碼與數據一起移動,以測試不同平臺上的任何新算法或不同算法。
人們距離標準化還有很長的路要走,很多算法之間存在著詭異和無法解釋的差異。因此,用戶不要僅僅考慮一種算法或一種訓練方法,而是需要嘗試使用盡可能多的不同建模工具。