開源GraphPipe項目暗示了下一波人工智慧浪潮的方向

至頂網軟件頻道消息:GraphPipe是一個新的開源軟件項目,它指向了下一波人工智能領域的前景。

今天,人工智能及其“表兄”機器學習主要是實驗和測試。我們看到這類實驗的數量正在激增,因為任何人都可以訪問在線框架來構建模型,並且可以根據需要購買雲計算算力來測試它們。開發人員們正在測試用人工智能解決他們公司內部的日常問題。

人工智能的下一波浪潮將涉及大規模部署——企業為客戶提供人工智能支持的應用程序;員工利用人工智能來完成重要的、時間很緊的任務——從供應鏈到市場營銷。這種規模帶來了全新的問題,而Oracle 最近在GitHub開源的GraphPipe已經在直面這些挑戰。

Oracle 的雲開發架構師Vish Abrams所在的深度學習團隊創造了GraphPipe。Vish Abrams表示:“接下來的問題是,現在我已經構建了這個東西,我該如何部署它,我又該如何真正地讓它保持每天的運行。” Vish Abrams表示:“在一兩年內,這將成為一個巨大的問題,所以擁有這樣的工具將會是非常有價值的。”

人工智能的核心是通過數學模型運行數據並獲得結果。 GraphPipe是一種高性能開放標準,用於傳輸人工智能模型中使用的張量數據。這意味著它可以幫助開發人員應對諸如在一個地方運行人工智能模型(比如雲數據中心)並在另一個地方提供結果(比如客戶的智能手機)等挑戰。

开源GraphPipe项目暗示了下一波人工智能浪潮的方向

Abrams並沒有宣稱GraphPipe是計算機科學的一次革命——GraphPipe應用了和現在的系統使用的相同的廣泛原則來允許網絡通信。但GraphPipe採用了這些技術並針對人工智能模型對其進行優化,這些人工智能模型通常需要非常快速地移動大量數據以提供結果。

开源GraphPipe项目暗示了下一波人工智能浪潮的方向

Abrams表示:“這並不是重塑網絡傳輸。” Abrams表示:“它是用一種標準化的高效方式,將你發送給模型並獲得反饋的數學數據傳送方式進行打包。”

像GraphPipe這樣的工具讓開發人員能夠有效地將人工智能模型投入到新的問題中,這可能會讓今天的人工智能浪潮有別於過去的嘗試。在二十世紀八十年代,人工智能也曾引起了一股熱潮,開發人員們試圖打造出能夠自己做出決定的“專家系統”。但是,他表示,計算基礎架構的缺失讓這些模型和實驗無法得到支持,因此在隨後的幾十年裡,“人工智能的冬天”降臨了。

由於能夠隨需應變的雲存儲和計算處理能力,以及能夠進行大規模並行計算的專用GPU處理器的出現,過去五年,這一切都已經發生了改變。Abrams表示:“這一次,機器學習系統提供了多得多的實用價值。”

既然Oracle已經將GraphPipe作為開源項目,那麼任何人都可以免費使用該工具並根據他們的經驗做出改進。Abrams是開源項目的長期貢獻者,也是OpenStack公司Nebula的前首席技術官,他在博客文章中為開發人員深入介紹了GraphPipe。

下面我們將詳細說明GraphPipe的作用以及它是如何在Oracle的深度學習團隊中形成的。

GraphPipe能夠如何幫助人工智能開發人員

GraphPipe可幫助開發人員有效地服務“遠程”人工智能模型——也就是模型可以通過互聯網訪問,而不是在本地運行。在今天,這樣做已經是可能的了;它只是缺乏效率或者標準化。

Abrams表示:“你基本上是將每個單獨的模型都包裝在自定義的API中。” Abrams表示:“這不難做到;只是非常單調乏味。”另一種選擇是使用TensorFlow Serving的協議緩衝,但該軟件僅適用於使用TensorFlow構建的模型,而且可能難以構建和部署。

現有方法在處理大量數據方面也不是很好,而這種限制可能會扼殺開發人員的創造力,因為他們會避免使用依賴大型數據集的模型。

Abrams表示,例如,如果你的遠程人工智能模式是試圖將貓的圖片和狗的圖片區分開,現有的傳輸技術可能沒問題,因為你只是向模型發送一個圖像,然後得到表示這是貓的圖片還是狗的圖片的一點點數據,以及一點點關於所描述的對象在圖像中的位置的數據。但是,他說,如果你要發送的是一個巨大的浮點數陣列,而且要得到的結果是另一個巨大的浮點數陣列,這種技術就不行了。

如果你要將來自多個不同模型的結果合併到一個模型中,或者如果你在一個位置訓練模型的一部分並將它們部署到另一個地方,你可能就需要更有效的通信。或者,對於面向客戶的移動應用或物聯網應用,終端設備通常缺乏在本地運行模型的能力,並且必須向遠程服務發出請求,這就需要高效且穩定的連接。

Abrams表示:“這似乎是人工智能領域中可以使用一些幫助的地方。”

最後,GraphPipe為開發人員提供了互操作性方面的優勢。今天,存在著很多種彼此競爭的機器模型格式——TensorFlow、Caffe2、MXNet等等——但是沒有標準化的方法來保證它們給出的數據是一致的。有人提議用ONNX(開放式神經網絡交換,Open Neural Network Exchange)這種格式解決這個問題。GraphPipe也嘗試實現一致性,但是卻是在網絡I/O層面。Abrams表示:“聚焦於I/O層面的一個好處是你不必處理將模型轉化為不同格式的問題,而這往往是很多問題的根源。”

GraphPipe如何成為現實

Abrams的深度學習團隊通過走出去尋找開發人員可能遇到的麻煩,發現了對GraphPipe的需求。團隊成員開始運行遠程人工智能模型——使用谷歌創建的AlphaZero AI算法——來學習如何玩一個簡單的遊戲:Connect Four。當他們進行這些測試時,他們發現了對更好的遠程模型服務的需求。

Oracle正在將其這款工具的兩個元素開源。第一個是GraphPipe協議——一種在網絡上傳輸張量數據的標準化、高性能協議,使用FlatBuffers作為通用消息傳遞框架。第二個是服務器和客戶端的示例實現,讓從任何框架部署和查詢機器學習模型變得更加容易。

Abrams表示:“我們認為這可以讓更多有趣的分佈式架構在未來出現。”

GraphPipe等承諾的標準讓開發人員可以在技術基礎上花費更少的時間,並且將更多的時間花在試驗模型上,這就促進了人工智能的創新。而且一旦他們找到了可用的模型,他們可以充滿信心地相信可以將這個模型在企業規模上應用。

正如Abrams在他的博客文章中所寫的:“標準允許研究人員使用他們想要的任何工具來構建最好的模型,並確保用戶可以不用定製代碼的情況下使用模型的預測。”


分享到:


相關文章: