强化学习
强化学习是一种通过实验和错误来学习的方法,它受人类学习新技能的过程启发。在典型的强化学习案例中,代理者通过观察当前所处的状态,进而采取行动使得长期奖励的结果最大化。每执行一次动作,代理者都会收到来自环境的反馈信息,因此它能判断这次动作带来的效果是积极的还是消极的。在这个过程中,代理者需要平衡根据经验寻找最佳策略和探索新策略两方面,以期实现最终的目标。
Google的DeepMind团队在Atari游戏和围棋对抗中都运用了强化学习的技术。在真实场景中,强化学习有被用来提高Google数据中心的能源利用率。强化学习技术为这套冷却系统节省了约40%的能耗。强化学习有一个非常重要的优势,它的代理者能以低廉的代价模拟生成大量的训练数据。相比有监督的深度学习任务,这个优势非常明显,节省了一大笔人工标注数据的费用。
应用:包括城市道路的自动驾驶;三维环境的导航;多个代理者在同样的环境中交互和学习等
主要研究人员: Pieter Abbeel (OpenAI), David Silver, Nando de Freitas, Raia Hadsell (Google DeepMind), Carl Rasmussen (Cambridge), Rich Sutton (Alberta), John Shawe-Taylor (UCL) 等
技术公司代表: Google DeepMind, Prowler.io, Osaro, MicroPSI, Maluuba/Microsoft, NVIDIA, Mobileye等
生成模型
不同于用来完成分类和回归任务的判别模型,生成模型从训练样本中学到一个概率分布。通过从高维的分布中采样,生成模型输出与训练样本类似的新样本。这也意味着,若生成模型的训练数据是脸部的图像集,那么训练后得到的模型也能输出类似于脸的合成图片。细节内容可以参考Ian Goodfellow的文章。他提出的生成对抗模型(GAN)的结构当下在学术界非常的火热,因为它给无监督学习提供了一种新思路。GAN结构用到了两个神经网络:一个是生成器,它负责将随机输入的噪声数据合成为新的内容(比如合成图片),另一个是判别器,负责学习真实的图片并判断生成器生成的内容是否以假乱真。对抗训练可以被认为是一类游戏,生成器必须反复学习用随机噪音数据合成有意义的内容,直到判别器无法区分合成内容的真伪。这套框架正在被扩展应用到许多数据模式和任务中。
应用:仿真时间序列的特征(例如,在强化学习中规划任务);超分辨率图像;从二维图像复原三维结构;小规模标注数据集的泛化;预测视频的下一帧;生成自然语言的对话内容;艺术风格迁移;语音和音乐的合成
技术公司代表: Twitter Cortex, Adobe, Apple, Prisma, Jukedeck, Creative.ai, Gluru, Mapillary, Unbabel
主要研究人员: Ian Goodfellow (OpenAI), Yann LeCun 和 Soumith Chintala (Facebook 人工智能研究院), Shakir Mohamed 和 Aäron van den Oord (Google DeepMind)等等
记忆网络
为了让人工智能系统像人类一样能够适应各式各样的环境,它们必须持续不断地掌握新技能,并且记住如何在未来的场景中应用这些技能。传统的神经网络很难掌握一系列的学习任务。这项缺点被科学家们称作是灾难性遗忘。其中的难点在于当一个神经网络针对A任务完成训练之后,若是再训练它解决B任务,则网络模型的权重值不再适用于任务A。
目前,有一些网络结构能够让模型具备不同程度的记忆能力。其中包括长短期记忆网络(一种递归神经网络)可以处理和预测时间序列;DeepMind团队的微神经计算机,它结合了神经网络和记忆系统,以便于从复杂的数据结构中学习;渐进式神经网络,它学习各个独立模型之间的侧向关联,从这些已有的网络模型中提取有用的特征,用来完成新的任务。
应用:训练能够适应新环境的代理者;机器人手臂控制任务;自动驾驶车辆;时间序列预测(如金融市场、视频预测);理解自然语言和预测下文。
技术公司代表: Google DeepMind, NNaisense, SwiftKey/Microsoft Research.
主要研究人员: Alex Graves, Raia Hadsell, Koray Kavukcuoglu (Google DeepMind), Jürgen Schmidhuber (IDSAI), Geoffrey Hinton (Google Brain/Toronto)
微数据学习微模型
一直以来深度学习模型都是需要堆积大量的训练数据才能达到最佳的效果。比如,某只参加ImageNet挑战赛的团队使用了120万张分布于1000个类别的人工标注图像训练模型。离开大规模的训练数据,深度学习模型就不会收敛到最优值,也无法在语音识别、机器翻译等复杂的任务上取得好效果。数据量需求的增长往往发生在用单个神经网络模型处理端到端的情况下,比如输入原始的语音片段,要求输出转换后的文字内容。这个过程与多个网络协同工作各处理一步中间结果不同(比如,原始语音输入→音素→词→文本输出)。如果我们想用人工智能系统解决训练数据稀缺的任务时,希望模型训练用到的样本越少越好。当训练数据集较小时,过拟合、异常值干扰、训练集和测试集分布不一致等问题都会接踵而至。另一种方法是将在其它任务上训练好的模型迁移到新的任务中,这种方法被称为是迁移学习。
一个相关的问题是用更少的模型参数建立更小的深学习架构,而模型的效果却保持最佳。这种技术的优势在于更高效的分布式训练过程,因为训练过程中需要传输的参数减少了,并且能够方便地将模型部署在内存大小受限制的嵌入式硬件上。
应用:训练浅层模型来模拟在大规模的已标注训练数据集上训练得到的深度网络模型;构建效果相当但参数更少的模型结构(如SqueezeNet);机器翻译
技术公司代表: Geometric Intelligence/Uber, DeepScale.ai, Microsoft Research, Curious AI Company, Google, Bloomsbury AI
主要研究人员: Zoubin Ghahramani (Cambridge), Yoshua Bengio (Montreal), Josh Tenenbaum (MIT), Brendan Lake (NYU), Oriol Vinyals (Google DeepMind), Sebastian Riedel (UCL)
学习/推理硬件
促进人工智能发展的催化剂之一就是图形处理器(GPU)的升级,不同于CPU的顺序执行模式,GPU支持大规模的并行架构,可以同时处理多个任务。鉴于神经网络必须用大规模(且高维度)数据集训练,GPU的效率远高于CPU。这就是为什么自从2012年第一个GPU训练的神经网络模型——AlexNet公布之后,GPU已经成为名副其实的淘金铁锹。NVIDIA在2017年继续领跑行业,领先于Intel、Qualcomm、AMD和后起之秀Google。
然而,GPU并非专为模型训练或预测而设计,它原本是用于视频游戏的图像渲染。GPU具有高精度计算的能力,却遭遇内存带宽和数据吞吐量的问题。这为Google之类的大公司和许多小型创业公司开辟了新领域,它们为高维机器学习任务设计和制造处理芯片。芯片设计的改进点包括更大的内存带宽,图计算代替了向量计算(GPU)和矢量计算(CPU),更高的计算密度,更低的能源消耗。这些改进令人感到兴奋,因为最终又反哺到使用者的身上:更快和更有效的模型训练→更好的用户体验→用户更多的使用产品→收集更大的数据集→通过优化模型提高产品的性能。因此,那些训练和部署模型更快的系统占据显著的优势。
应用:模型的快速训练;低能耗预测运算;持续性监听物联网设备;云服务架构;自动驾驶车辆;机器人
技术公司代表: Graphcore, Cerebras, Isocline Engineering, Google (TPU), NVIDIA (DGX-1), Nervana Systems (Intel), Movidius (Intel), Scortex
仿真环境
正如之前提到,为人工智能系统准备训练数据很具有挑战性。而且,若要将人工智能系统应用到实际生活中,它必须具有适用性。因此,开发数字环境来模拟真实的物理世界和行为将为我们提供测试人工智能系统适应性的机会。这些环境给人工智能系统呈现原始像素,然后根据设定的目标而采取某些行动。在这些模拟环境中的训练可以帮助我们了解人工智能系统的学习原理,如何改进系统,也为我们提供了可以应用于真实环境的模型。
应用:模拟驾驶;工业设计;游戏开发;智慧城市
技术公司代表: Improbable, Unity 3D, Microsoft (Minecraft), Google DeepMind/Blizzard, OpenAI, Comma.ai, Unreal Engine, Amazon Lumberyard
主要研究人员: Andrea Vedaldi (Oxford)
原文: 6 areas of artificial intelligence to watch closely
作者: Nathan Benaich
译者: KK4SBB
责编:何永灿
登录后发表你的伟大言论!
立即登录 注册