如何理解线性代数的几何意义数

线性代数的直觉理解(4)6 months ago赞赏还没有人赞赏,快来当第一个赞赏的人吧!10收藏分享举报文章被以下专栏收录探索计算机眼中数学的美好。推荐阅读{&debug&:false,&apiRoot&:&&,&paySDK&:&https:\u002F\\u002Fapi\u002Fjs&,&wechatConfigAPI&:&\u002Fapi\u002Fwechat\u002Fjssdkconfig&,&name&:&production&,&instance&:&column&,&tokens&:{&X-XSRF-TOKEN&:null,&X-UDID&:null,&Authorization&:&oauth c3cef7c66aa9e6a1e3160e20&}}{&database&:{&Post&:{&&:{&isPending&:false,&contributes&:[{&sourceColumn&:{&lastUpdated&:,&description&:&本专栏侧重于思考数学应用,思考计算机编程,研究图像处理算法。本人会把学习到的新内容的精华和主干知识点分享出来,重点讨论的是思考的过程,为什么会这样。期待朋友们给我提出宝贵意见和建议,让我有动力和信心写出更优秀的文章,供大家欣赏。&,&permission&:&COLUMN_PUBLIC&,&memberId&:,&contributePermission&:&COLUMN_PUBLIC&,&translatedCommentPermission&:&all&,&canManage&:true,&intro&:&探索计算机眼中数学的美好。&,&urlToken&:&warden&,&id&:28864,&imagePath&:&v2-14445a32fec7db581bce44247c3cea72.jpg&,&slug&:&warden&,&applyReason&:&0&,&name&:&机器人眼中的数学&,&title&:&机器人眼中的数学&,&url&:&https:\u002F\\u002Fwarden&,&commentPermission&:&COLUMN_ALL_CAN_COMMENT&,&canPost&:true,&created&:,&state&:&COLUMN_NORMAL&,&followers&:735,&avatar&:{&id&:&v2-14445a32fec7db581bce44247c3cea72&,&template&:&https:\u002F\\u002F{id}_{size}.jpg&},&activateAuthorRequested&:false,&following&:false,&imageUrl&:&https:\u002F\\u002Fv2-14445a32fec7db581bce44247c3cea72_l.jpg&,&articlesCount&:7},&state&:&accepted&,&targetPost&:{&titleImage&:&https:\u002F\\u002Fv2-7b2b8a6fe55ed28bba0f90279faaf8df_r.jpg&,&lastUpdated&:,&imagePath&:&v2-7b2b8a6fe55ed28bba0f90279faaf8df.jpg&,&permission&:&ARTICLE_PUBLIC&,&topics&:[],&summary&:&从本次文章开始,将要就某些具体的问题展开讨论。1、对称矩阵(Symmetric Matrices)定义:在R^n空间,矩阵A=A^T为对称矩阵。所以,对称矩阵首先是方阵。 下面看看它具有的性质:特征值是实数;能够找到n个相互垂直的特征向量。 最重要的是,对称矩阵能够写…&,&copyPermission&:&ARTICLE_COPYABLE&,&translatedCommentPermission&:&all&,&likes&:0,&origAuthorId&:0,&publishedTime&:&T21:55:35+08:00&,&sourceUrl&:&&,&urlToken&:,&id&:2816693,&withContent&:false,&slug&:,&bigTitleImage&:false,&title&:&线性代数的直觉理解(4)&,&url&:&\u002Fp\u002F&,&commentPermission&:&ARTICLE_ALL_CAN_COMMENT&,&snapshotUrl&:&&,&created&:,&comments&:0,&columnId&:28864,&content&:&&,&parentId&:0,&state&:&ARTICLE_PUBLISHED&,&imageUrl&:&https:\u002F\\u002Fv2-7b2b8a6fe55ed28bba0f90279faaf8df_r.jpg&,&author&:{&bio&:&喜欢优美的代码和自圆其说的算法。&,&isFollowing&:false,&hash&:&ba51fa269b1dd550e30baec649198dba&,&uid&:323900,&isOrg&:false,&slug&:&li-yang-46-16-36&,&isFollowed&:false,&description&:&喜欢编程,了解图像处理算法、过程控制理论及算法、C++、Qt。代码仓库https:\\u002Fwozaiqufu&,&name&:&李阳&,&profileUrl&:&https:\u002F\\u002Fpeople\u002Fli-yang-46-16-36&,&avatar&:{&id&:&v2-448f8c35ee7b52fb276df8&,&template&:&https:\u002F\\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false},&memberId&:,&excerptTitle&:&&,&voteType&:&ARTICLE_VOTE_CLEAR&},&id&:632011}],&title&:&线性代数的直觉理解(4)&,&author&:&li-yang-46-16-36&,&content&:&\u003Cp\u003E从本次文章开始,将要就某些具体的问题展开讨论。\u003C\u002Fp\u003E\u003Ch2\u003E1、对称矩阵(Symmetric Matrices)\u003C\u002Fh2\u003E\u003Cp\u003E定义:在\u003Cimg src=\&http:\u002F\\u002Fequation?tex=R%5En\& alt=\&R^n\& eeimg=\&1\&\u003E空间,矩阵\u003Cimg src=\&http:\u002F\\u002Fequation?tex=A%3DA%5ET\& alt=\&A=A^T\& eeimg=\&1\&\u003E为对称矩阵。所以,对称矩阵首先是方阵。\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E下面看看它具有的性质:\u003C\u002Fp\u003E\u003Col\u003E\u003Cli\u003E特征值是实数;\u003C\u002Fli\u003E\u003Cli\u003E能够找到\u003Cimg src=\&http:\u002F\\u002Fequation?tex=n\& alt=\&n\& eeimg=\&1\&\u003E个相互垂直的特征向量。\u003C\u002Fli\u003E\u003C\u002Fol\u003E\u003Cbr\u003E最重要的是,对称矩阵能够写成如下的形式:\u003Cp\u003E\u003Cimg src=\&http:\u002F\\u002Fequation?tex=A%3DQ%5CLambda+Q%5ET\& alt=\&A=Q\\Lambda Q^T\& eeimg=\&1\&\u003E,其中,\u003Cimg src=\&http:\u002F\\u002Fequation?tex=Q\& alt=\&Q\& eeimg=\&1\&\u003E是标准正交矩阵(Orthonormal Matrix ),其每一列的向量都是矩阵\u003Cimg src=\&http:\u002F\\u002Fequation?tex=A\& alt=\&A\& eeimg=\&1\&\u003E的特征向量,对角阵上面的主对角元素是矩阵\u003Cimg src=\&http:\u002F\\u002Fequation?tex=A\& alt=\&A\& eeimg=\&1\&\u003E的特征值。所以,对称矩阵具有非常多的优良的特性,这些特性在实际应用中经常看到。下面我们对\u003Cimg src=\&http:\u002F\\u002Fequation?tex=A%3DQ%5CLambda+Q%5ET\& alt=\&A=Q\\Lambda Q^T\& eeimg=\&1\&\u003E展开,看一看里面还有什么我们容易忽视的东西。\u003C\u002Fp\u003E\u003Cimg src=\&http:\u002F\\u002Fequation?tex=A%3DQ%5CLambda+Q%5ET%3D%5Cbegin%7Bbmatrix%7D%0Aq_1%26q_2%26%5Ccdots%26q_n%0A%5Cend%7Bbmatrix%7D%0A%5Cbegin%7Bbmatrix%7D%0A%5Clambda_1%5C%5C%26%5Clambda_2%0A%5C%5C%26%26%5Cddots%0A%5C%5C%26%26%26%5Clambda_n%0A%5Cend%7Bbmatrix%7D%0A%5Cbegin%7Bbmatrix%7D%0Aq_1%5ET%5C%5Cq_2%5ET%0A%5C%5C%5Cvdots%0Aq_n%5ET%0A%5Cend%7Bbmatrix%7D%0A%3D%5Clambda_1q_1q_1%5ET%2B%5Clambda_2q_2q_2%5ET%2B%5Ccdots%2B%5Clambda_nq_nq_n%5ET\& alt=\&A=Q\\Lambda Q^T=\\begin{bmatrix}\nq_1&q_2&\\cdots&q_n\n\\end{bmatrix}\n\\begin{bmatrix}\n\\lambda_1\\\\&\\lambda_2\n\\\\&&\\ddots\n\\\\&&&\\lambda_n\n\\end{bmatrix}\n\\begin{bmatrix}\nq_1^T\\\\q_2^T\n\\\\\\vdots\nq_n^T\n\\end{bmatrix}\n=\\lambda_1q_1q_1^T+\\lambda_2q_2q_2^T+\\cdots+\\lambda_nq_nq_n^T\& eeimg=\&1\&\u003E\u003Cbr\u003E\u003Cp\u003E请注意,每一个\u003Cimg src=\&http:\u002F\\u002Fequation?tex=q_iq_i%5ET\& alt=\&q_iq_i^T\& eeimg=\&1\&\u003E是一个对称的投影矩阵。还记得投影矩阵吗?就是和自己相乘之后,仍旧是自己的奇特矩阵。请再考察一下任意的两个投影矩阵相乘,会得到的结果:\u003C\u002Fp\u003E\u003Cp\u003E\u003Cimg src=\&http:\u002F\\u002Fequation?tex=q_iq_i%5ET%28q_jq_j%5ET%29%3Dq_i%28q_i%5ETq_j%29q_j%5ET%3D0\& alt=\&q_iq_i^T(q_jq_j^T)=q_i(q_i^Tq_j)q_j^T=0\& eeimg=\&1\&\u003E说明什么?任何一个对称矩阵\u003Cimg src=\&http:\u002F\\u002Fequation?tex=rank%28A%29%3Dn%2CR%5En\& alt=\&rank(A)=n,R^n\& eeimg=\&1\&\u003E,是\u003Cimg src=\&http:\u002F\\u002Fequation?tex=n\& alt=\&n\& eeimg=\&1\&\u003E个“相互垂直”投影矩阵的线性组合。\u003C\u002Fp\u003E\u003Ch2\u003E2、傅里叶级数(Fourier Series)\u003C\u002Fh2\u003E\u003Cp\u003E傅里叶级数是对定义域内函数的分解系数,在讨论函数之前,先来看看向量。\u003C\u002Fp\u003E\u003Cp\u003E两个向量:\u003C\u002Fp\u003E\u003Cimg src=\&http:\u002F\\u002Fequation?tex=u%3D%5Cbegin%7Bbmatrix%7Da_1%5C%5Ca_2%5C%5C%5Cvdots%5C%5Ca_n%5Cend%7Bbmatrix%7D\& alt=\&u=\\begin{bmatrix}a_1\\\\a_2\\\\\\vdots\\\\a_n\\end{bmatrix}\& eeimg=\&1\&\u003E\u003Cimg src=\&http:\u002F\\u002Fequation?tex=v%3D%5Cbegin%7Bbmatrix%7Db_1%5C%5Cb_2%5C%5C%5Cvdots%5C%5Cb_n%5Cend%7Bbmatrix%7D\& alt=\&v=\\begin{bmatrix}b_1\\\\b_2\\\\\\vdots\\\\b_n\\end{bmatrix}\& eeimg=\&1\&\u003E\u003Cbr\u003E\u003Cp\u003E定义向量的内积:\u003C\u002Fp\u003E\u003Cp\u003E\u003Cimg src=\&http:\u002F\\u002Fequation?tex=u+%5Ccdot+v%3Da_1b_1%2B%5Ccdots%2Ba_nb_n\& alt=\&u \\cdot v=a_1b_1+\\cdots+a_nb_n\& eeimg=\&1\&\u003E这个运算的奇妙之处在于,两个向量内积的结果是一个实数。看下图,在二维平面上,向量\u003Cimg src=\&http:\u002F\\u002Fequation?tex=u\& alt=\&u\& eeimg=\&1\&\u003E在\u003Cimg src=\&http:\u002F\\u002Fequation?tex=v\& alt=\&v\& eeimg=\&1\&\u003E方向上面的投影是\u003Cimg src=\&http:\u002F\\u002Fequation?tex=p\& alt=\&p\& eeimg=\&1\&\u003E,\u003Cimg src=\&http:\u002F\\u002Fequation?tex=p\& alt=\&p\& eeimg=\&1\&\u003E的长度是\u003Cimg src=\&http:\u002F\\u002Fequation?tex=L%3D%5Cleft%7C+u+%5Cright%7C+%5Ccdot+%5Cleft%7C+v%5Cright%7C+cos%7B%5Cgamma+%7D\& alt=\&L=\\left| u \\right| \\cdot \\left| v\\right| cos{\\gamma }\& eeimg=\&1\&\u003E,\u003Cimg src=\&http:\u002F\\u002Fequation?tex=%5Cgamma+\& alt=\&\\gamma \& eeimg=\&1\&\u003E是两向量之间的夹角。试想,如果\u003Cimg src=\&http:\u002F\\u002Fequation?tex=v\& alt=\&v\& eeimg=\&1\&\u003E向量是一个单位向量,\u003Cimg src=\&http:\u002F\\u002Fequation?tex=%5Cleft%7C+v+%5Cright%7C+%3D1\& alt=\&\\left| v \\right| =1\& eeimg=\&1\&\u003E那么,\u003Cimg src=\&http:\u002F\\u002Fequation?tex=u%5Ccdot+v\& alt=\&u\\cdot v\& eeimg=\&1\&\u003E就是\u003Cimg src=\&http:\u002F\\u002Fequation?tex=u\& alt=\&u\& eeimg=\&1\&\u003E在\u003Cimg src=\&http:\u002F\\u002Fequation?tex=v\& alt=\&v\& eeimg=\&1\&\u003E方向上投影向量的矢量长度,这个实数可以是正数也可以是负数。下面是扩展烧脑练习:之前在\u003Ca href=\&https:\u002F\\u002F\& class=\&internal\&\u003E《线性代数的直觉理解(2)》\u003C\u002Fa\u003E一文中提到的投影矩阵,给定矩阵\u003Cimg src=\&http:\u002F\\u002Fequation?tex=A\& alt=\&A\& eeimg=\&1\&\u003E,其对应的投影矩阵\u003Cimg src=\&http:\u002F\\u002Fequation?tex=P%3DA%28A%5ETA%29%5E%7B-1%7DA%5ET\& alt=\&P=A(A^TA)^{-1}A^T\& eeimg=\&1\&\u003E,该投影矩阵的每一个行向量代表了其原始矩阵\u003Cimg src=\&http:\u002F\\u002Fequation?tex=A\& alt=\&A\& eeimg=\&1\&\u003E列空间内的一个基向量,\u003Cimg src=\&http:\u002F\\u002Fequation?tex=Px%3D%5Cbegin%7Bbmatrix%7D%0Ap_1%5ET%5C%5Cp_2%5ET%5C%5C%5Cvdots%5C%5Cp_n%5ET%0A%5Cend%7Bbmatrix%7Dx%3D%5Cbegin%7Bbmatrix%7D%0Ap_1%5ET%5Ccdot+x%5C%5Cp_2%5ET%5Ccdot+x%5C%5C%5Cvdots%5C%5Cp_n%5ET%5Ccdot+x%0A%5Cend%7Bbmatrix%7D\& alt=\&Px=\\begin{bmatrix}\np_1^T\\\\p_2^T\\\\\\vdots\\\\p_n^T\n\\end{bmatrix}x=\\begin{bmatrix}\np_1^T\\cdot x\\\\p_2^T\\cdot x\\\\\\vdots\\\\p_n^T\\cdot x\n\\end{bmatrix}\& eeimg=\&1\&\u003E到这儿,投影矩阵发挥的作用就是使用其行向量,让未知向量\u003Cimg src=\&http:\u002F\\u002Fequation?tex=x\& alt=\&x\& eeimg=\&1\&\u003E分别与\u003Cimg src=\&http:\u002F\\u002Fequation?tex=n\& alt=\&n\& eeimg=\&1\&\u003E个行向量做内积,得到的新向量的每一个元素是一个投影值(实数),表示的是对象在投影矩阵对应行向量上面的矢量长度,也就是线性组合的系数。有了基,有了系数,对象就确定了,该对象就是最小二乘法当中我们迫切需要的近似值。换句话说,就是对超平面的投影,等同于对超平面的基分别投影得到各自的矢量长度,再利用基重建对象。\u003C\u002Fp\u003E\u003Cbr\u003E\u003Cnoscript\u003E\u003Cimg src=\&https:\u002F\\u002Fv2-d19c83f02c6aaaa029317_b.png\& data-rawwidth=\&502\& data-rawheight=\&316\& class=\&origin_image zh-lightbox-thumb\& width=\&502\& data-original=\&https:\u002F\\u002Fv2-d19c83f02c6aaaa029317_r.png\&\u003E\u003C\u002Fnoscript\u003E\u003Cimg src=\&data:image\u002Fsvg+utf8,&svg%20xmlns='http:\u002F\u002Fwww.w3.org\u002FFsvg'%20width='502'%20height='316'&&\u002Fsvg&\& data-rawwidth=\&502\& data-rawheight=\&316\& class=\&origin_image zh-lightbox-thumb lazy\& width=\&502\& data-original=\&https:\u002F\\u002Fv2-d19c83f02c6aaaa029317_r.png\& data-actualsrc=\&https:\u002F\\u002Fv2-d19c83f02c6aaaa029317_b.png\&\u003E\u003Cp\u003E这里,我想从空间、对象、正交基、向量内积和线性组合的角度来看傅里叶级数。\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E在\u003Cimg src=\&http:\u002F\\u002Fequation?tex=R%5En\& alt=\&R^n\& eeimg=\&1\&\u003E内,有\u003Cimg src=\&http:\u002F\\u002Fequation?tex=q_1%2Cq_2%5Ccdots%2Cq_n\& alt=\&q_1,q_2\\cdots,q_n\& eeimg=\&1\&\u003E个标准正交基,对于该空间内的任意向量\u003Cimg src=\&http:\u002F\\u002Fequation?tex=x\& alt=\&x\& eeimg=\&1\&\u003E,都能够写成如下的线性组合:\u003Cimg src=\&http:\u002F\\u002Fequation?tex=x%3Dx_1q_1%2Bx_2q_2%2B%5Ccdots%2Bx_nq_n\& alt=\&x=x_1q_1+x_2q_2+\\cdots+x_nq_n\& eeimg=\&1\&\u003E。而往往这组标准正交基是已知的,我们想要知道线性组合的系数\u003Cimg src=\&http:\u002F\\u002Fequation?tex=x_1%2Cx_2%2C%5Ccdots%2Cx_n\& alt=\&x_1,x_2,\\cdots,x_n\& eeimg=\&1\&\u003E是多少。聪明人一下子就想到,可以左乘\u003Cimg src=\&http:\u002F\\u002Fequation?tex=x_i%5ET\& alt=\&x_i^T\& eeimg=\&1\&\u003E,这样会发生其余\u003Cimg src=\&http:\u002F\\u002Fequation?tex=n-1\& alt=\&n-1\& eeimg=\&1\&\u003E个分量成为0,\u003Cimg src=\&http:\u002F\\u002Fequation?tex=x_i%3Dq_i%5ETx\& alt=\&x_i=q_i^Tx\& eeimg=\&1\&\u003E。\u003C\u002Fp\u003E\u003Cp\u003E下面看函数:\u003C\u002Fp\u003E\u003Cimg src=\&http:\u002F\\u002Fequation?tex=w%28x%29%3Da_0%2Ba_1cosx%2Bb_1sinx%2Ba_2cos2x%2Bb_2sin2x%2B%5Ccdots\& alt=\&w(x)=a_0+a_1cosx+b_1sinx+a_2cos2x+b_2sin2x+\\cdots\& eeimg=\&1\&\u003E\u003Cbr\u003E\u003Cp\u003E这是一个关于\u003Cimg src=\&http:\u002F\\u002Fequation?tex=x\& alt=\&x\& eeimg=\&1\&\u003E的函数,人们在研究这个函数的时候,会通过“分解”的思想来理解和处理复杂的函数,因为那些作为基底的函数自身比较简单,并且相互之间具有正交的性质,利于展开计算。到这儿,\u003Cb\u003E问题来了,如何求基函数的系数?\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cb\u003E类比着思考:向量内的元素一般是有限的,而向量的内积的计算规则是:“对应位置相乘再求和”,基函数作为性质优良的连续函数,是不是也有个类似于向量内积的过程?是的!求和,对应着积分(Integration)。这下就清楚了,举个例子:\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cb\u003E\u003Cimg src=\&http:\u002F\\u002Fequation?tex=f%28x%29%3Dsinx%2Cg%28x%29%3Dcosx%0A\& alt=\&f(x)=sinx,g(x)=cosx\n\& eeimg=\&1\&\u003E,求函数的“内积”,就是\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Cimg src=\&http:\u002F\\u002Fequation?tex=f%5ETg%3D%5Cint_%7B0%7D%5E%7B2%5Cpi%7D+f%28x%29g%28x%29dx%3D%5Cint_%7B0%7D%5E%7B2%5Cpi%7D+sinx%26d%28sinx%29%3D%5Cfrac%7B1%7D%7B2%7D+%28sinx%29%5E2%7C_0%5E%7B2%5Cpi%7D%3D0\& alt=\&f^Tg=\\int_{0}^{2\\pi} f(x)g(x)dx=\\int_{0}^{2\\pi} sinx&d(sinx)=\\frac{1}{2} (sinx)^2|_0^{2\\pi}=0\& eeimg=\&1\&\u003E\u003Cp\u003E\u003Cb\u003E这里\u003Cimg src=\&http:\u002F\\u002Fequation?tex=f%28x%29\& alt=\&f(x)\& eeimg=\&1\&\u003E和\u003Cimg src=\&http:\u002F\\u002Fequation?tex=g%28x%29\& alt=\&g(x)\& eeimg=\&1\&\u003E都是周期为\u003Cimg src=\&http:\u002F\\u002Fequation?tex=2%5Cpi\& alt=\&2\\pi\& eeimg=\&1\&\u003E的函数,所以我们考察其在一个完整周期内的情况,“内积”为0!所以在整个定义域内积分结果也是0。\u003Cbr\u003E\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Cp\u003E有了函数的”内积“,我们就有了函数正交的概念:如果在定义域内两个函数乘积的积分是0,那么两个函数就是正交的。傅里叶巧妙地想到了这点,然后我们就能够很容易求傅里叶级数了:\u003C\u002Fp\u003E\u003Cp\u003E例如,想求\u003Cimg src=\&http:\u002F\\u002Fequation?tex=a_1\& alt=\&a_1\& eeimg=\&1\&\u003E,就用\u003Cimg src=\&http:\u002F\\u002Fequation?tex=a_1\& alt=\&a_1\& eeimg=\&1\&\u003E的函数\u003Cimg src=\&http:\u002F\\u002Fequation?tex=cosx\& alt=\&cosx\& eeimg=\&1\&\u003E和原函数相乘,再求积分:\u003C\u002Fp\u003E\u003Cimg src=\&http:\u002F\\u002Fequation?tex=%5Cint_%7B0%7D%5E%7B%2B%5Cinfty%7D+w%28x%29cosxdx%3D%5Cint_%7B0%7D%5E%7B%2B%5Cinfty%7D+%28a_0%2Ba_1cosx%2Bb_1sinx%2Ba_2cos2x%2Bb_2sin2x%2B%5Ccdots%29cosxdx%3Da_1%5Cint_%7B0%7D%5E%7B2%5Cpi%7Dcosx%5E2dx%3Da_1%5Cpi\& alt=\&\\int_{0}^{+\\infty} w(x)cosxdx=\\int_{0}^{+\\infty} (a_0+a_1cosx+b_1sinx+a_2cos2x+b_2sin2x+\\cdots)cosxdx=a_1\\int_{0}^{2\\pi}cosx^2dx=a_1\\pi\& eeimg=\&1\&\u003E\u003Cbr\u003E\u003Cp\u003E从而,\u003Cimg src=\&http:\u002F\\u002Fequation?tex=a_1%3D%5Cfrac%7B1%7D%7B%5Cpi%7D+%5Cint_%7B0%7D%5E%7B%5Cinfty%7D+w%28x%29cosxdx\& alt=\&a_1=\\frac{1}{\\pi} \\int_{0}^{\\infty} w(x)cosxdx\& eeimg=\&1\&\u003E。求解过程结束。是不是有个感觉?联想到\u003Cb\u003E投影:这个结果就是函数在\u003Cimg src=\&http:\u002F\\u002Fequation?tex=cosx\& alt=\&cosx\& eeimg=\&1\&\u003E这个函数(也可以理解成在无穷维度下的向量)上面的投影值!\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cb\u003E在这里傅里叶级数以及傅里叶变换等不展开讨论,重点是建立函数和向量之间的内在关系,让我们更直觉地理解什么是向量正交和投影,什么是函数正交和投影。\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Ch2\u003E3、数据的降维-PCA\u003C\u002Fh2\u003E\u003Cp\u003E本文章的第三部分想通过实际的例子-基本的图像压缩算法以及PCA(Principal Component Analysis)主成分分析的推导过程,向大家展示数据的向量表示、向量内积、向量投影、基变换,进一步加强对矩阵乘法形式、规则的直觉理解。\u003C\u002Fp\u003E\u003Cp\u003E我们所处的时代是一个大数据的时代,这点大家应该都承认。面对如此众多的数据,我们非常有必要对数据按照一定的排列顺序组成公认的结构,这种结构就是大名鼎鼎的向量,记住,是列向量!也就是将不同的变化量按照列排好,作为原始材料供计算机来运算使用。我想,这是数学建模领域里面最最简单的一种抽象方法了吧。\u003C\u002Fp\u003E\u003Cp\u003E理想的状态是计算机不经过任何的处理直接对成百上千甚至几百万维度的向量进行使用,但是,从最近几年的大热机器学习和数据挖掘学科来看,如果数据维度太大,导致算法的复杂度急剧增大,计算机瘫痪,无法在规定时间内完成工作。数据降维是很有必要的,从数学角度讲,就是利用线性代数的变换方法,将高维的原始向量转换成较低维的向量,尽量保存原始向量当中包含的有用信息。\u003C\u002Fp\u003E\u003Cbr\u003E\u003Cb\u003E下一步说说降维,我还是要提醒大家,一组基和一个向量,才能描述清楚对象。\u003C\u002Fb\u003E\u003Cp\u003E正常来讲,给定了一个\u003Cimg src=\&http:\u002F\\u002Fequation?tex=n\& alt=\&n\& eeimg=\&1\&\u003E维向量,其描述的对象一定是由\u003Cimg src=\&http:\u002F\\u002Fequation?tex=n\& alt=\&n\& eeimg=\&1\&\u003E个基底为支撑的。现在我们要降维,也就是说需要找到\u003Cimg src=\&http:\u002F\\u002Fequation?tex=k\& alt=\&k\& eeimg=\&1\&\u003E个(\u003Cimg src=\&http:\u002F\\u002Fequation?tex=k%5Cleq+n\& alt=\&k\\leq n\& eeimg=\&1\&\u003E)新的基底,以此为支撑产生新的\u003Cimg src=\&http:\u002F\\u002Fequation?tex=k\& alt=\&k\& eeimg=\&1\&\u003E维列向量。\u003Cb\u003E那么最大的问题就是:如何寻找这些向量,使得每次到来的\u003Cimg src=\&http:\u002F\\u002Fequation?tex=n\& alt=\&n\& eeimg=\&1\&\u003E维向量,在向这\u003Cimg src=\&http:\u002F\\u002Fequation?tex=k\& alt=\&k\& eeimg=\&1\&\u003E个向量做投影时候,能够最大限度地产生区分。\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cb\u003E例如,给定三个二维向量:\u003Cnoscript\u003E\u003Cimg src=\&https:\u002F\\u002Fv2-4af21baba578_b.png\& data-rawwidth=\&924\& data-rawheight=\&573\& class=\&origin_image zh-lightbox-thumb\& width=\&924\& data-original=\&https:\u002F\\u002Fv2-4af21baba578_r.png\&\u003E\u003C\u002Fnoscript\u003E\u003Cimg src=\&data:image\u002Fsvg+utf8,&svg%20xmlns='http:\u002F\u002Fwww.w3.org\u002FFsvg'%20width='924'%20height='573'&&\u002Fsvg&\& data-rawwidth=\&924\& data-rawheight=\&573\& class=\&origin_image zh-lightbox-thumb lazy\& width=\&924\& data-original=\&https:\u002F\\u002Fv2-4af21baba578_r.png\& data-actualsrc=\&https:\u002F\\u002Fv2-4af21baba578_b.png\&\u003E\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cb\u003E\u003Cimg src=\&http:\u002F\\u002Fequation?tex=u%3D%5Cbegin%7Bbmatrix%7D%0A-2%5C%5C0%5Cend%7Bbmatrix%7D\& alt=\&u=\\begin{bmatrix}\n-2\\\\0\\end{bmatrix}\& eeimg=\&1\&\u003E,\u003Cimg src=\&http:\u002F\\u002Fequation?tex=v%3D%5Cbegin%7Bbmatrix%7D%0A2%5C%5C1%5Cend%7Bbmatrix%7D\& alt=\&v=\\begin{bmatrix}\n2\\\\1\\end{bmatrix}\& eeimg=\&1\&\u003E,\u003Cimg src=\&http:\u002F\\u002Fequation?tex=w%3D%5Cbegin%7Bbmatrix%7D%0A-1%5C%5C-3%5Cend%7Bbmatrix%7D\& alt=\&w=\\begin{bmatrix}\n-1\\\\-3\\end{bmatrix}\& eeimg=\&1\&\u003E找到一条直线,使得上面的三个向量投影下来之后,每个点尽可能地分散。\u003Cbr\u003E\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Cp\u003E上面的描述是发现问题的过程,这个过程严重抄袭了前辈们的思考过程,我负责复现那个原创的思维过程,也就是提出问题,往往问题的提出才是最难的!\u003C\u002Fp\u003E\u003Cp\u003E\u003Cb\u003E解决问题:\u003C\u002Fb\u003E上面提到的问题,最大的困难是“最大限度地产生区分“。涉及到概率统计方面的知识:对于单变量的情况,我们用\u003C\u002Fp\u003E\u003Cul\u003E\u003Cli\u003E期望(一阶原点矩)\u003Cbr\u003E\u003C\u002Fli\u003E\u003Cli\u003E方差(二阶中心距)\u003Cbr\u003E\u003C\u002Fli\u003E\u003Cli\u003E标准差\u003C\u002Fli\u003E\u003C\u002Ful\u003E\u003Cbr\u003E\u003Ca href=\&http:\u002F\\u002F?target=https%3A\u002F\u002Fzh.wikipedia.org\u002Fwiki\u002F%25E7%259F%25A9_%28%25E6%%25E5%25AD%25B8%29\& class=\& wrap external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003E概率统计当中的矩\u003Ci class=\&icon-external\&\u003E\u003C\u002Fi\u003E\u003C\u002Fa\u003E\u003Cbr\u003E来衡量这个变量在一维的维度上分布在什么位置较多:\u003Cimg src=\&http:\u002F\\u002Fequation?tex=%5Cmu+\& alt=\&\\mu \& eeimg=\&1\&\u003E和分布的密集程度:\u003Cimg src=\&http:\u002F\\u002Fequation?tex=%5Csigma+\& alt=\&\\sigma \& eeimg=\&1\&\u003E。单变量无偏估计方差的计算公式如下:\u003Cbr\u003E\u003Cimg src=\&http:\u002F\\u002Fequation?tex=%5Csigma+_x%5E2%3D%5Cfrac%7B1%7D%7BN-1%7D+%5Csum_%7B1%7D%5E%7BN%7D%7B%28x_i-%5Cmu%29%5E2%7D+%3DE%5Cleft%5B++%28x-E%28x%29%29%28x-E%28x%29+%5Cright%5D%3D%5Csigma%28x%2Cx%29\& alt=\&\\sigma _x^2=\\frac{1}{N-1} \\sum_{1}^{N}{(x_i-\\mu)^2} =E\\left[
(x-E(x))(x-E(x) \\right]=\\sigma(x,x)\& eeimg=\&1\&\u003E\u003Cbr\u003E\u003Cbr\u003E\u003Ca href=\&http:\u002F\\u002F?target=https%3A\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FUnbiased_estimation_of_standard_deviation\& class=\& wrap external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003EUnbiased estimation of standard deviation\u003Ci class=\&icon-external\&\u003E\u003C\u002Fi\u003E\u003C\u002Fa\u003E\u003Cbr\u003E\u003Cp\u003E在自然界,很多的变量都遵循正态分布的规律,如下图:\u003C\u002Fp\u003E\u003Cnoscript\u003E\u003Cimg src=\&https:\u002F\\u002Fv2-57fd4ec4d9ce_b.png\& data-rawwidth=\&553\& data-rawheight=\&419\& class=\&origin_image zh-lightbox-thumb\& width=\&553\& data-original=\&https:\u002F\\u002Fv2-57fd4ec4d9ce_r.png\&\u003E以二维的输入向量展开讨论:原始的输入为:\u003C\u002Fnoscript\u003E\u003Cimg src=\&data:image\u002Fsvg+utf8,&svg%20xmlns='http:\u002F\u002Fwww.w3.org\u002FFsvg'%20width='553'%20height='419'&&\u002Fsvg&\& data-rawwidth=\&553\& data-rawheight=\&419\& class=\&origin_image zh-lightbox-thumb lazy\& width=\&553\& data-original=\&https:\u002F\\u002Fv2-57fd4ec4d9ce_r.png\& data-actualsrc=\&https:\u002F\\u002Fv2-57fd4ec4d9ce_b.png\&\u003E以二维的输入向量展开讨论:原始的输入为:\u003Cimg src=\&http:\u002F\\u002Fequation?tex=X_%7Borg%7D%3D%5Cbegin%7Bpmatrix%7D+a_1+%26+a_2+%26+%5Ccdots+%26+a_m+%5C%5Cb_1+%26+b_2+%26+%5Ccdots+%26+b_m+%5Cend%7Bpmatrix%7D\& alt=\&X_{org}=\\begin{pmatrix} a_1 & a_2 & \\cdots & a_m \\\\b_1 & b_2 & \\cdots & b_m \\end{pmatrix}\& eeimg=\&1\&\u003E,经过中心化(每个元素减去行期望)的操作,\u003Cimg src=\&http:\u002F\\u002Fequation?tex=x_i%3Da_i-E%28a%29%2Cy_i%3Db_i-E%28b%29\& alt=\&x_i=a_i-E(a),y_i=b_i-E(b)\& eeimg=\&1\&\u003E之后,能够非常好地简化我们所说的最大程度地区分。除了需要考察单变量自身的分布密集程度,还需要考察两个变量之间分布的规律,于是协方差诞生了:\u003Cimg src=\&http:\u002F\\u002Fequation?tex=%5Csigma%28x%2Cy%29%3DE%5Cleft%5B+%28x-E%28x%29%29%28y-E%28y%29%29+%5Cright%5D+\& alt=\&\\sigma(x,y)=E\\left[ (x-E(x))(y-E(y)) \\right] \& eeimg=\&1\&\u003E。(估计以后的文章会在概率统计方面展开篇幅进行深入思考,看看到底这些计算规则背后能够怎么样为人们服务,帮助我们做决策)\u003Cp\u003E于是得到:\u003C\u002Fp\u003E\u003Cimg src=\&http:\u002F\\u002Fequation?tex=X%3D%5Cbegin%7Bpmatrix%7D+x_1+%26+x_2+%26+%5Ccdots+%26+x_m+%5C%5C+y_1+%26+y_2+%26+%5Ccdots+%26+y_m+%5Cend%7Bpmatrix%7D\& alt=\&X=\\begin{pmatrix} x_1 & x_2 & \\cdots & x_m \\\\ y_1 & y_2 & \\cdots & y_m \\end{pmatrix}\& eeimg=\&1\&\u003E\u003Cbr\u003E\u003Cimg src=\&http:\u002F\\u002Fequation?tex=%5CSigma%3D%5Cfrac%7B1%7D%7Bm-1%7DXX%5E%5Cmathsf%7BT%7D%3D%5Cbegin%7Bpmatrix%7D+%5Cfrac%7B1%7D%7Bm-1%7D%5Csum_%7Bi%3D1%7D%5Em%7Bx_i%5E2%7D+%26+%5Cfrac%7B1%7D%7Bm-1%7D%5Csum_%7Bi%3D1%7D%5Em%7Bx_iy_i%7D+%5C%5C+%5Cfrac%7B1%7D%7Bm-1%7D%5Csum_%7Bi%3D1%7D%5Em%7Bx_iy_i%7D+%26+%5Cfrac%7B1%7D%7Bm-1%7D%5Csum_%7Bi%3D1%7D%5Em%7By_i%5E2%7D+%5Cend%7Bpmatrix%7D\& alt=\&\\Sigma=\\frac{1}{m-1}XX^\\mathsf{T}=\\begin{pmatrix} \\frac{1}{m-1}\\sum_{i=1}^m{x_i^2} & \\frac{1}{m-1}\\sum_{i=1}^m{x_iy_i} \\\\ \\frac{1}{m-1}\\sum_{i=1}^m{x_iy_i} & \\frac{1}{m-1}\\sum_{i=1}^m{y_i^2} \\end{pmatrix}\& eeimg=\&1\&\u003E\u003Cp\u003E神奇的事情发生了,矩阵主对角线上的元素是方差,非主对角线上的元素是协方差,并且该矩阵对称!另外提一下,\u003Cb\u003E协方差矩阵可以理解成一个对白噪声的线性变换,变换成参与该矩阵计算的那么些向量所代表的信号!\u003C\u002Fb\u003E有兴趣的同学翻翻资料,思考思考。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cnoscript\u003E\u003Cimg src=\&https:\u002F\\u002Fv2-cb520adb7f36d_b.png\& data-rawwidth=\&431\& data-rawheight=\&389\& class=\&origin_image zh-lightbox-thumb\& width=\&431\& data-original=\&https:\u002F\\u002Fv2-cb520adb7f36d_r.png\&\u003E\u003C\u002Fnoscript\u003E\u003Cimg src=\&data:image\u002Fsvg+utf8,&svg%20xmlns='http:\u002F\u002Fwww.w3.org\u002FFsvg'%20width='431'%20height='389'&&\u002Fsvg&\& data-rawwidth=\&431\& data-rawheight=\&389\& class=\&origin_image zh-lightbox-thumb lazy\& width=\&431\& data-original=\&https:\u002F\\u002Fv2-cb520adb7f36d_r.png\& data-actualsrc=\&https:\u002F\\u002Fv2-cb520adb7f36d_b.png\&\u003E\u003Ca href=\&http:\u002F\\u002F?target=http%3A\u002F\\u002F\u002Fgeometric-interpretation-covariance-matrix\u002F\& class=\& wrap external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003E协方差矩阵的几何理解\u003Ci class=\&icon-external\&\u003E\u003C\u002Fi\u003E\u003C\u002Fa\u003E\u003Cbr\u003E绕了一下远路,现在回来:刚才说的降维是使得每次到来的\u003Cimg src=\&http:\u002F\\u002Fequation?tex=n\& alt=\&n\& eeimg=\&1\&\u003E维向量,在向这\u003Cimg src=\&http:\u002F\\u002Fequation?tex=k\& alt=\&k\& eeimg=\&1\&\u003E个向量做投影时候,能够最大限度地产生区分。量化描述就是:投影完成之后,产生的新向量其协方差矩阵主对角线上面的元素尽量大,而其非主对角线上面的元素为零。这里一定要感谢这个协方差矩阵。好了,指明了解决问题的方向,那么,就可以出发啦:为了表达得更具有一般性,我们就以\u003Cimg src=\&http:\u002F\\u002Fequation?tex=n\& alt=\&n\& eeimg=\&1\&\u003E维数据向量降维成\u003Cimg src=\&http:\u002F\\u002Fequation?tex=k\& alt=\&k\& eeimg=\&1\&\u003E。\u003C\u002Fp\u003E\u003Cp\u003E看看变换前的数据矩阵\u003Cimg src=\&http:\u002F\\u002Fequation?tex=X%3D%5Cbegin%7Bbmatrix%7D%0Ax_1%26x_2%26%5Ccdots%26x_m%0A%5Cend%7Bbmatrix%7D\& alt=\&X=\\begin{bmatrix}\nx_1&x_2&\\cdots&x_m\n\\end{bmatrix}\& eeimg=\&1\&\u003E那么获取到的信息是具有\u003Cimg src=\&http:\u002F\\u002Fequation?tex=m\& alt=\&m\& eeimg=\&1\&\u003E个数据向量,每个向量都是\u003Cimg src=\&http:\u002F\\u002Fequation?tex=n\& alt=\&n\& eeimg=\&1\&\u003E维的。接着,利用上面的计算公式,先中心化,再求协方差矩阵,得到\u003Cimg src=\&http:\u002F\\u002Fequation?tex=%5CSigma\& alt=\&\\Sigma\& eeimg=\&1\&\u003E。设\u003Cimg src=\&http:\u002F\\u002Fequation?tex=P%3D%5Cbegin%7Bbmatrix%7D%0Ap_1%5C%5Cp_2%5C%5C%5Cvdots%5C%5Cp_k%0A%5Cend%7Bbmatrix%7D\& alt=\&P=\\begin{bmatrix}\np_1\\\\p_2\\\\\\vdots\\\\p_k\n\\end{bmatrix}\& eeimg=\&1\&\u003E其中\u003Cimg src=\&http:\u002F\\u002Fequation?tex=p_i\& alt=\&p_i\& eeimg=\&1\&\u003E是所求的基。投影完成之后,新对象的坐标设为\u003Cimg src=\&http:\u002F\\u002Fequation?tex=y_i\& alt=\&y_i\& eeimg=\&1\&\u003E,从而有\u003C\u002Fp\u003E\u003Cimg src=\&http:\u002F\\u002Fequation?tex=Y%3D%5Cbegin%7Bbmatrix%7D%0Ay_1%26y_2%26%5Ccdots%26y_m%0A%5Cend%7Bbmatrix%7D%3DPX\& alt=\&Y=\\begin{bmatrix}\ny_1&y_2&\\cdots&y_m\n\\end{bmatrix}=PX\& eeimg=\&1\&\u003E\u003Cbr\u003E\u003Cp\u003E设\u003Cimg src=\&http:\u002F\\u002Fequation?tex=Y\& alt=\&Y\& eeimg=\&1\&\u003E的协方差矩阵为\u003Cimg src=\&http:\u002F\\u002Fequation?tex=%5CSigma%27\& alt=\&\\Sigma'\& eeimg=\&1\&\u003E,那么\u003C\u002Fp\u003E\u003Cimg src=\&http:\u002F\\u002Fequation?tex=%5Cbegin%7Barray%7D%7Bl+l+l%7D+%5CSigma%27+%26+%3D+%26+%5Cfrac%7B1%7D%7Bm-1%7DYY%5E%5Cmathsf%7BT%7D+%5C%5C+%26+%3D+%26+%5Cfrac%7B1%7D%7Bm-1%7D%28PX%29%28PX%29%5E%5Cmathsf%7BT%7D+%5C%5C+%26+%3D+%26+%5Cfrac%7B1%7D%7Bm-1%7DPXX%5E%5Cmathsf%7BT%7DP%5E%5Cmathsf%7BT%7D+%5C%5C+%26+%3D+%26+P%28%5Cfrac%7B1%7D%7Bm-1%7DXX%5E%5Cmathsf%7BT%7D%29P%5E%5Cmathsf%7BT%7D+%5C%5C+%26+%3D+%26+P%5CSigma+P%5E%5Cmathsf%7BT%7D+%5Cend%7Barray%7D\& alt=\&\\begin{array}{l l l} \\Sigma' & = & \\frac{1}{m-1}YY^\\mathsf{T} \\\\ & = & \\frac{1}{m-1}(PX)(PX)^\\mathsf{T} \\\\ & = & \\frac{1}{m-1}PXX^\\mathsf{T}P^\\mathsf{T} \\\\ & = & P(\\frac{1}{m-1}XX^\\mathsf{T})P^\\mathsf{T} \\\\ & = & P\\Sigma P^\\mathsf{T} \\end{array}\& eeimg=\&1\&\u003E\u003Cbr\u003E\u003Cp\u003E现在比较清晰了,问题进一步转化成了找到合适的\u003Cimg src=\&http:\u002F\\u002Fequation?tex=P\& alt=\&P\& eeimg=\&1\&\u003E,能够对角化\u003Cimg src=\&http:\u002F\\u002Fequation?tex=%5CSigma\& alt=\&\\Sigma\& eeimg=\&1\&\u003E。开始窃喜。因为对角化这个对称矩阵简直是易如反掌!请参考本文的第一部分。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cb\u003E总结:\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Cp\u003EPCA的算法计算过程如下:\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E设有m条n维数据。\u003C\u002Fp\u003E\u003Cbr\u003E\u003Col\u003E\u003Cli\u003E将原始数据按列组成n行m列矩阵X\u003C\u002Fli\u003E\u003Cli\u003E将X进行中心化操作,即减去这一行的均值\u003C\u002Fli\u003E\u003Cli\u003E求出协方差矩阵\u003Cimg src=\&http:\u002F\\u002Fequation?tex=%5CSigma%3D%5Cfrac%7B1%7D%7Bm%7DXX%5E%5Cmathsf%7BT%7D\& alt=\&\\Sigma=\\frac{1}{m}XX^\\mathsf{T}\& eeimg=\&1\&\u003E\u003C\u002Fli\u003E\u003Cli\u003E求出协方差矩阵的特征值及对应的特征向量\u003C\u002Fli\u003E\u003Cli\u003E将特征向量按对应特征值大小从上到下按行排列成矩阵,取前\u003Cimg src=\&http:\u002F\\u002Fequation?tex=k\& alt=\&k\& eeimg=\&1\&\u003E行组成矩阵\u003Cimg src=\&http:\u002F\\u002Fequation?tex=P\& alt=\&P\& eeimg=\&1\&\u003E\u003C\u002Fli\u003E\u003Cli\u003E\u003Cimg src=\&http:\u002F\\u002Fequation?tex=Y%3DPX\& alt=\&Y=PX\& eeimg=\&1\&\u003E即为降维到\u003Cimg src=\&http:\u002F\\u002Fequation?tex=k\& alt=\&k\& eeimg=\&1\&\u003E维后的数据\u003C\u002Fli\u003E\u003C\u002Fol\u003E\u003Cbr\u003E\u003Cp\u003E参考资料\u003C\u002Fp\u003E\u003Cp\u003E\u003Ca href=\&http:\u002F\\u002F?target=http%3A\u002F\u002Fwww.math.harvard.edu\u002Farchive\u002F21b_fall_04\u002Fexhibits\u002Fhistoryvectorspace\u002Findex.html\& class=\& wrap external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003EHistory of finite dimensional Vector Spaces\u003Ci class=\&icon-external\&\u003E\u003C\u002Fi\u003E\u003C\u002Fa\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Ca href=\&http:\u002F\\u002F?target=http%3A\u002F\u002Fblog.csdn.net\u002FxiaojidanFarticle\u002Fdetails\u002F\& class=\& wrap external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003EPCA的数学原理\u003Ci class=\&icon-external\&\u003E\u003C\u002Fi\u003E\u003C\u002Fa\u003E\u003C\u002Fp\u003E&,&updated&:new Date(&T13:55:35.000Z&),&canComment&:false,&commentPermission&:&anyone&,&commentCount&:0,&collapsedCount&:0,&likeCount&:10,&state&:&published&,&isLiked&:false,&slug&:&&,&lastestTipjarors&:[],&isTitleImageFullScreen&:false,&rating&:&none&,&titleImage&:&https:\u002F\\u002Fv2-7b2b8a6fe55ed28bba0f90279faaf8df_r.jpg&,&links&:{&comments&:&\u002Fapi\u002Fposts\u002F2Fcomments&},&reviewers&:[],&topics&:[{&url&:&https:\u002F\\u002Ftopic\u002F&,&id&:&&,&name&:&主成分分析&},{&url&:&https:\u002F\\u002Ftopic\u002F&,&id&:&&,&name&:&傅里叶变换(Fourier Transform)&}],&adminClosedComment&:false,&titleImageSize&:{&width&:1024,&height&:768},&href&:&\u002Fapi\u002Fposts\u002F&,&excerptTitle&:&&,&column&:{&slug&:&warden&,&name&:&机器人眼中的数学&},&tipjarState&:&activated&,&tipjarTagLine&:&真诚赞赏,手留余香&,&sourceUrl&:&&,&pageCommentsCount&:0,&tipjarorCount&:0,&annotationAction&:[],&hasPublishingDraft&:false,&snapshotUrl&:&&,&publishedTime&:&T21:55:35+08:00&,&url&:&\u002Fp\u002F&,&lastestLikers&:[{&bio&:null,&isFollowing&:false,&hash&:&eaf73a111abc1e73c12ebc235cc0f560&,&uid&:457000,&isOrg&:false,&slug&:&mu-mu-13-4-9&,&isFollowed&:false,&description&:&&,&name&:&LLLL&,&profileUrl&:&https:\u002F\\u002Fpeople\u002Fmu-mu-13-4-9&,&avatar&:{&id&:&da8e974dc&,&template&:&https:\u002F\\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false},{&bio&:&瓜皮&,&isFollowing&:false,&hash&:&ed251498b&,&uid&:955700,&isOrg&:false,&slug&:&ma-ha-ha-92&,&isFollowed&:false,&description&:&&,&name&:&超级豪&,&profileUrl&:&https:\u002F\\u002Fpeople\u002Fma-ha-ha-92&,&avatar&:{&id&:&v2-ce718adc41b373e209e47e1c&,&template&:&https:\u002F\\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false},{&bio&:&学生&,&isFollowing&:false,&hash&:&5d0eaeda14051daa3e685&,&uid&:893000,&isOrg&:false,&slug&:&liu-chao-89-27-7&,&isFollowed&:false,&description&:&&,&name&:&夷希微&,&profileUrl&:&https:\u002F\\u002Fpeople\u002Fliu-chao-89-27-7&,&avatar&:{&id&:&da8e974dc&,&template&:&https:\u002F\\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false},{&bio&:&so was I&,&isFollowing&:false,&hash&:&faef15fbaaf2e4de5ba1c4ea6ce8f1f7&,&uid&:64,&isOrg&:false,&slug&:&chen-hao-jie-64&,&isFollowed&:false,&description&:&INJT型人格&,&name&:&白木&,&profileUrl&:&https:\u002F\\u002Fpeople\u002Fchen-hao-jie-64&,&avatar&:{&id&:&fb71a215cbcec&,&template&:&https:\u002F\\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false},{&bio&:&略知一二&,&isFollowing&:false,&hash&:&04afec53ef44bafc80ff48ed&,&uid&:56,&isOrg&:false,&slug&:&sun-wen-92-36&,&isFollowed&:false,&description&:&&,&name&:&孙文&,&profileUrl&:&https:\u002F\\u002Fpeople\u002Fsun-wen-92-36&,&avatar&:{&id&:&96d431940&,&template&:&https:\u002F\\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false}],&summary&:&\u003Cimg src=\&https:\u002F\\u002Fv2-d19c83f02c6aaaax112.png\& data-rawwidth=\&502\& data-rawheight=\&316\& class=\&origin_image inline-img zh-lightbox-thumb\& data-original=\&https:\u002F\\u002Fv2-d19c83f02c6aaaa029317_r.png\&\u003E从本次文章开始,将要就某些具体的问题展开讨论。1、对称矩阵(Symmetric Matrices)定义:在R^n空间,矩阵A=A^T为对称矩阵。所以,对称矩阵首先是方阵。 下面看看它具有的性质:特征值是实数;能够找到n个相互垂直的特征向量。 最重要的是,对称矩阵能够写…&,&reviewingCommentsCount&:0,&meta&:{&previous&:{&isTitleImageFullScreen&:false,&rating&:&none&,&titleImage&:&https:\u002F\\u002F50\u002Fv2-7f224ace030adbd9266eeb1_xl.jpg&,&links&:{&comments&:&\u002Fapi\u002Fposts\u002F2Fcomments&},&topics&:[{&url&:&https:\u002F\\u002Ftopic\u002F&,&id&:&&,&name&:&奇异值分解&},{&url&:&https:\u002F\\u002Ftopic\u002F&,&id&:&&,&name&:&特征值&},{&url&:&https:\u002F\\u002Ftopic\u002F&,&id&:&&,&name&:&图像压缩&}],&adminClosedComment&:false,&href&:&\u002Fapi\u002Fposts\u002F&,&excerptTitle&:&&,&author&:{&bio&:&喜欢优美的代码和自圆其说的算法。&,&isFollowing&:false,&hash&:&ba51fa269b1dd550e30baec649198dba&,&uid&:323900,&isOrg&:false,&slug&:&li-yang-46-16-36&,&isFollowed&:false,&description&:&喜欢编程,了解图像处理算法、过程控制理论及算法、C++、Qt。代码仓库https:\\u002Fwozaiqufu&,&name&:&李阳&,&profileUrl&:&https:\u002F\\u002Fpeople\u002Fli-yang-46-16-36&,&avatar&:{&id&:&v2-448f8c35ee7b52fb276df8&,&template&:&https:\u002F\\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false},&column&:{&slug&:&warden&,&name&:&机器人眼中的数学&},&content&:&本次文章将要针对相似矩阵展开。不过相似矩阵只是一个引子,正餐是矩阵的特征值、特征向量以及SVD。\u003Ch2\u003E\u003Cb\u003E1、相似矩阵\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E首先,相似矩阵属于矩阵的范畴,所以,\u003Cb\u003E它的最基本的功能还是负责空间内对象的变换。\u003C\u002Fb\u003E这点很关键!好,既然是负责变换,那么,就需要作用于某个特定的对象。而对象的描述,我们在《线性代数的直觉理解(1)》当中反复强调,是需要一组基和一个向量才能表达清楚的。那么,在不同的基描述下,这个向量就会不同,从而导致相同的变换其对应的那个矩阵有所不同,但是这一系列的矩阵都具有一个相同的性质,那就是相似。引言部分结束,请看后面的推导过程:\u003C\u002Fp\u003E\u003Cp\u003E假设在一个线性空间内,有两个坐标标架,我们定义为\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Cleft%5B+%5Calpha+%5Cright%5D+\& alt=\&\\left[ \\alpha \\right] \& eeimg=\&1\&\u003E和\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Cleft%5B+%5Cbeta+%5Cright%5D+\& alt=\&\\left[ \\beta \\right] \& eeimg=\&1\&\u003E。在这个空间内,执行相同的线性变换,如果选用\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Cleft%5B+%5Calpha+%5Cright%5D+\& alt=\&\\left[ \\alpha \\right] \& eeimg=\&1\&\u003E基,那么该对象在变换之前的坐标向量为\u003Cimg src=\&https:\u002F\\u002Fequation?tex=x_1\& alt=\&x_1\& eeimg=\&1\&\u003E,变换之后坐标为\u003Cimg src=\&https:\u002F\\u002Fequation?tex=y_1\& alt=\&y_1\& eeimg=\&1\&\u003E。选用\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Cleft%5B+%5Cbeta+%5Cright%5D+\& alt=\&\\left[ \\beta \\right] \& eeimg=\&1\&\u003E基,该对象在变换前后的坐标向量分别为\u003Cimg src=\&https:\u002F\\u002Fequation?tex=x_2\& alt=\&x_2\& eeimg=\&1\&\u003E和\u003Cimg src=\&https:\u002F\\u002Fequation?tex=y_2\& alt=\&y_2\& eeimg=\&1\&\u003E。下面是变换的表达式:\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cimg src=\&https:\u002F\\u002Fequation?tex=T_1x_1%3Dy_1%5C%5CT_2x_2%3Dy_2\& alt=\&T_1x_1=y_1\\\\T_2x_2=y_2\& eeimg=\&1\&\u003E\u003Cbr\u003E\u003Cp\u003E好了,下面再看研究一下两组基有什么样的联系:\u003C\u002Fp\u003E\u003Cp\u003E既然是在同一空间内,那么\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Cbeta_1\& alt=\&\\beta_1\& eeimg=\&1\&\u003E应该可以通过\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Calpha_1\& alt=\&\\alpha_1\& eeimg=\&1\&\u003E……\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Calpha_n\& alt=\&\\alpha_n\& eeimg=\&1\&\u003E的一个线性组合表达出来,我们写作:\u003C\u002Fp\u003E\u003Cp\u003E\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Cbeta_1%3D%5Cleft%5B+%5Calpha%5Cright%5D+p_1\& alt=\&\\beta_1=\\left[ \\alpha\\right] p_1\& eeimg=\&1\&\u003E。类似地,\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Cleft%5B+%5Cbeta+%5Cright%5D+\& alt=\&\\left[ \\beta \\right] \& eeimg=\&1\&\u003E中的其他列向量也都能够采用相似的表达写出,最终,就能够形成如下的表达式:\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Cleft%5B+%5Cbeta+%5Cright%5D+%3D%5Cleft%5B+%5Calpha+%5Cright%5D+%5Cbegin%7Bbmatrix%7Dp_1+%26+%5Ccdots+%26p_n%5Cend%7Bbmatrix%7D%3D%5Cleft%5B+%5Calpha+%5Cright%5D+P\& alt=\&\\left[ \\beta \\right] =\\left[ \\alpha \\right] \\begin{bmatrix}p_1 & \\cdots &p_n\\end{bmatrix}=\\left[ \\alpha \\right] P\& eeimg=\&1\&\u003E\u003Cbr\u003E\u003Cp\u003E由于:\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Cbegin%7Bbmatrix%7D%5Calpha%5Cend%7Bbmatrix%7Dx_1%3D%5Cbegin%7Bbmatrix%7D%5Cbeta%5Cend%7Bbmatrix%7Dx_2\& alt=\&\\begin{bmatrix}\\alpha\\end{bmatrix}x_1=\\begin{bmatrix}\\beta\\end{bmatrix}x_2\& eeimg=\&1\&\u003E(同一个对象不同的基和坐标向量描述)\u003C\u002Fp\u003E\u003Cp\u003E将\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Cleft%5B+%5Cbeta+%5Cright%5D+%3D%5Cleft%5B+%5Calpha+%5Cright%5D+P\& alt=\&\\left[ \\beta \\right] =\\left[ \\alpha \\right] P\& eeimg=\&1\&\u003E代入上式,得到:\u003C\u002Fp\u003E\u003Cp\u003E\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Cbegin%7Bbmatrix%7D%5Calpha%5Cend%7Bbmatrix%7Dx_1%3D%5Cbegin%7Bbmatrix%7D%5Calpha%5Cend%7Bbmatrix%7DPx_2\& alt=\&\\begin{bmatrix}\\alpha\\end{bmatrix}x_1=\\begin{bmatrix}\\alpha\\end{bmatrix}Px_2\& eeimg=\&1\&\u003E经过整理,得到:\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Cbegin%7Bbmatrix%7D%5Calpha%5Cend%7Bbmatrix%7D%28x_1-Px_2%29%3D0\& alt=\&\\begin{bmatrix}\\alpha\\end{bmatrix}(x_1-Px_2)=0\& eeimg=\&1\&\u003E因为\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Cbegin%7Bbmatrix%7D%5Calpha%5Cend%7Bbmatrix%7D\& alt=\&\\begin{bmatrix}\\alpha\\end{bmatrix}\& eeimg=\&1\&\u003E各列线性无关,所以此方程只有零解。那么,\u003Cimg src=\&https:\u002F\\u002Fequation?tex=x_1%3DPx_2\& alt=\&x_1=Px_2\& eeimg=\&1\&\u003E,同理,可以得到:\u003Cimg src=\&https:\u002F\\u002Fequation?tex=y_1%3DPy_2\& alt=\&y_1=Py_2\& eeimg=\&1\&\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E我们下一步的目标,是找到\u003Cimg src=\&https:\u002F\\u002Fequation?tex=T_1\& alt=\&T_1\& eeimg=\&1\&\u003E、\u003Cimg src=\&https:\u002F\\u002Fequation?tex=T_2\& alt=\&T_2\& eeimg=\&1\&\u003E和\u003Cimg src=\&https:\u002F\\u002Fequation?tex=P\& alt=\&P\& eeimg=\&1\&\u003E之间的关系,联立如下的四个表达式\u003C\u002Fp\u003E\u003Cimg src=\&https:\u002F\\u002Fequation?tex=T_1x_1%3Dy_1%5C%5CT_2x_2%3Dy_2%5C%5Cx_1%3DPx_2%5C%5Cy_1%3DPy_2\& alt=\&T_1x_1=y_1\\\\T_2x_2=y_2\\\\x_1=Px_2\\\\y_1=Py_2\& eeimg=\&1\&\u003E\u003Cbr\u003E\u003Cp\u003E消去\u003Cimg src=\&https:\u002F\\u002Fequation?tex=x_1\& alt=\&x_1\& eeimg=\&1\&\u003E、\u003Cimg src=\&https:\u002F\\u002Fequation?tex=y_1\& alt=\&y_1\& eeimg=\&1\&\u003E、\u003Cimg src=\&https:\u002F\\u002Fequation?tex=y_2\& alt=\&y_2\& eeimg=\&1\&\u003E得到\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Cleft%28+T_1P-PT_2+%5Cright%29+x_2%3D0\& alt=\&\\left( T_1P-PT_2 \\right) x_2=0\& eeimg=\&1\&\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E此处请注意这个\u003Cimg src=\&https:\u002F\\u002Fequation?tex=x_2\& alt=\&x_2\& eeimg=\&1\&\u003E的任意性(线性空间内对象选择的任意性导致),即对于任意的\u003Cimg src=\&https:\u002F\\u002Fequation?tex=x_2\& alt=\&x_2\& eeimg=\&1\&\u003E上面的等式都成立,可以推导出,前面的矩阵是一个零矩阵。从而有\u003Cimg src=\&https:\u002F\\u002Fequation?tex=T_1%3DPT_2P%5E%7B-1%7D\& alt=\&T_1=PT_2P^{-1}\& eeimg=\&1\&\u003E。这里需要解释一下,为什么P是可逆方阵。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Cleft%5B+%5Calpha%5Cright%5D+x%3D0\& alt=\&\\left[ \\alpha\\right] x=0\& eeimg=\&1\&\u003E只有零解;同样地,\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Cleft%5B+%5Cbeta%5Cright%5D+x%3D0\& alt=\&\\left[ \\beta\\right] x=0\& eeimg=\&1\&\u003E也只有零解。将\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Cleft%5B+%5Calpha%5Cright%5D+P%3D%5Cleft%5B+%5Cbeta%5Cright%5D+\& alt=\&\\left[ \\alpha\\right] P=\\left[ \\beta\\right] \& eeimg=\&1\&\u003E代入到上式,\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Cleft%5B+%5Calpha%5Cright%5D+Px%3D0\& alt=\&\\left[ \\alpha\\right] Px=0\& eeimg=\&1\&\u003E应该也只有零解。假设存在一个\u003Cimg src=\&https:\u002F\\u002Fequation?tex=x_0%5Cne+0\& alt=\&x_0\\ne 0\& eeimg=\&1\&\u003E,使得\u003Cimg src=\&https:\u002F\\u002Fequation?tex=Px_0%3D0\& alt=\&Px_0=0\& eeimg=\&1\&\u003E,那么\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Cleft%5B+%5Calpha%5Cright%5D+Px_0%3D0\& alt=\&\\left[ \\alpha\\right] Px_0=0\& eeimg=\&1\&\u003E有非零解,与方程只有零解矛盾。所以,\u003Cimg src=\&https:\u002F\\u002Fequation?tex=Px%3D0\& alt=\&Px=0\& eeimg=\&1\&\u003E只有零解,从而得到,\u003Cimg src=\&https:\u002F\\u002Fequation?tex=P\& alt=\&P\& eeimg=\&1\&\u003E可逆。\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cb\u003E总结:\u003C\u002Fb\u003E\u003Cb\u003E在不同的基描述下(其实是不同的基存在优劣),同一个线性变换具有不同的变换矩阵,虽然变换矩阵有很多,但是它们之间是存在一个定量的关系,就是上面我们推导出来的\u003Cimg src=\&https:\u002F\\u002Fequation?tex=T_1%3DPT_2P%5E%7B-1%7D\& alt=\&T_1=PT_2P^{-1}\& eeimg=\&1\&\u003E,这就是相似。为什么要这样?原因之一就是计算机当中需要大量的变换计算,如果矩阵的维数是个位数字,计算机运算起来还算容易,但是如果矩阵是十几万行、十几万列,并且需要进行幂次运算,这样的计算对于计算机来讲也是相当的工作量,耗费大量资源和时间;或者,我们做完变换之后还需要进一步分析问题,而人们的习惯就是将问题抽象成几个独立的数字,从定量出发再到定性分析,例如,当我们选取矩阵的特征向量作为基时,一个线性变换最核心的内容就暴露了出来——特征值就是描述该变换的定量描述。所以,无论是从计算机计算的角度还是人们分析问题的难易程度上面来讲,我们需要寻找一个合适的变换矩阵来描述这一线性变换,达到简化计算、容易理解的目的。\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Ch2\u003E\u003Cb\u003E2、矩阵的特征值和特征向量\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E先看定义,再看为什么要这样:\u003C\u002Fp\u003E\u003Cp\u003E\u003Cimg src=\&https:\u002F\\u002Fequation?tex=N\& alt=\&N\& eeimg=\&1\&\u003E维非零向量\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Coverrightarrow%7Bv%7D\& alt=\&\\overrightarrow{v}\& eeimg=\&1\&\u003E是\u003Cimg src=\&https:\u002F\\u002Fequation?tex=N%5Ctimes+N\& alt=\&N\\times N\& eeimg=\&1\&\u003E方阵\u003Cimg src=\&https:\u002F\\u002Fequation?tex=A\& alt=\&A\& eeimg=\&1\&\u003E的特征向量,当且仅当满足如下等式:\u003C\u002Fp\u003E\u003Cimg src=\&https:\u002F\\u002Fequation?tex=A%5Coverrightarrow%7Bv%7D%3D%5Clambda%5Coverrightarrow%7Bv%7D\& alt=\&A\\overrightarrow{v}=\\lambda\\overrightarrow{v}\& eeimg=\&1\&\u003E\u003Cp\u003E其中\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Clambda\& alt=\&\\lambda\& eeimg=\&1\&\u003E是一个标量,是\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Coverrightarrow%7Bv%7D\& alt=\&\\overrightarrow{v}\& eeimg=\&1\&\u003E对应的特征值。这个等式最关键的一点就是,某些特定的向量,经过矩阵A描述的线性变换,其方向未发生变化,只是向量的长度产生了变化。如果方阵\u003Cimg src=\&https:\u002F\\u002Fequation?tex=A\& alt=\&A\& eeimg=\&1\&\u003E性质良好,能够找到\u003Cimg src=\&https:\u002F\\u002Fequation?tex=N\& alt=\&N\& eeimg=\&1\&\u003E个线性无关的特征向量,将这些特征向量按列排成一个矩阵\u003Cimg src=\&https:\u002F\\u002Fequation?tex=Q\& alt=\&Q\& eeimg=\&1\&\u003E,那么很容易得到:\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cimg src=\&https:\u002F\\u002Fequation?tex=AQ%3DQ%5CLambda\& alt=\&AQ=Q\\Lambda\& eeimg=\&1\&\u003E其中,\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5CLambda%3D%5Cbegin%7Bbmatrix%7D%5Clambda_1+%260%26+%5Ccdots+%260%5C%5C0%26%5Clambda_2%26+%5Ccdots+%260%5C%5C+%5Cvdots%26%5Cvdots%26%5Cvdots%26%5Cvdots%0A%5C%5C0%260%260%26%5Clambda_n%5Cend%7Bbmatrix%7D\& alt=\&\\Lambda=\\begin{bmatrix}\\lambda_1 &0& \\cdots &0\\\\0&\\lambda_2& \\cdots &0\\\\ \\vdots&\\vdots&\\vdots&\\vdots\n\\\\0&0&0&\\lambda_n\\end{bmatrix}\& eeimg=\&1\&\u003E从而我们得到:\u003Cimg src=\&https:\u002F\\u002Fequation?tex=A%3DQ%5CLambda+Q%5E%7B-1%7D\& alt=\&A=Q\\Lambda Q^{-1}\& eeimg=\&1\&\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E很熟悉,有木有?!找到了一对相似矩阵!仔细看看,A和一个对角矩阵相似。那么,为什么在众多的相似矩阵当中,偏偏选择这个对角阵?我们不妨看看在线性空间内的任一向量在\u003Cimg src=\&https:\u002F\\u002Fequation?tex=I\& alt=\&I\& eeimg=\&1\&\u003E和\u003Cimg src=\&https:\u002F\\u002Fequation?tex=Q\& alt=\&Q\& eeimg=\&1\&\u003E基底下,变换\u003Cimg src=\&https:\u002F\\u002Fequation?tex=A\& alt=\&A\& eeimg=\&1\&\u003E施加在对象上面发生了什么。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cimg src=\&https:\u002F\\u002Fequation?tex=x%3DQy\& alt=\&x=Qy\& eeimg=\&1\&\u003E,\u003Cimg src=\&https:\u002F\\u002Fequation?tex=x\& alt=\&x\& eeimg=\&1\&\u003E和\u003Cimg src=\&https:\u002F\\u002Fequation?tex=y\& alt=\&y\& eeimg=\&1\&\u003E分别是对象在\u003Cimg src=\&https:\u002F\\u002Fequation?tex=I\& alt=\&I\& eeimg=\&1\&\u003E和\u003Cimg src=\&https:\u002F\\u002Fequation?tex=Q\& alt=\&Q\& eeimg=\&1\&\u003E基底下面的坐标描述;\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cimg src=\&https:\u002F\\u002Fequation?tex=Ax%3DAQy%3DQ%5CLambda+Q%5E%7B-1%7DQy%3DQ%5CLambda+y%3DQ%5Cleft%28+%5CLambda+y+%5Cright%29+\& alt=\&Ax=AQy=Q\\Lambda Q^{-1}Qy=Q\\Lambda y=Q\\left( \\Lambda y \\right) \& eeimg=\&1\&\u003E\u003Cbr\u003E\u003Cp\u003E\u003Cb\u003E仔细分析上面的式子,变换作用(变换包括了旋转、缩放和投影)于对象,如果选择变换本身\u003Cimg src=\&https:\u002F\\u002Fequation?tex=A\& alt=\&A\& eeimg=\&1\&\u003E代表的特征向量作为基底,以此为衡量标准,那么该变换最终的效果就是对\u003Cimg src=\&https:\u002F\\u002Fequation?tex=y\& alt=\&y\& eeimg=\&1\&\u003E里面的各个系数扩大一个倍数,这个倍数就是矩阵的特征值。\u003C\u002Fb\u003E以上就是原因,通常的变换都涉及到旋转和拉伸这样的复杂组合,但是,转移到特征向量的基底下面,对任意对象的变换都变成了简单的“分量伸缩”,如果我们置身其中,一定会觉得这样的变换很简单,很直接。另外,实对称矩阵的特征向量正交。再这里做一个提问,还记得投影矩阵吗?它的特征值都是多少?请用直觉回答为最好。\u003C\u002Fp\u003E\u003Ch2\u003E\u003Cb\u003E3、矩阵的奇异值分解\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E任意的线性变换都可以进行奇异值分解(SVD: Singular Value Decomposition)。上面讨论的特征值和特征向量都是针对方阵而言的,所以一个\u003Cimg src=\&https:\u002F\\u002Fequation?tex=N%5Ctimes+N\& alt=\&N\\times N\& eeimg=\&1\&\u003E的方阵对\u003Cimg src=\&https:\u002F\\u002Fequation?tex=N\& alt=\&N\& eeimg=\&1\&\u003E维向量所描述的对象产生的变换包括了旋转和缩放,并没有投影。\u003C\u002Fp\u003E\u003Cp\u003E给定\u003Cimg src=\&https:\u002F\\u002Fequation?tex=M%5Ctimes+N\& alt=\&M\\times N\& eeimg=\&1\&\u003E的矩阵\u003Cimg src=\&https:\u002F\\u002Fequation?tex=A\& alt=\&A\& eeimg=\&1\&\u003E,\u003Cimg src=\&https:\u002F\\u002Fequation?tex=Rank%28A%29%3Dr\& alt=\&Rank(A)=r\& eeimg=\&1\&\u003E,变换的对象是\u003Cimg src=\&https:\u002F\\u002Fequation?tex=R%5En\& alt=\&R^n\& eeimg=\&1\&\u003E上属于矩阵\u003Cimg src=\&https:\u002F\\u002Fequation?tex=A\& alt=\&A\& eeimg=\&1\&\u003E的行子空间内的对象。为什么要这么约束?因为如果对象在零空间内,那么还变换啥,直接变成了零向量!\u003Cb\u003E下一步是关键,我们参考一下上面特征值的推导,结合矩阵\u003Cimg src=\&https:\u002F\\u002Fequation?tex=A\& alt=\&A\& eeimg=\&1\&\u003E行和列维度不一致,想到能不能在行子空间内找到一组相互正交的单位基向量,这组基向量通过\u003Cimg src=\&https:\u002F\\u002Fequation?tex=A\& alt=\&A\& eeimg=\&1\&\u003E的变换在列空间内\&生产\&出一组也是相互正交的单位向量,这组向量正好是列子空间内的一组基。\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cb\u003E\u003Cimg src=\&https:\u002F\\u002Fequation?tex=Av_1%3D%5Csigma_1u_1\& alt=\&Av_1=\\sigma_1u_1\& eeimg=\&1\&\u003E……\u003Cimg src=\&https:\u002F\\u002Fequation?tex=Av_r%3D%5Csigma_ru_r\& alt=\&Av_r=\\sigma_ru_r\& eeimg=\&1\&\u003E\u003Cbr\u003E\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Cp\u003E以上的\u003Cimg src=\&https:\u002F\\u002Fequation?tex=r\& alt=\&r\& eeimg=\&1\&\u003E个等式写成矩阵的形式,得到:\u003C\u002Fp\u003E\u003Cp\u003E\u003Cimg src=\&https:\u002F\\u002Fequation?tex=A%5Cleft%5B+v_1%5C+v_2%5Ccdots+v_r+%5Cright%5D+%3D%5Cleft%5B+u_1%5C+u_2%5Ccdots+u_r+%5Cright%5D+%5Cbegin%7Bbmatrix%7D%5Csigma_1%260%26%5Ccdots%260%5C%5C0%26%5Csigma_2%26%5Ccdots%260%5C%5C%5Cvdots%26%5Cvdots%26%5Cvdots%26%5Cvdots%5C%5C0%26%5Ccdots%26%5Ccdots%26%5Ccdots%5Csigma_r%5Cend%7Bbmatrix%7D\& alt=\&A\\left[ v_1\\ v_2\\cdots v_r \\right] =\\left[ u_1\\ u_2\\cdots u_r \\right] \\begin{bmatrix}\\sigma_1&0&\\cdots&0\\\\0&\\sigma_2&\\cdots&0\\\\\\vdots&\\vdots&\\vdots&\\vdots\\\\0&\\cdots&\\cdots&\\cdots\\sigma_r\\end{bmatrix}\& eeimg=\&1\&\u003E写成更简形式就是:\u003Cimg src=\&https:\u002F\\u002Fequation?tex=AV%3DU%5CSigma\& alt=\&AV=U\\Sigma\& eeimg=\&1\&\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E其中,\u003Cimg src=\&https:\u002F\\u002Fequation?tex=V\& alt=\&V\& eeimg=\&1\&\u003E和\u003Cimg src=\&https:\u002F\\u002Fequation?tex=U\& alt=\&U\& eeimg=\&1\&\u003E分别是\u003Cimg src=\&https:\u002F\\u002Fequation?tex=n%5Ctimes+r\& alt=\&n\\times r\& eeimg=\&1\&\u003E和\u003Cimg src=\&https:\u002F\\u002Fequation?tex=m%5Ctimes+r\& alt=\&m\\times r\& eeimg=\&1\&\u003E矩阵,它们的每一列的向量在各自的空间内是一组标准正交基。注意此时的\u003Cimg src=\&https:\u002F\\u002Fequation?tex=V%0A\& alt=\&V\n\& eeimg=\&1\&\u003E和\u003Cimg src=\&https:\u002F\\u002Fequation?tex=U\& alt=\&U\& eeimg=\&1\&\u003E不是单位正交矩阵,后面会将它们扩展成单位正交矩阵。\u003C\u002Fp\u003E\u003Cbr\u003E\u003Cp\u003E透过现象看本质,需要关注以下两点:下图是Strang教授独家发明的矩阵子空间的图示(其实变换只对那些个黄色向量起作用,对蓝色的无能为力)。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cimg src=\&https:\u002F\\u002F50\u002Fv2-34fce122eb50ab7a52f4bf120c1a24c9_b.png\& data-rawwidth=\&1303\& data-rawheight=\&868\& class=\&origin_image zh-lightbox-thumb\& width=\&1303\& data-original=\&https:\u002F\\u002F50\u002Fv2-34fce122eb50ab7a52f4bf120c1a24c9_r.png\&\u003E1.SVD封装了一个线性变换\u003Cimg src=\&https:\u002F\\u002Fequation?tex=A\& alt=\&A\& eeimg=\&1\&\u003E定义下的变换前后空间最优的两组基,变换前的包含在了\u003Cimg src=\&https:\u002F\\u002Fequation?tex=V\& alt=\&V\& eeimg=\&1\&\u003E,变换后的包含在了\u003Cimg src=\&https:\u002F\\u002Fequation?tex=U\& alt=\&U\& eeimg=\&1\&\u003E。并且,神奇的是,两组基和该矩阵的四个子空间具有紧密的联系;\u003C\u002Fp\u003E\u003Cp\u003E2.SVD为计算提供了巨大的便利。数学原理和计算机的计算之间往往无法直接完美对接;理论上,我们通过公式的推导往往认为所有的运算都是绝对精确的,但是数字化的计算机在计算过程中,或多或少都会损失一定的精度。另外,理论上面思路清晰明显的过程照搬到计算机当中往往会引起很大的麻烦,这就是理论和实践的巨大鸿沟。SVD能够很好地填补这个坑。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cb\u003ESVD的几何意义:\u003C\u002Fb\u003E我们通过观察一个\u003Cimg src=\&https:\u002F\\u002Fequation?tex=R%5En\& alt=\&R^n\& eeimg=\&1\&\u003E空间的对象是如何被\u003Cimg src=\&https:\u002F\\u002Fequation?tex=A\& alt=\&A\& eeimg=\&1\&\u003E变换的\u003Cb\u003E。\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cb\u003E\u003Cimg src=\&https:\u002F\\u002Fequation?tex=x%3Dx_1v_1%2Bx_2v_2%2B%5Ccdots%2Bx_nv_n\& alt=\&x=x_1v_1+x_2v_2+\\cdots+x_nv_n\& eeimg=\&1\&\u003E,\u003C\u002Fb\u003E其中前r个向量正是上面所说的矩阵行空间的那组单位正交基,后面的是零空间内的单位正交基。并且有\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Csum_%7B1%7D%5E%7Bn%7D%7Bx_i%5E2%7D+%3D1\& alt=\&\\sum_{1}^{n}{x_i^2} =1\& eeimg=\&1\&\u003E。这个对象可以想象成在\u003Cimg src=\&https:\u002F\\u002Fequation?tex=R%5En\& alt=\&R^n\& eeimg=\&1\&\u003E空间内的单位球体。线性变换写成:\u003C\u002Fp\u003E\u003Cbr\u003E\u003Cimg src=\&https:\u002F\\u002Fequation?tex=Ax%3D%5Csigma_1x_1u_1%2B%5Csigma_2x_2u_2%2B%5Ccdots%2B%5Csigma_rx_ru_r\& alt=\&Ax=\\sigma_1x_1u_1+\\sigma_2x_2u_2+\\cdots+\\sigma_rx_ru_r\& eeimg=\&1\&\u003E(为什么少了一些分向量?请思考)\u003Cbr\u003E\u003Cp\u003E为了让读者看着简洁方便,令\u003Cimg src=\&https:\u002F\\u002Fequation?tex=y_i%3D%5Csigma_ix_i\& alt=\&y_i=\\sigma_ix_i\& eeimg=\&1\&\u003E,那么这个球体经过变换,就转化成:\u003C\u002Fp\u003E\u003Cimg src=\&https:\u002F\\u002Fequation?tex=y_1u_1%2By_2u_2%2B%5Ccdots%2By_ru_r\& alt=\&y_1u_1+y_2u_2+\\cdots+y_ru_r\& eeimg=\&1\&\u003E\u003Cbr\u003E\u003Cimg src=\&https:\u002F\\u002Fequation?tex=%5Cfrac%7By_1%5E2%7D%7B%5Csigma_1%5E2%7D+%2B%5Cfrac%7By_2%5E2%7D%7B%5Csigma_2%5E2%7D+%2B%5Ccdots%2B%5Cfrac%7By_r%5E2%7D%7B%5Csigma_r%5E2%7D+%3D%5Csum_%7B1%7D%5E%7Br%7D%7Bx_i%5E2%7D+%5Cleq+1\& alt=\&\\frac{y_1^2}{\\sigma_1^2} +\\frac{y_2^2}{\\sigma_2^2} +\\cdots+\\frac{y_r^2}{\\sigma_r^2} =\\sum_{1}^{r}{x_i^2} \\leq 1\& eeimg=\&1\&\u003E\u003Cbr\u003E\u003Cp\u003E容易得到,当矩阵\u003Cimg src=\&https:\u002F\\u002Fequation?tex=A\& alt=\&A\& eeimg=\&1\&\u003E列满秩时,\u003Cimg src=\&https:\u002F\\u002Fequation?tex=r%3Dn\& alt=\&r=n\& eeimg=\&1\&\u003E,此时等式成立,其他情况下求和是介于0到1之间的数。什么意思?就是\u003Cb\u003E变换将\u003Cimg src=\&https:\u002F\\u002Fequation?tex=R%5En\& alt=\&R^n\& eeimg=\&1\&\u003E空间内的一个单位球体转变成了r维的由r个\u003Cimg src=\&https:\u002F\\u002Fequation?tex=u_i\& alt=\&u_i\& eeimg=\&1\&\u003E决定半轴方向、奇异值决定半轴长度的椭球体。并且,当列满秩成立时,变换发生在了目标椭球的表面,否则发生在椭球的实体内部。总结一下就是:首先变换将\u003Cimg src=\&https:\u002F\\u002Fequation?tex=R%5En\& alt=\&R^n\& eeimg=\&1\&\u003E内\u003Cimg src=\&https:\u002F\\u002Fequation?tex=n-r\& alt=\&n-r\& eeimg=\&1\&\u003E的维度崩塌,接下来对剩下的维度进行扭曲,在\u003Cimg src=\&https:\u002F\\u002Fequation?tex=R%5Em\& alt=\&R^m\& eeimg=\&1\&\u003E的空间内将它们拉、压重建成为一个椭球。举个栗子吧:\u003Cimg src=\&https:\u002F\\u002Fequation?tex=m%3Dn%3D3%2Cr%3D2\& alt=\&m=n=3,r=2\& eeimg=\&1\&\u003E,三幅图说明了上面的过程。\u003Cbr\u003E\u003C\u002Fb\u003E\u003C\u002Fp\u003E\u003Cimg src=\&https:\u002F\\u002F50\u002Fv2-3988edce08b45f2f2bd8_b.png\& data-rawwidth=\&1153\& data-rawheight=\&848\& class=\&origin_image zh-lightbox-thumb\& width=\&1153\& data-original=\&https:\u002F\\u002F50\u002Fv2-3988edce08b45f2f2bd8_r.png\&\u003E\u003Cbr\u003E\u003Cimg src=\&https:\u002F\\u002F50\u002Fv2-3553afca9a4f7c31bbb30b6d99db65d8_b.png\& data-rawwidth=\&1144\& data-rawheight=\&848\& class=\&origin_image zh-lightbox-thumb\& width=\&1144\& data-original=\&https:\u002F\\u002F50\u002Fv2-3553afca9a4f7c31bbb30b6d99db65d8_r.png\&\u003E\u003Cbr\u003E\u003Cimg src=\&https:\u002F\\u002F50\u002Fv2-c3ca775b37f0c34f4c0c1cf10a068563_b.png\& data-rawwidth=\&1128\& data-rawheight=\&897\& class=\&origin_image zh-lightbox-thumb\& width=\&1128\& data-original=\&https:\u002F\\u002F50\u002Fv2-c3ca775b37f0c34f4c0c1cf10a068563_r.png\&\u003E\u003Cp\u003E也许有人会问了,刚才只讨论了矩阵行空间和列空间的向量,那么,剩下的零空间和左零空间的向量难道就放弃了么?并不是这样的,出于考虑问题的完备性,我们写出如下的表达式:\u003C\u002Fp\u003E\u003Cimg src=\&https:\u002F\\u002Fequation?tex=A%3D%5Cbegin%7Bbmatrix%7D%0Au_1%26%5Chdots%26u_r%7Cu_%7Br%2B1%7D%5Chdots+u_m%0A%5Cend%7Bbmatrix%7D%0A%5Cbegin%7Bbmatrix%7D%0A%5Csigma_1%26%5Chdots%26%260%5C%5C%0A%26%5Cddots%5C%5C%0A%26%26%5Csigma_r%5C%5C%0A0%26%26%5Chdots%260%5C%5C%0A%5Cvdots%26%26%5Chdots%5C%5C%0A0%26%26%5Chdots%260%0A%5Cend%7Bbmatrix%7D%0A%5Cbegin%7Bbmatrix%7D%0Av_1%5ET%5C%5C%0A%5Cvdots%5C%5C%0Av_r%5ET%5C%5C%0Av_%7Br%2B1%7D%5ET%5C%5C%0A%5Cvdots%5C%5C%0Av_n%5ET%0A%5Cend%7Bbmatrix%7D%0A\& alt=\&A=\\begin{bmatrix}\nu_1&\\hdots&u_r|u_{r+1}\\hdots u_m\n\\end{bmatrix}\n\\begin{bmatrix}\n\\sigma_1&\\hdots&&0\\\\\n&\\ddots\\\\\n&&\\sigma_r\\\\\n0&&\\hdots&0\\\\\n\\vdots&&\\hdots\\\\\n0&&\\hdots&0\n\\end{bmatrix}\n\\begin{bmatrix}\nv_1^T\\\\\n\\vdots\\\\\nv_r^T\\\\\nv_{r+1}^T\\\\\n\\vdots\\\\\nv_n^T\n\\end{bmatrix}\n\& eeimg=\&1\&\u003E(这个公式在Latex下面着实是不好完成啊!)\u003Cbr\u003E\u003Cp\u003E从上面可以看到,其实SVD的更广泛的意义是将\u003Cimg src=\&https:\u002F\\u002Fequation?tex=R%5En\& alt=\&R^n\& eeimg=\&1\&\u003E内的一组标准正交基和\u003Cimg src=\&https:\u002F\\u002Fequation?tex=R%5Em\& alt=\&R^m\& eeimg=\&1\&\u003E内的一组标准正交基全部拉进来,这个矩阵所具有的变换能力取决于中间准对角矩阵当中非零的奇异值的个数。因为非零奇异值个数越多,就表明矩阵在各个基向量所指方向上面都会参与得越多。最理想的情况就是,当变换矩阵是一个方阵\u003Cimg src=\&https:\u002F\\u002Fequation?tex=N%5Ctimes+N\& alt=\&N\\times N\& eeimg=\&1\&\u003E,并且具有\u003Cimg src=\&https:\u002F\\u002Fequation?tex=N\& alt=\&N\& eeimg=\&1\&\u003E个特征向量,那么行空间和列空间是不是就是一个了?那么这个矩阵的SVD过程就是在同样的一个空间进行。从这点上面我们看到,特征值特征向量是SVD的一种特殊情况。实际上,奇异值越大,说明在该方向上的变化最显著,这也是在图像压缩等应用领域,当矩阵的维数特别大时,采用选取较大奇异值和对应的行空间、列空间的基向量来恢复原始图像,以期望得到最主要的图像信息。在写作过程中,我参考了很多的资料,由浅入深,步步的查阅,都让我眼前一亮,根据难易程度,我列举在下面,请大家自主选择:\u003C\u002Fp\u003E\u003Cp\u003E\u003Ca href=\&https:\u002F\\u002F?target=http%3A\u002F\u002Fmp.\u002Fs%3F__biz%3DMzA5ODUxOTA5Mg%3D%3D%26mid%3Didx%3D1%26sn%3Dc741c2c535ab3a83a1b654%26scene%3D20%23wechat_redirect%%25BC%25BA%25E5%25A4%25A7%25E7%259A%%259F%25A9%25E9%%25E5%25A5%%25BC%%2580%25BC%25E5%E8%25A7%25A3%2528SVD%%258F%258A%25E5%%25E5%25BA%%\& class=\& wrap external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003E强大的奇异值分解及应用\u003Ci class=\&icon-external\&\u003E\u003C\u002Fi\u003E\u003C\u002Fa\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Ca href=\&https:\u002F\\u002Fquestion\u002F2Fanswer\u002F\& class=\&internal\&\u003E奇异值的物理意义是什么?\u003C\u002Fa\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Ca href=\&https:\u002F\\u002Fquestion\u002F2Fanswer\u002F\& class=\&internal\&\u003E线性变换的矩阵为什么要强调在这组基下?\u003C\u002Fa\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Ca href=\&https:\u002F\\u002Fquestion\u002F\& class=\&internal\&\u003E矩阵的奇异值与特征值有什么相似之处与区别之处?\u003C\u002Fa\u003E\u003Cbr\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Ca href=\&https:\u002F\\u002F?target=http%3A\u002F\u002Fwww-users.math.umn.edu\u002F%7Elerman\u002FmathFsvd.pdf\& class=\& wrap external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003EThe SVD of a Matrix\u003Ci class=\&icon-external\&\u003E\u003C\u002Fi\u003E\u003C\u002Fa\u003E\u003C\u002Fp\u003E&,&state&:&published&,&sourceUrl&:&&,&pageCommentsCount&:0,&canComment&:false,&snapshotUrl&:&&,&slug&:,&publishedTime&:&T23:06:03+08:00&,&url&:&\u002Fp\u002F&,&title&:&线性代数的直觉理解(3)&,&summary&:&本次文章将要针对相似矩阵展开。不过相似矩阵只是一个引子,正餐是矩阵的特征值、特征向量以及SVD。\u003Cb\u003E1、相似矩阵\u003C\u002Fb\u003E首先,相似矩阵属于矩阵的范畴,所以,\u003Cb\u003E它的最基本的功能还是负责空间内对象的变换。\u003C\u002Fb\u003E这点很关键!好,既然是负责变换,那么,就需要作用于某个特…&,&reviewingCommentsCount&:0,&meta&:{&previous&:null,&next&:null},&commentPermission&:&anyone&,&commentsCount&:2,&likesCount&:13},&next&:{&isTitleImageFullScreen&:false,&rating&:&none&,&titleImage&:&https:\u002F\\u002F50\u002Fv2-17498cba685f39755ad9_xl.jpg&,&links&:{&comments&:&\u002Fapi\u002Fposts\u002F2Fcomments&},&topics&:[{&url&:&https:\u002F\\u002Ftopic\u002F&,&id&:&&,&name&:&OpenCV&},{&url&:&https:\u002F\\u002Ftopic\u002F&,&id&:&&,&name&:&主成分分析&}],&adminClosedComment&:false,&href&:&\u002Fapi\u002Fposts\u002F&,&excerptTitle&:&&,&author&:{&bio&:&喜欢优美的代码和自圆其说的算法。&,&isFollowing&:false,&hash&:&ba51fa269b1dd550e30baec649198dba&,&uid&:323900,&isOrg&:false,&slug&:&li-yang-46-16-36&,&isFollowed&:false,&description&:&喜欢编程,了解图像处理算法、过程控制理论及算法、C++、Qt。代码仓库https:\\u002Fwozaiqufu&,&name&:&李阳&,&profileUrl&:&https:\u002F\\u002Fpeople\u002Fli-yang-46-16-36&,&avatar&:{&id&:&v2-448f8c35ee7b52fb276df8&,&template&:&https:\u002F\\u002F{id}_{size}.jpg&},&isOrgWhiteList&:false,&isBanned&:false},&column&:{&slug&:&warden&,&name&:&机器人眼中的数学&},&content&:&\u003Cp\u003E抱歉,文章许久没有更新。接下来,这里将要再次活跃起来!\u003C\u002Fp\u003E\u003Ch2\u003E\u003Cb\u003EPCA降维在数字图像处理中的应用\u003C\u002Fb\u003E\u003C\u002Fh2\u003E\u003Cp\u003E上一篇文章的后半部分,我们提到了PCA的数学原理。这次来点儿实战:结合OpenCV在\u003C\u002Fp\u003E\u003Cp\u003E其核心功能模块(core functionality)当中的PCA类,直观看看数字图像处理当中PCA的应用。\u003C\u002Fp\u003E\u003Cp\u003E近几年流行的代码托管网站github上面有我不定期更新的代码哦~欢迎去看热闹,更欢迎点那个小星星!\u003C\u002Fp\u003E\u003Ch2\u003EDetailed Description\u003C\u002Fh2\u003E\u003Cp\u003EPrincipal Component Analysis. \u003C\u002Fp\u003E\u003Cp\u003EThe class is used to calculate a special basis for a set of vectors. The basis will consist of eigenvectors of the covariance matrix calculated from the input set of vectors. The class PCA can also transform vectors to\u002Ffrom the new coordinate space defined by the basis. Usually, in this new coordinate system, each vector from the original set (and any linear combination of such vectors) can be quite accurately approximated by taking its first few components, corresponding to the eigenvectors of the largest eigenvalues of the covariance matrix. Geometrically it means that you calculate a projection of the vector to a subspace formed by a few eigenvectors corresponding to the dominant eigenvalues of the covariance matrix. And usually such a projection is very close to the original vector. So, you can represent the original vector from a high-dimensional space with a much shorter vector consisting of the projected vector's coordinates in the subspace. Such a transformation is also known as Karhunen-Loeve Transform, or KLT. See \u003Ca href=\&http:\u002F\\u002F?target=http%3A\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPrincipal_component_analysis\& class=\& external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003E\u003Cspan class=\&invisible\&\u003Ehttp:\u002F\u002F\u003C\u002Fspan\u003E\u003Cspan class=\&visible\&\u003Een.wikipedia.org\u002Fwiki\u002FP\u003C\u002Fspan\u003E\u003Cspan class=\&invisible\&\u003Erincipal_component_analysis\u003C\u002Fspan\u003E\u003Cspan class=\&ellipsis\&\u003E\u003C\u002Fspan\u003E\u003Ci class=\&icon-external\&\u003E\u003C\u002Fi\u003E\u003C\u002Fa\u003E\u003C\u002Fp\u003E\u003Cp\u003E简单地概括一下,就是这个类能够计算出一组向量空间下最优的一组基向量,有了这组基向量,就很容易地调用里面的公有方法完成向该基的投影求出新的坐标值,或者是能够将新基下的坐标反向投影求出其原向量。我们首先看看这个类的属性,属性决定了这个类到底有多强大!\u003C\u002Fp\u003E\u003Ch2\u003EPublic Attributes\u003C\u002Fh2\u003E\u003Cp\u003E\u003Cb\u003E\u003Ca href=\&http:\u002F\\u002F?target=http%3A\u002F\u002Fdocs.opencv.org\u002F3.2.0\u002Fd3\u002Fd63\u002Fclasscv_1_1Mat.html\& class=\& wrap external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003EMat\u003Ci class=\&icon-external\&\u003E\u003C\u002Fi\u003E\u003C\u002Fa\u003E\u003C\u002Fb\u003E \u003Cb\u003E\u003Ca href=\&http:\u002F\\u002F?target=http%3A\u002F\u002Fdocs.opencv.org\u002F3.2.0\u002Fd3\u002Fd8d\u002Fclasscv_1_1PCA.html%23a1c9d34c02dfa366b971303\& class=\& wrap external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003Eeigenvalues\u003Ci class=\&icon-external\&\u003E\u003C\u002Fi\u003E\u003C\u002Fa\u003E\u003C\u002Fb\u003E eigenvalues of the covariation matrix
\u003Ca href=\&http:\u002F\\u002F?target=http%3A\u002F\u002Fdocs.opencv.org\u002F3.2.0\u002Fd3\u002Fd8d\u002Fclasscv_1_1PCA.html%23a1c9d34c02dfa366b971303\& class=\& wrap external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003EMore...\u003Ci class=\&icon-external\&\u003E\u003C\u002Fi\u003E\u003C\u002Fa\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cb\u003E\u003Ca href=\&http:\u002F\\u002F?target=http%3A\u002F\u002Fdocs.opencv.org\u002F3.2.0\u002Fd3\u002Fd63\u002Fclasscv_1_1Mat.html\& class=\& wrap external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003EMat\u003Ci class=\&icon-external\&\u003E\u003C\u002Fi\u003E\u003C\u002Fa\u003E\u003C\u002Fb\u003E \u003Cb\u003E\u003Ca href=\&http:\u002F\\u002F?target=http%3A\u002F\u002Fdocs.opencv.org\u002F3.2.0\u002Fd3\u002Fd8d\u002Fclasscv_1_1PCA.html%23a8fed85cf5f9d8bb9b17fa0\& class=\& wrap external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003Eeigenvectors\u003Ci class=\&icon-external\&\u003E\u003C\u002Fi\u003E\u003C\u002Fa\u003E\u003C\u002Fb\u003E eigenvectors of the covariation matrix
\u003Ca href=\&http:\u002F\\u002F?target=http%3A\u002F\u002Fdocs.opencv.org\u002F3.2.0\u002Fd3\u002Fd8d\u002Fclasscv_1_1PCA.html%23a8fed85cf5f9d8bb9b17fa0\& class=\& wrap external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003EMore...\u003Ci class=\&icon-external\&\u003E\u003C\u002Fi\u003E\u003C\u002Fa\u003E\u003C\u002Fp\u003E\u003Cp\u003E\u003Cb\u003E\u003Ca href=\&http:\u002F\\u002F?target=http%3A\u002F\u002Fdocs.opencv.org\u002F3.2.0\u002Fd3\u002Fd63\u002Fclasscv_1_1Mat.html\& class=\& wrap external\& target=\&_blank\& rel=\&nofollow noreferrer\&\u003EMat\u003Ci }

我要回帖

更多关于 线性代数和高数哪个难 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信