国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

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

開通VIP
機(jī)器學(xué)習(xí):降維技術(shù)完整指南

第1章:降維簡介:

什么是降維?

在統(tǒng)計(jì)學(xué)、機(jī)器學(xué)習(xí)和信息論中,降維是將n維降為k維的過程,其中k<n。

數(shù)據(jù)降維

數(shù)據(jù)可視化:

一維數(shù)據(jù):

在這里,我們經(jīng)常把維度稱為特征。例如,我們用一個(gè)一維數(shù)組開始繪制數(shù)軸上的值。

二維數(shù)據(jù):

現(xiàn)在,我們有一個(gè)二維數(shù)組,并開始在彼此正交的X和Y軸上繪制數(shù)據(jù)。

三維數(shù)據(jù):

現(xiàn)在,我們將使用3D數(shù)組,并在X,Y和Z軸上進(jìn)行繪制。

我們可以看到,隨著維度的增加,對我們而言,數(shù)據(jù)的可視化變得越來越困難。

n維數(shù)據(jù):

對于N- d數(shù)據(jù),我們需要N個(gè)維度,無法再對其進(jìn)行可視化。因此,為了可視化3D以上的任何數(shù)據(jù),我們將使用降維技術(shù)將其降為2維或3維。

降維的本質(zhì):

在高維數(shù)據(jù)的微觀層次上分析每一個(gè)維度是不可能的。我們可能需要幾天或幾個(gè)月的時(shí)間來進(jìn)行有意義的分析,這些分析需要大量的時(shí)間、金錢和人力。訓(xùn)練一個(gè)高維的數(shù)據(jù)會給我們帶來如下問題:

  • 存儲數(shù)據(jù)所需的空間隨著維度的增加而增加。
  • 維度越小,訓(xùn)練機(jī)器學(xué)習(xí)模型所需的時(shí)間就越少。
  • 隨著維度的增加,過度擬合機(jī)器學(xué)習(xí)模型的可能性也會增加。
  • 我們無法可視化高維數(shù)據(jù)。通過降維,我們會將數(shù)據(jù)縮減為2D或3D,以實(shí)現(xiàn)更好的可視化。
  • 它將刪除我們數(shù)據(jù)中的所有相關(guān)特征。

降維的組成部分:

降維有兩個(gè)主要的組成部分,我們將在這里詳細(xì)討論

1)特征選擇:

大多數(shù)情況下,這些特征與我們的問題無關(guān)。例如,我們正在訓(xùn)練一個(gè)預(yù)測人身高的機(jī)器學(xué)習(xí)模型,我們擁有特征(體重,膚色,痣,婚姻狀況,性別)的數(shù)據(jù)。我們可以看到膚色、痣和婚姻狀況等特征與人的身高沒有關(guān)系。因此,我們需要找到一種解決方案,以找到對我們的任務(wù)最有用的特征。我們可以通過以下方式實(shí)現(xiàn):

  • 業(yè)務(wù)理解、領(lǐng)域知識和專家解決方案可以幫助我們選擇影響響應(yīng)變量(目標(biāo))的預(yù)測變量(特征)。但是,如果我們找不到有用的預(yù)測變量,或者我們錯(cuò)過了有用的特征,它們就有可能丟失信息。
  • 我們建立了一個(gè)經(jīng)典的機(jī)器學(xué)習(xí)模型,并根據(jù)與目標(biāo)變量的相關(guān)性來選擇特征。與擬合度低的特征相比,擬合度高的特征更容易被選擇。
  • 減少特征也可以幫助我們解決此問題。
  • 另一種方法是刪除所有相關(guān)的特征。例如,如果我們有與其他特征(f1=2f2+3f3)的線性組合的特征,那么它們將不會向我們的數(shù)據(jù)添加任何額外的信息。因此,這些特征對我們的機(jī)器學(xué)習(xí)模型訓(xùn)練不再有用。

特征選擇涉及到尋找原始數(shù)據(jù)的子集,使它們的信息損失最小。它有以下三種策略:

  1. Filter策略:獲取更多數(shù)據(jù)信息的策略。
  2. Wrapper策略:根據(jù)模型的準(zhǔn)確度選擇特征
  3. Embedded策略:根據(jù)模型預(yù)測誤差,我們將決定是否保留或刪除所選擇的特征。

2)特征投影:

特征投影又稱特征提取,是將高維空間中的數(shù)據(jù)轉(zhuǎn)換為低維空間中的數(shù)據(jù)。數(shù)據(jù)轉(zhuǎn)換可以是線性的,也可以是非線性的。

對于線性變換,我們應(yīng)用主成分分析(PCA)和線性判別分析(LDA);對于非線性變換,我們應(yīng)用T-SNE。

第2章:主成分分析

1、PCA介紹

PCA主要用作探索性數(shù)據(jù)分析(EDA)中的工具和用于建立預(yù)測模型的工具。它通常用于可視化群體之間的遺傳距離和相關(guān)性。PCA可以通過數(shù)據(jù)協(xié)方差(或相關(guān))矩陣的特征值分解或數(shù)據(jù)矩陣的奇異值分解來完成。

2、PCA的工作方法:

為了更好地理解PCA的原理,讓我們使用2D數(shù)據(jù)。

  1. 首先我們對數(shù)據(jù)進(jìn)行歸一化處理,使平均值移動到原點(diǎn),所有數(shù)據(jù)都在一個(gè)單位正方形中。
  2. 現(xiàn)在我們將試著用一條線來擬合數(shù)據(jù)。為此,我們將嘗試用一條隨機(jī)的線?,F(xiàn)在我們將旋轉(zhuǎn)這條直線,直到它最適合數(shù)據(jù)為止。

最終,我們得到了下面的擬合(高度擬合),它解釋了特征的最大方差。

最佳擬合線

PCA如何找到最佳擬合線的呢?

讓我們從一個(gè)點(diǎn)開始。

為了確定直線與數(shù)據(jù)的匹配程度,PCA將數(shù)據(jù)投射到它上。

i)可以測量從數(shù)據(jù)到直線的距離,并試圖找到一條最小化這些距離的直線。

ii)或者可以試著找到一條直線,使投影點(diǎn)到原點(diǎn)的距離最大化。

數(shù)學(xué)直覺:

為了理解這種技術(shù)背后的數(shù)學(xué)原理,讓我們回到我們的單數(shù)據(jù)點(diǎn)概念。

將數(shù)據(jù)投影到線上之后,我們將得到一個(gè)直角三角形。根據(jù)畢達(dá)哥拉斯定理,我們得到A2=B2+C2。

我們可以看到B和C彼此成反比。這意味著如果B變大,則c必須變小,反之亦然。

因此PCA既可以最小化到直線的距離,也可以最大化從投影點(diǎn)到原點(diǎn)的距離。

從投影點(diǎn)到原點(diǎn)的最大距離更容易計(jì)算。因此,PCA會找到最佳擬合線,以使從投影點(diǎn)到原點(diǎn)的距離平方的總和最大。

距離平方和的最大值

pca的成本函數(shù)

注意:這里我們采用距離的平方,以便負(fù)值不會抵消正值。

現(xiàn)在我們得到了最佳擬合線y = mx + c。這稱為PC1(主成分1)。假設(shè)比例為4:1,這意味著我們在X軸上移動4個(gè)單位,在Y軸上移動1個(gè)單位,這說明數(shù)據(jù)大部分分布在X軸上。

根據(jù)畢達(dá)哥拉斯定理,a2=b2+c2=>a2=42+12=> sqrt(17)=> 4.12,但是數(shù)據(jù)是按比例縮放的,因此我們將每一邊除以4.12,以獲得單位向量。即

F1 = 4 / 4.12 = 0.97

F2 = 1 / 4.12 = 0.242

我們剛剛計(jì)算的單位向量稱為特征向量或PC1,特征的比例(0.97:0.242)稱為loading scores。

SS(PC1的距離)= PC1的特征值。

sqrt(PC1的特征值)= PC1的奇異值。

現(xiàn)在我們對其他特征做同樣的事情來得到主成分。為了投影數(shù)據(jù),現(xiàn)在我們將旋轉(zhuǎn)軸,使PC1與x軸平行(水平)。

旋轉(zhuǎn)軸,使PC1變?yōu)樗?/p>

根據(jù)主成分投影數(shù)據(jù)

我們可以使用在PCA中計(jì)算的特征值來計(jì)算方差。

假設(shè)我們得到方差:PC1 = 0.83和PC2 = 0.17

現(xiàn)在,如果要將數(shù)據(jù)從2D轉(zhuǎn)換為1D,我們選擇feature1作為最終的1D,因?yàn)樗采w了83%。

這就是主成分分析的工作原理,它根據(jù)主成分的方差估計(jì)需要消除的特征,從而進(jìn)行降維。

3、優(yōu)點(diǎn)和缺點(diǎn):

優(yōu)點(diǎn) :

  • 它刪除了相關(guān)特征。
  • 提高了模型效率。
  • 減少過度擬合。
  • 改善可視化效果。

缺點(diǎn):

  • PCA是一種線性算法,對于多項(xiàng)式或其他復(fù)雜函數(shù)來說效果不佳。我們可以找到一些如何使用核PCA來處理此類數(shù)據(jù)的方法。
  • 在PCA之后,如果我們不選擇正確的維數(shù)來消除,我們可能會丟失很多信息。
  • 由于原始特征轉(zhuǎn)換為不像原始特征那樣可讀的主成分,因此可解釋性較低。
  • 它保留全局形狀而不是局部形狀。

4、通過python代碼段在MNIST數(shù)據(jù)集上進(jìn)行PCA:

可以從kaggle 下載data(train.csv)(https://www.kaggle.com/c/digit-recognizer/data)

加載mnist數(shù)據(jù)

mnist圖像的維度表示

作為預(yù)處理步驟,我們對數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化處理,以使平均值移至原點(diǎn),并且所有數(shù)據(jù)均位于單位正方形中。

PCA有兩種應(yīng)用方式,一種是尋找特征向量,另一種是使用sklearn實(shí)現(xiàn)。在大多數(shù)情況下,這兩種實(shí)現(xiàn)都會得到類似的結(jié)果。

方法1:

我們將得到協(xié)方差矩陣,該協(xié)方差矩陣用于求特征值和特征向量。

在將數(shù)據(jù)轉(zhuǎn)換為二維之后,我們將使用這兩個(gè)特征來實(shí)現(xiàn)數(shù)據(jù)的可視化。

利用特征向量進(jìn)行主成分分析

方法:2

我們將使用sklearn的PCA實(shí)現(xiàn)。

PCA的Sklearn實(shí)現(xiàn)

通過sklearn進(jìn)行主成分分析

讓我們看看每個(gè)特征解釋的方差百分比。

由每個(gè)特征解釋的方差百分比

如果我想保留80%的數(shù)據(jù)信息,那么我可以將維度減少到110。

第3章:線性判別分析(LDA):

1、簡介:

LDA是器學(xué)習(xí)和統(tǒng)計(jì)、模式識別中預(yù)處理步驟中最常用的降維技術(shù)。 此算法的目標(biāo)是將數(shù)據(jù)集投影到具有類別可分的低維空間,以避免過度擬合并降低機(jī)器計(jì)算量。

2、LDA的工作方式:

PCA和LDA都是線性約簡技術(shù),但與PCA不同的是,LDA側(cè)重于最大化兩個(gè)組的可分性。

LDA使用特征來創(chuàng)建一個(gè)新軸,并嘗試將數(shù)據(jù)投射到一個(gè)新軸上,以最大限度地分離兩個(gè)類。這就是為什么LDA是一種監(jiān)督學(xué)習(xí)算法,因?yàn)樗媚繕?biāo)值來尋找新的軸。

PCA試圖找到方差最大的成分,而LDA則試圖找到新的軸

i)最大化類的可分離性

ii)最小化類之間的方差。

通過最小化方差,我們可以很好地分離各個(gè)組的聚類。 與最大化組的平均值一樣重要。

LDA根據(jù)最大化下列公式的準(zhǔn)則找到新的坐標(biāo)軸

LDA的成本函數(shù)

2個(gè)類以上的LDA:

在這種情況下,如果數(shù)據(jù)有2個(gè)以上的組,LDA會找出整個(gè)數(shù)據(jù)的平均值和各個(gè)組之間的中心,它試圖最大化從中心平均值到各個(gè)組平均值的距離。為了更好地理解,請看以下3個(gè)類的數(shù)據(jù)。

我們可以找到一個(gè)能將這三組分開的平面。

算法:

  1. 計(jì)算數(shù)據(jù)集中不同類別的d維平均向量。
  2. 計(jì)算散點(diǎn)矩陣(類間和類內(nèi)散點(diǎn)矩陣)。
  3. 計(jì)算散點(diǎn)矩陣的特征向量(e1,e2,…,ed)和相應(yīng)的特征值(λ1,λ2,…,λd)。
  4. 通過減少特征值對特征向量進(jìn)行排序,并選擇特征值最大的k個(gè)特征向量以形成ad×k維矩陣W(其中每列代表一個(gè)特征向量)。
  5. 使用此d×k特征向量矩陣將樣本轉(zhuǎn)換到新的子空間上。Y = X×W(其中X是代表n個(gè)樣本的x維矩陣,y是新子空間中變換后的n×k維樣本)。

3、LDA的擴(kuò)展

當(dāng)分布的平均值是共享的(具有高方差的組)時(shí),線性判別分析會失敗,因?yàn)長DA不可能找到使兩個(gè)類線性分離的新軸。當(dāng)數(shù)據(jù)不是線性可分的時(shí)候,LDA也會失敗。在這種情況下,我們可以使用非線性判別分析。

  1. QDA:每個(gè)類都使用自己的方差估計(jì)值(如果有多個(gè)輸入變量,則為協(xié)方差)。
  2. FDA:使用輸入的非線性組合(例如樣條曲線)。
  3. RDA:將正則化引入方差(實(shí)際上是協(xié)方差)的估計(jì)中,以緩和不同變量對LDA的影響。

4、在IRIS數(shù)據(jù)集上LDA的Python Sklearn實(shí)現(xiàn)

讓我們使用IRIS數(shù)據(jù)集

像PCA一樣,LDA也可以使用sklearn實(shí)現(xiàn)。使用LDA,我們已將數(shù)據(jù)從4維減少到2維。

為了了解PCA和LDA工作的區(qū)別,讓我們看看下面的圖。PCA試圖使方差最大化,而LDA則試圖使三個(gè)類別的可分離性最大化。

在PCA中,他們的數(shù)據(jù)有一些重疊,很難找到一條線把兩組分開。LDA可以幫助我們將這三個(gè)組分開,因?yàn)樗麄兊臄?shù)據(jù)重疊較少。


第4章:T-SNE

1、T-SNE簡介:

T-SNE是Laurens van der Maaten和Geoffrey Hinton(深度學(xué)習(xí)之父)開發(fā)的一種經(jīng)常用于可視化的機(jī)器學(xué)習(xí)算法。它是一種非線性降維技術(shù),非常適合在二維或三維的低維空間中嵌入高維數(shù)據(jù)進(jìn)行可視化。它以二維或三維點(diǎn)對每個(gè)高維對象進(jìn)行建模,使得相似的對象由附近的點(diǎn)建模,而不相似的對象則由遠(yuǎn)處的點(diǎn)建模。

T-SNE被廣泛應(yīng)用于可視化領(lǐng)域,包括計(jì)算機(jī)安全研究、音樂分析、癌癥研究、生物信息學(xué)和生物醫(yī)學(xué)信號處理。它經(jīng)常被用于可視化高級表示的人工神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)。

2、工作方式

在進(jìn)行數(shù)學(xué)直覺之前,讓我們學(xué)習(xí)T-SNE涉及的一些術(shù)語。

鄰域:點(diǎn)的鄰域定義為幾何上相互接近的點(diǎn)的聚類。

嵌入:嵌入是通過創(chuàng)建xi1將高維空間中的點(diǎn)投影到低維空間中的過程。

隨機(jī):

首先,T-SNE以這樣的方式在幾對高維對象上構(gòu)建概率分布,即相似的對象被拾取的可能性很高,而相異的點(diǎn)被拾取的可能性非常小。這就是為什么將T-SNE稱為隨機(jī)(概率)的原因。

T-SNE構(gòu)造了多對高維對象的概率分布,使得相似的對象被選中的概率很高,而不相似的點(diǎn)被選中的概率極小。這就是為什么T-SNE被稱為隨機(jī)(概率)。

T-SNE定義了在低維圖中的點(diǎn)上的相似概率分布,相對于圖中點(diǎn)的位置,它使兩個(gè)分布之間的Kullback-Leibler散度(KL散度)最小化。請注意,雖然原始算法使用對象之間的歐氏距離作為其相似度度量的基礎(chǔ),但這應(yīng)該根據(jù)需要進(jìn)行更改。

T-SNE的成本函數(shù)是

3、處理擁擠問題:

擁擠是指我們在較小的空間中嘗試項(xiàng)目點(diǎn)的情況,由于空間不足,所有內(nèi)容都變得混亂。

T分布:

高斯分布

通過使用高斯分布,所有低相似度值都落在曲線的尾部區(qū)域,我們可以看到尾部的空間很小,不像曲線兩端的T分布那么高。最終,低相似度值與不同聚類的其他低相似度值混合在一起。為了克服這個(gè)問題,傳統(tǒng)的SNE算法被T-SNE代替,其中T表示T分布。

高斯分布與T分布

4、優(yōu)點(diǎn)和缺點(diǎn):

優(yōu)點(diǎn):

  • 與PCA不同,T-SNE是一種非線性約簡技術(shù),這意味著它可以很好地處理任何多項(xiàng)式或非線性數(shù)據(jù)。
  • T-SNE能夠保留局部和全局結(jié)構(gòu),而PCA則嘗試將高維投影到低維,以解釋數(shù)據(jù)中的大部分方差。因此,它只關(guān)心全局結(jié)構(gòu)。
  • T-SNE被廣泛用于可視化任務(wù)。

缺點(diǎn):

  • T-SNE具有二次時(shí)間和空間復(fù)雜度。
  • 在處理大型機(jī)器學(xué)習(xí)數(shù)據(jù)集時(shí),不建議使用T-SNE。
  • T-SNE是一種非參數(shù)映射方法,這意味著它沒有將給定點(diǎn)映射到低維空間的顯式函數(shù)。T-SNE根據(jù)該點(diǎn)的鄰域?qū)⒃擖c(diǎn)嵌入到低維中。因此,當(dāng)一個(gè)測試數(shù)據(jù)點(diǎn)出現(xiàn)時(shí),由于之前沒有出現(xiàn),我們需要再次訓(xùn)練整個(gè)T-SNE算法進(jìn)行嵌入,由于它的二次時(shí)間復(fù)雜度,這種方法很少被使用。

Barnes-Hut SNE (BHTSNE)

這項(xiàng)技術(shù)是在2014年引入的,與T-SNE非常相似,但是有一些細(xì)微的變化。該算法利用了天文學(xué)家常用的Barnes-Hut算法進(jìn)行N body模擬來近似對應(yīng)點(diǎn)間的力。

與標(biāo)準(zhǔn)T-SNE(O(N log N))相比,這些算法帶來了實(shí)質(zhì)性的計(jì)算優(yōu)勢,遠(yuǎn)優(yōu)于二次時(shí)間復(fù)雜度??梢允褂胹klearn manifold.TSNE庫輕松地實(shí)現(xiàn),方法是使用method ='barnes-hut'屬性。

5、通過python代碼段在MNIST數(shù)據(jù)集上進(jìn)行T-SNE:

我們已經(jīng)看到了PCA在MNIST上的工作方式?,F(xiàn)在,讓我們嘗試使用相同的數(shù)據(jù)集進(jìn)行T-SNE。與PCA不同,T-SNE具有兩個(gè)參數(shù):Perplexity和n_iter。我們將嘗試使用這些參數(shù)的不同值來擬合數(shù)據(jù)。

使用perplexity = 30,n_iter = 1000

使用perplexity =50,n_iter = 1000

使用perplexity = 2,n_iter = 1000

我們可以看到perplexity降低后,數(shù)據(jù)會與所有聚類混合。因此,選擇正確的參數(shù)值始終很重要。

使用perplexity = 100,n_iter = 1000

perplexity= 100在我們的數(shù)據(jù)上運(yùn)行良好。但是請注意,我們只在5000個(gè)數(shù)據(jù)點(diǎn)上嘗試了T-SNE,因?yàn)樗臅r(shí)間復(fù)雜性,這會花費(fèi)大量時(shí)間。

第5章:數(shù)據(jù)歸一化:

通過數(shù)據(jù)歸一化,我們可以將數(shù)據(jù)從無限范圍轉(zhuǎn)換為范圍的有限集。

降維之前需要數(shù)據(jù)歸一化:

假設(shè)有兩個(gè)特征,其中一個(gè)特征的值范圍是1到10(市場每小時(shí)的購買者數(shù)量),而另一個(gè)特征的值范圍是50到1000(市場的訪問者數(shù)量)??赡苊啃r(shí)的訪客數(shù)是>>每小時(shí)的買家數(shù)。

因?yàn)橄馪CA這樣的技術(shù)是基于方差最大化的,如果我們在使用PCA尋找特征向量之前不進(jìn)行歸一化,他們會更關(guān)注大值維度,特征向量不會捕捉其他維度中的信息。

因此,特征歸一化用于擺脫公斤,厘米,毫米,升等刻度。在歸一化后,我們將所有數(shù)據(jù)繪制在一個(gè)單位正方形內(nèi)。

數(shù)據(jù)歸一化技術(shù):

數(shù)據(jù)可以通過多種方式進(jìn)行轉(zhuǎn)換。一些最常用的技術(shù)是:

  1. Linear Scaling或者min-max Scaler:

X =數(shù)據(jù)點(diǎn)

Xmin =最小數(shù)據(jù)點(diǎn)

Xmax =最大數(shù)據(jù)點(diǎn)

當(dāng)我們知道數(shù)據(jù)的近似上界和下界很少或沒有離群值值時(shí),我們將使用這種技術(shù)。當(dāng)我們知道我們的數(shù)據(jù)在整個(gè)范圍內(nèi)大致均勻分布時(shí)也使用此技術(shù)??s放后,所有值將位于[0,1]范圍內(nèi)。

2.Feature Clipping

當(dāng)數(shù)據(jù)包含極端異常值時(shí),這些技術(shù)將某個(gè)值之上或之下的特征值限制為一個(gè)固定值。例如,將高度超過120cm的所有值裁剪為正好120cm。這意味著我們將這些值壓縮到一個(gè)固定的范圍。

3.Log Scaling:

當(dāng)數(shù)據(jù)的分布遵循冪律或是帕雷托分布時(shí),即一個(gè)值有很多點(diǎn)而其他值很少時(shí),使用它。

4. Z分?jǐn)?shù)或標(biāo)準(zhǔn)化:

標(biāo)準(zhǔn)化后,均值將轉(zhuǎn)換為0,標(biāo)準(zhǔn)差將轉(zhuǎn)換為1。當(dāng)離群值很少時(shí)(不是極端到需要剪裁),它是很有用的。

最后

處理成千上萬的特征是任何數(shù)據(jù)科學(xué)家必備的技能。我們每天生成的數(shù)據(jù)量是空前的,我們需要找到不同的方法來弄清楚如何使用它們。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
數(shù)據(jù)降維算法-從PCA到LargeVis
機(jī)器學(xué)習(xí)中的數(shù)學(xué)(4)-線性判別分析(LDA), 主成分分析(PCA)
三個(gè)主要降維技術(shù)對比介紹:PCA, LCA,SVD
LDA, PCA機(jī)器學(xué)習(xí)分類
幾種常見模式識別算法整理和總結(jié)
機(jī)器學(xué)習(xí)中的數(shù)學(xué)
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服