Ý nghĩa của lỗi tái cấu trúc của người dùng trong PCA và LDA


12

Tôi đang triển khai PCA, LDA và Naive Bayes, để nén và phân loại tương ứng (thực hiện cả LDA cho nén và phân loại).

Tôi có mã được viết và mọi thứ hoạt động. Những gì tôi cần biết, đối với báo cáo, là định nghĩa chung về lỗi tái thiết là gì.

Tôi có thể tìm thấy rất nhiều toán học và sử dụng nó trong tài liệu ... nhưng điều tôi thực sự cần là chế độ xem mắt / định nghĩa từ đơn giản của chim, vì vậy tôi có thể điều chỉnh nó theo báo cáo.


Lỗi tái thiết là khái niệm chỉ áp dụng (từ danh sách của bạn) cho PCA, không áp dụng cho LDA hoặc Bayes ngây thơ. Bạn đang hỏi về lỗi tái cấu trúc trong PCA nghĩa là gì, hoặc bạn có muốn một số "định nghĩa chung" cũng sẽ áp dụng cho LDA và Bayes ngây thơ không?
amip

Bạn có biết cả hai? Báo cáo liên quan đến cả PCA và LDA liên quan đến việc nén dữ liệu, vì vậy tôi phải có một số loại câu trả lời cho cả PCA và LDA ... nhưng không nhất thiết phải là NB. Vì vậy, có thể là phiên bản cụ thể của pca ... và ý tưởng chung, vì vậy tôi có thể áp dụng nó cho LDA cũng như tôi có thể. Sau đó, tôi có đủ kiến ​​thức để tìm kiếm trên google hiệu quả hơn nếu tôi gặp phải sự cố ...
donlan

Câu hỏi này tốt hơn có thể được đóng lại vì general definition of reconstruction errorrộng khó nắm bắt .
ttnphns

2
@ttnphns, tôi không nghĩ nó quá rộng. Tôi nghĩ rằng câu hỏi có thể được điều chỉnh lại thành "Chúng ta có thể áp dụng khái niệm PCA về lỗi tái cấu trúc cho LDA không?" và tôi nghĩ đó là một câu hỏi thú vị và theo chủ đề (+1). Tôi sẽ cố gắng tự viết một câu trả lời nếu tôi tìm thấy thời gian.
amip

1
@amoeba, trong công thức được đề xuất bởi bạn câu hỏi thực sự nhận được ánh sáng. Vâng, có thể viết một câu trả lời sau đó (và tôi có thể mong đợi của bạn sẽ tốt). Một điều khó khăn về "những gì đang được xây dựng lại" trong LDA là vấn đề những gì đang được coi là DV và những gì IV trong LDA.
ttnphns

Câu trả lời:


8

Đối với PCA, điều bạn làm là bạn chiếu dữ liệu của mình lên một tập hợp con của không gian đầu vào. Về cơ bản, mọi thứ giữ trên hình ảnh này ở trên: bạn chiếu dữ liệu trên không gian con với phương sai tối đa. Khi bạn xây dựng lại dữ liệu của mình từ phép chiếu, bạn sẽ nhận được các điểm màu đỏ và lỗi tái cấu trúc là tổng khoảng cách từ các điểm màu xanh đến điểm đỏ: nó thực sự tương ứng với lỗi bạn đã tạo ra khi chiếu dữ liệu lên màu xanh lá cây hàng. Nó có thể được khái quát trong bất kỳ chiều nào của khóa học!

nhập mô tả hình ảnh ở đây

Như đã chỉ ra trong các bình luận, có vẻ như điều đó không đơn giản đối với LDA và tôi không thể tìm thấy một định nghĩa đúng đắn trên internet. Lấy làm tiếc.


Trường hợp LDA là khó khăn hơn thế. Bạn sẽ làm gì trong trường hợp chiếu 2 chiều? Trong PCA, hai trục chính là trực giao và tạo thành mặt phẳng 2D nên dĩ nhiên áp dụng cùng một ý tưởng về lỗi tái cấu trúc. Nhưng trong LDA, hai trục phân biệt không trực giao. Làm thế nào chính xác là bạn đang đề nghị để xác định lỗi xây dựng lại sau đó?
amip

Tôi đã có hai nhận xét về câu trả lời. 1) Bạn có nói rằng pic 1 của bạn hiển thị PC1 thật không? 2) Đối với LDA và pic thứ 2 - tốt, bạn có thể vẽ các phân biệt đối xử dưới dạng các trục trong không gian ban đầu và gọi phần dư điểm dữ liệu là "lỗi tái tạo". Nhưng nó là một thực hành thuật ngữ lỏng lẻo. Những gì phân biệt đối xử tái cấu trúc? Ngoài ra, thêm vào đây những gì amip nói về tính phi đối xứng dọc trục (xem ở đây ).
ttnphns

1) Đây là hình ảnh được chụp từ một tìm kiếm google cho thấy lỗi nhưng thực sự pca sẽ thẳng đứng hơn nhiều, tôi sẽ cố gắng tìm một cái tốt hơn và cập nhật.
Vince.Bd

2) Tôi đã chỉnh sửa bài viết của mình. Tôi có xu hướng xem các phân biệt đối xử như các trục trong không gian ban đầu thực sự cho quan điểm hình học nhưng như đã chỉ ra rằng không có tính trực giao. Sai lầm của tôi ...
Vince.Bd

1
Vince, đó là quyết định của bạn. Nhưng đối với tôi, ở vị trí của bạn, tôi tốt hơn nên để lại bức ảnh thứ hai trong câu trả lời. Bạn đã không nhầm lẫn và quan điểm của bạn là có thể. Vấn đề là, tuy nhiên, phức tạp hơn với LDA; ý kiến ​​chỉ để nhấn mạnh rằng .
ttnphns

2

Định nghĩa chung về lỗi tái cấu trúc sẽ là khoảng cách giữa điểm dữ liệu gốc và hình chiếu của nó lên không gian con chiều thấp hơn ('ước tính').

Nguồn: Toán học chuyên ngành máy học của Imperial College London


0

Điều tôi thường sử dụng làm thước đo lỗi tái cấu trúc (trong ngữ cảnh của PCA, nhưng cũng là các phương pháp khác) là hệ số xác định và Lỗi bình phương gốc (hoặc RMSE bình thường hóa). Hai cái này rất dễ tính toán và cho bạn ý tưởng nhanh về việc tái thiết đã làm gì.R2

Phép tính

Giả sử là dữ liệu gốc của bạn và là dữ liệu nén.Xf

Biến của biến có thể được tính là:R2ith

Ri2=1j=1n(Xj,ifj,i)2j=1nXj,i2

Vì cho phù hợp hoàn hảo, bạn có thể đánh giá việc tái cấu trúc bằng cách đóng với 1.0.R2=1.0R2

RMSE của biến có thể được tính là:ith

RMSEi=(Xifi)2¯

mà bạn cũng có thể chuẩn hóa theo số lượng phù hợp với mình (định mức ), tôi thường chuẩn hóa theo giá trị trung bình, NRMSE là như vậy:N

NRMSEi=RMSEiNi=(Xifi)2¯Xi2¯

Tính toán

Trong trường hợp bạn đang sử dụng Python, bạn có thể tính toán những điều này như sau:

from sklearn.metrics import r2_score
from sklearn.metrics import mean_squared_error
from math import sqrt
import numpy as np

r2 = r2_score(X, f)
rmse = sqrt(mean_squared_error(X, f))

# RMSE normalised by mean:
nrmse = rmse/sqrt(np.mean(X**2))

nơi Xlà dữ liệu gốc và flà dữ liệu nén.

Hình dung

Trong trường hợp nó hữu ích cho bạn để thực hiện một số phân tích độ nhạy, thì bạn có thể đánh giá trực quan cách hoặc RMSE thay đổi khi bạn thay đổi các tham số nén của mình. Chẳng hạn, điều này có thể hữu ích trong bối cảnh PCA khi bạn muốn so sánh các bản dựng lại với số lượng Thành phần chính được giữ lại ngày càng tăng. Dưới đây bạn thấy rằng việc tăng số lượng chế độ sẽ giúp bạn phù hợp hơn với mô hình:R2

nhập mô tả hình ảnh ở đây

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.