Mở đầu
Trong hình học phổ thông, chúng ta quen thuộc với các khái niệm như đường thẳng, song song và vuông góc trên mặt giấy. Khi bước sang thế giới Machine Learning (ML), đặc biệt là bài toán Classification (Phân loại), những khái niệm này không biến mất.
Chúng được nâng cấp và mở rộng vào không gian nhiều chiều, dưới dạng các vector. Bài viết này nhằm kết nối tư duy hình học thuần túy với cách mà các thư viện Machine Learning thực sự xử lý dữ liệu.
1. Vector và siêu phẳng trong bài toán phân loại
Vector là đối tượng cơ bản dùng để biểu diễn dữ liệu trong Machine Learning. Mỗi mẫu dữ liệu, sau khi được trích xuất đặc trưng, đều được xem như một vector trong không gian nhiều chiều.
Một vector chỉ đặc trưng bởi hướng và độ lớn, không gắn với vị trí cố định trong không gian. Ngược lại, một siêu phẳng (hyperplane) là một tập hợp các điểm có vị trí xác định, đóng vai trò là ranh giới quyết định trong bài toán phân loại.
Trong thực tế, mô hình học máy không trực tiếp “vẽ” siêu phẳng. Quá trình huấn luyện chỉ nhằm tìm ra:
- một vector trọng số w
- và một hằng số b
Hai đại lượng này xác định hoàn toàn siêu phẳng phân loại trong không gian vector.
2. Phép chiếu và sự mất mát thông tin
Trong hình học, hai đường thẳng song song trong không gian ba chiều không bao giờ cắt nhau. Tuy nhiên, khi chiếu chúng xuống một mặt phẳng hai chiều (bỏ đi một trục), hai đường thẳng này có thể trùng khít hoàn toàn.
Phép chiếu đã làm mất đi thông tin về chiều không gian bị loại bỏ, khiến các đối tượng vốn khác biệt trở nên không thể phân biệt.
Xét hai đường thẳng song song trong không gian ba chiều:
$$ \ell_1: \begin{cases} x = t \\ y = 0 \\ z = 0 \end{cases} $$ $$ \ell_2: \begin{cases} x = t \\ y = 0 \\ z = 1 \end{cases} $$Hai đường thẳng này có cùng hướng nhưng lệch nhau theo trục z, do đó chúng không bao giờ cắt nhau trong không gian ba chiều.
Hãy tưởng tượng:- Không gian 3D có trục x,y,z
- Mặt phẳng Oxy là "sàn nhà"
- Phép chiếu xuống Oxy = đổ bóng thẳng đứng xuống sàn
Bây giờ, xét phép chiếu xuống mặt phẳng Oxy:
$$ \pi(x, y, z) = (x, y) $$Áp dụng phép chiếu này cho mọi điểm trên hai đường thẳng, ta thu được:
$$ \pi(\ell_1) = \pi(\ell_2): \begin{cases} x = t \\ y = 0 \end{cases} $$Hai đường thẳng khác nhau trong không gian ban đầu đã trở thành một đường thẳng duy nhất sau khi chiếu xuống mặt phẳng.
Trong Machine Learning, mỗi chiều không gian tương ứng với một đặc trưng (feature). Khi bỏ qua một đặc trưng quan trọng, các điểm dữ liệu vốn tách biệt trong không gian ban đầu có thể chồng lấn lên nhau trong không gian biểu diễn.
Đây là một trong những nguyên nhân phổ biến khiến bài toán phân loại tuyến tính thất bại, dù thuật toán được sử dụng hoàn toàn chính xác.
3. Tích vô hướng và quyết định phân loại
Trong Machine Learning, việc xác định một điểm dữ liệu thuộc về lớp nào được thực hiện thông qua phép tính tích vô hướng giữa vector dữ liệu và vector trọng số của mô hình.
Với một mẫu dữ liệu x và vector trọng số w, mô hình tính giá trị:
Dấu của giá trị score quyết định kết quả phân loại:
- score > 0: điểm dữ liệu nằm về một phía của ranh giới phân loại
- score < 0: điểm dữ liệu nằm về phía còn lại
- score = 0: điểm dữ liệu nằm ngay trên ranh giới phân loại
Ở đây, tích vô hướng không nhằm đo khoảng cách, mà nhằm xác định điểm dữ liệu nằm về phía nào của ranh giới.
Vector, phương của đường phân loại và một hiểu nhầm thường gặp
Cần lưu ý rằng đường thẳng (hay siêu phẳng) không có hướng theo nghĩa mũi tên. Trên một đường thẳng, ta có thể đi theo hai chiều ngược nhau, và không có chiều nào được ưu tiên một cách tự nhiên.
Tuy nhiên, mỗi đường thẳng vẫn có một phương, tức là cách nó nghiêng trong không gian. Hai vector ngược chiều nhau nhưng cùng phương đều có thể xem là vector chỉ phương của cùng một đường thẳng.
Ngược lại, vector thì luôn có hướng. Điều này dẫn tới một điểm quan trọng trong bài toán phân loại:
Vector trọng số \( w \) không nằm dọc theo đường phân loại.
Vector pháp tuyến là gì?
Xét đường phân loại trong mặt phẳng:
Vector \( w = (w_1, w_2) \) được gọi là vector pháp tuyến của đường thẳng này.
Vector pháp tuyến là vector:
- vuông góc với đường phân loại,
- xác định cách đường phân chia không gian thành hai phía.
Một cách trực quan, có thể hình dung:
- đường phân loại giống như một bức tường,
- vector pháp tuyến \( w \) là mũi tên vuông góc vào bức tường đó.
Trong hình minh họa:
- Đường thẳng là ranh giới phân loại,
- Vector \( w \) vuông góc với đường,
- Hướng của \( w \)
quyết định phía nào có
score > 0.
Vì sao tích vô hướng quyết định phân loại?
Giá trị \( w \cdot x \) đo mức độ cùng hướng giữa vector dữ liệu \( x \) và vector pháp tuyến \( w \).
- Nếu \( x \) nằm về phía mà \( w \) chỉ tới → tích vô hướng dương
- Nếu \( x \) nằm về phía ngược lại → tích vô hướng âm
Hằng số \( b \) cho phép dịch chuyển ranh giới phân loại, tránh việc siêu phẳng bị ép phải đi qua gốc tọa độ.
Do đó, phép tính
chính là cách mô hình xác định phía phân loại dựa trên quan hệ hình học giữa điểm dữ liệu và vector pháp tuyến.
Liên hệ tới Support Vector Machine
Cách phân loại bằng tích vô hướng trả lời câu hỏi: Điểm dữ liệu nằm về phía nào của ranh giới?
Support Vector Machine (SVM) mở rộng thêm một câu hỏi quan trọng hơn: Điểm dữ liệu đó cách ranh giới bao xa?
Chính vì vector \( w \) là pháp tuyến của đường phân loại, khoảng cách từ một điểm tới ranh giới có thể được tính trực tiếp từ biểu thức \( w^T x + b \). Đây là nền tảng hình học dẫn tới khái niệm margin trong SVM.
Tích vô hướng quyết định phía phân loại, còn vector pháp tuyến quyết định hình dạng và độ tin cậy của ranh giới phân loại.
4. Classification trong ML.NET qua lăng kính hình học
Quá trình huấn luyện một mô hình phân loại tuyến tính có thể được hình dung qua ba bước:
- Gộp các đặc trưng thành một vector duy nhất.
- Tìm vector trọng số w và bias b.
- Tính tích vô hướng để đưa ra dự đoán.
Kết luận
Hình học giúp chúng ta hiểu sâu hơn bản chất của bài toán phân loại. Vector là ngôn ngữ mà máy tính sử dụng để biểu diễn dữ liệu.
Feature engineering, xét đến cùng, chính là quá trình thiết kế không gian hình học nơi bài toán phân loại trở nên khả thi.
Khi mô hình thất bại, nguyên nhân thường không nằm ở thuật toán, mà nằm ở cách chúng ta đã chọn để biểu diễn thế giới bằng các vector.
Nhận xét
Đăng nhận xét