0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

云计算机器学习平台的标配功能及选购指南

如意 ? 来源:企业网D1Net ? 作者:Martin Heller ? 2020-08-18 11:27 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

云计算机器学习平台提供的多种功能可以支持完整的机器学习生命周期。

为了创建有效的机器学习和深度学习模型,组织需要获取大量的数据,并对其执行特征工程的方法,以及在合理的时间内训练数据模型的方法。然后,组织需要一种方法来部署模型,监视它们是否随时间的推移而改变,以及根据需要重新训练它们。

如果组织已经在计算资源和加速器(例如GPU)上进行了投资,则可以在内部部署基础设施完成所有这些操作,但是可能会发现,如果资源足够,它们在很多时间都处于闲置状态。另一方面,有时在云平台中运行整个管道,根据需要使用大量计算资源和加速器,然后释放它们,可能更具成本效益。

主要的云计算提供商(以及其他云计算提供商)已投入大量精力来构建其机器学习平台,以支持从计划项目到维护生产模型的完整机器学习生命周期。组织如何确定哪些云平台可以满足其需求?每个端到端机器学习平台都应提供以下12种功能。

1.接近自己的数据

如果组织拥有建立精确模型所需的大量数据,则不希望将其传输到世界各地。这里的问题并不是距离,而是时间:数据传输速度最终受到光速限制,即使在带宽无限的完美网络上也是如此。长距离意味着等待时间更长。

对于非常大的数据集,理想的情况是在已经存在数据的地方建立模型,从而不需要传输大量数据。一些数据库在一定程度上支持这一点。

下一个最佳情况是数据与模型构建软件位于同一高速网络上,这通常意味着在同一数据中心内。如果组织拥有TB或更大容量的数据,即使将数据从一个数据中心迁移到云计算可用性区域内的另一个数据中心,也可能会造成严重的延迟。组织可以通过执行增量更新来缓解这种情况。

最坏的情况是,组织必须在带宽受限和高延迟的路径上远程移动大量数据。而在这方面,澳大利亚为此部署的跨太平洋电缆的工程令人惊叹。

2.支持ETL或ELT管道

ETL(导出、转换和加载)和ELT(导出、加载和转换)是数据库领域中常见的两种数据管道配置。机器学习和深度学习扩大了对这些内容的需求,尤其是转换部分。当转换需要更改时,ELT为组织提供更大的灵活性,因为加载阶段通常是大数据最耗时的阶段。

通常情况下,没有进行处理的数据很嘈杂,需要过滤。此外,这些数据的范围也有所不同:一个变量的最大值可能高达数百万,而另一个变量的范围可能是-0.1至-0.001。对于机器学习来说,必须将其变量转换为标准化的范围,以防止较大范围的变量控制模型。具体的标准化范围取决于模型使用的算法

3.支持在线环境进行模型构建

传统的观点是,组织应该将数据导入桌面设备以进行模型构建。建立良好的机器学习和深度学习模型所需的大量数据改变了局面:组织可以将一小部分数据样本下载到桌面设备上,以进行探索性数据分析和模型构建,但是对于生产模型,则需要访问完整的模型数据。

Jupyter Notebooks、JupyterLab和Apache Zeppelin等基于Web的开发环境非常适合模型构建。如果组织的数据与笔记本电脑环境位于同一云平台中,则可以对数据进行分析,以很大程度地减少数据移动的时间。

4.支持扩展训练

除了训练模型之外,笔记本电池的计算和内存要求通常很小。如果笔记本可以生成在多个大型虚拟机或容器上运行的训练作业,则将大有帮助。如果训练可以访问加速器(例如GPU、TPU和FPGA),也将有很大帮助;这些模型可以将数天的训练过程变成数小时。

5.支持AutoML和自动特征工程

并不是每个组织都擅长于选择机器学习模型、选择特征(模型使用的变量),以及从原始观察中设计新特征。即使组织擅长这些任务,它们也很耗时,而且可以在很大程度上实现自动化。

AutoML系统经常尝试使用许多模型来查看哪些模型可以产生优秀目标函数值,例如回归问题的最小平方误差。出色的AutoML系统还可以执行功能工程,并有效地利用它们的资源,以尽可能多的特征集合来追求优质的模型。

6.支持优质的机器学习和深度学习框架

大多数数据科学家拥有用于机器学习和深度学习技术的很喜欢的框架和编程语言。对于喜欢Python的人来说,Scikit学习通常是机器学习的最爱,而TensorFlow、PyTorch、Keras、MXNet通常是深度学习的首选。在Scala中,Spark MLlib往往是机器学习的首选。在R中,有许多原生机器学习包,以及与Python的良好接口。而在Java中,H2O.ai的评价很高,Java-ML和Deep Java Library也是如此。

云计算机器学习和深度学习平台往往拥有自己的算法集合,并且它们通常以至少一种语言或作为具有特定入口点的容器来支持外部框架。在某些情况下,组织可以将自己的算法和统计方法与平台的AutoML功能集成在一起,这非常方便。

一些云平台还提供了自己的主要深度学习框架的调整版本。例如,AWS公司拥有TensorFlow的优化版本,该公司声称可以为深度神经网络训练提供近乎线性的可扩展性。

7.提供预训练的模型并支持转移学习

并非每个人都希望花费时间和资源来训练自己的模型,而即使当预训练的模型可用时,他们也不应该如此。例如,ImageNet数据集非常庞大,并且要针对其训练比较先进的深度神经网络可能要花费数周的时间,因此在可能的情况下使用预先训练的模型是有意义的。

另一方面,经过预训练的模型可能无法始终标识组织关心的对象。转移学习可以帮助组织针对特定数据集自定义神经网络的最后几层,而无需花费更多时间和资金来训练整个网络。

8.提供优化的人工智能服务

主要的云平台为许多应用程序提供了功能强大且经过优化的人工智能服务,而不仅仅是图像识别。其示例包括语言翻译、语音转换到文本、文本转换到语音、预测和推荐。

这些服务已经经过训练和测试,其使用的数据量超出了企业通常可获得的数据量。它们还已经部署在具有足够计算资源(包括加速器)的服务端点上,以确保在全球负载下具有良好的响应时间。

9.管理实验

为组织的数据集找到优秀模型的唯一方法是尝试采用所有方法,无论是人工还是使用AutoML。这就留下了另一个问题:管理实验。

良好的云计算机器学习平台将为组织提供一种方式,可以查看和比较每个实验的目标函数值(训练集和测试数据)以及模型和混淆矩阵的大小。而能够绘制所有这些图表具有一定的优势。

10.支持模型部署以进行预测

一旦组织有了根据自己的条件选择优秀实验的方法,就需要一种简单的方法来部署模型。如果组织出于同一目的部署多个模型,则还需要一种在它们之间分配流量的方法来进行a/b测试。

11.监控预测效果

数据随着世界的变化而变化。这意味着组织无法部署模型而忘记它。与其相反,组织需要监视为预测而提交的数据。当数据从原始训练数据集的基线开始发生明显变化时,组织需要重新训练模型。

12.控制成本

最后,组织需要一些方法来控制模型产生的成本。部署用于生产推理的模型通常占到深度学习成本的90%,而训练仅占成本的10%。

控制预测成本的优秀方法取决于组织的负载和模型的复杂性。如果负载很高,则可以使用加速器来避免添加更多虚拟机实例。如果负载可变,则随着负载的增加或减少,组织可能能够动态更改大小或实例或容器的数量。而且,如果组织的负载较少,则可以使用带有部分加速器的非常小的实例来处理预测。

【编辑推荐】

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 云计算
    +关注

    关注

    39

    文章

    7982

    浏览量

    140877
  • 机器学习
    +关注

    关注

    66

    文章

    8513

    浏览量

    135107
  • 深度学习
    +关注

    关注

    73

    文章

    5569

    浏览量

    123092
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    自动化计算机功能与用途

    工业自动化是指利用自动化计算机来控制工业环境中的流程、机器人和机械,以制造产品或其部件。工业自动化的目的是提高生产率、增加灵活性,并提升制造过程的质量。工业自动化在汽车制造中体现得最为明显,其中许多
    的头像 发表于 07-15 16:32 ?258次阅读
    自动化<b class='flag-5'>计算机</b>的<b class='flag-5'>功能</b>与用途

    工业计算机与商用计算机的区别有哪些

    工业计算机是一种专为工厂和工业环境设计的计算系统,具有高可靠性和稳定性,能够应对恶劣环境下的自动化、制造和机器人操作。其特点包括无风扇散热技术、无电缆连接和防尘防水设计,使其在各种工业自动化场景中
    的头像 发表于 07-10 16:36 ?254次阅读
    工业<b class='flag-5'>计算机</b>与商用<b class='flag-5'>计算机</b>的区别有哪些

    计算机网络入门指南

    计算机网络是指将地理位置不同且具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统、网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。
    的头像 发表于 04-22 14:29 ?1261次阅读
    <b class='flag-5'>计算机</b>网络入门<b class='flag-5'>指南</b>

    山泽HDMI线选购指南

    选择一条合适的山泽HDMI线对于提升视听体验至关重要。以下是一份超详细的山泽HDMI线选购指南: HDMI线版本选择 HDMI 1.4:最大带宽10.2Gbps,支持最高4K@30Hz分辨率,引入
    的头像 发表于 12-25 16:07 ?886次阅读

    云端超级计算机使用教程

    云端超级计算机是一种基于计算的高性能计算服务,它将大量计算资源和存储资源集中在一起,通过网络向用户提供按需的
    的头像 发表于 12-17 10:19 ?616次阅读

    工业中使用哪种计算机

    在工业环境中,工控机被广泛使用。这些计算机的设计可承受极端温度、灰尘和振动等恶劣条件。它们比标准消费类计算机更耐用、更可靠。工业计算机可控制机器、监控流程并实时收集数据。其坚固的结构和
    的头像 发表于 11-29 14:07 ?780次阅读
    工业中使用哪种<b class='flag-5'>计算机</b>?

    量子计算机与普通计算机工作原理的区别

    ? 本文介绍了量子计算机与普通计算机工作原理的区别。 量子计算是一个新兴的研究领域,科学家们利用量子力学,制造出具有革命性能力的计算机。虽然现在的量子
    的头像 发表于 11-24 11:00 ?1690次阅读
    量子<b class='flag-5'>计算机</b>与普通<b class='flag-5'>计算机</b>工作原理的区别

    什么是机器学习?通过机器学习方法能解决哪些问题?

    来源:Master编程树“机器学习”最初的研究动机是让计算机系统具有人的学习能力以便实现人工智能。因为没有学习能力的系统很难被认为是具有智能
    的头像 发表于 11-16 01:07 ?1076次阅读
    什么是<b class='flag-5'>机器</b><b class='flag-5'>学习</b>?通过<b class='flag-5'>机器</b><b class='flag-5'>学习</b>方法能解决哪些问题?

    【小白入门必看】一文读懂深度学习计算机视觉技术及学习路线

    一、什么是计算机视觉?计算机视觉,其实就是教机器怎么像我们人一样,用摄像头看看周围的世界,然后理解它。比如说,它能认出这是个苹果,或者那边有辆车。除此之外,还能把拍到的照片或者视频转换成有用的信息
    的头像 发表于 10-31 17:00 ?1335次阅读
    【小白入门必看】一文读懂深度<b class='flag-5'>学习</b><b class='flag-5'>计算机</b>视觉技术及<b class='flag-5'>学习</b>路线

    云端超级计算机怎么用

    云端超级计算机是一种基于计算的高性能计算服务,它将大量计算资源和存储资源集中在一起,通过网络向用户提供按需的
    的头像 发表于 10-18 10:14 ?537次阅读

    计算机存储系统的工作原理和功能

    计算机存储系统作为计算机系统中至关重要的组成部分,其原理和功能对于理解计算机的运行机制具有关键意义。以下将详细阐述计算机存储系统的原理和
    的头像 发表于 09-26 16:42 ?3132次阅读

    计算机存储系统的构成

    Memory),再到辅助存储器(Auxiliary Memory),每一层都有其特定的功能和特点。以下是对计算机存储系统构成的详细解析。
    的头像 发表于 09-26 15:25 ?2697次阅读

    计算机系统的硬件组成和主要部件

    计算机系统的硬件组成是计算机运行的基础,它包含了多个关键部件,这些部件相互协作,共同实现计算机的各种功能
    的头像 发表于 09-10 11:41 ?7517次阅读

    简述计算机总线的分类

    计算机总线作为计算机系统中连接各个功能部件的公共通信干线,其结构和分类对于理解计算机硬件系统的工作原理至关重要。以下是对计算机总线结构和分类
    的头像 发表于 08-26 16:23 ?5402次阅读

    晶体管计算机和电子管计算机有什么区别

    晶体管计算机和电子管计算机作为计算机发展史上的两个重要阶段,它们在多个方面存在显著的区别。以下是对这两类计算机在硬件、性能、应用以及技术发展等方面区别的详细阐述。
    的头像 发表于 08-23 15:28 ?3841次阅读