當前位置:首頁 » 編程語言 » 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就是這個原理。

熱點內容
安卓十二系統什麼時候更新 發布:2025-07-02 00:12:28 瀏覽:344
shell腳本需要編譯鏈接 發布:2025-07-02 00:04:20 瀏覽:473
微信如何重設密碼 發布:2025-07-02 00:02:27 瀏覽:545
java代碼基礎 發布:2025-07-02 00:00:46 瀏覽:304
煙花的代碼c語言 發布:2025-07-01 23:56:04 瀏覽:224
安卓默認打開文件方式怎麼修改 發布:2025-07-01 23:30:38 瀏覽:862
壓縮機接線座 發布:2025-07-01 23:17:48 瀏覽:662
iqoo瀏覽器緩存路徑 發布:2025-07-01 23:12:38 瀏覽:691
明日之後如何獲得最新伺服器 發布:2025-07-01 23:12:35 瀏覽:51
tv加密頻道 發布:2025-07-01 23:10:58 瀏覽:625