机器之心报道
机器之心编辑部
摩尔定律减速的当下,如何开发更快速的计算机来满足 AI 发展的需求?近几年的深度学习基础研究有何进展?下一代 Kaldi 是什么样子,什么时候能出原型?在 2020 WAIC· 开发者日上,图灵奖得主 David Patterson 和 Joseph Sifakis、悉尼大学教授陶大程、Kaldi 之父 Daniel Povey 等嘉宾对这些问题一一解答。
WAIC 世界人工智能大会云端峰会已于近日在上海落幕。在机器之心承办的 2020 WAIC· 开发者日上,图灵奖得主 David Patterson 和 Joseph Sifakis、明略科技首席科学家吴信东、悉尼大学教授陶大程、中国建设银行总行金融科技部总工程师胡宪忠、百度集团副总裁吴甜、Kaldi 之父 Daniel Povey、多伦多大学助理教授 David Duvenaud,以及 Julia 语言创始人 Viral Shah 做了精彩演讲。
图灵奖得主 David Patterson:用体系结构创新加速 AI 发展
人工智能的发展需要大量数据和速度更快的机器。但是在摩尔定律减速的当下,如何构建更快的机器呢?
2017 年图灵奖得主、加州大学伯克利分校教授、计算机体系结构宗师 David Patterson 给出了他的答案:针对 AI 和 深度学习量身定制硬件,针对云和边缘进行计算机架构创新。
云端芯片
David Patterson 在演讲中介绍了谷歌为云端开发的 TPU 系列芯片,以及当前 v3 版本的卓越性能。
那么,这些芯片构建的超级计算机的性能如何呢?与传统超算相比,TPU v3 的性能 / Watt 是 TOP500 超算排行榜中第四名「天河」的 50 倍,是 Green500 超算排行榜第一名 SaturnV 的 10 倍(注:David Patterson 此处引用的是 2019 年的 TOP500、Green500 数据)。
边缘计算架构创新
以适用于边缘计算设备的阿里平头哥玄铁 910 芯片和初创公司 OURS 开发的 Pygmy 芯片为例,David Patterson 介绍了 RISC-V 架构在边缘计算芯片中的作用。
RISC-V 是一个基于精简指令集(RISC)原则的开源指令集架构(ISA)。RISC-V 指令集可开放地用于任何目的,允许任何人设计、制造和销售 RISC-V 芯片和软件,且适合现代计算设备。RISC-V 的开源属性方便相关研究人员在指令集方面进行创新,实现开放式芯片。
此外,Patterson 还介绍了 RISC-V 社区的发展,包括 2019 年由伯克利和清华联合建设的 RIOS 实验室。
Patterson 表示:RIOS 在西班牙语里是「河流」的意思,河流从不同的土地收集水,并借助水流的力量改变流经之处的地貌。RIOS 实验室将广揽英才,发展出一种强大的力量,进而改善信息技术格局。
图灵奖获得者 Joseph Sifakis:自治系统是迈向通用 AI 的第一步
随着物联网(IoT)的发展,人们可以通过网络基础设施远程感知或控制物体,并将物理世界更直接地集成到计算机系统中,进而实现效率和可预测性的提升。在这种新形势下,IoT 的发展面临着人类和工业互联网的挑战,其中的关键即是自动化问题。但人们真的能够信任自治系统吗?
在 WAIC 开发者日主论坛上,Verimag 实验室创始人、2007 年图灵奖得主 Joseph Sifakis 教授带来了「是否可以信任自治系统?边界和风险又有哪些?」的主题演讲。
Sifakis 首先讲解了新一代自治系统的概念以及主要特征。他表示,新一代自治系统通过智能体逐步代替人工操作员来满足组织自动化需求,并具有以下三个特征:可行性、与人类的共生自治,以及压倒性的复杂性。
Sifakis 称,「我们现在正处于一个转折点,必须转向复杂的分散式自治系统,并且不应把传统系统工程与 AI 支持的系统对立,而要结合两者。」
自治的概念
Sifakis 以恒温器、自动轻轨列车、无人驾驶汽车以及象棋和足球机器人为例,详细阐释了自治的概念。他表示:「每个自治系统包含一些在环境中充当控制器且追求个体目标的智能体,所以集群行为能够满足系统的全局目标。」
自治系统的可信赖问题
这部分涉及自治领域的前沿概念和知识的真实性两方面内容。
Sifakis 首先解释了系统可信赖性和任务关键性之间的关系,他表示在判断是否信任自治系统时,应该看到其中的过渡,即给定的任务由人工执行,其他由机器执行。关键在于人类与机器如何分责和交流。
下图为 Sifakis 列举的自治等级(Autonomy Level):
接着 Sifakis 谈到了知识的真实性。他指出,每个人都了解什么是知识,大脑结合快速和缓慢两种思维系统来产生知识。同时提出以下类比:神经网络生成知识类似于快速思维,常规计算机生成知识类似于缓慢思维,通过有意识和努力的思考产生。
那么知识如何分类呢?Sifakis 将知识分为了事实和推论、隐含的经验知识、科学和技术知识、非经验知识(如数学和计算机知识)和元知识(知识的知识)。但随着机器学习和数据分析的引入,知识的分类相应地发生了变化,具体分类如下图所示:
Sifakis 对近年来人们对自动驾驶汽车的过度热情进行了反思,同时他认为未来对使用自治系统的风险评估也至关重要。
最后,Sifakis 表示自治系统是迈向通用 AI 的第一步,其角色也将取决于人类对它们的信任程度。
明略科技吴信东:如何自动构建知识图谱?
从 Google 搜索,到聊天机器人、大数据风控、证券投资,这些应用无一不跟知识图谱息息相关。知识图谱在技术领域的热度也在逐渐上升。在今年的 WAIC 开发者日上,明略科技首席科学家、明略科学院院长吴信东分享了「自动构建知识图谱」的主题演讲。
吴信东首先介绍了知识图谱与数据图谱之间的关系,表示现有 99% 的知识图谱实际上是「缺少知识」的数据图谱,并简要概述了知识图谱的定义及发展历程。
四种知识图谱构建方法
如何构建知识图谱呢?吴信东介绍了四种方法:逻辑建模、隐含空间分析、人机交互和本体模型支撑。
关于逻辑建模方法,他主要讲述了两个概念,即逻辑 概率作为可能世界的概率度量和基于逻辑变量或逻辑规则模板的推理模型。
隐含空间分析主要涵盖了距离、隐变量、张量神经、矩阵分解和翻译这五种模型。
关于人机交互方法,吴信东简要介绍了最早采用该方法构建知识图谱的代表性工作 SIKT、面向对象的交互知识构建系统 IAKO 和 HAO 智能。
在本体模型支撑方法中,吴信东详细介绍了人工构建本体、半自动构建本体和自动构建三种方式。自动构建又分为基于语言规则的方法和基于统计分析的机器学习方法。
图谱自动构建要素 应用场景
那么,如何自动构建知识图谱呢?吴信东首先提供了总体设计框架,分为数据自动获取、三元组自动抽取以及自动纠错和自主学习三步。其中又涉及「领域知识库」和「强化学习 人机交互」这两个构建要素。
至于知识图谱的应用场景,吴信东介绍了三种:网络行为动态分析、智能 Q&A 和智能推荐。
HAO 图谱系统
在演讲最后,吴信东向大家展示了明略科学院开发的 HAO 图谱系统,以及从数据图谱到 HAO 图谱的演化。
在应用示例中,吴信东具体分析了 HAO 图谱在舆情分析、个性化广告文案生成和导购赋能中的应用。此外,他还讲解了图谱构建用到的三项关键技术:句子级信息抽取、篇章级事件抽取,以及静态 / 动态的图谱结构表示。
吴信东表示图谱构建面临信息丢失、信息冗余、信息更新迭代这三大挑战,他认为必须克服这些问题才能完成优秀的图谱构建工作。
悉尼大学教授陶大程:深度学习基础理论探索
为什么过度参数化的深度学习模型不会出现过拟合问题?更深的神经网络总是有更好的性能吗?神经网络的损失面是什么样的?非线性神经网络的损失平面与线性神经网络的损失平面有什么不同?
在本次开发者日主论坛上,悉尼大学教授、优必选人工智能首席科学家陶大程为我们介绍了他们在这些深度学习基础研究问题上取得的进展。
2012 年,AlexNet 的成功触发了当前这波深度学习研究高潮。此后,尽管已有很多实证结果表明网络越深效果越好,但采用深度模型的理论原因仍旧模糊不清。
为了填补这一空白,2018 年,陶大程等研究者对这些问题进行了探索。通过使用强大的数据处理不平等信息理论(data processing inequality information theory),他们证明了:随着信息损失层(如卷积池化层)的增多,预期的泛化误差将以指数速度降至零。此外,网络越深越好的实证观察是基于小训练误差得到的。
具体来说,他们使用了马尔可夫模型来描述深度网络,而且输入和输出的互信息在其通过网络层时不会增加。这说明深度网络中的分层结构对滤除对分类无用的冗余信息而言至关重要。网络中每一层的特征映射很可能是不可逆的,这会因数据处理不平等而导致信息损失。其泛化误差可能会受限于输入训练数据和输出假设之间的互信息,这说明输入数据和输出假设之间的互信息更适合应用于度量模型复杂度。
因此,那些传统曲线是有效的。此外,这还有助于更好地理解数据增强有助于提升学习性能的原因。
除了神经网络「深度」这个问题之外,陶大程等研究者还在 2020 年探索了深度学习中的损失平面问题。
2018 年,Soudry 和 Hoffer 证明任意深度的带有分段线性函数(不包括线性函数)的神经网络的损失平面可划分为多个平滑且多线性的开放单元。尽管其边界不可微分,但 n 层神经网络的单元数量在 2^n 数量级上。
基于同一条件,陶大程等人表明,这样的神经网络具有无限多个伪局部极小值。也因此,人们并不一定就能复现其他人得到的结果,即使训练数据和网络都一样也是如此。带有两个分段线性激活函数的单隐藏层网络可有效用于凸损失的回归任务。
他们进一步表明:1)在每个单元内,所有局部极小值都彼此等价;2)如果损失函数是严格凸的,那么它们全都是一个单元内的局部极小值,并会连接成一个局部极小值谷并构成等价类,这意味着它们由一个连续路径彼此相连,并且具备同样的经验风险。
最后,对于严格凸的损失函数,可能在一个邻近局部极小值的等价类中存在一些平行的局部极小值,局部极小值的所有等价类会构成一个商空间。
这些结果有助于控制损失平面的几何结构。我们可以通过它们来改善优化算法,进而用更少的计算得到更稳健的解。此外,这项研究还提供了一个不同的视角,可帮助理解严重参数化的神经网络可以很好地泛化用于许多任务的原因。这类考虑了泛化的开发超出了当前大多数基于假设复杂度及其变体的理论框架的期望。
尽管目前的深度学习还存在很多问题,但陶大程表示,他对深度学习仍抱有很高的期待,这种期待包括但不限于稳健性、低成本、可解释性、对动态环境的适应能力、道德伦理和用户友好。
而要做到这些,陶大程认为,将人类知识与深度学习整合到一起是至关重要的。
建行总行金融科技部总工程师胡宪忠:AIaas 设计及应用
AI 时代,企业如何借助 AI 的力量从自身数据和业务中挖掘亮点,开发 AI 与机器学习解决方案?人工智能即服务(AIaas)应运而生。
中国建设银行总行金融科技部总工程师胡宪忠表示,将人工智能视角的企业级结构 6 层次设计集成到原有的企业架构中,才能实现建行的人工智能即服务(AIaaS)目标。而 AI 是企业级架构的重要组成部分。
而基于平台即服务 (PaaS) 三个 AI 框架的工程方法支持机器和深度学习,以服务组合和重用方式,快速释放 AI 应用。
人工智能即服务(AIaaS)结构
紧接着,胡宪忠介绍了 AIaaS 结构。其中,AI 功能组件分为 6 大类,分别是图像识别类、智能安全类、自然语言处理类、视频识别类、语音识别类和知识图谱类。这些 AI 功能组件旨在提升企业的智能化能力,提供服务目录供应用组件和应用调用。
相关组件及其服务实例列表如下:
应用现状
在讲述人工智能应用场景时,胡宪忠称业务领域场景已经涉及建行业务模型 6 个完整价值链,贯穿产品管理、营销支持、产品运营、业务支持、风险管理和报告与决策。
而随着建行的业务创新和风险控制加强,人工智能支持的业务场景也在不断地释放。
演讲最后,胡宪忠对建行人工智能应用的成效进行了总结,表示这符合 Gartner 研究,可以促进收入增长、降低运营成本以及提升客户体验。
他强调,AI 会成为未来改变企业与客户关系的重要技术。但科技的目标是提升员工的幸福感,而不是取代他们的工作。
百度集团副总裁吴甜:AI 大生产平台的实践与创新
对于每一个做 AI 的企业来说,技术的落地都是一个绕不开的话题。在今年的开发者日上,百度集团副总裁、深度学习技术及应用国家工程实验室副主任吴甜带来了百度在 AI 平台与产业结合过程中最新的实践进展以及思考与创新方案。
在疫情期间,百度在疫情防控、复工复产等方面提供了全方位的技术支持,包括短期内上线的疫情问答机器人、口罩人脸检测系统、AI 多人测温系统、肺炎筛查与病情预估 AI 系统等。
这些技术应用都是依托于百度 AI 大生产平台打造的。该平台实现了 AI 技术的标准化、自动化和模块化,使得开发者、企业无需从头去学习难度高 / 迭代快的前沿科技,避免重复造轮子。
而这个平台的基础底座就是百度的飞桨深度学习平台。飞桨为 AI 应用生产提供了核心框架、工具组件、服务平台等全方位的支撑。为满足企业需求开发的飞桨企业版可以提供更全面和强大的功能,更易用的可视化界面,预知更丰富的场景模型,提供更强化的安全权限管理。
吴甜还以垃圾分类为例介绍了飞桨在具体场景下的工作机制。
在过去一年屡次突破各项记录的持续学习与理解框架 ERNIE 也在本次开发者日亮相。
在 ERNIE 模型推出之后,百度快速地探索了「预训练 微调」的开发新范式,解决了 NLP 产业应用中场景分散的诸多难题。
此外,百度还在 ERNIE 模型的基础上推出了整个开发平台。
为了向开发者提供高效、好用的预训练 迁移学习机制,飞桨也持续开展了很多工作。与 2019 年 11 月相比,飞桨预训练模型库数量已经增长了 137%,模型下载量增长了 17%,Fine—Tune 任务数量增长了 124%。
吴甜表示,百度还基于飞桨平台推出了 PPDE(PaddlePaddle Developers Experts)计划,为不同层级的人才提供不同的权益,包括技术专家认证、黄埔绿色通道、全球顶级会议的交流机会等。
Kaldi 之父 Daniel Povey:在中国,打造新一代 Kaldi
如何让语音识别工具跟上时代潮流?Kaldi 之父、小米集团语音首席科学家 Daniel Povey 开始了他的探索。在离开约翰霍普金斯大学之后,Daniel Povey 选择来到中国,他表示要在中国打造新一代的「Kaldi」。
在 WAIC 开发者日上,Daniel 介绍了开发新一代 Kaldi 的思路、时间线和进度。
演讲围绕「可差分的有限状态接收器(FSA)」展开,Daniel 希望能够基于 PyTorch 甚至 TensorFlow 构建语义识别模型。
他提到,在人们建立语音识别系统时,此类系统通常是两种不同事物的混合体,一种类似 PyTorch 和 TensorFlow,另一种类似 OpenFst。而这二者之间的连接并不容易。
Daniel 的想法是:通过几行代码、PyTorch 或者扩展来实现 CTC 或者类似的算法,并结合词汇知识,以了解单词的发音。
那么,下一代 Kaldi 项目到底是什么样子呢?Daniel 在演讲中披露了一些细节。
K2 是下一代 Kaldi 的核心组件,用于处理序列和有限状态接收机(FSA)。Daniel 详细介绍了 K2 的结构、数据类型等细节。
如上图所示,K2 是一个 Python 库,可与 PyTorch 兼容,拥有两个后端,一个是 C ,另一个是用于 GPU 的 CUDA 后端。PyTorch 可以高效处理矩形张量,但是不适合处理不规则数组,而 K2 项目旨在利用多种工具处理不同类型的数据,提高速度和灵活性。
此外,Daniel 表示,下一代 Kaldi 将使用全新的模型,并介绍了可能的流程:
Daniel 表示,希望把处理序列和 FSA 的 K2 组件与其他工具结合起来,做成语音识别工具包,并能够基于 PyTorch 甚至 TensorFlow 构建语音识别工具。
多伦多大学助理教授 David Duvenaud:用 ODE 模型解决连续时间难题
离散时间和连续时间差别巨大。大部分深度学习时序模型(如循环神经网络)要求数据以规则的时间间隔记录,如每小时记录一次。然而许多现实数据,如病历、客户交互或金融交易,是以不规则时间间隔记录的。
那么,如何处理连续时间动态呢?
多伦多大学助理教授、向量学院的创始人之一 David Duvenaud 介绍了,利用微分方程模型来处理连续时间动态的近期进展。
微分方程的基本思想是把系统建模为具备某个状态 z,而建模这一系统的方式是构建某个函数 f,f 表示系统的情况及其在当前状态下随时间的变化率。
一旦我们获得了某个时间的状态,并且有了 f,我们就可以通过纳入状态随时间的变化来预测未来时间的情况。这种操作被称为求解初值问题,并且可使用数值求解器有效地完成,即便此时 f 比较复杂。
过去几年这方面的重大进展是人们开始使用神经网络来拟合 f,我们甚至可以完全基于数据学习 f,进而预测未来任意时间点的情况。
David Duvenaud 介绍了 ODE-RNN,以及另一种更复杂的处理时间序列数据方式——隐变量模型。
我们能否将隐变量模型扩展应用于连续时间呢?
David Duvenaud 介绍了最简单的一种隐变量模型——隐 ODE 模型。
下图展示了隐 ODE 模型与简单的正弦动态数据集的拟合效果:
隐 ODE 模型代码地址:https://github.com/YuliaRubanova/latent_ode
隐 ODE 模型能够很好地应用于多种情况,但它的动态是确定性的。
那么,如何为隐 ODE 模型添加随机性?
答案是将它们扩展成随机微分方程(SDE)。
最后,David Duvenaud 表示,在过去两年中他与别人合作开发了自动将隐 ODE 模型、SDE 模型与连续时间数据拟合的工具,但目前仍处于概念验证阶段。
Julia 创始人 Viral B. Shah :Julia,一门为 AI 打造的语言
作为机器学习社区的开发者,我们最熟悉的语言可能就是 Python 了。但最近两年,一门新的语言正在崛起,它就是 Julia。Julia 是一门灵活的动态语言,适合科学和数值计算,性能可与传统静态语言媲美。
在今年的 WAIC 开发者日上,Julia 联合创始人 Viral B. Shah 为我们介绍了这门语言过去一年在 AI 以及其他领域取得的所有进展。
很多人可能会问:我 Python 用得好好的,为什么还要考虑 Julia?对此,Shah 表示,「Python 是一种解释型语言,尽管它有一个令人惊叹的生态系统,但在性能方面仍有许多不足。」
Debian Project 的一项基准测试表明,Julia 的速度可以达到 Python 的 30 倍。尤其在面对大量数据时,Julia 可以使用多线程,实现快速的数据加载。随着社区的不断壮大,Julia 的生态也在不断丰富,目前已经拥有 3000 多个开源包。
在过去的一年,Julia 社区贡献了许多模型。在 CV 方面,他们贡献了图像识别和对象检测模型;在 NLP 方面,他们有用于翻译的 Transformer 模型;在 3D 图形方面,Julia 的 GeometricFlux 和 Flux3D 软件包要优于 Pytorch 和 TensorFlow 中的同类框架。
目前,全球有 1 万多家公司都在使用 Julia,包括谷歌、空客等国外科技公司和阿里巴巴、腾讯等中国科技公司。
Julia 服务的行业也非常丰富,包括保险、制药、气候等多个领域。其中,美国辉瑞公司使用 Julia 将其 Matlab 代码加速了 26 倍,并行化之后速度提升 115 倍;美国基因泰克公司构建了一个 Julia 程序包,处理基因数据的速度比以前的程序包 R 快 65,000 倍。
目前,很多世界名校都已开设 Julia 的相关课程,如斯坦福大学、麻省理工学院等。
Shah 还为大家推荐了一些 Julia 的学习教材:
以上这些都是主单元的主题演讲的精彩内容。WAIC开发者日还包括高峰对话、四场分论坛、百度公开课、开源开放 Demoday、黑客马拉松、WAIC 云帆奖等精彩环节。
经过一天的高强度知识洗礼,相信大家都回味无穷,请持续关注机器之心,更多 WAIC 开发者日精彩内容将陆续放出。
本文为机器之心报道,转载请联系授权。