人工智能
变身漫画道具玩了没?这样的AI人像特效机器学习服务帮你实现
近期,抖音上一款“变身漫画”的特效刷爆“我的关注”,二次元漫画样式的画风更是让大家欲罢不能。从明星到路人,从大朋友到小朋友纷纷参与其中,抖音App中“变身漫画”话题页显示约有1851万余人使用该道具。
如今,此类视频/图片风格转化特效,画面细节精致、色彩温和,颇受欢迎。其实它并非新鲜事物,通常此类风格转化是机器学习模型创造出的虚拟场景,主要采用生成对抗网络(GAN)技术。
生成对抗网络(GAN)是一种机器学习模型,由深度神经网络架构构成。生成对抗网络(GAN)由生成网络和判别网络组成,生成网络产生“假”数据,判别网络对生成数据进行真伪判断,通过卷积神经网络进行分析,在训练过程中,两个网络持续进行对抗,直至判别网络无法识别“假”数据,其被广泛应用于媒体、游戏、娱乐等领域。
生成对抗网络抗网络(GAN)可基于PyTorch机器学习框架构建,因涉及从构建到部署的整个机器学习流程,所以无法避免机器学习全流程中存在的诸多难题。首先,对于完整的机器学习项目而言,落地是一项纷繁复杂的工作且成本高昂。其次,整个项目从选择算法、优化算法到参数调节,影响模型准确性的参数有百万之多。最重要的是,需要开发者和数据科学家具有广而精的专业知识。
因此,一种更为友好的机器学习服务是如此重要。而云计算时代的到来,扫清了广大企业应用人工智能和机器学习的障碍,让简化机器学习项目成为可能,并且开发者又能得到庞大算力、数据存储等云能力的支持。根据Gartner预测,到2023年将有超过40%的开发团队将使用自动化机器学习服务。可见,机器学习从业者急需适用于整个机器学习工作流程的云端服务或平台。
AWS全方位支持AI在云端生长
20多年来,Amazon Web Services (AWS) 在人工智能和机器学习方面进行的大量投入,获得了国际分析机构的高度认可。根据2020年Gartner公布的《云AI开发者服务魔力象限》显示,AWS被评为该领域的领导者。
AWS可根据用户的不同需求,为开发者和数据科学家提供全方位的机器学习和人工智能解决方案,包括三层的服务堆栈。其中,底层为机器学习的框架和基础架构,用户可以自由选择PyTorch、TensorFlow、Apache MXNet、Chainer、Gluon、Horovod和Keras等机器学习框架。顶层为训练好的人工智能服务,如视觉类、文字类、语音类等,用户可以直接调用相关服务,无需过多关注服务背后机器学习模型的复杂流程。
尤为重要的是中间层,AWS基于机器学习的核心服务层推出了完全托管服务—— Amazon SageMaker。它更像是机器学习从业者的“工具包”,可集中提供用于机器学习的所有组件,贯穿机器学习项目从构建、训练到部署的整个工作流程,消除了传统机器学习复杂、昂贵、迭代的弊端,帮助开发人员和数据科学家更快速、高效地将机器学习模型投入实际应用中。
就中国市场而言,随着越来越多的企业和开发者意识到机器学习和人工智能的潜力,对于机器学习服务的需求愈发迫切。根据IDC预计,到2023年中国人工智能市场规模将达到979亿美元。AWS适时而为,2020年4月30日AWS正式将Amazon SageMaker落地中国,在由西云数据运营的AWS中国(宁夏)区域和光环新网运营的AWS中国(北京)区域上线运营。
Amazon SageMaker助力机器学习的黄金时代
宏观来看,机器学习项目整个过程是高度迭代的,需要多方协助。随着机器学习项目规模的增加,整个工作流程变得过于复杂,为此大多数机器学习项目中需要使用多种工具来满足各个阶段工程师的需求。
通常,大多数项目遵循数据科学家进行研究、实验及验证,开发者负责模型落地的流程,而最终实现多方协作并非易事。Amazon SageMaker提供的Amazon SageMaker Studio适用于机器学习的完全集成式开发环境 (IDE),其将所有用于机器学习的组件集中在一起,可以有助于提高整体项目的工作效率。
SageMaker Studio为所有Amazon SageMaker功能和整个机器学习工作流提供统一界面,使用者可以快速上传数据、创建新笔记本、训练和调优模型,帮助使用者全面掌控构建、训练和部署模型的每个步骤。
具体来看,机器学习项目工作流程分为以下几大类,AWS可在各项流程中提供支持:
一、数据准备
机器学习项目的成功依靠优质的模型,优质的模型基于高质量的数据。Amazon SageMaker Ground Truth可处理丢失或损坏的数据,帮助开发者快速构建和管理高度准确的训练数据集。并且,Ground Truth可持续向人工制作的标签学习,以生成高质量的自动注释,同时可将数据标记成本降低70%左右。
二、构建
当数据进行了必要的转换和筛选处理,开发者又将面临如何选择算法与模型的困境。在设计机器学习模型时,虽然目前的一些机器学习自动化方法,已经实现了创建初始模型的功能,但只是停留于开发者的基础需求,无法满足开发者对于模型更深层次的需求,比如如何创建模型、改进模型以及获取相关数据等。
对于AWS而言,重视构建环节是夯实机器学习项目的关键。为此,Amazon SageMaker提供自动构建模型的功能Amazon SageMaker Autopilot,作为业内首个对机器学习模型保持控制和可见性的自动化机器学习功能,其可让开发者完全掌控机器学习模型。一方面,对于缺乏经验的开发者Amazon SageMaker Autopilot可提供千余种算法、模型和数据。另一方面,经验丰富的开发者可将它用于开发基础模型,团队可以在此基础上进一步迭代。
同时针对开发者和数据科学家的特定需求,Amazon SageMaker选择了最受大家欢迎的工具之一——Jupyter Notebook。使用Amazon SageMaker Notebook可一键启动Jupyter Notebook,使用者可以根据需求调整算力,从而快速实现构建模型并有助于增强团队内部的协作配合。
三、训练
训练机器学习模型是脆弱且困难的,通常需要进行多次迭代和不断调优。获得NIPS 2017年度时间奖的人工智能研究员Ali Rahimi,在颁奖典礼上就曾抱怨过模型训练的脆弱性。假设一个机器学习模型要处理百万级别的记录数据,则至少需要数百次迭代。开发者该如何管理这些迭代的模型、训练数据和参数设置呢?
Amazon SageMaker Experiments可以帮助开发者组织和跟踪机器学习模型的迭代。其将自动捕获输入参数、配置和结果,以可视化的形式帮助开发者管理迭代产生的结果。开发者也可自行保留实验的完整谱系,如出现模型偏离预期结果的情况,开发者可及时回溯和检查。
当解决了算法和模型的难题,整个项目的开发时间与运营成本自然会大幅降低。以“大宇无限”公司为例,采用Amazon SageMaker极大的简化了搭建机器学习系统的构建、训练和部署流程。从始至终“大宇无限”无需顾虑开发成本与时间成本,算法工程师只需准备数据,估算约节省70%的训练成本。而根据AWS给出的资料显示,Amazon SageMaker提供托管的Spot训练,最高可将训练成本降低90%。
此外,机器学习的发展仍然处于快速变化的进程中,开发者更需要一个开放的平台。在Amazon SageMaker上有着有非常开放的选择,特别是在中国市场。
(1)对机器学习框架的开放:上文提到了Amazon SageMaker支持的众多机器学习框架,并且针对TensorFlow、PyTorch、Apache MXNet在内的主流框架进行了深度优化。例如,在256GPUs下,对TensorFlow的扩展效率可以做到90%,远高于开源平台的65%。值得一提的是,全球范围内85%的TensorFlow的工作负载跑在AWS上面。
(2)对定制化的开放:Amazon SageMaker已配备了多种内置算法,用户可以开箱即用来解决各类应用问题。但同时用户也可以将自己的算法或模型通过容器的方式用于Amazon SageMaker,即使是早前的框架Caffe也都可通过自带容器的方式在Amazon SageMaker中使用。
(3)对生态系统的开放:一个机器学习平台能否具有生命力,关键在生态系统。目前,AWS已经与德勤、中科创达、伊克罗德等APN合作伙伴开展了合作,加速Amazon SageMaker在中国地区企业级市场的落地。
(4)对开源社区的开放:考虑到目前很多机器学习负载已经容器化,Amazon SageMaker为Kubernetes提供了运算符,并保持对众多开源社区组件的开放性。此外,AWS还开源了SageMaker的部分实现,联合Facebook推出TorchServe - 业内第一个针对PyTorch框架的model server。
四、部署
机器学习始终因落地部署难而被诟病,如机器学习项目想要“开花结果”,落地部署环节是关键,但机器学习所具有的一些特性,却使得大规模部署十分困难。这个阶段开发者需要处理,编程语言兼容性、算力、可扩展以及模型质量等难题,而对于完全托管的机器学习服务完全不成问题。
Amazon SageMaker可实现一键式部署受训模型,以便开发者针对实时或批量数据生成预测,并提供适用于Kubeflow Pipelines的组件,保持模型的高效与准确。开发者只需关注应用程序为此终端节点提供的API调用,即可实现低延迟、高吞吐量推理。同样是“大宇无限”的案例,使用Amazon SageMaker服务后仅用了三个月的时间,“大宇无限”便完成了自身机器学习系统从0到1的突破。
未来AI将如何在云端生长
随着人工智能与机器学习的普及,新一轮技术浪潮正在开启。无论是创新企业还是传统企业都意识到需要利用人工智能与机器学习寻求突破和创新,根据Gartner在2019年对CIO的调查显示,2018年至2019年间,部署人工智能 (AI)的企业或组织从4%增长到了14%。
可以说,AWS已经为机器学习从业人员找到了更高效、更便捷、更迅速的解决方案。AWS希望将Amazon SageMaker打造成通用的产品和服务,通过社区的形式把机器学习的能力交到每一位创建者的手中,真正让机器学习可以广泛地、深入地改变人们的生活。