Không giống như các phương pháp đã xem xét trước đây, các thuật toán tổng hợp vùng lân cận này dựa vào các đặc trưng hoặc thuộc tính của đỉnh (ký hiệu là 𝐱𝑖 ∈ ℝ𝑚) để tạo ra các phép nhúng. Ví dụ mạng xã hội có thể có dữ liệu văn bản như thơng tin hồ sơ người dùng, các phương pháp tổng hợp vùng lân cận tận dụng thơng tin thuộc tính này để tạo ra các phép nhúng. Trong trường hợp khơng có dữ liệu thuộc tính, các phương pháp này có thể sử dụng thống kê đồ thị đơn giản làm thuộc tính (ví dụ như bậc của đỉnh) [9] hoặc gán cho mỗi đỉnh một vectơ chỉ báo one-hot làm thuộc tính [10]. Các phương pháp này thường được gọi là tích chập vì chúng biểu diễn một đỉnh như là một hàm phụ thuộc vùng lân cận xung quanh đỉnh đó, cách thức tương tự như vùng tiếp nhận của một lõi chập trung tâm trong lĩnh vực thị giác máy tính.
Một số phương pháp gần đây áp dụng hướng tiếp cận trên như phương pháp mạng tích chập đồ thị (Graph convolutional networks – GCN), đồ thị cột (column network) và GraphSAGE.
1.3. Ứng dụng của việc biểu diễn đồ thị bằng phương pháp nhúng đỉnh
Nhúng đỉnh đồ thị được sử dụng phổ biến để phục vụ cho việc trực quan hóa, phân cụm, phân loại đỉnh và dự đoán liên kết, và mỗi trường hợp sử dụng này đều có liên quan mật thiết đến các lĩnh vực ứng dụng cụ thể, từ khoa học xã hội cho đến vật lý y sinh, phân tử.
Trực quan hóa và phân tích mẫu. Vấn đề trực quan hóa đồ thị dưới dạng
2D đã có lịch sử lâu đời, với các ứng dụng xuyên suốt quá trình khai phá dữ liệu. Nhúng đỉnh đồ thị cung cấp một mơ hình mới mạnh mẽ để trực quan hóa đồ thị: do các đỉnh được ánh xạ đến các vector giá trị thực, các nhà nghiên cứu có thể dễ dàng sử dụng các kỹ thuật chung hiện có để trực quan hóa các bộ dữ liệu số chiều lớn. Ví dụ: nhúng đỉnh có thể được kết hợp với các kỹ thuật phổ biến như phân tích các thành phần chính (PCA) để tạo ra các hình ảnh trực quan 2D về đồ thị, từ đó có thể có hiệu quả cho việc khám phá các cộng đồng và các cấu trúc ẩn khác bên trong đồ thị.
Phân cụm và phát hiện cộng đồng. Tương tự như việc trực quan hóa,
nhúng đỉnh là một cơng cụ mạnh mẽ để gom nhóm các đỉnh có liên quan [11], là một tác vụ có vơ số ứng dụng từ sinh học tính tốn (ví dụ: khám phá các loại thuốc liên quan) đến hoạt động marketing (ví dụ: khám phá các sản phẩm liên quan). Một lần nữa, vì mỗi đỉnh được liên kết với nhúng vector giá trị thực, nên có thể áp dụng bất kỳ thuật toán phân cụm chung nào cho tập hợp các phép nhúng đỉnh đã học (ví dụ: k-mean). Điều này cung cấp một giải pháp thay thế mạnh mẽ cho các kỹ thuật phát hiện cộng đồng truyền thống, đồng thời nó cũng mở ra các cơ hội phương pháp luận mới, vì các phép nhúng đỉnh có thể phát hiện được các vai trị chức năng hoặc cấu trúc do các đỉnh khác nhau đảm nhận, thay vì chỉ tìm ra cấu trúc cộng đồng.
Phân loại đỉnh và học bán giám sát. Phân loại đỉnh là tác vụ để kiểm
chuẩn phổ biến nhất được sử dụng để đánh giá phép nhúng đỉnh. Trong hầu hết các trường hợp, nhiệm vụ phân loại đỉnh là một hình thức học bán giám sát, trong đó các nhãn chỉ có sẵn cho một tỷ lệ nhỏ các đỉnh, với mục tiêu là gắn nhãn cho đồ thị đầy đủ chỉ dựa trên tập nhỏ ban đầu này. Các ứng dụng phổ biến của phân loại nút bán giám sát như trong lĩnh vực y sinh là phân loại protein theo chức năng sinh học của chúng, đối với mạng xã hội như phân loại tài liệu, video, trang web hoặc cá nhân thành các danh mục / cộng đồng khác nhau. Gần đây, các nghiên cứu đã giới thiệu nhiệm vụ phân loại nút quy nạp, trong đó mục tiêu là phân loại các nút khơng được nhìn thấy trong q trình huấn luyện, ví dụ: phân loại các tài liệu mới trong các đồ thị thông tin đang phát triển hoặc tổng quát hóa thành mạng lưới tương tác protein-protein khơng nhìn thấy được.
Dự đốn liên kết. Nhúng đỉnh cũng cực kỳ hữu dụng để dự đoán liên kết,
trong đó mục tiêu là dự đốn các cạnh bị thiếu hoặc các cạnh có khả năng hình thành trong tương lai. Dự đoán liên kết là cốt lõi của hệ thống khuyến nghị và các ứng dụng phổ biến của nhúng đỉnh phản ánh kết nối sâu sắc này, bao gồm dự đốn các liên kết bạn bè cịn thiếu trong mạng xã hội và mối quan hệ giữa người dùng và bộ phim họ thích. Dự đốn liên kết cũng có những ứng dụng quan trọng trong
sinh học tính tốn. Nhiều đồ thị tương tác sinh học (ví dụ, giữa protein và các protein khác, hoặc giữa thuốc và bệnh) khơng hồn chỉnh vì chúng dựa trên dữ liệu thu được từ các thí nghiệm tốn kém trong phịng thí nghiệm. Dự đốn các liên kết trong các đồ thị nhiễu này là một phương pháp quan trọng để tự động mở rộng bộ dữ liệu sinh học và đề xuất các hướng mới cho thí nghiệm. Nói một cách tổng quát hơn, dự đốn liên kết có liên quan chặt chẽ với học quan hệ thống kê, trong đó nhiệm vụ phổ biến là dự đốn các quan hệ cịn thiếu giữa các thực thể trong một đồ thị tri thức.
1.4. Kết luận
Các phương pháp tiếp cận học biểu diễn cho học máy trên đồ thị cung cấp một giải pháp thay thế mạnh mẽ cho các kỹ thuật đặc trưng truyền thống. Trong những năm gần đây, các hướng tiếp cận này đã liên tục thúc đẩy tạo ra các kỹ thuật hiện đại nhất thực hiện các nhiệm vụ như phân loại đỉnh và dự đoán liên kết. Các phương pháp hiện tại thường được đánh giá dựa trên nhiều thước đo nhấn mạnh vào thuộc tính đồ thị khác nhau (ví dụ cấu trúc cộng đồng, độ bền quan hệ giữa các đỉnh, hay vai trò cấu trúc). Tuy nhiên, vẫn còn nhiều việc phải thực hiện cả trong việc cải thiện hiệu suất của các phương pháp này và trong việc phát triển các khuôn khổ lý thuyết nhất quán để những hướng đổi mới sáng tạo trong tương lai có thể dựa theo đó làm nền tảng.
CHƯƠNG 2. BIỂU DIỄN MẠNG ĐỒ THỊ HAI PHÍA BẰNG PHƯƠNG PHÁP NHÚNG ĐỈNH
Biểu diễn mạng đồ thị bằng phương pháp nhúng đỉnh là phép ánh xạ các đỉnh của đồ thị thành các vector nhúng đã học, các vector nhúng chứa thông tin đã mã hóa về cấu trúc đồ thị, với độ tương tự giữa các vector biểu thị mối quan hệ giữa các đỉnh trong đồ thị. Do đó, các đỉnh nhúng trở thành các đầu vào cho các phương thức học máy thực hiện các tác vụ đa dạng như xếp hạng, dự đoán liên kết, phân cụm, trực quan hóa v.v…
Trong những năm gần đây đã có rất nhiều nghiên cứu về học biểu diễn mạng (network representation learning – NRL), tập trung vào các mạng đồng nhất như mạng xã hội với các đỉnh cùng loại với nhau, hoặc mạng không đồng nhất như đồ thị tri thức với các đỉnh hoặc cạnh khác loại nhau. Mạng hai phía có nhiều ứng dụng trong thực tế như hệ thống khuyến nghị trong thương mại điện tử, hoặc các bộ máy tìm kiếm giữa người dùng và thơng tin trang web, nhưng lại có tương đối ít nghiên cứu dành riêng cho học biểu diễn mạng đối với các mạng đồ thị hai phía. Do đó, cần nghiên cứu đề xuất một phương pháp biểu diễn mạng đồ thị hai phía để phục vụ hữu hiệu cho các bài toán đặt ra trong thực tế.
2.1. Bài tốn biểu diễn mạng đồ thị hai phía
Một trong những phương pháp thường được áp dụng để học biểu diễn mạng đồ thị là các phương pháp bước đi ngẫu nhiên. Phương pháp phổ biến như DeepWalk [2] thường áp dụng hai bước: đầu tiên là thực hiện các bước đi dựa trên phương pháp bước đi ngẫu nhiên trên đồ thị để thu được một “bộ ngữ liệu” (corpus) của các đỉnh; sau đó sử dụng các phương pháp nhúng lên bộ ngữ liệu (ví dụ word2vec) [12] để có được các vector nhúng của các đỉnh. Tuy nhiên, mạng đồ thị hai phía có hai tập đỉnh khác kiểu nhau chứ khơng đồng nhất. Các phương pháp nhúng như DeepWalk, node2vec có thể áp dụng cho mạng đồ thị hai phía khi bỏ qua yếu tố khác kiểu giữa hai tập đỉnh. Mặc dù vậy việc này là khơng tối ưu vì mạng đồ thị hai phía trong thế giới thực liên quan đến quan hệ giữa hai kiểu thực
thể khác nhau, thường có các đặc trưng khác với các loại dữ liệu mạng khác, ví dụ hệ thống khuyến nghị thương mại điện tử cần nắm bắt các mơ hình lọc cộng tác giữa khách hàng và sản phẩm, các cơng cụ tìm kiếm cần xem xét các yếu tố phù hợp giữa truy vấn và trang web. Ngoài ra, phân phối lũy thừa là một đặc điểm phổ biến của mạng đồ thị hai phía [13], nhưng các bộ ngữ liệu được tạo ra bởi các thuật toán bước đi ngẫu nhiên chung có thể khơng bảo tồn được đặc tính này. Các bước đi ngẫu nhiên có độ dài cố định sẽ làm giới hạn thông tin của các đỉnh bậc cao và chồng lấn thông tin các đỉnh bậc thấp [14].
Để giải quyết các hạn chế này, cần một giải pháp học biểu diễn mạng đồ thị hai phía với các bước thực hiện cải tiến hơn so với các phương pháp trước đây như sau:
- Sử dụng một bộ tạo bước đi ngẫu nhiên lệch và tự thích nghi để bảo tồn được càng nhiều càng tốt đặc trưng phân phối đuôi dài của các đỉnh trong mạng đồ thị hai phía. Số lượng bước đi ngẫu nhiên xuất phát từ mỗi đỉnh sẽ được dựa trên mức độ quan trọng của đỉnh đó và cho phép dừng bước theo xác suất tính tốn thay vì cố định chiều dài của tất cả các bước.
- Sử dụng một bộ tối ưu hóa kết hợp để mơ hình hóa đồng thời các mối quan hệ rõ ràng (các đỉnh khác loại liên kết trực tiếp với nhau) và các mối quan hệ ngầm định (các đỉnh cùng loại có mối liên hệ gián tiếp thông qua liên kết với các đỉnh khác). Mỗi quan hệ được thiết lập một hàm mục tiêu riêng và tối ưu hóa bằng các vector nhúng được chia sẽ chung. Qua đó các mối quan hệ khác nhau sẽ củng cố lẫn nhau và dẫn đến kết quả nhúng đỉnh tốt hơn.
Thiết lập bài toán
Gọi 𝒢 = (𝑈, 𝑉, 𝐸) là một mạng đồ thị hai phía, với 𝑈 và 𝑉 là tập hợp hai loại đỉnh tương ứng, và 𝐸 ⊆ 𝑈 × 𝑉 xác định các cạnh liên kết các đỉnh của hai tập hợp. 𝑢𝑖 và 𝑣𝑗 biểu thị đỉnh thứ i của tập 𝑈 và đỉnh thứ j của tập 𝑉, với 𝑖 = 1, 2, … , |𝑈| và 𝑗 = 1, 2, … , |𝑉|. Mỗi cạnh mang một trọng số không âm 𝑤𝑖𝑗, biểu
thị độ bền liên kết giữa các đỉnh 𝑢𝑖 và 𝑣𝑗; nếu 𝑢𝑖 và 𝑣𝑗 khơng có liên kết, trọng số cạnh 𝑤𝑖𝑗 là 0. Do đó ta có thể sử dụng một ma trận 𝐖 = [𝑤𝑖𝑗] có kích thước |𝑈| × |𝑉| để biểu thị cấu trúc trọng số liên kết của mạng đồ thị hai phía.
Yêu cầu: Mục tiêu của việc nhúng mạng đồ thị hai phía là để ánh xạ tất cả
các đỉnh của mạng đồ thị vào một không gian nhúng số chiều thấp, với mỗi đỉnh được biểu diễn là một vector mật độ dày đặc. Trong không gian nhúng, cả các quan hệ gián tiếp giữa các đỉnh thuộc cùng kiểu và các quan hệ trực tiếp giữa các đỉnh khác kiểu cần phải được bảo toàn.
Đầu vào: Một mạng đồ thị hai phía 𝒢 = (𝑈, 𝑉, 𝐸) và ma trận trọng số liên
kết W.
Đầu ra: Một hàm ánh xạ 𝑓 ∶ 𝑈 ∪ 𝑉 → ℝ𝑑, sẽ ánh xạ mỗi đỉnh trong 𝐺 thành một vector nhúng có số chiều là d.
Sử dụng ký hiệu 𝐮𝑖 và 𝐯𝑗 để biểu thị các vector nhúng của các đỉnh 𝑢𝑖 và 𝑣𝑗 tương ứng, biểu diễn các vector nhúng của tất cả các đỉnh trong mạng đồ thị hai phía thành hai ma trận 𝐔 = [𝐮𝑖] và 𝐕 = [𝐯𝑖].
Các ký hiệu khác được sử dụng như sau:
Ký hiệu Diễn giải
𝓖 = (𝑼, 𝑽, 𝑬) Mạng đồ thị hai phía 𝑼 = {𝒖𝒊}𝒊=𝟏|𝑼| Tập các user (người dùng) 𝑽 = {𝒗𝒋} 𝒋=𝟏 |𝑽| Tập các item (món hàng) 𝑬 ⊆ 𝑼 × 𝑽 Tập các cạnh liên kết 𝐖 Ma trận trọng số 𝒘𝒊,𝒋 Một phần tử của ma trận trọng số W 𝐮𝒊, 𝐯𝒋 Vector nhúng của 𝑢𝑖, 𝑣𝑗
𝜽𝒊, 𝝑𝒋 Vector nhúng của 𝑢𝑖, 𝑣𝑗 theo ngữ cảnh
Ký hiệu Diễn giải
𝐕 = [𝐯𝒋] Vector nhúng của item
𝑫(𝑼), 𝑫(𝑽) Bộ ngữ liệu tạo ra từ tập đỉnh U, tập đỉnh V
2.2. Phương pháp nhúng đỉnh đồ thị hai phía đề xuất
Mục tiêu của học nhúng đỉnh là kết quả các phép nhúng có khả năng phục dựng lại tốt nhất cấu trúc mạng ban đầu. Trong khi cấu trúc của các mạng bình thường chủ yếu được phản ánh trong các cạnh được quan sát, đối với mạng đồ thị hai phía lại phức tạp hơn, hai đỉnh của cùng một nhóm mặc dù khơng được kết nối trực tiếp với nhau nhưng điều đó khơng có nghĩa là khơng có mối quan hệ giữa hai đỉnh đó. Do đó, việc lập mơ hình chỉ quan tâm các cạnh quan sát được là không đủ để giữ được độ chân thực của mơ hình, điều này đặt ra những thách thức đối với việc nhúng mạng đồ thị hai phía. Phần sau trình bày phương pháp nhúng đỉnh đồ thị xét đến cả các quan hệ quan sát được và các quan hệ không quan sát được nhưng có tính bắc cầu, sau đó phép nhúng cuối cùng đạt được bằng cách tối ưu hóa cả hai tác vụ trên.
2.2.1. Mơ hình hóa các quan hệ trực tiếp
Cạnh giữa các đỉnh khác loại nhau là biểu thị rõ ràng cho quan hệ trực tiếp giữa chúng trong mạng đồ thị hai phía. Phép nhúng bảo tồn thơng tin cấu trúc các quan hệ này bằng việc tối thiểu hóa sự khác biệt giữa phân phối thực tế xác suất đồng xuất hiện đỉnh và phân phối được tái tạo lại của phép nhúng đỉnh. Xác suất đồng xuất hiện giữa hai đỉnh liên kết 𝑢𝑖 và 𝑣𝑗 trong mạng đồ thị hai phía được định nghĩa là:
𝑃(𝑖, 𝑗) = 𝑤𝑖𝑗
∑𝑒𝑠𝑡∈𝐸𝑤𝑠𝑡 (2.1) với 𝑤𝑖𝑗 là trọng số của cạnh 𝑒𝑖𝑗. Ngoài ra, xấp xỉ cục bộ giữa các cạnh trong khơng gian nhúng có thể được ước lượng bởi tích vơ hướng [5], do đó khơng gian xác suất của tương tác trên có thể được biểu diễn qua hàm sigmoid:
𝑃̂(𝑖, 𝑗) = 1
1+exp (−𝐮𝑖𝑇𝐯𝑗) (2.2)
với 𝐮𝑖 ∈ ℝ𝑑 và 𝐯𝑗 ∈ ℝ𝑑 là các vector nhúng của các đỉnh 𝑢𝑖 và 𝑣𝑗 tương ứng.
Sau khi có được phân phối thực tế và phân phối phục dựng, sử dụng độ đo phân kỳ Kullback–Leibler (KL-divergence) để đo sự khác biệt giữa hai phân phối, và học các vector nhúng bằng cách tối thiểu sự khác biệt. Do vậy, hàm mục tiêu có thể được định nghĩa như sau:
𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑒 𝑂1 = 𝐾𝐿(𝑃||𝑃̂) = ∑ 𝑃(𝑖, 𝑗)𝑙𝑜𝑔 (𝑃(𝑖,𝑗)
𝑃̂(𝑖,𝑗))
𝑒𝑖𝑗∈𝐸
∝ − ∑𝑒𝑖𝑗∈𝐸𝑤𝑖𝑗𝑙𝑜𝑔𝑃̂(𝑖, 𝑗) (2.3) Một cách trực quan, hai đỉnh được kết nối chặt chẽ trong đồ thị ban đầu sẽ gần nhau trong không gian nhúng bằng cách tối thiểu hóa hàm mục tiêu, do đó thơng tin cấu trúc các quan hệ trực tiếp được bảo toàn.
2.2.2. Mơ hình hóa các quan hệ gián tiếp bằng bước đi nhẫu nhiên
Trong mạng đồ thị hai phía trong thực tế, các mối quan hệ gián tiếp thông qua các bước trung gian đóng vai trị quan trọng trong bối cảnh chung của cả hệ thống. Việc mơ hình hóa các quan hệ gián tiếp giữa các đỉnh cùng loại sẽ mang lại hiệu quả bổ sung ngồi mơ hình hóa các quan hệ trực tiếp. Về mặt trực quan, nếu tồn tại một đường đi giữa hai đỉnh có nghĩa là có một mối quan hệ gián tiếp nào đó giữa chúng; số lượng các đường đi và chiều dài của chúng cho biết độ bền của mối quan hệ. Tuy nhiên, việc đếm đường đi giữa hai đỉnh có độ phức tạp rất cao, điều này không thể đáp ứng được đối với các mạng quy mơ lớn. Để mã hóa các mối quan hệ gián tiếp bậc cao như vậy giữa các đỉnh trong mạng đồ thị hai phía