目录:

  • PyTorch学习教程、手册

  • PyTorch视频教程

  • PyTorch项目资源

         - NLP&PyTorch实战

         - CV&PyTorch实战

  • PyTorch论文推荐

  • 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存储库包含两部分:

  • torchText.data:文本的通用数据加载器、抽象和迭代器(包括词汇和词向量)

  • torchText.datasets:通用NLP数据集的预训练加载程序

我们只需要通过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各类学习资源,非常适合新手入门。如果大家想了解AI行业最新动态,学习更多深度学习、机器学习知识,欢迎关注我们的公众号:磐创AI

Github地址:https://github.com/INTERMT/Awesome-PyTorch-Chinese

欢迎关注磐创博客资源汇总站:

http://docs.panchuang.net/

欢迎关注PyTorch官方中文教程站:

http://pytorch.panchuang.net/

新手必备 | 史上最全的PyTorch学习资源汇总的更多相关文章

  1. 【干货】史上最全的Tensorflow学习资源汇总

    欢迎大家关注我们的网站和系列教程:http://www.tensorflownews.com/,学习更多的机器学习.深度学习的知识! 作者:AI小昕 在之前的Tensorflow系列文章中,我们教大家 ...

  2. 痞子衡嵌入式:史上最强ARM Cortex-M学习资源汇总(持续更新中...)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是ARM Cortex-M学习资源. 类别 资源 版本 短评 官方汇总 cortex-m-resources / ARM公司专家Josep ...

  3. 吐血总结|史上最全的MySQL学习资料!!

    在日常工作与学习中,无论是开发.运维.还是测试,对于数据库的学习是不可避免的,同时也是日常工作的必备技术之一.在互联网公司,开源产品线比较多,互联网企业所用的数据库占比较重的还是MySQL. 在刚刚出 ...

  4. 如何能快速的成为一个年薪20万的Java程序员,你都需要具备哪些技术?史上最全的java学习路线!

    看好了,绝对不是单纯的初级视频,一个朋友在某机构学习,把每天老师讲课的视频代码和笔记全部整理出来了,需要的抓紧时间联系我! 一级目录截图   其中还包含时下最火的分布式和外服务的技术哦,请看07和08 ...

  5. 史上最全的SpringMVC学习笔记

    SpringMVC学习笔记---- 一.SpringMVC基础入门,创建一个HelloWorld程序 1.首先,导入SpringMVC需要的jar包. 2.添加Web.xml配置文件中关于Spring ...

  6. (史上最全的ios源码汇总)

    按钮类         按钮 Drop Down Control         http://www.apkbus.com/android-106661-1-1.html 按钮-Circular M ...

  7. python学习教程,史上最全面的python学习路线图

    Python 是Web 开发.游戏脚本.计算机视觉.物联网管理和机器人开发的主流语言之一,随着Python用户可以预期的增长,它还有机会在多个领域里登顶.Python学习路线分享给你. 阶段一是Pyt ...

  8. 史上最全的Python学习现线路视频教程(转)

    首先,由于各方面压力,不得不学习现在的主流技术,深度学习,人工智能,机器学习各方面的,python又重新的进入了更多的程序猿的圈子,原以为java就差不多可以干到退休了,但是没办法,学....已经成功 ...

  9. 史上最全的 Java 新手问题汇总

    史上最全的 Java 新手问题汇总   Java是目前最流行的编程语言之一——它可以用来编写Windows程序或者是Web应用,移动应用,网络程序,消费电子产品,机顶盒设备,它无处不在. 有超过30亿 ...

随机推荐

  1. Flutter调研(1)-Flutter基础知识

    工作需要,因客户端有部分页面要使用flutter编写,需要QA了解一下flutter相关知识,因此,做了flutter调研,包含安装,基础知识与demo编写,第二部分是安装与环境配置. —— Flut ...

  2. Ⅱ:python入门

    一.编程语言介绍 编程语言的分类: 机器语言 汇编语言 高级语言(编译型.解释型号) 总结: 执行效率:机器语言>汇编语言>高级语言(编译型>解释型) 开发效率:机器语言<汇编 ...

  3. volatile和synchronized到底啥区别?多图文讲解告诉你

    你有一个思想,我有一个思想,我们交换后,一个人就有两个思想 If you can NOT explain it simply, you do NOT understand it well enough ...

  4. Django开发框架知识点

    一.什么是web服务器(了解) 当我们在浏览器输入URL后,浏览器会先请求DNS服务器,获得请求站点的 IP 地址.然后发送一个HTTP Request(请求)给拥有该 IP 的主机,接着就会接收到服 ...

  5. 使用VMware12在CentOS7上部署docker实例

    今天下午算是自己搞了一下午才搞出来,对于认为linux是自己死穴的我,现在能搞出来,心里滋味不是一丢丢,哈哈~~~ 算了,废话不多说,直接上图!步骤如下: 1.在安装好VMware12并安装好了cen ...

  6. iPhone UIButton图标与文字间距设置【转】

    UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(50, 50, 150, 50)]; [button setTitle:@& ...

  7. 编译putty 源码去掉 Are you sure you want to close this session? 提示

    0, 为什么要编译 putty ?在关闭窗口的时候,会弹出一个 Are you sure you want to close this session?要把这个去掉.当然也可以用 OD 之类的来修改. ...

  8. django 从零开始 6 数据库模型增删改查

    这些都是凭记忆写下的,有些会漏掉,在之后的笔记中会写 和flask query不同,django是使用objects进行一个查询 查询 单条记录 django 模型.bojects.get(查询的字段 ...

  9. Simulink仿真入门到精通(十八) TLC语言

    TLC(Target Language Compiler)是一种为转换为目标语言而存在的额解释性语言,其目的就是将模型中编译出来的rtw文件转换为目标代码(C/C++等).与M语言类似,既可以写成脚本 ...

  10. C++ 结构体sturct练习

    #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> struct Student { ];// 姓名 int id; //id int a ...