新書推薦:
《
万千教育学前·透视学前儿童的发展:解析幼儿教师常问的那些问题
》
售價:NT$
265.0
《
慈悲与玫瑰
》
售價:NT$
398.0
《
启蒙的辩证:哲学的片简(法兰克福学派哲学经典,批判理论重要文本)
》
售價:NT$
347.0
《
云中记
》
售價:NT$
347.0
《
大模型应用开发:RAG入门与实战
》
售價:NT$
407.0
《
不挨饿快速瘦的减脂餐
》
售價:NT$
305.0
《
形而上学与存在论之间:费希特知识学研究(守望者)(德国古典哲学研究译丛)
》
售價:NT$
504.0
《
卫宫家今天的饭9 附画集特装版(含漫画1本+画集1本+卫宫士郎购物清单2张+特制相卡1张)
》
售價:NT$
602.0
|
編輯推薦: |
《智能计算系统》由深度学习处理器芯片研究的开拓者陈云霁领衔,中科院计算所、软件所的专家学者倾心写就。智能领域系统能力培养大成之作!
领衔作者陈云霁带领的团队曾研制了国际上首个深度学习处理器芯片寒武纪1号,本书凝聚了作者团队多年的科研和教学成果,是前沿研究与技术实践结合,快速提升智能领域系统能力的教材和技术参考书。
|
內容簡介: |
本书通过一个贯穿始终的应用案例图像风格迁移,全面系统地介绍智能计算系统的软硬件技术栈,涵盖神经网络基础算法、深度学习编程框架、智能芯片体系结构、智能编程语言等。领衔作者陈云霁带领的团队曾研制了国际上首个深度学习处理器芯片寒武纪1号,本书凝聚了作者团队多年的科研和教学成果,是前沿研究与技术实践结合,快速提升智能领域系统能力的教材和技术参考书。
《智能计算系统》首先概述人工智能和智能计算系统(第1章);接下来介绍完成应用所必要的神经网络和深度学习算法知识(第2、3章);然后介绍支撑算法在智能芯片上运行的编程框架(第4、5章);再往下是智能芯片,即引导学生设计一款满足图像风格迁移应用需求的深度学习处理器(第6、7章);接下来介绍如何利用智能编程语言BCL提升开发智能应用的效率(第8章);*后以具体实验把所学知识点串联起来,打通知识结构的任督二脉(第9章)。
|
關於作者: |
陈云霁 中国科学院计算技术研究所研究员、博导、智能处理器研究中心主任,中国科学院大学岗位教授,教育部高等学校计算机类专业教学指导委员会计算机系统专委会委员。他带领其团队研制了国际上首个深度学习处理器芯片寒武纪1号。他的研究成果已经应用在近亿台智能手机和服务器中。他的学术论文多次获得计算机体系结构顶级国际会议最佳论文奖,受到上百个国际知名机构跟踪引用。因此,他被Science杂志刊文评价为深度学习处理器研究的先驱和引领者。
他曾获国家杰出青年科学基金、中国青年科技奖、全国创新争先奖、教育部青年长江学者、国家自然科学基金委优秀青年基金、国家万人计划青年拔尖人才,并被《MIT科技评论》评为全球35位杰出青年创新者(2015年度)。他还是北京智源人工智能研究院智能体系结构与芯片方向首席科学家。
李玲 中科院软件所研究员、博导,CCF高级会员。研究方向为智能计算及视频处理。在相关领域发表多篇CCF A类期刊和会议论文,获得了CCF A类会议MICRO14的最佳论文奖(这是50年来唯一一次美国以外的国家在该会议上获此奖)。作为负责人主持过多项国家自然科学基金项目、国家重点研发计划课题等。陈云霁 中国科学院计算技术研究所研究员、博导、智能处理器研究中心主任,中国科学院大学岗位教授,教育部高等学校计算机类专业教学指导委员会计算机系统专委会委员。他带领其团队研制了国际上首个深度学习处理器芯片寒武纪1号。他的研究成果已经应用在近亿台智能手机和服务器中。他的学术论文多次获得计算机体系结构顶级国际会议最佳论文奖,受到上百个国际知名机构跟踪引用。因此,他被Science杂志刊文评价为深度学习处理器研究的先驱和引领者。
他曾获国家杰出青年科学基金、中国青年科技奖、全国创新争先奖、教育部青年长江学者、国家自然科学基金委优秀青年基金、国家万人计划青年拔尖人才,并被《MIT科技评论》评为全球35位杰出青年创新者(2015年度)。他还是北京智源人工智能研究院智能体系结构与芯片方向首席科学家。
李玲中科院软件所研究员、博导,CCF高级会员。研究方向为智能计算及视频处理。在相关领域发表多篇CCF A类期刊和会议论文,获得了CCF A类会议MICRO14的最佳论文奖(这是50年来唯一一次美国以外的国家在该会议上获此奖)。作为负责人主持过多项国家自然科学基金项目、国家重点研发计划课题等。
李威中科院计算所副研究员。研究方向为高性能智能计算系统设计技术,先后参与了多项国家重点研发计划项目、国家科技重大专项项目、863项目、中科院国际合作项目等。作为核心成员参与了多款深度学习处理器的研发,发表或录用学术论文近30篇,申请专利近20项。
郭崎中科院计算所研究员。长期从事智能计算系统相关研究。在ISCA、MICRO、HPCA、IJCAI等国际会议及ACMIEEE汇刊上发表学术论文多篇。授权发明专利多项,曾入选国家知识产权局百件优秀中国专利。先后入选中国科协首届青年人才托举工程、中科院青年创新促进会、国家万人计划青年拔尖人才。
杜子东中科院计算所副研究员。长期从事人工智能和计算机体系结构交叉研究,他在深度学习处理器方向做出了多项有国际影响力的研究成果。他在中国计算机学会认定的顶级会议期刊(CCF A类)上发表了近20篇论文,曾获得ASPLOS14最佳论文奖(这是亚洲机构首次获计算机体系结构领域的顶级国际会议最佳论文奖),入选IEEE Micro杂志评选的国际计算机体系结构领域年度十佳论文。
|
目錄:
|
序言一
序言二
前 言第1章 概述1
1.1 人工智能1
1.1.1 什么是人工智能1
1.1.2 人工智能的发展历史1
1.1.3 人工智能的主要方法4
1.2 智能计算系统8
1.2.1 什么是智能计算系统8
1.2.2 为什么需要智能计算系统8
1.2.3 智能计算系统的发展8
1.3 驱动范例11
1.4 本章小结13
习题13
第2章 神经网络基础14
2.1 从机器学习到神经网络14
2.1.1 基本概念14
2.1.2 线性回归15
2.1.3 感知机17
2.1.4 两层神经网络多层感知机19
2.1.5 深度学习(深层神经网络)20
2.1.6 神经网络发展历程21
2.2 神经网络训练23
2.2.1 正向传播24
2.2.2 反向传播25
2.3 神经网络设计原则27
2.3.1 网络的拓扑结构27
2.3.2 激活函数27
2.3.3 损失函数30
2.4 过拟合与正则化32
2.4.1 过拟合33
2.4.2 正则化34
2.5 交叉验证37
2.6 本章小结39
习题39
第3章 深度学习41
3.1 适合图像处理的卷积神经网络41
3.1.1 卷积神经网络的组成42
3.1.2 卷积层43
3.1.3 池化层48
3.1.4 全连接层49
3.1.5 softmax层50
3.1.6 卷积神经网络总体结构50
3.2 基于卷积神经网络的图像分类算法52
3.2.1 AlexNet53
3.2.2 VGG56
3.2.3 Inception59
3.2.4 ResNet66
3.3 基于卷积神经网络的图像目标检测算法69
3.3.1 评价指标69
3.3.2 RCNN系列72
3.3.3 YOLO78
3.3.4 SSD81
3.3.5 小结83
3.4 序列模型:循环神经网络83
3.4.1 RNN84
3.4.2 LSTM88
3.4.3 GRU89
3.4.4 小结90
3.5 生成对抗网络91
3.5.1 模型组成91
3.5.2 GAN训练92
3.5.3 GAN结构94
3.6 驱动范例96
3.6.1 基于卷积神经网络的图像风格迁移算法96
3.6.2 实时图像风格迁移算法98
3.7 本章小结100
习题100
第4章 编程框架使用101
4.1 为什么需要编程框架101
4.2 编程框架概述102
4.2.1 通用编程框架概述102
4.2.2 TensorFlow概述102
4.3 TensorFlow编程模型及基本用法103
4.3.1 计算图104
4.3.2 操作105
4.3.3 张量106
4.3.4 会话110
4.3.5 变量114
4.3.6 占位符116
4.3.7 队列117
4.4 基于TensorFlow实现深度学习预测117
4.4.1 读取输入样本118
4.4.2 定义基本运算单元118
4.4.3 创建神经网络模型122
4.4.4 计算神经网络模型输出123
4.5 基于TensorFlow实现深度学习训练123
4.5.1 加载数据123
4.5.2 模型训练129
4.5.3 模型保存135
4.5.4 图像风格迁移训练的实现137
4.6 本章小结139
习题139
第5章 编程框架机理141
5.1 TensorFlow设计原则141
5.1.1 高性能141
5.1.2 易开发142
5.1.3 可移植142
5.2 TensorFlow计算图机制142
5.2.1 一切都是计算图143
5.2.2 计算图本地执行150
5.2.3 计算图分布式执行154
5.3 TensorFlow系统实现155
5.3.1 整体架构155
5.3.2 计算图执行模块156
5.3.3 设备抽象和管理161
5.3.4 网络和通信162
5.3.5 算子实现167
5.4 编程框架对比169
5.4.1 TensorFlow170
5.4.2 PyTorch171
5.4.3 MXNet171
5.4.4 Caffe172
5.5 本章小结172
习题172
第6章 深度学习处理器原理174
6.1 深度学习处理器概述174
6.1.1 深度学习处理器的意义174
6.1.2 深度学习处理器的发展历史175
6.1.3 设计思路177
6.2 目标算法分析178
6.2.1 计算特征178
6.2.2 访存特征181
6.3 深度学习处理器DLP结构186
6.3.1 指令集186
6.3.2 流水线190
6.3.3 运算部件190
6.3.4 访存部件193
6.3.5 算法到芯片的映射194
6.3.6 小结195
6.4 优化设计195
6.4.1 基于标量MAC的运算部件195
6.4.2 稀疏化198
6.4.3 低位宽199
6.5 性能评价201
6.5.1 性能指标201
6.5.2 测试基准程序202
6.5.3 影响性能的因素203
6.6 其他加速器203
6.6.1 GPU架构简述204
6.6.2 FPGA架构简述204
6.6.3 DLP与GPU、FPGA的对比205
6.7 本章小结206
习题206
第7章 深度学习处理器架构207
7.1 单核深度学习处理器207
7.1.1 总体架构208
7.1.2 控制模块209
7.1.3 运算模块212
7.1.4 存储单元215
7.1.5 小结215
7.2 多核深度学习处理器216
7.2.1 总体架构216
7.2.2 Cluster架构217
7.2.3 互联架构223
7.2.4 小结224
7.3 本章小结225
习题225
第8章 智能编程语言227
8.1 为什么需要智能编程语言227
8.1.1 语义鸿沟228
8.1.2 硬件鸿沟230
8.1.3 平台鸿沟232
8.1.4 小结233
8.2 智能计算系统抽象架构234
8.2.1 抽象硬件架构234
8.2.2 典型智能计算系统235
8.2.3 控制模型236
8.2.4 计算模型236
8.2.5 存储模型237
8.3 智能编程模型238
8.3.1 异构编程模型239
8.3.2 通用智能编程模型242
8.4 智能编程语言基础247
8.4.1 语法概述247
8.4.2 数据类型248
8.4.3 宏、常量与内置变量250
8.4.4 IO操作语句250
8.4.5 标量计算语句252
8.4.6 张量计算语句252
8.4.7 控制流语句252
8.4.8 串行程序示例253
8.4.9 并行程序示例254
8.5 智能应用编程接口255
8.5.1 Kernel函数接口255
8.5.2 运行时接口257
8.5.3 使用示例259
8.6 智能应用功能调试262
8.6.1 功能调试方法262
8.6.2 功能调试接口266
8.6.3 功能调试工具269
8.6.4 精度调试方法272
8.6.5 功能调试实践272
8.7 智能应用性能调优280
8.7.1 性能调优方法280
8.7.2 性能调优接口282
8.7.3 性能调优工具286
8.7.4 性能调优实践287
8.8 基于智能编程语言的系统开发294
8.8.1 高性能库算子开发294
8.8.2 编程框架算子开发300
8.8.3 系统开发与优化实践304
习题321
第9章 实验323
9.1 基础实验:图像风格迁移323
9.1.1 基于智能编程语言的算子实现323
9.1.2 图像风格迁移的实现326
9.1.3 风格迁移实验的操作步骤330
9.2 拓展实验:物体检测333
9.2.1 基于智能编程语言的算子实现333
9.2.2 物体检测的实现337
9.3 拓展练习337
附录A 计算机体系结构基础340
附录B 实验环境说明345
参考文献348
后记356
|
內容試閱:
|
序 言 一
未来20年或更长的时期内,人工智能将是科学技术和经济发展的重要方向,智能化技术有可能触发新一轮经济长波甚至第四次产业革命。世界各国都制定了发展人工智能技术和产业的长期规划,在这些规划中,适应智能化社会需求的人才培养都已被列为一项艰巨而紧迫的任务。
由于巨大的市场潜力和863等国家科技计划形成的长期科研积累,我国的人工智能应用和算法研究走在世界前列。但是,我国人工智能基础层、技术层和应用层的人才数量占比分别为3.3%、34.9%和61.8%,基础层人才比例严重偏低。这种现状是我国计算机领域长期不重视系统教育造成的。
我国近千所大学设立了计算机专业,近年来有上百所高校创办了人工智能专业。由于缺乏师资力量和合适的教材,目前一些学校的人工智能课程重点教授一些流行的机器学习算法和图像处理等应用,培养出来的学士、硕士和博士只会用算法调参数,并不真正理解人工智能应用到底是怎样运转起来的。对于人工智能算法究竟如何调用编程框架、编程框架如何与操作系统打交道、编程框架中的算子在芯片中如何运行,很多学生并没有清晰全面的理解。缺乏系统知识和系统思维,学到的知识点就是零碎的,没有打通任督二脉。到了毕业后参加实际工作,懂不懂系统知识带来的工作成效差别巨大。同样一个程序,一个普通的程序员来写和一个懂体系结构的人来写,性能可能差几万倍。
中国科学院计算技术研究所从1956年成立起就一直从事计算机系统研究。1990年依托中科院计算所成立的国家智能计算机研究开发中心继承了该所的学术传统,既做系统结构研究,又做人工智能理论、算法和应用研究。陈云霁、陈天石研究员领导的团队研制的寒武纪智能芯片就是在这样的环境中孕育出来的。看到国内人工智能系统人才十分短缺的现状,陈云霁研究员主动请缨,2018年在中国科学院大学率先主讲了智能计算系统课程,后来又在北大、北航、天大、中科大、南开、北理工、华科等高校独力或联合开设了同样的课程。2019年8月他办了一次导教班,全国40多所高校的60多位老师参加了这次导教班。他开的智能计算系统课程受到老师和学生的普遍欢迎。经过两年的打磨,这门课的内容已基本成熟。经过中科院计算所智能处理器研究中心多位同仁的努力,将讲课的录音整理成文字,形成了这本在国际上具有开创性的教材《智能计算系统》。
一个完整的智能计算系统涉及芯片、系统结构、编程环境、软件等诸多方面,内容十分庞杂,要在一个学期讲完所有的内容十分困难。这本教材采用应用驱动,全栈贯通的原则,以图像风格迁移这一具体的智能应用为牵引,对智能计算系统的各层软硬件技术栈的奥妙和相互联系进行精确、扼要的介绍,使学生对系统全貌有一个深刻印象,达到举一反三、触类旁通的效果。
人工智能过去不是大学教育的必修课,培养人工智能专业的人才需要本科毕业后再花3~6年时间攻读硕士或博士才行。目前阻碍人工智能在各个行业落地的困难之一是人员成本太高,加速培养研究生只是解决困难的路径之一,但不能从根本上解决问题。对任何行业而言,技术人才的构成都是金字塔结构,而构成金字塔底层的技术人员主力应该是大学毕业生。因此,如何让大学毕业生在推广智能应用中发挥重要作用是本科教育应该考虑的问题。中国科学院大学启动了一个计划,让本科生在全开源的EDA工具链上设计出开源处理器芯片并完成流片,实现带着自己设计的芯片毕业的梦想。这本教材的初衷也是希望能培养更多懂智能计算系统的本科生,加速弥补人工智能的人才缺口。由于我国系统结构方向师资力量较薄弱,也许很多学校一开始会用这本教材上研究生课。希望通过大规模教学实践的检验,这本教材能进一步修改完善,成为一本被广泛采用的高年级本科生教材。
互联网服务业的发展得益于开源软件和公共开发平台,丰富的网络软件开发工具使得开发互联网APP成为一件很轻松的事情。同样,提供容易掌握的成套抽象化工具,可以大幅度降低人工智能的应用人才门槛。本教材除了讲述深度学习等智能算法和加速处理器外,特别用了两章篇幅详细阐述编程框架的使用和机理。所谓编程框架可以从两方面来理解:一方面将算法中的常用操作,如卷积、池化等,封装成算子,方便程序员直接调用;另一方面像操作系统一样,作为软硬件的界面,起到承上启下的作用。目前,我国的技术人员使用的编程框架基本上都是外国公司提供的开源软件,使用最多的是Google公司开发的TensorFlow。从长远来讲,如果中国的技术人员离不开外国公司的编程框架等开发平台,智能产业的发展一定不平衡、不协调。会用编程框架和会自己写编程框架是差别很大的两种本领。希望通过本课程的教学,中国能培养出可以自己创立编程框架的研发队伍,为技术领先、有市场竞争力的人工智能开源平台贡献中国的力量。
陈云霁研究员不但善于做基础研究,写了不少引领世界潮流的高水平论文,而且长期从事芯片设计工作,有丰富的工程实践经验。他主持编写的这本教材具有理论与实践相结合的特点。本书不但每一章都有从实践中总结出来的习题,而且专门安排了一个大实验,要求学完本课程的学生实际动手开发一个能完成图像风格迁移(如把一幅风景照片转换成梵高风格的画)的简单智能计算系统。国外一流大学的计算机系统课程都有较重的课程实验,国科大开设的操作系统等课程也配有大量的实验内容,学生们反映做实验的收获很大。纸上得来终觉浅,绝知此事要躬行。计算机系统方面的课程如果只是纸上谈兵,学生学到的知识往往是空洞的名词术语,毕业后仍然会眼高手低。希望采用本教材的学校尽量创造条件,让学生有动手做实验的机会。
李国杰中国工程院院士
序 言 二
在上个世纪,我就曾指导学生开展神经网络计算系统的研究。几十年过去了,人工智能、神经网络、计算机系统结构等方向的研究和产业已经发生了翻天覆地的变化。但是有一点没有变化,那就是系统思维对于人工智能的重要性。
系统思维是指从整体的角度,对技术栈各个环节进行全局考虑的思维方式。人工智能的技术栈涉及不少技术环节,不仅仅包括智能算法,还包括智能编程框架、智能编程语言、智能芯片等。如果没有系统思维,只考虑智能算法这一个环节或者把技术栈的各个环节割裂来考虑,不可能开发出准确、高效、节能的人工智能应用,也就使人工智能难以落地。
培养具有系统思维的人工智能人才必须要有好的教材。然而,在中国乃至国际上,对当代人工智能计算系统进行全局、系统介绍的教材十分稀少。因此,中国科学院计算技术研究所陈云霁研究员及其同事编写的《智能计算系统》教材就显得尤为及时和重要。
这本教材采用了一种比较独特的组织方式,以一个典型的深度学习应用(图像风格迁移)作为驱动范例,将上层的算法、中间的编程、底层的芯片串联起来,帮助读者对人工智能完整的软硬件技术栈形成系统的理解。更重要的是,这本教材不是孤立地介绍技术栈的各个环节,而是非常强调技术栈各个环节之间的结合部,例如一个算法怎样拆分成算子,算子在编程框架中怎样调度,芯片体系结构又如何支持算子,并且上述知识在最后的实验中都有所体现。因此,这种组织方式在读者对知识体系的融会贯通和系统思维的形成上非常有帮助。
除了对人工智能技术栈覆盖的广度,《智能计算系统》还有一个特点是深度。这本教材不仅介绍智能计算系统的应用开发,更强调内在的原理。例如在算法部分,教材从线性回归开始,到感知机模型,再到多层感知机,最后到深度学习,一步步地把神经网络计算背后的机理讲透。在体系结构部分,教材先从算法特征分析出发,介绍深度学习处理器的基本设计思想和简单模型,然后再讲具体优化技术,最后介绍工业级深度学习处理器结构。这样不仅仅能授人以鱼,也能授人以渔。
《智能计算系统》之所以能对人工智能软硬件技术栈做出清晰的梳理,和陈云霁研究员独特的研究背景有一定关系。他从事人工智能和计算机系统结构的交叉研究十多年,曾经研制了国际上首个深度学习处理器芯片寒武纪1号,在国际学术界有较大的影响。Science杂志评价他为智能芯片研究的先驱和领导者。同时,陈云霁还有在多个高校讲授智能计算系统课程的丰富教学经验。这使得这本教材既体现了学术上的前沿性,又充分考虑了高校实际教学的需求。某种意义上说,这也是对中国科学院几十年来科教融合理念的传承。
陈国良中国科学院院士
|
|