Skip to content

Latest commit

 

History

History
178 lines (109 loc) · 8.69 KB

File metadata and controls

178 lines (109 loc) · 8.69 KB

零、前言

关于本书

想要掌握最流行的深度学习机器学习库之一吗? 《PyTorch 深度学习研讨会》将帮助您做到这一点,即使您是从头开始,也可以迅速掌握使用 PyTorch 进行深度学习的知识。

毫不奇怪,由于自动驾驶汽车,聊天机器人和声控助手等智能应用使深度学习在过去几年中迅速普及,这使我们的生活更加轻松。 本书将带您进入深度学习领域,在这里您将使用 PyTorch 来了解神经网络架构的复杂性。

《PyTorch 深度学习研讨会》首先介绍了深度学习及其应用。 您将探索 PyTorch 的语法,并学习如何定义网络架构和训练模型。 接下来,您将学习三种主要的神经网络架构-卷积,人工和循环-甚至使用这些网络解决实际数据问题。 后面的章节将向您展示如何创建样式迁移模型以从两个图像中开发一个新图像,最后再带您了解 RNN 如何存储内存以解决关键数据问题。

到本书结尾,您将掌握 PyTorch 的基本概念,工具和库,以开发自己的深度神经网络和智能应用。

受众群体

对于想要使用 PyTorch 创建和训练深度学习模型的人来说,这本深度学习书非常理想。 对 Python 编程语言及其包的深入了解将帮助您更快地掌握本书中涉及的主题。

关于各章

“第 1 章”,“深度学习和 PyTorch 简介”,介绍了深度学习及其应用以及 PyTorch 的主要语法。 本章还显示了如何定义网络架构和训练模型。

“第 2 章”,“神经网络的构建块”,引入了神经网络的概念,并解释了当今的三种主要网络架构:人工神经网络,卷积神经网络和循环神经网络。 对于每种架构,都提供了训练过程和各层的说明。

“第 3 章”,“使用 DNN 的分类问题”,引入了要使用人工神经网络解决的现实数据问题。 探索了数据集的预处理以及定义和训练模型的过程,并通过使用误差分析提高了模型的准确率。

“第 4 章”,“卷积神经网络”,详细介绍了卷积神经网络。 使用现实生活中的数据问题,您将学习如何构建网络架构并对其进行训练,以及如何通过使用数据扩充和批量规范化来改善结果。

“第 5 章”,“样式迁移”,演示了执行样式迁移任务的过程,其中将两个图像作为输入来创建新图像,并使用来自两个输入图像的元素。

“第 6 章”,“使用 RNN 分析数据序列”,更详细地探讨了循环神经网络。 在本章中,使用序列数据作为输入解决了三个流行的数据问题。

约定

文本中的代码字,数据库表名称,文件夹名称,文件名,文件扩展名,路径名,虚拟 URL,用户输入和 Twitter 句柄如下所示:

“从 PyTorch 导入torchoptimize包,以及matplotlib

您在屏幕上看到的单词,例如在菜单或对话框中,也以相同的格式出现。

代码块设置如下:

import torch
import torch.optim as optim
import matplotlib.pyplot as plt

这样显示了新术语和重要单词:“本章还将探讨自然语言处理NLP)的概念。”

代码演示

跨多行的代码行使用反斜杠(\)分割。 执行代码时,Python 将忽略反斜杠,并将下一行中的代码视为当前行的直接延续。

例如:

history = model.fit(X, y, epochs=100, batch_size=5, verbose=1, \
                   validation_split=0.2, shuffle=False)

注释已添加到代码中,以帮助解释特定的逻辑位。 单行注释使用#符号表示,如下所示:

#打印数据集的大小

# Print the sizes of the dataset
print("Number of Examples in the Dataset = ", X.shape[0])
print("Number of Features for each example = ", X.shape[1])

多行注释用三引号引起来,如下所示:

"""
Define a seed for the random number generator to ensure the result will be reproducible
"""
seed = 1
np.random.seed(seed)
random.set_seed(seed)

硬件要求

为了获得最佳的学生体验,我们建议使用以下硬件配置:

  • 处理器:Intel Core i3 或同等产品
  • 内存:4 GB RAM
  • 储存空间:35 GB 可用空间

软件要求

您还需要预先安装以下软件:

  • 操作系统:Windows 7 SP1 64 位,Windows 8.1 64 位或 Windows 10 64 位,Ubuntu Linux 或最新版本的 macOS
  • 浏览器:Google Chrome/Mozilla Firefox(最新版本)
  • Notepad++/Sublime Text 作为 IDE(可选,因为您可以在浏览器中使用 Jupyter 笔记本练习所有操作)
  • 具有所需库的 Python 3.7(Jupyter,NumPy,pandas,Matplotlib,P 枕头,flask,xlrd 和 scikit-learn)
  • PyTorch 1.3+(最好是 PyTorch 1.4,带有或不带有 CUDA)

设置环境

在详细研究本书之前,我们需要设置特定的软件和工具。 在下一节中,我们将看到如何执行此操作。

在 Windows 和 macOS 上安装 Python

  1. 请访问以下链接下载 Python 3.7

  2. 在页面底部的文件标题下找到表格:

    对于 Windows,单击 64 位的 Windows x86-64 可执行安装程序或 32 位的 Windows x86 可执行安装程序

    对于 macOS,对于 macOS X 10.6 和更高版本,单击 macOS 64 位/32 位安装程序,对于 OS X 10.9 和更高版本,单击 macOS 64 位安装程序

  3. 运行已下载的安装程序。

  4. 您还可以使用 Anaconda 发行版安装 Python。 请遵循此链接中给出的说明以获取更多详细信息

在 Linux 上安装 Python

  1. 打开终端并输入以下命令:

    sudo apt-get install python3.7

您还可以使用 Anaconda 发行版安装 Python。 请遵循此链接中给出的说明以获取更多详细信息

安装 Pip

Python 3.7 的安装默认包含pip。 但是,可能是没有安装的情况。 要检查它是否已安装,请在终端或命令提示符下执行以下命令:

pip --version

由于计算机上的pip先前版本已经使用pip命令,因此您可能需要使用pip3命令。

如果您的计算机无法识别pip(或pip3)命令,请按照以下步骤进行安装:

  1. 要安装pip请访问以下链接并下载get-pip.py文件

  2. 然后,在终端或命令提示符上,使用以下命令进行安装:

    python get-pip.py

由于您机器上的 Python 先前版本已使用python命令,因此您可能需要使用python3 get-pip.py命令。

安装 PyTorch

要安装带有或不带有 CUDA 的 PyTorch,请按照以下步骤操作:

  1. 请访问以下链接
  2. 本地启动标题下,选择适用于您的选项。 这将为您提供在本地计算机上下载 PyTorch 所需执行的命令。 使用pip作为包下载 PyTorch。
  3. 复制命令并在终端或命令提示符中运行它。

安装库

pip预先安装了 Anaconda。 将 Anaconda 安装到计算机上后,可以使用pip安装所有必需的库,例如,pip install numpy。 或者,您可以使用pip install -r requirements.txt安装所有必需的库。 您可以在这个页面上找到requirements.txt文件。

练习和活动将在 Jupyter 笔记本中执行。 Jupyter 是一个 Python 库,可以通过与其他 Python 库相同的方式进行安装-也就是说,通过pip install jupyter可以安装,但是幸运的是,它已经预装了 Anaconda。 要打开笔记本,只需在终端或命令提示符中运行命令jupyter notebook

打开 Jupyter 笔记本

  1. 打开终端/命令提示符。

  2. 在“终端/命令提示符”中,转到您下载了该书的 GitHub 存储库的目录位置。

  3. 通过键入以下命令来打开 Jupyter 笔记本:

    jupyter notebook

    通过执行前面的命令,您将能够通过计算机的默认浏览器使用 Jupyter 笔记本。

访问代码文件

您可以在这个页面中找到本书的完整代码文件。 您还可以使用这个页面上的交互式实验室环境,直接在 Web 浏览器中运行许多活动和练习。

我们已尝试支持所有活动和练习的交互式版本,但对于不提供此支持的实例,我们也建议您进行本地安装。

如果您对安装有任何疑问或疑问,请给我们发送电子邮件至 workshops@packt.com