返回介绍

第一章 深度学习入门

发布于 2025-02-19 23:22:46 字数 3190 浏览 0 评论 0 收藏 0

欢迎购买本书:本书旨在帮助您使用 Python 进行深度学习,包括如何使用 Keras 构建和运行深度学习模型。本书也包括深度学习的技巧、示例代码和技术内容。

深度学习的数学基础很精妙:但是一般用户不需要完全了解数学细节就可以抄起键盘开始编程。实用一点讲,深度学习并不复杂,带来的成效却很客观。教会你如何用深度学习:这就是本书的目的。

1.1 深度学习:如何错误入门

如果你去问大佬们深度学习如何入门,他们会怎么说?不外乎:

  • 线性代数是关键啊!
  • 你得了解传统神经网络才能干啊!
  • 概率论和统计学是基础的基础不是吗?
  • 你得先在机器学习的水里扑腾几年再来啊。
  • 不是计算机博士不要和我说话好吗!
  • 入门挺简单的:10 年经验应该差不多也行有可能就够了吧。

总结一下:只有大神才能做深度学习。

净 TM 扯淡!

1.2 使用 Python 进行深度学习

本书准备把传统的教学方式倒过来:直接教你怎么深度学习。如果你觉得这东西真厉害我要好好研究一下,再去研究理论细节。本书直接让你用深度学习写出能跑的东西。

我用了不少深度学习的库:我觉得最好的还是基于 Python 的 Keras。Python 是完整的成熟语言,可以直接用于商业项目的核心,这点 R 是比不上的。和 Java 比,Python 有 SciPy 和 scikit-learn 这些专业级别的包,可以快速搭建平台。

Python 的深度学习库有很多,最著名的是蒙特利尔大学的 Theano(已死,有事烧纸)和 Google 的 TensorFlow。这两个库都很简单,Keras 都无缝支持。Keras 把数值计算的部分封装掉,留下搭建神经网络和深度学习模型的重点 API。

本书会带领你亲手构建神经网络和深度学习模型,告诉你如何在自己的项目中利用。废话少说,赶快开始:

1.3 本书结构

本书分 3 部分:

  • 课程:介绍某个神经网络的某个功能,以及如何使用 Keras 的 API 写出来
  • 项目:将课上的知识放在一起,写一个项目:这个项目可以作为模板
  • 示例:直接可以复制粘贴的代码!本书还附赠了很多代码,在 Github 上!

1.3.1 第一部分:课程和项目

每节课是独立的,推荐一次性完成,时长短则 20 分钟,长则数小时 - 如果你想仔细调参数。课程分 4 块:

  • 背景
  • 多层感知器
  • 高级多层感知器和 Keras
  • 卷积神经网络

1.3.2 第二部分:背景知识

这部分我们介绍 Theano、TensorFlow(TF)和 Keras 这 3 个库,以及如何在亚马逊的云服务(AWS)上用低廉的价格测试你的网络。分成 4 个部分:

  • Theano 入门
  • TensorFlow 入门
  • Keras 入门

这些是最重要的深度学习库。我们多介绍一点东西:

  • 项目:在云上部署 GPU 项目

到这里你应该准备好用 Keras 开发模型了。

1.3.3 第三部分:多层感知器

这部分我们介绍前馈神经网络,以及如何用 Keras 写出自己的网络。大体分段:

  • 多层感知器入门
  • 用 Keras 开发第一个神经网络
  • 测试神经网络模型性能
  • 用 Scikit-Learn 和 Keras 模型进行机器学习

这里有 3 个项目可以帮助你开发神经网络,以及为之后的网络打下模板:

  • 项目:多类分类
  • 项目:分类问题
  • 项目:回归问题

到这里你已经熟悉了 Keras 的基本操作。

1.3.4 第四部分:高级多层感知器

这部分我们进一步探索 Keras 的 API,研究如何得到世界顶级的结果。内容包括:

  • 如何保存神经网络
  • 如何保存最好的网络
  • 如何边训练观察训练结果
  • 如何对付过拟合
  • 如何提高训练速度

到这里你已经可以使用 Keras 开发成熟的模型了。

1.3.5 第五部分:卷积神经网络(CNN)

这部分我们介绍一些计算机视觉和自然语言的问题,以及如何用 Keras 构建神经网络出色地解决问题。内容包括:

  • 卷积神经网络入门
  • 如何增强模型效果

写代码才能真正理解网络:这里我们用 CNN 解决如下问题:

  • 项目:手写字符识别
  • 项目:图像物体识别
  • 项目:影视评论分类

到这里你可以用 CNN 对付你遇到的实际问题了。

1.3.6 结论

这部分我们给你提供一些继续深造的资料。

1.3.7 示例

边学习边积累代码库:每个问题你都写了代码,供以后使用。

本书给你所有项目的代码,以及一些没有讲到的 Keras 代码。自己动手积累吧!

1.4 本书需求

1.4.1 Python 和 SciPy

你起码得会装 Python 和 SciPy,本书默认你都配置好了。你可以在自己的机器上,或者虚拟机/Docker/云端配置好环境。参见第二章项目。

本书使用的软件和库:

  • Python 2 或 3:本书用版本 2.7.11.
  • SciPy 和 NumPy:本书用 SciPy 0.17.0 和 NumPy 1.11.0.
  • Matplotlib:本书用版本 1.5.1
  • Pandas:本书用版本 0.18.0
  • scikit-learn:本书用版本 0.17.1。

版本不需要完全一致:但是希望安装的版本不要低于上面的要求。第二部分会带领你配置环境。

1.4.2 机器学习

你不需要专业背景,但是会用 scikit-learn 研究简单的机器学习很有帮助。交叉检验等基本概念了解一下。书后有参考资料:简单阅读一下。

1.4.3 深度学习

你不需要知道算法的数学理论,但是概念需要有所了解。本书有个神经网络和模型的入门,但是不会深度研究细节。术后有参考资料:希望你对神经网络有点概念。

注意:所有的例子都可以用 CPU 跑,GPU 不是必备的,但是 GPU 可以显著加速运算。第 5 章会告诉你如何在云上配置 GPU。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文