作者 |
陈云霁 李玲 李威 郭崎 杜子东 等 |
丛书名 |
计算机类专业系统能力培养系列教材 |
出版社 |
机械工业出版社 |
ISBN |
9782111021149 |
简要 |
简介 |
内容简介书籍计算机书籍 ---------------------------8067566 - 智能计算系统--------------------------- 目标是培养学生对智能计算完整软硬件技术栈(包括基础智能算法、智能计算编程框架、智能计算编程语言、智能芯片体系结构等)融会贯通的理解,成为智能计算系统(子系统)的设计者和开发者。 ---------------------------8083697 - 智能计算系统实验教程--------------------------- 本书是《智能计算系统》教材的配套实验教程,全书基于智能计算系统各章节的重点或难点,结合智能计算系统的软硬件技术栈设计了基于通用CPU平台和深度学习处理器平台的分阶段实验和综合实验。实验设计与理论章节一对一匹配,结合知识树的构建,帮助高校教师和学生轻松上手实验,切实强化动手能力,让学生真正掌握智能计算系统的部署与优化。 |
目录 |
[套装书具体书目] 8067566 - 智能计算系统 - 9787111646235 - 机械工业出版社 - 定价 79 8083697 - 智能计算系统实验教程 - 9787111688440 - 机械工业出版社 - 定价 79 ---------------------------8067566 - 智能计算系统--------------------------- 序言一 序言二 前言 第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.5softmax层50 3.1.6卷积神经网络总体结构50 3.2基于卷积神经网络的图像分类算法52 3.2.1AlexNet53 3.2.2VGG56 3.2.3Inception59 3.2.4ResNet66 3.3基于卷积神经网络的图像目标检测算法69 3.3.1评价指标69 3.3.2R?CNN系列72 3.3.3YOLO78 3.3.4SSD81 3.3.5小结83 3.4序列模型:循环神经网络83 3.4.1RNN84 3.4.2LSTM88 3.4.3GRU89 3.4.4小结90 3.5生成对抗网络91 3.5.1模型组成91 3.5.2GAN训练92 3.5.3GAN结构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.2TensorFlow概述102 4.3TensorFlow编程模型及基本用法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.1TensorFlow设计原则141 5.1.1高性能141 5.1.2易开发142 5.1.3可移植142 5.2TensorFlow计算图机制142 5.2.1一切都是计算图143 5.2.2计算图本地执行150 5.2.3计算图分布式执行154 5.3TensorFlow系统实现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.1TensorFlow170 5.4.2PyTorch171 5.4.3MXNet171 5.4.4Caffe172 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.1GPU架构简述204 6.6.2FPGA架构简述204 6.6.3DLP与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.2Cluster架构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.4I/O操作语句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.1Kernel函数接口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 ---------------------------8083697 - 智能计算系统实验教程--------------------------- 丛书序言 前言 第1章 绪论 1 1.1 智能计算系统简介 2 1.2 实验设计 4 1.3 实验平台 8 1.3.1 硬件平台8 1.3.2 软件环境9 1.4 游戏实验系统 10 第2章 神经网络设计实验 12 2.1 基于三层神经网络实现手写数字分类 12 2.1.1 实验目的12 2.1.2 背景介绍13 2.1.3 实验环境17 2.1.4 实验内容18 2.1.5 实验步骤19 2.1.6 实验评估29 2.1.7 实验思考29 2.2 基于DLP平台实现手写数字分类 29 2.2.1 实验目的29 2.2.2 背景介绍30 2.2.3 实验环境34 2.2.4 实验内容34 2.2.5 实验步骤35 2.2.6 实验评估40 2.2.7 实验思考40 第3章 深度学习应用实验 41 3.1 基于VGG19实现图像分类 41 3.1.1 实验目的41 3.1.2 背景介绍42 3.1.3 实验环境45 3.1.4 实验内容46 3.1.5 实验步骤46 3.1.6 实验评估53 3.1.7 实验思考54 3.2 基于DLP平台实现图像分类 54 3.2.1 实验目的54 3.2.2 实验环境55 3.2.3 实验内容55 3.2.4 实验步骤55 3.2.5 实验评估60 3.2.6 实验思考60 3.3 非实时图像风格迁移 61 3.3.1 实验目的61 3.3.2 背景介绍61 3.3.3 实验环境64 3.3.4 实验内容64 3.3.5 实验步骤65 3.3.6 实验评估74 3.3.7 实验思考76 3.3.8 延伸拓展77 第4章 编程框架实验 79 4.1 基于TensorFlow实现图像分类 79 4.1.1 实验目的79 4.1.2 背景介绍80 4.1.3 实验环境84 4.1.4 实验内容85 4.1.5 实验步骤85 4.1.6 实验评估90 4.1.7 实验思考91 4.2 基于TensorFlow实现实时风格迁移推断 91 4.2.1 实验目的91 4.2.2 背景介绍91 4.2.3 实验环境96 4.2.4 实验内容96 4.2.5 实验步骤96 4.2.6 实验评估102 4.2.7 实验思考102 4.3 基于TensorFlow实现实时风格迁移训练 102 4.3.1 实验目的102 4.3.2 背景介绍102 4.3.3 实验环境104 4.3.4 实验内容105 4.3.5 实验步骤105 4.3.6 实验评估116 4.3.7 实验思考116 4.4 自定义TensorFlow CPU算子 116 4.4.1 实验目的116 4.4.2 背景介绍117 4.4.3 实验环境118 4.4.4 实验内容118 4.4.5 实验步骤119 4.4.6 实验评估131 4.4.7 实验思考131 第5章 智能编程语言实验 132 5.1 智能编程语言算子开发与集成实验(BCL开发实验)132 5.1.1 实验目的132 5.1.2 背景介绍132 5.1.3 实验环境138 5.1.4 实验内容138 5.1.5 实验步骤139 5.1.6 实验评估156 5.1.7 实验思考157 5.2 智能编程语言性能优化实验 157 5.2.1 实验目的157 5.2.2 背景介绍157 5.2.3 实验环境159 5.2.4 实验内容159 5.2.5 实验步骤160 5.2.6 实验评估173 5.2.7 实验思考173 5.3 智能编程语言算子开发实验(BPL开发实验)173 5.3.1 实验目的173 5.3.2 背景介绍174 5.3.3 实验环境178 5.3.4 实验内容179 5.3.5 实验步骤180 5.3.6 实验评估182 5.3.7 实验思考182 *第6章 深度学习处理器运算器设计实验 183 6.1 实验目的 183 6.2 背景介绍 184 6.2.1 卷积层算法特征 184 6.2.2 面向卷积运算的DLP架构 185 6.2.3 DLP上矩阵及卷积处理过程186 6.3 实验环境 189 6.3.1 工具安装190 6.3.2 代码文件组织 190 6.4 实验内容 191 6.5 实验步骤 192 6.5.1 串行内积运算器 192 6.5.2 并行内积运算器 194 6.5.3 矩阵运算子单元 198 6.5.4 编译调试201 6.6 实验评估 204 6.7 实验思考 204 第7章 综合实验205 7.1 基于YOLOv3实现目标检测 205 7.1.1 实验目的205 7.1.2 背景介绍206 7.1.3 实验环境209 7.1.4 实验内容210 7.1.5 实验步骤211 7.1.6 实验评估238 7.1.7 实验思考238 7.2 基于EAST实现文本检测239 7.2.1 实验目的239 7.2.2 背景介绍239 7.2.3 实验环境242 7.2.4 实验内容242 7.2.5 实验步骤243 7.2.6 实验评估260 7.2.7 实验思考261 7.3 基于BERT实现自然语言处理 261 7.3.1 实验目的261 7.3.2 背景介绍261 7.3.3 实验环境267 7.3.4 实验内容267 7.3.5 实验步骤269 7.3.6 实验评估302 7.3.7 实验思考303 附录A DLP软件环境介绍 304 参考文献 315 后记 318 |