中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
線性代數(shù)在數(shù)據(jù)科學(xué)中的十個(gè)強(qiáng)大應(yīng)用(一)

【磐創(chuàng)AI導(dǎo)讀】:作為機(jī)器學(xué)習(xí)與數(shù)據(jù)科學(xué)背后的線性代數(shù)知識系列開篇,本篇主要介紹了機(jī)器學(xué)習(xí)與數(shù)據(jù)科學(xué)背后的數(shù)學(xué)技術(shù)十大應(yīng)用之基礎(chǔ)機(jī)器學(xué)習(xí)部分與降維部分。想要獲取更多的機(jī)器學(xué)習(xí)、深度學(xué)習(xí)資源,歡迎大家的公眾號:磐創(chuàng)AI。

概覽

  • 線性代數(shù)為各種各樣的數(shù)據(jù)科學(xué)算法或應(yīng)用提供支撐

  • 我們將介紹十種強(qiáng)大的線性代數(shù)應(yīng)用示例,他可以幫助你成為更好的數(shù)據(jù)科學(xué)家

  • 我們將這些應(yīng)用細(xì)分到各個(gè)領(lǐng)域--基礎(chǔ)機(jī)器學(xué)習(xí)(ML),降維,自然語言處理(NLP)和計(jì)算機(jī)視覺(CV)

介紹

線性代數(shù)與數(shù)據(jù)科學(xué)的關(guān)系就像羅賓與蝙蝠俠。這位數(shù)據(jù)科學(xué)忠實(shí)的伙伴經(jīng)常會被大家所忽視,但實(shí)際上,它是數(shù)據(jù)科學(xué)主要領(lǐng)域--包括計(jì)算機(jī)視覺(CV)與自然語言處理(NLP)等熱門領(lǐng)域的強(qiáng)力支撐。

數(shù)據(jù)開發(fā)者往往會因?yàn)閿?shù)學(xué)太難而嘗試避開這個(gè)主題。因?yàn)橛泻芏喱F(xiàn)成的數(shù)據(jù)處理庫可以幫助他們避開線性代數(shù)這個(gè)煩惱。

這是極其錯(cuò)誤的想法。線性代數(shù)是我們所熟知的所用強(qiáng)大機(jī)器學(xué)習(xí)算法的背后核心,同樣是數(shù)據(jù)科學(xué)家技能的重要組成部分,接下來就讓我們一起詳細(xì)剖析下線性代數(shù)在數(shù)據(jù)科學(xué)中的強(qiáng)大應(yīng)用。

在本文中,我會詳細(xì)解釋線性代數(shù)在數(shù)據(jù)科學(xué)中的十大應(yīng)用。這些應(yīng)用大致分為四個(gè)領(lǐng)域:

  • 機(jī)器學(xué)習(xí)

  • 降維

  • 自然語言處理(NLP)

  • 計(jì)算機(jī)視覺(CV)

另外每一個(gè)應(yīng)用還為大家準(zhǔn)備了相關(guān)的資源,以便感興趣的同學(xué)更進(jìn)一步了解。

目錄:

  • 為什么學(xué)習(xí)線性代數(shù)

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

  • 損失函數(shù)

  • 正則化

  • 協(xié)方差矩陣

  • 支持向量機(jī)分類器

  • 降維中的線性代數(shù)

  • 主成分分析(PCA)

  • 奇異值分解(SVD)

  • 自然語言處理中的線性代數(shù)

  • 詞嵌入(Word Embeddings)

  • 潛在語義分析

  • 計(jì)算機(jī)視覺中的線性代數(shù)

  • 圖像用張量表示

  • 卷積與圖像處理

為什么學(xué)習(xí)線性代數(shù)

我也曾多次問過自己這個(gè)問題。當(dāng)只需導(dǎo)入Python包就可以構(gòu)建模型時(shí),為什么還要花時(shí)間學(xué)習(xí)線性代數(shù)呢?我是這樣認(rèn)為的,線性代數(shù)是數(shù)據(jù)科學(xué)的基礎(chǔ)之一,假如沒有堅(jiān)實(shí)的基礎(chǔ),就無法建造一棟真正的摩天大樓。比如:

當(dāng)你希望使用主成分分析(PCA)來減少數(shù)據(jù)的維數(shù)時(shí),如果你不知道算法的機(jī)制(數(shù)學(xué)原理),那么你就無法確定該怎樣調(diào)整組件,以及會對數(shù)據(jù)產(chǎn)生什么影響。

通過對線性代數(shù)的理解,可以對機(jī)器學(xué)習(xí)和深度學(xué)習(xí)算法有更深一層的感悟,而不是將它們視為黑盒子。從而可以選擇適當(dāng)?shù)某瑓?shù),建立更好的模型。

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

最大的問題是,機(jī)器學(xué)習(xí)在什么地方需要線性代數(shù)?讓我們看一下非常熟悉的四個(gè)應(yīng)用。

1. 損失函數(shù)

你需要非常熟悉模型是如何擬合給定的數(shù)據(jù)(如線性回歸模型):

  • 從一些預(yù)測函數(shù)開始(線性回歸模型的線性函數(shù))

  • 使用數(shù)據(jù)的獨(dú)立特征預(yù)測輸出

  • 計(jì)算預(yù)測輸出與實(shí)際結(jié)果的距離

  • 使用Gradient Descent等策略根據(jù)距離優(yōu)化預(yù)測函數(shù)

如何計(jì)算預(yù)測輸出與實(shí)際結(jié)果的差異?損失函數(shù)。

損失函數(shù)是向量范數(shù)在線性代數(shù)中的應(yīng)用。范數(shù)可以簡單地說是向量的量綱。有許多類型的向量范數(shù)。

  • L1范數(shù):也稱為曼哈頓距離或Taxicab 范數(shù)。如果只允許行進(jìn)方向與空間軸平行,從原點(diǎn)到矢量的距離,在L1范數(shù)的距離就是你行進(jìn)的距離。

在這個(gè)2D空間中,您可以通過沿x軸行進(jìn)3個(gè)單位然后沿y軸平行移動4個(gè)單位(如圖所示)到達(dá)矢量(3,4)?;蛘吣梢韵妊貀軸行進(jìn)4個(gè)單位,然后沿x軸行進(jìn)3個(gè)單位。在任何一種情況下,您將共旅行7個(gè)單位。

  • L2范數(shù):也稱為歐幾里德距離。L2 范數(shù)是向量距原點(diǎn)的最短距離,如下圖中的紅色路徑所示:

這個(gè)距離是用畢達(dá)哥拉斯定理計(jì)算的。它是的平方根,等于5。

但是,范數(shù)如何用于找出預(yù)測值與真實(shí)值之間的差異?假設(shè)預(yù)測值存儲在向量P中,并且真實(shí)值存儲在向量E中。P-E是它們之間的差異。P-E的范數(shù)就是預(yù)測的總損失。

2. 正則化

正則化是數(shù)據(jù)科學(xué)中非常重要的概念。它是用來防止模型過擬合的方法。正則化實(shí)際上是規(guī)范化的另一種應(yīng)用。

如果模型在訓(xùn)練時(shí)發(fā)生了過擬合,模型就會對新數(shù)據(jù)的預(yù)測結(jié)果不好,因?yàn)槟P蜕踔翆W(xué)習(xí)了訓(xùn)練數(shù)據(jù)中的噪聲。它無法預(yù)測之前沒有訓(xùn)練過的數(shù)據(jù)。下面的圖片揭示了這個(gè)思想:

正則化通過向損失函數(shù)添加權(quán)重向量來懲罰過于復(fù)雜的模型。由于我們希望最小化成本函數(shù),因此需要最小化此范數(shù)。正則化的結(jié)果是權(quán)重向量中無關(guān)緊要的部分變?yōu)榱?,防止預(yù)測函數(shù)過于復(fù)雜。

我們上面討論的L1和L2范數(shù)用于兩種類型的正則化:

  • L1正則化與Lasso 回歸一起使用

  • L2正則化與Ridge 回歸一起使用

3. 協(xié)方差矩陣

雙變量分析是數(shù)據(jù)探索中的重要一步。我們想研究變量對之間的關(guān)系。協(xié)方差或相關(guān)性是用于研究兩個(gè)連續(xù)變量之間關(guān)系的度量。

協(xié)方差表示變量之間線性關(guān)系的方向。正協(xié)方差表示一個(gè)變量的增加或減少在另一個(gè)變量中同樣增加或減少。負(fù)協(xié)方差表明一個(gè)變量的增加或減少同時(shí)另一個(gè)變量與它相反。

ia_100002534 (1)

另一方面,相關(guān)性是協(xié)方差的標(biāo)準(zhǔn)化值。 相關(guān)性值告訴我們線性關(guān)系的強(qiáng)度和方向,范圍從-1到1。

您可能會認(rèn)為這是統(tǒng)計(jì)學(xué)而非線性代數(shù)的概念。好吧,記得我告訴過你線性代數(shù)是無處不在的嗎?使用線性代數(shù)中的轉(zhuǎn)置和矩陣乘法的概念,協(xié)方差矩陣有一個(gè)非常簡潔的表達(dá)式:

其中X是包含所有數(shù)字特征的標(biāo)準(zhǔn)化數(shù)據(jù)矩陣。

4. 支持向量機(jī)分類器

支持向量機(jī)(SVM)是最常見的分類算法之一,經(jīng)常產(chǎn)生令人印象深刻的結(jié)果。它是向量空間概念在線性代數(shù)中的應(yīng)用。

支持向量機(jī)是一種判別分類器,通過查找決策面來工作。它是一種有監(jiān)督的機(jī)器學(xué)習(xí)算法。

在此算法中,我們將每個(gè)數(shù)據(jù)項(xiàng)繪制為n維空間中的點(diǎn)(其中n是特征數(shù)),每個(gè)特征的值是特定坐標(biāo)的值。然后,通過找到最好的區(qū)分兩個(gè)類的超平面來進(jìn)行分類,即最大余量,下面的例子中是C.


超平面是一個(gè)子空間,其維數(shù)比其對應(yīng)的向量空間小1,因此它是2D向量空間的直線,3D向量空間的2D平面等等。使用向量范數(shù)來計(jì)算邊界。

但是,如果數(shù)據(jù)像下面的情況那樣該怎樣線性分離呢?

我們一般認(rèn)為決策面必須是圓形或橢圓形,但怎么找到它?這里,使用了內(nèi)核轉(zhuǎn)換的概念。在線性代數(shù)中,從一個(gè)空間轉(zhuǎn)換到另一個(gè)空間的想法非常普遍。

讓我們介紹一個(gè)變量

。如果我們沿z軸和x軸繪制數(shù)據(jù),就是下面的樣子:

這顯然可以通過 z=a 線性分離,其中a是一些正常數(shù)。在轉(zhuǎn)換回原始空間時(shí),我們得到

作為決策曲面,這是一個(gè)圓圈!

最后的部分?我們不需要手動添加其他函數(shù)。SVM有一種稱為內(nèi)核技巧的技術(shù)。閱讀有關(guān)支持向量機(jī)的這篇文章(https://www.analyticsvidhya.com/blog/2017/09/understaing-support-vector-machine-example-code/?utm_source=blog&utm_medium=10-applications-linear-algebra-data-science),了解SVM,內(nèi)核技巧以及如何在Python中實(shí)現(xiàn)它。

降維

您將經(jīng)常使用具有數(shù)百甚至數(shù)千個(gè)變量的數(shù)據(jù)集。這是行業(yè)運(yùn)作的方式。查看每個(gè)變量并確定哪個(gè)變量更重要是否切合實(shí)際?

這并沒有多大意義。我們需要降低變量的數(shù)量來執(zhí)行任何類型的連貫性分析。這就是為什么減少維數(shù)的原因?,F(xiàn)在,我們來看看常用的兩種降維方法。

5. 主成分分析(PCA)

主成分分析(PCA)是一種無監(jiān)督降維技術(shù)。PCA會找到最大方差的方向并沿著它們的投影以減小維度。

在不深入數(shù)學(xué)的情況下,這些方向就是數(shù)據(jù)的協(xié)方差矩陣特征向量。

方陣的特征向量是特殊的非零向量,即使在對矩陣應(yīng)用線性變換(乘法)之后,其方向也不會改變。它們顯示為下圖中的紅色矢量:

您可以使用scikit-learn包中的PCA類輕松地在Python中實(shí)現(xiàn)PCA:

from sklearn.decomposition import PCA

// say you want to reduce to 2 features
pca = PCA(n_components = 2)

// obtain transformed data
data_transformed = pca.fit_transform(data)

我在sklearn 的Digits(https://scikit-learn.org/stable/auto_examples/datasets/plot_digits_last_image.html)數(shù)據(jù)集上應(yīng)用了PCA - 一組8×8的手寫數(shù)字圖像。我獲得的結(jié)果相當(dāng)令人印象深刻。數(shù)字看起來很好地聚集在一起:

參閱我們的12維降維技術(shù)綜合指南(https://www.analyticsvidhya.com/blog/2018/08/dimensionality-reduction-techniques-python/?utm_source=blog&utm_medium=10-applications-linear-algebra-data-science),并用Python代碼深入了解PCA和其他11種降維技術(shù)。老實(shí)說,這是你可以找到關(guān)于這個(gè)主題的最好的文章之一。

6.奇異值分解

在我看來,奇異值分解(SVD)被低估了,沒有進(jìn)行足夠的討論。這是一種令人驚嘆的矩陣分解技術(shù),具有多種應(yīng)用。我將在以后的文章中嘗試介紹其中的一些內(nèi)容。

現(xiàn)在,讓我們談?wù)劸S度降低中的SVD。具體而言,這稱為截?cái)郤VD。

  • 我們從大的mxn數(shù)值數(shù)據(jù)矩陣A開始,其中m是行數(shù),n是特征的數(shù)量

  • 將其分解為3個(gè)矩陣,如下所示:

  • 根據(jù)對角矩陣選擇k個(gè)奇異值,并相應(yīng)地截?cái)啵ㄐ藜簦?個(gè)矩陣:

  • 最后,將截?cái)嗟木仃囅喑艘垣@得變換后的矩陣A_k。它的尺寸為mx k。因此,它具有k < n的k個(gè)特征

以下是在Python中實(shí)現(xiàn)截?cái)嗟腟VD的代碼(它與PCA非常相似):

from sklearn.decomposition import TruncatedSVD

//減少到2個(gè)特征
svd = TruncatedSVD(n_features  =  2)

//獲取轉(zhuǎn)換后的數(shù)據(jù)
data_transformed = svd.fit_transform(data)

在將截?cái)嗟腟VD應(yīng)用于Digits數(shù)據(jù)時(shí),我得到了下面的圖。您會注意到它不像我們在PCA之后獲得的那樣集群:

作為機(jī)器學(xué)習(xí)與數(shù)據(jù)科學(xué)背后的線性代數(shù)知識系列開篇,本篇主要介紹了機(jī)器學(xué)習(xí)與數(shù)據(jù)科學(xué)背后的數(shù)學(xué)技術(shù)十大應(yīng)用之基礎(chǔ)機(jī)器學(xué)習(xí)部分與降維部分。涵蓋損失函數(shù)、正則化、協(xié)方差矩陣、支持向量機(jī)(SVM)、主成分分析(PCA)與奇異值分解(SVD)背后的線性代數(shù)知識。相信這也是各位數(shù)據(jù)科學(xué)愛好者常用的各項(xiàng)技術(shù),希望可以幫大家理清思路和對這些算法有更進(jìn)一步的認(rèn)識。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
10種線性代數(shù)在數(shù)據(jù)科學(xué)中的強(qiáng)大應(yīng)用(內(nèi)附多種資源)
PCA線性代數(shù)講解
機(jī)器學(xué)習(xí)中的數(shù)學(xué)
[線性代數(shù)]介紹幾種矩陣分解算法以及應(yīng)用
數(shù)學(xué)之美——線性代數(shù)
如何通俗的解釋機(jī)器學(xué)習(xí)的10大算法?
更多類似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服