未来已经来临,您最喜欢的商店,运输公司甚至种火鸡的农场已经成功地使用了人工智能和机器学习技术。

如果存在的话,那么关于它的信息在互联网上已经存在……一个开放的项目! 了解开放数据中心如何帮助扩展新技术并避免实施新技术的困难。
借助人工智能(人工智能,AI)和机器学习(机器学习,ML)的所有优势,组织通常很难扩展这些技术。 通常,此方法的主要问题如下:
- 信息交流与合作 -几乎没有必要的努力就无法交换信息并以快速迭代的方式进行合作。
- 访问数据 -对于每个任务,都需要重新创建并手动进行构建,这非常耗时。
- 按需访问-无法获得对机器学习工具和平台以及计算基础结构的按需访问。
- 量产 -模型仍处于原型阶段,并未用于工业开发。
- 跟踪和解释AI结果 -重现性,跟踪和解释AI / ML结果非常困难。
如果不解决,这些问题会对有价值的数据处理和分析专家的速度,效率和生产率产生不利影响。 这导致他们感到沮丧,工作失望,结果,关于AI / ML的业务期望逐渐消失。
解决这些问题的责任在于需要提供数据分析师的IT专业人员-对,就像云一样。 如果更加发达,那么我们需要一个平台,该平台可提供选择的自由并具有便捷的访问权限。 同时,它是快速,易于重新配置,可按需扩展且可抵抗故障的。 在开源技术的基础上构建这样的平台有助于不依赖供应商,并在成本控制方面保持长期的战略优势。
几年前,在应用程序开发中发生了类似的事情,并导致了微服务,混合云环境,IT自动化和敏捷流程的出现。 为了应对所有这些问题,IT专业人员开始使用容器,Kubernetes和开放式混合云。
现在,这种经验已被用于应对Al的挑战。 因此,IT专业人员可以创建基于容器的平台,允许您在敏捷流程中创建AI / ML服务,加快创新速度,并着眼于混合云。
我们将开始使用Red Hat OpenShift构建我们的平台,这是我们的用于混合云的容器Kubernetes平台,该平台具有快速增长的软件和硬件ML解决方案生态系统(NVIDIA,H2O.ai,Starburst,PerceptiLabs等)。 红帽的一些客户,例如宝马集团,埃克森美孚(ExxonMobil)等,已经基于该平台及其生态系统部署了容器化的ML工具链和DevOps流程,以将其ML架构投入商业运营并加快数据分析师的工作。
我们启动Open Data Hub项目的另一个原因是,演示基于多个开源项目的体系结构示例,并展示如何实现基于OpenShift平台的ML解决方案的整个生命周期。
开放数据中心项目
这是一个开放源代码项目,在OpenShift平台上使用容器和Kubernetes解决AI / ML任务时,在相应的开发社区的框架内开发并实施完整的操作周期-从加载和转换初始数据到模型的形成,训练和维护。 该项目可以视为参考实施,是如何基于OpenShift和相关的开源工具(如Tensorflow,JupyterHub,Spark等)构建开放式AI / ML即服务解决方案的示例。 重要的是要注意,Red Hat本身使用此项目来提供AI / ML服务。 此外,OpenShift还与NVIDIA,Seldon,Starbust和其他供应商的关键软件和硬件ML解决方案集成在一起,这使得构建和运行自己的机器学习系统变得容易。
开放数据中心项目重点关注以下类别的用户和用例:
- 一位数据分析师,需要一种解决方案来实施ML项目,该解决方案由具有自助功能的云的类型来组织。
- 一位数据分析师,需要从各种最新的开源AI / ML工具和平台中进行最大程度的选择。
- 训练模型时需要访问数据源的数据分析师。
- 需要访问计算资源(CPU,GPU,内存)的数据分析师。
- Date是一位分析师,他需要机会与同事合作并共享工作结果,获得反馈并使用快速迭代方法进行改进。
- 想要与开发人员(和开发人员团队)进行交互以使他的ML模型和工作结果投入生产的数据分析师。
- 需要根据安全标准和要求为数据分析提供对各种数据源的访问权限的数据工程师。
- 需要能够轻松控制开源组件和技术的生命周期(安装,配置,更新)的能力的IT系统管理员/操作员。 我们还需要适当的管理和配额工具。
Open Data Hub项目结合了许多开源工具,以实现完整的AI / ML操作。 Jupyter Notebook在这里用作数据分析的主要工作工具。 该工具包现在在数据处理和分析专业人员中很受欢迎,并且Open Data Hub使他们可以使用内置的JupyterHub轻松创建和管理Jupyter Notebook工作区。 除了创建和导入笔记本Jupyter外,Open Data Hub项目还包含许多AI库形式的现成笔记本。
该库是开源机器学习组件和示例脚本解决方案的集合,这些简化了快速原型制作。 JupyterHub与OpenShift RBAC访问模型集成在一起,该模型允许您使用现有的OpenShift帐户并实现单点登录。 此外,JupyterHub提供了一个方便的用户界面,称为spawner,用户可以使用该界面轻松配置所选Jupyter Notebook的计算资源量(处理器内核,内存,GPU)。
数据分析师创建并设置便携式计算机后,OpenShift的一部分Kubernetes调度程序将处理其余工作。 用户只能执行他们的实验,保存并共享他们的工作结果。 此外,高级用户可以直接从Jupyter笔记本直接访问OpenShift CLI Shell,以启用Kubernetes原语(例如Job)或OpenShift功能(例如Tekton或Knative)。 或者,您可以使用方便的称为“ OpenShift Web控制台”的OpenShift GUI。
转到下一步,开放数据中心提供了管理数据管道的功能。 为此,使用了Ceph对象,该对象作为S3兼容对象数据仓库提供。 Apache Spark从外部源或Ceph S3内置存储流式传输数据,还允许您执行初步的数据转换。 Apache Kafka提供了对数据管道的高级管理(您可以在其中执行多次下载以及数据的转换,分析和存储操作)。
因此,数据分析师可以访问数据并建立模型。 现在,他渴望与同事或应用程序开发人员共享结果,并向他们提供他的服务原则模型。 为此,您需要一个输出服务器,并且Open Data Hub拥有这样的服务器,称为Seldon,它允许您将模型发布为RESTful服务。
在某些时候,Seldon服务器上有几种这样的模型,因此需要监视它们的使用方式。 为此,开放数据中心基于广泛使用的开源监视工具Prometheus和Grafana提供了一系列相关指标和报告引擎。 结果,我们获得了用于监视AI模型使用的反馈,尤其是在生产环境中。
因此,开放数据中心在整个AI / ML操作周期(从访问和数据准备到模型的训练和工业操作)中提供了一种类似于云的方法。
全部放在一起
现在的问题是如何为OpenShift管理员进行组织。 这里是开放数据中心项目的特殊Kubernetes运算符。
该操作员管理Open Data Hub项目的安装,配置和生命周期,包括JupyterHub,Ceph,Spark,Kafka,Seldon,Prometheus和Grafana之类的工具的部署。 可以在OpenShift Web控制台的社区操作员部分中找到Open Data Hub项目。 因此,OpenShift管理员可以指定将相应的OpenShift项目归类为“ Open Data Hub项目”。 只需完成一次。 之后,数据分析师通过OpenShift Web控制台进入他的项目空间,并看到相应的Kubernetes操作员已安装并且可用于他的项目。 然后,他只需单击一下即可创建Open Data Hub项目的实例,并立即访问上述工具。 所有这些都可以在高可用性和容错模式下进行配置。
如果您想亲自尝试Open Data Hub项目,请
从安装说明和入门教程开始 。 Open Data Hub架构的技术细节可以在
这里找到;项目开发计划在
这里 。 将来,计划与Kubeflow进行其他集成,解决数据监管和安全性方面的许多问题,并根据Drools和Optaplanner规则组织与系统的集成。 您可以表达自己的意见,并成为
社区页面上
Open Data Hub项目的
成员 。
我们总结:扩展方面的严重问题阻止组织充分利用人工智能和机器学习的潜力。 红帽OpenShift长期以来一直成功用于解决软件行业中的类似问题。 在开放源代码开发社区中实施的Open Data Hub项目提供了一个参考架构,用于基于OpenShift混合云组织完整的AI / ML操作周期。 我们对该项目有一个清晰而周到的开发计划,并且我们认真致力于创建一个活跃而富有成果的社区,以在围绕它的OpenShift平台上开发开放式AI解决方案。