线性代数学习

1.标量由只有一个元素的张量表示

import torch

x = torch.tensor([3,0])
y = torch.tensor([2,0])

x + y, x * y, x / y, x**y

2.可以将向量视为标量值组成的列表

x = torch.arange(4)
x

3.通过张量的索引访问任一元素

x[3]

4.访问张量长度

len(x)

5.只有一个轴的张量,形状只有一个元素

x.shape

6.通过指定两个分量m和n创建形状为m×n的矩阵

A = torch.arange(20).reshape(5,4)

A

7.矩阵的转置

A.T

8.对称矩阵(symmetric matrix)

B = torch.tensor([[1,2,3],[2,0,4],[3,4,5]])
B
B == B.T

9.向量是标量的推广,矩阵是向量的推广,可以构建更多轴的数据结构

X = torch.arange(24).reshape(2, 3, 4)
X

10.给定具有相同形状的任何两个张量,任何按元素二元运算的结果都将是相同形状的张量

A = torch.arange(20, dtype=torch.float32).reshape(5, 4)
B = A.clone()
A, A + B

11.两个矩阵的按元素乘法称为哈达玛积(Hadamard product)

A * B
a = 2
X = torch.arange(24).reshape(2, 3, 4)
a + X, (a * X).shape

12.计算元素和

x = torch.arange(4, dtype=torch.float32)
x, x.sum()

13.表示任意形状张量的元素和

A.shape, A.sum()
A = torch.arange(20*2).reshape(2, 5, 4)
A.shape, A.sum()

14.指定求和汇总张量的轴

A_sum_axis0 = A.sum(axis=0)
A_sum_axis0, A_sum_axis0.shape
A_sum_axis1 = A.sum(axis=1)
A_sum_axis1, A_sum_axis1.shape
A.sum(axis=[0, 1])

15.一个与求和相关的量是平均值(mean/average)

A = A.float()
A.mean(), A.sum() / A.numel()
A.mean(axis=0),A.sum(axis=0) / A.shape[0]

16.计算总和或均值时保持轴数不变

sum_A = A.sum(axis=1, keepdim=True)
print(sum_A)

17.通过广播将A除以sum_A

A / sum_A

18.某个轴计算A元素的累积求和

A.cumsum(axis=0)

19.点积是相同位置的按元素乘积的和

y = torch.ones(4, dtype=torch.float32)
x, y, torch.dot(x, y)

20.可以通过执行按元素乘法,然后进行求和来表示两个向量的点积

torch.sum(x * y)
u = torch.tensor([3.0, -4.0])
torch.norm(u)
torch.abs(u).sum()
torch.norm(torch.ones((4, 9)))
相关推荐
梧桐树04291 分钟前
python常用内建模块:collections
python
Dream_Snowar9 分钟前
速通Python 第三节
开发语言·python
海棠AI实验室25 分钟前
AI的进阶之路:从机器学习到深度学习的演变(一)
人工智能·深度学习·机器学习
南宫生1 小时前
力扣-图论-17【算法学习day.67】
java·学习·算法·leetcode·图论
sanguine__1 小时前
Web APIs学习 (操作DOM BOM)
学习
IT古董1 小时前
【机器学习】机器学习的基本分类-强化学习-策略梯度(Policy Gradient,PG)
人工智能·机器学习·分类
四口鲸鱼爱吃盐1 小时前
Pytorch | 从零构建GoogleNet对CIFAR10进行分类
人工智能·pytorch·分类
蓝天星空1 小时前
Python调用open ai接口
人工智能·python
睡觉狂魔er1 小时前
自动驾驶控制与规划——Project 3: LQR车辆横向控制
人工智能·机器学习·自动驾驶
jasmine s2 小时前
Pandas
开发语言·python