A recommendation method based on a graph neural network

By using a graph neural network-based approach and vectorizing the associated users and audio-visual works, the problem of inaccurate matching of audio-visual works in traditional recommendation methods is solved, thus achieving higher recommendation accuracy.

CN115391599BActive Publication Date: 2026-04-10UNIV OF ELECTRONICS SCI & TECH OF CHINA
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-08-30
Publication Date
2026-04-10

AI Technical Summary

Technical Problem

Traditional movie recommendation methods suffer from issues such as data sparsity, resulting in inaccurate recommendations and an inability to effectively match users' preferences for movies and TV shows.

Method used

A recommendation method based on graph neural networks is adopted. By determining the vectors of associated users and associated audio-visual works of the target user, the method recommends audio-visual works with higher matching degree by utilizing the association relationship and the similarity of audio-visual attributes.

Benefits of technology

It improves the matching accuracy of recommended audio-visual works, ensuring that the recommended audio-visual works better meet the user's expectations and preferences.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115391599B_ABST
    Figure CN115391599B_ABST
Patent Text Reader

Abstract

The application discloses a recommendation method based on a graph neural network, and the method comprises the following steps: determining a first associated user vector according to a target user and an associated user associated with the target user; determining a second associated user vector and an associated audio-visual work vector corresponding to each associated audio-visual work according to the associated audio-visual works corresponding to the target user and the associated user; determining at least one to-be-pushed audio-visual work vector based on the associated audio-visual work vector; and determining at least one target audio-visual work according to the first associated user vector, the second associated user vector, the associated audio-visual work vector and the to-be-pushed audio-visual work vector. The method solves the problem that the matching degree of the audio-visual work recommended to the user and the user is not accurate enough, and achieves the effect of recommending the audio-visual work with a higher matching degree to the user according to the associated user and the associated audio-visual work of the user.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of information processing, and particularly relates to a recommendation method based on a graph neural network. BACKGROUND

[0002] In a traditional movie recommendation method, a recommendation method based on collaborative filtering, a recommendation method based on content and a hybrid recommendation method are widely applied in practice.

[0003] However, due to the existence of data sparsity and other problems, the recommendation effect obtained by the traditional recommendation method still cannot achieve very satisfactory effect. At present, deep learning can also be applied in movie recommendation, and a user-movie bipartite graph can be constructed according to the interaction behavior between the movie and the user, so as to recommend the movie based on the user-movie bipartite graph. However, such a method mostly only utilizes the user's social network graph and the user-movie bipartite graph, and there may be a problem that the movie recommendation result is not accurate enough.

[0004] In order to solve the above problems, the movie recommendation method needs to be improved. SUMMARY

[0005] The present application provides a recommendation method based on a graph neural network, so as to solve the problem that the matching degree of the audio-visual work recommended to the user and the user is not accurate enough.

[0006] The present application provides a recommendation method based on a graph neural network, so as to solve the problem that the matching degree of the audio-visual work recommended to the user and the user is not accurate enough.

[0007] According to the target user and the associated user associated with the target user, a first associated user vector is determined.

[0008] According to the associated audio-visual work corresponding to the target user and the associated user, a second associated user vector and an associated audio-visual vector corresponding to each associated audio-visual work are determined.

[0009] Based on the associated audio-visual vector, at least one to-be-pushed audio-visual vector is determined.

[0010] According to the first associated user vector, the second associated user vector, the associated audio-visual vector and the to-be-pushed audio-visual vector, at least one target audio-visual work is determined.

[0011] The technical scheme of the embodiment determines the first associated user vector according to the target user and the associated users associated with the target user, respectively initializes vectors of the target user and the associated users, obtains a center node vector corresponding to the target user and an associated node vector corresponding to each associated user, and determines the first associated user vector corresponding to the target user based on the association between the associated node vectors and the center node vector. The second associated user vector and the associated audio vector corresponding to each associated audio work are determined according to the associated audio works corresponding to the target user and the associated users, the vector of each associated audio work is initialized to obtain a to-be-used audio vector, the second associated user vector corresponding to the target user is determined based on the association between the to-be-used audio vector and the user vector corresponding to the target user, and meanwhile, the associated audio vector corresponding to the corresponding associated audio work can be determined according to at least one user vector corresponding to the same to-be-used audio vector. At least one to-be-pushed audio vector is determined based on the associated audio vector, the similarity between the audio attribute information of each to-be-selected audio work and the target audio attribute of the associated audio work, at least one to-be-pushed audio work is determined, and the vector of each to-be-pushed audio work is initialized to obtain the corresponding to-be-pushed audio vector. At least one target audio work is determined according to the first associated user vector, the second associated user vector, the associated audio vector and the to-be-pushed audio vector, the first associated user vector and the second associated user vector are spliced to obtain the target user vector corresponding to the target user, the associated audio vector and the corresponding to-be-pushed audio vector are spliced to obtain the target audio vector corresponding to each to-be-pushed audio work, further, the target user vector and the target audio vector are multiplied to obtain the corresponding target pushed audio vector, each to-be-pushed audio work corresponding to each target pushed audio vector is taken as the target audio work, and the target audio work is pushed to the target user. The problem that the matching degree of the audio work recommended to the user and the user is not accurate enough is solved, and the effect that the audio work with a higher matching degree is recommended to the user according to the associated user and the associated audio work of the user is achieved.

[0012] It should be understood that the content described in this part is not intended to identify key or important features of the embodiments of the present application, nor is it used to limit the scope of the present application. Other features of the present application will become apparent from the following description. BRIEF DESCRIPTION OF DRAWINGS

[0013] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the drawings needed to be used in the embodiment description. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creating laborious work.

[0014] Figure 1 is a flowchart of a recommendation method based on a graph neural network according to an embodiment of the present application;

[0015] Figure 2 is a schematic diagram of a user-movie bipartite graph according to an embodiment of the present application;

[0016] Figure 3 is a schematic diagram of a center node determining an attention coefficient according to an embodiment of the present application;

[0017] Figure 4 is a schematic diagram of a user relationship graph and a user-movie bipartite graph according to an embodiment of the present application;

[0018] Figure 5 is a schematic diagram of a movie relationship graph and a user-movie bipartite graph according to an embodiment of the present application. DETAILED DESCRIPTION

[0019] In order to make the personnel in the technical field better understand the present application scheme, the technical scheme in the embodiments of the present application will be described clearly and completely below in combination with the drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, not all. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative labor should belong to the scope of protection of the present application.

[0020] It should be noted that the terms "first", "second" and the like in the specification and claims of the present application and the above-described drawings are used to distinguish similar objects, and do not necessarily have to describe a specific order or sequence. It should be understood that the data thus used can be interchanged under appropriate circumstances, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein.

[0021] Before the technical scheme is described in detail, the application scenario of the technical scheme is introduced, so that the technical scheme can be understood more clearly. At present, there are a large number of audio-visual works on the market, and users often need to spend a lot of effort and time to select audio-visual works, and the final selected audio-visual works may not be consistent with the user's expectations. Therefore, in order to meet the user's audio-visual needs, the corresponding audio-visual works can be recommended to the user according to the user's audio-visual preferences. Specifically, the audio-visual works can be recommended to the user according to the user's preferred audio-visual types, audio-visual performers and audio-visual ratings, and the user groups similar to the user's audio-visual preferences can be determined, and the audio-visual works watched by these user groups can be recommended to the user.

[0022] Embodiment one

[0023] Figure 1 A flowchart of a recommendation method based on a graph neural network is provided for Embodiment One of the present application. This embodiment can be applied to the case of determining video works that are more matched to a user according to the user's video preferences.

[0024] As shown in Figure 1 , the method comprises:

[0025] S110, determining a first associated user vector according to a target user and an associated user associated with the target user.

[0026] The target user can be understood as a user who needs video recommendation. The associated user can be understood as a user who is similar to the target user in video preferences, such as a user followed by the target user, or a user who has the same video preferences as the target user after analyzing the historical video works watched by the target user to determine the video preferences of the target user. The number of associated users can be one or more. The more associated users there are, the more video works the associated users are associated with, and accordingly, the more video works that can be recommended to the target user, and the more matched the video works ultimately recommended to the target user are to the expected video works of the target user. The first associated user vector can be understood as a vector determined according to the association between each associated user and the target user when there is at least one associated user.

[0027] Specifically, a user who needs video work recommendation is taken as a target user, and at least one associated user associated with the target user is determined to determine a sub-vector corresponding to the target user according to each associated user, and a first associated user vector corresponding to the target user is determined according to each sub-vector.

[0028] By way of example, user A is determined as a target user, and users B and C are associated users associated with user A. A first sub-vector can be determined according to the association between user A and user B, and a second sub-vector can be determined according to the association between user A and user C. Further, the first sub-vector and the second sub-vector are aggregated to obtain a first associated user vector corresponding to user A.

[0029] Optionally, determining a first associated user vector according to a target user and an associated user associated with the target user comprises: determining at least one associated user associated with the target user according to user attention information of the target user, and determining a center node vector of the target user and an associated node vector corresponding to each associated user; determining a to-be-used vector of each associated node vector relative to the user center node vector, and obtaining the first associated user vector based on each to-be-used vector.

[0030] The user attention information can be obtained from a user attention list of the target user. For example, if the user attention list of the target user includes user 1 and user 2, the user attention information includes user 1 and user 2. That is, the user attention information includes at least one associated user associated with the target user. The center node vector can be understood as a node vector established based on the target user. The associated node vector can be understood as a node vector corresponding to each associated user. The to-be-used vector can be understood as a sub-vector obtained based on the association relationship between the center node vector and each associated node vector. The first associated user vector can be obtained based on each to-be-used vector.

[0031] In actual application, in order to facilitate calculation of the first associated user vector corresponding to the target user, a user relationship graph corresponding to the target user can be established. The user relationship graph includes the target user and at least one associated user, and the association relationship between the target user and each associated user is established with the target user as the center. Each user in the user relationship graph is initialized to obtain the center node vector corresponding to the target user and the associated user vector corresponding to each associated user. The attention coefficient of each associated user vector relative to the center node vector is determined to determine the to-be-used vector between each associated node vector and the center node vector. Each associated user vector is aggregated to obtain the first associated user vector.

[0032] S120, determining a second associated user vector and an associated audio-visual vector corresponding to each associated audio-visual work according to the associated audio-visual work corresponding to the target user and the associated user.

[0033] The associated audio-visual work can be understood as an audio-visual work that the target user and the associated user pay attention to. The associated audio-visual work can be determined according to the audio-visual work type, the audio-visual work performer, the audio-visual work creator, and the audio-visual work score, etc. For example, the audio-visual work with a score of 9.0 or above can be determined as the associated audio-visual work. The audio-visual work in which the performer is personnel A can also be determined as the associated audio-visual work. At least one associated audio-visual work can also be determined according to the audio-visual information associated with the target user and the associated user. The specific determination method of the associated audio-visual work can be self-defined and is not limited here. The second associated user vector can be understood as a vector corresponding to the target user determined according to the association relationship between each associated audio-visual work and the target user. It should be noted that the number of associated audio-visual vectors can be one or more. For example, the current associated audio-visual vector is taken as the current associated audio-visual vector. The current associated audio-visual vector can be understood as a vector determined based on the association relationship between the target user and the current associated audio-visual work and the association relationship between each associated user and the current associated audio-visual work.

[0034] In practical application, the audio-visual works directly associated with the target user and the audio-visual works associated with the associated users can be the associated audio-visual works of the target user. Exemplarily, the audio-visual work directly associated with the target user is work A, and the audio-visual works associated with the associated users are work B and work C, then work A, work B and work C are all the associated audio-visual works of the target user. Based on the associated audio-visual works, the second associated user vector corresponding to the target user can be determined.

[0035] Meanwhile, through the association relationship between the target user and the associated users and the associated audio-visual works, the same associated audio-visual work can be associated with multiple users, such as work A which can be associated with the target user and also associated with associated user 1 and associated user 2. According to the association relationship between the same associated audio-visual work, the associated audio-visual vector corresponding to the associated audio-visual work can be obtained.

[0036] Optionally, according to the associated audio-visual works corresponding to the target user and the associated users, the second associated user vector and the associated audio-visual vector corresponding to each associated audio-visual work are determined, including: determining at least one associated audio-visual work according to the audio-visual information followed by the target user and the audio-visual information followed by the associated users; determining the to-be-used audio-visual vector corresponding to each associated audio-visual work, and aggregating each to-be-used audio-visual vector to obtain the second associated user vector corresponding to the target user; determining the associated audio-visual vector corresponding to the corresponding audio-visual work according to the audio-visual associated users corresponding to each associated audio-visual work.

[0037] Among them, the audio-visual information includes audio-visual types, audio-visual performers, audio-visual creators, audio-visual description texts and audio-visual scores and other information associated with audio-visual works. The to-be-used audio-visual vector can be understood as a vector corresponding to the target user determined based on the association relationship between each associated audio-visual work and the target user. The associated audio-visual vector can be understood as a vector determined based on the association relationship between the associated users associated with the same associated audio-visual work and the associated audio-visual work, wherein the audio-visual associated users associated with the same associated audio-visual work include the target user and / or the associated users.

[0038] Exemplarily, a user-audio-visual bipartite graph between users and audio-visual works can be constructed in advance, in which the user-audio-visual bipartite graph includes the target user, the associated users and the associated audio-visual works associated with the target user and the associated users, see, for example, Figure 2It can be seen from the figure that the associated audio-visual works associated with the target user include associated audio-visual A, associated audio-visual B, associated audio-visual C and associated audio-visual D, that is, the second associated user vector corresponding to the target user can be determined based on the four associated audio-visual works. Specifically, the vector initialization is performed on the target user, each associated user and each associated audio-visual work, the center node vector corresponding to the target user, the associated user vector corresponding to each associated user and the to-be-used audio-visual vector corresponding to each associated audio-visual work are obtained, and the second associated user vector corresponding to the target user is obtained by aggregating each to-be-used audio-visual vector. Optionally, the associated audio-visual vector corresponding to the corresponding audio-visual work is determined according to the audio-visual associated user corresponding to each associated audio-visual work, including: determining at least one associated user associated with the current audio-visual work for each associated audio-visual work; determining the to-be-determined vector corresponding to each associated user, and aggregating each to-be-determined vector to obtain the current associated audio-visual vector corresponding to the current audio-visual work.

[0039] The to-be-determined vector can be understood as a vector obtained after the target user and the associated user are subjected to vector initialization.

[0040] Specifically, similar to the second associated user vector, for each associated audio-visual work, the user associated with the current associated audio-visual work can be multiple, and the to-be-determined vector corresponding to each associated user is determined based on the target user and the associated user, and the to-be-determined vector corresponding to each associated user is aggregated to obtain the current associated audio-visual vector corresponding to the current associated audio-visual work. Figure 2 For example, the associated audio-visual B in the associated audio-visual B is associated with the target user and the associated user 2, and the associated audio-visual vector corresponding to the associated audio-visual B is obtained based on the user vector corresponding to each user and the audio-visual vector corresponding to the associated audio-visual B after the vector initialization of the associated audio-visual B and the target user and the associated user 2.

[0041] S130, determining at least one to-be-pushed audio-visual vector based on the associated audio-visual vector.

[0042] After determining one or more associated audio-visual works associated with the target user and the associated user, the audio-visual work can be pushed to the target user according to each associated audio-visual work, and the audio-visual work meeting the pushing requirement, that is, the audio-visual work similar to the audio-visual information of the associated audio-visual work, is determined as the to-be-pushed audio-visual work. The to-be-pushed audio-visual vector can be understood as a vector corresponding to each to-be-pushed audio-visual work.

[0043] Optionally, based on the associated audio-visual vector, the at least one to-be-pushed audio-visual vector is determined, including: determining a target audio-visual attribute associated with the associated audio-visual vector; based on a similarity algorithm, calculating the audio-visual attribute of the at least one to-be-selected audio-visual work and the target audio-visual attribute to obtain a corresponding to-be-determined similarity; sorting the to-be-determined similarities, and determining at least one to-be-pushed audio-visual work from the to-be-selected audio-visual works according to a preset pushing quantity, and determining a to-be-pushed audio-visual vector corresponding to each to-be-pushed audio-visual work.

[0044] The target audio-visual attribute can be understood as an audio-visual attribute associated with each associated audio-visual vector, and the target audio-visual attribute is determined based on the audio-visual attribute of each associated audio-visual work. The target audio-visual attribute includes at least one of an audio-visual type, an audio-visual description text, and an audio-visual score. The audio-visual data can be understood as a database in which a user stores audio-visual works, such as an audio-visual database of an audio-visual platform. It can be understood that a large number of audio-visual works are included in the audio-visual database, and each audio-visual work is taken as a to-be-selected audio-visual work to determine a to-be-pushed audio-visual work from each to-be-selected audio-visual work. The to-be-determined similarity can be understood as a calculation result obtained by calculating the similarity between the audio-visual attribute information of the to-be-selected audio-visual work and the target audio-visual attribute based on the similarity algorithm. The greater the similarity, the higher the degree of association between the to-be-selected audio-visual work and the associated audio-visual work, and the higher the probability of being determined as a to-be-pushed audio-visual work. Conversely, the lower the similarity, the lower the degree of association between the corresponding to-be-selected audio-visual work and the associated audio-visual work, and the lower the probability of being determined as a to-be-pushed audio-visual work.

[0045] Specifically, the target audio-visual attribute corresponding to each associated audio-visual work and the audio-visual attribute corresponding to each to-be-selected audio-visual work are determined, and the similarity between the to-be-selected audio-visual work and the corresponding associated audio-visual work is calculated based on the similarity algorithm. According to the size of each to-be-determined similarity, the to-be-determined similarities are sorted, for example, the to-be-determined similarities can be sorted from high to low. Further, a corresponding number of target similarities can be determined from each to-be-determined similarity according to a preset pushing quantity, so as to determine the to-be-selected audio-visual works corresponding to the target similarities as to-be-pushed audio-visual works, and to initialize the vector of each to-be-pushed audio-visual work to obtain a to-be-pushed audio-visual vector. The preset pushing quantity can be a specific value defined by the user, for example, 10, which means that the to-be-selected audio-visual works corresponding to the top 10 to-be-determined similarities are determined as to-be-pushed audio-visual works.

[0046] S140, at least one target audio-visual work is determined according to the first associated user vector, the second associated user vector, the associated audio-visual vector, and the to-be-pushed audio-visual vector.

[0047] The target audio-visual work can be understood as an audio-visual work recommended to the target user.

[0048] Specifically, after obtaining the first associated user vector, the second associated user vector, the associated audio-visual vector, and the to-be-pushed audio-visual vector, the target user can be recommended the audio-visual work, that is, at least one target audio-visual work is determined from each to-be-pushed work and recommended to the target user.

[0049] Optionally, according to the first associated user vector, the second associated user vector, the associated audio-visual vector, and the to-be-pushed audio-visual vector, at least one target audio-visual work is determined, including: splicing the first associated user vector and the second associated user vector to obtain a target user vector; for each associated audio-visual vector, the current audio-visual vector is spliced with the corresponding to-be-pushed audio-visual vector to obtain a current target audio-visual vector; and based on the target user vector and each target audio-visual vector, at least one target audio-visual work is determined.

[0050] The target user vector can be understood as a final vector determined for the target user, that is, a vector that best represents the target user. The target audio-visual vector is a final vector corresponding to the associated audio-visual work.

[0051] In the technical solution, the first associated user vector and the second associated user vector are both vectors corresponding to the target user, so that after splicing the first associated user vector and the second associated user vector, the target user vector corresponding to the target user can be obtained. Similarly, taking one of the associated audio-visual works as the current associated audio-visual work as an example, after determining the current associated audio-visual vector corresponding to the current associated audio-visual work, the to-be-pushed audio-visual vector associated with the current associated audio-visual vector is spliced to obtain the target audio-visual vector corresponding to the current associated audio-visual vector. It should be noted that the number of target audio-visual vectors can be more. Further, based on the target user vector and each target audio-visual vector, at least one target audio-visual work is determined, including: multiplying the target user vector and the corresponding target audio-visual vector to obtain a corresponding target pushed audio-visual vector; determining the to-be-evaluated attribute corresponding to each target pushed audio-visual vector to determine at least one target audio-visual work according to each to-be-evaluated attribute.

[0052] The target pushed audio-visual vector can be understood as a vector corresponding to the target recommended work, which can be determined by the target user vector and each target audio-visual vector. Based on the pre-set mapping table of the audio-visual vector and the evaluation attribute, the to-be-evaluated attribute corresponding to the target pushed audio-visual vector can be determined to determine the target audio-visual work according to the to-be-evaluated attribute.

[0053] Specifically, the number of target audio vectors can be multiple, and each target push audio vector corresponds to a to-be-pushed audio work. Multiplying the target user and each target audio vector can obtain a corresponding target push audio vector, and according to a pre-set mapping table, the to-be-evaluated attribute corresponding to each target push audio vector can be determined. The higher the to-be-evaluated attribute is, the higher the probability of determining the corresponding to-be-pushed audio work as a target audio push work is, and vice versa. The higher the to-be-evaluated attribute is, the lower the probability of determining the corresponding to-be-pushed audio work as a target push audio work is. Exemplarily, when determining the target audio work according to each to-be-evaluated attribute, one or more to-be-pushed audio works with the highest to-be-evaluated attribute can be selected as the target push audio work.

[0054] The technical scheme of the embodiment determines a first associated user vector according to the target user and the associated users associated with the target user, respectively initializes vectors of the target user and each associated user to obtain a center node vector corresponding to the target user and an associated node vector corresponding to each associated user, determines a first associated user vector corresponding to the target user based on the association relationship between each associated node vector and the center node vector. The second associated user vector and the associated audio vector corresponding to each associated audio work are determined according to the associated audio works corresponding to the target user and the associated users, each associated audio work is vector initialized to obtain a to-be-used audio vector, the second associated user vector corresponding to the target user is determined based on the association relationship between each to-be-used audio vector and the user vector corresponding to the target user, and meanwhile, the associated audio vector corresponding to the corresponding associated audio work can be determined according to at least one user vector corresponding to the same to-be-used audio vector. At least one to-be-pushed audio vector is determined based on the associated audio vector, at least one to-be-pushed audio work is determined according to the similarity between the audio attribute information of each to-be-selected audio work and the target audio attribute of the associated audio work, each to-be-pushed audio work is vector initialized to obtain a corresponding to-be-pushed audio vector. At least one target audio work is determined according to the first associated user vector, the second associated user vector, the associated audio vector and the to-be-pushed audio vector, the first associated user vector and the second associated user vector are spliced to obtain a target user vector corresponding to the target user, the associated audio vector and the corresponding to-be-pushed audio vector are spliced to obtain a target audio vector corresponding to each to-be-pushed audio work, and further, the target user vector and the target audio vector are multiplied to obtain a corresponding target push audio vector, so as to take each target push audio vector as a target audio work corresponding to the to-be-pushed audio work, and to push the target audio work to the target user. The problem that the matching degree of the audio work recommended to the user and the user is not accurate enough is solved, and the effect of recommending the audio work with a higher matching degree to the user according to the associated users and the associated audio works of the user is achieved.

[0055] Embodiment Two

[0056] In a specific example, taking the recommendation of a movie to a target user as an example, at least one associated user associated with the target user can be determined according to the user attention information of the target user, and a corresponding user relationship graph can be generated based on the target user and each associated user. According to the movie information (i.e., audio-visual information) that the target user and each associated user pay attention to, at least one associated movie work (i.e., associated audio-visual work) associated with each user can be determined, and a user-movie bipartite graph can be constructed based on the target user, the associated user, and the associated movie work. At the same time, a movie with high similarity corresponding to each associated movie work is obtained as a to-be-pushed movie work (i.e., a to-be-pushed audio-visual work), and a movie relationship graph is constructed based on each associated movie work and the corresponding to-be-pushed movie work.

[0057] In actual application, when determining the target user vector corresponding to the target user, the user relationship graph and the user-movie bipartite graph constructed in advance need to be used.

[0058] Specifically, the embedding representation (i.e., the first associated user vector) of the user is learned using a 2-layer graph attention network in the user social network graph (i.e., the user relationship graph). It should be noted that in the user relationship graph, a center node i corresponding to the target user and neighbor nodes a corresponding to each associated user are included. In the k+1 layer network, for each user node i, the graph attention network is used in the user social network graph to learn the attention coefficient of the neighbor node a to the node i for the center node (i.e., the associated user vector), and each attention coefficient is obtained. The user node i is aggregated to obtain the embedding representation of the target user in the k+1 layer network in the social network space (i.e., the first associated user and vector).

[0059] Wherein, in order to more clearly understand the technical solution, when calculating the attention coefficient of the neighbor node j to the center node i in the user relationship graph ij , see Figure 3 For a node embedding vector h with a dimension of F, a new embedding vector with a dimension of F is obtained by linear transformation through a matrix W. After linear transformation, e ij is calculated through a layer of feedforward neural network a. Specifically, e ij may be determined according to the following manner:

[0060] e i = a(Wh j )

[0061] Wherein, e ijis the attention coefficient of the center node i obtained by the feedforward neural network; W is a preset conversion matrix; h i is the node vector corresponding to the center node i; h j is the node vector corresponding to the neighbor node j.

[0062] wherein the activation function adopted by the feedforward neural network a is a nonlinear activation function.

[0063] For all neighbor node sets N(i) of the center node i, after calculation in the above manner, the attention coefficients of each neighbor node to the center node are obtained after normalization processing by using a softmax function. The attention coefficients can be determined by the following formula:

[0064]

[0065] wherein α ij is the attention coefficient of the center node corresponding to the user relationship graph, and softmax represents a normalization function; e ij is the attention coefficient of the center node obtained by the feedforward neural network; e ik is the attention coefficient of the center node corresponding to the kth layer neural network.

[0066] Further, the calculation manner of the embedding representation of the user in the k+1th layer network is as shown below:

[0067]

[0068] wherein, is the associated user vector of the user a in the kth layer neural network, is the attention coefficient of the user a in the k+1th layer neural network, and N(i) is the neighbor node set of the user i in the social network graph.

[0069] In the user-movie bipartite graph, referring to Figure 4 , the embedding representation (i.e., the second associated user vector) of the user is learned by using the K-layer graph attention network. It should be noted that the user-movie bipartite graph includes at least one associated movie node j and the user node i. In the k+1th layer network, for each user node i, the attention coefficient of the neighbor node j to the node i is learned by using the graph attention network in the user-movie interaction bipartite graph (i.e., the to-be-used movie vector), after obtaining the attention coefficients of each neighbor node to the center node, the user node i is aggregated based on the attention coefficients of each neighbor node to obtain (i.e., the second associated user vector).

[0070] wherein, in determining the second associated user vector, the following formula can be used:

[0071]

[0072] wherein, denotes the second associated user vector, denotes the attention coefficient of the movie j to the user i at the k+1 layer; denotes the movie vector of the movie j at the k layer network; C(i) is the neighbor node set of the user i in the user-movie bipartite graph.

[0073] Finally, the first associated user vector and the second associated user vector are spliced to obtain the final embedding representation u i of the user i (i.e., the target user vector), and specifically, the target user vector can be determined based on the following formula:

[0074]

[0075] wherein, denotes the target user vector; denotes the first associated user vector; denotes the second associated user vector; F is an activation function.

[0076] In determining the target movie vector corresponding to each associated movie work (i.e., the target movie vector), the pre-constructed movie relationship graph and the user-movie bipartite graph need to be used, see Figure 5 .

[0077] Specifically, in constructing the movie relationship graph, at least one to-be-pushed movie corresponding to the associated movie can be determined according to the movie attribute information of each to-be-selected movie in the movie database and the similarity between the movie attribute information of the associated movie. In calculating the similarity, the following formula can be used:

[0078]

[0079] wherein, a denotes the vector corresponding to the movie attribute information of the associated movie; b denotes the vector corresponding to the movie attribute information of the to-be-selected movie; similarity(a, b) denotes the similarity between the vector a and the vector b.

[0080] After obtaining the similarity between each to-be-selected movie work and the associated movie (i.e., the to-be-determined similarity), the to-be-determined similarities can be sorted, and the to-be-selected movie works corresponding to the to-be-determined similarities with higher rankings are selected as the to-be-pushed movie works. For example, the to-be-selected movie works corresponding to the top 10 to-be-determined similarities can be selected as the to-be-pushed movie works.

[0081] Further, in the movie graph, the embedding representation of the movie (i.e., the to-be-pushed movie vector) is learned using a 2-layer graph attention network. It should be noted that in the movie graph, at least one associated movie and at least one to-be-pushed movie with high similarity to the associated movie are included. In the k+1-th layer network, for each movie node j, the attention coefficient of the neighbor node b to the node j is learned by the graph attention network for the center node in the movie graph and based on each attention coefficient the movie node j is aggregated to obtain the embedding representation of the movie j (i.e., the current associated movie) in the k+1-th layer network in the movie graph (i.e., the current to-be-pushed movie vector).

[0082] wherein the embedding representation of the movie in the k+1-th layer network (i.e., the to-be-pushed movie vector) can be determined by the following formula:

[0083]

[0084] wherein, represents the to-be-pushed movie vector; represents the attention coefficient of the movie b to the movie j in the k+1-th layer; represents the to-be-pushed movie vector of the movie b in the k-th layer network; and D(j) is the neighbor node set of the movie j in the user-movie graph space.

[0085] In the user-movie bipartite graph, the embedding representation of the movie (i.e., the associated movie vector) is learned using a 2-layer graph attention network. It should be noted that in the user-movie bipartite graph, the user node i and at least one associated movie node j are included. For each associated movie, one of the associated movies is taken as the current associated movie j, and in the k+1-th layer network, the attention coefficient of the neighbor node i to the node j is learned by the graph attention network for the center node in the user-movie interaction bipartite graph and based on each attention coefficient the current movie node j is aggregated to obtain the embedding representation of the movie j in the k+1-th layer network in the user-movie bipartite graph space (i.e., the associated movie vector).

[0086] wherein the associated movie vector can be determined by the following formula:

[0087]

[0088] wherein, represents the associated movie vector of the user i in the k-th layer network; denotes the attention coefficient of user i for movie j at the k+1 layer, and B(j) is the neighbor node set of movie j in the user-movie bipartite graph space.

[0089] Finally, splicing each associated movie vector with the corresponding to-be-pushed movie vector can obtain v j (i.e., the target movie vector).

[0090] Specifically, the target movie vector can be determined by the following formula:

[0091]

[0092] wherein, denotes the target movie vector; denotes the associated movie vector; denotes the to-be-pushed movie vector, and F denotes an activation function.

[0093] After obtaining the target user vector corresponding to the target user and the target movie vector corresponding to each associated movie, further multiplying the target user vector and the target movie vector can obtain a target pushed movie vector, and a score corresponding to the target vector (i.e., the to-be-evaluated attribute) is determined to determine the target pushed movie according to each to-be-evaluated attribute. Specifically, in the calculation of the target user vector, the following formula can be used for determination:

[0094]

[0095] wherein, denotes the target pushed movie vector; u i denotes the target user vector, v j denotes the target movie vector.

[0096] The technical scheme of the embodiment determines the first associated user vector according to the target user and the associated users associated with the target user, respectively initializes vectors of the target user and each associated user to obtain a center node vector corresponding to the target user and an associated node vector corresponding to each associated user, determines the first associated user vector corresponding to the target user based on the association between each associated node vector and the center node vector, determines a second associated user vector and an associated audio vector corresponding to each associated audio work according to the associated audio works corresponding to the target user and the associated users, initializes vectors of each associated audio work to obtain a to-be-used audio vector, determines the second associated user vector corresponding to the target user based on the association between each to-be-used audio vector and the user vector corresponding to the target user, and simultaneously determines the associated audio vector corresponding to the corresponding associated audio work according to at least one user vector corresponding to the same to-be-used audio vector. At least one to-be-pushed audio vector is determined based on the associated audio vector, the similarity between the audio attribute information of each to-be-selected audio work and the target audio attribute of the associated audio work, at least one to-be-pushed audio work is determined, and vectors of each to-be-pushed audio work are initialized to obtain a corresponding to-be-pushed audio vector. At least one target audio work is determined according to the first associated user vector, the second associated user vector, the associated audio vector, and the to-be-pushed audio vector, the first associated user vector and the second associated user vector are spliced to obtain a target user vector corresponding to the target user, the associated audio vector and the corresponding to-be-pushed audio vector are spliced to obtain a target audio vector corresponding to each to-be-pushed audio work, further, the target user vector and the target audio vector are multiplied to obtain a corresponding target pushed audio vector, each to-be-pushed audio work corresponding to each target pushed audio vector is taken as a target audio work, and the target audio work is pushed to the target user. The problem that the matching degree of the audio work recommended to the user and the user is not accurate enough is solved, and the effect that the audio work with a higher matching degree is recommended to the user according to the associated user and the associated audio work of the user is achieved.

[0097] It should be understood that the steps can be reordered, added, or deleted using the various forms of flowcharts shown above. For example, each step described in the present application can be executed in parallel, sequentially, or in a different order, as long as the desired results of the technical scheme of the present application can be achieved, which is not limited herein.

[0098] The above specific embodiments do not constitute a limitation on the protection scope of the present application. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent replacements, and improvements made within the spirit and principles of the present application shall be included in the protection scope of the present application.

Claims

1. A recommendation method based on a graph neural network, characterized in that, The method comprises the following steps: determining at least one associated user of the target user according to the user attention information of the target user, and determining a center node vector of the target user and an associated node vector corresponding to each associated user; determining a to-be-used vector of each associated node vector relative to the user center node vector, and obtaining a first associated user vector based on each to-be-used vector; determining at least one associated audio-visual work according to the audio-visual information that the target user pays attention to and the audio-visual information that each associated user pays attention to; determining a to-be-used audio-visual vector corresponding to each associated audio-visual work, performing aggregation processing on each to-be-used audio-visual vector, and obtaining a second associated user vector corresponding to the target user; wherein the to-be-used audio-visual vector is a vector corresponding to the target user determined based on the association relationship between each associated audio-visual work and the target user; determining an associated audio-visual vector corresponding to each associated audio-visual work according to an audio-visual associated user corresponding to each associated audio-visual work; wherein the audio-visual associated user includes the target user and / or the associated user; determining at least one to-be-pushed audio-visual vector based on the associated audio-visual vector; splicing the first associated user vector and the second associated user vector to obtain a target user vector; splicing a current audio-visual vector and a corresponding to-be-pushed audio-visual vector to obtain a current target audio-visual vector for each associated audio-visual vector; multiplying the target user vector and a corresponding target audio-visual vector to obtain a corresponding target pushed audio-visual vector; determining a to-be-evaluated attribute corresponding to each target pushed audio-visual vector to determine at least one target audio-visual work according to each to-be-evaluated attribute.

2. The method of claim 1, wherein, The method comprises the following steps: determining at least one associated user associated with a current audio-visual work for each associated audio-visual work; determining a to-be-determined vector corresponding to each associated user, and performing aggregation processing on each to-be-determined vector to obtain a current associated audio-visual vector corresponding to the current audio-visual work.

3. The method of claim 1, wherein, The method comprises the following steps: determining a target audio-visual attribute associated with the associated audio-visual vector; wherein the target audio-visual attribute includes at least one of an audio-visual type, an audio-visual description text, and an audio-visual score; calculating the audio-visual attribute of at least one to-be-selected audio-visual work in an audio-visual database and the target audio-visual attribute based on a similarity algorithm to obtain a corresponding to-be-determined similarity; sorting each to-be-determined similarity, determining at least one to-be-pushed audio-visual work from each to-be-selected audio-visual work according to a preset pushing quantity, and determining a to-be-pushed audio-visual vector corresponding to each to-be-pushed audio-visual work.