用于機器學習的線性代數(shù)速查表

NumPy,Python的數(shù)值計算庫,它提供了許多線性代數(shù)函數(shù)。對機器學習從業(yè)人員用處很大。

在這篇文章中,你將看到對于機器學習從業(yè)者非常有用的處理矢量和矩陣的關鍵函數(shù)。

這是一份速查表,所有例子都很簡短,假設你處于熟悉它們的階段,建議收藏備用。

本教程分為7個部分; 他們是:

數(shù)組

矢量

矩陣

矩陣的類型

矩陣運算

矩陣分解

統(tǒng)計

1.數(shù)組

創(chuàng)建NumPy數(shù)組有很多方法。

數(shù)組

from numpy import array

A = array([[1,2,3],[1,2,3],[1,2,3]])

零(用零填充數(shù)組)

from numpy import zeros

A = zeros([3,5])

一(用1填充數(shù)組)

from numpy import ones

A = ones([5, 5])

2.矢量

矢量是一個標量的行或者列。

矢量加法

c = a + b

矢量減法

c = a - b

矢量乘法

c = a * b

矢量除法

c = a / b

矩陣點積

c = a.dot(b)

矩陣乘以標量

c = a * 2.2

向量范數(shù)

from numpy.linalg import norm

l2 = norm(v)

3.矩陣

矩陣是標量組成的二維數(shù)組。

矩陣加法

C = A + B

矩陣減法

C = A - B

矩陣乘法(哈達馬積)

C = A * B

矩陣除法

C = A / B

矩陣乘以矩陣(點積)

C = A.dot(B)

矩陣乘以向量(點積)

C = A.dot(b)

矩陣乘以標量

C = A.dot(2.2)

4.矩陣的類型

在更廣泛的計算中經(jīng)常使用不同類型的矩陣作為元素。

三角矩陣

# lower

from numpy import tril

lower = tril(M)

# upper

from numpy import triu

upper = triu(M)

對角矩陣

from numpy import diag

d = diag(M)

單位矩陣

from numpy import identity

I = identity(3)

5.矩陣運算

矩陣操作通常用作更高級計算的基礎。

矩陣轉置

B = A.T

矩陣求逆

from numpy.linalg import inv

B = inv(A)

矩陣的跡

from numpy import trace

B = trace(A)

矩陣行列式

from numpy.linalg import det

B = det(A)

矩陣的秩

from numpy.linalg import matrix_rank

r = matrix_rank(A)

6.矩陣分解

矩陣分解(matrix factorization或Matrix factorization)將矩陣分解為其組成部分,以使其他運算更簡單,更穩(wěn)定。

LU分解

from scipy.linalg import lu

P, L, U = lu(A)

QR分解

from numpy.linalg import qr

Q, R = qr(A, 'complete')

特征分解

from numpy.linalg import eig

values, vectors = eig(A)

奇異值分解

from scipy.linalg import svd

U, s, V = svd(A)

7.統(tǒng)計

統(tǒng)計數(shù)據(jù)總結了矢量或矩陣的內(nèi)容,并且經(jīng)常用作更廣泛操作的組成部分。

均值

from numpy import mean

result = mean(v)

方差

from numpy import var

result = var(v, ddof=1)

標準差(均方差)

from numpy import std

result = std(v, ddof=1)

協(xié)方差矩陣

from numpy import cov

sigma = cov(v1, v2)

線性最小二乘

from numpy.linalg import lstsq

b = lstsq(X, y)

附:

NumPy API

線性代數(shù):http://www.atyun.com/17061_用于機器學習的線性代數(shù)速查表&=6.html

統(tǒng)計:http://www.atyun.com/17061_用于機器學習的線性代數(shù)速查表&=6.html

其他速查表

http://www.atyun.com/17061_用于機器學習的線性代數(shù)速查表&=6.html

原文網(wǎng)址:http://www.atyun.com/17061_用于機器學習的線性代數(shù)速查表&=6.html

關于人工智能,如果想了解更多,可關注微信公眾號:atyun_com或者網(wǎng)站AiTechYun(http://www.atyun.com/),最快獲得第一手信息。

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容