小编告诉您一个好消息,有一本最新的深度学习入门书即将要与您见面。喜欢深度学习的朋友们可以关注一下。
深度学习 案例精粹(Deep Learning By Example)
- 使用TensorFlow框架,轻松理解深度学习算法
- 包含大量案例,快速动手实现深度学习任务
- 可下载配套源码+彩图文件。
本书是一本深度学习方面的入门书籍,适合那些想要深入了解深度学习并且动手实现它的读者阅读。阅读本书,不要求读者具有机器学习、复杂统计学和线性代数等方面的背景知识。
本书结构
第 1 章解释数据科学或者机器学习的定义,即在事先没有被告知或者编程的情况下,机器从数据集中学习知识的能力。例如,要编写一个可以识别数字的程序非常困难,该程序以手写数字作为输入图像,输出该图像所代表的是 0~9 的哪个数字。同样地,要判断收到的邮件是不是垃圾邮件这样的分类任务也是很困难的。为了解决这样的任务,数据科学家使用一些数据科学、机器学习领域的学习方法和工具,通过给机器一些能够区分每个数字的可解释特征来教会计算机如何自动识别数字。对于垃圾邮件分类问题也是如此,我们能够通过特定的算法教会计算机如何判断一封邮件是不是垃圾邮件,而不是使用传统的正则化表达式并编写数百条规则来对收到的邮件进行分类。
第 2 章讨论线性模型——数据科学领域的基本学习算法。理解线性模型如何工作对于学习数据科学的过程至关重要,因为它是大多数复杂学习算法(包括神经网络)的基本构建模块。
第 3 章介绍模型的复杂性和评估方法。这对构建成功的数据科学系统非常重要。有很多工具可以用来评估和选择模型,本章将讨论一些工具,通过添加更多描述性特征并从现有数据中提取有用信息,这些工具有助于你提高数据的价值。同样地,本章也会讨论与最优数量特征有关的其他工具,并解释为什么“有大量的特征却只有很少量的训练样本/观测值”会是一个问题。
第 4 章概述使用最广泛的深度学习框架之一——TensorFlow。它在社区的支持度很高,而且在日益增长,这对于构建复杂的深度学习应用来说是一个很好的选择。
第 5 章解释 TensorFlow 背后的主要计算概念——计算图模型,并演示如何通过实现线性回归和逻辑回归模型让读者慢慢走上正轨。
第 6 章解释前馈神经网络(Feed-forward Neural Network,FNN),FNN 是一种特殊类型的神经网络,其中神经元之间的连接不构成环。因此,它与本书后续将要研究的神经网络中的其他结构(如循环类型神经网络)不同。FNN 是一种广泛使用的架构,而且它是第一个类型最简单的神经网络。本章将会介绍一种典型的 FNN 架构,并且使用TensorFlow 中的库来实现它。在讲完了这些概念之后,本章会给出一个数字分类的实际例子。例如,给定一组包含手写数字的图像,如何将这些图像分为 10 个(即 0~9)不同的类别?
第 7 章讨论数据科学中的卷积神经网络(Convolutional Neural Network,CNN),CNN是一种特殊的深度学习架构,该架构使用卷积运算从输入图像中提取相关的可解释特征。把很多 CNN 层连接起来作为 FNN,同时通过这种卷积运算来模拟人脑在识别物体时是怎样工作的。每个皮层神经元对受限区域空间(也称为感受野)中的刺激做出反应。特别地,生物医学成像问题有时会难以解决,但在本章中,你将可以看到如何使用 CNN来识别图像中的这些模式。
第 8 章介绍 CNN 背后的基础知识和直觉/动机,并在可用于物体检测的最流行的数据集之一上进行演示。同样地,你将会看到 CNN 前面的一些层如何提取关于物体的一些基本特征,而最后的卷积层将会提取到更多的语义级特征,这些特征都是从前几层的基本特征中构建而来的。‘
第 9 章讨论迁移学习(Transfer Learning,TL),迁移学习是数据科学中研究的一个问题,主要涉及在解决特定任务时不断获取知识并使用这些已获得的知识来解决另一个不同但相似的任务。本章将展示数据科学领域中一种使用 TL 的现代实践和常见主题。这里的想法是在处理具有较小数据集的领域时,如何从具有非常大的数据集的领域中来获得帮助。最后,本章将重新探讨 CIFAR-10 目标检测示例,并尝试使用 TL 来缩短训练时间和减小性能误差。
第 10 章介绍循环神经网络(Recurrent Neural Network,RNN),RNN 是一类广泛应用于自然语言处理(Natural Language Processing,NLP)的深度学习架构。这套架构使我们能够为当前预测提供上下文信息,并且还具有处理任何输入序列中长期依赖性的特定架构。本章将会演示如何构建一个序列到序列的模型,这对于 NLP 中的许多应用都是很有用的。这里将通过建立一个字符级语言模型来阐述这些概念,并且展示模型如何产生和原始输入序列相似的句子。
第 11 章解释了机器学习是一门主要基于统计学和线性代数的科学。由于反向传播算法,应用矩阵运算在大多数机器学习或深度学习架构中都非常普遍。这也是深度学习(机器学习)在总体上只以实数值作为输入的主要原因。事实上,这和很多的应用相矛盾,如机器翻译、情感分析等,它们以文本作为输入。因此,为了在这个应用中使用深度学习,我们需要以深度学习所接受的方式进行处理。本章将会介绍表征学习领域,这是一种从文本中学习实值表示方式的方法,同时保留实际文本的语义。例如,love 的表示方式应该和 adore 的表示方式十分接近,因为它们都会在非常相似的语境中使用。
第 12 章讨论了自然语言处理中一个热门和流行的应用,即所谓的情感分析。现在大多数人通过社交媒体平台来表达他们对某事的看法,所以对于公司甚至政府来说,利用这些海量文本来分析用户对某事的满意度是非常重要的。在本章中,将使用 RNN 来构建一个情感分析解决方案。
第 13 章介绍自编码器网络,它是当下使用最广泛的深度学习架构之一。它主要用于高效解码任务的无监督学习,也可以用于通过学习特定数据集的编码或者表示方式来降维。本章将使用自编码器展示如何通过构建具有相同维度但噪声更小的另一个数据集,来对当前数据集进行去噪。为了在实践中使用这个概念,这里将会从 MNIST 数据集中提取重要的特征,并尝试以此来观察性能是如何显著提高的。
第 14 章讨论生成对抗网络(Generative Adversarial Network,GAN)。这是一种由两个彼此对抗的网络(因此有了名字中的对抗)组成的深度神经网络架构。2014 年,IanGoodfellow 和包括 Yoshua Benjio 在内的其他研究人员在蒙特利尔大学的一篇论文(见arxiv 官网)中介绍了 GAN。提到 GAN,Facebook 的 AI 研究总裁 Yann Lecun 称对抗训练是机器学习过去 10 年中最有趣的想法。GAN 潜力巨大,因为它可以学习模仿任何的数据分布。也就是说,在诸如图像、音乐、语言和文本等任何领域可以训练 GAN 以创造与我们类似的世界。从某种意义上说,它们是机器人艺术家,它们的输出(见 nytimes官网)令人印象深刻同时也使人们受到鼓舞。
第 15 章指出我们能够使用 GAN 来实现非常多有趣的应用。本章将展示 GAN 的另一个有前景的应用,即基于 CelebA 数据库的人脸生成,并且演示如何将 GAN 用于建立那种对于数据集标记不准确或者缺少标记的半监督学习模型。
附录 A 包括鱼类识别示例的所有代码。
看完本书结构有没有一点动心,各大网店页面已有,可以自行搜索。
目录结构
- 第1章 数据科学——鸟瞰全景 1
- 第2章 数据建模实战——“泰坦尼克号”示例 27
- 第3章 特征工程与模型复杂性——重温“泰坦尼克号”示例 49
- 第4章 TensorFlow入门实战 82
- 第5章 TensorFlow基础示例实战 102
- 第6章 深度前馈神经网络——实现数字分类 131
- 第7章 卷积神经网络 149
- 第8章 目标检测——CIFAR-10示例 175
- 第9章 目标检测——CNN迁移学习 196
- 第10章 循环神经网络——语言模型 220
- 第11章 表示学习——实现词嵌入 244
- 第12章 神经网络在情感分析中的应用 265
- 第13章 自动编码器——特征提取和降噪 289
- 第14章 生成对抗网络 312
- 第15章 面部生成与标签缺失处理 329
- 附录A 实现鱼类识别 360