丁香五月天婷婷久久婷婷色综合91|国产传媒自偷自拍|久久影院亚洲精品|国产欧美VA天堂国产美女自慰视屏|免费黄色av网站|婷婷丁香五月激情四射|日韩AV一区二区中文字幕在线观看|亚洲欧美日本性爱|日日噜噜噜夜夜噜噜噜|中文Av日韩一区二区

您正在使用IE低版瀏覽器,為了您的雷峰網(wǎng)賬號(hào)安全和更好的產(chǎn)品體驗(yàn),強(qiáng)烈建議使用更快更安全的瀏覽器
此為臨時(shí)鏈接,僅用于文章預(yù)覽,將在時(shí)失效
人工智能開(kāi)發(fā)者 正文
發(fā)私信給AI研習(xí)社-譯站
發(fā)送

0

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

本文作者: AI研習(xí)社-譯站 2020-11-03 10:44
導(dǎo)語(yǔ):正確理解機(jī)器學(xué)習(xí)和深度學(xué)習(xí)的概念,掌握以下這些數(shù)學(xué)領(lǐng)域至關(guān)重要。

譯者:AI研習(xí)社(季一帆

雙語(yǔ)原文鏈接:https://www.yanxishe.com/TextTranslation/2965


本文完整代碼見(jiàn)Github或直接在Google Colab運(yùn)行測(cè)試。

本文目錄

  1. 引言

  2. 機(jī)器學(xué)習(xí)ML和深度學(xué)習(xí)NN中的線性代數(shù)

  3. 矩陣

  4. 向量

  5. 矩陣乘法

  6. 轉(zhuǎn)置矩陣

  7. 逆矩陣

  8. 正交矩陣

  9. 對(duì)角矩陣

  10. 正規(guī)方程的轉(zhuǎn)置矩陣和逆矩陣

  11. 線性方程

  12. 向量范數(shù)

  13. L1范數(shù)/Manhattan范數(shù)

  14. L2范數(shù)/Euclidean范數(shù)

  15. ML中的正則化

  16. Lasso

  17. 特征選擇與抽取

  18. 協(xié)方差矩陣

  19. 特征值與特征向量

  20. 正交性

  21. 正交集

  22. 擴(kuò)張空間

  23. 主成分分析(PCA)

  24. 矩陣分解

  25. 總結(jié)

引言

機(jī)器學(xué)習(xí)和深度學(xué)習(xí)建立在數(shù)學(xué)原理和概念之上,因此AI學(xué)習(xí)者需要了解基本數(shù)學(xué)原理。在模型構(gòu)建過(guò)程中,我們經(jīng)常設(shè)計(jì)各種概念,例如維數(shù)災(zāi)難、正則化、二進(jìn)制、多分類、有序回歸等。

神經(jīng)元是深度學(xué)習(xí)的基本單位,該結(jié)構(gòu)完全基于數(shù)學(xué)概念,即輸入和權(quán)重的乘積和。至于Sigmoid,ReLU等等激活函數(shù)也依賴于數(shù)學(xué)原理。

正確理解機(jī)器學(xué)習(xí)和深度學(xué)習(xí)的概念,掌握以下這些數(shù)學(xué)領(lǐng)域至關(guān)重要:

  • 線性代數(shù)

  • 微積分

  • 矩陣分解

  • 概率論

  • 解析幾何

機(jī)器學(xué)習(xí)和深度學(xué)習(xí)中的線性代數(shù)

在機(jī)器學(xué)習(xí)中,很多情況下需要向量化處理,為此,掌握線性代數(shù)的知識(shí)至關(guān)重要。對(duì)于機(jī)器學(xué)習(xí)中典型的分類或回歸問(wèn)題,通過(guò)最小化實(shí)際值與預(yù)測(cè)值差異進(jìn)行處理,該過(guò)程就用到線性代數(shù)。通過(guò)線性代數(shù)可以處理大量數(shù)據(jù),可以這么說(shuō),“線性代數(shù)是數(shù)據(jù)科學(xué)的基本數(shù)學(xué)?!?/p>

在機(jī)器學(xué)習(xí)和深度學(xué)習(xí)中,我們涉及到線性代數(shù)的這些知識(shí):

  • 向量與矩陣

  • 線性方程組

  • 向量空間

  • 偏差

通過(guò)線性代數(shù),我們可以實(shí)現(xiàn)以下機(jī)器學(xué)習(xí)或深度學(xué)習(xí)方法:

  • 推導(dǎo)回歸方程

  • 通過(guò)線性方程預(yù)測(cè)目標(biāo)值

  • 支持向量機(jī)SVM

  • 降維

  • 均方差或損失函數(shù)

  • 正則化

  • 協(xié)方差矩陣

  • 卷積

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

矢量積

矩陣

矩陣是線性代數(shù)的重要概念。一個(gè)m*n矩陣包含mn個(gè)元素,可用于線性方程組或線性映射的計(jì)算,也可將其視為一個(gè)由m*n個(gè)實(shí)值元素組成的元組。

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

矩陣表示

向量

在線性代數(shù)中,向量是大小為n*1的矩陣,即只有一列。

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

矩陣表示

矩陣乘法

矩陣乘法是行和列的點(diǎn)積,其中一個(gè)矩陣的行與另一個(gè)矩陣列相乘并求和。

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

矩陣乘法

矩陣乘法在線性回歸中的應(yīng)用

通過(guò)多種特征可以預(yù)測(cè)房屋價(jià)格。下表展示了不同房屋的特征及其價(jià)格。

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

不同房屋的特征及其價(jià)格

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

特征變量與目標(biāo)變量

令:

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

特征及其系數(shù)

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

房?jī)r(jià)預(yù)測(cè)函數(shù)

轉(zhuǎn)置矩陣

對(duì)于矩陣A∈R^m*n,有矩陣B∈R^n*m滿足b_ij = a_ij,稱為A的轉(zhuǎn)置,即B=A^T。

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

A的轉(zhuǎn)置

逆矩陣

對(duì)n階矩陣A,有矩陣B∈R^n*n滿足AB =I_n(單位矩陣)= BA的性質(zhì),稱B為A的逆,表示為A^-1。

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

矩陣A和B

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

A和B相乘

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

A、B互為逆矩陣(得到單位矩陣)

正交矩陣

當(dāng)且僅當(dāng)矩陣列向量組是單位正交向量組時(shí),n階矩陣A∈R^n*n是正交矩陣,有:

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

正交矩陣

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

矩陣A及其轉(zhuǎn)置

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

矩陣A及其轉(zhuǎn)置的乘積 

對(duì)角矩陣

在n階矩陣A∈R^n*n中,除主對(duì)角線上的元素,其他所有元素均為零,稱其為對(duì)角矩陣,即:

Aij =0,i != j  

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

對(duì)角矩陣

正規(guī)方程的轉(zhuǎn)置矩陣和逆矩陣

正規(guī)方程通過(guò)計(jì)算theta j的導(dǎo)數(shù),將其設(shè)為零來(lái)最小化J。無(wú)需Gradient Descent就可直接得到θ的值,θ見(jiàn)下圖。

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

最小化誤差

通過(guò)上式實(shí)現(xiàn)前文“房?jī)r(jià)預(yù)測(cè)”。

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

以矩陣形式表示特征x和目標(biāo)值y

創(chuàng)建特征x和目標(biāo)y的矩陣:

import numpy as np Features
x = np.array([[2, 1834, 1],[3, 1534, 2],[2, 962, 3]])# Target or Pricey = [8500, 9600, 258800]

計(jì)算x的轉(zhuǎn)置:

# Transpose of xtranspose_x = x.transpose()transpose_x


深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

特征x矩陣的轉(zhuǎn)置

轉(zhuǎn)置矩陣與原矩陣x的乘積:

multi_transpose_x_to_x = np.dot(transpose_x, x)

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

轉(zhuǎn)置矩陣與原矩陣x的乘積 

轉(zhuǎn)置矩陣與原始矩陣乘積的逆:

inverse_of_multi_transpose_x_to_x = np.linalg.inv(multi_transpose_x_to_x)

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

逆矩陣

x的轉(zhuǎn)置與y的乘積:

multiplication_transposed_x_y = np.dot(transpose_x, y)

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

x的轉(zhuǎn)置與y的乘積 

theta值計(jì)算:

theta = np.dot(inverse_of_multi_transpose_x_to_x, multiplication_transposed_x_y)

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

theta

線性方程

線性方程是線性代數(shù)的核心,通過(guò)它可以解決許多問(wèn)題,下圖是一條直線方程。

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

線性方程y=4x-5及其圖示

當(dāng)x=2時(shí):

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

由上述線性方程式得出的y

線性回歸中的線性方程

回歸就是給出線性方程的過(guò)程,該過(guò)程試圖找到滿足特定數(shù)據(jù)集的最優(yōu)曲線,即:

Y = bX + a

其中,a是Y軸截距,決定直線與Y軸相交的點(diǎn);b是斜率,決定直線傾斜的方向和程度。

示例

通過(guò)線性回歸預(yù)測(cè)平方英尺和房屋價(jià)格的關(guān)系。

數(shù)據(jù)讀取:

import pandas as pd
df = pd.read_csv('house_price.csv')
df.head()

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

房?jī)r(jià)表

計(jì)算均值:

def get_mean(value):
    total = sum(value)
    length = len(value)
    mean = total/length
    return mean

計(jì)算方差:

def get_variance(value):
    mean = get_mean(value)
    mean_difference_square = [pow((item - mean), 2) for item in value]
    variance = sum(mean_difference_square)/float(len(value)-1)
    return variance

計(jì)算協(xié)方差:

def get_covariance(value1, value2):
    value1_mean = get_mean(value1)
    value2_mean = get_mean(value2)
    values_size = len(value1)
    covariance = 0.0    for i in range(0, values_size):
        covariance += (value1[i] - value1_mean) * (value2[i] - value2_mean)
    return covariance / float(values_size - 1)

線性回歸過(guò)程:

def linear_regression(df):
   X = df['square_feet']
   Y = df['price']
   m = len(X)
   square_feet_mean = get_mean(X)
   price_mean = get_mean(Y)
   
   #variance of X
   square_feet_variance = get_variance(X)
   price_variance = get_variance(Y)
   
   covariance_of_price_and_square_feet = get_covariance(X, Y)
   w1 = covariance_of_price_and_square_feet / float(square_feet_variance)    w0 = price_mean - w1 * square_feet_mean
   
   # prediction --> Linear Equation
   prediction = w0 + w1 * X
   
   df['price (prediction)'] = prediction
   return df['price (prediction)']

 以上級(jí)線性回歸方法:

linear_regression(df)

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

預(yù)測(cè)價(jià)格

線性回歸中的線性方程:

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

向量范數(shù)

向量范數(shù)可用于衡量向量的大小,也就是說(shuō),范數(shù)|| x ||表示變量x的大小,范數(shù)|| x-y ||表示兩個(gè)向量x和y之間的距離。

向量范數(shù)計(jì)算公式:

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

常用的向量范數(shù)為一階和二階:

  • 一階范數(shù)也叫Manhattan范數(shù)

  • 二階范數(shù)也叫Euclidean范數(shù) 

在正則化中會(huì)用到一階和二階范數(shù)。

一階范數(shù)/Manhattan范數(shù)

x∈R^n的L1范數(shù)定義為:

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

一階范數(shù)示意圖

L2范數(shù)/Euclidean范數(shù)

x∈R^n的L2范數(shù)定義為:

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

二階范數(shù)示意圖

機(jī)器學(xué)習(xí)中的正則化

正則化是指通過(guò)修改損失函數(shù)以懲罰學(xué)習(xí)權(quán)重的過(guò)程,是避免過(guò)擬合的有效方式。

正則化在機(jī)器學(xué)習(xí)中的作用:

  • 解決共線性問(wèn)題

  • 除去噪聲數(shù)據(jù)

  • 避免過(guò)擬合

  • 提升模型表現(xiàn)

標(biāo)準(zhǔn)正則化技術(shù)包括:

  • L1正則化(Lasso)

  • L2正則化(Ridge)

L1正則化(Lasso)

Lasso正則化應(yīng)用廣泛,其形式為:

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

L2正則化(Ridge)

Ridge正則化表達(dá)式:

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

其中,通過(guò)λ調(diào)整懲罰項(xiàng)的權(quán)重進(jìn)行控制。

特征提取和特征選擇

特征提取和特征選擇的主要目的是選擇一組最佳的低維特征以提高分類效率,以避免維數(shù)災(zāi)難。在實(shí)踐中,通過(guò)矩陣操作實(shí)現(xiàn)特征選擇和特征提取。

特征提取

在特征提取中,我們通過(guò)映射函數(shù)從現(xiàn)有特征中找到一組新特征,即:

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

特征選擇

特征選擇是指從原始特征中選擇部分特征。

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

主要特征抽取方法包括主成分分析PCA和線性判別分析LDA。其中,PCA是一種典型的特征提取方法,了解協(xié)方差矩、特征值或特征向量對(duì)于理解PCA至關(guān)重要。

協(xié)方差矩陣

在PCA推導(dǎo)過(guò)程中,協(xié)方差矩陣起到至關(guān)重要的作用。以下兩個(gè)概念是計(jì)算協(xié)方差矩陣的基礎(chǔ):

  • 方差

  • 協(xié)方差

方差

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

方差的局限性在于,無(wú)法表示變量之間的關(guān)系。

協(xié)方差

協(xié)方差用于衡量?jī)蓚€(gè)變量之間的關(guān)系:

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

協(xié)方差矩陣

協(xié)方差矩陣是方陣,其中每個(gè)元素表示兩個(gè)隨機(jī)矢量之間的協(xié)方差。

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

協(xié)方差矩陣的計(jì)算公式:

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

特征值與特征向量

特征值:令m為n*n矩陣,如果存在非零向量x∈R^n,使得mx =λx,則標(biāo)量λ為矩陣m的特征值。

特征向量:上式中向量x稱為特征值λ的特征向量。

特征值與特征向量的計(jì)算

若n階矩陣m有特征值λ和相應(yīng)特征向量x,有mx =λx,則mx —λx= 0,得到下式:

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

求解方程的λ可得到m的所有特征值

示例:

計(jì)算一下矩陣的特征值和特征向量。

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

解:

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

因此,矩陣m有兩個(gè)特征值2和-1。每個(gè)特征值對(duì)應(yīng)多個(gè)特征向量。

正交性

如果向量v和w的點(diǎn)積為零,稱兩向量正交。

v.w = 0

例如:

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門


正交集

如果某一集合中的所有向量相互正交,且均為單位長(zhǎng)度,稱為規(guī)范正交集合。其張成的子空間稱為規(guī)范正交集。

擴(kuò)張空間

令V為向量空間,元素v1,v2,…..,vn∈V。

將這些元素與標(biāo)量相乘加和,所有的線性組合集稱為擴(kuò)張空間。

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

示例:

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

Span (v1, v2, v3) = av1 + bv2 + cv3

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

向量空間的基是一組向量,通過(guò)基向量的線性可以組成向量空間中任意一個(gè)元素。

示例:

假設(shè)向量空間的一組基為:

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

基向量元素是相互獨(dú)立的,如:

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門


主成分分析PCA

通過(guò)PCA能夠?qū)?shù)據(jù)進(jìn)行降維,以處理盡可能多的數(shù)據(jù)。其原理是:找到方差最大的方向,在該方向上進(jìn)行投影以減小數(shù)據(jù)維度。

PCA的計(jì)算方法:

設(shè)有一個(gè)N*1向量,其值為x1,x2,…..,xm。

1.計(jì)算樣本均值

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

2.向量元素減均值

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

3.計(jì)算樣本協(xié)方差矩陣

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

4.計(jì)算協(xié)方差矩陣的特征值和特征向量

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

5.降維:選擇前k個(gè)特征向量近似x(k <N)

python實(shí)現(xiàn)主成分分析

為實(shí)現(xiàn)PCA,需要實(shí)現(xiàn)以下功能:

  • 獲取協(xié)方差矩陣

  • 計(jì)算特征值和特征向量

  • 通過(guò)PCA了解降維

Iris數(shù)據(jù)導(dǎo)入

import numpy as np
import pylab as pl
import pandas as pd
from sklearn import datasets
import matplotlib.pyplot as pltfrom sklearn.preprocessing import StandardScaler load_iris = datasets.load_iris() iris_df = pd.DataFrame(load_iris.data, columns=[load_iris.feature_names]) iris_df.head()

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

標(biāo)準(zhǔn)化

標(biāo)準(zhǔn)化數(shù)據(jù)使得所有特征數(shù)據(jù)處于同一量級(jí)區(qū)間,有利于分析特征。

standardized_x = StandardScaler().fit_transform(load_iris.data)
standardized_x[:2]

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

計(jì)算協(xié)方差矩陣

covariance_matrix_x = np.cov(standardized_x.T)
covariance_matrix_x

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

計(jì)算協(xié)方差矩陣得特征值和特征向量

eigenvalues, eigenvectors = np.linalg.eig(covariance_matrix_x)

eigenvalues

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

eigenvectors

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

特征值的方差

total_of_eigenvalues = sum(eigenvalues)
varariance = [(i / total_of_eigenvalues)*100 for i in sorted(eigenvalues, reverse=True)]
varariance

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

上圖中的方差值分別表示:

  • 1st 成分 = 72.96%

  • 2nd   成分  = 22.85%

  • 3rd  成分  = 3.5%

  • 4th  成分  = 0.5%

可以看到,第三和第四成分具有很小的方差,可以忽略不記,這些組分不會(huì)對(duì)最終結(jié)果產(chǎn)生太大影響。

保留占比大的第一、第二成分,并進(jìn)行以下操作:

eigenpairs = [(np.abs(eigenvalues[i]), eigenvectors[:,i]) for i in range(len(eigenvalues))]
# Sorting from Higher values to lower valueeigenpairs.sort(key=lambda x: x[0], reverse=True) eigenpairs

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

計(jì)算Eigenparis的矩陣權(quán)重

matrix_weighing = np.hstack((eigenpairs[0][1].reshape(4,1),eigenpairs[1][1].reshape(4,1)))
matrix_weighing

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

將標(biāo)準(zhǔn)化矩陣乘以矩陣權(quán)重

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

繪圖

plt.figure()target_names = load_iris.target_names
y = load_iris.targetfor c, i, target_name in zip("rgb", [0, 1, 2], target_names):
   plt.scatter(Y[y==i,0], Y[y==i,1], c=c, label=target_name)plt.xlabel('PCA 1')
plt.ylabel('PCA 2')
plt.legend()
plt.title('PCA')
plt.show()

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

Iris數(shù)據(jù)的主成分分析示意圖

矩陣分解

矩陣分解在機(jī)器學(xué)習(xí)中也至關(guān)重要,該過(guò)程本質(zhì)上是將矩陣分解為矩陣的乘積。

常用的矩陣分解技術(shù)有LU分解,奇異值分解(SVD)等。

奇異值分解(SVD)

SVD可用于減小數(shù)據(jù)維度,奇異值分解如下:

令M為矩陣,其可以分解為三個(gè)矩陣的乘積,即正交矩陣(U),對(duì)角矩陣(S)和正交矩陣(V)的轉(zhuǎn)置。

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

結(jié)論

機(jī)器學(xué)習(xí)和深度學(xué)習(xí)是建立在數(shù)學(xué)概念之上的,掌握理解數(shù)學(xué)知識(shí)對(duì)于算法構(gòu)建和數(shù)據(jù)處理有極大幫助。

線性代數(shù)的研究包括向量及其操作。在機(jī)器學(xué)習(xí)中,各處可見(jiàn)線性代數(shù)的背影,如線性回歸,獨(dú)熱編碼,主成分分析PCA,推薦系統(tǒng)中的矩陣分解。

深度學(xué)習(xí)更甚,其完全基于線性代數(shù)和微積分。梯度下降,隨機(jī)梯度下降等優(yōu)化方法也建立在此之上。

矩陣是線性代數(shù)中的重要概念,通過(guò)矩陣可以緊湊地表示線性方程組、線性映射等。同樣,向量也是重要的概念,將不同向量與標(biāo)量乘積進(jìn)行加和可以組成不同的向量空間。

歡迎在評(píng)論區(qū)回復(fù)你的看法,我會(huì)虛心接受并進(jìn)行改進(jìn)。

免責(zé)聲明:本文中表達(dá)的觀點(diǎn)僅為作者個(gè)人觀點(diǎn),不(直接或間接)代表卡耐基梅隆大學(xué)或與作者相關(guān)的其他組織。我知道,本文不盡完善,僅是本人當(dāng)前的一些看法與思考,希望對(duì)讀者有所幫助。

資源

Google colab implementation.

Github repository

參考

[1] Linear Algebra, Wikipedia, https://en.wikipedia.org/wiki/Linear_algebra

[2] Euclidean Space, Wikipedia, https://en.wikipedia.org/wiki/Euclidean_space

[3] High-dimensional Simplexes for Supermetric Search, Richard Connor, Lucia Vadicamo, Fausto Rabitti, ResearchGate, https://www.researchgate.net/publication/318720793_High-Dimensional_Simplexes_for_Supermetric_Search

[4] ML | Normal Equation in Linear Regression, GeeksforGeeks, https://www.geeksforgeeks.org/ml-normal-equation-in-linear-regression/

[5] Vector Norms by Roger Crawfis, CSE541 — Department of Computer Science, Stony Brook University, https://www.slideserve.com/jaimie/vector-norms

[6] Variance Estimation Simulation, Online Stat Book by Rice University, http://onlinestatbook.com/2/summarizing_distributions/variance_est.html

[7] Lecture 17: Orthogonality, Oliver Knill, Harvard University, http://people.math.harvard.edu/~knill/teaching/math19b_2011/handouts/math19b_2011.pdf

[8] Orthonormality, Wikipedia, https://en.wikipedia.org/wiki/Orthonormality

[9] Linear Algebra/Basis, Wikibooks, https://en.wikibooks.org/wiki/Linear_Algebra/Basis

[10] Linear Algebra, LibreTexts, https://math.libretexts.org/Bookshelves/Linear_Algebra


AI研習(xí)社是AI學(xué)術(shù)青年和AI開(kāi)發(fā)者技術(shù)交流的在線社區(qū)。我們與高校、學(xué)術(shù)機(jī)構(gòu)和產(chǎn)業(yè)界合作,通過(guò)提供學(xué)習(xí)、實(shí)戰(zhàn)和求職服務(wù),為AI學(xué)術(shù)青年和開(kāi)發(fā)者的交流互助和職業(yè)發(fā)展打造一站式平臺(tái),致力成為中國(guó)最大的科技創(chuàng)新人才聚集地。

如果,你也是位熱愛(ài)分享的AI愛(ài)好者。歡迎與譯站一起,學(xué)習(xí)新知,分享成長(zhǎng)。

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

雷峰網(wǎng)版權(quán)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知。

深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的線性代數(shù)入門

分享:
相關(guān)文章

知情人士

AI研習(xí)社(yanxishe.com)譯站頻道,傳播前沿人工智能知識(shí),讓語(yǔ)言不再成為學(xué)習(xí)知識(shí)的門檻。(原雷鋒字幕組)
當(dāng)月熱門文章
最新文章
請(qǐng)?zhí)顚懮暾?qǐng)人資料
姓名
電話
郵箱
微信號(hào)
作品鏈接
個(gè)人簡(jiǎn)介
為了您的賬戶安全,請(qǐng)驗(yàn)證郵箱
您的郵箱還未驗(yàn)證,完成可獲20積分喲!
請(qǐng)驗(yàn)證您的郵箱
立即驗(yàn)證
完善賬號(hào)信息
您的賬號(hào)已經(jīng)綁定,現(xiàn)在您可以設(shè)置密碼以方便用郵箱登錄
立即設(shè)置 以后再說(shuō)