Caffe软件由加州大学伯克利分校的一名博士生开发,是一个基于表达构架与可扩展编码的深度学习框架。因其出色的处理速度而广受研究人员与企业的喜爱。根据其主页的介绍,只使用一颗NVIDIAK40GPU,该软件一天就可处理超过6000万张图片。Caffe软件项目由BVLC运作,由NVIDIA和亚马逊等公司资助其发展研究。
2.CNTK
CNTK是ComputationalNetworkToolkit(计算网络工具包)的缩写,是微软旗下开源人工智能软件之一。它的过人之处在于:无论是只有CPU工作,还是单科GPU,或是或多颗GPU,亦或是多台机器配备多颗GPU工作,它的性能都十分优秀。虽然微软主要用它进行语音识别的研究,但它还可以进行机器翻译、图像识别、图像抓取、文本处理、语言识别与语言建模等工作。
3.Deeplearning4j
Deeplearning4j是一款JVM开源深度学习库软件。它能在分布式环境中运行,并整合Hadoop与ApacheSpark。而这使得它可以配置深度神经网络,还可运行Java、Scala等其他JVM语言。
Deeplearning4j软件项目由Skymind商业公司运作,由Skymind负责项目的资金支持、人员培训与产品推广。
4.DMTK
5.H2O
H2O有两个开源版本:标准版H2O和SparklingWater版H2O,两个版本都整合在ApacheSpark中,Oxdata将为付费企业提供技术支持。
6.Mahout
Mahout是ASF(Apache软件基金会)旗下的一个开源项目,提供开源机器学习框架。据其官方主页描述,Mahout有三大主要特点:可扩展算法编程环境、事先写有如Spark和H2O等工具的算法、内置名为“Samsara”的矢量运算环境。Mahout用户的包括Adobe、Accenture、Foursquare、英特尔、领英、Twitter和雅虎等公司。
7.MLlib
以处理速度而闻名的ApacheSpark已成为大数据处理中最常用的软件之一。MLlib算法是一个Spark的可扩展机器学习库。它与Hadoop融为一体,可与NumPy和NumPy.R跨平台操作。它囊括了大量机器学习算法类型,包括:分类、回归、决策树、建议、聚集、主题建模、特点转换、模型评价、MLpipeline构建、ML持久性、生存分析、频繁集、序列模式挖掘、离散线性代数和数据统计分析。
8.NuPIC
9.OpenNN
OpenNN是一款为研究人员和开发者打造的高级人工智能软件,提供可运行神经网络的C++编程库。其主要特点在于深度框架与高效的性能。OpenNN官网有关于神经网络运作的详细介绍。为OpenNN客户提供技术支持是来自西班牙的Artelnics公司(主攻预测分析研究)。
10.OpenCyc
由Cycorp公司开发的OpenCyc软件内置Cyc知识库与常识推理引擎,含括了23.9万条术语,约209.3万条三元组,约6.9万条网络本体语言,就好比外接了一个语义数据库。它在富领域建模、语义数据融合、文本理解、特定领域专家系统和游戏人工智能等方面十分有效。OpenCyc一共有两个版本:一个是对研究员免费不开源版本,另一个是对企业收费的版本。
11.Oryx2
Oryx2基于ApacheSpark和Kafka构建,是一款专攻大型机器学习的发展框架软件。它使用的是独特的三层λ构架。开发者可使用Oryx2开发新软件,其内置了一些通用大型数据任务的程序,如协同过滤、分类、归化和集群等。大数据工具提供商Cloudera开发了初代Oryx1项目,现仍在继续研究发展。
12.PredictionIO
13.SystemML
SystemML最初由IBM开发,后被ASF收购,成为其大数据项目。SystemML是一个可高度扩展的平台,可进行高级数学运算,执行R或类Python语句。SystemML基于Spark或Hadoop运行,可用于4S店车辆维护的客户回访、机场领空管制以及银行客户社交媒体数据的收集。
14.TensorFlow
TensorFlow是谷歌旗下的开源人工智能软件之一,提供一个使用数据流图的数值计算库,可在单/多颗CPU或GPU系统甚至移动设备上运行。谷歌称TensorFlow十分灵活、真正的可移植,拥有自动鉴别能力且支持Python和C++平台。
15.Torch
Torch这样描述自己:“拥有科学的计算框架,支持可优先使用GPU的机器学习算法”。Torch的特点在于其出色的灵活性与杰出的处理速度,在处理机器学习、计算机视觉、信号处理、并行处理、图像、视频、音频和计算机网络等方面十分得心应手。它采用的是LuaJIT语言编写,一种基于Lua语言的脚本语言。