PyTorch基础练习

初识pytorch

PyTorch是一个开源的Python机器学习库,基于Torch,用于自然语言处理等应用程序,是目前最火热的深度学习框架之一(此外还有Tensorflow、Apache SystemML等)。

一、环境配置

我使用的是谷歌的 Colab,它是一个 Jupyter 笔记本环境,已经默认安装好 pytorch,不需要进行任何设置就可以使用,并且完全在云端运行。使用方法可以参考 Rogan 的博客:https://www.cnblogs.com/lfri/p/10471852.html

二、PyTorch 之 tensor(张量)理解

个人理解是,PyTorch框架下,所有的数据都以tensor作为单位(容器)来存储和和运算,而PyTorch相较于Tensorflow或其它框架的特点和优势也是以tensor为基本单位,再泛化(不知道这样讲对不对,我是这样理解的)到variable和nn.Module这些层次,三个抽象之间联系紧密,可以同时进行修改和操作。

tensor的基础练习

import torch
#创建一个3*2的随机矩阵
x = torch.rand(3,2)
print(x)

tensor([[0.8513, 0.7758],
[0.2938, 0.2522],
[0.3958, 0.5396]])

#x置零,并用x新建张量y,如果这里不指定类型,y会继承x的类型
x = torch.zeros(3,2, dtype = torch.long)
y = x.new_ones(3,2, dtype = torch.double)
print(y)

tensor([[1., 1.],
[1., 1.],
[1., 1.]], dtype=torch.float64)

#张量的简单运算与使用
z = x + y
print(z)
z = z + 1
print(z)

tensor([[1., 1.],
[1., 1.],
[1., 1.]], dtype=torch.float64)
tensor([[2., 2.],
[2., 2.],
[2., 2.]], dtype=torch.float64)

#直接从数据构造张量
x = torch.tensor([1, 1.2])
print(x)

tensor([1.0000, 1.2000])

#访问方式,下标访问和索引
x = torch.rand(5,5)
print(x)
print(x[1,3])
print(x[:,1])

ensor([[0.0236, 0.8149, 0.5428, 0.1930, 0.9221],
[0.5929, 0.2634, 0.7653, 0.0631, 0.5798],
[0.8886, 0.9409, 0.6921, 0.1759, 0.2561],
[0.9100, 0.5099, 0.0211, 0.7106, 0.7640],
[0.0055, 0.5049, 0.4479, 0.0751, 0.2313]])
tensor(0.0631)
tensor([0.8149, 0.2634, 0.9409, 0.5099, 0.5049])

参考博客

https://blog.csdn.net/believe448/article/details/89059412
https://blog.csdn.net/bestrivern/article/details/89433023

动手学习深度学习是理解和掌握深度学习的重要途径之一。PyTorch作为一个开源的深度学习框架,具有易用性和灵活性,适合初学者入门。下面我将介绍一些练习方法,帮助大家动手学习PyTorch。 首先,学习PyTorch基础知识是必要的。可以通过阅读官方文档、教程和书籍等方式学习PyTorch的基本概念、操作和函数等知识点,了解它的使用方法和语法规则。 其次,可以通过实践来深入理解和掌握PyTorch。可以选择一些经典的深度学习模型,如卷积神经网络(CNN)、递归神经网络(RNN)等,利用PyTorch的功能实现这些模型。可以从模型的搭建、训练和评估等方面入手,逐步掌握PyTorch的使用方法和技巧。 此外,实践过程可以使用一些已有的深度学习数据集,如MNIST手写数字数据集、CIFAR-10图像分类数据集等,用于模型的训练和测试。可以通过探索不同数据集的使用方法,了解数据预处理、批量处理和加载等操作。 同时,还可以学习PyTorch的一些常用模块和函数,如优化器(Optimizer)、损失函数(Loss Function)等,了解它们的作用和使用方法,并在实践尝试不同的组合和调节,优化模型的训练效果。 最后,还可以参与一些开源项目或者比赛,与其他开发者共同学习和交流。可以从官方论坛、GitHub等平台获取一些有趣的项目,尝试运行和优化,加深对PyTorch的理解和运用能力。 总之,动手学习PyTorch的方式是最有效的方式之一。通过实践,可以深入理解深度学习的原理和PyTorch的使用方法,提升自己的编程能力和解决实际问题的能力。希望以上的建议对大家有所帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值