欢迎各位阅读本篇,Javascript是一avascript是一种由Netscape的LiveScript发展而来的原型化继承的面向对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器终端语言,比如Perl,遗留的速度问题。当时服务端需要对数据进行验证,由于网络速度相当缓慢,只有28.8kbps,验证步骤浪费的时间太多。本篇文章讲述了JavaScript&机器学习,编程学习网教育平台提醒各位:本篇文章纯干货~因此大家一定要认真阅读本篇文章哦!
随着时间的推移,机器学习库变得更快也更易于使用,其发展速度丝毫没有放缓的迹象。虽然一直以来 Python 都是机器学习的重要语言,但目前的神经网络可以在任何语言中运行,包括 JavaScript!
最近一段时间,Web 生态系统发展迅速,虽然 JavaScript 和 Node.js 在性能上仍然不及 Python 和 java,但它们也已经强大到足以处理许多机器学习的问题。Web 开发语言非常易用,它们在这一点上受益匪浅——你只需要在 Web 浏览器运行一个 JavaScript ML 项目即可。
大多数 JavaScript 机器学习库都还很年轻,仍然处理发展中,但是它们已经存在于此,你可以大胆的试着用用。通过本文,我们会了解到这些库及其大量的很酷的示例。
1.Brain
Brain 是一个可以让你轻松创建神经网络的库,然后你可以通过输入/输出数据对神经网络进行训练。虽然它可以通过 CDN 浏览器版本直接在 Web页面中加载,但由于训练会占用大量资源,所以最好是在 Node.js 环境下进行。它们的网站上有一个小小的演示,它被训练来识别色彩的对比度。
2. Deep playground
这是一个用于教育目的的 Web 应用程序,你可以在上面把玩神经网络并且探索其各种组件。 它有一个很好的 UI 界面,允许您控制输入数据、神经元数量、使用哪种算法以及想要在最终结果中反映的各种其他指标。你还可以从场景背后的应用那里学习到许多东西 —— 代码是开放源代码的,使用了一个用 TypeScript 编写的定制的机器学习库,并且拥有友好的文档。
3. FlappyLearning
FlappyLearning 是一个 JavaScript 项目,大约有 800 行未简化的代码在管理着一个机器学习库的创建,并且在一个有趣的演示中对它进行了场景化的实现,内容就是像一个演奏家那样玩 Flappy Bird。 在这个库中所使用的 AI 技术被称为神经演化(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 实验,可以让你的手机识别出现实生活中的物体对象,并用不同的语言对它们进行命名。该应用程序完全基于 Web 技术,并利用了 Google 的两个机器学习 API —— Cloud Vision 来进行图像识别而 Translate API 则进行自然语言的翻译。
8. Neurojs
这是一个基于增强学习来建立人工智能系统的框架。可悲的是,它做为开源项目并没有适当的文档,不过有一个 Demo,是一个自动驾驶实验,对构成神经网络的不同部分进行了很好的描述。这个库是纯 JavaScript 的,使用了像 webpack 和 babel 这样的现代工具。
9. Machine_learning
这是另外一个能让我们 JavaScript 来设置和训练神经网络的库。 在 Node.js 和客户端中,它都非常容易进行安装,并且具有非常干净的 API,对于所有具备熟练技能级别的开发人员来说都是很合适的。 该库提供了许多实现了流行算法的示例,以帮助你了解核心的机器学习原理。
10. DeepForge
DeepForge 是一个对用户友好的开发环境,用来进行深度学习。 它能让你使用简单的图形界面来设计出神经网络,支持在远程机器上进行模型培训,并且内置了版本控制。 该项目在浏览器中能运行起来,基于 Node.js 和 MongoDB,大多数的 Web 开发人员对于其安装过程都是非常熟悉的。
结语
虽然 JavaScript 机器学习的生态系统尚未完全开发,但你可以使用此列表中的资源来开启学习 ML 之路,并获得对核心技术的体验。正如文章中的示例所示,你仅使用浏览器和一些熟悉的 JavaScript 代码就能获得大量有趣的东西。
分享:相关区别
Java之于Javascript就好比Car(汽车)之于Carpet(地毯)。
——来自Usenet上的Javascript讨论组
中国本地版的说法应该是这样的:Java之于JavaScript就好比雷锋和雷峰塔的关系。
很多人看到 Java 和 JavaScript 都有“Java”四个字,就以为它们是同一样东西,连我自己当初也是这样。事实上,JAVA语言和JavaScript语言是相关的,但是它们的联系并非你想像的那样紧密。首先Java语言是SUN Microsystems公司的产品,而JavaScript是Netscape公司的产品。
其次它们在功能上也有些差异:Java在客户端的运行的应用程序叫做 Java Applet,是嵌在网页中,而又有自己独立的运行窗口的小程序。Java Applet 是预先编译好的,一个 Applet 文件(.class)用 Notepad 打开阅读,根本不能理解。Java Applet 的功能很强大,可以访问 http、ftp等协议,甚至可以在电脑上种病毒(已有先例了)。
相比之下,JavaScript 的能力就比较小了。JavaScript 是一种“脚本”(“Script”),它直接把代码写到 HTML 文档中,浏览器读取它们的时候才进行编译、执行,所以能查看 HTML 源文件就能查看JavaScript 源代码。JavaScript 没有独立的运行窗口,浏览器当前窗口就是它的运行窗口。它们的相同点,我想只有同是以 Java 作编程语言一点了。
Java是由Sun Microsystems于1995年5月推出的Java程序设计语言和Java平台的总称。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动感的Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Java applet。另一方面,Java技术也不断更新。
Java平台由Java虚拟机(Java Virtual Machine)和Java 应用编程接口(Application Programming Interface、简称API)构成。Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java平台之后,Java 应用程序就可运行。现在Java平台已经嵌入了几乎所有的操作系统。这样Java程序可以只编译一次,就可以在各种系统中运行。
Java分为三个体系JavaSE,JavaEE,JavaME。
小结:相信最后大家阅读完毕本篇文章,肯定学到了不少知识吧?其实大家私下还得多多自学,当然如果大家还想了解更多方面的详细内容的话呢,不妨关注编程学习网教育平台,在这个学习知识的天堂中,您肯定会有意想不到的收获的!