2020国产成人精品视频,性做久久久久久久久,亚洲国产成人久久综合一区,亚洲影院天堂中文av色

分享

機器學(xué)習(xí)中的線性代數(shù)

 taotao_2016 2020-05-06

(一)前言

1、總結(jié)大數(shù)據(jù)、人工智能機器學(xué)習(xí)中的數(shù)學(xué)知識

2、已經(jīng)調(diào)試通過直接運用,減少查找資料的時間

3、您的關(guān)注就是對我對大的支持,也是對科技的支持

機器學(xué)習(xí)的核心技術(shù)是以 數(shù)學(xué)和數(shù)據(jù)結(jié)構(gòu)算法為主的基礎(chǔ)學(xué)科,包括高等數(shù)學(xué)、線性代數(shù)、數(shù)論、圖論、決策論等等基礎(chǔ)理論知識點,在實際的工程實踐中出現(xiàn)了很多數(shù)學(xué)工具比如R語言數(shù)學(xué)庫,商用MATLAB數(shù)學(xué)庫,近年來Python數(shù)學(xué)庫發(fā)展的很快,這里涉及到的案例將使用Python語言描述,為了方便大家的運用,本篇文章將線性代數(shù)常用的知識點總結(jié)出來,可以方便大家的引用,也可以作為大學(xué)生和大學(xué)教師的參考課件。

本篇文章涉及到的案例基本都是筆者親自調(diào)試通過,要求Python3.6以上版本,要安裝numpy、pandas、sklearn、 matplotlib等常見類庫,特別說明不建議讀者使用Python2.7版本。建議大家使用Pycharm來提高效率。

(二)矩陣

矩陣的運算有加減乘、求矩陣的逆、求矩陣的秩、矩陣的轉(zhuǎn)置等運算,矩陣的運算在線性回歸中有著重要的作用,數(shù)據(jù)分析領(lǐng)域也起著重要的作用,比如關(guān)系型數(shù)據(jù)庫本質(zhì)就是矩陣的各種運算。

1、矩陣的加法

importnumpy asnp
a1 = np.array([[1,2,3]])
a2 = np.array([[4,5,6]])
print(a1 + a2 )

2、矩陣的乘法

設(shè) 有兩個矩陣A和B,A為3x2矩陣,B為2x3矩陣,乘積的結(jié)果為C3x3矩陣,矩陣乘積的規(guī)則大家都學(xué)過了,再溫習(xí)下,如下圖所示:

機器學(xué)習(xí)中的線性代數(shù)

importnumpy asnp
A = np.array([[1,2],[3,4],[5,6]])
B = np.array([[1,2,3],[4,5,6]])
print(np.dot(A,B) )

A x B = C ,結(jié)果為:

[[ 9 12 15]

[19 26 33]

[29 40 51]]

C 的第1行為 :1x1+1x4 1x2 + 2x5 1x3+2x6

C 的第2行為 :3x1+4x4 3x2 + 4x5 3x3 +4x6

C 的第3行為 :5x1 + 6x4 5x2 +6x5 5x3 + 6x6

3、求矩陣的秩

矩陣A的列秩是A的線性獨立的縱列的極大數(shù)目。類似地,行秩是A的線性無關(guān)的橫行的極大數(shù)目。如果把矩陣看成一個個行向量或者列向量,秩就是這些行向量或者列向量的秩,也就是極大無關(guān)組中所含向量的個數(shù)。

importnumpy asnp
fromscipy importlinalg
A = np.array([[1, 0, 0],
[0, 1, 0],
[0, 0, 1],
[0, 0, 0]])
#非0的行數(shù)就是矩陣的秩
n = np.linalg.matrix_rank(A)
print(n)

結(jié)果:n = 3

4、求矩陣的逆

設(shè)A是數(shù)域上的一個n階方陣,若在相同數(shù)域上存在另一個n階矩陣B,使得: AB=BA=E。 則我們稱B是A的逆矩陣,而A則被稱為可逆矩陣。

importnumpy asnp
fromscipy importlinalg
A = np.array([[1, 2 ],
[3, 4, ]
])
An = linalg.inv(A)
print(An)

5、求解線性方程組

有個方程組如下所示:

X1 + x2 + x3 = 10

X1 - x2 + x3 = 6

X1 - x2 - x3 = 0

importnumpy asnp
fromscipy importlinalg
A = np.array([[1, 1, 1],
[1, -1, 1],
[1, -1, -1]])
y = np.array([10, 6, 0])
x = linalg.solve(A, y)
print(x)

結(jié)果:[5. 2. 3.]

(三)向量

1、向量的概念

在線性代數(shù)中 的向量是指n個實數(shù)/復(fù)數(shù)組成的有序數(shù)組,稱為n維向量。α=(a1,a2,…,an) 稱為n維向量。其中ai稱為向量α的第i個分量。

2、行向量和列向量

(1)行向量

importnumpy asnp
V = np.array([1,2,3 ])
print(V)

(2)列向量

importnumpy asnp
#行向量
v1 =np.array([[1,2,3]])
#v1轉(zhuǎn)置
v2 = v1.T
print(v2 )

3、向量的運算

(1)向量的加法

importnumpy asnp
v1 = np.array([[1,2,3]])
v2 = np.array([[4,5,6]])
print(v1+v2 )

結(jié)果: [[5 7 9]]

(2)向量的內(nèi)積

計算內(nèi)積的時候要注意一個是行向量,一個是列向量:

importnumpy asnp
v1 = np.array([[1,2,3]])
v2 = np.array([[4,5,6]]).T
print(np.dot(v1,v2) )

機器學(xué)習(xí)中的線性代數(shù)

4、特征向量

如果向量v與變換A滿足 Av=λv,則稱向量v是變換A的一個特征向量,λ是相應(yīng)的特征值。線性變換的特征向量是指在變換下方向不變,或者簡單地乘以一個縮放因子的非零向量;特征向量對應(yīng)的特征值是它所乘的那個縮放因子。

在A變換的作用下,向量V僅僅在尺度上變?yōu)樵瓉淼摩吮?。稱V是A 的一個特征向量,λ是對應(yīng)的特征值。

例如:有個簡單的二階方陣A = [[2,1] , [ 1, 2 ] ]求其特征向量和特征值

importnumpy asnp
fromscipy importlinalg
A = np.array([[1, 2],
[2, 8]])
v, v_vector = linalg.eig(A)
print(v)
print(v_vector)

結(jié)果為:

[0.46887113+0.j 8.53112887+0.j]

[[-0.96649965 -0.25666794]

[ 0.25666794 -0.96649965]]

意思是:

特征值0.46887113對應(yīng)的特征向量是【 [[-0.96649965 , [ 0.25666794 】

特征值8.53112887對應(yīng)的特征向量是【 -0.25666794, -0.96649965 】

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多