import numpy as np
標量:是乙個單一的數字
#標量只是乙個單一的數字
scalar_value=
18print
(scalar_value)
#標量只是乙個單一的數字
scalar_value=
18scalar_np=np.array(scalar_value)
#轉換為陣列
(scalar_np,scalar_np.shape)
向量:是乙個有序的數字陣列
#向量是乙個有序的數字陣列
ve_value=[1
,2,3
]#這是乙個列表
ve_np=np.array(ve_value)
#轉換為陣列
(ve_np,ve_np.shape)
#shape顯示為一維陣列,既不是行向量,也不是列向量;
#行向量的矩陣表示
ve_row=np.array([[
1,2,
3]])
(ve_row,
'shape='
,ve_row.shape)
#一行三列的矩陣
#列向量的矩陣表示
ve_column=np.array([[
4],[
6],[
8]])
(ve_column,
'shape='
,ve_column.shape)
#三行一列的矩陣
矩陣:乙個有序的二維陣列
#矩陣是乙個有序的二維陣列,它有兩個索引。第乙個指向行,第二個指向列
m_list=[[
1,2,
3],[
4,5,
6]]m_np=np.array(m_list)
('m_list='
,m_list,
'\n'
,'m_np=\n'
,m_np,
'\n'
,'m_np.shape='
,m_np.shape)
#兩行三列的矩陣
**矩陣標量運算**
#矩陣和標量運算
m=np.array([[
1,2,
3],[
5,6,
7]])
(m,'shape='
,m.shape)
#兩行三列的矩陣
#矩陣*標量
n=m*
2print
(n,'shape='
,n.shape)
#矩陣+標量
n=m+
2print
(n,'shape='
,n.shape)
**矩陣-矩陣加法和減法**
#矩陣+矩陣
a=np.array([[
1,2,
3],[
4,5,
6]])
#2行3列
b=np.array([[
7,8,
9],[
1,2,
3]])
#2行3列
a+b
**矩陣-矩陣點乘(點積)**
#矩陣·矩陣(點乘),對應位置相乘,兩個矩陣行列數必須相等
a=np.array([[
1,2,
3],[
4,5,
6]])
b=np.array([[
7,8,
9],[
1,2,
3]])
a*b#與np.multiply等價
#矩陣·矩陣(點乘),對應位置相乘,兩個矩陣行列數必須相等
a=np.array([[
1,2,
3],[
4,5,
6]])
b=np.array([[
7,8,
9],[
1,2,
3]])
np.multiply(a,b)
**矩陣-矩陣相乘(叉乘)**
#矩陣·矩陣(叉乘)
#如果將乙個矩陣列的數量與第二個矩陣行數相匹配,才能將矩陣相乘
#結果將是乙個矩陣,它具有與第乙個矩陣相同的行數和與第二個矩陣相同的列數
a=np.array([[
1,2,
3],[
4,5,
6]])
#2行3列
b=np.array([[
7,8,
9],[
1,2,
3],[
1,2,
3]])
#3行3列
np.matmul(a,b)
**矩陣-向量乘法**
#矩陣向量的乘法
a=np.array([[
1,2,
3],[
4,5,
6]])
#2行3列
b=np.array([[
7],[
1],[
3]])
#3行1列
np.matmul(a,b)
**向量-向量乘法(列向量-行向量)**
a=np.array([[
1,2,
3]])
#1行3列
b=np.array([[
7],[
1],[
3]])
#3行1列
np.matmul(a,b)
**向量-向量乘法(行向量-列向量)**
a=np.array([[
7],[
1],[
3]])
#3行1列
b=np.array([[
1,2,
3]])
#1行3列
np.matmul(a,b)
**矩陣轉置**
#行列轉置
a=np.array([[
1,2,
3]])
#1行3列
(a,'shape='
,a.shape,
'\n'
,a.t,
'shape='
,a.t.shape)
機器學習中的線性代數知識(上)
as all we know,線性代數對於機器學習的重要性不言而喻。但縱觀國內的教材和課程,大部分線性代數的講解,一上來就堆滿了各種定義和公式,從而導致我們知其然而不知其所以然,不利於我們深入理解機器學習的演算法。因此,希望本篇博文能幫大家從另乙個角度理解線性代數。但是注意,閱讀本篇博文,最好已經有...
線性代數在機器學習中的作用
在學習機器學習知識的時候,我們會進行很多數學知識的學習,而這些數學知識中有線性代數,且線性代數在機器學習中有很大的作用。那麼大家是否知道線性代數在機器學習中的作用是什麼呢?下面我們就給大家解答一下這個問題。線性代數的第乙個作用就是能夠將具體事物抽象為數學物件。其實對於線性代數來說,我們可以對它做乙個...
機器學習(線性代數)筆記
機器學習中的 向量 是指的只有一列的 矩陣 這個矩陣有多少行就稱其為有多少維度 1.某行加上或減去另一行的幾倍,行列式的值不變 2.某行乘k,等於k乘此行列式,例如 3.互換兩行,行列式變號 4.兩行 列 成比例時,行列式的值為0 5.某行 列 為兩項相加減時,行列式可拆成兩個行列式相加減。例如 6...