Phân tích thành phần chính (PCA)

  • Trước khi đi vào PCA thì mình muốn nói về việc nén dữ liệu và tác dụng của nó.
  • Nén dữ liệu hoặc giảm bớt feature luôn đem lại nhiều lợi ích. Chúng ta có thể phát triển thuật toán học tập nhanh hơn, chúng ta có thể giảm bớt kích cỡ lưu trữ của dữ liệu và đặc biệt chúng ta có thể mô hình hóa dữ liệu, trực quan hóa để đánh giá cũng như lựa chọn thuật toán học tập phù hợp cho dữ liệu.
  • Khi chuẩn hóa data, mẫu data được vector hóa và hãy thử tưởng tượng chúng ta có 1 mẫu với 3 feature, vậy là tương đương với 3 chiều. Nếu như chúng ta có thể nén nó lại thì việc truwjcquan hóa dữ liệu đơn giản hơn rất nhiều.
  • Hãy xem ảnh việc nén data từ 3 feature thành 2 feature:
    • capture
    • Dựa vào sự tuyến tính cùng nhau giữa các feature. Chúng ta có thể nén dữ liệu xuống để làm việc được tốt hơn.
  • Khi biết được lợi ích từ việc nén dữ liệu, ta cần biết cách làm nó. Sau đây chúng ta sẽ tìm hiểu một thuật toán. Đó là PCA.
  • Principal Component Analysis – PCA
    • PCA là một thuật toán phổ biến dùng trong viện giảm kích thước data. Kỹ thuật xây dựng PCA như sau:
      • Nhìn vào ảnh:
      • Capture.JPG
      • Giả sử chúng ta có 2 feature x1 và x2 và các giá trị của 2 feature đó nằm rải rác được biểu diễn như hình trên, bây giờ chúng ta muốn biễu diễn 2 feature đó bằng một feature khác. Để có thể gộp 2 feature x1, x2 thành một sao cho chúng ta đạt được một feature ít “lỗi” nhất. Tôi kẻ một đường thẳng đi qua các điểm thuộc 2 feature trên sao cho cách khoảng cách từ điểm đến đường kẻ nhỏ nhất, chính là các đường màu xanh lam các bạn thấy ở hình trên.
    • Như vậy nếu như tổng quát và mở rộng hơn một chút thì: Trong một không gian R(n) chiều nếu chúng ta muốn giảm kích thước số chiều xuống R(k) chiều ( k <= n) thì sẽ phải tìm một mặt cắt không phẳng ( có thể phẳng nếu k = 2) sao cho khoảng các của các điểm dữ liệu đến mặt cắt đó là nhỏ nhất có thể.

Bình luận về bài viết này