线性代数(标量与向量+矩阵与张量+矩阵求导)

标量与向量




python 复制代码
import numpy as np

#定义向量
x = np.array([2,5,8])
print(x)
print(x.shape)

#向量转置
print(x.T)
print(x.t.shape)

y = np.array([1,3,7])
# 向量相乘  [2,15,56]
print(x * y)

# 向量点乘,或者np.dot(x,y)    73
print(x.dot(y))

# python3.5之后用@符号
print(x @ y)
python 复制代码
#计算范数
l0_norm = np.linalg.norm(x,ord=0) #3.0

l1_norm = np.linalg.norm(x,ord=1) # 15.0

l2_norm = np.linalg.norm(x,ord=2) #

矩阵与张量






python 复制代码
import numpy as np

A = np.array([[1,2,3],[4,5,6]])
B = np.array([[1,3,7],[5,0,2]])

print(A)
print(A.shape)

#矩阵与矩阵相乘(对应位置元素相乘,哈达玛积)
print(A * B)

#矩阵乘法
print(A.dot(B))
print(A.dot(B.T))

print(A @ B.T)

# 求逆
C = np.array([[1,2],[3,5]])
C_inv = np.linalg.inv(C)

print(C.dot(C_inv))
print(C_inv.dot(C))
C_inv = np.around(C_inv).astype(int)


# 向量化
print(A.flatten())

# 矩阵内积
print("<A,B> = ",np.sum(A*B))
print("<A,B> = ",np.dot(A.flatten(),B.flatten()))

#克罗内克积
print(np.kron(A,B))





python 复制代码
# 定义张量
tensor = np.array([[1,2,3],[4,5,6]],[[7,8,9],[10,11,12]])
print(tensor)
print(tensor.shape) #两个矩阵,每个矩阵是2*3

矩阵求导






python 复制代码
#计算梯度
f = np.array([1,2,4,7,11,16])
np.gradient(f)
相关推荐
ednO8nqdR2 分钟前
Python小游戏制作:如何实现可配置的跨分辨率界面布局
python·plotly·django·virtualenv·scikit-learn·fastapi·pygame
林泽毅10 分钟前
Qwen3.5 DPO 模型对齐实战(pytrio训练版)
人工智能·python·算法
荣码16 分钟前
LangGraph多步工作流:Agent不够用的时候,我踩了4个坑
java·python
曲幽24 分钟前
从卡顿到丝滑:FastAPI 调用外部 API 的正确姿势(httpx 实战)
python·fastapi·web·async·httpx·client·await·requests·aiohttp
不瘦80斤不改名42 分钟前
HalfCart:基于LBS的1\.5km本地拼单系统全栈实践与踩坑复盘
python·docker·typescript·pycharm
深盾科技_Virbox1 小时前
软件交付保护如何从加壳走向代码虚拟化
java·python·安全
YUS云生2 小时前
Python学习笔记·第28天:Git入门——版本控制与基础操作
笔记·python·学习
Bryce学亮2 小时前
1688 半自动化拟人浏览信息处理工具爬虫
爬虫·python
是枚小菜鸡儿吖2 小时前
服务器出问题别等用户反馈:用Python和钉钉搭一套轻量告警系统
服务器·python·钉钉
聪明的一休丶12 小时前
VLLM v0.24.0 版本深度解析:新引擎、新架构与大规模服务全家桶升级
python·架构·vllm