过去几年,各大科技厂商开放了各种各样的“平台”,比如大数据平台、机器学习平台等,用于满足数据科学与机器学习需求,这些平台争相夺取数据科学家、机器学习项目经理以及其他 AI 项目管理与规划者的关注以及钱包。本文作者 Ron Schmelzer 是 AI 研究咨询公司 Cognilytica 的执行合伙人兼首席分析师,在他看来,很多机器学习平台并不符合规范,却可以不断占据市场份额。那么,机器学习平台应该具备哪些条件?存在合格的机器学习平台吗?
这些平台究竟是什么?
对于各大科技公司努力做机器学习平台的行为,我很能理解,毕竟作为主要的技术供应商,如果没在 AI 领域弄出点动静,可能很快就被市场遗忘了。但是,这些平台究竟是什么?为什么会出现这么激烈的市场竞争状态?
要回答这个问题,关键在于意识到机器学习和数据科学项目,同以往典型应用程序或硬件开发项目之间的区别。过去,硬件与软件开发工作的重点在于系统或者应用程序功能。相反,数据科学与机器学习项目更强调数据管理,持续不断地从数据中学习知识,并对数据模型进行迭代演进。从以数据为中心的角度来看,传统的开发流程与平台在这类新场景中根本无法正常起效。所以,我们需要新的平台。
数据科学平台是什么?
数据科学家们的任务是从海量数据中整理出有用信息,并将业务与运营信息转化为数据与数学语言。数据科学家需要掌握统计学、概率、数学以及算法相关知识,借此从大量信息中收集有用的洞察见解。数据科学家还负责创建数据假设、运行数据测试与分析,而后将结果转换为组织内能够轻松查看与理解的形式。
因此,一套纯数据科学平台应当满足以下要求:协助构建数据模型、确定最适合当前信息的假设、测试假设、促进数据科学家团队之间的协作,并随信息的不断变化推动数据模型的管理与开发。
此外,数据科学家的工作重点并不在以代码为中心的集成开发环境(IDE)中。相反,Notebook 才是他们的天地。Notebook 概念最初由 Mathematica 及 Matlab 等以数学为中心的学术型平台提出,目前在 Python、R 以及 SAS 社区当中非常流行。所谓 Notebook,其本质在于记录数据研究结果,并允许用户面向不同源数据加以运行,从而简化结果的可重复性。良好的 Notebook 应充当一种共享式协作环境,数据科学家小组可以在这里协同工作,并利用不断发展的数据集进行模型迭代。尽管,Notebook 不能算是代码开发的理想环境,但却能够为数据的协作、探索以及可视化提供强有力的支持。事实上,如果拥有足够的访问权限对接清洁数据,那么数据科学家们将毫不犹豫地利用 Notebooke 快速浏览大型数据集。
但是,如果无法访问大量清洁数据,数据科学家的工作则会陷入困境。很明显,数据的提取、清理与移动并不是数据科学家的职责所在,这些工作应该由数据工程师负责完成。数据工程师面对的主要挑战就是从各类系统中提取结构化与非结构化格式的数据,而且这些数据往往并不“清洁”——存在缺少字段、数据类型不匹配以及其他与数据形式相关的种种问题。
从这个角度来看,数据工程师实际上属于负责设计、构建以及安排数据的工程人员。优秀的数据科学平台还应帮助数据科学家轻松根据需求的增长动用计算能力。平台无需将数据集复制至本地计算机上即可开始工作,确保数据科学家始终以最简单便捷的方式访问算力与数据集。为了实现这一目标,数据科学平台当然也需要提供必要的数据工程功能。总结来讲,一套实用的数据科学平台应当具备一系列数据科学与数据工程功能元素。
机器学习平台是什么?
谁能真正简化机器学习模型的创建、训练与迭代,谁就能在这场竞赛中胜出。
事实上,机器学习平台和数据科学平台之间存在交集,例如都会采用数据科学技术与机器学习算法,并将其应用于大型数据集以开发机器学习模型。数据科学家每天使用的工具,与关注机器学习的科学家以及工程师们使用的工具也颇为相似。但是,相似并不代表相同,毕竟机器学习科学家与工程师的实际需求,与常规数据科学家与工程师还是存在一定差异的。
一般来说,负责管理机器学习项目的人员不仅需要管理 Notebook 与生态系统,打理与其他 Notebook 的协作工作,同时还需要统筹各类机器学习专用算法、库以及基础设施,进而在庞大且不断发展的数据集之上训练这些算法。理想的机器学习平台能够帮助机器学习工程师、数据科学家以及数据工程师了解哪种机器学习方法最为有效,如何调整超参数,在基于自有或云端的 CPU、GPU 或 TPU 集群上部署计算密集型机器学习训练,并提供用于管理与监控有监督与无监督训练模式所必需的生态系统。
很明显,数据科学平台需要提供一套可协作、交互式的可视化系统,用于机器学习模型的开发与管理,但在机器学习平台方面,这样的支持远远不够。如上所述,机器学习系统正常运作的一大核心挑战在于超参数的设置与调整。
从概念角度出发,机器学习模型需要从数据中学习各类参数。换言之,机器学习模型实际学到的就是数据参数,并借此将新数据拟合至当前模型中。超参数是一种可配置的数据值,且无法在机器学习模型获取实际数据前预先设置。这些超参数将直接影响到各类因素,例如复杂性以及学习速度等。不同的机器学习算法需要不同的超参数组合,同时应当注意剔除其中不必要的超参数部分。在这方面,机器学习平台有助于发现、设置并管理超参数,特别是非机器学习类数据科学平台所不具备的算法选择与比较等功能。
应该具备什么特质?
归根结底,机器学习项目经理想要的只是能够提升自身工作效率的工具。 但是,机器学习项目复杂多样,而且各有不同需求。其中某些项目专注于会话系统,有一些强调识别或者预测分析功能,也有一些主要面向强化学习或者自主系统。
此外,这些模型的部署(或者运营)方式也有所区别。某些模型在云端或自有服务器内,也有一些模型被部署在边缘设备中,或者采用脱机批处理模式。数据科学家、数据工程师以及机器学习开发人员等群体在机器学习的应用、部署与需求等方面的差异,使得单一机器学习平台的概念几乎不具备实际可行性,这最终带来了“十八般武艺,样样稀松”的结果。
因此,目前市面上出现了四种不同平台:其一专注于数据科学家与模型构建者的需求;其二强调对大数据及数据工程的管理;其三面向模型“搭建”与模型交互系统;其四则用于模型生命周期管理,即“机器学习运营”。要想真正践行机器学习平台做出的承诺,开发者需要在这四个方面痛下苦功。
AI 的四种应用环境
谁能真正简化机器学习模型的创建、训练与迭代,谁就能在这场竞赛中胜出。 在这类强大解决方案的帮助下,用户能够快速轻松地从笨拙的非智能系统,跨越至可利用机器学习功能,解决以往无法解决的难题。相比之下,那些无法适应机器学习功能需求的数据科学平台则将遭遇降级。同样的,那些天然具备数据工程能力的大数据平台也将在市场上成为赢家。 未来的应用程序开发工具亦需要着力将机器学习模型视为生命周期中的主要组成部分。总结来讲,机器学习运营才刚刚出现,且必将在未来几年内成为行业中的又一大事件。
大家在争些什么?
毫无疑问,不同规模的各类技术供应商都将重点放在平台开发上,毕竟数据科学家与机器学习项目经理必须依赖这些平台来开发、运行、操作以及管理企业中正在使用的数据模型。
对于这些供应商而言,未来的机器学习平台如同过去以及当下已存在的操作系统、云环境乃至移动开发平台一样。只要能够在数据科学和机器学习平台领域占据市场份额,厂商就能够在未来几十年获得丰厚的回报。
结果就是,在这场新兴斗争中,每位参与者都希望尽可能攫取更可观的市场份额。
所以,当供应商在宣传中提到他们拥有人工智能或者机器学习平台时,我们不妨多问一句:“是哪一种平台?”,通过本文,相信大家已经意识到这世界上存在着不只一种机器学习平台,而且各自面向不同的实际需求。多一点思考,才能确保我们不会因身陷市场炒作而信错厂商、选错产品。
原文链接:
评论