zoukankan      html  css  js  c++  java
  • 机器学习 矩阵的基本运算

    矩阵的基本概念

    假设 aijR, 其中 i=1,2,...,m; j=1,2,...,n. 我们定义如下的行列式:

    A=a11a21am1a12a22am2a1na2namn

    是一个维数为 m×n 的实数矩阵。有时候我们会用如下的表达式来表示一个矩阵:
    A=[aij],i=1,2,...,m;j=1,2,...,n

    这表示一个mn列的矩阵,下标的第一个数i表示行,第二个数j表示列。
    列向量定义: 一个向量可以看成是只有一列的矩阵,所以,这里讨论的所有向量都默认为列向量。
    符号定义: 矩阵用大写的粗体字母表示,比如矩阵A,B,X, 而向量用小写的粗体字母表示,比如向量a,b,x.
    矩阵的转置: 矩阵A的转置为AT.
    矩阵的逆: 如果一个矩阵A存在逆矩阵,则该逆矩阵表示为A1.
    矩阵的 determinant: 如果一个矩阵A是一个方阵,则它的determinant表示为|A|
    单位矩阵表示为 I, 零矩阵空矩阵表示为0
    矩阵的迹: 如果一个矩阵是 n×n 的方阵,则该矩阵的迹(trace) 为 trA=ni=1aii, 等于所有主对角线元素之和,一个实数的迹是它本身,
    矩阵的迹满足下列关系:
    trAT=trAtrAB=trBAtrABC=trCAB=trBCA

    矩阵的乘法

    A 是一个 m×n 的矩阵,B 是一个 n×p的矩阵, 则两者的乘积AB 表示为:

    C=AB

    其中 C 是一个 m×p 的矩阵,C 中的任意一个元素 cij 表示为:
    cij=k=1naikbkji=1,2,...,m;j=1,2,...,n

    类似的,一个m×n 的矩阵 A 与一个n×1 的列向量 x相乘, 等于
    z=Axzi=k=1naikxki=1,2,...,m

    而一个m×1 的列向量 y 与一个m×n 的矩阵 A相乘,等于
    zT=yTAzi=k=1makixki=1,2,...,n

    因此,一个m×1 的列向量 y,一个m×n 的矩阵 A 以及一个n×1 的列向量 x, 他们的
    乘积(是一个标量)可以表示为:
    α=yTAxα=j=1mk=1najkyjxk

    如果 ARm×n, BRn×p, 则满足以下关系:
    C=ABcij=k=1naikbkjCT=BTATcji=k=1najkbki

    矩阵的求导

    假设有如下的函数:

    y=Ψ(x)

    其中 yRm×1xRn×1, 则向量y关于x的导数,可以表示为:
    yx=y1x1y2x1ymx1y1x2y2x2ymx2y1xny2xnymxn

    这个 m×n 的矩阵,是向量y关于x的一阶偏导数,这个矩阵也称为Jacobian矩阵。如果x 是一个标量,则Jacobian矩阵
    是一个m×1的矩阵,如果y是一个标量,则Jacobian矩阵是一个1×n的矩阵。
    已知,yRm×1xRn×1, ARm×n,
    y=Axwe can get:yx=A

    证明
    yi=k=1naikxkyixj=aiji=1,2,...m,j=1,2,...n.yx=A

    如果 x 是关于 z 的函数
    y=Axwe can get:yz=Axz

    如果:α=yTAx 则:
    αx=yTAαy=xTAT

    如果:α=xTAx, xRn×1, ARn×n 则:
    αx=xT(A+AT)

    证明
    α=xTAx=j=1ni=1naijxixjαxk=j=1nakjxj+i=1naikxik=1,2,...nαx=xTAT+xTA=xT(A+AT)

    如果 A 是一个对称矩阵,那么 α=xTAxx 的导数为,αx=2xTA
    α=yTx, 其中 xy 是关于 z 的函数。则
    αz=xTyz+yTxz

    参考文献

    Andrew Ng, Machine Learning, Stanford University.
    Randal J. Barnes, Matrix Differentiation, University of Minnesota, Minneapolis, USA
    Dhrymes, Phoebus J., 1978, Mathematics for Econometrics, Springer-Verlag, New york, 136 PP.
    Golub, Gene H., and Charles F. Van Loan, 1983, Matrix Computations, Johns Hopkins University Press, Baltimore, Maryland, 476 pp.
    Graybill, Franklin A., 1983, Matrices with Applications in Statistics, 2nd Edition, Wadsworth Internationl Group, Belmont, California, 461 pp.

  • 相关阅读:
    ES7/ES8 语法学习
    JavaScript中this对象原理简洁说明
    浅谈http协议
    各个浏览器之间常见的兼容性问题
    npm -v 报错:cannot find module 'core-util-is'
    对象遍历的几种方法
    Vue项目如何关闭Eslint检测
    axios 基本运用
    如何去掉vue路由中的#
    vue 父子组件、兄弟组件传值
  • 原文地址:https://www.cnblogs.com/mtcnn/p/9412629.html
Copyright © 2011-2022 走看看