美文网首页
线性代数:矩阵

线性代数:矩阵

作者: 大锅烩菜 | 来源:发表于2018-09-07 15:04 被阅读0次

    1.矩阵加法

    矩阵相加就是把对应位置上的项相加 。

    前提:相加的两个矩阵需要有相同的m\times n

    例如:
    \begin{bmatrix} 1&0\\ 2&5\\ 3&1 \end{bmatrix}+ \begin{bmatrix} 4&0.5\\ 2&5\\ 0&1 \end{bmatrix} = \begin{bmatrix} 5&0.5\\ 4&10\\ 3&2 \end{bmatrix}
    矩阵相加的结果还是一个m\times n的矩阵

    python实现:

    import numpy as np
    A = np.array([[1,0],[2,5],[3,1]])
    B = np.array([[4,0.5],[2,5],[0,1]])
    print(A)
    print(B)
    # 矩阵加法
    C= A + B
    print(C)
    

    或者

    import numpy as np
    A = np.matrix([[1,0],[2,5],[3,1]])
    B = np.matrix([[4,0.5],[2,5],[0,1]])
    print(A)
    print(B)
    # 矩阵加法
    C= A + B
    print(C)
    

    2. 标量乘法(Scalar Multiplication)

    矩阵中的每个元素都与标量(一个单独的数)相乘:
    3\times \begin{bmatrix} 1&0\\ 2&5\\ 3&1 \end{bmatrix} = \begin{bmatrix} 3&0\\ 6&15\\ 9&3 \end{bmatrix}

    3. 向量乘法(Vector Multiplication)



    python实现:

    import numpy as np
    A = np.matrix([[1,3,2],[4,0,1]])
    B = np.matrix([[1,3],[0,1],[5,2]])
    C = A * B
    print(A)
    print(B)
    print(C)
    

    或者

    import numpy as np
    A = np.array([[1,3,2],[4,0,1]])
    B = np.array([[1,3],[0,1],[5,2]])
    # 使用dot实现矩阵乘法
    C = np.dot(A,B)
    print(A)
    print(B)
    print(C)
    

    5. 矩阵乘法的性质

    矩阵乘法:

    • 不满足交换律(commutative):A\times B \neq B\times A
    • 满足结合律(associative):A\times (B\times C)=(A\times B)\times C

    矩阵的乘法中,有一种矩阵起着特殊的作用,如同数的乘法中的1,这种矩阵被称为单位矩阵。它是个方阵(一般用IE表示),从左上角到右下角的对角线(称为主对角线)上的元素均为1。除此以外全都为0。

    根据单位矩阵的特点,任何矩阵与单位矩阵相乘都等于本身。单位矩阵需要满足一下条件:

    • m\times n矩阵与单位矩阵相乘时,单位矩阵需要是n\times n,如下:
      \begin{bmatrix} 1&2&3\\ 4&5&6 \end{bmatrix}\times \begin{bmatrix} 1&0&0\\ 0&1&0\\ 0&0&1 \end{bmatrix}= \begin{bmatrix} 1&2&3\\ 4&5&6 \end{bmatrix}
      python 实现:
    import numpy as np
    I = np.array(
        [[1,0,0],
         [0,1,0],
         [0,0,1]]
    )
    A=np.array(
        [[1,2,3],
        [4,5,6]]
    )
    C = np.dot(A,I)
    print(C)
    
    • 当单位矩阵与m\times n矩阵相乘时,单位矩阵需要是m\times m
      \begin{bmatrix} 1&0\\ 0&1 \end{bmatrix}\times \begin{bmatrix} 1&2&3\\ 4&5&6 \end{bmatrix} = \begin{bmatrix} 1&2&3\\ 4&5&6 \end{bmatrix}
      python实现:
    import numpy as np
    I = np.array(
        [[1,0],
         [0,1]]
    )
    A=np.array(
        [[1,2,3],
        [4,5,6]]
    )
    C = np.dot(I,A)
    print(C)
    

    6. 逆矩阵(inverse)

    如果矩阵A是一个m\times m方阵,如果有逆矩阵A^{-1},则AA^{-1}=A^{-1}A=I

    I为单位矩阵

    例如:
    A = \begin{bmatrix} 1&2\\ 3&4 \end{bmatrix}
    则A的逆矩阵
    A^{-1}=\begin{bmatrix} -2&1\\ 1.5&-0.5 \end{bmatrix}
    则:
    A\times A^{-1} = \begin{bmatrix} 1&2\\ 3&4 \end{bmatrix}\times \begin{bmatrix} -2&1\\ 1.5&-0.5 \end{bmatrix}= \begin{bmatrix} 1&0\\ 0&1 \end{bmatrix}

    如果矩阵A没有逆矩阵,则A矩阵也叫做奇异矩阵(singular)或退化矩阵(degenerate)

    矩阵转置(transpose)

    Am\times n阶矩阵,定义A的装置为这样一个n\times m阶矩阵B,满足B=a(j,i),即b(i,j)=a(j,i)B的第ij列元素是A的第j行第i列元素),记A^T=B(有些书记为A'=B)。直观来看,将A的所有元素绕着一条从第1行第1列元素出发的右下方45度的射线作镜面反转,即得到的转置。例:
    \begin{bmatrix} a&b\\ c&d\\ e&f \end{bmatrix} ^T= \begin{bmatrix} a&c&e\\ b&d&f \end{bmatrix}

    相关文章

      网友评论

          本文标题:线性代数:矩阵

          本文链接:https://www.haomeiwen.com/subject/fqdxgftx.html