谷歌也發(fā)布了Web前端機器學(xué)習庫,就叫deeplearn.js
在人工智能時(shí)代,不管是音箱、手機、汽車(chē)、app,自家產(chǎn)品沒(méi)有用上深度學(xué)習都不好意思跟別人打招呼;另外,谷歌和 Facebook 都分別在 TensorFlow 和 Caffe 2 里提出了在移動(dòng)設備上運行機器學(xué)習算法的目標和相關(guān)支持,更優(yōu)秀的框架和更低的計算力要求確實(shí)是移動(dòng)應用開(kāi)發(fā)者的福音。不過(guò)這還沒(méi)完,在瀏覽器上以 WebApp 的形式做模型推理甚至模型訓練也有重要的開(kāi)發(fā)和應用需求。
本文引用地址:http://dyxdggzs.com/article/201708/362868.htm以往大家對前端機器學(xué)習庫的關(guān)注度較低,不外乎人們認為 JavaScript 運行速度低、應用范圍窄、支持前端的庫少等幾個(gè)原因。不過(guò)許多 JS 圖形庫已經(jīng)有力地證明了 JavaScript 不是低速的代名詞,帶有構建好的機器學(xué)習算法的庫也確實(shí)有一些,比如 brain.js、Synaptic、Natural、ConvNetJS、mljs 等等,分別是幾個(gè)神經(jīng)網(wǎng)絡(luò )、自然語(yǔ)言處理等的庫,其中最出名、最先進(jìn)的是卷積神經(jīng)網(wǎng)絡(luò )庫 ConvNetJS,不過(guò)據了解,它已經(jīng)不再積極地維護了。
現在谷歌也決定在機器學(xué)習前端開(kāi)發(fā)領(lǐng)域添一把柴,昨天發(fā)布了開(kāi)源了自己的前端機器學(xué)習庫 deeplear.js。
谷歌的 PAIR(People + AI Research)研究小組是一個(gè)以人為中心的 AI 系統研究小組,他們的研究興趣是各種人類(lèi)和人工智能之間的互動(dòng)可能,包括為工程師提供更便捷的開(kāi)發(fā)方式,一直到用人工智能理解生活中各種各樣的事情。deeplearn.js 就是 PAIR 出力、借助了谷歌大腦團隊的一點(diǎn)幫助開(kāi)發(fā)出來(lái)的,它除了支持構建可微的數據流圖、帶有可以直接使用的數學(xué)函數外,還使用 WebGL 來(lái)加速訓練和推理過(guò)程,從而提供了高性能的機器學(xué)習模型開(kāi)發(fā)平臺,可以在瀏覽器環(huán)境下訓練模型或者用訓練好的模型做推理。PAIR 希望對機器學(xué)習感興趣的人可以把它用在教育、理解模型、藝術(shù)工作等各個(gè)領(lǐng)域。
deeplear.js 提供了兩套 API,一套是類(lèi)似 NumPy 的即時(shí)執行模型,另一套是對 TensorFlow API 的重現,不過(guò)會(huì )略有延遲。它當然也提供了詳細的開(kāi)發(fā)文檔和新手教程。為了方便剛接觸的人快速了解核心概念,新手教程里有專(zhuān)門(mén)面向初次接觸機器學(xué)習者的部分,講解了基本的計算原理;自帶的 demo 也非常簡(jiǎn)單直觀(guān)便于操作,比如下圖就是用 deeplear.js 實(shí)現的經(jīng)典卷積網(wǎng)絡(luò ) MNIST 識別模型,界面美觀(guān)、清晰易懂。只有加載時(shí)候花一點(diǎn)時(shí)間,修改模型的時(shí)候非常方便快捷。
在 deeplear.js 的官網(wǎng)上也一并介紹了這個(gè)項目的路線(xiàn)圖,除了下一步要支持到 WebGL 2.0 以外,SGD 之外的優(yōu)化器、2D 邏輯采樣(目前需要在 3D 邏輯空間實(shí)際 2D 空間之間轉換)、增大 batch 大小、提高與 TensorFlow 之間協(xié)作的易用性、增加循環(huán)網(wǎng)絡(luò )類(lèi)型等等修補、增添也會(huì )加入到 deeplear.js 中來(lái)??深A見(jiàn)的是,deeplear.js 在不久的將來(lái)會(huì )成為真正完善好用的前端機器學(xué)習庫,成為輕量的初學(xué)者和嚴肅的 web 開(kāi)發(fā)者的一個(gè)好選擇。
評論