跟着沐神学深度学习DAY1

04 数据操作 + 数据预处理【动手学深度学习v2】

z=torch.zeros_like(Y)

(1)这里zeros_like是用于创建一个与输入张量 Y 形状相同且所有元素都为0的新张量。

(2)X = X + Y是整个矩阵的操作,所以重新分配内存;X[:],和X+=,都是给X中的元素进行赋值操作,对X矩阵是没有更改的

(3)利用get_dummies(inputs,dummy_na=True)将函数的非数值空值转换为0、1的形式。

(4)reshape不改变地址,b=a.reshape(3,4),如果b发生改变,a也跟着变

05 线性代数【动手学深度学习v2】

(5)torch.dot(x,y):向量的点积。

(6)torch.mv(x,y):矩阵向量积,一个长度为m的列向量。

几种常见的范数:

(7)torch.ones () 是 PyTorch 中的一个函数,用于创建一个所有元素都填充为 1 的张量(Tensor)。该函数的主要参数包括:

  • size:定义输出张量形状的整数序列。可以是可变数量的参数或像列表或元组这样的集合。
  • out:可选,指定输出张量。
  • dtype:可选,指定返回张量的数据类型。如果为 None,则使用默认数据类型。
  • layout:可选,指定张量的布局,默认为 torch.strided
  • device:可选,指定张量所在的设备,默认为 CPU。
  • requires_grad:可选,布尔值,表示是否需要对张量进行梯度计算,默认为 False。
import torch

# 创建一个2行3列的全1张量
a = torch.ones (2, 3)
print(a)

python中按照特定轴求和

按行求和(axis=1)
result = np.sum (arr, axis=1)
print(result)  # 输出: [6 15 24]
按列求和(axis=0)
result = np.sum (arr, axis=0)
print(result)  # 输出: [12 15 18]

06 矩阵计算【动手学深度学习v2】 

(1) 标量关于列向量的导数是一个行向量。

(2) 列向量关于标量的导数,仍然为列向量。

(3)列向量关于列向量的导数为一个矩阵。

ps:帮助理解(摘自评论区):

  1. 标量求导就不说了,高中常识;
  2. y是标量,x是向量的情况。实际上就是y=f(x1,x2,...,xn)的意思。拿y=f(x1,x2)为例解释,有一个三维坐标轴体系,水平面的横轴和竖轴分别是x1、x2,立面上的轴是y,水平面上任意一个点(x1,x2)都对应y轴上的一个点,很明显这就是一个面,因此他的导数是一个向量,所以结果是横着写的。
  3. y是向量,x是标量的情况。这实际上就是【y1,y2,...,yn】=【f(x1),f(x2),...,f(xn)】,对x求导就是求出y=yi时那一个点上的斜率,是标量,所以结果是竖着写的。
  4. y、x都是向量的情况。根据上面描述,求导实际上就是求出了y=yi时,那一个平面形状边缘上的向量,因此是横着写的。

07 自动求导【动手学深度学习v2】

08 线性回归 + 基础优化算法【动手学深度学习v2】

09 Softmax 回归 + 损失函数 + 图片分类数据集【动手学深度学习v2】

  • 18
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值