推荐项目_动手学深度学习pytorch版

前言

推荐一个项目,这个项目根据李沐参编的dive into DL改,链接https://tangshusen.me/Dive-into-DL-PyTorch。书中内容很好,新手根据内容敲一敲前三章的内容就能入门pytorcn,英文好的推荐https://d2l.ai/和配套仓库https://github.com/dsgiitr/d2l-pytorch

目录

该书目录如下:

深度学习的十年发展

以下列表讲述了近十年来深度学习发展的原因

    优秀的容量控制方法,类似于统计学的丢弃共线性因素方法,在深度学习的应用有AlexNet提出的dropout层解决过拟合。

优秀的容量控制方法,如丢弃法,使大型网络的训练不再受制于过拟合(大型神经网络学会记忆大部分训练数据的行为)。这是靠在整个网络中注入噪声而达到的,如训练时随机将权重替换为随机的数字 。

    注意力机制
    记忆网络和神经编码器—解释器

记忆网络和神经编码器—解释器这样的多阶设计使得针对推理过程的迭代建模方法变得可能。这些模型允许重复修改深度网络的内部状态,这样就能模拟出推理链条上的各个步骤,就好像处理器在计算过程中修改内存一样。

    生成对抗网络GAN
    GPU的快速发展,并行计算能力提高,主要用来算偏微分

许多情况下单个GPU已经不能满足在大型数据集上进行训练的需要。过去10年内我们构建分布式并行训练算法的能力已经有了极大的提升。设计可扩展算法的最大瓶颈在于深度学习优化算法的核心:随机梯度下降需要相对更小的批量。与此同时,更小的批量也会降低GPU的效率。如果使用1,024个GPU,每个GPU的批量大小为32个样本,那么单步训练的批量大小将是32,000个以上。近年来李沐、Yang You等人以及Xianyan Jia等人的工作将批量大小增至多达64,000个样例,并把在ImageNet数据集上训练ResNet-50模型的时间降到了7分钟。与之对比,最初的训练时间需要以天来计算。

    Pytorch,TensorFlow等框架

深度学习框架也在传播深度学习思想的过程中扮演了重要角色。Caffe、 Torch和Theano这样的第一代框架使建模变得更简单。许多开创性的论文都用到了这些框架。如今它们已经被TensorFlow(经常是以高层API Keras的形式被使用)、CNTK、 Caffe 2 和Apache MXNet所取代。第三代,即命令式深度学习框架,是由用类似NumPy的语法来定义模型的 Chainer所开创的。这样的思想后来被 PyTorch和MXNet的Gluon API 采用,后者也正是本书用来教学深度学习的工具。

经验分享 程序员 微信小程序 职场和发展