当前位置: 首页 > 科技观察

云计算的局限性:为什么边缘机器学习是必要的

时间:2023-03-12 18:12:06 科技观察

机器学习具有很高的处理要求,其通信成本意味着人们最终将需要它在边缘(智能手机)工作。今天,我们正在进入一个由人工智能(AI)驱动的技术创新新时代,机器学习处于最前沿。即使在今天,机器学习仍然是任何设备体验的基本技术,为各种任务、功能和应用程序提供支持。从设备端安全(如面部解锁、面部识别和指纹识别),到智能手机摄像头和音频功能(让用户通过Socratic、Snapchat、FaceApp、Shazam等应用程序获得更智能、更有趣的体验),通常由消费者使用各种基于机器学习的功能提供。然而,对于创建大量数据的基于机器学习的任务,这些任务通常会被卸载到云端进行处理,然后再通过操作发送回设备。例如,Socratic和Shazam都在云端而不是在设备上使用机器学习处理。这就引出了一个问题:在设备上进行机器学习处理不是更容易和更快吗?能够在设备上或边缘执行基于机器学习的任务,而不是将其发送到云端进行处理,许多人将其描述为“机器学习进化的下一个阶段”。有许多重要的约束,功耗、成本、延迟、隐私等约束使得在云和设备之间来回传输机器学习数据是不切实际的。几年前,机器学习在边缘似乎是一个白日梦,而设备的技术创新使它们能够处理计算密集型任务。云计算的限制云中机器学习处理的所有限制都是相互关联的。首先,在云端处理机器学习任务所需的海量数据的能力和成本是巨大的,更不用说不断增长的带宽需求所产生的海量流量。早在2017年,就有人指出,如果每个人每天使用Android语音助手三分钟,谷歌将不得不将其拥有的数据中心数量增加一倍。而在2019年,谷歌可能已经解决了这一特殊挑战——事实上,在最近的一次会议上,谷歌表示它可以将500GB的语音辅助模型缩小到0.5GB,这样它就可以完全在移动设备上运行。然而,它确实说明云中的机器学习可以处理巨大的基础设施和经济需求。边缘机器学习可以通过减少对云计算服务的依赖和支持基于云的机器学习所需的基础设施来减轻这些负担。开发人员的经验或许可以最好地说明云中机器学习处理的巨大经济成本。在服务器上计算一秒钟,每台设备的成本约为0.00003美元。这显然是一个非常小的成本,但考虑到开发者的目标是尽可能广泛的受众,成本可能会开始迅速上升。例如,对于100万台设备,服务器上的一秒钟计算成本为28美元,即每分钟1680美元。对于针对1亿用户的极其成功的应用程序,开发人员每分钟将支付160万美元!最重要的是,将云计算用于基于机器学习的任务根本不可行。即使在很短的距离内,将数据发送到云端也需要消耗大量电力。在设备上,基于机器学习的处理需要的电量要少得多。在设备和云端之间来回发送数据会引入显着的滞后或延迟,这对于大多数基于机器学习的应用程序来说是无法容忍的,尤其是那些时间紧迫的应用程序。改善延迟开辟了可以通过基于机器学习的应用程序实现的新功能。例如,由于发送、处理和接收增强视频需要时间,如果机器学习处理在云端完成,SnapchatAR体验将无法实现。通过逐步查看流程,可以很好地说明云机器学习处理的延迟问题。在当前4G网络上以一种方式(从设备到云端)启动数据流提供了50毫秒的理论延迟,这大约是4个视频帧的延迟。那么,为了处理云端的机器学习数据,一个视频帧可能会延迟16ms。最后,从云端流回设备有50毫秒的延迟。因此,整个过程有大约10个视频帧的延迟,使其延迟远高于提供即时响应的设备端机器学习。5G技术确实有可能将此设备更改为边缘处理,因为其部署只有1毫秒的延迟,但5G技术的广泛采用仍需要一段时间。最后,云计算和设备之间的持续交互创造了一个更容易受到隐私威胁的场景。用户可以更轻松地在他们的设备上处理他们的个人数据,而不是将其发送到云端。如果为机器学习任务生成的数据传输数百英里到云端并返回到做出决策的设备,它很可能会受到影响。基本上,防止攻击用户隐私的最佳方法是确保敏感数据永远不会离开设备。开发人员希望在边缘进行机器学习开发人员的需求最适合在边缘进行机器学习处理。机器学习正在改变开发人员编写算法的方式。过去,特定用例需要手动编码,这在机器学习中耗时且有时容易出错,开发人员不再需要编写代码。相反,他们创建了一个模型并使用数据集对其进行了训练,这比手动编写代码更强大。机器学习多年来一直为开发人员所熟知,但它主要用于数据中心的高计算设备。直到最近,它才被用于移动设备,因为它们的计算效率更高,并且能够运行更复杂的机器学习模型。将最新的设备创新与开发人员的需求相结合,使机器学习成为首选。设备端机器学习处理通过实时处理和低延迟为开发人员提供即时结果,同时允许他们在没有网络连接的情况下执行机器学习任务。云计算机器学习处理有时可能是合适的尽管面临挑战,但数据处理的云计算模型意味着机器学习算法可以不断变化和升级。因此,任何与云计算交互的设备也可以改进它处理机器学习任务的方式。此外,还有一些计算密集型任务对时间不敏感。因此,云计算的延迟不是大问题。示例包括无人机的数据处理,为研究、工业、军事或医学成像(例如患者的放射学或X射线检查)提供详细的图像或视频馈送。虽然仍然很重要,但边缘机器学习不一定是所有基于机器学习的任务的“一刀切”解决方案。所有参与机器学习处理的团队——从开发人员到原始设备制造商——都需要确定设备上的哪些任务可以从边缘机器学习中受益。边缘机器学习是未来的需要利用各种基于机器学习的任务和应用程序的移动设备已被全球数十亿人使用。大多数时候,需要设备上的实时响应,而边缘机器学习将提供这一点。由于云计算的能力、成本、隐私和速度,用户和开发者不想依赖云计算技术。智能设备还处于早期阶段,但机器学习将是未来发展的最佳选择。