通常,人们使用两种编程语言之一来应用机器学习(ML)方法和算法:Python或R.关于机器学习的书籍,课程和教程通常也使用这些语言中的一种(或两者)。 Python是一种通用编程语言,不仅用于机器学习,还用于科学计算,后端Web开发,桌面应用程序等.R主要用于统计学家。但是,它们至少有两个共同特征: 它们适合非程序员 他们有全面的ML库 在许多情况下,ML算法在Fortran,C,C ++或Cython中实现,并从Python或R调用。 Java也用于机器学习,但通常由专业程序员使用。 在过去的几年中,JavaScript得到了普及,并且出现了一些非常有趣的机器学习库,可以在浏览器或Node.js上实现ML方法。令人惊讶的是,许多这些库在JavaScript中实现了大量代码。 ml.js ml.js是一个全面的,通用的JavaScript ML库,适用于浏览器和Node.js. 它提供了以下例程: 对数组,哈希表,排序,随机数生成等的位操作。 线性代数,数组操作,优化(Levenberg-Marquardt方法),统计 交叉验证 监督学习 无监督学习 支持的监督学习方法是: 线性,多项式,指数和幂回归 K-最近邻居 朴素贝叶斯 支持向量机 决策树和随机森林 前馈神经网络等 此外,ml.js提供了几种无监督的学习方法: 主成分分析 聚类分析(k均值和层次聚类) 自组织地图(Kohonen网络) TensorFlow.js TensorFlow是最受欢迎的机器学习库之一。它侧重于人工神经网络的各种类型和结构,包括深度网络以及网络的组件。 TensorFlow由Google Brain Team创建,使用C ++和Python编写。但是,它可以与包括JavaScript在内的多种语言一起使用。 TensorFlow是一个非常全面的库,仍然可以轻松地构建和培训模型。它支持各种各样的网络层,激活功能,优化器和其他组件。它具有良好的性能并提供GPU支持。 TensorFlow.js是一个用于浏览器或Node.js的JavaScript ML库。它支持WebGL。 brain.js brain.js是一个用JavaScript编写的库 – 专注于训练和应用前馈和循环神经网络。它还提供其他实用程序,例如神经网络所需的数学例程。 它提供了高级选项,如: 使用GPU训练网络 可以并行适应多个网络的异步培训 交叉验证是一种更复杂的验证方法 brain.js将模型保存到JSON文件或从中加载模型。 ConvNetJS ConvNetJS是神经网络和深度学习的另一个库。它可以在浏览器中训练神经网络。除了分类和回归问题,它还有强化学习模块(使用Q学习)仍然是实验性的。ConvNetJS为在图像识别方面表现优异的卷积神经网络提供支持。 在ConvNetJS中,神经网络是层的列表。它提供以下层: 输入(第一个)图层 完全连接的层 卷积层 汇集层 局部对比度归一化层 分类器丢失(输出)层:softmax和svm 使用L2的回归损失(输出)层 它支持几个重要的激活功能,如: RELU 乙状结肠 双曲正切 MAXOUT 以及优化器如: 随机梯度下降 Adadelta AdagradS ConvNetJS还提供了一种方便的方法来保存和加载JSON文件的模型。 执照:麻省理工学院。 WebDNN WebDNN是一个专注于深度神经网络的图书馆,包括具有LSTM架构的递归神经网络。它使用TypeScript和Python编写,并提供JavaScript和Python API。 它还提供了在浏览器中执行GPU的可能性。 WebDNN的一个非常方便的功能是可以转换和使用PyTorch,TensorFlow,Keras,Caffemodel或Chainer预训练的模型。 natural natural是一个用于Node.js的自然语言处理的JavaScript库。 它支持: 标记化(将文本分解为字符串数组) 弦距离的计算 匹配相似的字符串 分类(朴素贝叶斯,逻辑回归和最大熵) 情感分析(目前有八种语言) 语音匹配,inflectors,n-gram等 结论 在过去的几年里,JavaScript和机器学习都得到了很多关注和普及。尽管最初是为了实现网页的动态行为而创建的,但JavaScript成为实现和应用机器学习方法的首选语言之一,尤其是在浏览器或服务器(Node.js)中。 本文提供了有关JavaScript机器学习库可用性的初始信息。 作者:爱码农_今日头条原文链接:https://www.toutiao.com/a6713703479807836685/ 转载请注明:www.ainoob.cn » 2019年用于JavaScript的6大机器学习库 喜欢 (0)or分享 (0)