avaScript开发人员倾向于寻找可用于机器学习模型训练的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>
下面是一些重要的页面:
用于ConvNetJS的NPM软件包(https://www.npmjs.com/package/convnetjs)
入门(https://cs.stanford.edu/people/karpathy/convnetjs/started.html)
文档(https://cs.stanford.edu/people/karpathy/convnetjs/docs.html)
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