前端機器學習:五個流行的開源Javascript機器學習框架

自從Node出現以來,徹底把Javascript從瀏覽器中解放出來。其它服務端語言能做的事情,JS也能做到,有時候可能做的還比較好。因其語法的靈活性,現在越來越受開發者的喜愛。很長時間以來,人工智能和機器學習的話題變得較為火熱,相關的知識也在不斷湧現出來。相關的框架也有很多。

前端機器學習:五個流行的開源Javascript機器學習框架

儘管現在python編程語言是機器學習框架最火的編程語言,但其它編程語言也沒有落下,像Java、C#,當然作為一門流行的編程語言,Javascript也是其中的一個。如果你是一個Javascript開發者,如果想研究機器學習,那麼接下來要介紹的五個框架也許能激起你的興趣。

1.TensorFlow.js

Tensorflow.js是一個開源的庫,用它可以將機器學習的項目跑在瀏覽器中。它繼承自Deeplearn.js,但Deeplearn.js已經不再維護了。TensorFlow.js改善並強化了Deeplearn.js的一些功能,使你可以充分利用瀏覽器,獲得更深入的機器學習體驗。

這個開源庫,有多種多樣的直觀的api幫助你從零開始定義、訓練和發佈模型。此外,它自動提供對WebGL和Node.js的支持。

Tensorflow.js還可以使你能夠把以前的存在的學習模型導入到瀏覽器中。在不離開瀏覽器的情況下,你就可以反覆訓練存在的模型。

2.機器學習工具包

機器學習工具包是指資源豐富的開源工具的彙編,它支持瀏覽器裡廣泛的機器學習功能。該工具包對一些機器學習算法提供支持,包含無監督學習,監督學習,數據處理,人工神經網絡,數學運算和迴歸。

如果你有python背景,在尋找相似的面向Javscript跑在瀏覽器的機器學習算法庫,這個工具套件就包含了你所要的。

3.Keras.js

Keras.js是另一個流行的開源機器學習框架,可以使模型跑在瀏覽器上。它提供GPU模式支持WebGL。如果你有面向Node.js的模型,那你只能在CPU模式下運行它們。Keras.js同樣提供對一些後端框架訓練模型的支持,比如微軟認識工具包。

一些Keras模型能發佈到客戶端瀏覽器上,包括Inception v3(在imageNet上訓練),50層殘差網絡(在imageNet上訓練),卷積變分自編碼(在MNIST上訓練)。

4.Brain.js

機器學習模仿對數學要求比較高,這個特點讓很多初學者望而生畏,打退堂鼓。這就是Brain.js重要和有價值的地方。它是一個開源的,使用Javascript語言的框架,它簡單化了定義、訓練和運行神經網絡的過程。

如果你是一個Javascript開發者且對機器學習一無所知,Brain.js可能減少你學習的彎路。它可以在node.js或者瀏覽器裡訓練機器學習模型。Brain.js支持的網絡包括前饋神經網絡、Ellman網絡和門控迴歸單元網絡。

5.STDLib

STDLib是一個面向Javascript和Node.js應用的開源庫。如果你在尋找一個重點支持科學和數字基於網絡的機器學習應用的庫,STDLib可能滿足你的需求。

這個庫本身帶有綜合的高級的數學和統計函數,可以讓你創建高性能的機器學習模型。你也可以使用它的擴展功能來創建應用和其它庫。此外,如果你想要一個數據可視化和大數據分析的框架,你會發現STDLib很有價值。

總結

在當前AI大潮向前推進中,這著實是前端工作者或者Javascript開發者的福音。它可以讓你在探索機器學習世界精彩的同時,少走很多彎路。接下來就是書山有路勤為徑,學海無涯苦作舟了。


分享到:


相關文章: