带你少走弯路:强烈推荐的Pytorch快速入门资料和翻译(可下载)

上次写了TensorFlow的快速入门资料,受到很多好评,读者强烈建议我出一个pytorch的快速入门路线,经过翻译和搜索网上资源,我推荐3份入门资料,希望对大家有所帮助。

备注:TensorFlow的快速入门资料

很负责任地说:看完这些资料,Pytorch基本入门了,接下来碰到问题能自己查资料解决了!(本文作者:黄海广)

推荐资料

1.PyTorch 深度学习:60分钟快速入门(官网翻译)

PyTorch 深度学习:60分钟快速入门”为PyTorch官网教程,网上已经有部分翻译作品,随着PyTorch1.0版本的公布,这个教程有较大的代码改动,本人对教程进行重新翻译,并测试运行了官方代码,制作成Jupyter Notebook文件(中文注释)在github予以公布。

本文内容较多,可以在线学习,如果需要本地调试,请到github下载:

https://github.com/fengdu78/Data-Science-Notes/tree/master/8.deep-learning/PyTorch_beginner

此教程为翻译官方地址:

https://pytorch.org/tutorials/beginner/deep_learning_60min_blitz.html

作者:Soumith Chintala

本教程的目标:

  • 在高层次上理解PyTorch的张量(Tensor)库和神经网络

  • 训练一个小型神经网络对图像进行分类

  • 本教程假设您对numpy有基本的了解

注意:务必确认您已经安装了 torch 和 torchvision 两个包。

目录

  • 一、Pytorch是什么?

  • 二、AUTOGRAD

  • 三、神经网络

  • 四、训练一个分类器

  • 五、数据并行

图:翻译截图

2.PyTorch 中文手册(pytorch handbook)(github标星7900+)

资源地址:

https://github.com/zergtant/pytorch-handbook

这是一本开源的书籍,目标是帮助那些希望和使用PyTorch进行深度学习开发和研究的朋友快速入门。我试了一下里面的ipynb代码,非常全面,值得推荐。

资源目录:

第一章 :PyTorch入门

第一节 PyTorch 简介

第二节 PyTorch 环境搭建

第三节 PyTorch 深度学习:60分钟快速入门(官方)

张量

Autograd:自动求导

神经网络

训练一个分类器

选读:数据并行处理(多GPU)

4.相关资源介绍

第二章 : 基础

第一节 PyTorch 基础

张量

自动求导

神经网络包nn和优化器optm

数据的加载和预处理

第二节 深度学习基础及数学原理

深度学习基础及数学原理

第三节 神经网络简介

神经网络简介

第四节 卷积神经网络

卷积神经网络

第五节 循环神经网络

循环神经网络

第三章 : 实践

第一节 logistic回归

logistic回归二元分类

第二节 CNN:MNIST数据集手写数字识别

CNN:MNIST数据集手写数字识别

第三节 RNN实例:通过Sin预测Cos

RNN实例:通过Sin预测Cos

第四章 : 提高

第一节 Fine-tuning

Fine-tuning

第二节 可视化

visdom

tensorboardx

可视化理解卷积神经网络

第三节 Fast.ai

Fast.ai

第五节 多GPU并行训练

多GPU并行计算

第五章 : 应用

第一节 Kaggle介绍

Kaggle介绍

第二节 结构化数据

第三节 计算机视觉

第四节 自然语言处理

3.Pytorch教程(github标星13600+

资源地址:

https://github.com/yunjey/pytorch-tutorial

资源介绍:

这个资源为深度学习研究人员提供了学习PyTorch的教程代码大多数模型都使用少于30行代码实现。在开始本教程之前,建议先看完Pytorch官方教程。(大部分教程是PyTorch0.4实现的,代码与1.0+稍微有点不同,总体影响不大)

配置环境:

python 2.7或者3.5以上,pytorch 0.4

资源目录:

1.基础知识

  • PyTorch基础知识

  • 线性回归

  • Logistic回归

  • 前馈神经网络

2.中级

  • 卷积神经网络

  • 深度残差网络

  • 递归神经网络

  • 双向递归神经网络

  • 语言模型(RNN-LM)

3.高级

  • 生成性对抗网络

  • 变分自动编码器

  • 神经风格转移

  • 图像字幕(CNN-RNN)

4.工具

  • PyTorch中的TensorBoard

暂时想到这么多,欢迎留言补充。(黄海广)

人工智能常识和干货,适合收藏

《统计学习方法》(李航)读书笔记(完结)

良心推荐:机器学习入门资料汇总及学习建议

网红少年编程书,AI自学不再难

【B站免费教程】2W 收藏!火爆 B 站的计算机科学速成教程发布,全中文版

良心推荐:机器学习入门资料汇总及学习建议(2018版)

机器学习必备宝典-《统计学习方法》的python代码实现、电子书及课件

软件下载和Python,AI,资料

【送书PDF】Python编程从入门到实践

Python从入门到精通,深度学习与机器学习资料大礼包!

【免费】某机构最新3980元机器学习/大数据课程高速下载,限量200份

长按扫码撩海归

   觉得不错, 请随意转发,麻烦点个在看!

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PyTorch 是一个基于 Python 的科学计算库,它是一个用于深度学习的框架,具有高度的灵活性和可扩展性。 以下是一个快速入门 PyTorch 的步骤: 1. 安装 PyTorch 你可以通过官方网站 https://pytorch.org/ 下载和安装 PyTorch。 2. 导入 PyTorch 在 Python 中,导入 PyTorch 的方式是: ```python import torch ``` 3. 创建 Tensor Tensor 是 PyTorch 中的核心数据结构,它类似于 NumPy 的数组,但支持 GPU 加速和自动求导。 你可以使用以下代码创建一个 2x3 的浮点型张量: ```python import torch x = torch.Tensor([[1, 2, 3], [4, 5, 6]]) print(x) ``` 输出结果为: ``` tensor([[1., 2., 3.], [4., 5., 6.]]) ``` 4. 自动求导 PyTorch 中最重要的功能之一是自动求导。你可以在 Tensor 上设置 `requires_grad=True`,然后对它进行操作,PyTorch 会自动记录操作并计算梯度。 以下是一个简单的示例: ```python import torch x = torch.randn(3, 3, requires_grad=True) y = x * 2 z = y.mean() z.backward() print(x.grad) ``` 输出结果为: ``` tensor([[0.6667, 0.6667, 0.6667], [0.6667, 0.6667, 0.6667], [0.6667, 0.6667, 0.6667]]) ``` 5. 定义模型 在 PyTorch 中,你可以通过继承 `nn.Module` 类来定义模型。你需要实现 `__init__` 和 `forward` 方法。 以下是一个简单的线性模型的示例: ```python import torch.nn as nn class LinearModel(nn.Module): def __init__(self, input_dim, output_dim): super(LinearModel, self).__init__() self.linear = nn.Linear(input_dim, output_dim) def forward(self, x): out = self.linear(x) return out ``` 6. 训练模型 在 PyTorch 中,你可以使用自定义的训练循环或使用 PyTorch 提供的训练工具来训练模型。 以下是一个简单的训练循环的示例: ```python import torch import torch.nn as nn import torch.optim as optim # 定义模型 class LinearModel(nn.Module): def __init__(self, input_dim, output_dim): super(LinearModel, self).__init__() self.linear = nn.Linear(input_dim, output_dim) def forward(self, x): out = self.linear(x) return out # 准备数据 x_train = torch.randn(100, 10) y_train = torch.randn(100, 1) # 定义模型、损失函数和优化器 model = LinearModel(10, 1) criterion = nn.MSELoss() optimizer = optim.SGD(model.parameters(), lr=0.01) # 训练模型 for epoch in range(100): # 前向传播 y_pred = model(x_train) # 计算损失函数 loss = criterion(y_pred, y_train) # 反向传播 optimizer.zero_grad() loss.backward() optimizer.step() # 输出损失函数值 print('Epoch [{}/{}], Loss: {:.4f}'.format(epoch+1, 100, loss.item())) ``` 这个训练循环会对一个具有 10 个输入和 1 个输出的线性模型进行训练,使用均方误差损失函数和随机梯度下降优化器。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值