Hình học phía sau Tích vô hướng: Vector đơn vị, Chiếu và Trực giác

06 tháng 4, 2026·8 phút đọc

Tích vô hướng là một trong những phép toán quan trọng nhất trong học máy, nhưng lại khó hiểu nếu thiếu nền tảng hình học vững chắc. Bài viết này sẽ khám phá các khái niệm nền tảng như vector đơn vị, phép chiếu vô hướng và phép chiếu vector để giúp bạn xây dựng trực giác toán học cần thiết.

Hình học phía sau Tích vô hướng: Vector đơn vị, Chiếu và Trực giác

Đây là phần đầu tiên trong loạt bài gồm ba phần. Mỗi phần đều độc lập, vì vậy bạn không cần đọc các phần khác để hiểu được nội dung này.

Tích vô hướng (dot product) là một trong những phép toán quan trọng nhất trong học máy – nhưng nó rất khó hiểu nếu thiếu các nền tảng hình học phù hợp. Trong phần đầu tiên này, chúng ta sẽ xây dựng những nền tảng đó:

  • Vector đơn vị (Unit vectors)
  • Phép chiếu vô hướng (Scalar projection)
  • Phép chiếu vector (Vector projection)

Dù bạn là sinh viên lần đầu tiên học Đại số tuyến tính hay muốn làm mới các khái niệm này, tôi khuyên bạn nên đọc bài viết này. Trên thực tế, chúng ta sẽ giới thiệu và giải thích tích vô hướng trong bài viết này, và ở bài tiếp theo, chúng ta sẽ khám phá sâu hơn về nó. Phần phép chiếu vector được đưa vào như một phần thưởng bổ sung: hữu ích nhưng không bắt buộc để hiểu về tích vô hướng.

Vector đơn vị

Một vector $\vec{v}$ được gọi là vector đơn vị nếu độ lớn của nó bằng 1:

$|\vec{v}| = 1$

Để loại bỏ độ lớn của một vector khác không trong khi vẫn giữ nguyên hướng của nó, chúng ta có thể chuẩn hóa (normalize) nó. Việc chuẩn hóa thay đổi tỷ lệ vector theo hệ số:

$1 / |\vec{v}|$

Vector đã chuẩn hóa $\hat{v}$ là vector đơn vị theo hướng của $\vec{v}$:

$\hat{v} = \frac{\vec{v}}{|\vec{v}|}$

Phép toán này tự nhiên tách một vector thành độ lớn và hướng của nó:

$\vec{v} = |\vec{v}| \cdot \hat{v}$

Hình 1 minh họa ý tưởng này: $\vec{v}$ và $\hat{v}$ cùng chỉ về một hướng, nhưng có độ lớn khác nhau.

Tách biệt "Bao nhiêu" khỏi "Theo hướng nào". Bất kỳ vector nào cũng có thể được viết dưới dạng tích của độ lớn và vector đơn vị của nó.Tách biệt "Bao nhiêu" khỏi "Theo hướng nào". Bất kỳ vector nào cũng có thể được viết dưới dạng tích của độ lớn và vector đơn vị của nó.

Tương đồng của vector đơn vị

Trong không gian hai chiều, tất cả các vector đơn vị đều nằm trên đường tròn đơn vị (bán kính 1, tâm tại gốc tọa độ). Một vector đơn vị tạo một góc $\theta$ với trục x sẽ có tọa độ là $(\cos \theta, \sin \theta)$.

Điều này có nghĩa là góc giữa hai vector đơn vị mã hóa một điểm số tương tự tự nhiên – như chúng ta sẽ chỉ ra ngay sau đây, điểm số này chính là $\cos \theta$: bằng 1 khi chúng cùng hướng, bằng 0 khi vuông góc và bằng -1 khi ngược hướng.

Trong thực tế, chúng ta không biết trực tiếp $\theta$ – chúng ta biết tọa độ của các vector. Chúng ta có thể chứng minh tại sao tích vô hướng của hai vector đơn vị: $\hat{a}$ và $\hat{b}$ lại bằng $\cos \theta$ bằng một lập luận hình học trong ba bước:

  1. Xoay hệ tọa độ cho đến khi $\hat{b}$ nằm dọc theo trục x. Việc xoay không làm thay đổi góc hay độ lớn.
  2. Đọc tọa độ mới. Sau khi xoay, $\hat{b}$ có tọa độ là $(1, 0)$. Vì $\hat{a}$ là một vector đơn vị tại góc $\theta$ từ trục x, định nghĩa đường tròn đơn vị cho tọa độ của nó là $(\cos \theta, \sin \theta)$.
  3. Nhân các thành phần tương ứng và cộng lại:

$\hat{a} \cdot \hat{b} = a_x \cdot b_x + a_y \cdot b_y = \cos\theta \cdot 1 + \sin\theta \cdot 0 = \cos\theta$

Tổng của các tích thành phần này được gọi là tích vô hướng:

$\vec{a} \cdot \vec{b} = a_1 \cdot b_1 + a_2 \cdot b_2 + \dots + a_n \cdot b_n$

Hình 2 dưới đây minh họa cho ba bước này:

Bằng cách xoay góc nhìn của chúng ta để căn chỉnh với trục x, phép toán tọa độ trở nên đơn giản hóa một cách đẹp đẽ để tiết lộ lý do tại sao tích vô hướng của hai vector đơn vị lại bằng cos(θ).Bằng cách xoay góc nhìn của chúng ta để căn chỉnh với trục x, phép toán tọa độ trở nên đơn giản hóa một cách đẹp đẽ để tiết lộ lý do tại sao tích vô hướng của hai vector đơn vị lại bằng cos(θ).

Mọi thứ ở trên đều được chứng minh trong không gian 2D, nhưng kết quả tương tự cũng đúng trong bất kỳ số chiều nào. Bất kỳ hai vector nào, bất kể chúng tồn tại trong bao nhiêu chiều, luôn nằm trên một mặt phẳng phẳng duy nhất. Chúng ta có thể xoay mặt phẳng đó để căn chỉnh với mặt phẳng xy – và từ đó, chứng minh 2D áp dụng chính xác.

Phép chiếu vô hướng

Một vector có thể đóng góp theo nhiều hướng cùng lúc, nhưng thường thì chúng ta chỉ quan tâm đến một hướng duy nhất.

Phép chiếu vô hướng trả lời câu hỏi: Có bao nhiêu của vector $\vec{a}$ nằm dọc theo hướng của $\vec{b}$?

Giá trị này sẽ âm nếu phép chiếu chỉ theo hướng ngược lại với $\vec{b}$.

Ẩn dụ về cái bóng

Cách trực quan nhất để nghĩ về phép chiếu vô hướng là độ dài của một cái bóng. Hãy tưởng tượng bạn cầm một cây gậy (vector $\vec{a}$) ở một góc nghiêng phía trên mặt đất (hướng của $\vec{b}$), và một nguồn ánh sáng chiếu thẳng xuống từ trên cao.

Cái bóng mà cây gậy tạo ra trên mặt đất chính là phép chiếu vô hướng.

Hình động dưới đây minh họa ý tưởng này:

Phép chiếu vô hướng dưới dạng cái bóng. Phép chiếu vô hướng đo lường bao nhiêu của vector a nằm theo hướng của b. Nó bằng độ dài của cái bóng mà a chiếu lên b.Phép chiếu vô hướng dưới dạng cái bóng. Phép chiếu vô hướng đo lường bao nhiêu của vector a nằm theo hướng của b. Nó bằng độ dài của cái bóng mà a chiếu lên b.

Tính toán

Hãy tưởng tượng một nguồn ánh sáng chiếu thẳng xuống đường thẳng PS (hướng của $\vec{b}$). "Cái bóng" mà $\vec{a}$ (mũi tên từ P đến Q) chiếu lên đường thẳng đó chính là đoạn thẳng PR.

Phương trình cho phép chiếu vô hướng của $\vec{a}$ theo hướng $\vec{b}$ là:

$|\vec{a}|\cos\theta = \vec{a} \cdot \hat{b} = \frac{\vec{a} \cdot \vec{b}}{|\vec{b}|}$

Ý nghĩa hình học của Tích vô hướng

Chúng ta áp dụng "thủ thuật xoay" một lần nữa, lần này với hai vector tổng quát: $\vec{a}$ và $\vec{b}$.

Sau khi xoay: $\vec{a} = (|\vec{a}|\cos\theta, |\vec{a}|\sin\theta)$ $\vec{b} = (|\vec{b}|, 0)$

Do đó: $\vec{a} \cdot \vec{b} = |\vec{a}|\cos\theta \cdot |\vec{b}| + |\vec{a}|\sin\theta \cdot 0 = |\vec{a}||\vec{b}|\cos\theta$

Tích vô hướng của $\vec{a}$ và $\vec{b}$ là:

$\vec{a} \cdot \vec{b} = a_1 b_1 + \dots + a_n b_n = \sum_{i=1}^{n} a_i b_i = |\vec{a}||\vec{b}|\cos\theta$

Phép chiếu vector

Phép chiếu vector trích xuất phần của vector $\vec{a}$ chỉ theo hướng của vector $\vec{b}$.

Ẩn dụ về con đường

Hãy tưởng tượng hai con đường bắt đầu từ cùng một điểm (gốc tọa độ):

  • Con đường A dẫn đến một điểm ngắm cá voi.
  • Con đường B dẫn dọc theo bờ biển theo một hướng khác.

Đây là câu hỏi mà phép chiếu trả lời: Bạn chỉ được phép đi dọc theo con đường B. Bạn nên đi bao xa để kết thúc ở vị trí gần nhất có thể với điểm cuối của con đường A?

Bạn đi dọc theo B, và tại một điểm nào đó, bạn dừng lại. Từ nơi bạn dừng lại, bạn nhìn về phía cuối của con đường A, và đường nối bạn đến nó tạo một góc 90 độ hoàn hảo với con đường B. Đó là sự thật hình học then chốt – điểm gần nhất luôn là nơi bạn sẽ rẽ phải một góc vuông.

Điểm bạn dừng lại trên con đường B là phép chiếu của A lên B. Nó đại diện cho "phần của A đi theo hướng của B".

Phần còn lại thiếu – từ điểm dừng của bạn đến điểm cuối thực tế của con đường A – là mọi thứ về A không liên quan gì đến hướng của B.

Phép chiếu vô hướng trả lời: "Bạn đã đi bao xa?" Đó chỉ là một khoảng cách, một con số duy nhất.

Phép chiếu vector trả lời: "Bạn đang ở chính xác đâu?" Cụ thể hơn: "Sự di chuyển thực tế dọc theo con đường B đưa bạn đến điểm gần nhất đó là gì?"

Bây giờ "1,5 km" là chưa đủ, bạn cần nói "1,5 km về phía đông dọc theo bờ biển". Đó là một khoảng cách cộng với một hướng: một mũi tên, không chỉ là một con số.

Phép chiếu vector của $\vec{a}$ theo hướng $\vec{b}$ là:

$\text{proj}_{\vec{b}}(\vec{a}) = (|\vec{a}|\cos\theta)\hat{b} = \left(\frac{\vec{a} \cdot \vec{b}}{|\vec{b}|^2}\right)\vec{b} = (\vec{a} \cdot \hat{b})\hat{b}$

Tóm tắt

  • Vector đơn vị cô lập hướng của một vector bằng cách loại bỏ độ lớn của nó. $\hat{v} = \frac{\vec{v}}{|\vec{v}|}$

  • Tích vô hướng nhân các thành phần tương ứng và cộng chúng lại. Nó cũng bằng tích của độ lớn của hai vector nhân với cosin của góc giữa chúng. $\vec{a} \cdot \vec{b} = a_1 b_1 + \dots + a_n b_n = |\vec{a}||\vec{b}|\cos\theta$

  • Phép chiếu vô hướng sử dụng tích vô hướng để đo lường một vector vươn xa bao nhiêu theo hướng của một vector khác – một con số duy nhất, giống như độ dài của cái bóng. $|\vec{a}|\cos\theta = \vec{a} \cdot \hat{b} = \frac{\vec{a} \cdot \vec{b}}{|\vec{b}|}$

  • Phép chiếu vector đi xa hơn một bước, trả về một mũi tên thực tế theo hướng đó: phép chiếu vô hướng nhân với vector đơn vị. $(|\vec{a}|\cos\theta)\hat{b} = (\vec{a} \cdot \hat{b})\hat{b}$

Trong phần tiếp theo, chúng ta sẽ sử dụng các công cụ đã học trong bài viết này để thực sự hiểu sâu hơn về tích vô hướng.

Bài viết được tổng hợp và biên soạn bằng AI từ các nguồn tin tức công nghệ. Nội dung mang tính tham khảo. Xem bài gốc ↗