炼数成金 门户 大数据 JavaScript 查看内容

10 个基于 JavaScript 的机器学习实例

2017-5-26 10:03| 发布者: 炼数成金_小数| 查看: 12770| 评论: 0|来自: 深度学习世界

摘要: 随着人工智能技术的发展,机器学习越来越受到开发者们的关注,从而也导致了机器学习库如雨后春笋般的涌现出来,而且没有任何放缓的趋势。虽然,传统意义上 Python 已经成为了最受欢迎的机器学习语言。但目前神经网络 ...

网络 Java 机器学习 神经网络 JavaScript

随着人工智能技术的发展,机器学习越来越受到开发者们的关注,从而也导致了机器学习库如雨后春笋般的涌现出来,而且没有任何放缓的趋势。虽然,传统意义上 Python 已经成为了更受欢迎的机器学习语言。但目前神经网络可在任何编程语言中运行,当然也包括 JavaScript!

近来,Web 生态系统取得了重大的进展。尽管 JavaScript 和 Node.js 的性能要比 Python 和 Java 的性能差,但它们已经能够应对机器学习中的许多问题。同时,Web 编程语言也具有很强的易用性,即你只要搞定了 Web 浏览器,那么运行 JavaScript ML 项目就不是个事儿。

虽然,大多数 JavaScript 机器学习库都是“新轮子”,有的甚至还在研发中,但并不会影响你的使用。在这篇文章中,我们将与你分享这些库,以及一些很酷的 AI Web 应用程序实例,帮助你开启机器学习之旅。

1. Brain


Brain 是一个可以让你轻松创建神经网络的库,并可通过输入/输出数据进行训练。尽管,它可以直接在浏览器网页上运行,但是训练的过程会占用大量的资源,因此较好在 Node.js 环境中启动它。另外,在他们网站上还有一个用于训练识别色彩对比度的小例子,你也可以了解下。

2. Deep playground


这是由 TensorFlow 出品的可视化的神经网络交互式学习程序。它可以带你了解神经网络,并探索其不同的组件。它不仅有一个漂亮的用户界面,而且通过控制数据、神经元数量、使用算法的类别以及各项其他的指标,让你能够直观、实时的了解其运行的状态。另外,由于它是开源的(它用 TypeScript 编写,并具备优质的文档可查阅),所以通过了解其项目背景,你还能够学到更多有价值的知识。

3. FlappyLearning

FlappyLearning 是一个仅用 800 行代码创建的 JavaScript 机器学习库,它让你可以像行家一样玩转Flappy Bird 游戏。在这个库中所使用的 AI 技术被称为“ Neuroevolution”,而它所应用算法的灵感则源于自然界生物神经系统的进化,并且它可以从每次成功或失败的迭代中进行动态的学习。另外,你只需要在浏览器中打开 index.html 就可以运行它了,炒鸡简单。

4. Synaptic

这个项目可能是本文所有项目中最活跃的项目了。Synaptic 是一个 Node.js 和浏览器可用的库。虽然它的架构未知,但开发人员可以通过它来构建任何类型的神经网络。它也具备一些内置架构,使它能够快速的测试,并能针对不同的机器学习算法进行比较。同时,它的使用文档丰富且全面,包含了神经网络的基本介绍、一些实用的演示,以及相应的使用教程。

5. Land Lines


Land Lines 是一个有趣的 Chrome Web 实验。用户通过在页面上涂鸦,来发现地球上的卫星图像。它可以完全在浏览器中运行,无需服务器端的调用。同时,由于机器学习和 WebGL 的巧妙使用,即使在移动设备上它也有出色的表现。如果你对它比较感兴趣,也可以在 GitHub 上查看其源码,或者在这里阅读整个案例研究。

6. ConvNetJS


虽然,此项目不再积极维护,但 ConvNetJS 却是基于 JavaScript 较先进的深度学习库之一。最初它是由斯坦福大学开发的项目,随着在 GitHub 上的流行,许多社区开始驱动了其新的特性,并撰写了相关的教程。它可以直接在浏览器中工作,支持多种学习技术,而且操作简单,适合神经网络进阶者学习。

7. Thing Translator


Thing Translator 是一个 Web 实验,让你可以通过手机来识别实物,并可用不同的语言为它们命名。这款应用程序完全基于 Web 技术构建,并整合了 Google 的两种机器学习 API,即用于图像识别的Cloud Vision 和用于自然语言翻译的 Translate API 。

8. Neurojs

这是一个基于强化学习的人工智能系统框架。遗憾的是,这个开源项目并没有合适的文档。但其中一个自动驾驶汽车的演示,却对组成神经网络的不同部分有很好的描述。这个库仅通过 JavaScript 实现,并应用了 webpack 和 babel 。

9. Machine_learning


Machine_learning 是一个仅通过 JavaScript 便可设置和训练神经网络的库。无论是在 Node.js,还是客户端上,它都易于安装,并且具备非常干净的 API,适合任何技术级别的开发者进行学习。同时,该库还提供了许多现成的流行算法示例,帮助你了解核心的机器学习原理。

10. DeepForge


DeepForge 是一个对于用户友好的深度学习开发环境。有了它,你可以使用简单的图形界面对神经网络进行设计,同时它还支持远程机器的训练模型,并且内置了版本控制。它基于 Node.js 和 MongoDB,可在浏览器中运行。对于大多数 Web 开发者来说,它的安装过程也会相当的简单。

奖励:Machine Learning in Javascript


这是由 Burak Kanber 发表的一系列文章,主要介绍了一些机器学习基础知识。这些教程专门针对 JavaScript 开发人员,而且写得比较透彻。如果你想更深入地了解机器学习,不妨看一看。

结论
虽然,基于 JavaScript 的机器学习生态体系还在不断的发展,但本文推荐的这些资源,能够帮助你开启机器学习的体验之旅,并对其核心技术有所了解。正如文章中的实例所示,你只需通过浏览器和一些熟知的 JavaScript 代码就能体会到机器学习的极大乐趣。

欢迎加入本站公开兴趣群
软件开发技术群
兴趣范围包括:Java,C/C++,Python,PHP,Ruby,shell等各种语言开发经验交流,各种框架使用,外包项目机会,学习、培训、跳槽等交流
QQ群:26931708

Hadoop源代码研究群
兴趣范围包括:Hadoop源代码解读,改进,优化,分布式系统场景定制,与Hadoop有关的各种开源项目,总之就是玩转Hadoop
QQ群:288410967 

鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

热门频道

  • 大数据
  • 商业智能
  • 量化投资
  • 科学探索
  • 创业

即将开课

 

GMT+8, 2018-11-16 20:22 , Processed in 0.182000 second(s), 24 queries .