您的位置:首页 >访谈 >

AWS持续拓展机器学习应用版图推出涵盖多项功能的整合式开发环境以及高阶商用型AI服务

原标题:AWS持续拓展机器学习应用版图推出涵盖多项功能的整合式开发环境以及高阶商用型AI服务

图片来源:

李宗翰摄影

【美国拉斯维加斯现场报导】机器学习是当前企业发展AI应用的重要技术基础之一,在AWS今年re:invent大会的第二天,该公司执行长Andy Jassy所发表的主题演讲,也证实了这股技术应用趋势,正在持续发展、扩张当中,因为,该类云端服务目前正是AWS成长最快的业务应用,他表示,AWS目前已拥有数万名採用机器学习服务的用户,而且,他们的用户数量之多,是市占第二云端服务厂商的两倍。

随后,Andy Jassy也针对AWS提供的各种机器学习服务,区隔出三大类型,逐一介绍最新进展。它们分别是:位于底层的机器学习框架与基础架构,居中的机器学习服务,以及上层的人工智慧服务。

以底层而言,Andy Jassy自豪地表示,全球有85%的TensorFlow框架,是在AWS的云端服务环境当中执行,而在执行机器学习训练的处理作业上,若以几种针对AWS环境最佳化调校的主要机器学习框架,搭配AWS提供的GPU执行个体P3,来进行Mask R-CNN深度学习模型的训练,比起用户自行搭建硬体设备来执行相关作业,可节省2成左右的处理时间。

位于中间层的AWS机器学习解决方案,主要是全代管机器学习服务SageMaker,它是在2017年举行的re:Invent大会推出,资料科学家与开发人员可运用这套云端服务,轻鬆地进行机器学习模型的建构、训练与部署。到了2018年,SageMaker已陆续增添50种以上的功能。

在2019年底举行的re:Invent大会上,AWS继续发布SageMaker相关的新功能,其中最受众人瞩目的部分,就是用于机器学习的整合式开发环境(IDE),名为SageMaker Studio,并基于这套工具,提供Notebooks、Experiments、Autopilot、Debugger、Model Monitor等特色,支援开发与部署机器学习模型的自动化执行、整合、除错、监控的操作。

处于最上层的人工智慧服务(AI Services),AWS提供不需要懂得机器学习技术运作方式的功能项目。早先他们陆续推出影像辨识(Rekognization)、语音辨识(Polly、Transcribe)、文字辨识(Translate、Comprehend、Textract),以及对话机器人(Lex)、个人化推荐(Personalize)、预测(Prediction)等服务,今年,他们提供了更多与企业日常业务运作更密切相关的功能项目,像是诈骗侦测(Fraud Detector)、程式码检视与剖析(CodeGuru)、往来客户联络分析(Contact Lens for Amazon Connect)、企业内部搜寻(Kendra)。

因应机器学习开发流程各阶段的需求,率先推出网页版IDE工具

在今年re:Invent大会推出的机器学习各项新功能当中,SageMaker Studio无疑是针对开发人员与资料科学家的重要特色,号称能大幅提升生产力。

基本上,它提供了单一操作介面,能让用户着手进行机器学习模型的建立、除错、训练、部署、监控、维运,并提供多种功能,像是:伸缩式脚本套用、实验测试管理、模型自动建立、除错、组态剖析,以及模型飘移侦测。

整体而言,在这套整合式开发工具当中,开发人员可以查看原始程式码、相依性、文件,以及用于行动App的图片等应用程式资产,整理出彼此之间的组织结构。同时,他们也能建立专案资料夹,管理资料集与用于自动化执行的笔记本,并与其他人共同讨论笔记本的设计与后续处理的结果。

以目前上线的SageMaker Studio而言,AWS也在本次用户大会上,特别强调下列5种内建的功能特色。

Notebooks

SageMaker Notebooks所提供的功能,主要是可一键操作的Jupyter notebook,能搭配AWS EC2将相关环境快速建置起来。这项服务包含了执行或重新建立机器学习流程所需的各种要素。在这之前,开发人员若要检视或执行笔记本,需在SageMaker上建置一个运算执行个体,才能支援笔记本所设定的自动化应用程序。假如开发人员需要更多运算力,在那样的状态当下,他们必须启动新的执行个体、将笔记本传输过去,再将旧有的执行个体关闭;此外,由于笔记本需搭配运算执行个体来执行,但笔记本通常会存放在开发人员的工作站电脑当中,因此,难以与他人共享与进行反覆的协同作业。

而在SageMaker Notebooks服务当中,提供了可伸缩自如使用的Jupyter notebook,能让开发人员轻鬆地调高或降低笔记本所需的运算资源(包含GPU加速器),而且这些异动会自动在背景服务当中进行,不会打断开发者的工作。

开发者不需将时间耗费在关闭旧有的执行个体,以及重新在新的执行个体建立所有的工作。能够更快开始建立机器学习的模型。AWS强调,只需一个按键,开发者就能将笔记本分享出去,系统会自动重新产生指定的环境与程式库相依性。因此,这样的机制能简化多人协同的模型建构作业,开发者能够将手上的工作交给其他人,并在他们既有的工作之上,继续建构模型。

Experiments

这套机器学习IDE工具第二个主打的功能,则是SageMaker Experiments,它能协助简化管理机器学习模型的反覆作业,让开发者能够组织与追蹤相关的工作,进而更快培养出高品质的模型。

一般而言,机器学习通常会牵涉到多数反覆处理,目的是为了隔离与测量变更特定输入之后所产生的渐进变化,开发者在这些反覆处理过程当中,会产生数百种加工物,像是模型、训练资料、参数设定,但目前他们必须仰赖试算表来追蹤这些实验,并且手动分类这些加工物(artifacts),以便了解实验如何受到影响。现在有了SageMaker Experiments,能让开发者管理这些反覆处理,当中将会自动撷取开发者输入的参数、组态与结果,并将这些资料存为个别的「实验体」,之后开发者就可以透过更简单的方式进行各种管理工作,像是:检视目前正在进行的实验,根据特徵来搜寻指定的实验,审视先前的实验与结果,或是透过虚拟的方式来比较实验结果。这项功能将会保留每个实验的完整体系,因此,一旦模型开始开始脱离原本所要输出的部份时,开发者可以及时倒回相关的程序,并且对加工物进行检测。

Debugger

在软体开发过程当中,除错是不可避免的工作,而在开发机器学习模型时,也需要进行这样的处理,而在SageMaker Studio提供了Debugger的功能,开发者可透过这项机制对模型的训练,进行除错与剖析,以便改善精準度、减少训练时间,并且促进对于机器学习模型的了解。

当前的模型训练过程仍是相当不透明,训练时间可能很长,而且难以进一步调校,而这种黑箱作业也会导致开发者难以理解与诠释模型的运作方式。若採用Debugger,用户在SageMaker训练的模型,可自动发出关键测量指标,让SageMaker Studio,能够进行收集与审视(其他应用程式也可透过SageMaker Debugger的API来整合),这些指标将提供训练精準度与效能的即时回馈,因此,一旦系统侦测到训练问题,SageMaker Debugger可以提供警告与修正的建议。

此外,这项功能也能帮助开发者诠释模型的运作方式,并且重现早期的处理步骤,让开发者能够更为理解神经网路的运作。

Model Monitor

开发机器学习模型时,除了注意除错,也要处理概念飘移(concept drift)的情况,SageMaker Studio提供了Model Monitor功能,能让开发者以更简易的方式来调整训练资讯或演算法,侦测与修正机器学习模型的概念飘移。

对于部署到正式环境的机器学习模型而言,目前影响精準度的重要因素之一,就是用于产生预测的资料,开始出现异于用于训练的资料的情况(像是经济情况变化带动了新的利率,进而影响了家用採购预测,或是季节变换带来不同的温度、湿度、气压,结果也影响了设备维护排程的可信度),如果资料开始变得不同,它将会导致所谓的概念飘移,而这会使得用于预测的模型範式,不能再继续套用。而在Model Monitor的功能里面,可建立一套关于模型训练期间的基準统计,并且以这个模型训练基準来比较那些用于预测的资料。

当Model Monitor侦测到模型飘移时,开发者会接到警示,并透过图表的呈现来辨识出根本原因,也可以自行撰写所需要的规则,让Model Monitor得以进行监控。

AutoPilot

若要提升机器学习模型开发的生产力,开发者同样需要自动化的模型建构机制,对此SageMaker Studio提供了AutoPilot功能,而且,开发者还是能继续保有对于模型的控管与执行状态掌握。

目前若要执行自动化的机器学习,开发者已经有足够的方法来建立初始模型,但观于模型如何建立及模型里面的状态,却无法拿到任何可用的资料,因此,假如模型本身的品质只有一般的水準,但开发者希望提升时,可能会找不到合适的作法。

此外,现今的自动化机器学习服务,仅能为用户提供简单的模型。然而,有时候用户想要做一些条件交换,像是在特定版本的模型当中,牺牲一点点精準度来交换一些变化,希望能带来较低延迟的预测产生速度,但目前这类服务只提供一个模型,而无其他选择。

在SageMaker Autopilot里面,开发者只需几个点选动作,就可以驱使系统去自动执行许多工作,像是检测原始资料、套用特徵处理器、挑选最佳的演算法组合、训练多个模型、调校多个模型,以及追蹤模型的效能,并且根据效能来列出模型的排名。

而经过自动处理后所产生出来的结果,会是关于表现最佳的模型推荐,让用户能够放心进行部署,而且仅需要投入一点时间与心力,即可训练、完整掌控模型的建构与内部状态。

对于缺乏机器学习处理经验的人,SageMaker Autopilot也很适用,因为他们可以单独根据手上的资料,即能简易地产生出模型。若是有相关经验的开发者来使用SageMaker Autopilot,也可以藉此在想要进一步执行各种反覆处理的团队当中,快速开发出符合基準组态要求的模型。

以目前的功能来看,SageMaker Autopilot最多可提供50种机器学习的模型,它们都已通过SageMaker Studio的检测,所以,开发者可从中拣选符合他们应用场景需求的最佳模型,而且,也能根据他们所选的最佳化模型来考量相依的因素。

运用与亚马逊相同的机器学习技术,提供更多高阶的人工智慧应用服务

关于人工智慧的应用需求,其实并不只是提供各种开发机器学习的辅助机制,对于不谙这类技术运作原理与相关管理维护作业的用户而言,其实,也能藉助云端业者提供的高阶代管服务,即可善用机器学习技术来简化各种工作,进而为其使用者提供更多元的AI操作体验。

先前AWS在这个领域里面推出的人工智慧应用服务,所针对的需求大多是通用的数位内容转换,2018年底延伸到推荐、预测、自然语言处理等进阶AI服务,而AWS在今年底推出的相关服务,又有了重大突破,那就是跨入更多企业日常运作所需的应用,像是诈骗侦测、程式码审视与剖析、往来客户联络分析、内部资料搜寻。

Fraud Detector

在今年底最新发表的人工智慧应用服务当中,Andy Jassy最先介绍的是诈骗侦测服务Amazon Fraud Detector,它能协助企业即时识别线上身分与支付诈骗行为,而且,这里面採用的判别技术,是由本身就在经营电子商务的亚马逊(Amazon.com)所发展出来的。

这套服务会同时使用诈欺与合法交易的历史资料,对其执行机器学习模型的建构、训练与部署,能为用户提供即时的诈骗风险预测。在试用初期,用户只需将一些资料上传到S3,像是与交易相关的电子邮件位址、IP位址,也可自行增添帐单地址、电话号码,接着执行自定的机器学习模型训练。

如果用户所要预测的诈骗顾客类型,是关于新帐号或线上支付的诈骗行为,Fraud Detector可运用亚马逊数十年累积的诈骗风险侦测分析经验,执行资料的预先处理、演算法选择,以及模型训练。

CodeGuru 

Andy Jassy第二个揭露的人工智慧应用服务,是针对软体开发人员的程式码审视(code reviews),以及应用程式剖析(application profiling)需求,用户可运用AWS提供的机器学习技术来取得程式码自动化分析的机制,但这里所要提供的功能不只是帮忙突显既有程式码的撰写错误、品质不佳与效能执行问题,还要找出耗费最多IT资源的程式码片段。

对于云端服务的用户而言,这样的执行效率检视分析功能相当实用。提升软体品质、缩短开发时间,对于软体生命週期的管理,固然很重要,但在云端服务的环境当中,因为业者会根据使用规模大小,以及持续时间长短来计费,若特定程式码佔用过多资源与执行时间,就会对用户造成不必要的成本支出,因此对于这样缺乏经济效益的程式码,AWS认为,他们需要推出这样的服务来帮助用户省钱,而关于这类软体品质差、效率不彰的问题,所造成的影响不只是抽象的人力成本,还要考量到具体的云端服务费用,因此,他们特别以「最花钱的程式码(most expensive lines of code)」来形容。

开发人员要怎么使用CodeGuru来审视程式码?他们仍然照常将程式码提交到GitHub、CodeCommit等软体开发仓库服务,然后再将CodeGuru设为程式码审视人员之一即可,不需调整原本的作业流程或额外安装软体。随后CodeGuru会接收到程式码下拉的请求,并且运用系统预先训练好的模型,自动对用户程式码执行评估,而这些完成训练的机器学习模型,所根据的程式码资料主要有两大来源:亚马逊数十年来所审视的程式码,以及GitHub排名前十大的开放原始码软体专案。

处理过程中,CodeGuru会针对程式码的品质来分析程式码的异动,如果发现问题,会在程式码下拉请求当中,增添一段评论叙述,让开发者能够清楚看到该段程式码所在的行数位置、问题类型,以及系统推荐的修正方式(像是範例程式码与相关说明文件的连结)。

而在应用程式剖析的部份,CodeGuru会利用机器学习技术,找出最耗费云端服务资源的程式码。为了要达成监控的目的,用户须在他们开发的应用程式当中,安装小型、轻量的代理程式,让CodeGuru能够以5分钟为频率,定期观察应用程式执行时的状态,以及剖析程式码的组态。而这样的观测会记录CPU利用率与存取延迟,以及直接对应的程式码位置,最后会产生图表,协助用户找到那些导致效能瓶颈的程式码片段。

目前有哪些企业採用CodeGuru?AWS表示,亚马逊内部团队正在使用CodeGuru,他们剖析的应用程式数量已经超过8万支;而在2017年到2018年之间,这套服务提供给亚马逊的内部版本,也协助隶属于该公司消费业务的Amazon Prime Day团队,大幅提升应用程式的执行效率──CPU利用率增加了3.25倍,在Amazon会员狂欢购物节期间,他们需管理的执行个体数量也随之减少,整体成本降低近4成。

Connect Lens

第三个AWS今年主推的人工智慧应用服务,是针对AWS客户联络中心云端服务Amazon Connect,所提供的分析服务Contact Lens,当中运用了机器学习的技术,让用户能够从与顾客的对话里面,理解他们的意见、认知的趋势,以及接受的价值,藉此改善顾客体验及辨别顾客意见回馈。目前AWS公布多家先期採用这项顾客资料分析服务的企业,包括:财务软体公司Intuit、金融投资财务管理公司John Hancock、媒体集团News Corp、个人财富与利益解决方案厂商Accolade,以及行动电信与能源供应商amaysim。

基本上,单就Amazon Connect而言,它採用的技术,与目前支撑亚马逊顾客服务的技术是相同的,号称能以更低的成本让用户经营他们的客户联络中心,而且能支援数千个值机员的使用。若这项服务同时搭配Contact Lens使用,AWS表示,客户服务主管可以透过Amazon Connect网页主控台介面,毋需具备程式撰写与机器学习等技术专业,即可进行多种功能的操作。例如,从顾客对话里面,发现新兴的主题与趋势,并能够对客户来电与对话文字记录,快速实施全文检索,以便找出解决顾客的疑难杂症,同时,还能提供来电与文字对话的分析,进而改善客服人员的效能。

若在电话进线期间发生问题,Contact Lens也会将相关警示发给主管,让他们在顾客体验开始变差的初期,就可以介入。

除了高度整合Amazon Connect,Contact Lens的诠释资料,像是文字誊本、意见、分类标籤,都是依照妥善定义的资料纲要来储存,而且会放置在用户的S3资料桶当中。企业可以轻易地汇出这些资讯,并且运用Quicksight、Tableau这类图表分析工具,将其产生更进一步的解析,以及结合其他来源的资料。

Kendra

在今年re:Invent大会最后介绍的人工智慧应用服务,是提供企业搜寻功能的Amazon Kendra,里面运用了自然语言处理,以及其他机器学习技巧,能够统合企业内部的多个资料孤岛(data silos),并且持续提供高品质的通用查询结果,AWS认为,相较于目前透过关键字查询而得到的随机连结列表,这项新的服务足以取而代之,提供更好的选择。

有了Kendra,企业的员工若要进行内部资料搜寻,可以运用自然语言的表达方式来进行查询,例如,他们可以键入问题内容叙述,而不只是单纯输入关键字,而系统也能够用对话的方式回答问题,并且提供相关的服务与网站连结。

同时,这样的服务,能够横跨多种应用系统、网站入口与维基共笔内容管理系统(Wiki)进行整合,用户只需在AWS管理主控台上进行简易操作,例如指出需要查询的文件储存库位置,Kendra就会汇集所有资料,以便建构集中的索引。

在文件安全控管的部份,这项服务会扫描文件当中的许可权限,可确保搜寻结果只会列出该名使用者所能存取的文件,以便符合企业既有的文件存取政策。

此外,Kendra会根据不同用户的差异,自动重新训练机器学习模型,以便改善查询精準度,而当中会运用到的分析资料来源,包括点选资料(click-through data)、使用者位置、意见回馈,若累积更多时间的使用与资料分析,可为搜寻提供更理想的回答效果。

涵盖底层与中高阶机器学习的应用需求,提供整合度更高的开发工具与AI服务

整体而言,今年AWS在机器学习领域所推出的云端服务,在应用的格局上,都有进一步突破。

例如,在SageMaker的机器学习开发平台服务,AWS提供了功能丰富的整合式开发工具,能够大幅简化机器学习模型的设计与测试流程。

而在人工智慧应用服务的部份,AWS今年增设了更多与亚马逊目前使用相同机器学习技术的解决方案,不只是2018年底宣布推出、2019年6月、8月陆续登场的个人化推荐与预测服务,他们也预告未来将发布与企业商务运作需求密切相关的服务,涵盖了顾客身分辨识、顾客往来分析、应用程式效率与成本节约,以及内部资料搜寻等层面,继续为云端服务业者的机器学习与人工智慧技术,提供更多专业领域的应用服务选择。

 

相关推荐

猜你喜欢

特别关注

AWS持续拓展机器学习应用版图推出涵盖多项功能的整合式开发环境以及高阶商用型AI服务