深度学习预备知识

1.Tensor 张量

定义:
张量(tensor)表示一个由数值组成的数组,这个数组可能有多个维度(轴)。具有一个轴的张量对应数学上的向量,具有两个轴的张量对应数学上的矩阵,具有两个以上轴的张量目前没有特定的数学名称。

import torch

# arange创建一个行向量x,这个行向量包含以0开始的前12个整数。
x = torch.arange(12)

print("x = ",x)
# x =  tensor([ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11])

常见的属性及函数:

shape:访问张量的形状(shape,沿每个轴的长度)

print("x.shape = ",x.shape)
# x.shape =  torch.Size([12])

numel:访问张量中所有元素的数量(总个数)

print("x.numel = ",x.numel())
# x.numel =  12

reshape:改变一个张量的形状而不改变元素数量和元素值

X = x.reshape(3, 4)

print("X = ",X)
# X =  tensor([[ 0,  1,  2,  3],
#         [ 4,  5,  6,  7],
#         [ 8,  9, 10, 11]])

print("X.shape = ",X.shape)
# X.shape =  torch.Size([3, 4])

print("X.numel = ",X.numel())
# X.numel =  12

zeros:使用全0来初始化张量

y = torch.zeros((2,3,4))

print("y = ",y)
# y =  tensor([[[0., 0., 0., 0.],
#          [0., 0., 0., 0.],
#          [0., 0., 0., 0.]],
#
#         [[0., 0., 0., 0.],
#          [0., 0., 0., 0.],
#          [0., 0., 0., 0.]]])

# print("y.shape = ",y.shape)
# y.shape =  torch.Size([2, 3, 4])

ones:使用全1来初始化张量

Y = torch.ones(2,3,4)

print("Y = ",Y)
# Y =  tensor([[[1., 1., 1., 1.],
#          [1., 1., 1., 1.],
#          [1., 1., 1., 1.]],
#
#         [[1., 1., 1., 1.],
#          [1., 1., 1., 1.],
#          [1., 1., 1., 1.]]])

randn:每个元素都从均值为0、 标准差为1的标准高斯分布(正态分布)中随机取样

z = torch.randn(3,4)

print("z = ",z)
# z =  tensor([[ 0.3372,  0.3380,  0.5931, -1.1368],
#         [-0.4481, -0.0213, -1.6283, -1.0876],
#         [-1.1692,  0.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值