Mặc dù các nhà khoa học dữ liệu thường xuyên gặp cả hai thuật ngữ này trong việc giảm chiều dữ liệu, nhưng thành phần chính (PCA) mô tả hướng có phương sai tối đa trong tập dữ liệu, trong khi giá trị riêng (SVD) đo lường độ lớn của sự thay đổi tỷ lệ dọc theo các trục hình học đó trong quá trình phân tích ma trận. Hiểu được mối liên hệ toán học giữa chúng là điều cần thiết để nắm vững các thuật toán như PCA và SVD.
Điểm nổi bật
Các thành phần chính xác định hướng không gian của sự biến thiên dữ liệu, trong khi các giá trị riêng quyết định quy mô.
Mối liên hệ toán học trực tiếp giữa chúng chỉ tồn tại khi ma trận dữ liệu cơ bản được chuẩn hóa đúng cách bằng cách lấy giá trị trung bình làm trung tâm.
Phương pháp SVD tính toán trực tiếp các giá trị riêng, cung cấp một phương pháp ổn định hơn nhiều về mặt số học để tìm các thành phần chính.
Các thành phần chính phải trực giao với nhau, trong khi các giá trị riêng phải là các số thực không âm.
Các thành phần chính là gì?
Các vectơ trực giao chỉ theo hướng có phương sai tối đa, giúp đơn giản hóa và cô đọng dữ liệu đa chiều.
Chúng tương ứng trực tiếp với các vectơ riêng của ma trận hiệp phương sai của tập dữ liệu.
Thành phần chính thứ nhất chiếm tỷ trọng phương sai cao nhất có thể trong dữ liệu.
Mỗi thành phần tiếp theo hoàn toàn trực giao với các thành phần trước đó, đảm bảo không có sự tương quan nào.
Chúng phụ thuộc rất nhiều vào việc chuẩn hóa dữ liệu, do đó việc lấy giá trị trung bình làm trung tâm là một bước tiền xử lý quan trọng.
Các kỹ sư sử dụng chúng để chiếu các không gian đa chiều xuống các không gian có chiều thấp hơn trong khi vẫn bảo toàn thông tin.
Giá trị đơn lẻ là gì?
Các phần tử trên đường chéo chính của ma trận giá trị riêng, biểu thị các hệ số tỷ lệ tuyệt đối của một phép biến đổi tuyến tính.
Chúng được tính bằng cách lấy căn bậc hai dương của các giá trị riêng của ma trận nhân với ma trận chuyển vị của nó.
Mỗi ma trận thực, dù là ma trận vuông hay ma trận chữ nhật, đều sở hữu một tập hợp các giá trị riêng biệt duy nhất.
Theo quy ước, chúng được sắp xếp theo thứ tự giảm dần dọc theo đường chéo của ma trận Sigma trong SVD.
Giá trị riêng bằng 0 cho thấy ma trận bị thiếu hạng hoặc có tính chất suy biến.
Chúng định lượng sự kéo giãn hoặc biến dạng hình học gây ra bởi phép biến đổi tuyến tính trên một mặt cầu đơn vị.
Bảng So Sánh
Tính năng
Các thành phần chính
Giá trị đơn lẻ
Nguồn gốc toán học
Các vectơ riêng của ma trận hiệp phương sai
Các yếu tố phân rã ma trận (SVD)
Giải thích hình học
Hướng có phương sai tối đa
Tỷ lệ độ dài của các trục chính
Yêu cầu dữ liệu
Cần dữ liệu đã được căn giữa theo giá trị trung bình để có ý nghĩa thống kê.
Áp dụng cho bất kỳ ma trận hình chữ nhật hoặc hình vuông tùy ý nào.
Mối quan hệ với giá trị riêng
Bằng với các giá trị riêng của ma trận hiệp phương sai.
Bằng căn bậc hai của các giá trị riêng của tích ma trận.
Ứng dụng chính
Giảm chiều dữ liệu và trích xuất đặc trưng
Đảo ngược ma trận, tính toán nghịch đảo giả và xấp xỉ hạng thấp
Sự phụ thuộc vào quy mô
Bị thay đổi đáng kể do dịch chuyển hoặc thu phóng dữ liệu
Thuộc tính vốn có của ma trận cụ thể đang được phân rã
Giải thích vật lý
Các trục của hình elip đám mây dữ liệu
Các yếu tố kéo giãn của một hình cầu đơn vị đã biến đổi
So sánh chi tiết
Định nghĩa và Khái niệm cốt lõi
Các thành phần chính biểu thị các hướng cụ thể nơi dữ liệu biến đổi nhiều nhất, đóng vai trò là các trục mới cho một hệ tọa độ được tối ưu hóa. Ngược lại, các giá trị riêng là các đại lượng vô hướng cho biết ma trận kéo giãn hoặc nén không gian dọc theo các trục đó bao nhiêu. Trong khi một cái cho bạn biết hướng của đám mây dữ liệu, cái kia đo lường độ lớn của chính phép biến đổi đó.
Tính toán toán học
Theo phương pháp truyền thống, để tìm các thành phần chính, bạn phải tính toán các vectơ riêng của ma trận hiệp phương sai của tập dữ liệu. Các giá trị kỳ dị xuất hiện từ phép phân tích giá trị kỳ dị (Singular Value Decomposition), trong đó bất kỳ ma trận nào cũng được chia thành ba ma trận thành phần riêng biệt. Khi bạn chuẩn hóa dữ liệu bằng cách trừ đi giá trị trung bình, bình phương của một giá trị kỳ dị chia cho kích thước mẫu trừ đi một sẽ bằng chính xác phương sai của thành phần chính đó.
Độ nhạy cảm đối với quá trình tiền xử lý dữ liệu
Các thành phần chính sẽ thay đổi đáng kể nếu bạn quên trung tâm hóa hoặc chuẩn hóa dữ liệu, bởi vì phương sai thống kê phụ thuộc rất nhiều vào điểm gốc và thang đo của biến. Tuy nhiên, các giá trị riêng lẻ là một thuộc tính đại số cơ bản của ma trận thô được cung cấp. Chúng không quan tâm đến các giả định thống kê trừ khi người dùng cố ý xây dựng trước một ma trận giống như ma trận hiệp phương sai đã được trung tâm hóa.
Ứng dụng thực tiễn trong công nghiệp
Các nhà phân tích dữ liệu dựa vào các thành phần chính để trực quan hóa các tập dữ liệu phức tạp, đa chiều trên các biểu đồ hai chiều đơn giản. Mặt khác, các kỹ sư thị giác máy tính sử dụng các giá trị riêng (SVD) để nén ảnh và xây dựng hệ thống đề xuất thông qua các phép xấp xỉ ma trận hạng thấp. Trên thực tế, SVD là công cụ tính toán được ưa chuộng hơn cả PCA vì việc tính toán các giá trị riêng giúp tránh được sự mất độ chính xác xảy ra khi xây dựng ma trận hiệp phương sai.
Ưu & Nhược điểm
Các thành phần chính
Ưu điểm
+Tuyệt vời cho việc trực quan hóa dữ liệu.
+Loại bỏ hiện tượng đa cộng tuyến
+Giảm tiếng ồn hiệu quả
+Đơn giản hóa các mô hình học máy
Đã lưu
−Thiếu ý nghĩa vật lý trực tiếp
−Rất nhạy cảm với các giá trị ngoại lệ
−Yêu cầu xử lý sơ bộ nghiêm ngặt
−Sự mất mát thông tin xảy ra
Giá trị đơn lẻ
Ưu điểm
+Hoạt động trên mọi ma trận
+Độ ổn định số học cao
+Hoàn hảo cho phép xấp xỉ hạng thấp
+Hiển thị thứ hạng ma trận ngay lập tức
Đã lưu
−Khái niệm toán học trừu tượng
−Tốn kém về mặt tính toán đối với các ma trận khổng lồ.
−Thiếu bối cảnh thống kê vốn có
−Việc giải thích đòi hỏi phải sử dụng đại số tuyến tính.
Những hiểu lầm phổ biến
Huyền thoại
Thành phần chính và giá trị riêng là hai khái niệm hoàn toàn độc lập.
Thực tế
Chúng liên kết chặt chẽ với nhau thông qua việc tập trung dữ liệu. Khi một ma trận dữ liệu được trừ đi giá trị trung bình, các giá trị riêng của nó tỷ lệ thuận với căn bậc hai của phương sai dọc theo các thành phần chính.
Huyền thoại
Bạn luôn phải tính ma trận hiệp phương sai để tìm các thành phần chính.
Thực tế
Phần mềm hiện đại hiếm khi tính toán ma trận hiệp phương sai vì nó gây ra sai số làm tròn số. Thay vào đó, các thuật toán thực hiện phân tích giá trị riêng (SVD) trực tiếp trên ma trận dữ liệu, trích xuất các thành phần chính một cách an toàn và hiệu quả hơn nhiều.
Huyền thoại
Giá trị riêng có thể âm nếu dữ liệu cho thấy mối tương quan nghịch.
Thực tế
Theo định nghĩa, giá trị kỳ dị là căn bậc hai dương của các giá trị riêng từ một ma trận đối xứng. Chúng luôn là các số thực không âm, biểu thị độ dài hoặc hệ số giãn nở, bất kể các mối tương quan trong dữ liệu gốc.
Huyền thoại
Việc cộng thêm một giá trị không đổi vào tất cả các điểm dữ liệu sẽ làm thay đổi các giá trị riêng và các thành phần chính một cách đồng đều.
Thực tế
Việc dịch chuyển dữ liệu một hằng số sẽ làm thay đổi các giá trị riêng vì các phần tử ma trận thô bị thay đổi. Tuy nhiên, vì các thành phần chính dựa trên ma trận hiệp phương sai, vốn dĩ đã trừ đi giá trị trung bình, nên việc dịch chuyển dữ liệu sẽ không làm thay đổi các thành phần chính.
Huyền thoại
Thành phần chính đầu tiên luôn bao gồm tất cả các thông tin có giá trị.
Thực tế
Thành phần đầu tiên chỉ nắm bắt được phương sai tối đa dọc theo một trục duy nhất. Nếu dữ liệu của bạn được phân bố theo hình cầu hoặc chứa các mẫu phi tuyến tính quan trọng, một thành phần tuyến tính duy nhất có thể bỏ sót hoàn toàn các cấu trúc quan trọng nhất.
Các câu hỏi thường gặp
Làm thế nào để chuyển đổi một giá trị đơn lẻ thành phương sai của thành phần chính?
Nếu bạn có một ma trận dữ liệu đã được căn giữa theo giá trị trung bình với số lượng mẫu nhất định, bạn bình phương giá trị riêng và chia cho kích thước mẫu trừ đi một. Phép toán này sẽ cho ra giá trị riêng chính xác của ma trận hiệp phương sai, đại diện cho phương sai được nắm bắt bởi thành phần chính cụ thể đó.
Liệu có thể thực hiện PCA mà không cần sử dụng SVD không?
Đúng vậy, bạn có thể tìm các thành phần chính bằng cách tính toán ma trận hiệp phương sai một cách rõ ràng và sau đó tìm các vectơ riêng của nó thông qua phép phân tích giá trị riêng cổ điển. Tuy nhiên, phương pháp này kém ổn định về mặt số học và dễ xảy ra lỗi dấu phẩy động hơn so với phương pháp SVD, đó là lý do tại sao SVD là tiêu chuẩn trong ngành.
Tại sao việc tập trung dữ liệu lại quan trọng đến vậy đối với các thành phần chính?
PCA nhằm mục đích tối đa hóa phương sai xung quanh tâm của đám mây dữ liệu. Nếu bạn không dịch chuyển giá trị trung bình của dữ liệu về gốc tọa độ, thành phần chính đầu tiên sẽ chỉ đơn giản hướng từ gốc tọa độ về phía tâm của cụm dữ liệu, không thể nắm bắt được cấu trúc hình học bên trong của phương sai.
Điều gì xảy ra nếu một ma trận có giá trị riêng bằng không?
Giá trị riêng bằng 0 có nghĩa là ma trận bị thiếu hạng và không thể nghịch đảo. Về mặt hình học, điều này ngụ ý rằng phép biến đổi tuyến tính làm nén ít nhất một chiều hoàn toàn phẳng, thu gọn một thể tích thành một mặt phẳng hoặc một đường thẳng.
Các thành phần chính có giống với các vectơ riêng không?
Chúng có mối liên hệ mật thiết nhưng khác biệt về thuật ngữ. Các thành phần chính là các điểm dữ liệu được chiếu thực tế dọc theo các trục mới, mặc dù nhiều người trong ngành thường dùng thuật ngữ này để chỉ các hướng chính, thực chất là các vectơ riêng của ma trận hiệp phương sai.
Phương pháp nào tốt hơn cho việc nén ảnh, PCA hay SVD?
SVD thường được ưa chuộng và trực tiếp hơn trong việc nén ảnh thông qua kỹ thuật gọi là xấp xỉ hạng thấp. Vì ảnh đã là một ma trận có cấu trúc của các điểm ảnh chứ không phải là một mẫu thống kê của các quan sát độc lập, SVD sẽ loại bỏ các giá trị riêng lẻ ít quan trọng nhất để giảm kích thước tệp một cách liền mạch.
Tôi nên giữ bao nhiêu thành phần chính trong một mô hình?
Một phương pháp phổ biến là xem biểu đồ scree hoặc tính toán phương sai được giải thích tích lũy bằng cách sử dụng các giá trị riêng. Hầu hết các nhà khoa học dữ liệu đều hướng đến việc giữ lại đủ các thành phần để nắm bắt được từ 80% đến 95% tổng phương sai, tùy thuộc vào mức độ nhiễu của dự án cụ thể.
Giá trị riêng của ma trận có thay đổi không nếu ta chuyển vị ma trận?
Không, việc chuyển vị ma trận không làm thay đổi các giá trị riêng của nó. Các giá trị riêng khác 0 của ma trận và ma trận chuyển vị của nó vẫn hoàn toàn giống nhau vì các giá trị riêng của tích chéo tương ứng của chúng là hoàn toàn giống nhau.
Sự khác biệt giữa giá trị riêng và giá trị kỳ dị là gì?
Giá trị riêng chỉ được định nghĩa cho ma trận vuông và có thể là số phức, biểu thị cách một vectơ co giãn mà không thay đổi hướng. Giá trị kỳ dị áp dụng cho bất kỳ ma trận nào, luôn là số thực và không âm, và biểu thị độ giãn tối đa của một hình cầu đơn vị dưới một phép biến đổi.
Phán quyết
Chọn phương pháp phân tích thành phần chính khi mục tiêu chính của bạn là diễn giải, trực quan hóa hoặc giảm bớt các đặc điểm của tập dữ liệu thống kê dựa trên phương sai. Chọn phương pháp giá trị riêng khi bạn cần giải hệ phương trình tuyến tính, nén ma trận hoặc thực hiện các phép tính số ổn định mà không cần lo lắng về việc xử lý sơ bộ thống kê.