11个开源的机器学习框架!让人工智能快速入门!

android studio 相关说明 | 2018-12-23 05:00

过去十年中人工智能的迅速崛起刺激了当今就业市场对AI和ML技能的巨大需求。基于ML的技术现在几乎用于所有垂直行业,从金融到医疗保健。在本文中,我编译了一个可用于构建机器学习模型的最佳框架和库的列表。

1. TensorFlow

TensorFlow由Google开发,是一个为深度学习或人工神经网络而构建的开源软件库。使用TensorFlow,您可以使用流程图创建神经网络和计算模型。它是深度学习中维护最好,最受欢迎的开源库之一。 TensorFlow框架以C ++和Python提供。其他类似的基于Python的深度学习框架包括Theano,Torch,Lasagne,Blocks,MXNet,PyTorch和Caffe。您可以使用TensorBoard轻松实现可视化并查看计算管道。其灵活的架构允许您轻松部署在不同类型的设备上。从消极方面来说,TensorFlow没有符号循环,也不支持分布式学习。此外,它不支持Windows。

Theano是一个专为深度学习而设计的Python库。使用该工具,您可以定义和评估数学表达式,包括多维数组。该工具针对GPU进行了优化,具有与NumPy集成,动态C代码生成和符号区分等功能。但是,要获得高级抽象,该工具必须与其他库一起使用,例如Keras,Lasagne和Blocks。该工具支持Linux,Mac OS X和Windows等平台。

Torch是一种易于使用的ML算法开源计算框架。该工具提供了高效的GPU支持,N维数组,数值优化例程,线性代数例程以及用于索引,切片和转置的例程。该工具基于一种名为Lua的脚本语言,具有大量预训练模型。这种灵活高效的ML研究工具支持Linux,Android,Mac OS X,iOS和Windows等主要平台。

Caffe是一款流行的深度学习工具,专为构建应用而设计。由杨庆佳在博士期间创建的项目。在加州大学伯克利分校,该工具具有良好的Matlab / C ++ / Python界面。该工具允许您使用文本快速将神经网络应用于问题,而无需编写代码。 Caffe部分支持多GPU培训。该工具支持Ubuntu,Mac OS X和Windows等操作系统。

5.微软CNTK

Microsoft Cognitive Toolkit是最快的深度学习框架之一,支持C#/ C ++ / Python接口。开源框架带有强大的C ++ API,比TensorFlow更快,更准确。该工具还支持内置数据读取器的分布式学习。它支持诸如前馈,CNN,RNN,LSTM和序列到序列的算法。该工具支持Windows和Linux。

Keras是用Python编写的,它是一个开源库,旨在简化新DL模型的创建。这种高级神经网络API可以在TensorFlow,Microsoft CNTK等深度学习框架之上运行。该工具以其用户友好性和模块性而闻名,是快速原型设计的理想选择。该工具针对CPU和GPU进行了优化。

7. scikit-learn

scikit-learn是一个专为机器学习而设计的开源Python库。基于NumPy,SciPy和matplotlib等库的工具可用于数据挖掘和数据分析。 scikit-learn配备了各种ML模型,包括线性和逻辑回归量,SVM分类器和随机森林。该工具可用于多个ML任务,例如分类,回归和聚类。该工具支持Windows和Linux等操作系统。在缺点方面,GPU的效率不高。

8. Accord.NET

Accord.NET是用C#编写的,是一个ML框架,用于构建生产级计算机视觉,计算机试听,信号处理和统计应用程序。它是一个记录完备的ML框架,可以轻松实现音频和图像处理。该工具可用于数值优化,人工神经网络和可视化。它支持Windows。

9. Spark MLlib

Apache Spark的MLIib是一个可以在Java,Scala,Python和R中使用的ML库。这个功能强大的库设计用于处理大规模数据,它带有许多算法和实用程序,如分类,回归和聚类。该工具可与Python和R库中的NumPy进行互操作。它可以轻松插入Hadoop工作流程。

10. Azure ML Studio

Azure ML Studio是面向数据科学家的现代云平台。它可用于在云中开发ML模型。 Azure具有广泛的建模选项和算法,是构建更大ML模型的理想选择。该服务为每个帐户提供10GB的存储空间。它可以与R和Python程序一起使用。

11.亚马逊机器学习(Amazon Machine Learning)

亚马逊机器学习(AML)是一项ML服务,提供用于创建ML模型的工具和向导。借助可视化辅助工具和易于使用的分析,AML旨在使开发人员更容易使用ML。 AML可以连接到存储在Amazon S3,Redshift或RDS中的数据。

机器学习框架带有易于理解和编码的预构建组件。因此,良好的ML框架降低了定义ML模型的复杂性。使用这些开源ML框架,您可以轻松快速地构建ML模型。

拓展阅读:谷歌要发布TPU机器学习加速器了!

谷歌仍然是技术发展的前沿。 谷歌提供Edge Tensor处理单元(TPU)板和Edge TPU加速器。 它的Edge TPU Accelerator是一款USB设备,可与Raspberry Pi等主板配合使用。 使用谷歌的Edge TPU加速器,开发人员可以利用Pi和Odroid XU4等低功耗单板计算机(SBC)进行各种自助(DIY)人工智能(AI)项目。 这些芯片针对Google的TensorFlow机器学习框架进行了优化,并与边缘设备连接。

最终,Google寻求提供一系列自定义硬件,以允许开发人员创建机器学习项目,如语音和图像识别。 通过为边缘设备推出TPU芯片,Google提供硬件,软件和服务器级别的机器学习产品。 Google的TPU设备包括Edge TPU Dev Board和Edge TPU Accelerator。