10个基于JavaScript的机器学习案例(译)

科技动态 2017-04-30

在过去的几年里,机器学习的开发库增长很快,可用性也变得越来越可靠,而且没有减慢的趋势。一直以来Python作为机器学习的主力语言,现在神经网络可以应用任何语言了,包括JavaScript!

web生态系统虽然最近一直在取得进步,但是在机器学习领域JavaScropt和Node.js相对Python和Java来说还是稍弱,但是现在它们已经有足够的能力来处理机器学习方法的问题了。Web语言也有一个优势,就是你所有的JavaScript机器学习工程只需要浏览器支持。

现在大部分JavaScript机器学习的库都比较新而且有的还一直在开发中,但是已经实现并且可以尝试使用了。这篇文章我们将一起来了解这些库,一些比较酷的AI的web应用你也可以上手试试。

1. Brain

Brain是一个容易创建神经网络的库,你可以基于它的输入/输出数据来训练。因为训练需要大量的数据资源,虽然有CDN的链接可以通过网络直接加载到网页上。但还是推荐使用Node.js的环境来运行这个库。这里是一个 例子 ,在它们的网站上,被训练来识别颜色的对比。

2. Deep playground

带有教育性质的web应用让你参与神经网络的世界,并探索它们不同的组件。它有一个不错的UI, 让你来控制数据的输入,神经元的数量,用什么样的算法,还有其它大量的可调参数来影响最终的结果。还有大量的可以从应用中的场景中学习的东西 — 代码是开源的,而且用了一个可定义的 机器学习库 , 这个库是基于TypeScript并且有丰富的文档可查阅。

3. FlappyLearning

FlappyLearning是一个JavaScript项目,大概仅仅800行未合并压缩的代码,创建了一个机器学习的库来实现了一个很好玩的例子来玩 Flappy Bird 。这个库里用的人工智能技术叫 Neuroevolution 应用了比较自然的一些神经系统算法,根据每次迭代的成功和失败来动态的学习。这个例子非常容易运行— 用浏览器打开index.html文件就可以了。

4. Synaptic

可能是这个列表里最活跃的项目了, Synaptic是一个Node.js和浏览器可用的库,它是一个不可知结构,允许开发者构建任何类型的神经网络。它有一些构建好的结构,来让它可以更快速的测试和对比不同的机器学习算法。同样有比较完善的介绍和文档,一些练习的例子,还有很多非常棒的指导来理解机器学习是怎么工作的。

5. Land Lines

Land Lines是一个非常有趣的Chrome Web尝试,来找到地球的卫星图片。类似让用户来涂鸦。这个应用没有任何的服务端请求:它整个都运行在浏览器,要多亏机器学习的聪明使用,和WebGL的非常棒的性能表现,甚至在移动设备上。你可以在这里找到源码 GitHub 或阅读整个 案例

6. ConvNetJS

虽然不再积极的被维护了,ConvNetJS是最深入的JavaScript学习库。最初在斯坦福大学里被开发,ConvNetJS在GitHub上变得非常流行,许多社区开始驱动新的特性和指导手册。它直接在浏览器运行,支持多个学习技术,并且它非常的初级,更适合人们更多的体验神经网络。

7. Thing Translator

Thing Translator是一个网页实验,让你的手机用不同的语言来识别现实对象。这个应用完全应用web技术并且整合了Google的两个机器学习的API - Cloud Vision 来做图片识别, Translate API 来做 神经语言翻译。

8. Neurojs

构建AI系统基于强化学习的框架。可惜的是,这个开源项目并没有合适的文档。但是其中的例子,一个汽车自动驾驶的实验,有对构造神经网络的不同部分的详细描述。这个库是纯JavaScript语言并且应用了webpack和babel。

9. Machine Learning

另外的一个可以只用JavaScript来构建并训练神经网络的库。非常容易的安装,需要Nodejs和客户端,对于开发人员非常容易上手的API调用。这个库提供了大量的 示例 来实现了当下流行的算法,帮助来理解核心的机器学习的原则。

10. DeepForge

DeepForge是一个用户友好的开发环境来使用深度学习。允许自己用一些图形接口来设计神经网络,支持远程机器的训练模型,并有版本控制。项目运行在浏览器,并基于Node.js和MongoDB,安装过程对于web开发人员非常熟悉。

福利:Machine Learning in Javascript

非常优秀的博客文章,由Burank Kanber撰写,主要是关于机器学习的基础原理。非常适合JavaScript开发人员的阅读和学习。如果你想深入了解机器学习,这是一个非常棒的资源,推荐给大家。

ljinkai

责编内容by:ljinkai (源链)。感谢您的支持!

您可能感兴趣的

The Cliffs of Insanity: Dramatic Shifts in Technol... Life as a developer (or data scientist, in my case) involves being comfortable ...
npm joins the working group TC39 for a standardize... © Shutterstock / Rawpixel.com More npm news, as the popular package ...
Weather Just the Way You Like It As the U.S. broils in the summer heat, it is nice to know that sometimes the wea...
Top 9 Data Science Use Cases in Banking Using data science in the banking industry is more than a trend, it has bec...
Using prettier and rubocop in Ruby on Rails applic... Recently we started using prettier and rubocop to automatically format...