Tensor là gì? Các bài báo nghiên cứu khoa học liên quan
Tensor là đối tượng toán học mở rộng từ vô hướng, vectơ và ma trận, dùng để biểu diễn đại lượng có nhiều chiều và quan hệ giữa các không gian vectơ. Trong hình học, vật lý và học máy, tensor đóng vai trò trung tâm vì khả năng mô hình hoá dữ liệu phức tạp và bất biến dưới phép biến đổi toạ độ.
Giới thiệu về Tensor
Tensor là một khái niệm toán học dùng để biểu diễn các đại lượng có thể biến đổi theo nhiều chiều trong không gian. Nó là một phần mở rộng tổng quát của các khái niệm quen thuộc như vô hướng (scalar), vectơ (vector) và ma trận (matrix). Tùy vào số chiều mà tensor biểu diễn, người ta có thể sử dụng nó để mô tả các hiện tượng vật lý, các cấu trúc hình học, hay dữ liệu số nhiều chiều trong học máy và khoa học dữ liệu.
Trong khoa học tính toán hiện đại, tensor đóng vai trò là cấu trúc dữ liệu trung tâm giúp biểu diễn và xử lý thông tin hiệu quả. Trong các thư viện như TensorFlow hay PyTorch, mọi đầu vào, trọng số và đầu ra của mạng nơ-ron đều được mô hình hóa bằng tensor. Điều này cho phép thực hiện các phép toán đại số tuyến tính một cách song song trên GPU hoặc TPU, tăng tốc quá trình huấn luyện mô hình.
Tensor trong toán học tuyến tính
Trong bối cảnh đại số tuyến tính, một tensor có thể được định nghĩa một cách hình thức là một hàm đa tuyến (multilinear map) ánh xạ một tập hợp các vectơ và đồng vectơ (covector) vào một số thực. Cụ thể, một tensor cấp là một ánh xạ như sau:
Trong đó là không gian vectơ hữu hạn chiều, còn là không gian đối ngẫu của nó. Tính đa tuyến nghĩa là ánh xạ này tuyến tính theo từng đối số khi các đối số còn lại được giữ cố định.
Tensor cũng có thể được định nghĩa thông qua tích tensor (tensor product) của nhiều không gian vectơ, ví dụ:
Trong không gian Euclide ba chiều , một tensor bậc 2 có thể được biểu diễn như một ma trận 3×3. Tuy nhiên, nếu mở rộng lên tensor bậc 3 hoặc bậc 4, số phần tử sẽ tăng nhanh theo lũy thừa. Dưới đây là bảng thể hiện số lượng phần tử theo bậc tensor trong không gian :
Bậc tensor | Ký hiệu | Số phần tử trong |
---|---|---|
0 | Vô hướng | 1 |
1 | Vectơ | 3 |
2 | Ma trận | 9 |
3 | Tam tensor | 27 |
4 | Tứ tensor | 81 |
Phân loại tensor theo bậc và hạng
Tensor được phân loại chủ yếu theo hai khía cạnh: bậc (order hoặc rank) và hạng (tensor rank trong machine learning). Mặc dù cùng dùng từ “rank”, hai khái niệm này hoàn toàn khác nhau về bản chất.
Bậc của tensor là số chỉ số cần để xác định từng phần tử của nó. Một số ví dụ:
- Bậc 0: vô hướng (ví dụ: nhiệt độ, điện thế)
- Bậc 1: vectơ (lực, vận tốc)
- Bậc 2: ma trận (tensor ứng suất)
- Bậc 3 trở lên: dữ liệu hình ảnh màu, chuỗi thời gian đa chiều, v.v.
Còn hạng của tensor (trong học máy) là số lượng tối thiểu các tensor đơn giản có thể kết hợp tuyến tính để biểu diễn tensor ban đầu. Hạng này được sử dụng trong phân rã tensor để giảm chiều dữ liệu hoặc phát hiện đặc trưng.
Chẳng hạn, một tensor bậc 3 có thể phân rã theo dạng CANDECOMP/PARAFAC (CP):
Trong đó là hạng của tensor theo CP decomposition.
Tensor trong hình học vi phân và vật lý
Trong vật lý lý thuyết và hình học vi phân, tensor là một đối tượng bất biến hình học – nghĩa là không phụ thuộc vào hệ toạ độ. Đây là công cụ cơ bản để mô tả các đại lượng như trường hấp dẫn, điện từ, ứng suất và biến dạng.
Một trong những tensor quan trọng nhất là metric tensor , định nghĩa cấu trúc hình học của không-thời gian:
Công thức này cho ta khoảng cách vô hướng giữa hai điểm vi phân trong không-thời gian. Tensor metric xác định khái niệm độ dài, góc và thể tích – các khái niệm cốt lõi của hình học.
Các ví dụ phổ biến về tensor trong vật lý:
- Từ trường và điện trường: được mô hình hóa bằng tensor điện từ
- Tensor ứng suất: mô tả lực nội tại trong vật rắn
- Tensor Ricci: xuất hiện trong phương trình trường Einstein
Tất cả những tensor này tuân theo quy tắc biến đổi toạ độ sao cho kết quả vật lý không đổi bất kể hệ toạ độ được chọn.
Biểu diễn tensor bằng toạ độ
Mỗi tensor có thể được biểu diễn bằng một mảng nhiều chiều các phần tử số học, thường được mô tả bằng các chỉ số. Một tensor bậc 2, chẳng hạn, được biểu diễn dưới dạng hoặc , trong đó chỉ số trên (phản biến – contravariant) và chỉ số dưới (hiệp biến – covariant) phản ánh cách tensor biến đổi dưới các phép đổi toạ độ.
Trong thực tế, việc thao tác với tensor thường yêu cầu làm việc trong một hệ cơ sở cụ thể. Trong cơ sở này, mỗi thành phần của tensor được xác định rõ và việc áp dụng quy tắc Einstein về tổng quát hoá giúp rút gọn các biểu thức:
Việc phân biệt giữa chỉ số trên và dưới là rất quan trọng, đặc biệt trong hình học vi phân, vì nó ảnh hưởng đến cách tính các đại lượng như gradient, đạo hàm hiệp biến (covariant derivative) hoặc độ dài. Dưới đây là bảng minh họa cách phân biệt giữa các loại chỉ số:
Loại chỉ số | Ký hiệu | Ý nghĩa |
---|---|---|
Phản biến | Toạ độ biến đổi cùng chiều với cơ sở | |
Hiệp biến | Biến đổi ngược chiều với cơ sở |
Phép toán trên tensor
Các phép toán với tensor phải giữ nguyên tính bất biến về hình học hoặc đại số. Một số phép toán cơ bản và phổ biến nhất bao gồm:
- Phép cộng: Hai tensor cùng bậc và cùng kích thước có thể được cộng từng phần tử
- Nhân với vô hướng: Mỗi phần tử trong tensor được nhân với cùng một hằng số
- Tích tensor (tensor product): Kết hợp hai tensor để tạo tensor bậc cao hơn
- Thu chỉ số (contraction): Tổng hoá các chỉ số để giảm bậc tensor
- Đạo hàm hiệp biến: Giữ tính biến đổi đúng khi vi phân tensor theo không gian cong
Một ví dụ điển hình là tích tensor giữa hai vectơ và , cho ra tensor bậc 2:
Đây là cách phổ biến để tạo ma trận từ hai vectơ cột. Trong lập trình, phép nhân ngoài (outer product) thực hiện tương đương với tích tensor này.
Tensor trong học sâu (Deep Learning)
Trong học sâu, tensor là đơn vị cơ bản nhất để biểu diễn và xử lý dữ liệu. Các framework như PyTorch và TensorFlow cung cấp lớp tensor để hỗ trợ các phép toán tuyến tính, tự động đạo hàm, truyền ngược và tối ưu hoá.
Ví dụ, trong bài toán xử lý ảnh, một tensor có thể có dạng – trong đó:
- N: số lượng ảnh trong batch
- C: số kênh màu (thường là 3 cho RGB)
- H: chiều cao ảnh
- W: chiều rộng ảnh
Tương tự, trong xử lý ngôn ngữ tự nhiên (NLP), đầu vào có thể là tensor biểu diễn các chuỗi văn bản đã được mã hóa thành vectơ từ (word embeddings).
Tensor không chỉ giúp trừu tượng hoá dữ liệu, mà còn tối ưu hoá hiệu năng khi tính toán song song trên các phần cứng chuyên dụng. Đây là lý do các mô hình AI ngày nay đều sử dụng tensor làm đơn vị xử lý chính.
Tensor decomposition và ứng dụng
Tensor decomposition là kỹ thuật phân rã một tensor phức tạp thành các thành phần đơn giản hơn nhằm giảm chiều dữ liệu, phát hiện đặc trưng tiềm ẩn, hoặc nén dữ liệu hiệu quả. Một số dạng phân rã phổ biến gồm:
- CP (CANDECOMP/PARAFAC) decomposition: Phân rã tensor thành tổng các tích tensor hạng-1
- Tucker decomposition: Phân rã thành core tensor và các ma trận nhân ở từng chiều
- Tensor Train (TT): Chuỗi các ma trận 3 chiều để mô hình hóa tensor bậc cao
Ứng dụng của các phương pháp phân rã này rất rộng rãi, từ xử lý tín hiệu, nén ảnh, cho đến phân tích mạng xã hội và hệ thống gợi ý. Ví dụ:
- Hệ thống khuyến nghị: Phân rã tensor người – sản phẩm – thời gian để dự đoán hành vi
- Phân tích dữ liệu sinh học: Dữ liệu gene có thể biểu diễn dưới dạng tensor nhiều chiều
- Nhận dạng mẫu: Tensor giúp trích xuất đặc trưng từ ảnh/video hiệu quả hơn ma trận
Nhiều nghiên cứu về tensor decomposition có thể được tham khảo từ SIAM Journal on Matrix Analysis and Applications.
Tensor trong khoa học và kỹ thuật
Tensor không chỉ tồn tại trong lý thuyết mà còn đóng vai trò thiết yếu trong nhiều ngành khoa học và kỹ thuật. Dưới đây là một số ứng dụng nổi bật:
- Cơ học chất rắn: Tensor ứng suất Cauchy mô tả lực tác động tại mỗi điểm trong vật thể
- Thiên văn học: Trường hấp dẫn mô hình hoá bởi tensor metric trong thuyết tương đối
- Khoa học vật liệu: Mô tả các đặc tính như dẫn điện, dẫn nhiệt bằng tensor đối xứng
- Khoa học dữ liệu: Tensor dùng để biểu diễn dữ liệu đa chiều như ảnh y khoa, chuỗi thời gian
Khả năng biểu diễn mối quan hệ phức tạp trong không gian nhiều chiều khiến tensor trở thành công cụ không thể thay thế trong mô hình hoá và phân tích hệ thống thực tế.
Tài liệu tham khảo
Các bài báo, nghiên cứu, công bố khoa học về chủ đề tensor:
- 1
- 2
- 3
- 4
- 5
- 6
- 10