pytorch工具——认识pytorch

这篇具有很好参考价值的文章主要介绍了pytorch工具——认识pytorch。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

pytorch的基本元素操作

from __future__ import print_function
import torch

创建一个没有初始化的矩阵

x=torch.empty(5,3)
print(x)

pytorch工具——认识pytorch,pytorch解决nlp,pytorch,人工智能,python

创建一个有初始化的矩阵

x=torch.rand(5,3)
print(x)

pytorch工具——认识pytorch,pytorch解决nlp,pytorch,人工智能,python

pytorch工具——认识pytorch,pytorch解决nlp,pytorch,人工智能,python

创建一个全0矩阵并可指定数据元素类型为long

x=torch.zeros(5,3,dtype=torch.long)
print(x)

pytorch工具——认识pytorch,pytorch解决nlp,pytorch,人工智能,python

直接通过数据创建张量

x=torch.tensor([2,5,3,5])
print(x)

pytorch工具——认识pytorch,pytorch解决nlp,pytorch,人工智能,python

通过已有的一个张量创建相同尺寸的新张量

x=x.new_ones(5,3,dtype=torch.double)
print(x)

pytorch工具——认识pytorch,pytorch解决nlp,pytorch,人工智能,python

利用randn_like方法得到相同尺寸张量,并且采用随机初始化的方法为其赋值

y=torch.randn_like(x,dtype=torch.float)
print(y)

pytorch工具——认识pytorch,pytorch解决nlp,pytorch,人工智能,python

采用.size()方法来得到张量的形状

print(x.size())

pytorch工具——认识pytorch,pytorch解决nlp,pytorch,人工智能,python

加法

第一种方法

x=torch.randn(5,3)
y=torch.randn(5,3)
print(x+y)

第二种方法

print(torch.add(x,y))

第三种方法

result=torch.empty(5,3)
torch.add(x,y,out=result)
print(result)

第四种方式:原地置换(执行的是y=y+x)

y.add_(x)
print(y)

pytorch工具——认识pytorch,pytorch解决nlp,pytorch,人工智能,python
注意
pytorch工具——认识pytorch,pytorch解决nlp,pytorch,人工智能,python

切片操作

x[:,1]

pytorch工具——认识pytorch,pytorch解决nlp,pytorch,人工智能,python

改变张量的形状

x=torch.randn(4,4)
y=x.view(16)
z=x.view(-1,8)
x.size(),y.size(),z.size()

pytorch工具——认识pytorch,pytorch解决nlp,pytorch,人工智能,python

如果张量中只有一个元素,可以用item()将值取出,作为一个python number

x=torch.randn(1)
print(x,x.item())

pytorch工具——认识pytorch,pytorch解决nlp,pytorch,人工智能,python

torch tensor和numpy array之间的互相转换

a=torch.ones(5)
b=a.numpy()
a.add_(1)
print(a,b)

pytorch工具——认识pytorch,pytorch解决nlp,pytorch,人工智能,python

import numpy as np
a=np.ones(5)
b=torch.from_numpy(a)
np.add(a,1,out=a)
print(a,b)

pytorch工具——认识pytorch,pytorch解决nlp,pytorch,人工智能,python
注意
pytorch工具——认识pytorch,pytorch解决nlp,pytorch,人工智能,python

关于cuda tensor:tensor可以用.to()方法将其移动到任意设备上

windows
pytorch工具——认识pytorch,pytorch解决nlp,pytorch,人工智能,python
mac文章来源地址https://www.toymoban.com/news/detail-599690.html

if torch.backends.mps.is_available():
    device=torch.device('mps')
    #cpu上创建x,gpu上创建y
    x=torch.randn(1)
    y=torch.ones_like(x,device=device)
    x=x.to(device)
    #此时x,y都在gpu上
    z=x+y
    print(z)
    #再将z转移到cpu上
    print(z.to('cpu',torch.float32))

到了这里,关于pytorch工具——认识pytorch的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包