16/100 PCA 降維技術 📉 壓縮數據維度,保留核心資訊,提升計算效率!

更新於 發佈於 閱讀時間約 10 分鐘

AI時代系列(1) 機器學習三部曲: 🔹 第一部:《機器學習 —— AI 智慧的啟航》


16/100 第二週:資料處理與特徵工程


16. PCA 降維技術 📉 壓縮數據維度,保留核心資訊,提升計算效率!


PCA(主成分分析,Principal Component Analysis)是一種降維技術,能夠將高維數據轉換成低維數據,保留主要資訊,同時去除冗餘特徵,提高機器學習模型的運算效率。

________________________________________


🔍 為什麼要使用 PCA?


✔ 解決高維數據問題(Curse of Dimensionality)

✔ 提高計算速度,減少計算成本

✔ 去除特徵之間的共線性(Collinearity)

✔ 使數據更容易視覺化

________________________________________


1️⃣ PCA 的基本概念


PCA 會找到數據中變異性最大的方向(主成分),並將數據投影到這些方向上,以達到降維的目的。


PCA 的核心步驟


(1) 標準化數據(讓每個特徵的均值為 0,標準差為 1)

(2) 計算共變異數矩陣(衡量變數之間的關係)

(3) 計算特徵值和特徵向量(找出最重要的方向)

(4) 選擇主成分(根據解釋方差比,選擇保留的維度)

(5) 轉換數據(將原始數據投影到新的主成分空間)

________________________________________


2️⃣ PCA 如何選擇維度?


📊 解釋方差(Explained Variance)


PCA 會計算每個主成分能解釋多少變異性(資訊量),通常會選擇解釋方差累積超過 95% 的主成分數量。


🔹 選擇保留的主成分數 k:

累積解釋方差比 > 95%(通常足夠保留大部分資訊)

使用「肘部法則」(Elbow Method)找到最佳降維點

________________________________________


3️⃣ PCA 在 Python 中的應用


我們使用 sklearn.decomposition.PCA 來實作 PCA。


✅ (1) 降維至 2D 進行可視化


python


import numpy as np

import pandas as pd

import matplotlib.pyplot as plt

from sklearn.decomposition import PCA

from sklearn.preprocessing import StandardScaler


# 生成隨機數據(5 個特徵)

np.random.seed(42)

X = np.random.rand(100, 5)


# 標準化數據

scaler = StandardScaler()

X_scaled = scaler.fit_transform(X)


# 應用 PCA,降維至 2 維

pca = PCA(n_components=2)

X_pca = pca.fit_transform(X_scaled)


# 繪製散點圖

plt.scatter(X_pca[:, 0], X_pca[:, 1], alpha=0.7)

plt.xlabel("主成分 1")

plt.ylabel("主成分 2")

plt.title("PCA 降維後的數據")

plt.show()


📌 結果:數據點被投影到 2D 空間,方便可視化分析。

________________________________________


✅ (2) 確定最佳降維數


python


# 取得每個主成分的解釋方差比

explained_variance_ratio = pca.explained_variance_ratio_


# 計算累積解釋方差

cumulative_variance = np.cumsum(explained_variance_ratio)


# 繪製累積解釋方差圖

plt.plot(range(1, len(cumulative_variance) + 1), cumulative_variance, marker='o')

plt.axhline(y=0.95, color='r', linestyle='--')

plt.xlabel('主成分數量')

plt.ylabel('累積解釋方差')

plt.title('PCA 主成分選擇')

plt.show()


📌 結果:當累積解釋方差超過 95%,就可以選擇該維度作為最終降維數。

________________________________________


✅ (3) 使用 PCA 降維並應用於機器學習


假設我們要用 PCA 降維後的數據來訓練機器學習模型(如邏輯回歸)。


python


from sklearn.linear_model import LogisticRegression

from sklearn.model_selection import train_test_split

from sklearn.metrics import accuracy_score


# 產生目標變數(0 或 1)

y = np.random.randint(0, 2, size=100)


# 分割訓練集與測試集

X_train, X_test, y_train, y_test = train_test_split(X_pca, y, test_size=0.2, random_state=42)


# 訓練模型

model = LogisticRegression()

model.fit(X_train, y_train)


# 預測

y_pred = model.predict(X_test)


# 計算準確率

accuracy = accuracy_score(y_test, y_pred)

print(f"PCA 降維後的模型準確率: {accuracy:.2f}")

📌 結果:透過 PCA 降維後,仍能保持一定的準確度,同時減少計算成本。

________________________________________


4️⃣ PCA 的優缺點


🎯 優點

✅ 降低維度,提升運算效率

✅ 減少共線性(Collinearity)問題

✅ 適合數據視覺化(2D, 3D 可視化分析)

✅ 保留最重要的資訊,減少不重要的噪音


⚠ 缺點

❌ 特徵解釋性降低(PCA 轉換後的數據不再有直觀的物理意義)

❌ 只適用於線性變換(若數據關係非線性,PCA 效果不佳,需考慮 t-SNE 或 UMAP)

❌ 需要標準化數據(如果數據範圍差異大,PCA 可能會受到影響)

________________________________________


5️⃣ PCA vs. 其他降維方法


在高維數據的降維與可視化中,不同方法各有其適用場景與特點。


PCA(主成分分析)是一種線性降維技術,能有效解決共線性問題,特別適用於數據分佈接近高斯分佈的情況。


若是分類任務,則可以選擇 LDA(線性判別分析),它考慮類別標籤,能強化不同類別之間的區分度,適合用於監督學習。


當目的是數據視覺化時,t-SNE 是一個強大的工具,能將高維數據有效映射到 2D 或 3D 空間,便於觀察數據分佈,但由於過於注重局部結構,並不適合作為機器學習模型的降維方法。


UMAP 則提供比 t-SNE 更快的性能,同樣適用於高維數據的非線性降維與視覺化,能更好地保持數據的全局結構。因此,選擇降維方法時,應根據數據特性與應用需求做出最合適的決策。

________________________________________


6️⃣ PCA 何時使用?


✅ 數據維度過高,運算太慢(如基因數據、圖像數據)

✅ 特徵之間高度相關,存在多重共線性問題

✅ 希望在 2D 或 3D 空間中可視化數據

✅ 提升機器學習模型效能,減少過擬合風險

❌ 不適用於非線性數據(若數據非線性關係,考慮 t-SNE 或 UMAP)

________________________________________


📌 結論


✨ PCA 是一種強大的降維工具,可以壓縮數據維度,提高計算效率,同時保留最重要的信息。


🚀 應用 PCA 可以減少冗餘數據,解決共線性問題,並提升機器學習模型的效能!

________________________________________


💡 進階建議: 如果你的數據是非線性結構,可以考慮:


Kernel PCA(適用於非線性數據)

t-SNE、UMAP(適用於數據可視化)


這樣,你就能更靈活地處理不同類型的高維數據!🔥



留言
avatar-img
留言分享你的想法!
avatar-img
Hansen W的沙龍
0會員
41內容數
AIHANS沙龍是一個結合AI技術實戰、產業策略與自我成長的知識平台,主題涵蓋機器學習、生成式AI、創業經驗、財務規劃及哲學思辨。這裡不只提供系統化學習資源與實作案例,更強調理性思維與行動力的結合。無論你是AI初學者、創業者,還是追求人生升維的行者,都能在這裡找到前進的方向與志同道合的夥伴。
Hansen W的沙龍的其他內容
2025/05/26
在 AI 時代中,資料品質往往比模型更關鍵!本單元「特徵選擇技術」深入淺出介紹如何挑選最具代表性的特徵,讓模型表現大幅提升。透過統計方法、資訊理論與模型導向等策略,不僅能提升訓練效率,還能減少過擬合與運算資源浪費。適合想強化資料處理實力的學習者,是建立高效智慧模型的關鍵一課!
Thumbnail
2025/05/26
在 AI 時代中,資料品質往往比模型更關鍵!本單元「特徵選擇技術」深入淺出介紹如何挑選最具代表性的特徵,讓模型表現大幅提升。透過統計方法、資訊理論與模型導向等策略,不僅能提升訓練效率,還能減少過擬合與運算資源浪費。適合想強化資料處理實力的學習者,是建立高效智慧模型的關鍵一課!
Thumbnail
2025/05/24
類別變數處理!一次掌握 One-Hot Encoding 與 Label Encoding 的核心概念、優缺點與 Python 實作,避免維度爆炸、消除錯誤排序,讓模型讀懂「紅藍綠」,精準預測大升級。
Thumbnail
2025/05/24
類別變數處理!一次掌握 One-Hot Encoding 與 Label Encoding 的核心概念、優缺點與 Python 實作,避免維度爆炸、消除錯誤排序,讓模型讀懂「紅藍綠」,精準預測大升級。
Thumbnail
2025/05/24
當你的數據中「年齡」是兩位數、「收入」卻是五位數,AI 很可能會「誤判誰比較重要」!這一單元將帶你掌握兩大關鍵技巧:標準化與正規化,讓特徵回到同一個比較基準,提升模型的學習穩定性與準確性。無論是 SVM、KNN,還是神經網路,資料縮放都是你不可忽略的關鍵步驟。📏⚖️
Thumbnail
2025/05/24
當你的數據中「年齡」是兩位數、「收入」卻是五位數,AI 很可能會「誤判誰比較重要」!這一單元將帶你掌握兩大關鍵技巧:標準化與正規化,讓特徵回到同一個比較基準,提升模型的學習穩定性與準確性。無論是 SVM、KNN,還是神經網路,資料縮放都是你不可忽略的關鍵步驟。📏⚖️
Thumbnail
看更多
你可能也想看
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
介紹朋友新開的蝦皮選物店『10樓2選物店』,並分享方格子與蝦皮合作的分潤計畫,註冊流程簡單,0成本、無綁約,推薦給想增加收入的讀者。
Thumbnail
介紹朋友新開的蝦皮選物店『10樓2選物店』,並分享方格子與蝦皮合作的分潤計畫,註冊流程簡單,0成本、無綁約,推薦給想增加收入的讀者。
Thumbnail
企業需關注數位優化和數位轉型以提高競爭力。數位優化強調提升效率和效果,數位轉型則重塑商業模式並超越優化,包含商業模式創新、數據驅動的決策和數位創新文化。該文章涵蓋了這些議題,並期待更多關於 RPA + AI 與數位轉型的最新趨勢與觀點。
Thumbnail
企業需關注數位優化和數位轉型以提高競爭力。數位優化強調提升效率和效果,數位轉型則重塑商業模式並超越優化,包含商業模式創新、數據驅動的決策和數位創新文化。該文章涵蓋了這些議題,並期待更多關於 RPA + AI 與數位轉型的最新趨勢與觀點。
Thumbnail
在科技發展的浪潮中,生成式AI無疑是引領未來的關鍵力量。透過深度學習技術,AI系統能夠從大量資料中發掘規律,並創造出全新的內容,無論是文字、圖像、音頻還是視頻,都可以在AI的加持下重新定義。
Thumbnail
在科技發展的浪潮中,生成式AI無疑是引領未來的關鍵力量。透過深度學習技術,AI系統能夠從大量資料中發掘規律,並創造出全新的內容,無論是文字、圖像、音頻還是視頻,都可以在AI的加持下重新定義。
Thumbnail
NVIDIA 黃仁勳 - AI人工智慧時代如何帶動全球新產業革命(個人紀錄用) 🇺🇸Omniverse 就是未來集大成,而加速運算、人工智慧就是兩個最重要的技術核心 🇺🇸CPU效能的擴充速度正在大幅降低,提出「運算通膨」概念
Thumbnail
NVIDIA 黃仁勳 - AI人工智慧時代如何帶動全球新產業革命(個人紀錄用) 🇺🇸Omniverse 就是未來集大成,而加速運算、人工智慧就是兩個最重要的技術核心 🇺🇸CPU效能的擴充速度正在大幅降低,提出「運算通膨」概念
Thumbnail
AI PC 硬體 + AI OS + AI PC 摘要
Thumbnail
AI PC 硬體 + AI OS + AI PC 摘要
Thumbnail
筆記-股癌-24.05.22 *認養狗可以聯絡Liza的IG。 *微軟AI PC: - 售價1000歐元起的AI PC,6/18推出,晶片NPU算力在40 TOPS以上, - 裝置有連動GPT-4o,這部分的功能還是要連上網;Copilot功能下放到邊緣端。 - recall功能,可以把螢
Thumbnail
筆記-股癌-24.05.22 *認養狗可以聯絡Liza的IG。 *微軟AI PC: - 售價1000歐元起的AI PC,6/18推出,晶片NPU算力在40 TOPS以上, - 裝置有連動GPT-4o,這部分的功能還是要連上網;Copilot功能下放到邊緣端。 - recall功能,可以把螢
Thumbnail
本文章探討了多智能體系統(MAS)在生成式AI領域中的應用,以及GenAI對於AI_MCU和Software defined hardware的影響。文章還總結了SDH設計模式對數據科學和人工智能時代的影響,並提供了有關GenAI的一些額外信息。
Thumbnail
本文章探討了多智能體系統(MAS)在生成式AI領域中的應用,以及GenAI對於AI_MCU和Software defined hardware的影響。文章還總結了SDH設計模式對數據科學和人工智能時代的影響,並提供了有關GenAI的一些額外信息。
Thumbnail
*從Embedded World看到,AI在工業領域的發展,會比原本預期再慢一點。 *目前在消費端、服務端,例如顧問業者、客服、buy now pay later等業務,有很多AI功能、LLM模型導入。 --初階的碼農容易被AI取代。 *工業端,最早是PLC編程,到IPC,未來在IPC裡面 會
Thumbnail
*從Embedded World看到,AI在工業領域的發展,會比原本預期再慢一點。 *目前在消費端、服務端,例如顧問業者、客服、buy now pay later等業務,有很多AI功能、LLM模型導入。 --初階的碼農容易被AI取代。 *工業端,最早是PLC編程,到IPC,未來在IPC裡面 會
Thumbnail
NVIDIA的Blackwell計算平台代表著實時生成式AI應用的重大進步,旨在滿足跨行業挑戰。此平台提升了計算效能,促進了AI在實體世界的應用,並對從自動駕駛到醫療診斷等多個領域產生了深遠影響。NVIDIA 黃仁勳的願景是將AI技術從虛擬世界帶入現實,為創新開闢新道路,一個更加智慧和互聯的未來。
Thumbnail
NVIDIA的Blackwell計算平台代表著實時生成式AI應用的重大進步,旨在滿足跨行業挑戰。此平台提升了計算效能,促進了AI在實體世界的應用,並對從自動駕駛到醫療診斷等多個領域產生了深遠影響。NVIDIA 黃仁勳的願景是將AI技術從虛擬世界帶入現實,為創新開闢新道路,一個更加智慧和互聯的未來。
Thumbnail
★看似客觀中立的機器運算,可能在學習人類提供的資料後,再複製社會偏見與歧視,形成「自動不平等」!
Thumbnail
★看似客觀中立的機器運算,可能在學習人類提供的資料後,再複製社會偏見與歧視,形成「自動不平等」!
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News