Geometric Deep Learning (GDL)
Học sâu hình học (GDL) tích hợp các tính chất đối xứng của lưới, đồ thị, mesh và đám mây điểm vào mạng neural, thống nhất CNN, GNN và Transformer.
Deep learning hình học (GDL) là nhánh của deep learning thiết kế mạng nơ-ron dựa trên cấu trúc và tính đối xứng của dữ liệu, dù dữ liệu nằm trên lưới pixel, đồ thị, tập hợp điểm, mặt cầu hay bề mặt cong. Ý tưởng cốt lõi là model cần phản hồi một cách có thể dự đoán khi đầu vào thay đổi theo cách không làm thay đổi ý nghĩa, chẳng hạn dịch chuyển ảnh, đổi nhãn các nguyên tử trong phân tử hoặc xoay ảnh quét 3D. Michael Bronstein, Joan Bruna, Yann LeCun, Arthur Szlam và Pierre Vandergheynst phổ biến tên gọi này trong bài khảo sát năm 2017 Geometric Deep Learning: Going Beyond Euclidean Data; sách nhập môn năm 2021 của Bronstein, Bruna, Taco Cohen và Petar Veličković tổ chức lĩnh vực này xoay quanh năm miền: lưới, nhóm, đồ thị, đường trắc địa và gauge.
Bất biến, tương biến và khung kiến trúc GDL#
Hai thuộc tính đóng vai trò chủ đạo. Một hàm bất biến với phép biến đổi khi đầu ra giữ nguyên, chẳng hạn nhãn phân loại ảnh vẫn phải là "mèo" khi con mèo di chuyển. Hàm tương biến khi đầu ra biến đổi theo đầu vào, chẳng hạn mask phân đoạn ngữ nghĩa phải dịch chuyển cùng đối tượng. Khung kiến trúc GDL xếp chồng các lớp tương biến để trộn thông tin giữa các láng giềng, các bước pooling để làm thô miền, và một bước đọc đầu ra bất biến cuối cùng khi tác vụ chỉ cần một đáp án. Lựa chọn nhóm đối xứng của miền sẽ tạo ra các kiến trúc quen thuộc:
Phép tích chập chia sẻ cùng một kernel trên mọi vị trí pixel, vì vậy mạng nơ-ron tích chập (CNN) là trường hợp tương biến tịnh tiến trên lưới. Mạng nơ-ron đồ thị (GNN) áp dụng cùng một hàm dọc theo mọi cạnh, nên việc đổi nhãn các nút chỉ làm đổi thứ tự đầu ra. Transformer xem các token như một đồ thị kết nối đầy đủ; do self-attention tương biến với phép hoán vị, model cần mã hóa vị trí để nhận biết thứ tự token. GNN là các model GDL nổi tiếng nhất; GDL là khung rộng hơn giải thích cả ba kiến trúc. CNN tương biến theo nhóm, do Taco Cohen và Max Welling giới thiệu năm 2016, mở rộng việc chia sẻ trọng số sang phép xoay và phản chiếu; mạng lưới tam giác và mạng đa tạp định nghĩa phép tích chập trong các hệ tọa độ cục bộ trên bề mặt cong.
Ultralytics YOLO26 thuộc trường hợp lưới: các phép tích chập chia sẻ trọng số trên mọi vị trí pixel, còn các tính đối xứng mà kiến trúc không tích hợp sẵn được đưa vào qua tăng cường dữ liệu. Theo mặc định, quá trình huấn luyện phản chiếu mỗi ảnh theo chiều ngang với xác suất fliplr=0.5, còn lật dọc (flipud) và xoay ngẫu nhiên (degrees) được tắt.
Truyền thông điệp trên đồ thị#
Các model đồ thị trong GDL được xây dựng dựa trên cơ chế truyền thông điệp. Mỗi nút thu thập thông điệp từ các nút lân cận, kết hợp chúng bằng một hàm không phụ thuộc thứ tự như tổng, trung bình hoặc giá trị lớn nhất, rồi cập nhật embedding của chính nó. Năm 2017, Justin Gilmer và các cộng sự tại Google cho thấy nhiều kiến trúc đồ thị phù hợp với cơ chế truyền thông điệp này, đồng thời sử dụng cơ chế đó để dự đoán các tính chất hóa học lượng tử của phân tử. Đổi nhãn các nút trong một đồ thị nhỏ giúp kiểm tra trực tiếp cả hai tính chất đối xứng:
import torch
torch.manual_seed(0)
nodes = torch.randn(5, 3) # 5 nguyên tử hoặc người dùng, mỗi nút có 3 đặc trưng
adjacency = torch.zeros(5, 5)
edges = torch.tensor([[0, 1], [1, 2], [0, 2], [2, 3], [3, 4]])
adjacency[edges[:, 0], edges[:, 1]] = adjacency[edges[:, 1], edges[:, 0]] = 1
w_self, w_neighbors, w_dense = torch.randn(3, 4), torch.randn(3, 4), torch.randn(15, 4)
# Đổi nhãn các nút theo thứ tự ngẫu nhiên: cùng một đồ thị, chỉ được liệt kê theo cách khác
order = torch.randperm(5)
nodes_p, adjacency_p = nodes[order], adjacency[order][:, order]
# Truyền thông điệp: mỗi nút kết hợp đặc trưng của chính nó với tổng đặc trưng của các nút lân cận
out = torch.relu(nodes @ w_self + adjacency @ nodes @ w_neighbors)
out_p = torch.relu(nodes_p @ w_self + adjacency_p @ nodes_p @ w_neighbors)
print(torch.allclose(out_p, out[order])) # tương biến: đầu ra đổi thứ tự cùng các nút
print(torch.allclose(out_p.sum(dim=0), out.sum(dim=0))) # bất biến: kết quả đọc ra ở cấp đồ thị không đổi
# Lớp dense trên danh sách nút đã làm phẳng xem đồ thị được đổi nhãn là dữ liệu mới
print(torch.allclose(nodes_p.flatten() @ w_dense, nodes.flatten() @ w_dense))Kết quả in ra True, True và False. Đầu ra của lớp truyền thông điệp đổi thứ tự chính xác theo các nút, kết quả đọc tổng hợp ở cấp đồ thị không thay đổi, còn lớp dense thông thường cho ra đáp án khác khi cùng một đồ thị được liệt kê theo thứ tự khác. PyTorch Geometric đóng gói hàng chục lớp như vậy cùng chức năng batching cho đồ thị có kích thước khác nhau.
Ứng dụng#
Phân tử là đồ thị gồm các nguyên tử và liên kết, vì vậy mạng truyền thông điệp dự đoán các tính chất như độ hòa tan và khả năng liên kết phục vụ khám phá thuốc. Protein có thêm hình học 3D: AlphaFold 2 tinh chỉnh cấu trúc dự đoán bằng attention điểm bất biến, tạo ra cùng kết quả khi toàn bộ protein được xoay hoặc tịnh tiến trong không gian.
LiDAR và cảm biến độ sâu tạo ra đám mây điểm, tức các tập hợp điểm 3D không có thứ tự. PointNet, do Charles Qi và các cộng sự tại Stanford giới thiệu năm 2017, áp dụng một mạng dùng chung cho mọi điểm rồi pooling cực đại các kết quả, nên đầu ra không phụ thuộc vào thứ tự điểm; thiết kế này là nền tảng cho nhiều hệ thống phát hiện đối tượng 3D phục vụ xe tự hành và robotics. Đồ thị xã hội và thương mại gồm người dùng và mặt hàng là nền tảng cho các hệ thống gợi ý dựa trên GNN như PinSage của Pinterest; đồ thị tri thức cũng áp dụng cơ chế truyền thông điệp tương tự cho thực thể và mối quan hệ giữa chúng.
Model thời tiết hoạt động trên mặt cầu. GraphCast, do Google DeepMind công bố trên Science năm 2023, truyền thông điệp trên lưới đa tỷ lệ được tạo bằng cách tinh chỉnh một khối hai mươi mặt quanh địa cầu, rồi dự báo hàng trăm biến số trước 10 ngày ở độ phân giải 0.25° trong chưa đầy một phút; model vượt trội so với dự báo tất định vận hành hàng đầu HRES của ECMWF trên 90% trong số 1,380 mục tiêu kiểm chứng.










