聊聊那些使用前端Javascript实现的机器学习类库


Posted in Javascript onSeptember 18, 2017

机器学习(Machine Learning)在最近几年绝对称的上是大火,越来越多的公司和资本投入了巨大资源和金钱到这个新上位的技术“新宠”中,尤其是随着更多的各种机器学习相关类库的出现和发展,更多新的技术已经被应用到了机器学习中, 现在大家可以看到, Python不再是唯一个老牌机器学习的必用语言, 对于现代神经网络(neural networks)语言不再是一个问题, 你基本可以使用任何的编程语言, 包括今天我们介绍的标准前端开发语言 - Javascript

Web的整个体系已经在近几年中有了长足的发展, 虽然 Javascript 和 node.js的使用案例还远远无法和Java/Python来媲美。 但是 也足够应用到很多机器学习的环境中去啦。而且最大的优势在于 - 一个浏览器就可以帮你搞定了一切 !

虽然, 基于Javascript的机器学习类库还非常的早期,很多依旧在开发状态下, 但是他们的确已经可以提供比较早期的体验。 在今天这篇文章中, 我们将选择几款超酷的机器学习和AI相关的web应用, 让大家初体验一下 ~~

Brain

brain是一个允许你快速简单创建神经网络并且基于输入/输出进行训练的类库。虽然一个CDN浏览器版本可以直接将类库加载到web页面中, 因为这个训练过程占用了大量的资源, 所以将这个类库运行在了一格Node.js环境下 。 这个类库包含了一个非常迷你的在线演示, 可以用来训练识别颜色的对比度

聊聊那些使用前端Javascript实现的机器学习类库

Deep playground

这个教育化的web应用允许你把玩神经网络,并且探索不同的组件。 拥有非常设计良好的UI, 可以允许你控制输入数据,神经元数量, 使用的算法等, 各种相关的度量将会影响最终的结果。 当然这里在后台中有大量值得学习的东西, 代码是开源的, 使用了自定义的 机器学习语言 (typescript), 并且拥有非常好的文档

聊聊那些使用前端Javascript实现的机器学习类库

FlappyLearning

这是一个使用800行代码实现的机器学习Javasript类库, 实现了一个机器学习 flappy bird 游戏的demo。 在这个类库中使用了AI技巧:Neuroevolution ,应用了来自“自然”杂志的神经系统算法, 动态的从每一个迭代的成功和失败中学习。 demo运行非常简单, 直接使用浏览器打开index.html即可

聊聊那些使用前端Javascript实现的机器学习类库

截图中可以看到经过了20代的学习, 这只鸟, 在我截屏的时候,依然还没有挂掉 !

Synaptic

可能是最活跃维护的项目之一, Synaptic是一个node.js和浏览器类库, 这个类库被设计为架构不可知的状态, 允许了开发人员创建任何类型的神经网络。 拥有很少的内建架构, 是的能够快速的测试和算法比较。 同时包含了一个非常完整的神经网络说明, 一些实际的演示, 很多其它相关的教程,来介绍机器学习如何工作滴

聊聊那些使用前端Javascript实现的机器学习类库

Land Lines

land lines是一个非常有趣的Chrome Web实验, 它查找地球的卫星图片,找出类似用户的涂鸦。 这个app没有服务器调用, 完全在浏览器里运行, 使用了webGL和机器学习, 在移动端也有很好的体验。

聊聊那些使用前端Javascript实现的机器学习类库

ConvNetJS

虽然已经不再活跃的维护了, ConvNetJS是Javascript机器学习的最先进的类库。 最早是斯坦福大学开发, 后来在Github上非常知名, 拥有了很多社区开发的特性和教程。 直接在浏览器里运行, 支持多学习技巧, 偏底层, 是的它非常适合神经网络中比较大的体验

聊聊那些使用前端Javascript实现的机器学习类库

Thing Translator

这是一个web实验演示, 允许你使用手机来识别现实生活中的物品,并且用不同语言来命名。 这个app使用web技术和两个来自Google的机器学习API实现,包括:

Cloud Vision (图片识别) 和 Translate API(语言翻译)

聊聊那些使用前端Javascript实现的机器学习类库

Neurojs

基于“增强学习“的AI系统框架。 很可惜这个项目没有正确的文档说明, 但是有一个自动驾驶的演示,拥有很多相关细节的文字描述。 这个类库纯Javascript,可以使用webpack或者babel来编译打包

聊聊那些使用前端Javascript实现的机器学习类库

Machine_learning

另外一个允许我们设置/训练神经网络的Javascript类库。 使用node.js和客户端安装非常简单, 拥有非常干净的API, 对于不同技术水平的开发人员来说,都非常适应。这个类库包含了大量的演示, 包含了很多流行的算法, 帮助你理解核心的及其学习语言原则

聊聊那些使用前端Javascript实现的机器学习类库

DeepForge

这是一个用户友好的深度学习开发环境, 允许你使用一格简单图形界面设计神经网络, 支持远程机器的训练模型, 内建版本控制, 这个项目基于Node.js和MongoDB,运行在浏览器里, 安装过程非常类似大多数的web开发过程

聊聊那些使用前端Javascript实现的机器学习类库

文章总结

虽然Javascript相关机器学习环境并没有被完整的开发, 我们推荐使用本文中列出的这些开源项目作为你的第一个机器学习资料,并且帮助你了解核心的技术。 希望对大家能够开展机器学习相关功能提供一个有效可借鉴的内容来源,感谢大家关注和阅读~也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript实现的分页函数
Feb 07 Javascript
判断用户是否在线的代码
Mar 05 Javascript
jQuery插件jQuery-JSONP开发ajax调用使用注意事项
Nov 22 Javascript
seajs中模块的解析规则详解和模块使用总结
Mar 12 Javascript
jQuery实现的图片分组切换焦点图插件
Jan 06 Javascript
自己动手写的jquery分页控件(非常简单实用)
Oct 28 Javascript
理解javascript定时器中的setTimeout与setInterval
Feb 23 Javascript
Jqprint实现页面打印
Jan 06 Javascript
Vue Cli与BootStrap结合实现表格分页功能
Aug 18 Javascript
了解JavaScript中的选择器
May 24 Javascript
基于layui table返回的值的多级嵌套的解决方法
Sep 19 Javascript
vue双向绑定数据限制长度的方法
Nov 04 Javascript
Web技术实现移动监测的介绍
Sep 18 #Javascript
探索webpack模块及webpack3新特性
Sep 18 #Javascript
浅谈JavaScript作用域和闭包
Sep 18 #Javascript
详解用函数式编程对JavaScript进行断舍离
Sep 18 #Javascript
深入浅析JavaScript中的RegExp对象
Sep 18 #Javascript
JavaScript 数组的进化与性能分析
Sep 18 #Javascript
JavaScript实现HTML5游戏断线自动重连的方法
Sep 18 #Javascript
You might like
php连接Access数据库错误及解决方法
2013/06/20 PHP
解析如何修改phpmyadmin中的默认登陆超时时间
2013/06/25 PHP
PHP程序员基本要求和必备技能
2014/05/09 PHP
PHP判断是否为空的几个函数对比
2015/04/21 PHP
PHP表单验证内容是否为空的实现代码
2016/11/14 PHP
浅谈php fopen下载远程文件的函数
2016/11/18 PHP
PHP的RSA加密解密方法以及开发接口使用
2018/02/11 PHP
PHP中检查isset()和!empty()函数的必要性
2019/02/13 PHP
非常好的js代码
2006/06/27 Javascript
Js 获取当前日期时间及其它操作实现代码
2021/03/04 Javascript
一些相见恨晚的 JavaScript 技巧
2010/04/25 Javascript
jQuery 选择器、DOM操作、事件、动画
2010/11/25 Javascript
Javascript中封装window.open解决不兼容问题
2014/09/28 Javascript
jQuery实现提交按钮点击后变成正在处理字样并禁止点击的方法
2015/03/24 Javascript
js点击列表文字对应该行显示背景颜色的实现代码
2015/08/05 Javascript
Node.js中JavaScript操作MySQL的常用方法整理
2016/03/01 Javascript
js 数据存储和DOM编程
2017/02/09 Javascript
微信小程序本作用域下调用全局JS详解及实例
2017/02/22 Javascript
浅谈jQuery的bind和unbind事件(绑定和解绑事件)
2017/03/02 Javascript
jQuery中Chosen三级联动功能实例代码
2017/03/07 Javascript
React路由管理之React Router总结
2018/05/10 Javascript
快速解决select2在bootstrap模态框中下拉框隐藏的问题
2018/08/10 Javascript
对Layer UI 模块化的用法详解
2019/09/26 Javascript
Vue项目页面跳转时浏览器窗口上方显示进度条功能
2020/03/26 Javascript
vue自定义标签和单页面多路由的实现代码
2020/05/03 Javascript
[00:56]PWL开团时刻DAY8——追追追追追!
2020/11/09 DOTA
Python网页解析利器BeautifulSoup安装使用介绍
2015/03/17 Python
使用rpclib进行Python网络编程时的注释问题
2015/05/06 Python
pytorch对可变长度序列的处理方法详解
2018/12/08 Python
解决jupyter运行pyqt代码内核重启的问题
2020/04/16 Python
python爬虫中PhantomJS加载页面的实例方法
2020/11/12 Python
阿玛尼美国官方网站:Armani.com
2016/11/25 全球购物
教师听课评语大全
2014/12/31 职场文书
搞笑老公保证书
2015/02/26 职场文书
幼儿园开学通知
2015/04/24 职场文书
2016思想纪律作风整顿心得体会
2016/01/23 职场文书