值得探索的 8 個機器學習 JavaScript 框架

2018-03-14    分類:WEB開發、機器學習/人工智慧、程式設計開發、首頁精華0人評論發表於2018-03-14

本文由碼農網 – 小峰原創翻譯,轉載請看清文末的轉載要求,歡迎參與我們的付費投稿計劃

JavaScript開發人員傾向於尋找可用於機器學習模型訓練的JavaScript框架。下面是一些機器學習演算法,基於這些演算法可以使用本文中列出的不同JavaScript框架來模型訓練:

  • 簡單的線性迴歸
  • 多變數線性迴歸
  • 邏輯迴歸
  • 樸素貝葉斯
  • k最近鄰演算法(KNN)
  • K-means
  • 支援向量機(SVM)
  • 隨機森林
  • 決策樹
  • 前饋神經網路
  • 深度學習網路

在這篇文章中,你將學習針對機器學習的不同JavaScript框架。具體內容為:

1.DeepLearn.js

Deeplearn.js是Google釋出的一個開源的機器學習JavaScript庫,可用於不同的目的,例如在瀏覽器中訓練神經網路,理解ML模型,用於教育目的等。你可以在推理模式中執行預先訓練的模型。可以在Typescript(ES6 JavaScript)或ES5 JavaScript中編寫程式碼。通過在HTML檔案的head標籤中包含以下程式碼並編寫用於構建模型的JS程式,可以實現快速入門。

<script src="https://cdn.jsdelivr.net/npm/deeplearn@latest"></script>
<!-- or -->
<script src="https://unpkg.com/deeplearn@latest"></script>

2.PropelJS

Propel,一個JavaScript庫,為科學計算提供了GPU支援的類似numpy的基礎架構。它可以用於NodeJS app和瀏覽器。以下是瀏覽器的設定程式碼:

<script src="https://unpkg.com/propel@3.1.0"></script>

以下程式碼可用於NodeJS app:

npm install propel
import { grad } from "propel";

PropelJS 文件(Propel doc)。Propel的GitHub頁面

3.ML-JS

ML-JS提供了用於使用NodeJS和瀏覽器的機器學習工具。ML JS工具可以使用以下程式碼進行設定:

<script src="https://www.lactame.com/lib/ml/2.2.0/ml.min.js"></script>

支援以下機器學習演算法:

  • 無監督學習
  • 主成分分析(PCA)
  • K均值聚類
  • 監督學習
  • 簡單線性迴歸
  • 多變數線性迴歸
  • 支援向量機(SVM)
  • 樸素貝葉斯
  • K最近鄰演算法(KNN)
  • 偏最小二乘演算法(PLS)
  • 決策樹:CART
  • 隨機森林
  • 邏輯迴歸
  • 人工神經網路
  • 前饋神經網路

4.ConvNetJS

ConvNetJS是一個JavaScript庫,完全用於在瀏覽器中深度學習模型訓練(神經網路)。這個庫也可以用在NodeJS app中。

可以從ConvNetJS簡化庫中獲取ConvNetJS的簡化版本入門。ConvNetJS的釋出頁面

<script src="convnet-min.js"></script>

下面是一些重要的頁面:

5.KerasJS

通過KerasJS,你可以在瀏覽器中執行Keras模型,並使用WebGL得到GPU支援。模型也可以在Node.js中執行,但只能在CPU模式下執行。Keras的GitHub頁面。以下是可以在瀏覽器中執行的Keras模型列表:

  • MNIST的基本convnet
  • 卷積變分自編碼器,在MNIST上訓練
  • MNIST上的輔助分類器生成式對抗網路(AC-GAN)
  • 50層殘差網路,在ImageNet上訓練
  • Inception v3,在ImageNet上訓練
  • DenseNet-121,在ImageNet上訓練
  • SqueezeNet v1.1,在ImageNet上訓練
  • IMDB情緒分類的雙向LSTM

6.STDLIB

STDLib是一個JavaScript庫,可用於構建高階統計模型和機器學習庫。它也可以用於資料視覺化和探索性資料分析的繪圖和圖形功能。

以下是與ML有關的庫列表:

  • 通過隨機梯度下降進行線性迴歸(@ stdlib / ml / online-sgd-regression)
  • 通過隨機梯度下降進行二元分類(@ stdlib / ml / online-binary-classification)
  • 自然語言處理(@ stdlib / nlp)

7.Limdu.js

Limdu.js是Node.js的機器學習框架。它支援以下一些內容:

  • 二元分類
  • 多標籤分類
  • 特徵工程
  • SVM

可以使用以下命令來安裝limdu.js:

npm install limdu

8.Brain.js

Brain.js是一套用於訓練神經網路和樸素貝葉斯分類器的JavaScript庫。以下程式碼可用於安裝Brain.js:

npm install brain.js

也可以使用以下程式碼在瀏覽器中引入該庫:

<script src="https://raw.githubusercontent.com/harthur-org/brain.js/master/browser.js"></script>

以下內容可用於安裝樸素貝葉斯分類器:

npm install classifier

總結

在這篇文章中,我們瞭解了可用於在瀏覽器和Node.js app中機器學習模型訓練的不同JavaScript庫。有關機器學習的文章,建議檢視機器學習檔案

這篇文章對你有幫助嗎?或者你對文中有關機器學習的JavaScript框架有任何疑問或建議?歡迎在評論中留下你的看法並提出問題來共同探討。

譯文連結:http://www.codeceo.com/article/8-machine-learn-js-frameworks.html
英文原文:8 Machine Learning JavaScript Frameworks to Explore
翻譯作者:碼農網 – 小峰
轉載必須在正文中標註並保留原文連結、譯文連結和譯者等資訊。]

相關文章