JavaScript中七种流行的开源机器学习框架


Posted in Javascript onOctober 11, 2018

如果你是一位想要深入机器学习的 JavaScript 程序员或想成为一位使用 JavaScript 的机器学习专家,那么这些开源框架也许会吸引你。

开源工具的涌现使得开发者能够更加轻松地开发应用,这一点使机器学习领域本身获得了极大增长。(例如,AndreyBu,他来自德国,在机器学习领域拥有五年以上的经验,他一直在使用各种各样的开源框架来创造富有魅力的机器学习项目。)

虽然 Python 是绝大多数的机器学习框架所采用的语言,但是 JavaScript 也并没有被抛下。JavaScript 开发者可以在浏览器中使用各种框架来训练和部署机器学习模型。

1、TensorFlow.js

TensorFlow.js 是一个开源库,它使你能在浏览器中完整地运行机器学习程序,它是 Deeplearn.js 的继承者,Deeplearn.js 不再更新了。TensorFlow.js 在 Deeplearn.js 功能的基础上进行了改善,使你能够充分利用浏览器,得到更加深入的机器学习经验。

通过这个开源库,你可以在浏览器中使用有各种功能的、直观的 API 来定义、训练和部署模型。除此之外,它自动提供 WebGL 和 Node.js 的支持。

如果您有了一个已经训练过的模型,你想要导入到浏览器中。TensorFlow.js 可以让你做到这一点,你也可以在不离开浏览器的情况下重新训练已有的模型。

2、Machine learning tools

现在有很多在浏览器中提供广泛的机器学习功能的资源型开源工具,这个机器学习工具库就是这些开源工具的集合。这个工具库为好几种机器学习算法提供支持,包括非监督式学习、监督式学习、数据处理、人工神经网络(ANN)、数学和回归。

如果你以前使用 Python,现在想找类似于 Scikit-learn 的,能在浏览器中使用 JavaScript 进行机器学习的工具,这套工具会满足你的要求。

3、Keras.js

Keras.js 是另外一个热门的开源框架,它使你能够在浏览器中运行机器学习模型,它使用 WebGL 来提供 GPU 模式的支持。如果你有使用 Node.js 的模型,你就只能在 GPU 模式下运行它。Keras.js 还为使用任意后端框架的模型训练提供支持,例如 Microsoft Cognitive Toolkit (CNTK) 。
一些 Keras 模型可以部署在客户端浏览器上,包括 Inception v3 (训练在 ImageNet 上),50 层冗余网络(训练在 ImageNet 上),和卷积变化自动编码器(训练在 MNIST 上)。

4、Brain.js

机器学习里的概念非常重要,它可能会使刚开始进入这个领域的人们气馁,这个领域里的学术用语和专业词汇可能会使初学者感到崩溃,而解决以上问题的能力就是 Brain.js 的优势所在。它是开源的,基于 JavaScript 的框架,简化了定义、训练和运行神经网络的流程。

如果你是一个 JavaScript 开发者,并且在机器学习领域是完全的新手,Brain.js 能减低你学习的难度曲线。它可以和 Node.js 一起使用,或者运行在客户端浏览器里来训练机器学习模型。Brain.js 支持部分类型的神经网络,包括前馈式网络、Ellman 网络,和门循环单元网络。

5、Synaptic.js

Synaptic 可以运行在浏览器和 NodeJs 服务器端的神经网络库,你能够用它训练一层甚至是二层神经网络结构。该库包括一些内置的体系结构,如多层感知机(MLP)、长短时记忆网络、液体状态机和能够训练真实网络的训练器。

6、compromise

基本上是NLP自然语言处理库 - 前端 Java 实现的首选,这个库加上自己的资料库压缩成min.js后文件大小可达到300k以下,这样运行在浏览器和 NodeJs 服务器端都问题不大,具体可以做的东西是训练自定义语义库:划分出分词,获取句子的各个词性,可以把句子变积极消极、分词等.

7、STDLib

STDLib 是一个基于 JavaScript 和 Node.js 应用的开源库,如果您正在寻找一种在浏览器中运行,支持科学和数字化的基于 web 的机器学习应用,STDLib 能满足你的需要。

这个库能提供全面而先进的数学和统计学上的功能,来帮助你构建高性能的机器学习模型。你同样也可以使用它丰富的功能来构建应用程序和其他的库。除此之外,如果你想要一个数据可视化和探索性数据分析的框架 —— STDLib 你,值得拥有。

如果你是一个 JavaScript 开发者,并且打算深入研究令人兴奋的机器学习世界,或者说,你是一个机器学习方面的专家,打算开始尝试使用 JavaScript ,那么上述的开源框架会激起您的兴趣。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Javascript 相关文章推荐
用js代码改变单选框选中状态的简单实例
Dec 18 Javascript
jQuery滚动条插件nanoscroller使用指南
Apr 21 Javascript
JQuery实现样式设置、追加、移除与切换的方法
Jun 11 Javascript
Javascript BOM学习小结(六)
Nov 26 Javascript
使用plupload自定义参数实现多文件上传
Jul 19 Javascript
jQuery实现最简单的切换图效果【可兼容IE6、火狐、谷歌、opera等】
Sep 04 Javascript
js原生跨域_用script标签的简单实现
Sep 24 Javascript
ES6中箭头函数的定义与调用方式详解
Jun 02 Javascript
react native实现往服务器上传网络图片的实例
Aug 07 Javascript
Vue.js添加组件操作示例
Jun 13 Javascript
从vue源码看props的用法
Jan 09 Javascript
4 种滚动吸顶实现方式的比较
Apr 09 Javascript
用Object.prototype.toString.call(obj)检测对象类型原因分析
Oct 11 #Javascript
使用vue 国际化i18n 实现多实现语言切换功能
Oct 11 #Javascript
详解Angular5/Angular6项目如何添加热更新(HMR)功能
Oct 10 #Javascript
Node.js npm命令运行node.js脚本的方法
Oct 10 #Javascript
vue环形进度条组件实例应用
Oct 10 #Javascript
Node.js中读取TXT文件内容fs.readFile()用法
Oct 10 #Javascript
详解Node.js读写中文内容文件操作
Oct 10 #Javascript
You might like
Zerg剧情介绍
2020/03/14 星际争霸
PHP中MD5函数使用实例代码
2008/06/07 PHP
PHP中使用Imagick读取pdf并生成png缩略图实例
2015/01/21 PHP
php自定义urlencode,urldecode函数实例
2015/03/24 PHP
php 解析xml 的四种方法详细介绍
2016/10/26 PHP
点弹代码 点击页面任何位置都可以弹出页面效果代码
2012/09/17 Javascript
纯js实现瀑布流展现照片(自动适应窗口大小)
2013/04/08 Javascript
js取消单选按钮选中并判断对象是否为空
2013/11/14 Javascript
如何实现textarea里的不同文本显示不同颜色
2014/01/20 Javascript
javascript面向对象快速入门实例
2015/01/13 Javascript
javascript操作ul中li的方法
2015/05/14 Javascript
JavaScript处理解析JSON数据过程详解
2015/09/11 Javascript
深入理解逻辑表达式的用法 与或非的用法
2016/06/06 Javascript
jQuery ready()和onload的加载耗时分析
2016/09/08 Javascript
JS组件系列之JS组件封装过程详解
2017/04/28 Javascript
细说webpack源码之compile流程-rules参数处理技巧(1)
2017/12/26 Javascript
js实现微信/QQ直接跳转到支付宝APP打开口令领红包功能
2018/01/09 Javascript
详解Vue.js中.native修饰符
2018/04/24 Javascript
electron中使用bootstrap的示例代码
2018/11/06 Javascript
详解webpack4之splitchunksPlugin代码包分拆
2018/12/04 Javascript
Vue实现的父组件向子组件传值功能示例
2019/01/19 Javascript
详解微信小程序scroll-view横向滚动的实践踩坑及隐藏其滚动条的实现
2019/03/14 Javascript
微信小程序实现卡片层叠滑动效果
2019/06/21 Javascript
JS内置对象和Math对象知识点详解
2020/04/03 Javascript
python实现360的字符显示界面
2014/02/21 Python
Python装饰器decorator用法实例
2014/11/10 Python
基于python(urlparse)模板的使用方法总结
2017/10/13 Python
python学习入门细节知识点
2018/03/29 Python
Python使用爬虫抓取美女图片并保存到本地的方法【测试可用】
2018/08/30 Python
pandas.read_csv参数详解(小结)
2019/06/21 Python
Flask框架学习笔记之路由和反向路由详解【图文与实例】
2019/08/12 Python
使用python 将图片复制到系统剪贴中
2019/12/13 Python
Django实现后台上传并显示图片功能
2020/05/29 Python
extern是什么意思
2016/03/10 面试题
大专生毕业的自我评价
2014/02/06 职场文书
将图片保存到mysql数据库并展示在前端页面的实现代码
2021/05/02 MySQL