您还未登录! 登录 | 注册 | 帮助  

您的位置: 首页 > 软件开发专栏 > 其他 > 正文

推荐 10 个饱受好评且功能独特的开源人工智能项目

发表于:2017-12-20 作者:佚名 来源:开源中国

关于人工智能的项目,相信大家都看过或者用过不少了,但它们的大多数看上去都十分“高大上”,让人感觉要掌握他们犹如习屠龙之术一样。事实上,有很多关于人工智能的项目还是十分实用的,而且用途还十分有趣,下面就简单为大家盘点 10 个功能独特的开源人工智能项目。

1. STYLE2PAINTS:强大的为线稿上色的 AI

推荐理由:新一代的强大线稿上色 AI,可根据用户上传的自定义色彩给线稿进行上色。项目提供了在线使用网站,十分方便使用。

2. SerpentAI:基于 Python 的教 AI 打游戏的学习框架

推荐理由:SerpentAI 旨在为机器学习和 AI 研究提供一个有价值的工具。但同时,对于爱好者来说,它也是非常有趣的。

Serpent.AI 中包含大量支持模块,在以游戏为开发环境时经常遇到的场景提供解决方案,同时也提供加速开发的 CLI 工具。支持 Linux、Windows 和 MacOS 。

SerpentAI 是一个 Game Agent 框架(ps:在人机对战中,为了区分玩家,通常称机器玩家为 agent ),简单而又强大。它能把任何一个游戏变成用 Python 编写的沙盒环境,供开发者在其中创造游戏 Game Agent 做实验,使用的都是开发者非常熟悉的 Python 代码。

3. Synaptic.js:用于浏览器的神经网络库

推荐理由:Synaptic.js 是一个用于 node.js 和浏览器的 JavaScript 神经网络库,可以构建和训练基本上任何类型的一阶甚至二阶神经网络。

该项目内置了 4 种经典的神经网络算法:多层感知器(multilayer perceptrons)、长短期记忆网络(multilayer long-short term memory networks)、液体状态机(Liquid State Machine)、Hopfield神经网络。使用 Synaptic.js ,你可以轻松测试和比较不同体系结构的性能。

4. Snake-AI:贪吃蛇游戏的人工智能 

推荐理由:一个用 C/C++ 语言编写的贪吃蛇游戏的人工智能。使用了最短路径、最长路径、人工智能算法。

AI 的目的是让蛇尽可能的吃更多的食物,直到吃满整个地图。

Demo

5. Uncaptcha:破解 reCAPTCHA 系统的 AI 算法

推荐理由:unCAPTCHA 算法以 85% 的成功率击败了 Google reCAPTCHA 系统。它依靠音频验证码攻击 - 使用浏览器自动化软件来解析必要的元素并识别语音号码,并以编程方式传递这些数字,最终成功欺骗目标网站。

6. Sockeye:基于 Apache MXNet 的神经机器翻译框架

推荐理由:Sockeye 是一个基于 Apache MXNet 的快速而可扩展的深度学习库。

Sockeye 代码库具有来自 MXNet 的独特优势。例如,通过符号式和命令式 MXNet API,Sockeye 结合了陈述式和命令式编程风格;它同样可以在多块 GPU 上并行训练模型。

Sockeye 实现了 MXNet 上当前最佳的序列到序列模型。它同样为所有序列到序列模型的超参数提供恰当的默认值。对于优化,无需担心停止标准、指标跟踪或者权重初始化。可以简单地运行已提供的训练命令行界面(CLI),也可以轻易改变基础模型架构。

7. PHP-ML:PHP 机器学习库

推荐理由:我们都知道 Python 或者是 C++ 提供了更多机器学习的库,但他们大多都比较复杂,配置起来让很多新手感到头疼。PHP-ML 这个机器学习库虽然没有特别高大上的算法,但其具有最基本的机器学习、分类等算法,小项目或者小公司做一些简单的数据分析、预测等等足以够用。

PHP-ML 是使用 PHP 编写的机器学习库。同时包含算法,交叉验证,神经网络,预处理,特征提取等。

8. CycleGAN:生成对抗网络图像处理工具

推荐理由:这个工具功能十分强大,不仅可将绘画作品“还原”成照片(可理解为是一个 “反滤镜”),还能将夏天转换成冬天,或将普通的马转化成斑马。

与其它人工智能绘画不同,CycleGAN 的研究团队试图建立一个可双向转化不丢失信息的双向算法。在 CycleGAN 里照片的细节被要求完全保留,研究人员希望能够将一张图片输入 CycleGAN 后进行多次反复转化(照片→绘画→照片→绘画→照片),最终可以获得与原始照片相同或相近的图片。

9. DeepLearn.js:可实现硬件加速的机器学习 JavaScript 库

DeepLearn.js 是谷歌推出的一个可用于机器智能并加速 WebGL 的开源 JavaScript 库,完全在浏览器中运行,不需要安装,不需要后端处理。。

DeepLearn.js 提供高效的机器学习构建模块,使我们能够在浏览器中训练神经网络或在推断模式中运行预训练模型。它提供构建可微数据流图的 API,以及一系列可直接使用的数学函数。

虽然浏览器上的机器学习库已经存在多年(例如 Andrej Karpathy 的 convnetjs),但是它们受到 JavaScript 速度的限制,或者局限于推理而不能用于训练(例如 TensorFire)。相比之下,deeplearn.js 通过利用 WebGL 在GPU上执行计算,以及进行完全反向传播(full backpropagation)的能力,实现了显着的加速。

10. TensorFire:基于 WebGL 的浏览器端神经网络框架 

推荐理由:TensorFire 是基于 WebGL 的,运行在浏览器中的神经网络框架。使用 TensorFire 编写的应用能够在实现前沿深度学习算法的同时,不需要任何的安装或者配置就直接运行在现代浏览器中。

与之前某些浏览器内的神经网络框架相比,TensorFire 有着近百倍的速度提升,甚至于能够与那些运行在本地 CPU 上的代码性能相媲美。

开发者也可以使用 TensorFire 提供的底层接口来进行其他的高性能计算,譬如 PageRank、元胞自动机仿真、图片转化与过滤等等。

相信还有其他优秀的开源人工智能项目尚未在本文出现,欢迎各位在评论中留下你们的推荐~