机器学习工程师是开发产品和构建算法团队中的一部分,并确保其可靠、快速和成规模地工作。他们和数据科学家密切合作来了解理论知识和行业应用。数据专家和机器学习工程师的主要区别是:
· 机器学习工程师构建、开发和维护机器学习系统的产品。
· 数据专家进行调查研究形成有关于机器学习项目的想法,然后分析来理解机器学习系统的 度量 影响。
下面是机器学习的框架介绍:
1.Apache Singa 是一个用于在大型数据集上训练深 度学习的通用分布 式深度学习平台,它是基于分层抽象的简单开发模型设计的。它还支持各种当前流行的深度学习模型,有前馈模型(卷积神经网络, CNN ),能量模型(受限玻尔兹曼机, RBM 和 循环 神经网络,RNN ),还为用户提供了许多内嵌层。
2. Amazon Machine Learning (AML ) 是一种让各种级别使用机器学习技术的开发人员可轻松掌握的一个服务,提供了视觉工具和向导,可以指导您在不必学习复杂的 机器学习 算法和技术的情况下建立 机器学习 。
3.Azure ML Studio 允许微软 Azure 的用户创建和训练模型,随后将这些模型转化为能被其他服务使用的 API 。尽管您可以将自己的 Azure 存储链接到更大模型的服务,但是每个账户模型数据的存储容量最多不超过 10GB 。在 Azure 中有大量的算法可供使用,这要感谢微软和一些第三方。甚至你都不需要注册账号,就可以匿名登录,使用 Azure ML Studio 服务长达 8 小时。
4.Caffe 是由伯克利视觉学习中心(BLVC) 和社区贡献者们基于 BSD-2- 协议 开发的一个深度学习框架,它秉承“ 表示、效率和模块化 ” 的开发理念。模型和组合优化通过配置而不是硬编码实现,并且用户可根据需要在 CPU 处理和 GPU 处理之间进行切换, Caffe 的高效性使其在实验研究和产业部署中的表现很完美,使用单个 NVIDIA K40 GPU 处理器每天即可处理超过六千万张图像 。
5.H2O 使人轻松地应用数学和预测分析来解决当今极具挑战性的商业问题,它巧妙的结合了目前在其他机器学习平台还未被使用的独有特点:最佳开源技术,易于使用的 WebUI 和熟悉的界面,支持常见的数据库和不同文件类型。用 H2O ,你可以使用现有的语言和工具。此外,也还可以无缝扩展到 Hadoop 环境中。
6.Massive Online Analysis (MOA) 是目前最受欢迎的数据流挖掘开源框架,拥有一个非常活跃的社区。它包含一系列的机器学习算法(分类,回归,聚类,离群检测,概念漂移检测和推荐系统)和评价工具。和 WEKA 项目一样, MOA 也是用 Java 编写,但扩展性更好。
7.MLlib (Spark) 是 Apache Spark 的机器学习库,目的是让机器学习实现可伸缩性和易操作性,它由常见的学习算法和实用程序组成,包括分类、回归、聚类,协同过滤、降维,同时包括底层优化原生语言和高层管道 API 。
8.Mlpack 是一个基于 C++ 的基础学习库 ,最早于2011 年推出,据库的开发者声称,它秉承 “ 可扩展性、高效性和易用性 ” 的理念来设计的。执行 Mlpack 有两种方法:通过快速处理简易的 “ 黑盒 ” 操作命令行执行的缓存,或者借助 C++ API 处理较为复杂的工作。 Mlpack 可提供简单的能被整合到大型的机器学习解决方案中的命令行程序和 C++ 的类 。
9.Pattern 是Python 编程语言的 web 挖掘 组件,有数据挖掘工具( Google 、 Twitter 、 Wikipedia API ,网络 爬虫 ,HTML DOM 解析器),自然语言处理(词性标注,n-gram 搜索,情感分析,WordNet 接口),机器学习(向量空间模型,聚类,支持向量机),网络分析和 <canvas> 可视化。
10.Scikit-Learn 为了数学和科学工作 , 基于现有的几个Python 包( Numpy , SciPy 和 matplotlib )拓展了 Python 的 使用范围 。最终生成的库既可用于交互式工作台应用程序,也可嵌入到其他软件中进行复用。 该工具包基于BSD 协议, 是完全免费开源的,可重复利用。Scikit-Learn 中含有多种用于机器学习任务的工具,如聚类,分类,回归等。Scikit-Learn 是由拥有众多开发者和机器学习专家的大型社区开发的,因此,Scikit-Learn 中最前沿的技术往往会在很短时间内被开发出来。
11.Shogu 是最早的机器学习库之一,它创建于 1999 年, 用C++ 开发,但并不局限于 C++ 环境。借助 SWIG 库, Shogun 适用于各种语言环境,如 Java , Python , c# , Ruby , R , Lua , Octave 和 Mablab 。 Shogun 旨在面向广泛的特定类型和学习配置环境进行统一的大规模学习 ,如分类,回归或探索性数据分析 。
12.TensorFlow 是一个使用数据流图进行数值运算的开源软件库,它实现了数据流图,其中,张量( “tensors” )可由一系列图形描述的算法来处理,数据在该系统中的变化被称为 “ 流 ” ,由此而得名。数据流可用 C++ 或 Python 编码后在 CPU 或 GPU 的设备上运行。
13.Theano 是一个基于 BSD 协议发布的可定义、可优化和可 数值计算 的Phython 库。使用 Theano 也可以达到与用 C 实现大数据处理的速度相媲美, 是支持高效机器学习的算法。
14.Torch 是一种广泛支持 把GPU 放在首位 的 机器学习算法的科学计算框架。由于使用了简单快速的脚本语言LuaJIT 和底层的 C/CUDA 来实现,使得该框架易于使用且高效。 Torch 目标是让你通过极其简单的过程、最大的灵活性和速度建立自己的科学算法 。Torch 是基于Lua 开发的 ,拥有一个 庞大的 生态社区驱动库包设计机器学习、计算机视觉、信号处理,并行处理,图像,视频,音频和网络等。
15.Veles 是一套用 C++ 开发 的面向深层学习应用程序的分布式平台,不过它利用Python 在节点间 自动操作 与协作任务。 在相关数据集中到该集群之前,可对数据进行分析与自动标准化调整,且REST API 允许将各已训练模型立即添加至生产环境当中 , 它侧重于性能和灵活性。Veles 几乎没有硬编码,可对所有广泛认可的网络拓扑结构进行训练, 如全卷积神经网 络 ,卷积神经网络,循环神经网络等 。
在评论中告诉我们更多关于你喜欢的机器学习框架。
作者介绍 :Devendra Desale(@DevendraDesale) 是一位目前 从事 文本挖掘和大数据技术的数据科学研究生, 也 对企业架构和数据驱动感兴趣。业余时间,喜欢参加聚会和 未知 的 冒险 。
以上为译文
本文由北邮@爱可可-爱生活 老师推荐,阿里云云栖社区组织翻译。
文章原标题《Top 15 Frameworks for Machine Learning Experts》,作者:Devendra Desale,译者:Mags,审校:袁虎。
文章为简译,更为详细的内容,请查看原文