機器學習筆記--python使用numpy簡單處理矩陣(一)

線性代數是機器學習中需要用到的重要數學工具之一,如何使用一門編程語言來處理線性代數是學習機器學習的基礎之一。

所需環境

python 2.7或3.6
site-package numpy

線性代數是本科期間工科專業的基礎必修課,關於基礎知識想必大家差距都不大,這裏只做簡單的回憶。

線性代數基礎知識

標量:一個數字 5
向量:一維數字數組,其中每個元素由單個索引標識

行向量 [2 3 -7]
列向量
列向量
矩陣:m行*n列的數組成爲m維矩陣
以下爲2行*3列的二維矩陣
2維矩陣
使用python創建矩陣:

Python 2.7.10 (default, Aug 17 2018, 17:41:52)
[GCC 4.2.1 Compatible Apple LLVM 10.0.0 (clang-1000.0.42)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy as np
> #創建一個向量
>>> a = 24
> #創建一個1行3列的矩陣(行向量)
>>> b = np.array([[2,-8,7]])
> #創建一個3行1列的矩陣(列向量)
>>> c = np.array([[-6],[-4],[27]])
> #創建一個3行2列的二維矩陣
>>> d = np.array([6,4,24],[1,-9,8])
>>>
>>> print a
24
>>>
>>> print b
[[ 2 -8  7]]
>>>
>>> print c
[[-6]
 [-4]
 [27]]
>>>
>>> print d
[[ 6  4 24]
 [ 1 -9  8]]
> #查看矩陣的形狀
>>> d.shape
(2, 3)

矩陣基本運算

矩陣的轉置

交換矩陣的行和列即得到矩陣的轉置;也可以簡單理解爲圍繞它的主對角線旋轉矩陣
矩陣的轉置
矩陣轉置的轉置是矩陣本身
矩陣轉置舉例:
矩陣的轉置

矩陣的加法/減法

前提:待運算的兩個矩陣有相同的維度
舉例說明
矩陣的加法與減法

標量乘以矩陣

矩陣中所有的元素都乘以標量
標量乘以矩陣

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章