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

标量与向量




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)
相关推荐
程序员龙叔10 小时前
编写高质量 Skill 系列 -- 如何设计需求分析与用例生成的 SKILL
自动化测试·软件测试·python·软件测试工程师·接口测试·性能测试·skill·ai测试
用户83562907805113 小时前
使用 Python 操作 Word 内容控件
后端·python
Bobolink_13 小时前
TikTok矩阵账号如何批量养号?工作室级运营方案分享
矩阵·内容运营·跨境电商·tik tok·账号运营
码云骑士15 小时前
32-慢查询排查全流程(下)-索引优化实战与最左前缀原则
python
闵孚龙15 小时前
《PyTorch 深度修炼》Dataset 和 DataLoader:数据如何喂给模型
人工智能·pytorch·python
goldenrolan15 小时前
A公司物料替代测试系统 v1.7:从需求到 exe/apk 的 AI 辅助全链路实践
android·自动化测试·软件测试·python·ai
菜板春16 小时前
jupyter入门-手册-特征探索
python·jupyter
Metaphor69216 小时前
使用 Python 将 PDF 转换为 HTML
python·pdf·html
极光代码工作室16 小时前
基于数据仓库的电商数据分析平台
大数据·hadoop·python·spark·数据可视化