书籍详情
《深度学习导论与应用实践》[46M]百度网盘|亲测有效|pdf下载
  • 深度学习导论与应用实践

  • 出版社:清华大学出版社
  • 出版时间:2019-09
  • 热度:4841
  • 上架时间:2024-06-30 09:08:33
  • 价格:0.0
书籍下载
书籍预览
免责声明

本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正

内容介绍

产品特色

内容简介

本书从数学基础与编程基础开始,逐步引导读者领略深度学习的起源与发展,向读者介绍深度学习在计算机视觉、自然语言处理等方面的实际应用,并为读者呈现z前沿的深度学习研究进展,同时深入剖析技术原理,带领读者逐步推导深度学习背后的数学模型,并结合飞桨(PaddlePaddle)深度学习框架实现项目,代码清晰,易于理解。本书深入浅出,将原理解析与国内流行的深度学习框架飞桨实例结合,旨在使读者更全面、更清晰地掌握深度学习的前沿技术。

本书可作为深度学习的入门读物,也可作为信息学科本科生和研究生的教材,还可供信息产业从业者使用。


作者简介

高随祥(中国科学院大学)、文新(中国科学院信息工程研究所)、马艳军(百度)、李轩涯(百度)

目录

目录
第1章数学基础
1.1数据表示——标量、向量、矩阵和张量
1.1.1标量、向量、矩阵和张量
1.1.2向量的范数
1.1.3常用的向量
1.1.4常见的矩阵
1.1.5矩阵的操作
1.1.6张量的常用操作
1.2优化的基础——导数及其应用
1.2.1导数
1.2.2泰勒公式
1.2.3拉格朗日乘数法
1.3概率模型的基础——概率论
1.3.1随机变量
1.3.2概率分布
1.3.3边缘概率
1.3.4条件概率
1.3.5独立性
1.3.6期望、方差与协方差
1.3.7常用的概率分布
1.4习题
第2章Python入门
2.1Python简介
2.2Python基础语法
2.2.1数据结构类型
2.2.2运算符
2.2.3条件语句
2.2.4循环语句
2.2.5函数
2.2.6面向对象与类
2.2.7脚本
2.3NumPy
2.3.1NumPy数组创建与访问
2.3.2NumPy数组计算
2.3.3广播
2.4Matplotlib
2.4.1Matplotlib的安装
2.4.2Matplotlib图像的组成部分
2.4.3Pyplot绘制简单图形
2.4.4Matplotlib多图像绘制


2.5实践: 豆瓣高分电影爬取
2.5.1思路分析
2.5.2获取页面
2.5.3解析页面
2.5.4存储数据
2.5.5数据展示与分析
2.6习题
第3章机器学习基础
3.1机器学习概述
3.1.1机器学习定义与基本术语
3.1.2机器学习的三要素
3.1.3机器学习方法概述
3.2数据预处理
3.2.1数据清洗
3.2.2数据集拆分
3.2.3数据集不平衡
3.3特征工程
3.3.1特征编码
3.3.2特征选择与特征降维
3.3.3特征标准化
3.4模型评估
3.5实践: 鸢尾花分类
3.5.1数据准备
3.5.2配置模型
3.5.3模型训练
3.5.4数据可视化
3.6习题
第4章深度学习基础
4.1深度学习发展历程
4.2感知机
4.2.1感知机的起源
4.2.2感知机的局限性
4.3前馈神经网络
4.3.1神经元
4.3.2网络结构
4.3.3训练与预测
4.3.4反向传播算法
4.4提升神经网络训练的技巧
4.4.1参数更新方法
4.4.2数据预处理
4.4.3参数的初始化
4.4.4正则化
4.5深度学习框架
4.5.1深度学习框架的作用
4.5.2常见深度学习框架
4.5.3飞桨概述
4.6实践: 手写数字识别
4.6.1数据准备
4.6.2网络结构定义
4.6.3网络训练
4.6.4网络预测
4.7习题
第5章卷积神经网络
5.1概述
5.2整体结构
5.3卷积层
5.3.1全连接层的问题
5.3.2卷积运算
5.3.3卷积的导数
5.3.4卷积层操作
5.3.5矩阵快速卷积
5.4池化层
5.5归一化层
5.6参数学习
5.7典型卷积神经网络
5.7.1LeNet
5.7.2AlexNet
5.7.3VGGNet
5.7.4Inception
5.7.5ResNet
5.7.6DenseNet
5.7.7MobileNet
5.7.8ShuffleNet
5.8实践: 猫狗识别
5.8.1数据准备
5.8.2网络配置
5.8.3网络训练
5.8.4网络预测
5.9习题
第6章循环神经网络
6.1循环神经网络简介
6.1.1循环神经网络的结构与计算能力
6.1.2参数学习
6.1.3循环神经网络变种结构
6.1.4深度循环神经网络
6.1.5递归神经网络
6.2长期依赖和门控RNN
6.2.1长期依赖的挑战
6.2.2循环神经网络的长期依赖问题
6.2.3门控RNN
6.2.4优化长期依赖
6.3双向RNN
6.4序列到序列架构
6.4.1Seq2Seq
6.4.2注意力机制
6.5实践: 电影评论情感分析
6.5.1数据准备
6.5.2网络结构定义
6.5.3网络训练
6.5.4网络预测
6.6习题
第7章深度学习进阶
7.1深度生成模型
7.1.1变分自编码器
7.1.2生成对抗网络
7.2深度强化学习
7.2.1强化学习模型
7.2.2强化学习分类
7.2.3深度强化学习
7.2.4深度Q网络
7.2.5深度强化学习应用
7.3迁移学习
7.3.1迁移学习的定义与分类
7.3.2迁移学习的基本方法
7.4实践: 生成对抗网络
7.4.1数据准备
7.4.2网络配置
7.4.3模型训练与预测
7.5习题
第8章深度学习应用: 计算机视觉
8.1目标检测
8.1.1传统目标检测
8.1.2基于区域的卷积神经网络目标检测
8.1.3基于回归的卷积神经网络目标检测
8.2语义分割
8.2.1传统语义分割方法
8.2.2基于卷积神经网络的语义分割
8.3实践: 目标检测
8.3.1数据准备
8.3.2网络配置
8.3.3模型训练
8.3.4模型预测
8.4习题
第9章深度学习应用: 自然语言处理
9.1自然语言处理的基本过程
9.1.1获取语料
9.1.2语料预处理
9.1.3特征工程
9.2自然语言处理应用
9.2.1文本分类
9.2.2机器翻译
9.2.3自动问答
9.3实践: 机器翻译
9.3.1数据准备
9.3.2网络结构定义
9.3.3网络训练
9.3.4网络预测
9.4习题
参考文献

精彩书摘

  第3章机器学习基础
  机器学习作为实现人工智能的一种手段,近年来日益流行。而本书的重点——深度学习,也正是实现机器学习的一种重要技术。因此,了解机器学习中的一些概念和算法对于理解深度学习算法有很大的帮助。在这一章,我们将介绍这些机器学习中的重要概念、数据处理方法、评价指标等,人工智能、机器学习和深度学习之间的关系,如图3.1所示。
  图3.1人工智能、机器学习和深度学习之间的关系
  3.1机器学习概述
  3.1.1机器学习定义与基本术语
  首先,还是从人工智能出发来介绍机器学习。人工智能是一门研究用于模拟、延伸和拓展人的智能的理论和方法的学科。根据实现效果,可以将人工智能分为强人工智能和弱人工智能。强人工智能是指机器能够实现推理、独立思考、解决未知问题并且拥有自我意识和价值观; 弱人工智能是指机器不能真正实现自我思考、推理和解决问题,它们只是看起来像拥有了智能。虽然科幻电影中大多描绘的是强人工智能,但是目前人们做出的努力只是集中在弱人工智能部分,只能赋予机器感知环境的能力。而这部分的成功主要归功于一种实现人工智能的方法——机器学习。
  机器学习(Machine Learning, ML)就是让机器通过学习数据来获得某种知识,从而获得解决问题的能力。从学科的角度出发,机器学习往往指一类通过学习数据来完成任务的算法。其实,这种通过学习数据来解决问题的思路还是源于人思考的方式。我们经常会听到很多的俗语,例如“朝霞不出门,晚霞行千里”“瑞雪兆丰年”“干冬湿年”等,这些都体现了从古至今人类的智慧。那么为什么朝霞出现就会下雨,晚霞出现天气就会晴朗呢?原因就在于人具有很强大的归纳能力,根据每天的观察和总结,慢慢“训练”出了这样一种分辨是否下雨的“分类器”。
  
  
  针对机器学习的定义,Mitchell给出了一个更形式化的说明: 对于一个任务(Task) T和性能指标(Performance Metric) P,如果程序通过经验(Experience) E在任务T上的指标P获得了提升,那么我们就说针对T和P,程序对E进行了学习。这个定义可能比较拗口,表3.1列举了几个例子来帮助理解。
  表3.1机器学习中的任务、性能指标和经验
  实例1
  T下象棋
  P对弈任意对手的胜率
  E与自己不断对战
  实例2
  T识别人脸
  P识别结果的正确率、误检率和漏检率
  E人工标定的图片数据集
  实例3
  T自动驾驶
  P从出发点到目的地的碰撞次数、行驶时间、耗油量等
  E有驾驶规则的行驶环境数据集
  实例4
  T通过面部观察判断罪犯
  P识别结果的正确率、误检率和漏检率
  E包含罪犯与非罪犯面部照片的数据集
  了解了机器学习的定义之后,再来关注所有机器学习算法都会涉及的一些概念。以“预测下雨”为例,在预测之前,我们肯定需要获取一些特征(Feature)或属性(Attribute),比如是否出现了朝霞、是否出现了晚霞、温度、空气湿度、云量,甚至是卫星云图,等等。通常,为了能够进行数学计算,我们需要将这些特征表示为一个d维的特征向量(Feature Vector),记作x=[x1,x2,…,xd]T,向量的每一个维度代表一个特征,总共选取了d个特征。
  这样的特征有无穷多种,但是并不是每一种都对最终的判断有帮助。所以,为了通过学习来了解哪些特征是有帮助的,以及这些特征取哪些值时会下雨,我们还要获得它们对应的标签(Label)。标签可以是连续值,比如下雨量、下雨持续时间等; 标签也可以是离散的,比如是否会下雨。标签的选取通常与需要完成的任务有关。当标签是连续值时,这样的机器学习任务称为回归(Regression)问题; 当标签是有限数量的离散值时,这样的机器学习任务称为分类(Classification)问题; 当标签是标记序列时,这样的机器学习任务称为标注(Tagging)问题。标注问题可以看成是分类问题的一种。
  一组记录好的特征值以及它的标签称为一个样本(Sample)或实例(Instance),例如(特征: (出现朝霞、没有出现晚霞、空气湿度为50%),标签: (下雨))。一组样本构成的集合称为数据集(Dataset)。
  现在再回顾机器学习的定义,为了能够在任务T上提高性能P,需要学习某种经验E。这里,需要学习的就是数据集,而为了确定性能P是否能够提高,还需要一个不同的数据集来测量性能P。因此,数据集需要分为两部分,用于学习的数据集称为训练集(Training Set),用于测试最终性能P的数据集称为测试集(Test Set)。为了保证学习的有效性,我们需要保证这两个集合不相交。
  数据集中的样本还需要保证一个基本的特性——独立同分布(Identically and Independently Distributed, IID)假设,即每一个样本都需要独立地从相同的数据分布中提取。“独立”保证了任意两个样本之间不存在依赖关系; “同分布”保证了数据分布的统一,从而在训练集上的训练结果对于测试集也是适用的。例如,当训练集的数据都是“地球的天气”,而测试集中都是“火星的天气”,这很显然是不合理的。
  机器学习的重点是如何更好地利用这些数据。给定训练集,我们希望算法能够拟合一个函数f(x,θ)来完成从输入特征向量到标签的映射。对于连续的标签或者非概率模型,我们通常会直接拟合标签的值:
  y^=f(x,θ)
  其中,θ为算法模型可学习的参数。对于离散的标签或者概率模型,通常会拟合一个条件概率分布函数:
  py^|x=f(x,θ)
  用于预测每一类的概率值。
  为了获得这样的一组模型参数θ,我们需要有一套学习算法(Learning Algorithm)来优化这个函数映射,这个优化的过程就称为学习(Learning)或者训练(Training),这个需要拟合的函数就称为模型(Model)。学习的目的就在于找到一个最好的模型,而这样一个模型应当是输入空间至输出空间映射集合中的一个映射,这个映射集合称为假设空间(Hypothesis Space)。换句话说,学习的目的就在于从这个假设空间中选择出一个最好的元素。
  ……

前言/序言

  前言
  深度学习源于人工神经网络,自2006年被提出后,受到学术界和工业界的高度关注,迅速成为机器学习领域最为活跃的一个分支。深度学习是一种基于对数据进行表征学习的方法,通过构建具有多个隐层的学习网络和海量的训练数据,来学习有用的特征,通过逐层特征变换,将样本在原空间的特征表示变换到新特征空间,从而实现更加准确高效的分类或预测。近年来,深度学习方法已经在计算机视觉、自然语言处理、语音识别、记忆网络等诸多领域中得到广泛应用,取得了令人惊喜的应用成果。
  本书是一本关于深度学习的入门级教程,主要介绍深度学习的基本概念、基本原理和基本方法,从数学基础、编程知识和机器学习基本知识开始,由浅入深地讲解深度学习的主要内容,系统深入地剖析深度学习各部分的原理、技术和方法,以及相关的应用,并结合百度深度学习框架——飞桨(PaddlePaddle),进行项目实战,带领读者全面、清晰地理解和掌握深度学习技术。本书的一大特点是将深度学习的理论方法与编程、项目实践结合起来,以便加深加快读者对所学内容的理解和掌握。本书主要面向信息科学及相关领域的本科生、研究生、研究人员和深度学习爱好者。
  全书共9章,可分为3部分: 第1部分包括第1~3章,介绍基本的数学、编程和机器学习知识; 第2部分包括第4~7章,系统、深入地讲解现今已成熟的深度学习方法和实践; 第3部分包括第8~9章,介绍深度学习在计算机视觉和自然语言处理领域的应用和实践。书中各章节相互独立,读者可根据自己的兴趣和时间情况选择使用。书中每章都给出了相应习题,一方面帮助读者巩固本章学习内容,另一方面引导读者扩展相关知识。书中每章也都给出了相应的实践性内容,建议读者在阅读时,辅以代码实战,快速上手深度学习,加深模型理解。
   感谢中国科学院大学的同事和学生积极参与。感谢你们对本书理论内容提出的宝贵建议和意见,让本书内容更显精彩; 感谢你们对本书实践代码的测试反馈,让实践代码千锤百炼; 感谢你们在书稿校对时的认真负责、不辞辛苦。同时感谢百度公司长久以来对于高校人工智能教育的重视与情怀。感谢吴甜、徐菁、喻友平、计湘婷等同事在本书撰写过程中发挥的巨大作用。
  目前,深度学习方法并不完美,还有许多需要进一步研究解决的问题。如果通过本书的学习,能够引领读者迅速进入深度学习研究和应用前沿,取得突破性的成果,那将是本书作者的最大荣幸!
  作者
  2019年6月