Tích vô hướng hai feature
Tính tích vô hướng của hai vector hai chiều.

Dữ liệu AI biểu diễn hoàn toàn dưới dạng tensor. Làm chủ các quy tắc tính toán tensor, trục axis, bộ nhớ liên tục contiguous để tăng tốc code gấp hàng trăm lần.
bài tập có chấm code
Bài tập theo chuyên đề, có đề bài, ví dụ và starter code riêng.
cơ bản
Củng cố nền tảng và làm quen với kỹ thuật cốt lõi.
trung bình
Kết hợp nhiều bước suy luận để vận dụng kiến thức.
nâng cao
Thử thách tối ưu, cấu trúc dữ liệu và thuật toán chuyên sâu.
Hiểu cơ chế lưu trữ của mảng trên RAM, phân biệt contiguous và non-contiguous.
Quy tắc dóng hàng chiều dài từ phải sang trái và tự động mở rộng tensor.
Cài đặt khoảng cách Euclidean, khoảng cách Manhattan và Cosine Similarity chuẩn hóa.
Tính tổng sum, trung bình mean, chuẩn norm dọc theo các trục mà không làm méo shape.
Bỏ quên tham số keepdims=True khi tính chuẩn norm dọc theo trục khiến phép chia broadcasting bị sai chiều.
Không xử lý trường hợp chia cho 0 khi vector có độ dài bằng 0 (cần thêm epsilon nhỏ 1e-9).
Trong mỗi mức độ, bài tập được xếp từ dễ nhất đến khó nhất — hãy đi theo số bước.
Nhập xuất, biến, rẽ nhánh và các bước suy luận đơn giản.
Tính tích vô hướng của hai vector hai chiều.
Tính khoảng cách Euclid giữa hai điểm trong mặt phẳng.
Chuẩn hóa một giá trị về khoảng từ 0 đến 1 theo giá trị nhỏ nhất và lớn nhất.
Mã hóa một nhãn số thành vector one-hot có số chiều cho trước.
Tìm khoảng cách nhỏ nhất từ một điểm truy vấn đến các mẫu một chiều.
Tích vô hướng là phép tính xuất hiện nhiều nhất trong học sâu: mỗi nơ-ron tuyến tính, mỗi bước attention đều là một tích vô hướng. Nắm chắc nó giúp hiểu chi phí tính toán của mô hì…
Hiệu hai vector là bước đầu của mọi phép so sánh: khoảng cách Euclid, chuẩn gradient và vector chuyển dịch đều bắt đầu từ hiệu này.
Vòng lặp, mảng một chiều, chuỗi và hàm ở mức cơ bản.
Tổng bình phương là bình phương chuẩn L2, và cũng là tử số của phương sai khi chưa chia. Nó xuất hiện trong hàm mất mát bình phương nhỏ nhất và trong kiểm tra độ lớn gradient.
Trong các hệ thống tính toán hiệu năng cao và mạng nơ-ron sâu, việc truy cập bộ nhớ không liên tục (cache miss do sai strides) làm giảm hiệu suất xử lý từ 5 đến 10 lần. Trước khi t…
Khi chuyển giao dữ liệu giữa các khối trong mô hình GPT, tensor thường xuyên phải thay đổi số chiều: ví dụ gộp batch và sequence (B, T, D) -> (B*T, D) để đưa vào hàm mất mát Cross-…
argmax là bước cuối của mọi bài phân loại: sau khi mô hình cho ra vector logits, ta lấy lớp có điểm cao nhất. Khi có nhiều logit bằng nhau, quy ước chọn lớp có chỉ số nhỏ nhất.
Chuẩn L1 là tổng độ lớn các thành phần, còn gọi là khoảng cách Manhattan từ gốc. Nó xuất hiện trong regularization Lasso vì thúc đẩy nghiệm thưa.
Khi so sánh khoảng cách để tìm hàng xóm gần nhất, ta chỉ cần bình phương khoảng cách vì căn bậc hai là hàm tăng đơn điệu — bỏ căn giúp tiết kiệm tính toán mà không đổi thứ tự.
Trong hệ sinh thái Học sâu (Deep Learning) và PyTorch, Tensor là cấu trúc dữ liệu cốt lõi tương tự mảng đa chiều trong NumPy nhưng hỗ trợ tính toán tăng tốc trên phần cứng và tự độ…
Bài tổng hợp nhẹ, sẵn sàng bước sang mức trung bình.
Chuẩn hoá L2 đưa vector về độ dài 1. Trong tìm kiếm vector và embedding, chuẩn hoá L2 khiến tích vô hướng trở thành độ tương đồng cosine nên so sánh nhanh hơn.
Khoảng cách Manhattan cộng độ lệch theo từng chiều, nên rẻ hơn khoảng cách Euclid (không cần căn) và rất hợp khi đặc trưng có đơn vị rời rạc.
Chuẩn L2 là độ dài Euclid của vector. Nó dùng để đo độ lớn gradient, kiểm soát norm của embedding và là mẫu số của độ tương đồng cosine.
Khoảng cách Euclid là thước đo mặc định khi so sánh hai điểm trong không gian đặc trưng nhiều chiều, ví dụ để tìm hàng xóm gần nhất trong KNN.
Độ tương đồng cosine đo góc giữa hai vector, không phụ thuộc độ dài. Đây là thước đo chuẩn trong tìm kiếm vector, hệ gợi ý và so khớp embedding.
PyTorch là framework Deep Learning tiêu chuẩn công nghiệp. Trước khi xây dựng mạng nơ-ron, kỹ sư phải thành thạo việc tạo tensor chuẩn xác trên CPU, chuyển đổi shape và kiểm soát b…
Dùng một kỹ thuật quen thuộc: sắp xếp, tìm kiếm, đếm, ngăn xếp.
Trong huấn luyện mạng nơ-ron, việc chỉnh sửa dữ liệu trên một lát cắt (slice) có thể vô tình làm hỏng tập dữ liệu gốc nếu đó là một View. Ngược lại, việc lạm dụng .copy() sẽ làm tr…
Trong tiền xử lý ảnh và tính toán embedding của mô hình học sâu, hàng triệu vector phải được chuẩn hóa về độ dài đơn vị. Việc dùng vòng lặp for trong Python khiến thời gian xử lý c…
Trong hệ thống RAG và Vector Database (như Qdrant), thuật toán tìm kiếm tương đồng ngữ nghĩa cần so sánh hàng nghìn vector embedding đồng thời. Nếu phép tính bị chia cho 0 (do vect…
Trong mã nguồn của các kiến trúc LLM hiện đại (như LLaMA, GPT, Mistral), torch.einsum là công cụ ngắn gọn và mạnh mẽ nhất để biểu diễn các phép co tensor đa chiều (tensor contracti…
Phối hợp hai kỹ thuật trong cùng một lời giải.
Trong các thuật toán phân cụm (K-Means), tìm kiếm láng giềng gần nhất (k-NN) và đo lường khoảng cách embedding giữa các token, việc tính toán khoảng cách Euclidean giữa N vector và…
Trong các mô hình sinh ngôn ngữ lớn, việc lọc các token bất hợp lệ, token vượt ngưỡng xác suất hoặc các token đệm (<pad>) đòi hỏi kỹ thuật lập chỉ mục bằng mặt nạ Boolean (Boolean…
Hiểu Tensor có shape và dtype rõ ràng trước khi đưa vào neural network.
Trong tính toán Attention của Transformer, phép nhân giữa tensor Query Q kích thước (B, H, T, D) và Key KT kích thước (B, H, D, S) là một phép nhân ma trận theo lô đa chiều. Hiểu…
Trong cài đặt Multi-Head Attention của PyTorch, sau khi tính toán các đầu chú ý, tensor có shape (B, H, T, D). Để chuẩn bị đưa qua tầng Linear chiếu ra (proj), ta phải hoán vị chiề…