MLT | Week-12 | Session-2 這堂課的核心價值,是用一個清楚的問題引導你理解:當資料是非線性結構時,為什麼直接做 PCA 會失去辨識力,以及我們如何透過轉換到高維的想法,為接下來的 Kernel(核)概念鋪路。
我第一次在課堂上聽到「圓形資料套進 PCA 可能變得沒用」時,腦中其實很直覺:不就是找最大變異方向嗎?但當講者用「圓周資料在所有方向的變異其實差不多」來說明時,我才真正抓到重點——非線性資料會讓 PCA 的『主方向』失去意義。那一刻我立刻把自己教學時常遇到的狀況對上了:很多人以為降維/找方向就是萬用解,卻忽略了資料結構本身可能根本不支援線性假設。
📝 目錄
- Session-2:為什麼非線性資料讓 PCA 看起來「什麼都一樣」?
- 轉換(Transformation)的目的:把非線性變得『更線性』
- 為什麼不能只靠「增加維度」就結束?(以及轉換會帶來的問題)
- 線性子空間(Linear Subspace):把「圓」想成可被平面/子空間描述
- 一個具體轉換例子:用平方把非線性形狀拉回線性可分的直覺
- 你可以怎麼把這堂課的重點落地?(Session-2 的可操作要點)
- 小結:MLT Week-12 Session-2 你該帶走什麼?
- FAQ
- 📌 1. 什麼情況下 PCA 會特別不適用?
- 🧩 2. 轉換(Transformation)到底在做什麼?
- ⚙️ 3. 為什麼要再做 PCA,而不是只靠轉換?
Session-2:為什麼非線性資料讓 PCA 看起來「什麼都一樣」?
答案:因為圓形(或類似非線性)資料在多個方向的變異相近,PCA 的『重要方向』不再明顯。 當資料點像圓圈分布時,任何你挑的直線方向,都能用某種方式近似重建;換句話說,重建誤差最小化不會產生一個特別突出的主成分。
在課堂示意中,講者提到:如果資料在圓上,PCA 可能得到兩個彼此接近、甚至相差 90 度的主方向,但它們對「資料真正的結構」並沒有提供額外可用的資訊。此時你會觀察到:每個方向的變異差不多,因此 PCA 失去分類或特徵萃取所需要的「主導性」。
這也解釋了為什麼你會在實務上覺得「PCA 做完反而更難用」。因為你不是缺少計算,而是缺少一個能把非線性結構變得更像線性結構的步驟。
轉換(Transformation)的目的:把非線性變得『更線性』
答案:轉換的目的是讓資料在變換後的空間中出現更清楚的線性結構,讓後續的 PCA 有機會找到有意義的主方向。 在課堂裡,講者先用「轉換資料」作鋪陳:假設原本資料在某個低維空間,透過一個函數把它映射到新的空間。
這裡的關鍵不是「一定要完全落在同一條直線上」,而是讓線性模式變得更顯著。課堂示意中提到:當資料其實不是線性的,PCA 的主成分就可能變得不具情報;因此我們希望透過轉換,使得在新空間中能找到對應的線性子空間(linear subspace)。
講者也特別強調:我們先不急著進入 Kernel PCA,而是先建立「為什麼需要用轉換」這個直覺。
為什麼不能只靠「增加維度」就結束?(以及轉換會帶來的問題)
答案:增加維度有時可行,但會帶來成本與複雜度,且並非所有轉換都能讓結構變線性。 課堂中提到一個常見問題:當你把資料從低維映射到高維,維度數(例如從 10 變到 100)會導致計算量與儲存需求上升,進而影響實作效率。
因此,轉換不是「想加就加」而已。你需要的是一種能讓資料結構被重新表述的轉換,最好能在不爆炸成本的情況下完成。這也就是後續 Kernel 概念會被提出的背景:用更聰明的方式達到高維效果,而不必真的把所有維度顯式算出來。
在我過去教學的經驗裡,很多同學卡住不是數學不會,而是沒有把「目的」與「代價」一起想清楚。這堂課剛好把兩件事同時放在桌上:你要轉換是為了可分或可用;但你也要面對維度帶來的成本。
線性子空間(Linear Subspace):把「圓」想成可被平面/子空間描述
答案:線性子空間就是『在高維空間中用較低維的線性結構描述資料』的想法。 講者用一個幾何直覺:在 R3 裡,線性子空間可以是平面或直線;若你能把原本在 R2 的非線性資料,透過轉換送到 R3 後落在某個低維子空間,那 PCA 就更有機會找到有意義的方向。
換句話說:如果原本資料像圓圈,直接在 R2 做 PCA 可能沒有主導方向;但若能找到某種轉換,使得變換後的資料在新空間中呈現更像「平面上的點」的結構,那主成分方向就會變得更具可解釋性。
講者也提到一個常見誤解:轉換後再做 PCA 並不只是為了「降維」。有時候你做 PCA 是為了萃取更有資訊的特徵,供後續的分類或其他下游任務使用。
一個具體轉換例子:用平方把非線性形狀拉回線性可分的直覺
答案:把特徵做平方(例如 y1 = x1²、y2 = x2²)是一種簡單的非線性轉換示例,目的在於讓原本的非線性約束變得更容易用線性關係描述。 在課堂示意中,講者用轉換函數:
- 原始特徵:x1, x2
- 新特徵:y1 = x1²、y2 = x2²
當原始資料在圓上時,通常會有類似 x1² + x2² = r² 的約束。這種約束本身就是非線性的;但透過平方型轉換,你可以把「半徑平方」這類關係重新編碼成更容易被線性子結構捕捉的形式。
講者在課堂中也點出:你要做的轉換不一定只會產生你能立刻看懂的形狀(可能會變成抛物線、雙曲線或其他複雜形狀)。重點是:在某個轉換後的空間中,資料是否呈現出更明顯的線性結構。
你可以怎麼把這堂課的重點落地?(Session-2 的可操作要點)
答案:先檢查資料是否非線性;若是,再用『轉換到更線性』的想法去設計特徵,再用 PCA 萃取主導方向。 這堂課其實是在教你一條思考路徑:PCA 不是錯,而是資料結構不符合線性假設;因此你需要能讓結構被重新表述的轉換。
- 觀察資料形狀:像圓、弧、環狀等,通常不是線性可直接處理。
- 理解 PCA 失效原因:方向變異不再明顯,主成分不提供有效資訊。
- 引入轉換:用函數把資料映射到新空間,讓線性子空間變得可行。
- 再用 PCA 萃取:在變換後空間中找出更有資訊的主方向,用於下游任務。
我自己在寫作與教學時會把這段話濃縮成一句:先讓資料『長得像線性』,再談線性方法。 這也是我讀到這段 Session-2 內容時最有感的一點。
| 情境 | 直接做 PCA 會怎樣 | Session-2 的解法方向 |
|---|---|---|
| 圓形/環狀非線性 | 主方向不明顯、資訊不足 | 先做轉換到更線性的空間 |
| 存在線性子空間 | PCA 可找到有意義方向 | 可用 PCA 萃取特徵 |
小結:MLT Week-12 Session-2 你該帶走什麼?
答案:帶走『為什麼非線性資料會讓 PCA 變得沒用』以及『如何用轉換把結構變得更像線性』的核心直覺。 這堂課先用圓形資料證明 PCA 的限制,再提出轉換到高維/新空間的想法,並討論轉換帶來的維度與計算成本。
當你理解了「轉換的目的」與「PCA 需要的前提」,接下來你就更容易理解 Kernel 相關概念為何能在不顯式計算高維映射的情況下,仍達到類似效果。
FAQ
📌 1. 什麼情況下 PCA 會特別不適用?
當資料呈現非線性結構(例如圓形/環狀)且各方向變異相近時,PCA 會特別不適用。 因為 PCA 依賴「主導方向」的變異差異;若資料在多方向的重建誤差都差不多,就很難萃取出有資訊的主成分。
🧩 2. 轉換(Transformation)到底在做什麼?
轉換就是用函數把原始特徵映射到新空間,使資料結構更接近線性子空間。 例如把 x1, x2 透過平方映射到 x1², x2²,讓原本非線性的約束重新編碼;這樣 PCA 才有機會找到有意義的方向。
⚙️ 3. 為什麼要再做 PCA,而不是只靠轉換?
因為轉換後仍需要萃取最重要的特徵方向,讓後續任務更好用。 PCA 的角色是找出變換空間中的主要變異方向(可視為資訊更集中的方向),以便用於分類或其他下游任務。
📺 來源影片參考

我是親職講師和老師,長年觀察發現,孩子們花大量時間在學校和補習班,卻沒真正享受生活,更別提快樂地玩耍。父母多半照著自己求學的模式,希望孩子也能如此,但孩子們往往抗拒,家長無策,心中惶恐。
我的好友彼得先生常提醒,生命應該是多面向的,包含家庭、工作、社交、自然、靈性等,如果任何一方面失衡,其他再努力也無法達成人生的圓滿。這就是水桶理論的精髓。如今我已退休,生活不再步步為營,決定回饋多年來彼得先生的輔導。我希望透過生活小故事和有趣介紹,幫助家長與孩子點亮心中想法,過上有意義、有目標的生活。


