当前位置: 首页 > news >正文

公司网站布局嘉定网站设计制作报价

公司网站布局,嘉定网站设计制作报价,网站建设和定位,网站在线制作系统开始复习 AI 算法的基础–数学部分#xff0c;主要是三方面的内容#xff1a; 线性代数概率论微积分 参考内容如下#xff1a; 《深度学习》https://github.com/scutan90/DeepLearning-500-questionshttps://github.com/sladesha/Reflection_Summary 本文是第一篇#…开始复习 AI 算法的基础–数学部分主要是三方面的内容 线性代数概率论微积分 参考内容如下 《深度学习》https://github.com/scutan90/DeepLearning-500-questionshttps://github.com/sladesha/Reflection_Summary 本文是第一篇线性代数部分的内容主要是比较基础部分的学习笔记。 1. 线性代数 1.1 向量和矩阵 1.1.1 标量、向量、矩阵、张量之间的联系 标量scalar 一个标量表示一个单独的数它不同于线性代数中研究的其他大部分对象通常是多个数的数组。我们用斜体表示标量。标量通常被赋予小写的变量名称。 一般会明确标量属于哪种类型比如定义实数标量时会说“令 s∈Rs\in Rs∈R 表示一条线的斜率”。 向量vector 一个向量表示一组有序排列的数。通过次序中的索引我们可以确定每个单独的数。通常我们赋予向量粗体的小写变量名称比如xx。向量中的元素可以通过带脚标的斜体表示。向量XXX的第一个元素是X1X_1X1​第二个元素是X2X_2X2​以此类推。我们也会注明存储在向量中的元素的类型实数、虚数等。 一个向量如下所示一个向量可以看作空间中的点即每个元素可以表示不同坐标轴上的坐标。 x[x1x2x3⋯xn]x \left[ \begin{matrix} x_1 \\ x_2 \\ x_3 \\ \cdots \\ x_n \end{matrix} \right] x⎣⎢⎢⎢⎢⎡​x1​x2​x3​⋯xn​​⎦⎥⎥⎥⎥⎤​ 矩阵matrix 矩阵是具有相同特征和纬度的对象的集合表现为一张二维数据表。其意义是一个对象表示为矩阵中的一行一个特征表示为矩阵中的一列每个特征都有数值型的取值。通常会赋予矩阵粗体的大写变量名称比如AAA。 一个矩阵的表示例子如下所示 A[A1,1A1,2A2,1A2,2]A \left[ \begin{matrix} A_{1,1} A_{1,2} \\ A_{2,1} A_{2,2} \\ \end{matrix} \right] A[A1,1​A2,1​​A1,2​A2,2​​] 转置是矩阵的重要操作之一其转置是以对角线为轴的镜像这条从左上角到右下角的对角线被称为主对角线定义如下: (AT)i,jAj,i(A^T){i,j} A_{j,i} (AT)i,jAj,i​ 一个示例操作如下 A[A1,1A1,2A2,1A2,2A3,1A3,2]AT[A1,1A2,1A3,1A1,2A2,2A3,2]A \left[ \begin{matrix} A_{1,1} A_{1,2} \\ A_{2,1} A_{2,2} \\ A_{3,1} A_{3,2} \end{matrix} \right] A^T \left[ \begin{matrix} A_{1,1} A_{2,1} A_{3, 1} \\ A_{1,2} A_{2,2} A_{3,2}\\ \end{matrix} \right] A⎣⎡​A1,1​A2,1​A3,1​​A1,2​A2,2​A3,2​​⎦⎤​AT[A1,1​A1,2​​A2,1​A2,2​​A3,1​A3,2​​] 从一个 3×23\times 23×2 的矩阵变为了 $ 2\times 3$ 的矩阵。 张量tensor 在某些情况下我们会讨论坐标超过两维的数组。一般地一个数组中的元素分布在若干维坐标的规则网格中我们将其称之为张量。使用 AAA 来表示张量“A”。张量AAA中坐标为(i,j,k)(i,j,k)(i,j,k)的元素记作A(i,j,k)A_{(i,j,k)}A(i,j,k)​。 四者之间关系 来自深度学习 500 问第一章数学基础 标量是0阶张量向量是一阶张量。举例 ​标量就是知道棍子的长度但是你不会知道棍子指向哪儿。 ​向量就是不但知道棍子的长度还知道棍子指向前面还是后面。 ​张量就是不但知道棍子的长度也知道棍子指向前面还是后面还能知道这棍子又向上/下和左/右偏转了多少。 1.1.2 张量与矩阵的区别 从代数角度讲 矩阵它是向量的推广。向量可以看成一维的“表格”即分量按照顺序排成一排 矩阵是二维的“表格”分量按照纵横位置排列 那么nnn阶张量就是所谓的nnn维的“表格”。 张量的严格定义是利用线性映射来描述。从几何角度讲 矩阵是一个真正的几何量也就是说它是一个不随参照系的坐标变换而变化的东西。向量也具有这种特性。张量可以用3×3矩阵形式来表达。表示标量的数和表示向量的三维数组也可分别看作1×11×3的矩阵。 1.1.3 矩阵和向量相乘结果 若使用爱因斯坦求和约定Einstein summation convention矩阵AAA, BBB相乘得到矩阵 CCC 可以用下式表示 ABCaik∗bkjcijAB C a_{ik}*b_{kj}c_{ij} ABCaik​∗bkj​cij​ 其中aika_{ik}aik​, bkjb_{kj}bkj​, cijc_{ij}cij​分别表示矩阵A,B,CA, B, CA,B,C的元素kkk出现两次是一个哑变量Dummy Variables表示对该参数进行遍历求和。 用一个例子表示就是 $$ A \left[ \begin{matrix} A_{1,1} A_{1,2} \ A_{2,1} A_{2,2} \ \end{matrix} \right] B \left[ \begin{matrix} B_{1,1} B_{1,2} \ B_{2,1} B_{2,2} \ \end{matrix} \right] \ A \times B C \left[ \begin{matrix} A_{1,1}\times B_{1,1}A_{1,2}\times B_{2,1} A_{1,1}\times B_{1,2}A_{1,2}\times B_{2,2} \ A_{2,1}\times B_{1,1}A_{2,2}\times B_{2,1} A_{2,1}\times B_{1,2}A_{2,2}\times B_{2,2} \ \end{matrix} \right] \left[ \begin{matrix} C_{1,1} C_{1,2} \ C_{2,1} C_{2,2} \ \end{matrix} \right] $$ 所以矩阵相乘有一个前提矩阵 A 的列数必须和矩阵 B 的行数相等也就是如果 A 的维度是 m×nm\times nm×nB 的维度必须是 n×pn \times pn×p相乘得到的 C 矩阵的维度就是 m×pm\times pm×p。 另外还有一种矩阵乘法是矩阵对应元素相乘这种称为元素对应乘积或者 Hadamard 乘积记为 A ⊙ B 而矩阵和向量相乘可以看成是矩阵相乘的一个特殊情况例如矩阵BBB是一个n×1n \times 1n×1的矩阵。 矩阵乘积满足这些定律 服从分配率A(BC) AB AC服从结合律A(BC) (AB)C 但是不服从交换律即 AB 不一定等于 BA。 矩阵的乘积满足AB)TATBTAB)^T A^TB^TAB)TATBT 两个相同维度的向量 x 和 y 的点积(dot product)可以看作矩阵乘积–xTyx^TyxTy。也就是说可以将矩阵乘积 CABCABCAB 中计算 Ci,jC_{i,j}Ci,j​的步骤看作是 A 的第 i 行和 B 的第 j 列之间的点积。毕竟矩阵的每一行或者每一列都是一个向量。 而向量的点积是满足交换律的 xTyyTxx^Ty y^Tx xTyyTx 证明主要是根据 两个向量的点积是标量标量的转置也是自身 所以有 xTy(xTy)TxyTx^Ty (x^Ty)^T xy^T xTy(xTy)TxyT 1.1.4 单位矩阵和逆矩阵 单位矩阵的定义如下用 I 表示单位矩阵任何向量和单位矩阵相乘都不会改变即 ∀x∈Rn,Inxx(1-1-8)\forall x \in R^n, I_n x x \tag{1-1-8} ∀x∈Rn,In​xx(1-1-8) 单位矩阵的结构很简单就是主对角线是 1其他位置是 0如下图所示的单位矩阵 I3I_3I3​ [100010001]\left[ \begin{matrix} 1 0 0 \\ 0 1 0 \\ 0 0 1 \end{matrix} \right] ⎣⎡​100​010​001​⎦⎤​ 而逆矩阵记作 A−1A^{-1}A−1其满足如下条件 A−1AInA^{-1}AI_n A−1AIn​ 1.1.5 线性方程组和线性相关 现在有一个线性方程组如下所示 AxbAx b Axb 其中A∈Rm×nA\in R^{m\times n}A∈Rm×n 是已知的矩阵b∈Rmb\in R^mb∈Rm 是已知的向量然后 x∈Rnx\in R^nx∈Rn 是需要求解的未知向量。 这里根据矩阵相乘x 相当于一个 n×1n\times 1n×1 的矩阵可以将上述公式拓展开来 A1,:xb1A1,1x1A1,2x2⋯A1,nxnb1A2,:xb2A2,1x1A2,2x2⋯A2,nxnb2⋯Am,:xbmAm,1x1Am,2x2⋯Am,nxnbmA_{1,:}x b_1 A_{1,1}x_1 A_{1,2}x_2\cdotsA_{1,n}x_n b_1 \\ A_{2,:}x b_2 A_{2,1}x_1 A_{2,2}x_2\cdotsA_{2,n}x_n b_2 \\ \cdots \\ A_{m,:}x b_m A_{m,1}x_1 A_{m,2}x_2\cdotsA_{m,n}x_n b_m \\ A1,:​xb1​A1,1​x1​A1,2​x2​⋯A1,n​xn​b1​A2,:​xb2​A2,1​x1​A2,2​x2​⋯A2,n​xn​b2​⋯Am,:​xbm​Am,1​x1​Am,2​x2​⋯Am,n​xn​bm​ 在我们定义了逆矩阵后那么可以这么求解 AxbA−1AxA−1bInxA−1bxA−1bAxb\\ A^{-1}Ax A^{-1}b\\ I_nx A^{-1}b \\ x A^{-1}b AxbA−1AxA−1bIn​xA−1bxA−1b 所以求解的关键就是是否存在一个逆矩阵并找到它。 当逆矩阵A−1A^{-1}A−1存在的时候对每个向量 b 肯定恰好存在一个解。 但对于方程组来说向量 b 的某些值有可能不存在解或者有无限多个解不存在多于1 个解但有限解的情况比如 x 和 y 都是方程组的解则有 zαx(1−α)yz \alpha x (1-\alpha)y zαx(1−α)y 其中α\alphaα 是任意实数那么 z 也是方程组的解这种组合是无限的所以不存在有限解多于 1 个。 确定 Axb 是否有解关键是确定向量 b 是否在 A 列向量的生成子空间中这个特殊的生成子空间被称为 A 的列空间或者 A 的值域。 一组向量的线性组合是指每个向量乘以对应标量系数之后的和即 ∑iciv(i)\sum_i c_i v^{(i)}∑i​ci​v(i) 一组向量的生成子空间是原始向量线性组合后所能抵达的点的集合。 那么为了让上述成立应该让 A 的列空间构成整个 RmR^mRm 空间如果这个空间某个点不在 A 的列空间那么对应的 b 会使得方程无解。而要让其成立**即要满足不等式 n≥mn\ge mn≥m **。 但该不等式只是方程对每个 b 有解的必要条件非充分条件。因为存在一种情况某些列向量可能是冗余的比如一个 2×22\times 22×2的矩阵如果两个列向量都是相同的那该矩阵的列空间和它的一个列向量作为矩阵的列空间是一样的并不能满足覆盖了整个 R2R^2R2 空间。 这种冗余也被称为线性相关而如果一组向量中任意一个向量都不能表示为其他向量的线性组合则这组向量称为线性无关。 所以如果一个矩阵的列空间要覆盖整个 RmR^mRm那么该矩阵必须包含至少一组m 个线性无关的向量这才是对每个 b 都有解的充分必要条件。 此外要让矩阵可逆还必须保证 Axb 对每个 b 的取值至多只有一个解那必须保证该矩阵至多有 m 个列向量否则方程有不止一个解。 综上那么矩阵就必须是方阵也就是 m n并且所有列向量都是线性无关的。一个列向量都是线性无关的方阵被称为是奇异的。 假如 A 不是方阵或者不是奇异的方阵也可能有解但是不能通过逆矩阵去求解。 1.1.6 向量和矩阵的范数归纳 向量的范数(norm) 通常衡量向量的大小是通过范数来衡量的形式上 LPL^PLP范数定义如下 Lp∥x⃗∥p∑i1N∣xi∣ppL_p\Vert\vec{x}\Vert_p\sqrt[p]{\sum_{i1}^{N}|{x_i}|^p} Lp​∥x∥p​pi1∑N​∣xi​∣p​ 这里 p≥1p\ge 1p≥1。 范数是将向量映射到非负数的函数直观上来说向量 x 的范数衡量从原点到点 x 的距离。 范数是满足下列性质的任意函数 f(x)0x0f(xy)≤f(x)f(y)(三角不等式)∀α∈R,f(αx)∣α∣f(x)f(x)0x0 \\ f(xy)\le f(x)f(y)(三角不等式)\\ \forall \alpha \in R, f(\alpha x) |\alpha|f(x) f(x)0x0f(xy)≤f(x)f(y)(三角不等式)∀α∈R,f(αx)∣α∣f(x) 定义一个向量为a⃗[−5,6,8,−10]\vec{a}[-5, 6, 8, -10]a[−5,6,8,−10]。任意一组向量设为x⃗(x1,x2,...,xN)\vec{x}(x_1,x_2,...,x_N)x(x1​,x2​,...,xN​)。其不同范数求解如下 向量的1范数向量的各个元素的绝对值之和上述向量a⃗\vec{a}a的1范数结果就是x |-5||6||8||-10| 29。 ∥x⃗∥1∑i1N∣xi∣\Vert\vec{x}\Vert_1\sum_{i1}^N\vert{x_i}\vert ∥x∥1​i1∑N​∣xi​∣ 向量的2范数欧几里得范数向量的每个元素的平方和再开平方根上述a⃗\vec{a}a的2范数结果就是x(−5)2(6)2(8)2(−10)215x\sqrt{(-5)^2(6)^2(8)^2(-10)^2}15x(−5)2(6)2(8)2(−10)2​15。 ∥x⃗∥2∑i1N∣xi∣2\Vert\vec{x}\Vert_2\sqrt{\sum_{i1}^N{\vert{x_i}\vert}^2} ∥x∥2​i1∑N​∣xi​∣2​ 向量的负无穷范数向量的所有元素的绝对值中最小的上述向量a⃗\vec{a}a的负无穷范数结果就是5。 ∥x⃗∥−∞min⁡∣xi∣\Vert\vec{x}\Vert_{-\infty}\min{|{x_i}|} ∥x∥−∞​min∣xi​∣ 向量的正无穷范数向量的所有元素的绝对值中最大的上述向量a⃗\vec{a}a的正无穷范数结果就是10。 ∥x⃗∥∞max⁡∣xi∣\Vert\vec{x}\Vert_{\infty}\max{|{x_i}|} ∥x∥∞​max∣xi​∣ 矩阵的范数 定义一个矩阵。 A[−12−34−66]A \left[ \begin{matrix} -1 2 -3 \\ 4 -6 6 \\ \end{matrix} \right] A[−14​2−6​−36​] 任意矩阵定义为Am×nA_{m\times n}Am×n​其元素为 aija_{ij}aij​。 矩阵的范数定义为 ∥A∥p:sup⁡x≠0∥Ax∥p∥x∥p\Vert{A}\Vert_p :\sup_{x\neq 0}\frac{\Vert{Ax}\Vert_p}{\Vert{x}\Vert_p} ∥A∥p​:x​0sup​∥x∥p​∥Ax∥p​​ 当向量取不同范数时, 相应得到了不同的矩阵范数。 矩阵的1范数列范数先对矩阵的每一列元素的绝对值求和再从中取个最大的列和最大上述矩阵AAA的1范数先得到[5,8,9][5,8,9][5,8,9]再取最大的最终结果就是9。 ∥A∥1max⁡1≤j≤n∑i1m∣aij∣\Vert A\Vert_1\max_{1\le j\le n}\sum_{i1}^m|{a_{ij}}| ∥A∥1​1≤j≤nmax​i1∑m​∣aij​∣ 矩阵的2范数矩阵ATAA^TAATA的最大特征值开平方根上述矩阵AAA的2范数得到的最终结果是10.0623。 ∥A∥2λmax(ATA)\Vert A\Vert_2\sqrt{\lambda_{max}(A^T A)} ∥A∥2​λmax​(ATA)​ 其中 λmax(ATA)\lambda_{max}(A^T A)λmax​(ATA) 为 ATAA^T AATA 的特征值绝对值的最大值。 矩阵的无穷范数行范数矩阵的每一行上的元素绝对值先求和再从中取个最大的行和最大上述矩阵AAA的行范数先得到[616][616][616]再取最大的最终结果就是16。 ∥A∥∞max⁡1≤i≤m∑j1n∣aij∣\Vert A\Vert_{\infty}\max_{1\le i \le m}\sum_{j1}^n |{a_{ij}}| ∥A∥∞​1≤i≤mmax​j1∑n​∣aij​∣ 矩阵的核范数矩阵的奇异值将矩阵svd分解之和这个范数可以用来低秩表示因为最小化核范数相当于最小化矩阵的秩——低秩上述矩阵A最终结果就是10.9287。 矩阵的L0范数矩阵的非0元素的个数通常用它来表示稀疏L0范数越小0元素越多也就越稀疏上述矩阵AAA最终结果就是6。 矩阵的L1范数矩阵中的每个元素绝对值之和它是L0范数的最优凸近似因此它也可以表示稀疏上述矩阵AAA最终结果就是22。 矩阵的F范数最常用的矩阵的范数矩阵的各个元素平方之和再开平方根它通常也叫做矩阵的L2范数它的优点在于它是一个凸函数可以求导求解易于计算上述矩阵A最终结果就是10.0995。 ∥A∥F(∑i1m∑j1n∣aij∣2)\Vert A\Vert_F\sqrt{(\sum_{i1}^m\sum_{j1}^n{| a_{ij}|}^2)} ∥A∥F​(i1∑m​j1∑n​∣aij​∣2)​ 矩阵的L21范数矩阵先以每一列为单位求每一列的F范数也可认为是向量的2范数然后再将得到的结果求L1范数也可认为是向量的1范数很容易看出它是介于L1和L2之间的一种范数上述矩阵AAA最终结果就是17.1559。 矩阵的 p范数 ∥A∥p(∑i1m∑j1n∣aij∣p)p\Vert A\Vert_p\sqrt[p]{(\sum_{i1}^m\sum_{j1}^n{| a_{ij}|}^p)} ∥A∥p​p(i1∑m​j1∑n​∣aij​∣p)​ 两个向量的点积可以用范数来表示 xTy∥x∥2∥y∥2cosθx^Ty \Vert x \Vert_2 \Vert y \Vert_2 cos\theta xTy∥x∥2​∥y∥2​cosθ 这里 θ\thetaθ 就是 x 和 y 之间的夹角。 1.1.7 一些特殊的矩阵和向量 对角矩阵只在对角线上有非零元素其他位置都是零。之前介绍的单位矩阵就是对角矩阵的一种 对称矩阵转置和自己相等的矩阵即AATA A^TAAT。 单位向量具有单位范数的向量也就是 ∥x∥21\Vert x \Vert_2 1∥x∥2​1 向量正交如果 xTy0x^Ty0xTy0那么就说向量 x 和 y 互相正交。如果向量不仅互相正交范数还是 1那么就称为标准正交。 正交矩阵行向量和列向量是分别标准正交的方阵即 ATAAATIA^TAAA^TI ATAAATI 也就是有 A−1ATA^{-1}A^T A−1AT 所以正交矩阵的一个优点就是求逆计算代价小。 1.1.8 如何判断一个矩阵为正定 判定一个矩阵是否为正定通常有以下几个方面 顺序主子式全大于0存在可逆矩阵CCC使CTCC^TCCTC等于该矩阵正惯性指数等于nnn合同于单位矩阵EEE即规范形为EEE标准形中主对角元素全为正特征值全为正是某基的度量矩阵。 所有特征值是非负数的矩阵称为半正定而所有特征值是负数的矩阵称为负定所有特征值是非正数的矩阵称为半负定。 正定性的用途 Hessian矩阵正定性在梯度下降的应用 若Hessian正定,则函数的二阶偏导恒大于0,函数的变化率处于递增状态判断是否有局部最优解 在 svm 中核函数构造的基本假设 1.2 特征值和特征向量 1.2.1 特征值分解与特征向量 特征分解是使用最广的矩阵分解之一矩阵分解可以得到一组特征值(eigenvalues)与特征向量(eigenvectors) 特征值表示的是这个特征到底有多重要而特征向量表示这个特征是什么。 如果说一个向量v⃗\vec{v}v是方阵AAA的特征向量将一定可以表示成下面的形式 AνλνA\nu \lambda \nu Aνλν λ\lambdaλ为特征向量v⃗\vec{v}v对应的特征值。 特征值分解是将一个矩阵分解为如下形式 AQ∑Q−1AQ\sum Q^{-1} AQ∑Q−1 其中QQQ是这个矩阵AAA的特征向量组成的正交矩阵∑\sum∑是一个对角矩阵每一个对角线元素就是一个特征值里面的特征值是由大到小排列的这些特征值所对应的特征向量就是描述这个矩阵变化方向从主要的变化到次要的变化排列。也就是说矩阵AAA的信息可以由其特征值和特征向量表示。 并非每个矩阵都可以分解成特征值和特征向量但每个实对称矩阵都可以分解为实特征向量和实特征值。 1.2.2 奇异值分解 除了特征分解外还有一种矩阵分解称为奇异值分解SVD)将矩阵分解为奇异值和奇异向量。通过奇异值分解可以得到和特征分解相同类型的信息但是奇异值分解有更广泛的应用每个实数矩阵都有一个奇异值分解但不一定有特征分解因为必须是方阵才有特征分解。 在特征分解中我们将 A 重新写作 AVdiag(λ)V−1A Vdiag(\lambda)V^{-1} AVdiag(λ)V−1 其中V 是特征向量构成的矩阵λ\lambdaλ是特征值构成的向量diag(λ)diag(\lambda)diag(λ)表示一个对角线都是特征值的对角矩阵。 奇异值分解的形式如下所示 AUDVTA U D V^T AUDVT 假如 A 是 m×nm\times nm×n 的矩阵则 U 是 m×mm\times mm×m的矩阵D 是 m×nm\times nm×n 的矩阵V 是 n×nn\times nn×n 的矩阵。并且矩阵 U 和 V 是正交矩阵D 是对角矩阵且不一定是方阵。 D 对角线上的元素就是 A 的奇异值而 U 的列向量是左奇异向量V 的列向量是右奇异向量。 可以套用和 A 相关的特征分解来解释其奇异值分解A 的左奇异向量就是 AATAA^TAAT的特征向量而右奇异向量就是ATAA^TAATA 的特征向量A 的非零奇异值是AATAA^TAAT特征值的平方根也是ATAA^TAATA特征值的平方根。 (来自深度学习 500 问的数学基础的内容) 那么奇异值和特征值是怎么对应起来的呢我们将一个矩阵AAA的转置乘以AAA并对ATAA^TAATA求特征值则有下面的形式 (ATA)VλV(A^TA)V \lambda V (ATA)VλV 这里VVV就是上面的右奇异向量另外还有 σiλi,ui1σiAV\sigma_i \sqrt{\lambda_i}, u_i\frac{1}{\sigma_i}AV σi​λi​​,ui​σi​1​AV 这里的σ\sigmaσ就是奇异值uuu就是上面说的左奇异向量。 奇异值σ\sigmaσ跟特征值类似在矩阵∑\sum∑中也是从大到小排列而且σ\sigmaσ的减少特别的快在很多情况下前10%甚至1%的奇异值的和就占了全部的奇异值之和的99%以上了。也就是说我们也可以用前rrrrrr远小于m、nm、nm、n个的奇异值来近似描述矩阵即部分奇异值分解 Am×n≈Um×r∑r×rVr×nTA_{m\times n}\approx U_{m \times r}\sum_{r\times r}V_{r \times n}^T Am×n​≈Um×r​r×r∑​Vr×nT​ 右边的三个矩阵相乘的结果将会是一个接近于AAA的矩阵在这儿rrr越接近于nnn则相乘的结果越接近于AAA。 欢迎关注我的公众号 –AI 算法笔记每周分享算法学习笔记、论文阅读笔记或者工具教程相关的 github 项目。
http://www.sadfv.cn/news/1037/

相关文章: