开发者必备:基于 Linux 生态的十大AI开源框架盘

本文将从开发者的角度出发,特别是针对开发者中为数众多的Linux系统和Mac系统用户,奉上一篇针对泛Linux生态的顶级人工智能开源工具盘点(当然,有些工具也并非只兼容Linux)。

  1. Deeplearning4j:为Java用户量身定制

Deeplearning4j(Deep Learning For Java)是Java和Scala环境下的一个开源分布式的深度学习项目,由总部位于美国旧金山的商业智能和企业软件公司Skymind牵头开发,并得到了腾讯的投资。正如它的命名,Deeplearning4j的运行需要Java虚拟机JVM的支持。

Deeplearning4j团队在官网表示,他们希望通过一些深度学习算法的开发,将商业带入智能化数据的时代。也正是为了实现这一理想,惠及更多的用户,因此选择了移植性更好的Java环境来实现这些算法。目前,Deeplearning4j的这些算法已经在谷歌、Facebook和微软等平台得到了广泛应用。

值得一提的是,为了便于开发者自由定制,Deeplearning4j已经开放了尽可能多的算法调节接口,并对接口参数做出了详尽解释。同时,Deeplearning4j团队还开发了针对矩阵运算的ND4J和ND4S库(N-Dimensional Arrays for Java/Scala),同样需要JVM的支持。

Deeplearning4j遵循Apache 2.0开源协议,提供了基于AWS云服务的GPU运算支持,以及微软服务器框架的支持。

官网: http://deeplearning4j.org/

  1. Caffe:广受欢迎的深度学习框架

Caffe的全称是 “Convolution Architecture For Feature Extraction”,意为“用于特征提取的卷积架构”,主要开发者来自伯克利大学的视觉与学习中心(Berkeley Vision and Learning Center,BVLC),基于BSD 2-Clause开源许可协议发布。

Caffe是业内著名的深度学习框架, 根据官网介绍 ,其主要特点是:运算速度快(官方显示在单片NVIDIA K40 GPU的运算能力下,Caffe每天可以处理超过60M的图片数据),模块定制方便(在CPU或GPU之间的转换只需要简单修改一下参数设定),扩展能力强大(目前有超过一千名开发者基于Caffe开发了分支版本 ),以及丰富的社区支持(Caffe已经被授权给各种研究机构、初创公司和工业集团),因此特别适合于神经网络建模和图像处理任务。

官网: http://caffe.berkeleyvision.org/

  1. H2O:企业级机器学习框架

H2O(即水的化学式)是一个开源、快速、可扩展的分布式机器学习框架,同时提供了大量的算法实现。它支持深度学习、梯度推进(Gradient Boosting)、随机森林(Random Forest)、广义线性模型(即逻辑回归,弹性网络)等各种机器学习算法。

H2O框架的核心代码由Java编写,数据和模型通过分布式的key/value存储在各个集群节点的内存中,算法使用Map/Reduce框架实现,并使用了Java中的Fork/Join机制来实现多线程。

H2O是一个更关注企业用户的人工智能分析工具,它聚焦于为掌握大量数据的企业用户提供快速精准的预测分析模型,从海量数据中提取有助于商业决策的信息。

根据H2O官方的数据,目前已经有超过7万名数据科学家和8万家组织机构成为了H2O平台的忠实拥趸。

官网: http://www.h2o.ai/

  1. MLlib:基于Spark框架的机器学习算法实现库

MLlib是Apache开源项目Spark针对一些常用的机器学习算法的实现库,同时也包括了相关的测试程序和数据生成器。

按照官网的描述,MLlib的主要特点是易用(天生兼容Spark框架的API接口和Python、Java、Scala等多种语言)、高性能(依靠Spark的数据管理能力,运行迭代和逻辑回归算法时比Hadoop框架快100倍)和易于部署(可以直接在现有的Hadoop数据集群上运行)。

MLlib目前支持分类、回归、推荐、聚类、生存分析等多种机器学习算法。

官网: https://spark.apache.org/mllib/

  1. Apache Mahout:Hadoop广泛采用的机器学习开源框架

Apache Mahout同样也是一个Apache开源项目,与MLlib相对应,Mahout是应用在Hadoop平台下的机器学习开源框架。

Mahout有如下三个主要特点:

1) 提供简单、可扩展的编程环境和框架;

2) 同时为Scala + Apache Spark、H2O以及Apache Flik平台提供打包好的算法实现;

3) 支持R语言的语法规则进行矩阵计算。

官网: http://mahout.apache.org/

  1. OpenNN:专注神经网络的实现库

OpenNN的全称为“Open Neural Networks Library”,即开源神经网络库,其核心代码由C++编写,从名字就可以看出,其主要面向深度学习领域,助力于用户构建各种不同的神经网络模型。

据官方描述,OpenNN可用于实现监督学习场景中任何层次的非线性模型,同时还支持各种具有通用近似属性的神经网络设计。

除了模型的多层支持外,OpenNN最主要优势还在于强大的性能表现。具体来说就是,OpenNN能够通过C++语言实现的核心代码高效地调节内容使用,通过OpenMP库很好地平衡多线程CPU调用,以及通过CUDA工具对GPU进行加速。

官网: http://www.opennn.net/

  1. Oryx 2:重新设计了Lambda架构

Oryx 2是Oryx项目的2.0版,前身名为 Myrrix,后来被大数据公司 Cloudera 收购,才改名为 Oryx。

Oryx 2.0关注于大规模机器学习/预测分析基础框架的实时表现,它基于Apache Spark和Apache Kafka框架开发,并重新设计了Lambda架构,使得层次之间的复用性更强。

2.0版相比之前实现了更多算法,包括ALS协同过滤、随机森林、以及K-means++等。

官网: http://oryx.io/

  1. OpenCyc:全球最庞大、最完备的通用型知识库与常识推理引擎

OpenCyc是Cycorp公司推出的一个基于Cyc的开源版本,而Cyc是目前全球最庞大、最完备的通用型知识库与常识推理引擎。

OpenCyc包含数十万个精心组织的Cyc词条。Cycorp公司不但免费提供OpenCyc,同时也鼓励开发者基于OpenCyc开发针对于特定应用领域的分支版本。

目前,OpenCyc已经被成功应用在大数据建模、语言数据整合、智能文本理解、特定领域的专家系统建模和人工智能游戏。

官网: http://www.cyc.com/platform/opencyc/

  1. Apache SystemML:专注于大数据分析的开源机器学习平台

SystemML是一个利用机器学习算法进行大数据分析的开源AI平台,其主要特点是支持R语言和Python的语法,专注于大数据分析领域,以及专门为高阶数学计算设计。

按照官网的介绍,Apache SystemML基于Apache Spark框架运行,其最大的特点就是能够自动、逐行地评估数据,并根据评估结果确定用户的代码应该直接运行在驱动器上还是运行在Apache Spark集群上。

除了Apache Spark之外,SystemML还支持Apache Hadoop、Jupyter和Apache Zeppelin等多个平台。目前,SystemML技术已经成功应用在交通、航空和金融等多个领域。

官网: http://systemml.apache.org/

  1. NuPIC:基于层级实时存储算法的机器智能平台

NuPIC是一个与众不同的开源机器智能平台,它基于一种大脑皮层理论,即“层级实时存储算法”(Heirarchical Temporary Memory,HTM)。NuPIC聚焦于分析实时数据流,可以通过学习数据之间基于时间的状态变化,对未知数据进行预测,并揭示其中的非常规特性。

NuPIC关键的功能特性包括:

1) 持续的在线学习:NuPIC模型可以持续根据快速变化的数据流进行实时调整;

2) 时间和空间分析:像人脑一样,NuPIC可以同时模拟时间和空间的变化;

3) 实时的数据流分析:智能化的数据分析不会随着数据量的增加而改变;

4) 预测和建模:通过通用性的大脑皮层算法,对数据进行预测、建模和学习;

5) 强大的异常检测能力:实时检测数据流的扰动,不依靠僵化的阈值设置和过时的算法;

6) 层级实时存储算法:支持全新的HTM计算架构。

文章转载自 开源中国社区 [http://www.oschina.net]

时间: 2024-08-29 04:22:37

开发者必备:基于 Linux 生态的十大AI开源框架盘的相关文章

开发者必备:基于Linux生态的十大AI开源框架盘点

前不久,雷锋网曾盘点了一系列机器学习相关的开源平台,包括谷歌的TensorFlow.微软的CNTK以及百度的PaddlePaddle等等(详情见文末"相关阅读").这些平台各具特点,其中某些已经在业内得到了广泛认可和应用. 与此前不同,本文将从开发者的角度出发,特别是针对开发者中为数众多的Linux系统和Mac系统用户,奉上一篇针对泛Linux生态的顶级人工智能开源工具盘点(当然,有些工具也并非只兼容Linux). 1. Deeplearning4j:为Java用户量身定制 Deepl

Kali Linux中的十大WiFi攻击工具介绍

本文讲的是Kali Linux中的十大WiFi攻击工具介绍,在这十大WiFi攻击黑客工具中,我们将讨论一个非常受欢迎的主题:无线网络攻击以及如何防止黑客入侵.无线网络通常是网络的一个弱点,因为WiFi信号可以随处可见,任何人都可以使用.还有很多路由器包含漏洞,可以利用正确的设备和软件(如Kali Linux附带的工具)轻松利用漏洞.许多路由器制造商和ISP仍然默认在其路由器上启用了WPS,这使得无线安全和渗透测试变得更加重要.通过以下十大无线网络黑客工具,你可以测试我们自己的无线网络以获取潜在的

十大精选开源软件推荐:编程化繁为简

开源这块甜蜜的巧克力酱备受宠爱,似乎人人都想尝尝.这一次,我为开发者们贡献十款开源编程工具,它们分别是Rhomobile Rhodes.Git.Gerrit.Hadoop等,这十款开源工具会越来越流行,想知道其中的奥秘吗?让我们一起来看看它们的神奇之处吧! 1.Rhomobile Rhodes Ruby可能是GitHub上的第二大流行编程语言,但如果你想从事与iPhone相关的开发工作,Ruby可就爱慕能助了.iOS平台上最为给力的是Objective-C语言,这也许是赚钱的利器之一吧! Rho

十大使用PHP框架的理由_php技巧

PHP框架提供了一个用以构建web应用的基本框架,从而简化了用PHP编写web应用程序的流程.换言之,PHP框架有助于促进快速应用开发( RAD ),不但节省开发时间.有助于建立更稳定的应用,而且减少了重复编码的开发. 1.可以更好的组织代码和文件夹. 不会因为你新建了一个/inc的文件夹,然后在里面写function.php文件,就能说明你的代码有组织了.但是当你使用一个PHP框架的时候,框架本身已经有一定的文件夹结构,你需要遵循框架的一些标准,这样就可以保证你始终用一定的方式来组织你的代码.

基于微信开发的十大火爆应用 top10

微信已成生态,这早已不是秘密.如何从这个生态上赚到钱,同时又能找到避免被腾讯"微创新"的方法是无数创业者努力的方向.i黑马为大家分析盘点十大基于微信开发的火爆应用,让我们一起看看这批创业者是如何追赶这张移动互联网时代的船票的? 10.微擎--发动微信创业者商业模式的引擎 实用指数:★★★ 潜力指数:★★ 同类产品: 微擎,顾名思义就是微信引擎的意思.一般的用户恐怕一辈子也不会去打听这款企业级应用.这是一家来自三线互联网城市宿州市的科技公司,然而它们的产品一点也不三线,创始团队早早看到了

希望涨工资?看看为开发者带来更高收入的十大开源技术

Linux 基金会和在线求职招聘网站 Dice 发布了一份关于开源招聘的调查结果.结果显示,相对于其他类型的 IT 工作者,67% 的管理人员更希望雇佣在开源技术方面有所专长的技术人员. 此外,42% 的受访管理人员表示,他们需要招聘更多熟悉开源技术的人才,因为他们正在增加对开源技术的使用,并且有 30% 的受访者表示开源技术正成为他们业务的核心技术支撑.然而,绝大多数(89%)的招聘主管表示,他们发现很难找到填补岗位所需的"开源人才". 调查人员还联系了开源领域的专业人士和管理人员,

2016 年 Linux 领域的十大新闻,你有关注吗?

虽然2016年内Linux在桌面领域并没什么大动作,但作为开源运动的绝对代表,它依然给我们带来一系列大新闻.下面一起来看. Linux迎来25岁生日 岁月如梭,25年前Linus Torvalds向comp.os.minix Usenet小组宣称,他正在"为386(486)AT克隆机开发一款自由操作系统(只是种爱好,不会像GNU那种庞大且专业)."自1991年开始,Linux的发展速度远远超出了Torvalds的想象.各类规模的企业都在使用Linux,而Linux也支撑着各类计算机.移

恶搞必备 炫酷Win 8十大令人抓狂恶作剧

元旦就要到了,劳累了一年的你们是否感到身心疲惫呢?是否会抱怨这一年来人情更淡了,人们更冷漠了呢.其实这主要是由于我们平时工作压力太大导致的,适当的放松能够很好的缓解这种情况的发生.笔者这里总结了一些Windows 8操作习系统最新的整人方法,恰到好处的恶作剧能够增进同事的感情,有兴趣的朋友可以试验一下!  首先我们来介绍一下Windows 8操作系统,Windows 8是微软公司今年10月份发布的一款具有革命性变化的操作系统.该系统使人们的日常电脑操作更加简单和快捷,提供了高效易行的工作环境.而

2016年十大顶级开源项目

在我们今年的年度顶级开源项目列表中,让我们回顾一下作者们提到的几个 2016 年受欢迎的项目,以及社区管理员选出的钟爱项目. 我们持续关注每年新出现的.成长.改变和发展的优秀开源项目.挑选 10 个开源项目到我们的年度顶级项目列表中并不太容易,而且,也没有哪个如此短的列表能够包含每一个应该包含在内的项目. 为了挑选 10 个顶级开源项目,我们回顾了作者们 2016 年涉及到的流行的开源项目,同时也从社区管理员收集了一些意见.经过管理员的一番推荐和投票之后,我们的编辑团队选定了最终的列表. 它们就