前言
Pytorch官网Pytorch.org最近发布了一本开源书深度学习《Deep Learning with PyTorch》,共141页pdf,限时开放,涵盖了深度学习和Pytorch库的介绍,预训练网络,张量,学习机制,数据神经网络学习。书里面有详实的代码,是入门学习Pytorch深度学习必备器物,不得不看!
作者介绍:
Eli Stevens过去15年一直在硅谷工作,是一名软件工程师,过去7年一直是一家制造医疗设备软件的初创公司的首席技术官。
Luca Antiga是位于意大利贝加莫的一家人工智能工程公司的联合创始人兼首席执行官,也是PyTorch的定期贡献者。
《PyTorch 深度学习》 旨在指导人们开始自己的 AI/机器学习开发之路,全书总共只有 5 个章节
使用PyTorch的深度学习提供了一个详细的、实际操作的介绍,本书介绍如何使用PyTorch构建和训练神经网络,PyTorch是一个流行的开源机器学习框架。这本书包括:
第一章是入门内容介绍,主要介绍了什么是 PyTorch和为什么我们要选择 PyTorch,以及对本书内容层次的总体介绍,让刚刚入门的读者能够开门见山,大量的插图介绍了深度学习和Pytorch的概念。包括:
- 深度学习模型自动地学习将输入和期望的输出与示例联系起来。像PyTorch这样的库允许您高效地构建和训练神经网络模型。
- PyTorch最小化了认知开销,同时注重灵活性和速度。它还默认为立即执行操作。
- TorchScript是一种可以从c++调用的预编译延迟执行模式。
- 自2017年初发布PyTorch以来,深度学习工具生态系统得到了显著的巩固。
- PyTorch提供了几个实用程序库来促进深度学习项目。
一个开发者正忙于定义工程特性并将它们提供给一个学习算法。这项任务的结果将和他设计的功能一样好。在图的右侧,通过深度学习,将原始数据反馈给一个自动提取层次特征的算法,该算法基于优化算法在任务上的性能。结果将与执行者推动算法实现其目标的能力一样好。
上图显示了一个标准的设置,它加载数据、训练一个模型,然后将该模型部署到生产环境中
第二章则从张量这一深度学习的基本概念开始,介绍了张量的相关数学机制,以及深度学习是怎样处理数据,完成学习这一过程的。涵盖:
- 神经网络将浮点表示法转换为其他浮点表示法,而开始和结束表示法通常是可由人类解释的。中间的表示法则不然。
- 这些浮点表示存储在张量。
- 张量是PyTorch多维数组和基本的数据结构。
- PyTorch有张量的综合标准库创建和操纵和数学运算。
- 张量可以序列化到磁盘和加载。
- PyTorch张量操作可以执行的CPU和GPU上没有修改代码。
- PyTorch使用拖曳下划线来表示一个函数运行就地一个张量(如Tensor.sqrt_)
深度神经网络学习如何将输入表示转换为输出表示
第三章开始则通过张量和真实世界的数据进行联系,说明了如何使用张量表示表格、时序、图像和文本等数据。
将一维多通道数据转换为二维多通道数据。在这个过程中,我们需要将每个样本的日期和时间放在不同的坐标轴上
第四章则进入机器学习机制的介绍,说明了深度学习的权重更新和反向传播原理。
约翰内斯·开普勒考虑了多个可能适合手头数据的候选模型,最终选定了一个椭圆。
利用autograd软件计算出模型的正向图和反向图
第五章主要集中在使用 PyTorch 构建神经网络并拟合数据分布。有了前几章的理论基础,这一章会增加很多代码方面实践介绍。
人工神经元:包含在非线性函数中的线性变换
一个三层的神经网络架构