流行的十四个机器学习编程语言框架和工具
O'Reilly的一项新调查发现,主要从事技术、金融和医疗保健行业的1300多人透露了他们在公司使用的机器学习技术。
本文介绍了面向数据科学界宠儿Python的软件框架和库、大数据平台以及处理机器学习管道每个阶段的基于云的服务。
说到使用机器学习或报告所称的AI,大多数公司仍处于评估阶段,实施的最常用工具是用于“模型可视化”和“自动模型搜索和超参数调整”的工具。
不出所料,一种最常见的机器学习是监督学习,即使用大量的标记数据来训练机器学习模型。比如说,负责找出视频中人员的计算机视觉模型可以拿注释的图像加以训练,以表明图像中有没有人。
图片来源:O'Reilly
以下是公司企业声称用于机器学习的库、框架、大数据平台和云服务。
软件库和框架
1.TensorFlow
谷歌广泛使用的机器学习框架,旨在处理训练机器学习模型时所需要的数值计算,能够在CPU、GPU和专用芯片(比如谷歌的张量处理单元即TPU)之间划分计算任务。
2.scikit-learn
用于数据挖掘和数据分析的一种流行Python库,使用了众多机器学习算法。
3.Pytorch
一种开源深度学习框架,学起来比TensorFlow等与之竞争的框架更容易,旨在用于机器学习管道的每个阶段。
4.Keras
这种深度学习框架用于处理神经网络(支持深度学习的受大脑启发的数学模型),旨在比与之竞争的框架更易于使用。
Keras用Python编写,它能够在TensorFlow、微软认知工具包(CNTK)和Python库Theano上运行。
云套件
5.微软Azure ML Studio
这套服务旨在帮助公司在微软的Azure云上以及靠近网络边缘的计算设备上构建、训练和部署机器学习模型。工具有助于使识别和调整适当的机器学习模型这个过程实现自动化,并有助于扩展底层计算以满足需求。
6.谷歌云机器学习引擎
与Azure ML Studio相似,谷歌云机器学习引擎也提供了用于训练、评估、调整和部署机器学习模型的工具。
7.亚马逊SageMaker
亚马逊SageMaker同样提供了用于构建、训练和部署机器学习模型的服务,以便能够以更低的成本更快地将模型部署到生产环境。
大数据平台工具
8.H20
这是一种开源内存中平台,可以跨分布式系统扩展机器学习工作负载。
该平台旨在支持使用最广泛的统计和机器学习算法,并提供一定程度的自动化,以帮助数据科学家识别和调整适当的机器学习模型。
9.Prodigy
Prodigy旨在简化训练和评估机器学习模型的过程,这种工具可帮助数据科学家适当地标注训练数据集。
10.Spark NLP
Spark NLP提供了一个自然语言处理(NLP)库,旨在处理运行内存中大数据平台Apache Spark的分布式系统。
11.OpenAI Gym
这种工具包用于开发和比较强化学习算法,强化学习是一种机器学习,其中软件代理通过因导致期望结果的动作而受到奖励来学习如何执行任务。
12.Analytics Zoo
Analytics Zoo将一系列大数据和机器学习技术整合到它所说的统一分析和AI平台中。
该平台整合了Spark、TensorFlow、Keras和深度学习库BigDL,可以跨分布式Hadoop和Spark集群扩展机器学习模型,用于训练和推理。
13.AllenNLP
旨在简化设计和评估解决自然语言处理问题的新深度学习模型这个过程。
该库包括面向核心NLP问题和NLP应用的高质量模型的参考实现。
14.Rise Lab Ray