Gần đây tôi đã bắt gặp các đồ thị nhúng như DeepWalk và LINE. Tuy nhiên, tôi vẫn chưa có ý tưởng rõ ràng về ý nghĩa của việc nhúng đồ thị và khi nào nên sử dụng nó (ứng dụng)? Mọi góp ý đều được chào đón!
Gần đây tôi đã bắt gặp các đồ thị nhúng như DeepWalk và LINE. Tuy nhiên, tôi vẫn chưa có ý tưởng rõ ràng về ý nghĩa của việc nhúng đồ thị và khi nào nên sử dụng nó (ứng dụng)? Mọi góp ý đều được chào đón!
Câu trả lời:
Việc nhúng đồ thị học cách ánh xạ từ mạng sang không gian vectơ, trong khi vẫn bảo tồn các thuộc tính mạng có liên quan.
Không gian vectơ phù hợp với khoa học dữ liệu hơn đồ thị. Đồ thị chứa các cạnh và nút, các mối quan hệ mạng đó chỉ có thể sử dụng một tập hợp con cụ thể của toán học, thống kê và học máy. Không gian vectơ có bộ công cụ phong phú hơn từ các miền đó. Ngoài ra, các phép toán vectơ thường đơn giản và nhanh hơn các phép toán đồ thị tương đương.
Một ví dụ là tìm hàng xóm gần nhất. Bạn có thể thực hiện "bước nhảy" từ nút này sang nút khác trong biểu đồ. Trong nhiều biểu đồ trong thế giới thực sau một vài bước nhảy, có rất ít thông tin có ý nghĩa (ví dụ: đề xuất từ bạn của bạn của bạn bè). Tuy nhiên, trong không gian vectơ, bạn có thể sử dụng các số liệu khoảng cách để có được kết quả định lượng (ví dụ: khoảng cách Euclidian hoặc Tương tự Cosine). Nếu bạn có số liệu khoảng cách định lượng trong một không gian vectơ có ý nghĩa, việc tìm hàng xóm gần nhất là điều đơn giản.
" Các kỹ thuật, ứng dụng và hiệu suất nhúng đồ thị: Khảo sát " là một bài viết tổng quan đi sâu vào chi tiết hơn.
Đồ thị nhúng là gì? "Đồ họa nhúng" là một lĩnh vực nóng hiện nay trong học máy. Về cơ bản, nó có nghĩa là tìm "biểu diễn vectơ tiềm ẩn" của các biểu đồ nắm bắt cấu trúc liên kết (theo nghĩa rất cơ bản) của biểu đồ. Chúng ta có thể làm cho "biểu diễn vectơ" này trở nên phong phú bằng cách xem xét các mối quan hệ đỉnh-đỉnh, thông tin cạnh, v.v. Có khoảng hai cấp độ nhúng trong biểu đồ (tất nhiên chúng ta có thể xác định nhiều cấp độ hơn bằng cách chia logic toàn bộ biểu đồ thành biểu đồ con có kích thước khác nhau):
Ứng dụng - Bằng cách xem xét cẩn thận, các nhúng là các biểu diễn "tiềm ẩn" có nghĩa là nếu biểu đồ có | V | * | V | ma trận kề trong đó | V | = 1M, thật khó để sử dụng hoặc xử lý số 1M * 1M trong thuật toán. Vì vậy, việc nhúng kích thước tiềm ẩn 'd', trong đó d << | V |, sẽ tạo ra ma trận kề | V | * d và tương đối dễ sử dụng hơn. Một ứng dụng khác có thể là - Hãy xem xét một kịch bản đơn giản trong đó chúng tôi muốn giới thiệu sản phẩm cho những người có cùng sở thích trong mạng xã hội. Bằng cách lấy các đỉnh nhúng (ở đây có nghĩa là biểu diễn vectơ của mỗi người), chúng ta có thể tìm thấy các vectơ tương tự bằng cách vẽ các vectơ này và điều này làm cho khuyến nghị dễ dàng. Đây là một số ứng dụng và có những ứng dụng khác. Bạn có thể tham khảo một bài khảo sát hay - Kỹ thuật nhúng đồ thị, khảo sát .
Tất cả từ đâu đến? Đã có rất nhiều công trình trong lĩnh vực này và gần như tất cả đều đến từ nghiên cứu đột phá trong lĩnh vực xử lý ngôn ngữ tự nhiên - "Word2Vec" của Mikolov. Nếu bạn muốn bắt đầu với nghiên cứu về nhúng đồ thị, trước tiên tôi khuyên bạn nên hiểu cách hoạt động của Word2Vec. Bạn có thể tìm thấy những lời giải thích hay - học về tham số Word2Vec và Bài giảng Stanford . Sau đó, bạn có thể chuyển đến các giấy tờ mà bạn liệt kê. Những tác phẩm có thể được phân loại như:
Hoạt động dựa trên "Vertex Embeddings": - DeepWalk , Node2Vec , LINE .
Hoạt động dựa trên "Đồ thị nhúng": - Hạt nhân đồ thị sâu , Subgraph2Vec .
Trong bài báo Một định lý giới hạn trung tâm cho một omnibus nhúng các đồ thị sản phẩm chấm ngẫu nhiên của Levin et.al. giấy, một loại nhúng đồ thị cụ thể (nhúng Omnibus) định nghĩa nhúng đồ thị là một phương pháp "trong đó các đỉnh của đồ thị được ánh xạ tới các vectơ trong không gian Euclide chiều thấp." Kiểm tra liên kết để biết thêm thông tin.