189 8069 5689

torch.mean()和torch.pow()怎么使用

本篇内容主要讲解“torch.mean()和torch.pow()怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“torch.mean()和torch.pow()怎么使用”吧!

站在用户的角度思考问题,与客户深入沟通,找到永平网站设计与永平网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站设计、成都做网站、企业官网、英文网站、手机端网站、网站推广、空间域名、虚拟主机、企业邮箱。业务覆盖永平地区。

torch.randn()

产生大小为指定的,正态分布的采样点,数据类型是tensor

torch.mean()

torch.mean(input) 输出input 各个元素的的均值,不指定任何参数就是所有元素的算术平均值,指定参数可以计算每一行或者 每一列的算术平均数

例如:

a=torch.randn(3) #生成一个一维的矩阵

b=torch.randn(1,3) #生成一个二维的矩阵

print(a)

print(b)

torch.mean(a)

结果:

tensor([-1.0737, -0.8689, -0.9553])
tensor([[-0.4005, -0.6812,  0.0958]])

tensor(-0.9659)

如果指定参数的话,

a=torch.randn(4,4)

print(a)

c=torch.mean(a,dim=0,keepdim=True)

print(c)

d=torch.mean(a,dim=1,keepdim=True)

print(d)

结果:

tensor([[ 0.2378, -1.1380,  0.7964, -0.1413],
        [ 0.4622, -1.7003, -1.1628,  0.8930],
        [-2.0379, -1.7137,  0.6423, -0.2026],
        [ 0.3512, -0.1251, -0.8315,  2.2642]])

tensor([[-0.2467, -1.1693, -0.1389,  0.7033]])

tensor([[-0.0612],
        [-0.3770],
        [-0.8280],
        [ 0.4147]])

可以看到dim指定为1时,求得是行的平均值,指定为0时,求得是列的平均值。

torch.pow()

对输入的每分量求幂次运算

a=torch.tensor(3)

b=torch.pow(a,2)

print(b)

c=torch.randn(4)

print(c)

d=torch.pow(c,2)

print(d)

结果:

tensor(9)
tensor([ 0.0923,  0.7006, -0.2963,  0.6543])
tensor([0.0085, 0.4909, 0.0878, 0.4282])

torch.matmul()

torch.matmul 是做矩阵乘法

例如:

a=torch.tensor([1,2,3])

b=torch.tensor([3,4,5])

torch.matmul(a, b)

结果:

tensor(26)

torch.ones_like()

torch.ones_like(input, dtype=None, layout=None, device=None, requires_grad=False) → Tensor

返回一个填充了标量值1的张量,其大小与之相同 input。

我是在Pytorch自动求导中第一次发现此方法的,

例如:

import torch

from torch.autograd import Variable

m = Variable(torch.FloatTensor([[2, 3]]), requires_grad=True) # 构建一个 1 x 2 的矩阵

n = Variable(torch.zeros(1, 2)) # 构建一个相同大小的 0 矩阵

print(m)

print(n)

# 通过 m 中的值计算新的 n 中的值

n[0, 0] = m[0, 0] ** 2

n[0, 1] = m[0, 1] ** 3

print(n[0,0])

print(n)

结果:

tensor([[2., 3.]], requires_grad=True)
tensor([[0., 0.]])
tensor(4., grad_fn=)
tensor([[ 4., 27.]], grad_fn=)
n.backward(torch.ones_like(n))

# 相当于n.backward(torch.FloatTensor([[1,1]]))

print(m.grad)

结果:

tensor([[ 4., 27.]])

到此,相信大家对“torch.mean()和torch.pow()怎么使用”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!


文章名称:torch.mean()和torch.pow()怎么使用
URL地址:http://cdxtjz.cn/article/peipod.html

其他资讯