Tại sao PCA tối đa hóa tổng phương sai của phép chiếu?


10

Christopher Bishop viết trong cuốn sách Nhận dạng mẫu và Máy học bằng chứng của mình, rằng mỗi thành phần chính liên tiếp tối đa hóa phương sai của phép chiếu thành một chiều, sau khi dữ liệu được chiếu vào không gian trực giao cho các thành phần được chọn trước đó. Những người khác cho thấy bằng chứng tương tự.

Tuy nhiên, điều này chỉ chứng minh rằng mỗi thành phần liên tiếp là hình chiếu tốt nhất cho một chiều, về mặt tối đa hóa phương sai. Tại sao điều này ngụ ý, phương sai của phép chiếu 5 chiều được tối đa hóa khi chọn các thành phần đầu tiên như vậy?


Bạn có thể vui lòng cho chúng tôi biết chính xác ý nghĩa của "phương sai" của bộ dữ liệu năm chiều là kết quả của việc chiếu một tập dữ liệu thành năm chiều không? (Để số lượng như vậy có thể được tối đa hóa, nó sẽ phải là một số duy nhất .)
whuber

3
Điểm rất tốt. Chris Bishop trong cuốn sách của mình đề cập đến việc giảm thiểu phương sai của một phép chiếu và không rõ ràng điều đó có nghĩa gì cho hơn 1 chiều. Tôi muốn tìm hiểu xem phương sai nào được giảm thiểu và tại sao một quy trình như vậy lại giảm thiểu nó cùng nhau.
michal

1
@ user123675: Trong bình luận cuối cùng của bạn, bạn có thể có nghĩa là "tối đa hóa", không phải "tối thiểu hóa".
amip

Vâng, bạn đúng. Lấy làm tiếc!
michal

Câu trả lời:


10

Những gì được hiểu bởi phương sai trong một số chiều ("tổng phương sai") chỉ đơn giản là tổng của phương sai trong mỗi thứ nguyên. Về mặt toán học, đó là một dấu vết của ma trận hiệp phương sai: dấu vết chỉ đơn giản là tổng của tất cả các phần tử đường chéo. Định nghĩa này có nhiều thuộc tính đẹp khác nhau, ví dụ dấu vết là bất biến dưới các phép biến đổi tuyến tính trực giao, có nghĩa là nếu bạn xoay trục tọa độ, tổng phương sai vẫn giữ nguyên.

Điều được chứng minh trong cuốn sách của Đức cha (phần 12.1.1), đó là người bản địa hàng đầu của ma trận hiệp phương sai đưa ra hướng của phương sai cực đại. Trình xác định thứ hai đưa ra hướng của phương sai tối đa trong một ràng buộc bổ sung rằng nó phải trực giao với trình xác định thứ nhất, v.v. (Tôi tin rằng điều này tạo thành Bài tập 12.1). Nếu mục tiêu là tối đa hóa tổng phương sai trong không gian con 2D, thì quy trình này là tối đa hóa tham lam: đầu tiên chọn một trục tối đa hóa phương sai, sau đó chọn một trục khác.

Câu hỏi của bạn là: tại sao thủ tục tham lam này đạt được mức tối đa toàn cầu?

Đây là một lập luận tốt đẹp mà @whuber đề xuất trong các bình luận. Trước tiên chúng ta hãy căn chỉnh hệ tọa độ với các trục PCA. Ma trận hiệp phương sai trở thành đường chéo: . Để đơn giản, chúng ta sẽ xem xét cùng một trường hợp 2D, tức là mặt phẳng có tổng phương sai cực đại là gì? Chúng tôi muốn chứng minh rằng đó là mặt phẳng được cho bởi hai vectơ cơ sở đầu tiên (với tổng phương sai ).λ 1 + λ 2Σ=diag(λi)λ1+λ2

Xét một mặt phẳng được kéo dài bởi hai vectơ trực giao và . Tổng phương sai trong mặt phẳng này làVì vậy, đây là sự kết hợp tuyến tính của eigenvalues với các hệ số đều dương, không vượt quá (xem bên dưới) và tổng bằng . Nếu vậy, thì gần như rõ ràng là mức tối đa đạt được tại .v u Σ u + v Σ v = Σ bước sóng i u 2 i + Σ bước sóng i v 2 i = Σ bước sóng i ( u 2 i + v 2 i ) . λ i 1 2 λ 1 + λ 2uv

uΣu+vΣv=λiui2+λivi2=λi(ui2+vi2).
λi12λ1+λ2

Nó chỉ còn lại để chỉ ra rằng các hệ số không thể vượt quá . Lưu ý rằng , trong đó là vectơ cơ sở thứ . Đại lượng này là độ dài bình phương của hình chiếu lên mặt phẳng được kéo dài bởi và . Do đó, nó phải nhỏ hơn độ dài bình phương của bằng với , QED.k k k u v k | k | 2 = 11uk2+vk2=(uk)2+(vk)2kkkuvk|k|2=1

Xem thêm câu trả lời của @ Cardinal cho chức năng mục tiêu của PCA là gì? (nó tuân theo logic tương tự).


1
(1) Nhưng nó không phải bằng trực giác rõ ràng mà đưa ra một bộ sưu tập các ví số tiền khác nhau của tiền mặt (mô hình hóa các giá trị riêng không âm), và một số cố định mà bạn có thể lựa chọn, mà chọn ví giàu nhất sẽ phát huy tối đa tổng số của bạn tiền mặt? Bằng chứng cho thấy trực giác này là chính xác gần như không đáng kể: nếu bạn chưa lấy lớn nhất, thì bạn có thể cải thiện số tiền của mình bằng cách trao đổi số tiền nhỏ nhất bạn đã lấy với số tiền lớn hơn. k kkkk
whuber

@amoeba: nếu mục tiêu là tối đa hóa tổng phương sai chứ không phải phương sai của tổng, thì không có lý do gì để phép chiếu thứ hai trực giao với phương trình thứ nhất.
Innuo

1
Tôi xin lỗi - Tôi đã nghĩ rằng bạn đã phát triển phân tích đến mức nhận ra rằng tổng phương sai trong không gian con -chiều là một tổ hợp tuyến tính không âm của các giá trị riêng, trong đó không có hệ số nào có thể vượt quá và tổng các hệ số bằng . (Đó là vấn đề của phép nhân ma trận đơn giản - Số nhân Lagrange không cần thiết.) Điều đó sau đó đưa chúng ta đến phép ẩn dụ ví. Tôi đồng ý rằng một số phân tích như vậy phải được thực hiện. 1 kk1k
whuber

1
@amoeba: Ý tôi là chúng ta đang xem xét vấn đề trong cơ sở bao gồm các hàm riêng (đây là cơ sở của u và v nếu chúng ta tính toán phương sai của chúng bằng cách nhân với ma trận hiệp phương sai chéo). u và v cuối cùng sẽ trở thành họ, nhưng ở giai đoạn của bằng chứng này, chúng ta không nên cho rằng điều này tôi nghĩ. Không nên tranh luận đúng hơn, rằng tại bất kỳ thời điểm nào, tổng lớn hơn 1, thì 2 vectơ sẽ không còn trực giao nữa, vì cơ sở là trực giao và mỗi vectơ mang nhiều nhất 1? Nhưng sau đó, một lần nữa, tại sao chúng ta hạn chế bản thân các vectơ trực giao u và v?
michal

1
@Heisenberg: À, tôi hiểu rồi! Không, tất nhiên tôi không có ý đó! Nhưng tôi thấy bây giờ tại sao nó khó hiểu. Tôi viết lại phần cuối cùng của bằng chứng này để thoát khỏi bước "chọn cơ sở" này. Xin vui lòng xem chỉnh sửa của tôi. Cảm ơn bạn.
amip

2

Nếu bạn có biến ngẫu nhiên không tương quan được sắp xếp theo thứ tự giảm dần của phương sai của chúng và được yêu cầu chọn trong số chúng sao cho phương sai của tổng của chúng được tối đa hóa, bạn có đồng ý rằng cách tiếp cận tham lam của việc chọn đầu tiên sẽ thực hiện được không?k kNkk

Dữ liệu được chiếu lên các hàm riêng của ma trận hiệp phương sai của nó về cơ bản là cột dữ liệu không tương quan và có phương sai bằng với các giá trị riêng tương ứng.N

Để trực giác rõ ràng hơn, chúng ta cần liên hệ tối đa hóa phương sai với tính toán hàm riêng của ma trận hiệp phương sai với giá trị riêng lớn nhất và liên quan đến phép chiếu trực giao để loại bỏ các mối tương quan.

Mối quan hệ thứ hai đối với tôi rõ ràng bởi vì hệ số tương quan giữa hai vectơ (trung bình bằng không) tỷ lệ thuận với sản phẩm bên trong của chúng.

Mối quan hệ giữa tối đa hóa phương sai và phân rã bản địa của ma trận hiệp phương sai như sau.

Giả sử rằng là ma trận dữ liệu sau khi căn giữa các cột. Chúng ta cần tìm hướng của phương sai tối đa. Đối với bất kỳ vectơ đơn vị , phương sai sau khi chiếu dọc theo làv vDvv

E[(Dv)tDv]=vtE[DtD]v=vtCov(D)v

được tối đa hóa nếu là hàm riêng của tương ứng với giá trị riêng lớn nhất.C o v ( D )vCov(D)


Câu hỏi ban đầu là: chọn kết hợp tuyến tính trực giao của chúng (trái ngược với của chúng) sao cho tổng phương sai của chúng được tối đa hóa. Có phải vẫn còn rõ ràng rằng cách tiếp cận tham lam của việc chọn đầu tiên hoàn thành điều đó? k kkkk
amip

Tìm kết hợp tuyến tính trực giao và sau đó chọn biến thể đầu tiên trong số chúng là những gì quá trình mô tả (một cách lỏng lẻo). Câu trả lời của tôi chỉ tuyên bố rằng tính trực giao là những gì đủ cho quá trình tham lam để đạt được mục tiêu tối đa hóa tổng phương sai. kNk
Innuo

Tôi không chắc chắn tôi làm theo lập luận. Làm thế nào để tính trực giao quan trọng? Nếu bạn có biến và phải chọn có tổng phương sai cao nhất, bạn nên chọn có phương sai cao nhất (không phân biệt chúng có tương quan hay không). k kNkk
amip

Ah, tôi hiểu sự nhầm lẫn. Có một lỗi đánh máy trong câu trả lời của tôi. Đã sửa bây giờ.
Innuo

Tôi nghĩ rằng bạn có thể đang ở một cái gì đó ở đây, nhưng sự xuất hiện kỳ ​​diệu của tổng số cần giải thích. Điều gì có liên quan đến PCA hoặc thậm chí phân rã quang phổ?
whuber
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.