为什么Kubernetes和容器与机器学习密不可分?
原文出自infosecurity
当前,数字化转型的热潮在IT领域发展的如火如荼,越来越多的企业投身其中,机器学习和人工智能等现代技术的融合在公司组织内部也逐渐流行起来。
随着那些构成企业复杂IT基础架构的技术日益成熟,部署云原生环境以及在该环境中使用容器早已成为企业技术轨道中的“家常便饭”。
幸运的是,对于企业所有者而言,Kubernetes和容器部署技术不仅可以与机器学习技术并驾齐驱,而且可以引入到云原生模型中,从而为企业提供良多裨益,包括实施有效的业务策略以及安全性的培养。
当我们谈到机器学习时,你会想到什么?机器的应用场景是多种多样的 -- 从简单的欺诈/网络犯罪侦查,到量身定制的客户体验,再到像供应链优化这样复杂的操作,一切都证明了机器学习能够为企业所带来的丰厚利润。
此外,Gartner的预测进一步证明了机器学习所提供的众多优势,该预测指出,到2021年,70%的企业都将依赖于某种形式的人工智能。
人工智能在业务中的应用
企业若想充分利用人工智能和机器学习,并将其应用于DevOps和DevSecOps等新业务组中,他们必须拥有可靠的IT基础架构。
强大的IT环境能够为数据科学家提供尝试各种数据集、计算模型和算法的环境,而不会影响其他操作,也不会给IT人员造成损失。
为了在业务中有效实现机器学习,企业需要找到一种在本地和云环境中重复部署代码的方法,并建立与所有所需数据源的连接。
对于现代企业而言,时间是帮助他们实现目标的基本工具,因此,他们迫切需要一种支持快速开发代码的IT环境。
说到容器,容器通过将代码及其特定的运行要求打包在“包装”中,从而加快了企业应用程序的部署过程,这一特性使容器成为了企业的理想选择,也因此成为了机器学期和人工智能的理想搭档。
综上所述,基于容器环境下进行的人工智能项目的三个阶段,包括探索、训练模型和部署,是非常有潜力的。每个阶段具体又包括什么呢?下文将对这三个阶段展开说明。
01 探索
在构建AI模型时,数据科学家们遵循的规范是尝试不同的数据集以及各种ML算法,以确定要使用的数据集和算法,以便他们可以提高预测水平效率和准确性。
通常,数据科学家依靠大量的库和框架来为不同行业中的各种情况和问题创建ML模型。当数据科学家们试图发现新的收入来源并努力实现企业的业务目标时,他们还需要具备运行测试并快速执行测试的能力。
尽管AI技术的使用日新月异,但已有数据表明,令数据科学家和工程师使用容器化开发的企业比其竞争者更据优势。
渥太华DevOps工程师Gary Stevens的一份报告指出,加拿大网络托管提供商HostPapa的表现优于其他领先的网络托管提供商,这要归功于它早早地采用了Kubernetes。
在AI或ML项目的探索阶段结合容器,能够使数据团队根据他们的特定领域,自由打包库;相应地部署算法,并根据团队需求明确正确的数据源。
随着基于容器的程序(例如Kubernetes)的成功实施,数据科学家有权访问隔离的环境。这使得他们可以自定义探索过程,而不必在共享环境中管理多个库和框架。
02 模型训练
设计完模型后,数据科学家需要利用大量数据,跨平台训练AI程序,以最大程度地提高模型的准确性,并减少任何人工资源的使用。
考虑到训练AI模型是一项高度计算密集型操作的事情,容器被证明在扩展的工作负荷以及快速与其他节点通信方面非常有利。但是,通常情况下IT团队的成员或调度程序会确定最佳节点。
此外,通过容器进行现代数据管理平台进行数据训练,极大地影响并简化了AI模型中的数据管理流程。此外,数据科学家还具有在多种不同类型的硬件(例如GPU)上运行AI或ML项目的优势,这也使他们能够一直使用那些最具准确性的硬件平台。
03 部署
作为AI项目中最棘手的部分,在机器学习应用程序的生产和部署阶段中可能经常会出现多个ML模型的组合,而每个模型都有其不同的用途。
通过在ML应用程序中结合容器,IT团队可以将每个特定模型部署为单独的微服务。那么,微服务又是什么?微服务是指一个独立的轻量级程序,开发人员能够在其他应用程序中重复使用该程序。
容器不仅为快速部署ML和AI模型提供了一个可移植的、隔离且一致的环境,也拥有可能改变当今IT格局的能力,那就是使企业能够更快更好地实现其目标。
原文链接:
https://www.infosecurity-magazine.com/opinions/kubernetes-containers-machine/