写点什么

中科院计算所陈云霁:未来我们有没有可能做一个通用的智能处理器?

  • 2019-09-20
  • 本文字数:3241 字

    阅读完需:约 11 分钟

中科院计算所陈云霁:未来我们有没有可能做一个通用的智能处理器?


9 月 18 日上午,智源研究院研究方向“智能体系架构与芯片”发布会在北大科技园正式召开。会上,中科院计算所智能处理器中心主任、智源首席科学家陈云霁老师就“智能体系架构与芯片”发布主题报告。


陈云霁老师在报告中指出:智能计算系统相关技术具有战略意义,但在目前依旧处于不成熟阶段;智能体系架构和芯片是探索智能计算系统的学科方向,现在正面临着整机、编程、芯片、方法四个关键研究问题。另外,在本次报告的最后,陈云霁老师还对“智能体系架构与芯片”研究方向提出了新设想——做通用型智能处理器,全面支持不同的智能算法。

智能计算系统具有重要意义

智能计算系统是智能的核心物质载体,如果智能时代到来,上层建筑的发展必然会是基于智能计算系统技术的成熟。陈云霁老师称:中国现在正处于信息时代向智能时代“进化”的拐点,智能计算系统的研究具有战略性意义。


  1. 智能计算系统是智能产业发展的源动力


在工业时代,电力是所有工作的核心。同样,进入到智能时代,智能计算系统会像工业时代的电力一样,作为智能业务的基石,推动整个产业的发展。不管智慧云、智慧城市、智能机器人、智能驾驶、智能金融、智能医疗、智能教育等等,背后需要智能计算系统提供的算力。


  1. 智能计算系统是基础研究发展的源动力


在很多传统的科学方向,不管是数学、物理、天文、生物等等,都开始在大量的运用人工智能技术,所以有一种看法:科学研究正在进行一种新的智能革命。在过去,科学研究主要有三个手段,逻辑推理、实验、模拟,而智能则可能成为第四个科学研究的手段。基础科学研究的背后需要智能计算系统提供算力作为支撑。


2019 年 6 月份普林斯顿大学团队用深度神经网络的方法,对整个宇宙的演进进行模拟,在国际上产生了非常大的反响。


  1. 智能计算系统是智能科学发展的源动力


对于未来构建的智能计算系统,它的算力越大,某种意义上对智能本质的理解就会越加得深入。


陈云霁老师说道:“我记得我们所长问过我一个问题,未来如果有一天我们拥有无限计算能力的时候,人工智能应该往哪个方向发展?“


通用人工智能或许可以被称作是 AI 技术的“珠穆朗玛峰”,当二三十年后探索通用人工智能时,强大的计算能力必不可少,所以不管从产业、从研究,包括从智能本身,提供算力的智能计算系统都是源动力。

尚未成熟的事实

智能计算系统虽然非常重要,但是就目前而言,它的技术还没有完全成熟,这里面有诸多的问题,比如智能计算系统的能效。


Green AI 是一个新观点,它要求智能向绿色的方向发展,至少不耗废太多的电。AlphGo,一盘棋需要好几千度的电,这样看来,即使它赢了棋,在能耗方面依旧是短板。有人预测,到 2025 年人工智能的耗电量将占全世界耗电量的 10%。如果人工智能的研究不考虑能耗问题,“智能改变生活”或许会沦为空谈。

四个关键研究问题

除了明确智能计算智能系统的重要性,陈云霁老师还表示:智源将从方法、芯片、编程和系统四个层次,研究高效的智能计算体系结构,并探索多种类型的芯片实现。研究内容包括开源智能芯片设计方法、类脑智能芯片设计、机器学习芯片设计、可重构智能芯片设计、智能计算编程编译方法、智能控制系统设计以及智能超算系统构建。


整机:智能云端与终端

云、终端的问题与挑战:


  • 张量运算具有重要应用,往往以稀疏张量问题形式存在。

  • 现有机器学习平台在稀疏张量的运算方面效率很低。

  • 开发高性能稀疏张量算子库需要高昂开发成本。

  • 控制功能在智能终端中无处不在。

  • 输入参数固定,控制任务单一。

  • 智能终端的核心是“小脑”。


解决技术思路:


  • 面向大规模图计算平台,实现高性能稀疏张量运算:

  • 稀疏张量及运算的编程抽象和领域语言。

  • 面向 GPU 单卡的代码生成与性能优化。

  • 面向多 GPU 卡的代码生成与性能优化。

  • 内核融合方法:

  • 融合一个计算图中的节点所对应的内核函数。

  • 通过一次函数调用完成所有计算。

  • 降低平台调度和内核启动开销。

编程:智能计算编程编译

问题与挑战:


  • 现有深度学习模型的编译过程是与体系结构无关的图变换和优化。

  • 现有类脑计算的网络建模/编译等工具链软件普遍存在功能需求与实现方式紧耦合,缺乏自动化建模支持手段等瓶颈问题,制约了开发效率的提升。

  • 近年来出现的深度学习框架与类脑神经网络集成的研究工作尚处在初步阶段,没有针对网络特点进行多层次优化。

芯片:最适合智能处理的芯片架构

最适合智能处理的芯片架构应该是什么样子?目前的智能处理芯片大致可分为以下四种:


  1. 类脑智能芯片


类脑芯片不采用经典的冯·诺依曼架构, 而是基于神经形态架构设计,以 IBM Truenorth 为代表。 IBM 研究人员将存储单元作为突触、计算单元作为神经元、传输单元作为轴突搭建了神经芯片的原型。由于神经突触要求权重可变且要有记忆功能, IBM 采用与 CMOS 工艺兼容的相变非挥发存储器(PCM)的技术,实验性地实现了新型突触,加快了商业化进程。


  1. 机器学习芯片


机器学习芯片基于机器学习算法,通常可分为 ASIC、GPU、FPGA 等不同的技术方向。像寒武纪的 MLU 系列、华为海思的昇腾系列、英伟达的 GPU 等都是典型的机器学习芯片。但是有一点需要说明的是,这种机器学习芯片大多数为同构的深度学习处理器,而且一款智能处理器只对应一类智能算法。


  1. 可重构智能芯片


可重构芯片具备软件、硬件双编程的特性,硬件架构和功能随软件变化而实时动态变化,因而又被称为软件定义芯片。可重构芯片的出现打通了“应用定义软件、软件定义芯片”进而实现“应用定义芯片”这一人们长期追求的通道,而广泛的适应性也使其成为替代专用集成电路、可编程器件和经典处理器的有力竞争者。


注:可重构智能芯片不是 FPGA。两者最大的区别在于,可重构智能芯片具有软件硬件都可以编程、混合粒度、芯片的硬件功能随软件的变化而变化等特性。


  1. 时间序列神经网络芯片


世界上大量的信息同时具有时间和空间特性,时间顺序是数据样本中重要的信息。循环神经网络 RNN 和长短期记忆神经网络 LSTM 都具有时间信息综合能力。而时间序列神经网络芯片则主要是基于这两种算法模型而设计的 AI 芯片。

方法:科学的智能芯片设计方法

智能时代,新的计算模式带来了面向新兴计算模式和新兴子领域的专用智能芯片微架构的敏捷设计需求。开源芯片和敏捷设计成为国际竞争的重点,美国 DARPA 的电子复兴计划在积极资助开源硬件和敏捷开发相关的研究。


智源将持续关注智能设计、敏捷开发、设计重用的 IDEA/CRAFT/CHIPS 项目、以及关注开源硬件、软件定义硬件、定制系统的 POSH/SDH/DSSOC 项目。


另外,计算和存储分离带来了“冯·诺伊曼瓶颈”——经典计算机体系结构的基础科学问题,导致存储器速度远低于处理器。为形成科学的智能芯片设计方法,需要在集成开源 IP、开源 EDA 工具链、FPGA 仿真验证、系统软件设配技术等方面持续深耕。

智源将要做什么?

一款智能处理器对应一类智能算法,是现在智能芯片产业的现状,但面对复杂的应用环境,单一的智能处理器显然是不足够的。在本次发布会上,陈云霁老师提出了智源关于智能芯片的新设想:未来我们有没有可能做一个通用的智能处理器?


与现在大多数同构的深度学习处理器不同,通用智能处理器旨在集成多个异构智能处理单元,分别处理不同的任务。就像人的大脑一样,学习、感知、记忆、抽象、联想等都能去做,而且高效的完成各种任务。另外通用智能处理器中的多个异构智能处理单元,通过异构并行,还可以组合完成更复杂的智能功能。


如神经网络、贝叶斯网络、逻辑求解器、知识图谱等主流人工智能模型,在某种条件下可以抽象成图或树,这就说明“图的处理”或许可以算作研究通用智能处理器的一个方向。陈云霁老师在本次报告的最后,还提出了“从算法共性范式出发,探索更广阔的人工智能算法共性,进而找到智能处理单元的统一抽象、交互和编程”的解决方案。


注:北京智源人工智能研究院(Beijing Academy of Artificial Intelligence,BAAI)是落实“北京智源行动计划”的重要举措,在科技部和北京市委市政府的指导和支持下,由北京市科委和海淀区政府推动,依托北京大学、清华大学、中国科学院、百度、小米、字节跳动、美团点评、旷视科技等北京人工智能领域优势单位共建的新型研发机构。


2019-09-20 15:072810
用户头像
张之栋 前InfoQ编辑

发布了 91 篇内容, 共 51.2 次阅读, 收获喜欢 159 次。

关注

评论

发布
暂无评论
发现更多内容

git | IDEA 中如何压缩提交(压缩commit后再push 图文演示)

YoungZY

开发者工具 IDEA 开发工具

如何设计数据中台

数据社

大数据 数据中台 数据仓库

地铁上看书的老外引发的思考

小天同学

写作 读书 个人感想 日常思考

做好领路人——写给技术新人的导师建议

南方

管理 新人

Python deepcopy一个优化

么么哒

Python

自定义构造python白名单__builtins__

么么哒

Python

重学 Java 设计模式:实战原型模式

小傅哥

Java 设计模式 小傅哥 复杂代码优化 重构

一款开源且具有交互视图界面的实时 Web 日志分析工具!

JackTian

开源 GoAccess 实时 Web 日志分析工具 交互式查看器

只用CSS实现响应式Full-Width img 2种方法

寇云

CSS css3

如何通过样本数据推断其分布

张利东

Python

团队与领导力健康检查 | 体检表

Bob Jiang

团队建设

python实现·十大排序算法之基数排序(Radix Sort)

南风以南

Python 排序算法 基数排序

为什么第三方联调应该先行?

大伟

为什么要学习 Markdown?究竟有什么用?

JackTian

markdown markdown语法 markdown编辑器

写代码没几天,遇到一堆报错,我该怎么办

刘早起😶

Python 程序员 程序人生

Server Queue 提高 QPS

风含叶

Python kafka 后端 队列

机器学习项目是如何开发和部署的?

陆道峰

人工智能 学习

偏头疼告诉我的,我想告诉每一个人

zkback

纯CSS“返回顶部”特效

寇云

CSS css3

互联网省份数据大揭秘,看看哪些地方是互联网的戈壁滩?

非著名程序员

程序员 互联网 IT

“新基建”方兴未艾,Smartbi Mining如何为产业数字化转型赋能?

infoq小陈

关于软件测试的三点思考

卓然

软件测试 测试 测试的价值 联现技术咖

前端工程化之创建项目

春生

大前端 全栈工程师

最香远程开发解决方案!手把手教你配置VS Code远程开发工具,工作效率提升N倍

程序员柠檬

Linux 后台开发 vscode 后端

券商也“网红”,证券行业IT服务运维发展按下“快进键”

博睿数据

运维 APM 证券 券商 行情

原创 | 使用JUnit、AssertJ和Mockito编写单元测试和实践TDD (十一)JUnit概述

编程道与术

Java 编程 软件测试 TDD 单元测试

写给产品经理的信(5):谈谈项目管理(青铜-王者)

punkboy

产品 极客时间,项目管理 项目管理 产品经理 项目

GitHub 上十个好用的软件

彭宏豪95

GitHub 效率 工具

这场大数据+AI Meetup,一次性安排了大数据当下热门话题

Apache Flink

大数据 flink 流计算 实时计算

自定义列表样式

寇云

CSS css3

HTML中实现合并单元格

JDoe

html

中科院计算所陈云霁:未来我们有没有可能做一个通用的智能处理器?_AI&大模型_张之栋_InfoQ精选文章