當前位置:首頁 » 編程語言 » python對角化

python對角化

發布時間: 2024-12-26 07:29:52

python怎麼數據進行pca

基本步驟:

  1. 對數據進行歸一化處理(代碼中並非這么做的,而是直接減去均值)

  2. 計算歸一化後的數據集的協方差矩陣

  3. 計算協方差矩陣的特徵值和特徵向量

  4. 保留最重要的k個特徵(通常k要小於n),也可以自己制定,也可以選擇一個閾值,然後通過前k個特徵值之和減去後面n-k個特徵值之和大於這個閾值,則選擇這個k

  5. 找出k個特徵值對應的特徵向量

  6. 將m * n的數據集乘以k個n維的特徵向量的特徵向量(n * k),得到最後降維的數據。

其實PCA的本質就是對角化協方差矩陣。有必要解釋下為什麼將特徵值按從大到小排序後再選。首先,要明白特徵值表示的是什麼?在線性代數裡面我們求過無數次了,那麼它具體有什麼意義呢?對一個n*n的對稱矩陣進行分解,我們可以求出它的特徵值和特徵向量,就會產生n個n維的正交基,每個正交基會對應一個特徵值。然後把矩陣投影到這N個基上,此時特徵值的模就表示矩陣在該基的投影長度。

特徵值越大,說明矩陣在對應的特徵向量上的方差越大,樣本點越離散,越容易區分,信息量也就越多。因此,特徵值最大的對應的特徵向量方向上所包含的信息量就越多,如果某幾個特徵值很小,那麼就說明在該方向的信息量非常少,我們就可以刪除小特徵值對應方向的數據,只保留大特徵值方向對應的數據,這樣做以後數據量減小,但有用的信息量都保留下來了。PCA就是這個原理。

熱點內容
android訪問json 發布:2025-10-19 22:50:53 瀏覽:364
要訪問公網怎麼配置路由 發布:2025-10-19 22:50:10 瀏覽:52
網路伺服器怎麼設ip 發布:2025-10-19 22:40:57 瀏覽:991
c語言各函數 發布:2025-10-19 22:30:09 瀏覽:983
route命令linux 發布:2025-10-19 22:13:05 瀏覽:431
aide導入源碼 發布:2025-10-19 21:48:41 瀏覽:826
銳志哪個配置才是大輪轂 發布:2025-10-19 21:25:06 瀏覽:581
linux可以限制ftp 發布:2025-10-19 21:25:03 瀏覽:574
androidstudio配置要求 發布:2025-10-19 21:24:51 瀏覽:902
腳本創造 發布:2025-10-19 20:31:29 瀏覽:231