閱讀42 返回首頁    go 阿裏雲 go 技術社區[雲棲]


TensorFire:WEB端的高性能神經網絡框架


TensorFire由麻省理工學院研究生團隊開發,可以在任何GPU上運行TensorFlow-style的機器學習模型,不需要任何像Keras-js這樣特定於GPU中間件的機器學習庫。TensorFire是通過程序員已經接觸過的一些軟件或硬件來向廣大用戶提供學習。TensorFire通過準確預測模型的工作進展,可以得到部分所需資源。


d767e6d32cdec3b3a599a047336cd582c9d31ad1


TensorFire使用WebGL標準,WebGL標準是用於在瀏覽器中加速渲染GPU圖形的跨平台係統,支持GLSL。GLSL類似C語言,用於編寫著色器,可以直接在GPU上轉換數據的短程序。

著色器通常在WebGL傳輸渠道轉換圖形的呈現方式,比如渲染陰影或其他視覺效果。但是TensorFire使用著色器並行計算從TensorFlow模型生成預測的計算需求。另外,TensorFire還提供了一個用於導入現有TensorFlow和Keras模型的庫。

使用這個框架,可以將經過訓練的模型直接部署到web瀏覽器中,並在瀏覽器中進行本地預測。用戶不需要下載、安裝或編譯任何東西,所有的工作都是直接在瀏覽器中完成,用於進行預測的數據也完全在客戶端處理。GPU的品牌也沒有限製,像AMD和NvidiaGPU都可以。

TensorFire基於網絡的例子展示了一種style-transfer神經網絡,style-transfer就是一件作品的風格可以映射到另一個圖像。演示中最慢的部分是下載模型和編譯著色器過程,而實際執行隻需要一兩秒鍾。

TensorFire比其他解決方案更快。彈跳數據是GPU和CPU之間常見的性能瓶頸,為避免這種情況,TensorFire在GPU上保留盡可能多的數據。

TensorFire最突出的優點是它的便攜性和便利性。現代web瀏覽器在大多數操作係統和硬件平台上運行,甚至低端智能手機也有大量的GPU功耗。從機器學習模型中獲得大部分有價值的工作都是建立機器學習流程,執行培訓或交付預測。把這個過程的大部分工作都歸結為“打開一個網頁瀏覽器點擊”,對某些類工作來說非常有用。

TensorFire的另一個優點是允許部署、預測完全在客戶端完成。其實這對於已經部署到雲計算的成熟模型和數據的優勢並不大。但是對於部署模型很小的應用程序來說,非常有用。如果數據在客戶端,用戶上傳資料會比較謹慎。


79a8134072e5cf4ea10c2b71fca9c140bfd3b590


TensorFire的第三個優點是基於Nvidia和AMDGPU的高速增長,從理論上放寬顯卡可用於機器學習品牌的限製。

從以往來看,Nvidia的CUDA標準一直是通過GPU加速機器學習的首選,提供比支持廣泛的硬件OpenBS標準更多的性能。AMD針對OpenCL性能問題有自己的解決辦法,但TensorFire讓用戶和程序員完全避開了這個問題。

TensorFire利用增長現象,使機器學習模型更加緊湊、高效,隻具有輕微(通常不可檢測)的精度損失。這種“低精度量化張量”方法意味著可以將更小的模型部署到客戶端,並且可以使預測更迅速。TensorFire“量化精度低張量”方法允許軟件在更廣泛的GPU和瀏覽器上運行,特別是那些不支持全範圍WebGL擴展的軟件。

TensorFire將該庫發布為有MIT許可證開源項目,所以在TensorFire中加速方法也可以應用於其他軟件應用中,包括與TensorFlow或機器學習沒有任何關係的應用。TensorFire中的低級別GLSLAPI也可以用於執行任意並行的通用計算,也就是說,其他支持GPU-powered、瀏覽器以及客戶端計算的框架都可以在上麵構建。





原文地址


歡迎關注個人公眾號,查看更多好文。1.gif

3c9443f5671a70732ca1e6ee8cdd027439c92725


最後更新:2017-08-13 22:35:00

  上一篇:go  【阿裏雲大學課程】怎樣學好C語言?從入門到實戰
  下一篇:go  【阿裏雲大學課程】阿裏數據庫專家帶你探索Linux版SQL Server