Pytorch学习笔记(一)

第一周Pytorch的安装及张量相关内容

一、Pytorch的安装

参考 https://blog.csdn.net/qq_35350209/article/details/93778807的文章哦!
注意在安装时,使用命令:conda install pytorch torchvision cudatoolkit=10.0,最好不要使用原来的命令,基本安装不上!!!!

二、张量

1、张量简介(花书)

(1)标量

一个标量就是是一个数单独的数,如1就是一个标量。通常用斜体表示标量。

(2)向量

一个向量就是一列数,这些数是有序排列的,通过索引我们可以得到每一个单独的数,通常由粗体的小写变量名表示。

(3)矩阵

矩阵是一个二维数组,其中的每一个具体的元素由两个索引所确定,通常用粗体的大写变量名表示。

(4)张量

一般的,一个数组中的元素分布在若干维的规则网格中,称作张量。简单理解为:若数组的维度大于2维,则称之为张量。

2、Pytorch中张量的创建

① 通过torch.tensor创建张量

arr = np.ones((3, 3))
    print("ndarray的数据类型:", arr.dtype)
    t = torch.tensor(arr, device='cuda')
    # t = torch.tensor(arr)
    print(t)

② 通过torch.from_numpy创建张量

### 注意内存共享
arr = np.array([[1, 2, 3], [4, 5, 6]])
    t = torch.from_numpy(arr)
    # print("numpy array: ", arr)
    # print("tensor : ", t)

③ 通过torch.zeros创建张量

# out_t = torch.tensor([1])
# t = torch.zeros((3, 3), out=out_t)
t = torch.zeros((3, 3))

④ 通过torch.full创建张量

# 创建全1的张量
t = torch.full((3, 3), 1)

⑤ 通过torch.arange创建等差数列张量

# 左闭右开
t = torch.arange(2, 10, 2)

⑥ 通过torch.linspace创建均分数列张量

t = torch.linspace(2, 10, 6)

⑦ 通过torch.normal创建正态分布张量

# mean:张量 std: 张量
# mean = torch.arange(1, 5, dtype=torch.float)
# std = torch.arange(1, 5, dtype=torch.float)
# t_normal = torch.normal(mean, std)
# print("mean:{}\nstd:{}".format(mean, std))
# print(t_normal)

# mean:标量 std: 标量
# t_normal = torch.normal(0., 1., size=(4,))
# print(t_normal)

# mean:张量 std: 标量
mean = torch.arange(1, 5, dtype=torch.float)
std = 1
t_normal = torch.normal(mean, std)
print("mean:{}\nstd:{}".format(mean, std))
print(t_normal)

#mean:标量 std: 张量
std = torch.arange(1, 5, dtype=torch.float)
mean = 1
t_normal = torch.normal(mean, std)
print("mean:{}\nstd:{}".format(mean, std))
print(t_normal)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值