新書推薦:
《
科学的奇幻之旅
》
售價:HK$
79.4
《
画艺循谱:晚明的画谱与消闲
》
售價:HK$
147.2
《
新民说·现实政治史:从马基雅维利到基辛格
》
售價:HK$
102.4
《
宽容是件奢侈品(人生360度·一分钟经典故事)
》
售價:HK$
45.8
《
甲骨拼合六集
》
售價:HK$
342.7
《
视觉美食家:商业摄影实战与创意解析
》
售價:HK$
135.7
《
中国经济发展的新阶段:机会与选择
》
售價:HK$
102.4
《
DK月季玫瑰百科
》
售價:HK$
216.2
|
編輯推薦: |
学习思路,理论先行:构建了非常系统化的理论知识体系,助力读者透彻理解深度学习的基础知识。
学习原理,思维先行:学习一种新的方法、新的算法时,先从本质上剖析其来源,分析提出这种新方法的思维是什么。
抽丝剥茧、深挖本质:透过其烦杂的表面,深挖其本质。
纵向学习、横向比较:详细讲解深度学习作为语言模型中很有用的一种技巧,如何在很多方法中被借鉴和使用。
实践有章可循,拒绝举轻若重:本书将实践分为原理实践和应用实践。原理实践注重案例与原理的呼应,增强对于原理的理解和认识;代码实践增加不同场景下的实践技能,提高Python实践水平。
|
內容簡介: |
本书深入浅出讲解深度学习,对复杂的深挖其本质,让其简单化;对简单的深挖其联系,让其丰富化。从理论知识到实战项目,内容翔实。 本书分为两篇,基础篇主要讲解深度学习的理论,实战篇是代码实践及应用。基础篇(第1~13章)包括由传统机器学习到深度学习的过度、图像分类的数据驱动的方法、Softmax损失函数、优化方法与梯度、卷积神经网络的各种概念、卷积过程、卷积神经网络各种训练技巧、梯度反传、各种卷积网络架构、RNN递归神经网络和序列模型、基于DL的语言模型、生成模型、生成对抗网络等;实战篇(第14~19章)包括应用卷积神经网络进行图像分类、各种网络架构、网络各层可视化、猫狗图像识别、文本分类、GAN图像生成等。 本书适合人工智能专业的本科生、研究生,想转型人工智能的IT从业者,以及想从零开始了解并学习深度学习的读者阅读。
|
關於作者: |
翟中华 清华大学硕士毕业,北京洪策元创智能科技有限公司CEO,AI火箭营首席讲师。在机器学习、深度学习、计算机视觉、自然语言处理等人工智能领域有扎实的理论基础和丰富的应用实践经验。主讲的课程“深度学习入门系列讲解”“PyTorch深度学习实战”等累计学员约50万人次,讲课风格抽丝剥茧、尝入浅出、以简驭繁,能够把复杂的原理简单化,把简单的原理内涵化,深受广大学员的认可。
孟翔宇 华中科技大学软件工程硕士,现就职于阿里巴巴集团(杭州),先后从事面向B类外贸电商的商家生命周期建模、计算广告相关性匹配和推荐广告召回等领域的研究和实践工作。拥有工业海量数据场景下的建模理论和实战经验,对多种机器学习、深度学习和强化学习模型有着浓厚的兴趣和较深的理解。
|
目錄:
|
基础篇第1章什么是深度学习1.1通过应用示例直观理解深度学习1.23个视角解释深度学习1.2.1分层组合性1.2.2端到端学习1.2.3分布式表示1.3深度学习面临的挑战1.3.1深度学习的工作机制1.3.2非凸的问题1.3.3可解释性的问题第2章图像识别及KNN算法2.1图像分类2.2误差分解和KNN算法2.2.1误差分解2.2.2KNN算法运行过程第3章线性分类器3.1线性分类器用于图像分类的3个观点3.1.1线性分类的代数观点3.1.2线性分类的视觉观点3.1.3线性分类的几何观点3.2合页损失函数原理推导及图像分类举例3.2.1合页损失函数的概念3.2.2多分类合页损失函数的推导3.3Softmax损失函数与多分类SVM损失函数的比较3.3.1Softmax分类与损失函数3.3.2Softmax损失函数与合页损失函数的比较第4章优化与梯度4.1梯度下降法工作原理及3种普通梯度下降法4.1.1梯度下降的概念4.1.2梯度下降法求解目标函数4.1.3学习率的重要性4.1.43种梯度下降法4.2动量SGD和Nesterov加速梯度法4.2.1SGD存在的问题4.2.2动量法4.2.3Nesterov加速梯度法4.3自适应学习速率优化方法4.3.1指数加权平均值处理数字序列4.3.2自适应学习速率AdaGrad方法4.3.3自适应学习速率RMSProp方法4.3.4自适应学习速率Adadelta方法4.4强优化方法Adam4.4.1为什么Adam性能如此卓越4.4.2偏差矫正4.4.3如何矫正偏差第5章卷积神经网络5.1卷积核5.1.1卷积核简介5.1.2卷积核的作用5.2卷积神经网络中步长、填充和通道的概念5.2.1步长5.2.2填充5.2.3通道5.3快速推导卷积层特征图尺寸计算公式5.3.1计算过程直观展示5.3.2计算过程总结5.4极简方法实现卷积层的误差反传5.4.1误差反传举例说明5.4.2完全卷积过程简介5.4.3把卷积过程写成神经网络形式5.4.4应用计算图的反向模式微分5.5极池化层的本质思想及其过程5.5.1池化层的分类5.5.2池化后图像尺寸第6章卷积神经网络训练技巧6.1ReLU激活函数的优势6.1.1为什么需要激活函数6.1.2主流激活函数介绍6.2内部协变量偏移6.3批归一化6.3.1为什么需要批归一化6.3.2批归一化的工作原理6.3.3批归一化的优势6.4Dropout正则化及其集成方法思想6.4.1特征共适应性6.4.2Dropout正则化思想6.4.3Dropout集成思想6.4.4预测时需要恢复Dropout的随机性第7章卷积神经网络架构7.1掀起深度学习风暴的AlexNet网络架构7.1.1卷积神经网络的开端LeNet7.1.2AlexNet架构7.2神经网络感受野及其计算7.2.1生物学中的感受野7.2.2CNN中的感受野7.3VGGNet网络结构相比较AlexNet的优势7.3.1VGGNet简介7.3.2VGGNet与AlexNet网络结构对比7.4GoogLeNet 1×1卷积核的深刻意义及其作用7.4.1深度神经网络的缺陷7.4.2多通道卷积中特征图映射太多的问题7.4.31×1卷积核卷积过程7.5GoogLeNet初始模块设计指导思想7.5.1赫布学习规则7.5.2人工神经网络中的赫布学习规则7.6透彻理解GoogLeNet全景架构7.7ResNet关键结构恒等映射背后的思想及原理7.8全面理解ResNet全景架构第8章循环神经网络8.1为什么要用递归神经网络8.1.1为什么需要递归神经网络8.1.2RNN结构以及应用8.2RNN计算图8.3RNN前向与反向传播8.3.1前馈深度8.3.2循环深度8.3.3通过时间反向传播8.3.4两个和的反向传播8.3.5梯度消失和梯度爆炸8.4长短期记忆(LSTM)及其变种的原理8.4.1LSTM网络架构8.4.2LSTM变体一8.4.3LSTM变体二8.4.4LSTM变体三第9章基于深度学习的语言模型9.1词的各种向量表示9.2通过词向量度量词的相似性9.3潜在语义分析LSA9.3.1潜在语义分析的过程9.3.2潜在语义分析的SVD分解9.4Word2Vec词嵌入原理9.4.1Word2Vec的指导思想9.4.2skipgram算法的框架9.4.3skipgram算法的输入训练集9.4.4skipgram算法的目标函数9.4.5skipgram网络中的两个权重矩阵9.5GloVe词向量模型9.5.1由单词共同出现的次数到共同出现的概率9.5.2GloVe模型目标函数的推导9.6从onehot向量到seq2seq序列模型9.7编码器解码器模型9.8为什么要用注意力机制9.8.1大脑中的注意力9.8.2为什么要使用注意力机制9.9注意力机制的数学原理第10章深度学习NLP应用进阶10.1注意力机制的应用指针网络10.2递归神经网络是否是必要的10.2.1递归神经网络存在的问题10.2.2前馈网络的优势10.2.3如何替代递归神经网络10.3Transformer的数学原理10.3.1什么是Transformer10.3.2Transformer结构的形象展示10.3.3什么是自我注意力10.3.4多头自我注意力10.4Transformer的3个矩阵K、V、Q10.5Transformer的位置编码原理10.5.1位置编码的向量计算10.5.2位置编码的表示10.6Transformer的全景架构10.7深度语境化词语表示ELMo10.7.1为什么需要语境情景化的表示10.7.2ELMo的算法构成10.7.3ELMo整体框架10.7.4ELMo的应用10.7.5ELMo算法的效果10.8NLP里程碑模型BERT三大集成创新10.8.1双向上下文遮蔽语言模型10.8.2使用Transformer10.8.3迁移学习10.8.4应用于特定任务第11章深度生成模型11.1监督学习与无监督学习的比较11.1.1监督学习11.1.2无监督学习11.2为什么要用生成模型11.2.1分类11.2.2生成模型应用实例11.3自编码11.4从概率视角理解VAE建模过程11.5KL散度11.6VAE损失函数推导11.7用深度神经网络求解VAE目标函数第12章生成对抗网络12.1GAN目标函数12.2通过博弈论理解GAN原理12.3由JS散度推导GAN判别器和生成器值12.4深度卷积生成对抗网络(DCGAN)12.4.1DCGAN使用的方法12.4.2DCGAN中的生成器12.4.3DCGAN对抗训练的细节12.5条件生成对抗网络12.5.1CGAN的网络结构12.5.2CGAN的数学原理12.5.3生成器和判别器的目标损失函数第13章生成对抗网络的创新及应用13.1图像到图像的翻译13.1.1CNN可否预测图像13.1.2CGAN的具体应用: 以不同形态的图像为条件13.1.3CGAN结构上的两大创新13.1.4图像到图像翻译的应用场景13.2循环生成对抗网络13.3CycleGAN对抗性损失和循环一致性原理13.4从条件熵的视角剖析CycleGAN13.5CycleGAN实验结果13.6超分辨率生成对抗网络(SRGAN)13.7SRGAN的网络架构13.8叠加生成对抗网络13.9StackGAN中的条件增强13.10渐进式增长生成对抗网络13.11StyleGAN中的自适应实例规范化13.12StyleGAN中删除传统输入与随机变化13.13为什么GAN很难训练13.14GAN中梯度消失与梯度不稳定13.15Wasserstein距离13.16为什么Wasserstein距离比KL、JS散度更有利于训练GAN实战篇第14章PyTorch入门14.1PyTorch介绍及张量14.1.1PyTorch及其特定优势14.1.2PyTorch安装14.1.3张量14.2PyTorch动态图、自动梯度、梯度反传14.3使用PyTorch的nn包构建卷积神经网络第15章手写数字识别15.1手写数字识别的解决方案15.1.1手写数字识别的研究意义与背景15.1.2手写数字识别的项目挑战15.1.3手写数字识别的项目原理与解决方案15.2搭建多层全连接神经网络实现MNIST手写数字识别15.2.1由浅入深搭建3层全连接网络15.2.2MNIST训练集和测试集载入15.2.3模型训练与评估15.3基于卷积神经网络的MNIST手写数字识别15.3.1卷积神经网络基本解读15.3.2搭建一个卷积神经网络第16章基于PyTorch的卷积神经网络可视化理解16.1问题背景16.2卷积神经网络16.2.1比较多层感知机和卷积神经网络16.2.2神经元的感知野16.3计算机如何查看输入的图像16.4构建过滤器16.5完整的卷积神经网络结构16.6可视化一个简单的卷积神经网络16.7使用预训练的AlexNet进行各层卷积可视化16.7.1输入图片可视化16.7.2可视化过滤器——多通道16.7.3可视化过滤器——单通道16.8图像遮挡实验16.9总结第17章基于Keras实现Kaggle猫狗大战17.1猫狗大战背景介绍17.2Keras介绍及安装配置17.2.1什么是Keras17.2.2安装TensorFlow17.2.3安装Keras17.3基于卷积神经网络的猫狗大战17.3.1构建第1个网络17.3.2增加丢弃17.3.3增加数据增强17.4基于迁移学习的猫狗大战17.4.1VGG16简介17.4.2使用VGG16预测图像包含什么内容17.4.3训练猫狗大战分类器17.4.4转移学习/微调模型第18章基于PyTorch实现一个DCGAN案例18.1介绍18.2生成对抗网络18.2.1什么是GAN18.2.2什么是DCGAN18.2.3输入18.2.4数据18.2.5实现18.2.6结果18.2.7未来第19章从零出发实现基于RNN的3个应用19.1RNN网络结构及原理19.2使用字符级RNN对姓名进行分类19.2.1准备数据注意19.2.2将姓名转换为张量19.2.3创建网络19.2.4训练19.3使用字符级RNN生成名称19.3.1准备数据19.3.2构建网络19.3.3训练19.3.4绘制损失19.3.5网络采样19.4使用序列到序列的网络和注意机制完成翻译19.4.1加载数据文件19.4.2seq2seq模型19.4.3训练19.4.4绘图结果19.4.5评估19.4.6训练与评估19.4.7可视化注意机制参考文献
|
內容試閱:
|
自从2012年AlexNet在ImageNet大赛中成功击败传统方法,深度学习兴起,掀起了人工智能的第三次高潮!仅仅在几年之内,深度学习便令全世界大吃一惊。它非常有力地挑战了很多领域的传统方法,例如计算机视觉、自然语言处理、语音识别、强化学习和统计建模等,这些领域都因深度学习实现了跨越式发展。人脸识别、自动驾驶、工业机器人、智能推荐、智能客服,都是深度学习成功落地的现实应用。这些由深度学习带来的人工智能新方法、新工具也正产生着广泛的影响: 它们改变了电影制作和疾病诊断的方式,从天体物理学到生物学等各个基础科学中扮演着越来越重要的角色。事实上,我们已经进入了人工智能时代,尽管人工智能才刚刚起步。
于是,各行各业学习并研究深度学习的热情空前高涨,然而,深度学习涉及了很多数学知识,以及从其他学科(如生物学)借鉴的各种原理,并且随着神经网络深度的不断加大,网络架构越来越复杂,其学习曲线异常陡峭。
本书的写成源于AI火箭营的初心,我们希望在人工智能时代来临之际,能够帮助更多的人进入人工智能技术的殿堂,使更多的人利用人工智能解决现实中的实际问题,让更多的人在各行各业中用人工智能升级改造传统产业或技术体系。配套本书,笔者精心设计了“深度学习入门系列讲解”这一深度学习课程,学习人数累计超过20万人次,内容通俗易懂、代入有方、深入浅出、抽丝剥茧。
以简驭繁
网络上讲解深度学习的资料很多,我们曾经作过横向对比,这些资料与我们的理念相距甚远。
首先是原理讲解方面。好多书或技术博客,或者就原理讲原理,没有深挖原理背后的思想; 或者泛泛而谈,没有深入浅出,只是知识的堆叠; 或者逻辑不紧密,没有形成环环相扣的整体。
其次是实践代码方面。博客和GitHub上有大量的演示特定深度学习框架或实现特定模型(例如Resnet等)的代码。这些代码的目的是复现论文或者原理,让我们真正理解算法,并且提供应用算法的工程方式。所以原理是根,代码是叶。然而很多学习者拿来代码,调试出结果后就以为完成了学习过程,将这些代码束之高阁。这其实什么也没学到,实际上只充当了一个“调包侠”而已。本书的实战案例重在与原理的呼应,重在算法设计的探究及实现细节的解释。
尽管现在随着互联网的便捷,网上资料繁多,然而对于初学者,往往不得不参考来源不同的多种资料,所获甚微,而且没有感觉到学习深度学习真正的乐趣。如果你正亲身经历这一过程,那么本书正是你所需要的。
本书理念
本书有以下几大理念:
(1) 学习思路,理论先行。深度学习理论点比较多,知识体系庞大,学习深度学习一定要先把理论吃透,深度学习理论蕴含着丰富的思维、方法和技巧,如果没把理论吃透就开始用代码实践,则不能系统化地学习,知识体系会比较乱,不利于创新思维体系的构建。本书构建了非常系统化的理论知识体系,助力读者透彻理解深度学习的基础知识。
(2) 学习原理,思维先行。学习一种新的方法、新的算法,一定要先从本质上剖析其来源,分析提出这种新方法的思维是什么。不能仅仅从原理上、技术上搞懂,更重要的应该是明白这种方法的来龙去脉,即其思维根源。
(3) 抽丝剥茧、深挖本质。深度学习涉及非常多的网络架构和技巧,如批归一化、串接、丢弃、残余连接等。学习一种新的网络架构时,需要透过其繁杂的表面,深挖其本质。
(4) 纵向学习、横向比较。深度学习技术发展非常迅速,同一种技术也会不断改进、创新。例如注意力机制作为语言模型中很有用的一种技巧,在很多方法中被借鉴和使用,如Transformer、Bert等。Transformer中用到的自注意力,是对注意力的一个纵向借鉴和创新改进,Bert当然不能抛弃这种有效的方法。
(5) 实践有章可循,拒绝举轻若重。本书将实践分为原理实践和应用实践。原理实践注重案例与原理的呼应,增强对于原理的理解和认识; 代码实践增强不同场景下的实践技能,提高Python实践水平。除此之外,本书注重重点、次重点的合理分配,例如在DCGAN的代码实践中,首先要学会的是生成器的实现,其次是损失函数,再次是判别器的实现。
本书坚持培养读者阐述剖析问题所需的批判性思维、解决问题所需的数学知识,以及实现解决方案所需的工程技能。本书对所有涉及的技术点进行了背景介绍,写作风格严谨。书中所有的代码执行结果都是自动生成的,任何改动都会触发对书中每一段代码的测试,以保证读者在动手实践时能复现结果。
感谢对本书的编写提出宝贵修改意见的贡献者,他们查阅资料、字斟句酌; 感谢孙玉龙、袁海滨、陆澍旸等学员对书中的一些内容提供了很有价值的反馈。
我们的初衷是让更多人更轻松地使用深度学习!由于笔者水平有限,书中难免存在疏漏,敬请原谅,并恳请读者批评指正。
附上苏轼的一段词,希望各位读者像欣赏美景一样开启深度学习之旅:
“一叶舟轻,双桨鸿惊。水天清、影湛波平。鱼翻藻鉴,鹭点烟汀。过沙溪急,霜溪冷,月溪明。”
翟中华孟翔宇
2021年7月
本书源代码下载
|
|