《21个项目玩转深度学习》是一本实践导向的书籍,深入介绍了深度学习技术和TensorFlow框架编程内容。这本书涵盖了多个应用领域,如图像识别、人脸识别、编写风格迁移应用、使用神经网络生成图像和文本、训练机器玩游戏等。通过这些具体的项目案例,读者可以系统地学习深度学习的理论知识和实践操作,加深对TensorFlow框架的理解和应用。无论是初学者还是有一定经验的人士,都可以通过这本书有效地掌握深度学习和TensorFlow相关技术。本书内容丰富全面,实用性强,是学习深度学习和TensorFlow的好选择。
21个项目玩转深度学习电子书封面
读者评价
就是有21个项目的代码,稍微讲了讲关键的几行代码,但你如果不理解原理或者没研读过相关的papers,根本不知道这些代码真正做了什么。并不适合新人看,个人建议新人加一下网易云课堂吴恩达的微专业,比这个更有用。总体来说,这本书的定位很尴尬,无用。
没有源码分析,只有调用脚本。 对部分算法有简单介绍,但详细还是需要阅读原始论文。 对我来说作用不大
不适合机器学习初学者看,里面没有细说算法原理,甚至代码都没有细说。
这本书用的是python2.7和ubuntu系统实现的,我用python3.6在windows下很多实现不了,最感兴趣的第七章图片风格迁移没有预训练的文件,我觉得本书想法很好,用操作结合实际,内容挺丰富,还包含了不少理论模型的知识,但实际操作写的很一般,很多东西比较简略,肯定不是零基础,至少你要懂一些tensorflow和numpy等常用包,感觉不如另一本tensorflow实战google深度学习框架,新手不推荐,有经验的可以来看看
看了两章,感觉没有很深入,也没有讲完整,帮助真的很小,需要自己下载源码慢慢研究
内容介绍
《21 个项目玩转深度学习——基于TensorFlow 的实践详解》以实践为导向,深入介绍了深度学习技术和TensorFlow 框架编程内容。
通过本书,读者可以训练自己的图像识别模型、进行目标检测和人脸识别、完成一个风格迁移应用,还可以使用神经网络生成图像和文本,进行时间序列预测、搭建机器翻译引擎,训练机器玩游戏。全书共包含21 个项目,分为深度卷积网络、RNN网络、深度强化学习三部分。读者可以在自己动手实践的过程中找到学习的乐趣,了解算法和编程框架的细节,让学习深度学习算法和TensorFlow 的过程变得轻松和高效。本书代码基于TensorFlow 1.4 及以上版本,并介绍了TensorFlow 中的一些新特性。
本书适合有一定机器学习基础的学生、研究者或从业者阅读,尤其是希望深入研究TensorFlow 和深度学习算法的数据工程师,也适合对人工智能、深度学习感兴趣的在校学生,以及希望进入大数据应用的研究者。
目录
- 第1章 MNIST机器学习入门 1
- 第2章 CIFAR-10与ImageNet图像识别 19
- 第3章 打造自己的图像识别模型 50
- 第4章 Deep Dream模型 70
- 第5章 深度学习中的目标检测 91
- 第6章 人脸检测和人脸识别 115
- 第7章 图像风格迁移 141
- 第8章 GAN和DCGAN入门 163
- 第9章 pix2pix模型与自动上色技术 181
- 第10章 超分辨率:如何让图像变得更清晰 199
- 第11章 CycleGAN与非配对图像转换 210
- 第12章 RNN基本结构与Char RNN文本生成 225
- 第13章 序列分类问题详解 252
- 第14章 词的向量表示:word2vec与词嵌入 264
- 第15章 在TensorFlow中进行时间序列预测 286
- 第16章 神经网络机器翻译技术 302
- 第17章 看图说话:将图像转换为文字 320
- 第18章 强化学习入门之Q 333
- 第19章 强化学习入门之SARSA算法 344
- 第20章 深度强化学习:Deep Q Learning 349
- 第21章 策略梯度(Policy Gradient)算法 361
TensorFlow是谷歌基于DistBelief进行研发的第二代人工智能学习系统,其命名来源于本身的运行原理。Tensor(张量)意味着N维数组,Flow(流)意味着基于数据流图的计算,TensorFlow为张量从流图的一端流动到另一端计算过程。TensorFlow是将复杂的数据结构传输至人工智能神经网中进行分析和处理过程的系统。 TensorFlow可被用于语音识别或图像识别等多项机器深度学习领域,对2011年开发的深度学习基础架构DistBelief进行了各方面的改进,它可在小到一部智能手机、大到数千台数据中心服务器的各种设备上运行。TensorFlow将完全开源,任何人都可以用。
吐槽+心得 TensorFlow相当于一个python的接口,本质上还是C的内核。所以在python中操作时,需要把很多东西重新包装成一个合适的Object。所以出现了tf.Variable tf.placeholder等等的东西。 正如如上所说,除了对象需要重新构造。Kernel或者说运行界面当然也需要一个新的,所以出现了tf.Session Activation funciton,有翻译成激励函数、激活函数,但实际上并不是去激活什么东西。仅仅是为了给线性的模型加入非线性的变化。例如Relu(Rectified Linear Unit, ReLU),有很多变式,但最基础的就是new_x = max(0,x)。 tf.get_variable与tf.Variable差别还挺大,建议使用第一个。区别见reference第4条 关于Variable,我们要时刻记住Python仅仅是一个接口,这就意味着,当我们定义并赋值一个tf内的变量时,虽然我们以为我们重新赋值就可以覆盖,但其实不。tf内部会存在定义过的变量。所以要小心的使用三种定义方式。tf.placeholder(); tf.Variable() ;tf.get_variable();