我最近的文章中,专门为想学Pytorch的新手推荐了一些学习资源,包括教程、视频、项目、论文和书籍。希望能对你有帮助:
一、PyTorch学习教程、手册

(1)PyTorch英文版官方手册:https://pytorch.org/tutorials/。对于英文比较好的同学,非常推荐该PyTorch官方文档,一步步带你从入门到精通。该文档详细的介绍了从基础知识到如何使用PyTorch构建深层神经网络,以及PyTorch语法和一些高质量的案例。

(2)PyTorch中文官方文档:https://pytorch-cn.readthedocs.io/zh/latest/。阅读上述英文文档比较困难的同学也不要紧,我们为大家准备了比较官方的PyTorch中文文档,文档非常详细的介绍了各个函数,可作为一份PyTorch的速查宝典。

(3)这是一个比较偏算法实战的PyTorch代码教程,在github上有很高的star,https://github.com/yunjey/pytorch-tutorial。建议大家在阅读本文档之前,先学习上述两个PyTorch基础教程。

(4)接下来为大家介绍一本开源书籍:https://github.com/zergtant/pytorch-handbook。这是一本开源的书籍,目标是帮助那些希望和使用PyTorch进行深度学习开发和研究的朋友快速入门。但本文档不是内容不是很全,还在持续更新中。

(5)最后,为大家推荐一个简单易上手的PyTorch中文文档,非常适合新手学习:

https://github.com/fendouai/pytorch1.0-cn。该文档从介绍什么是PyTorch开始,到神经网络、PyTorch的安装,再到图像分类器、数据并行处理,非常详细的介绍了PyTorch的知识体系,适合新手的学习入门。该文档的官网:http://pytorchchina.com

二、PyTorch视频教程

(1)首推的是B站中近期点击率非常高的一个PyTorch视频教程:https://www.bilibili.com/video/av31914351/,虽然视频内容只有八集,但讲的深入浅出,十分精彩。只是没有中文字幕,小伙伴们是该练习一下英文了...

(2)另外一个国外大佬的视频教程,在YouTube上有很高的点击率,也是纯英文的视频:https://www.youtube.com/watch?v=SKq-pmkekTk,有没有觉得外国的教学视频不管是多么复杂的问题都能讲的很形象很简单?

(3)接下来,不得不给大家安利一下莫烦老师的PyTorch视频教程了,https://morvanzhou.github.io/tutorials/machine-learning/torch/。相信莫烦老师大家应该很熟了,他的Python、深度学习的系列视频在B站和YouTube上均有很高的点击率,该PyTorch视频教程也是去年刚出不久,推荐给新手朋友。

(4)人工智能101学院的PyTorch系列视频课程,讲的比较详细、覆盖的知识点也比较广,https://www.bilibili.com/video/av49008640/,感兴趣的朋友可以试听一下。

(5)最后,向大家推荐的是国内领先的人工智能教育平台——七月在线的PyTorch入门与实战系列课:https://www.julyedu.com/course/getDetail/140/。课程虽然是收费课程,但课程包含PyTorch语法、深度学习基础、词向量基础、NLP和CV的项目应用、实战等,理论和实战相结合,确实比其它课程讲的更详细,推荐给大家。

三、NLP&PyTorch实战

(1)Pytorch text

https://github.com/pytorch/text):Torchtext是一个非常好用的库,可以帮助我们很好的解决文本的预处理问题。此github存储库包含两部分:

我们只需要通过pip install torchtext安装好torchtext后,便可以开始体验Torchtext 的种种便捷之处。

(2)Pytorch-Seq2seq

https://github.com/IBM/pytorch-seq2seq):Seq2seq是一个快速发展的领域,新技术和新框架经常在此发布。这个库是在PyTorch中实现的Seq2seq模型的框架,该框架为Seq2seq模型的训练和预测等都提供了模块化和可扩展的组件,此github项目是一个基础版本,目标是促进这些技术和应用程序的开发。

(3)BERT NER

https://github.com/kamalkraj/BERT-NER):BERT是2018年google 提出来的预训练语言模型,自其诞生后打破了一系列的NLP任务,所以其在nlp的领域一直具有很重要的影响力。该github库是BERT的PyTorch版本,内置了很多强大的预训练模型,使用时非常方便、易上手。

(4)Fairseq

https://github.com/pytorch/fairseq):Fairseq是一个序列建模工具包,允许研究人员和开发人员为翻译、总结、语言建模和其他文本生成任务训练自定义模型,它还提供了各种Seq2seq模型的参考实现。该github存储库包含有关入门、训练新模型、使用新模型和任务扩展Fairseq的说明,对该模型感兴趣的小伙伴可以点击上方链接学习。

(5)Quick-nlp

https://github.com/outcastofmusic/quick-nlp):Quick-nlp是一个深受fast.ai库启发的深入学习Nlp库。它遵循与Fastai相同的API,并对其进行了扩展,允许快速、轻松地运行NLP模型。

(6)OpenNMT-py

https://github.com/OpenNMT/OpenNMT-py):这是OpenNMT的一个PyTorch实现,一个开放源码的神经网络机器翻译系统。它的设计是为了便于研究,尝试新的想法,以及在翻译,总结,图像到文本,形态学等许多领域中尝试新的想法。一些公司已经证明该代码可以用于实际的工业项目中,更多关于这个github的详细信息请参阅以上链接。

四、CV&PyTorch实战

(1)pytorchvision

https://github.com/pytorch/vision):Torchvision是独立于pytorch的关于图像操作的一些方便工具库。主要包括:vision.datasets、vision.models、vision.transforms、vision.utils 几个包,安装和使用都非常简单,感兴趣的小伙伴们可以参考以上链接。

(2)OpenFacePytorch

https://github.com/thnkim/OpenFacePytorch):此github库是OpenFace在Pytorch中的实现,代码要求输入的图像要与原始OpenFace相同的方式对齐和裁剪。

(3)TorchCV

https://github.com/donnyyou/torchcv):TorchCV是一个基于PyTorch的计算机视觉深度学习框架,支持大部分视觉任务训练和部署,此github库为大多数基于深度学习的CV问题提供源代码,对CV方向感兴趣的小伙伴还在等什么?

(4)Pytorch-cnn-finetune

https://github.com/creafz/pytorch-cnn-finetune):该github库是利用pytorch对预训练卷积神经网络进行微调,支持的架构和模型包括:ResNet、DenseNet、Inception v3、VGG、SqueezeNet、AlexNet等。

(5)Pt-styletransfer

https://github.com/tymokvo/pt-styletransfer#pt-styletransfer):这个github项目是Pytorch中的神经风格转换,具体有以下几个需要注意的地方:

  • StyleTransferNet作为可由其他脚本导入的类;
  • 支持VGG(这是在PyTorch中提供预训练的VGG模型之前)
  • 可保存用于显示的中间样式和内容目标的功能
  • 可作为图像检查图矩阵的函数
  • 自动样式、内容和产品图像保存
  • 一段时间内损失的Matplotlib图和超参数记录,以跟踪有利的结果

(6)Face-alignment

https://github.com/1adrianb/face-alignment#face-recognition):Face-alignment是一个用 pytorch 实现的 2D 和 3D 人脸对齐库,使用世界上最准确的面对齐网络从 Python 检测面部地标,能够在2D和3D坐标中检测点。该github库详细的介绍了使用Face-alignment进行人脸对齐的基本流程,欢迎感兴趣的同学学习。

五、PyTorch论文推荐

(1)Google_evolution

https://github.com/neuralix/google_evolution):该论文实现了实现了由Esteban Real等人提出的图像分类器大规模演化的结果网络。在实验之前,需要我们安装好PyTorch、 Scikit-learn以及下载好CIFAR10 dataset数据集(https://www.cs.toronto.edu/~kriz/cifar.html)。

(2)PyTorch-value-iteration-networks

https://github.com/onlytailei/Value-Iteration-Networks-PyTorch):该论文基于作者最初的Theano实现和Abhishek Kumar的Tensoflow实现,包含了在PyTorch中实现价值迭代网络(VIN)。Vin在NIPS 2016年获得最佳论文奖。

(3)Pytorch Highway

https://github.com/kefirski/pytorch_Highway):Highway Netowrks是允许信息高速无阻碍的通过各层,它是从Long Short Term Memory(LSTM)recurrent networks中的gate机制受到启发,可以让信息无阻碍的通过许多层,达到训练深层神经网络的效果,使深层神经网络不在仅仅具有浅层神经网络的效果。该论文是Highway network基于Pytorch的实现。

(4)Pyscatwave

https://github.com/edouardoyallon/pyscatwave):Cupy/Pythorn的散射实现。散射网络是一种卷积网络,它的滤波器被预先定义为子波,不需要学习,可以用于图像分类等视觉任务。散射变换可以显著降低输入的空间分辨率(例如224x224->14x14),且双关功率损失明显为负。

(5)Pytorch_NEG_loss

https://github.com/kefirski/pytorch_NEG_loss):该论文是Negative Sampling Loss的Pytorch实现。Negative Sampling是一种求解word2vec模型的方法,它摒弃了霍夫曼树,采用了Negative Sampling(负采样)的方法来求解,本论文是对Negative Sampling的loss函数的研究,感兴趣的小伙伴可点击上方论文链接学习。

(6)Pytorch_TDNN

https://github.com/kefirski/pytorch_TDNN):该论文是对Time Delayed NN的Pytorch实现。论文详细的讲述了TDNN的原理以及实现过程。

六、PyTorch书籍推荐

相较于目前Tensorflow类型的书籍已经烂大街的状况,PyTorch类的书籍目前已出版的并没有那么多,笔者给大家推荐我认为还不错的四本PyTorch书籍。

  • 《深度学习入门之PyTorch》,电子工业出版社,作者:廖星宇。这本《深度学习入门之PyTorch》是所有PyTorch书籍中出版的相对较早的一本,作者以自己的小白入门深度学习之路,深入浅出的讲解了PyTorch的语法、原理以及实战等内容,适合新手的入门学习。但不足的是,书中有很多不严谨以及生搬硬套的地方,需要读者好好甄别。
    推荐指数:★★★
  • 《PyTorch深度学习》,人民邮电出版社,作者:王海玲、刘江峰。该书是一本英译书籍,原作者是两位印度的大佬,该书除了PyTorch基本语法、函数外,还涵盖了ResNET、Inception、DenseNet等在内的高级神经网络架构以及它们的应用案例。该书适合数据分析师、数据科学家等相对有一些理论基础和实战经验的读者学习,不太建议作为新手的入门选择。
    推荐指数:★★★
  • 《深度学习框架PyTorch入门与实践》,电子工业出版社,作者:陈云。这是一本2018年上市的PyTorch书籍,包含理论入门和实战项目两大部分,相较于其它同类型书籍,该书案例非常的翔实,包括:Kaggle竞赛中经典项目、GAN生成动漫头像、AI滤镜、RNN写诗、图像描述任务等。理论+实战的内容设置也更适合深度学习入门者和从业者学习。
    推荐指数:★★★★
  • 《PyTorch机器学习从入门到实战》,机械工业出版社,作者:校宝在线、孙琳等。该书同样是一本理论结合实战的Pytorch教程,相较于前一本入门+实战教程,本书的特色在于关于深度学习的理论部分讲的非常详细,后边的实战项目更加的综合。总体而言,本书也是一本适合新手学习的不错的PyTorch入门书籍。
    推荐指数:★★★

新手如何入门pytorch?的更多相关文章

  1. GitHub新手快速入门日常操作流程

    GitHub新手快速入门日常操作流程 1. 注册帐号 打开https://github.com/,填写注册信息并提交. 2. 登录帐号 打开https://github.com/login,输入注册的 ...

  2. Django2.1新手图文入门教程

    第一个django Web Django2.1新手图文入门教程 http://www.liujiangblog.com/blog/36/

  3. Sql Server新手学习入门

    Sql Server新手学习入门 http://www.tudou.com/home/_117459337

  4. 60 分钟极速入门 PyTorch

    2017 年初,Facebook 在机器学习和科学计算工具 Torch 的基础上,针对 Python 语言发布了一个全新的机器学习工具包 PyTorch. 因其在灵活性.易用性.速度方面的优秀表现,经 ...

  5. 如何入门Pytorch之三:如何优化神经网络

    在上一节中,我们介绍了如何使用Pytorch来搭建一个经典的分类神经网络.一般情况下,搭建完模型后训练不会一次就能达到比较好的效果,这样,就需要不断的调整和优化模型的各个部分.从而引出了本文的主旨:如 ...

  6. 如何入门Pytorch之二:如何搭建实用神经网络

    上一节中,我们介绍了Pytorch的基本知识,如数据格式,梯度,损失等内容. 在本节中,我们将介绍如何使用Pytorch来搭建一个经典的分类神经网络. 搭建一个神经网络并训练,大致有这么四个部分: 1 ...

  7. 如何入门Pytorch之一:Pytorch基本知识介绍

    前言 PyTorch和Tensorflow是目前最为火热的两大深度学习框架,Tensorflow主要用户群在于工业界,而PyTorch主要用户分布在学术界.目前视觉三大顶会的论文大多都是基于PyTor ...

  8. Django新手图文入门教程

    版权所有,转载需注明来源! 本文是广受大家欢迎的<Django1.10新手图文入门教程>的2.1版本升级篇,原1.10版本传送门点击我 本文面向有一些的Python基础,但刚接触web框架 ...

  9. PDF.NET SOD 开源框架红包派送活动 && 新手快速入门指引

    一.框架的由来  快速入门 有关框架的更多信息,请看框架官方主页! 本套框架的思想是借鉴Java平台的Hibernate 和 iBatis 而来,兼有ORM和SQL-MAP的特性,同时还参考了后来.N ...

随机推荐

  1. ajax提交异常解决

    一.遇到的问题 在项目中使用ajax提交表单失败,并且后台程序都没有执行,分析具体问题是由于post表单时contenttype的类型不一致. 二.解决方式 $.ajax({ type: 'post' ...

  2. python类中的__str__以及__repr__

    一.__str__ 打印时触发 class A: def __str__(self): #打印时候执行的代码块 return 'ok' # 如果不返回字符串类型,则会报错 print(A()) #相当 ...

  3. vue单页面应用加入百度统计

    版权声明:本文为CSDN博主「钟文辉」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明.原文链接:https://blog.csdn.net/qq_39753974/a ...

  4. R_数据视觉化处理_初阶_02

    通过数据创建一幅简单的图像, #Crate a easy photopdf("mygraph.pdf") attach(mtcars) plot(wt,mpg) abline(lm ...

  5. 使用swap扩展内存

    当系统在内存不够用的时,新建一个swap文件,这个文件可以把内存中暂时不用的传输到对应的swap文件上,相当于扩展了内存的大小,具体使用方法如下: swap文件可以自己选择放在哪里,自己新建一个对应的 ...

  6. JavaScript常用节点类型

    一.常用节点类型: nodeType:节点类型 nodeName:节点名称 nodeValue:节点值 1.查看节点类型(控制台操作): 获取元素:var p = document.getElemen ...

  7. table固定宽度与自动宽度

    table-layout:auto(创建的table默认是此布局模式): 对table和td.th指定的宽度无效,浏览器会计算所有单元格的内容宽度才能得出一列宽度 如果想对单元格的内容自动折行需使用w ...

  8. 使用 JS 来动态操作 css ,你知道几种方法?

    JavaScript 可以说是交互之王,它作为脚本语言加上许多 Web Api 进一步扩展了它的特性集,更加丰富界面交互的可操作性.这类 API 的例子包括WebGL API.Canvas API.D ...

  9. Git Git 已被其他开发删除的远程分支,本地依旧显示,如何删除?

  10. 元组和range

    元组 只读列表,不支持增 删 改:但是元组里的列表可以增删改 元组其实就是通过逗号(,)设定的,和小括号并没有什么必然的关系,所以当元组只有一个元素的时候,需要在元素后加个逗号 存储大量数据,有序.不 ...