离婚协议书模板免费下载网站建设优化排名推广
2026/3/1 12:39:40 网站建设 项目流程
离婚协议书模板免费下载,网站建设优化排名推广,手机免费制作ppt的软件下载,环球易购招聘网站建设#x1f4fa; B站视频讲解#xff08;Bilibili#xff09;#xff1a;博主个人介绍 #x1f4d8; 《Yocto项目实战教程》京东购买链接#xff1a;Yocto项目实战教程 #x1f4d8; 加博主微信#xff0c;进技术交流群#xff1a; jerrydev 线性代数学习笔记#xff…B站视频讲解Bilibili博主个人介绍《Yocto项目实战教程》京东购买链接Yocto项目实战教程加博主微信进技术交流群jerrydev线性代数学习笔记从张量到矩阵乘法与范数含例子与 PyTorch 代码目标把我们聊过的线性代数核心概念用最少的“抽象话”讲清楚是什么、怎么算、形状怎么变、代码怎么写、为什么有用。0. 常见符号与公式读法速查这一节专门把常见符号“怎么读”讲清楚。遇到公式时可以先按读法念一遍再按含义理解一遍。0.1 符号读法与含义最常用符号/写法常见读法中文含义/你应想到什么Σ西格玛sigma也叫“求和符号”把一串项加起来Σ_{i1}^n“从 i 等于 1 到 n 求和”索引 i 从 1 走到 n∈“属于”某个对象属于某个集合ℝ“实数集合”或“实数域”元素是实数ℝ^{m×n}“m 乘 n 的实矩阵”m 行 n 列元素为实数ד乘”维度里表示行列运算里表示乘法x^T/x^ op“x 转置”行列互换行向量↔列向量a_i/b_j“a 下标 i”“b 下标 j”第 i 个/第 j 个对象c_{ij}“c 下标 i j”矩阵 C 的第 i 行第 j 列元素A_{i,:}“A 下标 i 逗号冒号”A 的第 i 行整行B_{:,j}“B 下标冒号逗号 j”B 的第 j 列整列‖x‖“x 的范数”x 的大小某种度量‖x‖_2“x 的二范数”平方和开根号像长度‖x‖_1“x 的一范数”绝对值之和‖X‖_F“X 的弗罗贝尼乌斯范数”矩阵所有元素平方和开根号x“x 的绝对值”距离 0 的大小√“根号”开平方≤“小于等于”不大于α“阿尔法”常用作缩放系数0.2 形状shape的读法(m, n)读作“m 行 n 列”。A ∈ ℝ^{m×n}读作“A 属于 m 乘 n 的实矩阵”。x ∈ ℝ^{n}读作“x 属于 n 维实向量”。0.3 公式怎么念把关键结构读出来1点积公式x^T y Σ_{i1}^d x_i y_i读法“x 转置乘 y等于从 i 等于 1 到 d对 x 下标 i 乘 y 下标 i 求和。”含义对应位置相乘再相加。2矩阵乘法单个元素公式c_{ij} A_{i,:} · B_{:,j}读法“c 下标 i j等于 A 的第 i 行点乘 B 的第 j 列。”含义结果矩阵的每个格子都是“行·列”的点积。3二范数公式‖x‖_2 √(Σ_{i1}^n x_i^2)读法“x 的二范数等于根号下从 i 等于 1 到 n对 x 下标 i 的平方求和。”0.4 代码参数的读法你会经常看到axis0读作“沿 0 轴”。对矩阵来说通常是按列汇总axis1读作“沿 1 轴”。对矩阵来说通常是按行汇总keepdimsTrue读作“保持维度为真”。把被汇总的轴保留成长度 11. 从“张量/形状”开始你手里拿的到底是什么在深度学习框架里PyTorch、TensorFlow 等很多对象都叫张量tensor。标量0 维一个数例如3.14向量1 维一串数例如x [x1, x2, x3]形状([3])矩阵2 维一个表格例如A有 m 行 n 列形状([m, n])更高维张量≥3 维例如图像 batchN×C×H×W**形状shape是所有计算的“交通规则”。**你看到的错误80% 都是 shape 不匹配。1.1 轴axis怎么理解以矩阵A.shape (m, n)为例axis0沿着“行方向”汇总按列处理axis1沿着“列方向”汇总按行处理一个更直观的记法axis0→跨行把每一列的多个行元素汇总成一个axis1→跨列把每一行的多个列元素汇总成一个2. 降维sum / mean 让维度“少一截”“降维”并不神秘对某个轴做汇总就把那一轴压没了。2.1 求和符号 Σ 怎么读Σ读作西格玛sigma通常也直接叫求和符号。2.2sum()默认对所有轴求和向量x [0,1,2,3]x.sum() 6变成标量矩阵AA.sum()把所有元素加起来变成标量2.3 指定轴axis以A.shape (5, 4)为例A.sum(axis0)按列求和 → 输出形状(4,)A.sum(axis1)按行求和 → 输出形状(5,)A.sum(axis[0,1])行列都汇总 → 等价于A.sum()一句话记忆沿哪个axis汇总哪个axis在输出里消失。2.4mean()平均值 sum / 元素个数A.mean()等价于A.sum() / A.numel()A.mean(axis0)等价于A.sum(axis0) / A.shape[0]除以行数A.mean(axis1)等价于A.sum(axis1) / A.shape[1]除以列数3. 不降维求和keepdimsTrue为了广播更舒服有时候你希望“求和以后还保留轴”这样后面做广播除法会更自然。3.1keepdimsTrue是什么A.sum(axis1)形状(5,4)→(5,)A.sum(axis1, keepdimsTrue)形状(5,4)→(5,1)也就是被汇总的那一轴不消失而是保留成长度 1。3.2 为什么有用按行归一化一行除以这一行的和sum_AA.sum(axis1,keepdimsTrue)# (5,1)A_normA/sum_A# (5,4) / (5,1) 自动广播直观理解每行都会除以自己的“行和”得到“每行加起来为 1”的比例矩阵。4. 累加不降维cumsum前缀和cumsum不是“汇总成一个数”而是把累计过程保留下来。A.cumsum(axis0)axis0沿着行方向做累计输出形状不变还是(5,4)可以把它想成第 1 行原第 1 行第 2 行第 1 行 第 2 行第 3 行第 1 行 第 2 行 第 3 行……5. 点积 Dot Product两个向量“对位相乘再求和”5.1 定义给两个向量x, y ∈ R^d[x^T y \sum_{i1}^{d} x_i y_i]点积的结果是一个标量。5.2 例子为什么是 6xtorch.tensor([0.,1.,2.,3.])ytorch.ones(4)torch.dot(x,y)# 0*1 1*1 2*1 3*1 6也可以写成torch.sum(x*y)因为点积本来就是“按元素乘再求和”。5.3 点积的两个常用含义加权求和x^T w Σ x_i w_i如果w还满足和为 1就变成加权平均相似程度向量归一化后点积与夹角余弦有关越大越相似越小越相反。6. 矩阵-向量积Ax “每一行和 x 做一次点积”这是把点积扩展到矩阵的一步。6.1 维度规则A ∈ R^{m×n}x ∈ R^{n}Ax ∈ R^{m}核心匹配条件A 的列数 n x 的长度 n。6.2 计算方式最重要的直观Ax的第 i 个元素[(Ax)i A{i,:} \cdot x]也就是A 的第 i 行与 x 的点积。6.3 一个算到最后的例子[A\begin{bmatrix}123456\end{bmatrix},\quadx\begin{bmatrix}10\20\30\end{bmatrix}]第 1 行点积1*10 2*20 3*30 140第 2 行点积4*10 5*20 6*30 320所以[Ax \begin{bmatrix} 140\ 320 \end{bmatrix}]PyTorchAtorch.tensor([[1.,2.,3.],[4.,5.,6.]])xtorch.tensor([10.,20.,30.])ytorch.mv(A,x)# tensor([140., 320.])7. 矩阵-矩阵乘法AB “A 的行 与 B 的列做点积”7.1 维度规则你最容易卡的地方A形状(n, k)B形状(k, m)C AB形状(n, m)关键左矩阵列数 右矩阵行数k 必须相等。为什么必须相等因为C的每个元素[c_{ij} A_{i,:} \cdot B_{:,j}]这本质是点积点积要求两边长度相同。7.2 形象图“行×列”产生一个数A 的第 i 行 (长度 k) · B 的第 j 列 (长度 k) └────────────── 点积 ──────────────┘ 得到 c_{ij}7.3 PyTorch 例子为什么输出每行都重复你看到的例子Btorch.ones(4,3)Ctorch.mm(A,B)这里A是(5,4)B是(4,3)且每个元素都是 1结果C是(5,3)关键点B 的每一列都是[1,1,1,1]^T。所以C的第 i 行第 j 列 A的第 i 行 ·B的第 j 列因为B的列全是 1这个点积就变成[a_{i1}*1 a_{i2}*1 a_{i3}*1 a_{i4}*1]也就是A 第 i 行的行和。由于 B 有 3 列且都一样所以每行会被“复制”成 3 份[行和, 行和, 行和]这就是输出中[[ 6, 6, 6], [22, 22, 22], [38, 38, 38], [54, 54, 54], [70, 70, 70]]它恰好等于你之前A.sum(axis1)的结果[6,22,38,54,70]复制成 3 列。8. 范数 norm衡量“有多大”的标准范数可以理解为把一个向量/矩阵映射成一个非负数表示它的大小。8.1 范数的三条“像长度一样靠谱”的规则缩放||αx|| |α| ||x||三角不等式||xy|| ≤ ||x|| ||y||非负且零向量唯一为 0||x|| ≥ 0只有x0时||x||0这些规则让它可以像“长度/距离”那样使用。8.2 L2 范数最像几何长度[|x|_2 \sqrt{\sum_i x_i^2}]例子x [3, -4][\sqrt{3^2 (-4)^2} \sqrt{916} 5]8.3 L1 范数绝对值之和[|x|_1 \sum_i |x_i|]例子[3,-4]→|3||−4|78.4 Lp 范数统一写法了解口径即可[|x|_p \left(\sum_i |x_i|p\right){1/p}]p2是 L2p1是 L18.5 矩阵的 Frobenius 范数矩阵版 L2[|X|F \sqrt{\sum{i,j} x_{ij}^2}]例子np.ones((4,9))这是 4 行 9 列的矩阵元素个数4×9 36每个元素都是 1平方和 36×1^2 36开根号 sqrt(36) 6所以np.linalg.norm(np.ones((4,9))) 6。9. 形状与操作速查表建议常看操作输入形状参数输出形状直观含义x.sum()(n,)无()全部求和A.sum()(m,n)无()全部求和A.sum(axis0)(m,n)axis0(n,)每列求和A.sum(axis1)(m,n)axis1(m,)每行求和A.sum(axis1, keepdimsTrue)(m,n)keepdims(m,1)每行求和但保留维度A.cumsum(axis0)(m,n)axis0(m,n)行方向累计torch.dot(x,y)(n,),(n,)无()向量点积torch.mv(A,x)(m,n),(n,)无(m,)矩阵×向量torch.mm(A,B)(n,k),(k,m)无(n,m)矩阵×矩阵10. 一张“计算流程图”从点积到矩阵乘法点积向量×向量 x · y - 标量 矩阵-向量矩阵×向量 Ax - 每一行与 x 点积 - 向量 矩阵-矩阵矩阵×矩阵 AB - A 的每一行 与 B 的每一列点积 - 矩阵你可以把矩阵乘法理解成点积是最小单元矩阵-向量是“多次点积组成一列结果”矩阵-矩阵是“多次点积组成一个二维表格”11. 一组建议怎么把这些概念真正“变熟”先盯 shape再写代码看到mv/mm/sum(axis...)先把输入输出形状写在旁边。把每个公式翻译成一句话c_ij 行·列Ax 是每行点积sum(axis1) 是每行求和遇到广播就问一句谁是 1keepdimsTrue把被汇总的轴保留为 1方便广播。做一遍“手算第一行”不需要手算全矩阵手算C[0,0]或y[0]往往就能打通理解。12. 结尾小结今天这套“最小骨架”Σ是求和符号sum/mean沿某轴汇总会让那一轴消失降维keepdimsTrue让消失的轴保留为 1方便广播cumsum是累计不降维点积是“对位相乘再求和”矩阵-向量是“每一行与向量点积”矩阵-矩阵是“行与列点积”范数是“大小的度量”L2 像长度L1 像绝对值和Frobenius 是矩阵版 L2如果你愿意我可以基于同一套数据你书里那组 A 矩阵把Ax、AB、sum(axis...)、keepdims、norm串成一个完整小练习集每题都带 shape 推导。B站视频讲解Bilibili博主个人介绍《Yocto项目实战教程》京东购买链接Yocto项目实战教程加博主微信进技术交流群jerrydev

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询