Hệ gợi ý là lĩnh vực nghiên cứu hiện đang rất được các nhà khoa học quan tâm.Có nhiều cách tiếp cận hệ gợi ý, tuy nhiên, gần đây mô hình học sâu Deep Learning, hay làmạng nơ-ron đồ thị G
Sơ lược về hệ gợi ý
Hệ gợi ý (RS) là một dạng của hệ thống lọc thông tin, nó được sử dụng để dự đoán sở thích của người dùng hay xếp hạng mà người dùng có thể dành cho một sản phẩm nào đó, sản phẩm có thể là bộ phim, bài hát, video, bài báo, sách, Các chương trình cố gắng dự đoán các sản phẩm mà người dùng có thể quan tâm thông qua lịch sử người dùng trước đó như: thông qua việc xếp hạng của người dùng lên sản phẩm, thời gian duyệt trên sản phẩm, tỉ lệ nhấp chuột, mua một mặt hàng, truy cập trang, xem một video Từ đó cung cấp lựa chọn các sản phẩm (được dự đoán là "tốt" cho người dùng), giúp cải thiện trải nghiệm người dùng và thúc đẩy lợi nhuận kinh doanh Hệ gợi ý là một trong những ứng dụng của học máy được thúc đẩy bởi thế giới thực, nó là chủ đề rất được các nhà khoa học quan tâm Kể từ năm 2007 đến nay, hàng năm đều có hội thảo chuyên về hệ gợi ý của ACM (ACM RecSys [3]) cũng như các tiểu bang dành riêng cho hệ gợi ý trong các hội nghị lớn khác như ACM KDD [4], ACM CIKM[5],
Các nhiệm vụ trong hệ gợi ý
Trong RS thường quan tâm đến 3 yếu tố chính: người dùng (user), sản phẩm (item) và các xếp hạng (rating) của người dùng trên sản phẩm Các thông tin này được biểu diễn trên một ma trận như Hình 1.1 Trong đó, mỗi dòng là 1 user, mỗi cột là một item và mỗi ô là một giá trị xếp hạng của user trên item tương ứng Những ô có giá trị là những item đã được user xếp hạng trong quá khứ, các ô trống là những item chưa được xếp hạng (ma trận này gọi là ma trận thưa).
Hình 1.1: Ma trận biểu diễn dữ liệu trong RS
Nhiệm vụ của RS là thu thập các xếp hạng đã có trong ma trận, ngoại suy các xếp hạng còn trống từ các xếp hạng đã biết, ước tính các xếp hạng cho cácitem chưa được quan tâm bởi user, gợi ý cácitem có xếp hạng ước tính cao nhất cho user.
Bài toán hệ gợi ý
C là tập người dùng, mỗi người dùng ci ∈C có các đặc điểmI ={i1, i2, , in}.
S là tập các sản phẩm, mỗi sản phẩmsj ∈Scó các thuộc tínhJ ={j1, j2, , jm}.
Ma trận R = (rij) là tập các giá trị xếp hạng của người dùng ci cho sản phẩm s j Đầu ra
Danh sách các sản phẩms j ∈S có độ phù hợp nhất với người dùngc i ∈C. Để giải bài toán này, chúng ta xây dựng hàmu(c i , s j ) để đo độ phù hợp của sản phẩm s j đối với người dùng c i , từ đó có thể dự đoán danh sách các sản phẩm được cho là phù hợp nhất với người dùng.
Các cách xây dựng hàm u chủ yếu phụ thuộc vào các yếu tố sau: Đặc điểm của người dùng c i (lọc theo nội dung người dùng) Ví dụ: Nếu người dùng là nữ thì xu hướng sẽ mua các sản phẩm của nữ hơn các sản phẩm của nam, Đặc điểm của sản phẩm s j (lọc theo nội dung sản phẩm) Ví dụ: Những sản phẩm có những đặc điểm giống nhau có khả năng được người dùng đánh giá như nhau Chẳng hạn, những bộ phim có cùng diễn viên, đạo diễn, thể loại,
Lịch sử giao dịch của người dùng c i : Từ các lịch sử giao dịch của người dùng có thể dự đoán các nội dung mà người dùng quan tâm, do đó các sản phẩm có cùng lĩnh vực sẽ có độ liên quan cao hơn.
Những người dùngc k khác có cùng đặc điểm giống c i : Những người dùng giống nhau về sở thích thì sẽ đánh giá những sản phẩm giống nhau.
Một số kỹ thuật gợi ý
Lọc dựa trên nội dung
Lọc dựa trên nội dung: Dựa vào dữ liệu về các item mà user đã quan tâm trong quá khứ để tính độ tương tự với các item trong hệ thống Từ đó, gợi ý các item tương tự với item mà user đã thích, đã mua, hoặc đã xem trong quá khứ. Ý tưởng của phương pháp này là, nếu một user quan tâm item A thì cũng có thể quan tâmitem B tương tự A.
Gợi ý những item phù hợp với sở thích của từng user riêng biệt.
Hạn chế: Đối vớiuser mới, vì không có lịch sử vềitem trên hệ thống, hoặc rất ít đánh giá vềitem nên hệ thống không thể cung cấp gợi ý phù hợp.
Lọc cộng tác
Lọc cộng tác: Là phương pháp gợi ý phổ biến Phương pháp này lưu trữ dữ liệu dưới dạng ma trận: users - items, sau đó phân tích dữ liệu tính toán sự tương đồng giữa các users để đưa ra gợi ý. Ý tưởng của phương pháp này là dựa vào sự đánh giá của những users lên các items Từ đó, dự đoán nhữngusers có cùng sở thích trong quá khứ sẽ có những sở thích tương tự trong tương lai.
Ví dụ: Nếu user A thíchitem tương tự user B thì dự đoán user A có khả năng thích cácitem khác mà user B đã thích, mua, hoặc xem và ngược lại.
Hệ gợi ý dựa trên trải nghiệm của user tương tự khác nên có thể gợi ý những item mới phù hợp với sở thích mới Phương pháp này phù hợp với những hệ thống lớn có nhiều đánh giá từ phía user.
– Đối với user mới, vì không có lịch sử vềitem trên hệ thống, hoặc rất ít đánh giá về item nên hệ thống không thể cung cấp gợi ý phù hợp.
– Hoặc với số lượng item lớn mà lượng đánh giá của user ít thì gợi ý thiếu chính xác.
– Hoặc không thể gợi ý những item mới hoặc nhữngitem chưa được đánh giá.– Hoặc nếu như sở thích của item thay đổi thì khả năng hệ thống đưa ra các gợi ý không chính xác.
Lọc kết hợp
Phương pháp này kết hợp giữa phương pháp lọc dựa trên nội dung và lọc cộng tác bằng nhiều cách như: dựa vào thuộc tính củauser cụ thể để đưa ra các gợi ý đa dạng,tích hợp một số đặc điểm của cách tiếp cận của lọc dựa trên nội dung vào lọc cộng tác,tích hợp một số đặc điểm của lọc cộng tác vào cách tiếp cận lọc dựa trên nội dung,tích hợp cả cách tiếp cận nội dung và lọc cộng tác để đưa ra mô hình phù hợp nhất.
Mạng nơ-ron đồ thị
Học biểu diễn đồ thị
Trong thực tế dữ liệu không chỉ đơn giản ở dạng ảnh hay dạng ngôn ngữ mà nó có thể phức tạp hơn nhiều, ví dụ như mối quan hệ giữa mọi người trong một mạng xã hội, hoặc mối quan hệ giữa các tập tin trong cùng một thư mục, các dữ kiện này không độc lập mà có tính liên kết với nhau nên người ta đã tổng quát hóa lên thành dạng đồ thị, đây là một dạng cấu trúc dữ liệu phổ biến trong lĩnh vực thị giác máy tính, phân tích ảnh, nhận dạng đối tượng, xử lý ngôn ngữ tự nhiên, khai phá dữ liệu,
Tuy nhiên, cấu trúc dữ liệu đồ thị tương đối phức tạp và được chia làm nhiều loại như: đồ thị có hướng, vô hướng, có chu trình và không có chu trình nên việc nghiên cứu các mô hình tính toán phù hợp là cần thiết Trong lĩnh vực mạng nơ-ron nhân tạo, đã có một vài mô hình mạng áp dụng cho dạng dữ liệu này như mạng nơ-ron đệ quy (RNN) [8], [9], [10] Tuy nhiên, mô hình RNN có một số hạn chế RNN không trực tiếp xử lý dữ liệu đồ thị mà trước đó phải tiền xử lý để ánh xạ dữ liệu thành vector điều này làm mất đi một số thông tin quan trọng như quan hệ và hình trạng giữa các nút trong đồ thị.
Vì vậy, mạng nơ-ron đồ thị (GNN) [11], [12] đã được đề xuất phát triển từ RNN để xử lý trực tiếp dữ liệu biểu diễn dưới dạng đồ thị mà không cần tiền xử lý dữ liệu về dạng vector GNN sử dụng phương pháp học sâu (Deep Learning) cho dữ liệu đồ thị để mô tả những đối tượng và mối quan hệ của chúng dưới dạng các điểm được kết nối bằng các đường trong đồ thị.
Nhúng đồ thị
GNN tổng hợp giá trị của các nút lân cận nhau, tuy nhiên các nút trên đồ thị là không có thứ tự và số cạnh liên kết với từng nút là không giống nhau [13] Cách biểu diễn đơn giản nhất cho các nút và cạnh trên đồ thị là việc biểu diễn các nút/cạnh đó dưới dạng các vector nhúng (vector có số chiều nhỏ hơn), tiếp đó sử dụng các nhúng này cho các nhiệm vụ khác như:
Phân loại nút: Dự đoán nhãn của nútv dựa trên nhúng nút o v
Ví dụ: Phân loại người dùng/mặt hàng trực tuyến
Phân loại đồ thị: Dự đoán nhãn dựa trên nhúng đồ thịo g
Ví dụ: Phát hiện tin giả
Dự đoán liên kết: Dự đoán liệu có thiếu liên kết giữa hai nút (bạn, v) dựa trên (o ban ,o v )
Ví dụ: Hệ gợi ý, hoàn thành sơ đồ tri thức
Hình 1.2: Mã hóa một nút thành một vector nhúng có d chiều
Ngoài việc nhúng nút, còn có các loại nhúng khác, ví dụ: nhúng cạnh, nhúng cấu trúc con và nhúng toàn bộ đồ thị (graph embedding) Mục tiêu của nhúng đồ thị là thay vì biểu diễn các nút trong đồ thị một cách riêng lẻ, phương pháp này tạo ra ánh xạ thể hiện được cả mối quan hệ của các nút trong đồ thị, các vector nhúng của nút sẽ được tính toán dựa trên vị trí tương đối của nó với các nút liên quan và lân cận trên đồ thị Các nút tương tự trong đồ thị sẽ có khoảng cách gần nhau hơn trong không gian vector Ví dụ, đối với một câu chúng ta có thể n-gram) Tương tự như vậy, chúng ta có thể định nghĩa ngữ cảnh của một nút trong đồ thị Tuy nhiên chúng ta sẽ có nhiều lựa chọn hơn vì các kết nối của đồ thị đa dạng hơn so với một chuỗi các từ Chúng ta có thể biểu diễn đồ thị dưới dạng ma trận kề, và với mỗi nút, ta có nhiều phương án khác nhau để định nghĩa ngữ cảnh của nút đó.
Hình 1.3: Biểu diễn đồ thị dưới dạng ma trận kề
Ví dụ với một đồ thị như hình dưới, các nút trên đồ thị được ánh xạ sang một không gian nhúng mới với mục tiêu là mã hóa các nút sao cho độ tương tự trong không gian nhúng xấp xỉ độ tương tự trong đồ thị.
Hình 1.4: Các nút trên đồ thị được ánh xạ sang không gian nhúng
Kiến trúc mạng nơ-ron đồ thị
Giả sử có mô hình như sau:
Những nút (node) có các lớp nhúng (layer).
Layer-0 của nút v là dữ liệu đầu vào x v
Nút nhúng (node embedding) tạo ra dựa trên các vùng lân cận cục bộ.
Hình 1.5: Dự đoán giá trị của một nút với 3 lớp
A là nút đang cần dự đoán, nó có liên kết với các nút B, C,D. x A , x B ,x C , là các thuộc tính (features) của từng nút qua từng lớp (layers).
Nút nhúng được tạo ra từ các thuộc tính của các nút lân cận.
Như vậy, với các dữ liệu đồ thị ban đầu dần dần người ta có thể biểu diễn thành nútAmới ở trong một chiều không gian thấp hơn mà vẫn giữ được tính chất của nútA đó với đồ thị ban đầu.
Làm thế nào để tổng hợp thông tin trên các lớp?
Cách tiếp cận cơ bản là áp dụng một mạng đồ thị để tổng hợp thông tin từ các nút lân cận.
Hình 1.6: Tổng hợp thông tin từ các nút lân cận
Nhiều mô hình mạng nơ-ron đã được dùng để tổng hợp thông tin như: GCN, GraphSAGE, GAT, Design Space,
Hình 1.7: Có nhiều mô hình mạng nơ-ron đồ thị được áp dụng để tổng hợp thông tin từ các nút lân cận
Tổng kết chương 1
Trong chương này, chúng tôi đã trình bày sơ lược về hệ gợi ý, các nhiệm vụ trong hệ gợi ý, bài toán hệ gợi ý, một số kỹ thuật gợi ý, đánh giá hệ gợi ý và mạng nơ ron đồ thị Hệ gợi ý là một giải pháp được ứng dụng rộng rãi trong nhiều lĩnh vực nhằm giúp người dùng có thể lựa chọn những sản phẩm cần thiết, tốt nhất phù hợp với nhu cầu, sở thích nhằm tiết kiệm thời gian, chi phí Trong lĩnh vực mạng nơ ron nhân tạo, đã áp dụng nhiều phương pháp cho hệ gợi ý như: lọc cộng tác bằng mạng nơ-ron (NCF), mạng nơron đệ quy (RNN) Tuy nhiên, các phương pháp này không mang lại hiệu quả bằng phương pháp mạng nơ-ron đồ thị (GNN) khi dự đoán cho một tương tác phức tạp giữa người dùng và sản phẩm hay với những dữ liệu vào phức tạp Để khắc phục điều này, trong chương 2 tôi sẽ trình bày về ứng dụng mạng nơ-ron đồ thị (GNN) trong hệ gợi ý.
Mạng nơ-ron đồ thị trong hệ gợi ý
Trong chương này, chúng tôi định nghĩa về đồ thị, trình bày kỹ thuật mạng nơ-ron đồ thị Tiếp theo chúng tôi giới thiệu mạng nơ-ron đồ thị trong gợi ý lọc cộng tác và hai mô hình: NGCF và LightGCN.
2.1 Định nghĩa về đồ thị Đồ thị Gđược biểu diễn dưới dạng G= (V, E): Trong đó
V là tập các nút,E là tập các cạnh vi ∈V là một đỉnh, eij = (vi, vj)∈E là cạnh hướng từ vj tới vi
Vùng lân cận của nút v được kí hiệu là N(v) ={u∈V |(v, u)∈E} Đồ thị có thể được phân loại thành: Đồ thị có hướng/vô hướng Đồ thị có hướng là đồ thị có tất cả các cạnh hướng từ một nút này sang nút khác Đồ thị vô hướng được coi là trường hợp đặc biệt của đồ thị có hướng là một cặp cạnh có hướng ngược nhau nếu hai nút được kết nối với nhau. Đồ thị đồng nhất/không đồng nhất Đồ thị đồng nhất bao gồm một loại nút và các cạnh, và đồ thị không đồng nhất có nhiều loại nút hoặc cạnh.
Siêu đồ thị Siêu đồ thị là sự tổng quát hóa của đồ thị trong đó một cạnh có
Kỹ thuật mạng nơ-ron đồ thị
Với dữ liệu đồ thị, ý tưởng chính của GNN là tổng hợp lặp đi lặp lại thông tin đặc trưng từ các lân cận và tích hợp thông tin tổng hợp với biểu diễn nút trung tâm hiện tại trong quá trình lan truyền [12],[14],[15] GNN xếp chồng nhiều lớp lan truyền, bao gồm các hoạt động tổng hợp và cập nhật Các công thức lan truyền là
U pdate:h (l+1) v =Updater l (h (l) v , n (l) v ) , Ở đây h l u là biểu diễn của nútu tại lớp thứ l, Aggregator l và Updater l là hàm thao tác tổng hợp và cập nhật lại lớp thứ l tương ứng. Ở đây, các hoạt động tổng hợp và cập nhật của năm mô hình GNN điển hình áp dụng rộng rãi trong lĩnh vực gợi ý được tóm tắt như sau:
GCN [27] xấp xỉ phân tích riêng bậc nhất của đồ thị Laplacian để tổng hợp thông tin lặp đi lặp lại từ các lân cận Cụ thể, nó cập nhật nhúng bởi
Trong đú,δ(ã)là hàm kớch hoạt phi tuyến tớnh nhưReLU,W (l) là ma trận chuyển đổi có thể học được cho lớp l, ˜a vj là trọng số kề (˜a vv = 1) và d jj =P ka˜ jk
GraphSAGE [18] lấy mẫu kích thước vùng lân cận cố định cho mỗi nút, tính toán bộ tổng hợp trung bình/tổng/cực đại và áp dụng thao tác nối để cập nhật,
Trong đú Aggregatorl là hàm tổng hợp tại lớpl,δ(ã)là hàm kớch hoạt phi tuyến tính và W (l) là ma trận chuyển đổi có thể học được
GAT [29] Giả sử rằng ảnh hưởng của các nút lân cận không giống hệt nhau cũng như không được xác định trước bởi cấu trúc đồ thị, do đó, nó phân biệt sự đóng góp của các nút lân cận bằng cách tận dụng cơ chế chú ý và cập nhật vectơ của mỗi nút bằng cách tham gia vào các nút lân cận của nó,
Aggregation:n (l) v = X j∈N v a vj h (l) j , a vj exp Att(h (l) v , h (l) j )
Trong đú Att(ã) là hàm chỳ ý và Att(ã) điển hỡnh là LeakyReLU(a T [W (l) h (l) v ⊕
W (l) h (l) j ]), W (l) là chịu trách nhiệm chuyển đổi các biểu diễn nút tại lớp l lan truyền và a là tham số có thể học được.
GGNN [30] sử dụng đơn vị định kỳ có kiểm soát (GRU) [30] trong bước cập nhật,
GGNN thực hiện chức năng lặp lại nhiều lần trên tất cả các nút [12], có thể phải đối mặt với vấn đề về khả năng mở rộng khi nó được áp dụng trong các đồ thị lớn.
HGNN [28] là một mạng nơ-ron siêu đồ thị điển hình, mã hóa mối tương quan dữ liệu bậc cao trong cấu trúc siêu đồ thị Lớp tích chập siêu cạnh có công thức sau:
Trong đú, δ(ã)là hàm kớch hoạt phi tuyến tớnh như ReLU và W (l) là ma trận biến đổi có thể học được cho lớpl,E là ma trận liền kề siêu đồ thị vàD e và D v lần lượt là các ma trận đường chéo của độ cạnh và độ đỉnh.
Hình 2.1: Các cấu trúc đồ thị biểu diễn trong các hệ gợi ý
Mạng nơ-ron đồ thị trong gợi ý lọc cộng tác
Xây dựng đồ thị
Cấu trúc đồ thị là điều cần thiết cho phạm vi và loại thông tin để lan truyền Đồ thị hai phía ban đầu bao gồm một tập hợp các nút người dùng/sản phẩm và các tương tác giữa chúng Áp dụng GNN trên đồ thị hai phía không đồng nhất hay xây dựng đồ thị đồng nhất dựa trên các lân cận hai bước nhảy? Hầu hết các công trình [31], [32], vấn đề trong việc áp dụng trực tiếp GNN trên đồ thị ban đầu: một là tính hiệu quả khi cấu trúc đồ thị ban đầu có thể không đủ để học các biểu diễn người dùng/sản phẩm; một vấn đề khác là tính hiệu quả khi tổng hợp thông tin của các vùng lân cận đầy đủ của các nút đòi hỏi chi phí tính toán cao, đặc biệt đối với đồ thị tỷ lệ lớn [34].
Một chiến lược để giải quyết vấn đề đầu tiên là làm phong phú cấu trúc đồ thị ban đầu bằng cách thêm các cạnh, chẳng hạn như các liên kết giữa các hàng xóm hai bước nhảy Theo cách này, thông tin về khoảng cách giữa người dùng và sản phẩm có thể được kết hợp rõ ràng vào các tương tác giữa người dùng và sản phẩm Về vấn đề thứ hai, các chiến lược lấy mẫu được trình bày để làm cho GNN hiệu quả và có thể mở rộng thành các tác vụ gợi ý dựa trên biểu đồ quy mô lớn PinSage [34] thiết kế phương pháp lấy mẫu dựa trên bước đi ngẫu nhiên để thu được quy mô cố định của các vùng lân cận có số lượt truy cập cao nhất Theo cách này, những nút không liền kề trực tiếp với nút trung tâm cũng có thể trở thành lân cận của nó.
Tổng hợp lân cận
Bước tổng hợp có tầm quan trọng sống còn của việc lan truyền thông tin đối với cấu trúc đồ thị, nó quyết định lượng thông tin của các lân cận sẽ được truyền đi Nhóm trung bình là một trong những hoạt động tổng hợp đơn giản nhất [31], [35], đối xử bình đẳng với các lân cận. n u l = 1
Do chiến lược lấy mẫu bước đi ngẫu nhiên, PinSage [34] chấp nhận lượt truy cập chuẩn hóa được tính là tầm quan trọng của các lân cận khi tổng hợp các biểu diễn vectơ của các lân cận Tuy nhiên, các hàm tổng hợp này xác định tầm quan trọng của các nút lân cận theo cấu trúc đồ thị mà bỏ qua các mối quan hệ giữa các nút được kết nối Được thúc đẩy bởi ý thức chung rằng việc nhúng các sản phẩm phù hợp với sở thích của người dùng nên được chuyển nhiều hơn cho người dùng (tương tự đối với các sản phẩm) NGCF [7] sử dụng sản phẩm thông minh theo yếu tố để tăng cường các tính năng của mặt hàng mà người dùng quan tâm hoặc sở thích của người dùng đối với các tính năng mà mặt hàng đó có Lấy nút người dùng làm ví dụ, biểu diễn hàng xóm tổng hợp được tính như sau: n (l) u = X i∈N u
Cập nhật thông tin
Với thông tin được tổng hợp từ các nút lân cận, cách cập nhật biểu diễn của nút là điều cần thiết để lan truyền thông tin lặp đi lặp lại Theo việc có giữ lại thông tin của nút hay không, các phương pháp hiện có có thể được chia thành hai hướng: một là loại bỏ hoàn toàn thông tin ban đầu của nút người dùng hoặc nút sản phẩm và sử dụng biểu diễn tổng hợp của các lân cận làm biểu diễn nút trung tâm mới [31], [36], có thể bỏ qua sở thích nội tại của người dùng hoặc thuộc tính sản phẩm nội tại; một cách khác là lấy cả hai nút đó (h (l) u ) và thông điệp lân cận của nó (n (l) u ) được xem xét để cập nhật các biểu diễn nút Cách đơn giản nhất là kết hợp cả hai biểu diễn tuyến tính với phép toán gộp tổng hoặc gộp trung bình [7], [35] Lấy cảm hứng bởi GraphSAGE
[18], một số công trình [34], [37] áp dụng hàm ghép nối phi tuyến phép biến đổi để tích hợp hai biểu diễn này như sau: h (l+1) u =σ W (l) ã(h (l) u ⊕n (l) u ) +b (l)
Trong đó σ biểu thị hàm kích hoạt, ví dụ: ReLU, LeakyReLU và sigmoid So với tuyến tính kết hợp, thao tác nối với chuyển đổi tính năng cho phép tính năng phức tạp hơn sự tương tác LightGCN [36] và LR-GCCF [32], [36] nhận thấy rằng kích hoạt phi tuyến đóng góp rất ít vào hiệu suất tổng thể và chúng đơn giản hóa hoạt động cập nhật bằng cách loại bỏ các tính chất phi tuyến tính, do đó duy trì hoặc thậm chí cải thiện hiệu suất và tăng hiệu quả tính toán.
Biểu diễn nút cuối cùng
Áp dụng từng lớp hoạt động tổng hợp và cập nhật sẽ tạo ra các biểu diễn của các nút cho từng độ sâu của GNN Các biểu diễn tổng thể của người dùng và các sản phẩm được yêu cầu cho nhiệm vụ dự đoán cuối cùng.
Cách tiếp cận chính là sử dụng vectơ nút trong lớp cuối cùng làm biểu diễn cuối cùng, tức là, h ∗ u =h (L) u [35],[34],[38] Tuy nhiên, các biểu diễn thu được trong các lớp khác nhau nhấn mạnh các thông điệp được truyền qua các kết nối khác nhau [7] Cụ thể, các biểu diễn ở lớp dưới phản ánh tính năng riêng lẻ nhiều hơn trong khi các biểu diễn ở lớp cao hơn phản ánh tính năng lân cận nhiều hơn Để tận dụng lợi thế của các kết nối được thể hiện bởi đầu ra của các lớp khác nhau, các nghiên cứu gần đây sử dụng các phương pháp khác nhau để tích hợp các thông báo từ các lớp khác nhau.
Concatenation:h ∗ u =h (0) u ⊕h 1 u ⊕ ⊕h (L) u Ở đây, α là một tham số có thể học được, mean-pooling và sum-pooling là hai trường hợp đặc biệt của việc gộp có trọng số, so với mean-pooling và sum-pooling thì Weighted- pooling cho phép linh hoạt hơn để phân biệt đóng góp của các lớp khác nhau Trong số bốn phương pháp này, ba phương pháp trước đều thuộc về hoạt động tuyến tính và chỉ hoạt động nối mới bảo toàn thông tin từ tất cả các lớp.
Mô hình NGCF
Tầng nhúng
Với các mô hình gợi ý cơ bản [7],[17], chúng ta mô tả người dùngu (một sản phẩm i) với một vectơ nhúng e u ∈R d , (e i ∈ R d ), d là kích thước nhúng Xây dựng một ma trận tham số có dạng: Ở đây chúng ta tinh chỉnh các phần nhúng trong mô hình NGCF, một mô hình gợi ý mới dựa trên lọc cộng tác mạng nơ-ron đồ thị, mã hóa rõ ràng tín hiệu cộng tác dưới dạng các kết nối bậc cao bằng cách thực hiện lan truyền nhúng trên đồ thị tương tác giữa người dùng và sản phẩm, nhằm khai thác rõ ràng tín hiệu cộng tác trong chức năng nhúng, giúp cho các kỹ thuật nhúng hiệu quả hơn.
Hình 2.3: Minh họa kiến trúc mô hình NGCF (các đường mũi tên thể hiện luồng thông tin) Các biểu diễn của người dùngeu 1(trái) và sản phẩm ei 4(phải) được tinh chỉnh với nhiều lớp lan truyền nhúng, có đầu ra được kết nối để đưa ra dự đoán cuối cùng.
Tầng lan truyền
Ở đây xây dựng mô hình truyền tin của GNN [7], [18], [19] để thu tín hiệu lọc cộng tác (CF) theo cấu trúc đồ thị và tinh chỉnh các phần nhúng của người dùng và sản phẩm Đầu tiên, minh họa thiết kế lan truyền một lớp, sau đó tổng quát hóa nó thành nhiều lớp liên tiếp.
Các sản phẩm tương tác được cung cấp dấu hiệu về sở thích của người dùng [20], [21]; tương tự, những người dùng sử dụng cùng mặt hàng được coi là các tính năng của mặt hàng đó và được dùng để đo lường sự tương đồng cộng tác của hai mặt hàng. Trên cơ sở này, chúng ta xây dựng lan truyền nhúng giữa người dùng và các sản phẩm với hai hoạt động chính: xây dựng thông tin và tổng hợp thông tin.
Xây dựng thông tin: Với một cặp kết nối người dùng-sản phẩm (u,i), chúng ta xác định thông tin từ sản phẩm đến người dùng như sau: m u←i =f(e i , e u , p ui ) (11) Ở đây mu←i là thông tin nhúng (tức là thông tin được lan truyền) f() là hàm mã hóa thông tin, nhận đầu vào làe i , e u , và dùng hệ số p ui để kiểm soát hệ số phân rã cho mỗi lần lan truyền trên cạnh (u,i).
Công việc này được thực hiện như sau: mu←i = 1 p|N u ||N i |(W 1 e i +W 2 (e i ⊙e u )) (12) Ở đây W 1 ,W 2 ∈R d
′ ×dlà các ma trận trọng số có thể huấn luyện để chắt lọc thông tin hữu ích cho việc lan truyền,d’ là kích thước chuyển đổi,N u và N i là các bước nhảy đầu tiên của người dùng u và sản phẩm i, e i ⊙e u mã hóa sự tương tác giữa e i và e u , với ⊙ là tích từng phần tử, điều này làm cho thông tin phụ thuộc vào mối quan hệ giữa e i và e u , ví dụ truyền nhiều thông tin hơn từ các sản phẩm tương tự Điều này không những làm tăng khả năng biểu diễn mô hình mà còn tăng hiệu suất cho gợi ý. Tổng hợp thông tin: Trong giai đoạn này, chúng ta tổng hợp các thông tin lan truyền từ vùng lân cận củau để tinh chỉnh các biểu diễn củau Cụ thể, chúng ta định nghĩa hàm tổng hợp là: e (1) u =LeakyReLU mu←u+ X i∈N u mu←i
(13) Ở đây e (1) là biểu diễn của người dùng u thu được sau lớp lan truyền nhúng đầu tiên, hàm kích hoạt LeakyReLU [26] cho phép thông tin mã hóa với cả tín hiệu tích cực và tiêu cực Lưu ý rằng ngoài các thông tin lan truyền từ lân cận Nu, ta tự lấy thông tin của u để giữ lại tính năng ban đầu: mu←u = W 1 e u Tương tự, ta có thể có được biểu diễn e (1) u cho sản phẩm i bằng cách truyền thông tin từ những người dùng được kết nối với nó.
Tóm lại lợi thế của lớp lan truyền nhúng nằm ở việc khai thác rõ ràng thông tin lan truyền bậc nhất để liên kết các biểu diễn của người dùng với sản phẩm.
Hình 2.4: Minh họa về lan truyền nhúng bậc 3 cho người dùng u 1
Với các biểu diễn được tăng cường bằng mô hình kết nối bậc nhất, chúng ta có thể xếp chồng nhiều lớp lan truyền nhúng hơn để khám phá thông tin kết nối cấu trúc bậc cao Các kết nối bậc cao mã hóa tín hiệu cộng tác nhằm ước tính điểm số liên quan giữa người dùng và sản phẩm.
Bằng cách xếp chồng các lớp lan truyền nhúng, người dùng (và sản phẩm) có khả năng nhận thông tin được truyền từ lớp l - lớp lân cận Như hình 2.3, ở bước thứ l, biểu diễn của người dùng u được lập công thức đệ quy như sau: e (l) u =LeakyReLU m (l) u←u +X i∈N u m (l) u←i
Trong đó, các thông tin lan truyền được định nghĩa như sau:
(15) Ở đây W 1 (l) , W 2 (l) , ϵR d l ×d l−1 là những ma trận huấn luyện, d l là kích thước chuyển đổi; e l−1 i là sản phẩm được tạo từ các bước truyền thông tin trước đó, ghi nhớ các thông tin từ lớp(l−1)- lớp lân cận Nó tiếp tục góp phần vào việc biểu diễn cho người dùng u ở lớpl Tương tự chúng ta có thể có biểu diễn cho sản phẩm i ở lớp l.
Trong hình 2.3 cho thấy, tín hiệu hợp tác như u 1 ← i 2 ←u 2 ← i 4 có thể có được trong quá trình lan truyền nhúng Hơn nữa, thông tin từi 4 được mã hóa rõ ràng trong e 3 u 1 (được biểu thị bằng đường màu đỏ) Như vậy, việc xếp chồng nhiều lớp lan truyền nhúng sẽ đưa tín hiệu cộng tác vào trong quá trình học biểu diễn một cách liền mạch. Quy luật lan truyền ở dạng ma trận Để cung cấp một cái nhìn tổng thể về lan truyền nhúng và tạo điều kiện triển khai hàng loạt, chúng ta có dạng ma trận của quy luật lan truyền theo lớp (tương đương với phương trình (14) và (15)):
(16) Ở đây E (l) ∈R (N +M)×d l là các biểu diễn cho người dùng và các sản phẩm thu được sau l bước lan truyền nhúng E (0) là tậpE khi lặp đi lặp lại việc truyền thông tin ban đầu, đó là e (0) u = e u và e (0) i = e i ; và ta có ma trận nhận dạng L là biểu diễn ma trận Laplacian cho đồ thị người dùng - sản phẩm, được xây dựng như sau:
(17) Ở đây R∈R N ×M là ma trận tương tác giữa người dùng và sản phẩm, 0là ma trận không;A là ma trận kề vàD là ma trận đường chéo, trong đó phần tử đường chéo thứ t D tt =|N t |; như vậy, các phần tử khác không ngoài đường chéo L ui = √ 1
|N u ||N i | bằng với p ui trong phương trình (11).
Bằng cách triển khai quy luật lan truyền dạng ma trận, chúng ta có thể cập nhật đồng thời các biểu diễn cho tất cả người dùng và sản phẩm một cách khá hiện quả.
Nó cho phép chúng ta loại bỏ quy trình lấy mẫu nút, thường được sử dụng để làm cho mạng tích chập có thể chạy được trên đồ thị tỷ lệ lớn [22].
Mô hình dự đoán
Sau khi lan truyền với L lớp, chúng ta có được nhiều biểu diễn cho người dùng u, cụ thể là {e (1) u , , e (L) u } Khi các biểu diễn thu được trong các lớp khác nhau chứng tỏ các thông tin được truyền qua các kết nối khác nhau Chúng có những đóng góp khác nhau trong việc phản ánh sở thích của người dùng Do đó, chúng ta kết hợp chúng để tạo thành phần nhúng cuối cùng cho người dùng; chúng ta thực hiện thao tác tương tự trên các sản phẩm, kết nối các biểu diễn sản phẩm {e (1) i , , e (L) i } học bởi các lớp khác nhau để có được sản phẩm nhúng cuối cùng: e ∗ u =e (0) u ∥ .∥e (L) u , e ∗ i =e (0) i ∥ .∥e (L) i (18) Ở đây ||là phép nối Bằng cách này chúng ta có thể kiểm soát phạm vi lan truyền bằng cách điều chỉnh L Ưu điểm của việc sử dụng phép nối nằm ở tính đơn giản của nó, vì nó không yêu cầu phải tìm hiểu các tham số bổ sung và nó đã được thể hiện khá hiệu quả trong một công trình về mạng nơ-ron đồ thị [19], trong đó đề cập đến cơ chế kết hợp lớp.
Cuối cùng, chúng ta tính tích vô hướng để ước lượng sở thích của người dùng đối với sản phẩm mục tiêu: ˆ yNGCF (u,i) =e ∗ u T e ∗ i (19)
Mô hình LightGCN
Phép tích chập đồ thị
Phép tích chập đồ thị (hay còn gọi là quy tắc lan truyền [7]) trong LightGCN được định nghĩa là: e (k+1) u = X i∈N u
Kết hợp lớp và dự đoán mô hình
Trong LightGCN, các tham số mô hình chỉ có thể huấn luyện được là các nhúng ở lớp thứ 0, tức là e (0) u cho tất cả người dùng và e (0) i cho tất cả các sản phẩm Khi chúng được cung cấp, các nhúng tại các lớp cao hơn có thể được tính toán thông qua LGC được xác định trong phương trình (21) SauK lớp LGC, chúng tôi tiếp tục kết hợp các nhúng thu được tại mỗi lớp để tạo ra biểu diễn cuối cùng của một người dùng (một sản phẩm): e u K
X k=0 α k e (k) i ; (22) ở đây, α k ≥0là siêu tham số được tối ưu hóa tự động.
Mô hình dự đoán được định nghĩa là tích vô hướng của biểu diễn cuối cùng của người dùng và sản phẩm: ˆ yui=e T u ei (23) Đây được xem như là điểm xếp hạng để tạo ra các gợi ý.
Dạng ma trận
Chúng tôi cung cấp dạng ma trận của LightGCN để tạo điều kiện thuận lợi cho việc triển khai và thảo luận với các mô hình hiện có Ma trận tương tác giữa người dùng và sản phẩm là R ∈ R M ×N , trong đó M, N lần lượt là số lượng người dùng và số lượng sản phẩm, mỗi phần tử R ui bằng 1 nếu người dùng u đã tương tác với sản phẩmi và ngược lại là bằng 0 Sau đó chúng tôi thu được ma trận kề của đồ thị người dùng-sản phẩm như sau
(24) Đặt ma trận nhúng lớp 0 là E (0) ∈ R (M+N )×T , ở đây T là kích thước nhúng Khi đó chúng ta có thể thu được dạng ma trận tương đương của LGC là:
E (k+1) = (D − 1 2 AD − 1 2 )E (k) (25) Ở đõy D là một ma trận đường chộo cú kớch thước(M+N)ệ(M+N), trong đú mỗi phần tửD ii là số lượng phần tử khác 0 trong vectơ hàng thứ i của ma trận kềA Cuối cùng, chúng tôi thu được ma trận nhúng cuối cùng được sử dụng để dự đoán mô hình là:
=α 0 E (0) +α 1 AE˜ (0) +α 2 A˜ 2 E (0) + .+α K A˜ K E (0) (26) Ở đây, A˜=D − 1 2 AD − 1 2 là ma trận chuẩn hóa đối xứng.
Tổng kết chương 2
Trong chương 2, chúng tôi trình bày về ứng dụng mạng nơ-ron đồ thị trong hệ gợi ý, bao gồm: định nghĩa về đồ thị, trình bày kỹ thuật mạng nơ-ron đồ thị, tiếp đến là trình bày mạng nơ-ron đồ thị trong gợi ý lọc cộng tác và cuối cùng là mô hình NGCF và LightGCN Trong chương 3 tôi sẽ trình bày về dữ liệu, cài đặt thực nghiệm và kết quả thực nghiệm trên hai mô hình này.
Trong chương này, chúng tôi trình bày thực nghiệm trên bộ dữ liệu Movielens 100K.Tiếp theo chúng tôi trình bày tiến trình cài đặt mô hình NGCF và mô hình LightGCN.Sau đó trình bày kết quả thực nghiệm và hướng phát triển trong tương lai.
Dữ liệu
Hình 3.1: Thống kê vài bộ dữ liệu của Movielens
Chúng tôi đã sử dụng bộ dữ liệu MovieLens 100K từ trang web MovieLens được sử dụng phổ biến nhất [39], chứa 100.000 xếp hạng của 943 người dùng đối với 1546 sản phẩm (phim) Mỗi bộ dữ liệu chứa các cặp xếp hạng mục người dùng với dấu thời gian, phạm vi xếp hạng từ 1 đến 5 Bộ dữ liệu MovieLens được sử dụng rộng rãi làm bộ dữ liệu điểm chuẩn trong các tác vụ lọc cộng tác giữa mục người dùng và sản phẩm đã xếp hạng ít nhất 20 phim (mỗi nút người dùng có ít nhất 20 cạnh) Xếp hạng của người dùng đối với phim tạo thành một đồ thị hai phía, chúng tôi có thể áp dụng các phương pháp học máy bằng đồ thị để giới thiệu phim mới cho người dùng Hình 3.1 là ảnh chụp thống kê vài bộ dữ liệu của MovieLens.
Cài đặt thực nghiệm
Một cách trực quan hóa các tương tác trong hệ gợi ý là sử dụng đồ thị hai phía dưới dạng nút và các cạnh giữa chúng biểu thị sự tương tác giữa người dùng và sản phẩm (phim) Đồ thị sẽ có hai phía vì người dùng có thể quan tâm đến sản phẩm, nhưng các sản phẩm và người dùng tương ứng không thể quan tâm đến các sản phẩm hoặc người dùng khác.
Cụ thể, nhìn vào hình ảnh trực quan hóa đồ thị ở hình 3.2, ở đây chúng tôi đang cố gắng dự đoán liệu Bob sẽ thích “Call Me by Your Name” hay “Cinderella” hơn dựa vào lịch sử các lượt thích trước đó của người dùng (các cạnh màu đen).
Trong thực nghiệm này, chúng tôi sẽ giải thích cách xây dựng hệ gợi ý phim bằng cách áp dụng mạng nơ-ron đồ thị NGCF và LightGCN trên các biểu diễn đồ thị hai phía, sau đó đào tạo và đánh giá hiệu suất của chúng.
Hình 3.2: Tương tác giữa người dùng và sản phẩm dưới dạng đồ thị hai phía
Với một số nhóm người dùng u và các sản phẩm I, chúng tôi muốn tạo ra một đại lượng vô hướng có giá trị thực Score(u,i) cho mỗi người dùng uvà sản phẩm i Đối với mỗi người dùng u chúng tôi muốn giới thiệu K các sản phẩm có điểm cao nhất mà họ chưa tương tác (K là số nguyên dương từ 10-100).
Mô hình trình bày được thực hiện bằng cách nhúng e u cho mỗi người dùng và e v cho từng sản phẩm Tiếp theo chúng tôi tính toán hàmScore :
Sau đó việc tính điểm cho tất cả người dùng và các sản phẩm sẽ quyết định lấy sản phẩm của ma trận nhúng của người dùng và ma trận nhúng sản phẩm. Để đánh giá hiệu quả dự đoán của mô hình trên bộ dữ liệu, sử dụng hai độ đo: Precision@K (độ chính xác): tỷ lệ các mục tương tác được đề xuất trên tất cả các mục được đề xuất Recall@K (độ bao phủ): tỷ lệ các mục tương tác được đề xuất trên tất cả các mục được tương tác.
Hình 3.3: Precision@K và Recall@K sử dụng cùng tử số nhưng khác mẫu số.
Mẫu số của Precision@K là số lượng mục được đề xuất,K.
Xếp hạng của người dùng đối với phim tạo thành một đồ thị hai phía, chúng tôi có thể áp dụng các phương pháp học máy bằng đồ thị để giới thiệu phim mới cho người dùng.
Chúng tôi chỉ muốn sử dụng xếp hạng cao làm hoạt động tương tác để dự đoán bộ phim nào người dùng sẽ thích xem tiếp theo.
Chúng tôi thực hiện phân chia dữ liệu đào tạo ngẫu nhiên thành 80% tập huấn luyện và 20% tập kiểm tra
Trong tập huấn luyện này, có 943 người dùng và 1546 sản phẩm.
Chúng tôi tiến hành đào tạo mô hình với các thông số như sau
Kết quả
Kết quả chúng tôi đã triển khai đào tạo và đánh giá mô hìnhNGCFvàLightGCN trong PyG (PyTorch Geometric)
Hình 3.4: GNCF Precision@20 và Recall@20 trên mỗi giai đoạn đào tạo
Hình 3.5: LightGCN Precision@20 và Recall@20 trên mỗi giai đoạn đào tạo
Chúng tôi so sánh chi tiết NGCF với LightGCN bằng cách sử dụng các số liệu đánh giá như trong bảng sau
Hình 3.6: Bảng so sánh NGCF với LightGCN
So sánh các biểu đồ ở Hình 3.4 và 3.5, chúng ta có thể thấy, đường cong Precision và Recall của mô hình LightGCN trên mỗi giai đoạn đào tạo ổn định và có xu hướng đi lên Các số liệu ở Hình 3.6 chứng tỏ cả mô hình NGCF và LightGCN đều đạt được kết quả tốt Tuy nhiên, mô hình LightGCN tốt hơn mô hình NGCF trên cả hai độ đoPrecision@K và Recall@K.
Trong phần này chúng tôi tóm lược lại các kết quả chính của đề án Ngoài ra chúng tôi thảo luận về hướng phát triển cho các nghiên cứu tiếp theo trong tương lai.
1 Tóm lược các kết quả và đóng góp của đề án
Trong đề án này, chúng tôi trình bày
Mô hình học máy để dự đoán sở thích hoặc gợi ý sản phẩm cho người dùng dựa trên sự tương tác của họ với hệ thống hoặc dựa trên thông tin về người dùng và sản phẩm.
Cài đặt mô hình NGCF và LightGCN sử dụng thông tin về đồ thị để tăng cường khả năng lọc cộng tác Mô hình này kết hợp các khía cạnh của mạng nơ-ron đồ thị và lọc cộng tác để tạo ra các gợi ý tốt hơn dựa trên dữ liệu đầu vào.
Thực hiện thực nghiệm và đánh giá hiệu quả của mô hình đối với bộ dữ liệu Movielens 100K LightGCN có thể có hiệu suất tốt hơn trong việc khám phá các mối quan hệ ẩn đằng sau dữ liệu của Movielens 100K so với NGCF Cả LightGCN và NGCF đều đóng góp tích cực vào lĩnh vực gợi ý, cung cấp các phương pháp hiệu quả và linh hoạt cho việc xử lý dữ liệu đồ thị phức tạp Điều này giúp nâng cao chất lượng và hiệu suất của các hệ gợi ý dựa trên đồ thị.
2 Hướng phát triển trong tương lai
Trong tương lai, chúng tôi dự kiến nghiên cứu thêm về hệ gợi ý theo một số hướng: (i) thử nghiệm trên các bộ dữ liệu khác, (ii) sử dụng các mô hình học sâu khác, (iii) thiết kế mô hình GNN để đáp ứng với các đồ thị động trong thực tế.
[1] L¨u, Linyuan, et al "Recommender systems." Physics reports 519.1 (2012): 1-49.
[2] Zhang, Shuai, et al "Deep learning based recommender system: A survey and new per- spectives." ACM computing surveys (CSUR) 52.1 (2019): 1-38.
[3] CHANG, BM "ACM RECOMMENDER SYSTEM http://recsys acm. org/2012/ARNOLD, K., GOSLING, J e HOLMES, D The Java Programming Language. Boston, MA, USA: Addison-Wesley Longman Publishing Co., Inc., 2000 AZIVIENIS,
A et al Basic Concepts and Taxonomy of Dependable and Secure Computing IEEE Transactions on Dependable and Secure Computing, Los." Computer Languages 8 (1994): 69-86.
[4] Samtani, Sagar, Shanchieh Yang, and Hsinchun Chen "ACM KDD AI4Cyber: The 1st Workshop on Artificial Intelligence-enabled Cybersecurity Analytics." Proceedings of the 27th ACM SIGKDD Conference on Knowledge Discovery & Data Mining 2021.
[5] Fu, Zuohui, et al "Tutorial on conversational recommendation systems." Proceedings of the 14th ACM Conference on Recommender Systems 2020.
[6] Wang, Zhenyi, Huan Zhao, and Chuan Shi "Profiling the design space for graph neural networks based collaborative filtering." Proceedings of the Fifteenth ACM International Conference on Web Search and Data Mining 2022.
[7] Wang, Xiang, et al "Neural graph collaborative filtering." Proceedings of the 42nd inter- national ACM SIGIR conference on Research and development in Information Retrieval. 2019.
[8] Frasconi, Paolo, Marco Gori, and Alessandro Sperduti "A general framework for adaptive processing of data structures." IEEE transactions on Neural Networks 9.5 (1998): 768-786.
[9] Sperduti, Alessandro, and Antonina Starita "Supervised neural networks for the classifi- cation of structures." IEEE Transactions on Neural Networks 8.3 (1997): 714-735.
[10] Bianchini, Monica, et al "Face spotting in color images using recursive neural networks." Proceedings of the 1st ANNPR Workshop 2003.
[11] Gori, Marco, Gabriele Monfardini, and Franco Scarselli "A new model for learning in graph domains." Proceedings 2005 IEEE International Joint Conference on Neural Net- works, 2005 Vol 2 IEEE, 2005.
[12] Wu, Zonghan, et al "A comprehensive survey on graph neural networks." IEEE transac- tions on neural networks and learning systems 32.1 (2020): 4-24.
[13] Hamilton, William L Graph representation learning Morgan & Claypool Publishers, 2020.
[14] Zhou, Jie, et al "Graph neural networks: A review of methods and applications." AI open
[15] Wu, Shiwen, et al "Graph neural networks in recommender systems: a survey." ACM Computing Surveys 55.5 (2022): 1-37.
[16] Bianchini, Monica, et al "Recursive neural networks for processing graphs with labelled edges: Theory and applications." Neural Networks 18.8 (2005): 1040-1050.
[17] Cao, Yixin, et al "Unifying knowledge graph learning and recommendation: Towards a better understanding of user preferences." The world wide web conference 2019.
[18] Hamilton, Will, Zhitao Ying, and Jure Leskovec "Inductive representation learning on large graphs." Advances in neural information processing systems 30 (2017).
[19] Xu, Keyulu, et al "Representation learning on graphs with jumping knowledge networks." International conference on machine learning PMLR, 2018.
[20] Kabbur, Santosh, Xia Ning, and George Karypis "Fism: factored item similarity models for top-n recommender systems." Proceedings of the 19th ACM SIGKDD international conference on Knowledge discovery and data mining 2013.
[21] Xue, Feng, et al "Deep item-based collaborative filtering for top-n recommendation."ACM Transactions on Information Systems (TOIS) 37.3 (2019): 1-25.
[22] Qiu, Jiezhong, et al "Deepinf: Social influence prediction with deep learning." Proceedings of the 24th ACM SIGKDD international conference on knowledge discovery & data mining. 2018.
[23] Wu, Felix, et al "Simplifying graph convolutional networks." International conference on machine learning PMLR, 2019.
[24] Guo, Qipeng, et al "Syntax-guided text generation via graph neural network." Science China Information Sciences 64 (2021): 1-10.
[25] Zhou, Jie, et al "Graph neural networks: A review of methods and applications." AI open
[26] Maas, Andrew L., Awni Y Hannun, and Andrew Y Ng "Rectifier nonlinearities improve neural network acoustic models." Proc icml Vol 30 No 1 2013.
[27] Kipf, Thomas N., and Max Welling "Semi-supervised classification with graph convolu- tional networks." arXiv preprint arXiv:1609.02907 (2016).
[28] Feng, Yifan, et al "Hypergraph neural networks." Proceedings of the AAAI conference on artificial intelligence Vol 33 No 01 2019.
[29] Veliˇckovi´c, Petar, et al "Graph attention networks." arXiv preprint arXiv:1710.10903 (2017).
[30] Li, Yujia, et al "Gated graph sequence neural networks." arXiv preprint arXiv:1511.05493 (2015).
[31] Berg, Rianne van den, Thomas N Kipf, and Max Welling "Graph convolutional matrix completion." arXiv preprint arXiv:1706.02263 (2017).
[32] Chen, Lei, et al "Revisiting graph based collaborative filtering: A linear residual graph convolutional network approach." Proceedings of the AAAI conference on artificial intelli- gence Vol 34 No 01 2020.
[33] Zheng, Lei, et al "Spectral collaborative filtering." Proceedings of the 12th ACM confer- ence on recommender systems 2018.
[34] Ying, Rex, et al "Graph convolutional neural networks for web-scale recommender sys- tems." Proceedings of the 24th ACM SIGKDD international conference on knowledge dis-