A personalized recommendation method of learning resources

By constructing a directed graph and combining it with a learning time approach, this method utilizes graph neural networks and attention layers to generate embedded representations of learning resources. This addresses the problem in existing technologies that fail to effectively consider user-item interactions, and enables more accurate learning resource recommendations.

CN116127197BActive Publication Date: 2025-12-09BEIJING INST OF TECH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310145790.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-02-22
Publication Date
2025-12-09
Estimated Expiration
2043-02-22

AI Technical Summary

Technical Problem

Existing learning resource recommendation systems fail to effectively consider the interaction between users and items, especially the impact of learning time on recommendations, resulting in inaccurate recommendation results.

Method used

A directed graph is constructed and node embeddings in the learning sequence are obtained through a graph neural network. The weights of resources are calculated in combination with the learning time. The final embedding representation is generated using a temporal attention layer and a soft or self-attention network to predict the resources that the user may learn next.

Benefits of technology

By taking into account the interaction between users and items, especially learning time, the accuracy and personalization of learning resource recommendations are improved, generating learning paths that better meet user needs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116127197B_ABST
    Figure CN116127197B_ABST
Patent Text Reader

Abstract

The application discloses a kind of personalized recommendation method of learning resource, the main problem solved is the generation of personalized learning path for user.This application can predict the learning resource that user is most likely to learn next according to the historical learning sequence of user, and then make corresponding recommendation to user.Specifically, the historical learning sequence of all users is constructed into a directed graph, each node is a learning resource, and the obtained directed graph is modeled by a gated graph neural network to obtain the embedding vector of each node in the sequence, then the time weight addition vector of each node is obtained by a layer of time attention layer, and finally the final embedding representation of the sequence is obtained by a layer of soft attention layer or self-attention layer, and then the prediction is made.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of recommendation system and education, in particular to a personalized recommendation method of learning resources. BACKGROUND

[0002] With the rapid development of information and communication technology, learning resources, including text resources (e.g. simple web pages) and multimedia resources (e.g. videos), have been booming in the past few years. More and more researchers apply personalized recommendation system to the field of education, but the personalized recommendation system in the field of education is quite different from that in other fields. Online learners generate a large amount of learning behavior data, which is very valuable for recommending learning resources of interest to users. Predicting the next possible operation of users according to their behavior history can be regarded as a sequence recommendation problem. Sequence recommendation aims to predict the next item that a user will click based on the user's historical click sequence. In learning resource recommendation, it is to predict the next learning resource that a learner is most likely to learn according to the learner's historical learning behavior.

[0003] However, the personalized recommendation system in the field of education is quite different from that in other fields. For example, in e-commerce recommendation, a user can be recommended a product of interest according to the user's historical click sequence, which may be closely related to one or more products in the user's click sequence; but in learning resource recommendation, it is far from enough to only consider the association between items. The user's mastery of knowledge points in learning resources should also be considered. In e-commerce recommendation, if two users have the same click sequence, the recommendation system will recommend the same product to them; but in learning resource recommendation, if two users have the same learning sequence, but the time they learn each learning resource is different, the recommendation system needs to recommend different learning resources to them.

[0004] Current methods for sequence recommendation only consider the conversion between items, ignoring the interaction between users and items, so it is necessary to invent a learning resource recommendation method that integrates learning time. SUMMARY

[0005] The technical problem solved by the present application is to provide a personalized recommendation method of learning resources, which can solve the problem of learning resource recommendation.

[0006] To solve the above technical problems, one technical solution adopted by the present application is:

[0007] The application discloses a personalized recommendation method of learning resources, constructs a learning sequence directed graph according to a historical learning sequence of a learner, obtains a vector of each node in the learning sequence by using a graph neural network, and then combines learning in a user learning sequence and a learning time of each resource to predict a learning resource most likely to be learned by the user next time.

[0008] The specific method comprises the following steps:

[0009] (1) constructing a directed graph and obtaining node embedding

[0010] Learning sequences of all users are obtained, a directed graph is constructed according to the sequences, each node in the graph is a learning resource, edges represent the order of learning the learning resources by users, a learning sequence of a user can be regarded as a subgraph, then a normalized weighted value is assigned to each edge, and each learning resource is embedded into a unified space. A directed graph obtained is modeled by using a gated graph neural network to obtain an embedding vector of each node in the sequence.

[0011] (2) calculating a learning time weight of each learning resource in the sequence

[0012] Considering the interaction between users and items, the time taken by a user to learn each resource needs to be introduced into the model, and the learning time is used to approximately calculate the learning effect, therefore, a time attention layer is used to obtain a time weight addition vector of each node. Based on the vector of each node, a sequence embedding vector can be obtained by using the time attention layer. The learning time weighted representation of the sequence can be obtained.

[0013] (3) generating a final sequence embedding and performing prediction

[0014] A soft attention layer or a self-attention layer is further used to obtain a final embedding representation of the sequence, the probability of each learning resource appearing in the next sequence is predicted, and finally a learning path is generated.

[0015] The specific steps are as follows:

[0016] (1) constructing a directed graph and obtaining node embedding

[0017] Let R = {r1, r2,..., r m} represent a set composed of all learning resources appearing in all sequences. A user learning sequence s is represented by in chronological order, wherein represents a resource learned by the user in the sequence s. The purpose of sequence recommendation is to predict the next learning of the sequence s, that is, the sequence label

[0018] Each sequence s is modeled as a directed graph G s = (R s , Es ). In this sequence graph, each node represents a learning resource Each edge indicates that the user learned after that Each edge is assigned a normalized weighted value calculated by dividing the number of occurrences of the edge by the out-degree of the starting node of the edge. Each learning resource r e R is embedded into a unified embedding space, with the node vector denoting the hidden vector of item r learned by the graph neural network, regarded as the embedding vector, where d is the dimension of the embedding vector. Based on the node vectors, each sequence is represented by the embedding vector , which is composed of each node vector in the graph.

[0019] The embedding vector of each node is learned by a gated graph neural network. For a graph G s of nodes The update function is shown as follows:

[0020]

[0021]

[0022]

[0023]

[0024]

[0025] where z s,i and r s,i are the reset gate and update gate, respectively, is the list of node vectors in the session s, σ(·) is the sigmoid function, and is the element-wise multiplication operator. denotes the hidden vector of node . The connection matrix determines how nodes in the graph communicate with each other.

[0026] A is the concatenation of two adjacency matrices and representing the weighted connections of the output and input edges in the sequence graph, respectively. Suppose there is a sequence s = [r1, r2, r3, r2, r4], then the corresponding sequence graph G a and the connection matrix A s ; is the two columns in and corresponding to node .

[0027] For each sequence map G s Gated graph neural networks process nodes simultaneously. Equation (1) is used to process nodes given A. s Information propagation occurs between different nodes under certain constraints. Specifically, it extracts the hidden vectors of the neighborhood and inputs them into the graph neural network. Equations (2) to (5) are similar to the update of GRU, updating the hidden state of each node with information from other nodes and the previous time step. After updating all nodes in the sequence graph until convergence, the final node vector is obtained.

[0028] (2) Calculate the learning time weight of each learning resource in the sequence.

[0029] The model incorporates the time a user spends learning each resource, and uses this learning time to approximate the learning effect.

[0030] Learning performance of each resource in the sequence Calculate using the following formula:

[0031]

[0032] in, Represents the learning sequence China Resources i The learning effect, t i It is r i Study time, It is all learning resources. i User learning i The average learning time. Intuitively speaking, learning r i The closer the time and average are, the better the learning effect. Too short or too long a study time will not produce ideal learning results.

[0033] Importance of each resource in the sequence The calculation is shown in the formula:

[0034]

[0035] in, Represents the learning sequence China Resources i The importance of It is r i Learning outcomes σ is the average learning performance of all resources in the sequence, and σ is the standard deviation of the learning performance in the sequence. The larger the value of r, the more users value the resource r. i The greater their interest, the better.

[0036] To keep the interest representation of each sequence consistent, the calculated is normalized, and the time attention weight of each resource is finally obtained:

[0037]

[0038] where N is the length of the sequence s.

[0039] Based on the embedding vector of each node, the embedding vector emb of the sequence s is obtained. s = [v1, v2, …, v n ].

[0040] Through the time attention layer, the learning effect weighted representation of the sequence s is obtained:

[0041] emb s′ = [v′1, v ′ ′2, …, v′ n ]

[0042]

[0043] (3) Generate the final sequence embedding and make prediction

[0044] After obtaining emb s′ = [v ′ ′1, v ′ ′2, …, v ′ ′ n ], the global embedding of the sequence is obtained by using a soft attention network or a self-attention network, and the final embedding of the sequence is obtained.

[0045] First, consider the local embedding s l of the session s. For the session , the local embedding is defined as the embedding vector of the final clicked item , that is, s l = v′ n .

[0046] Soft attention network: consider the global embedding s s of the session graph G g by summarizing all node vectors. A soft attention mechanism is used to better represent the global session preference:

[0047]

[0048]

[0049] where the parameter is a learnable parameter.

[0050] Finally, the hybrid embedding s is computed by concatenating the local and global embedding vectors and applying a linear transformation: f :

[0051] s f = W3[s l ; s g ]

[0052] where the matrix compresses the combined vector into .

[0053] Self-attention network: The input is fed into a self-attention network to capture the global embedding:

[0054]

[0055] where the projection matrix

[0056] After that, two linear transformations with ReLU activation function are used to give the model non-linearity and consider the interaction between different latent dimensions.

[0057] E = ReLU(FW1+ b1)W2+ b2+ F

[0058] where is the bias vector.

[0059] Finally, the hybrid embedding s is computed by concatenating the local and global embedding vectors: f :

[0060] s f = ωE n +(1-ω)v′ n

[0061] where represents the n-th row of the matrix.

[0062] After obtaining the final embedding s f of the sequence, the probability of each learning resource to appear in the next of the sequence s is predicted:

[0063]

[0064] v i is the embedding vector of the resource r i , is the probability of r i to appear in the next of the sequence s.

[0065] For each sequence, the loss function is defined as the cross-entropy loss:

[0066]

[0067] where y represents the true label, represents the predicted probability. m is the size of the set of learning resources.

[0068] The present application solves the problem that the interaction between users and items is not considered in existing sequence recommendation. BRIEF DESCRIPTION OF DRAWINGS

[0069] Figure 1 is the overall architecture diagram of the method of the present application;

[0070] Figure 2 is an example of constructing a directed graph and a connection matrix of the embodiment;

[0071] Figure 3 is the generation process of the learning path of the present application. DETAILED DESCRIPTION

[0072] The preferred embodiments of the present application will be described in detail below with reference to the accompanying drawings, so that the advantages and features of the present application can be more easily understood by those skilled in the art, and the scope of protection of the present application can be more clearly defined.

[0073] Please refer to Figure 1 , Figure 2 , Figure 3 , the embodiment of the present application includes:

[0074] A personalized recommendation method of learning resources, comprising: predicting the next most likely learning resource of a user according to the learning sequence of the user.

[0075] The recommendation of learning resources for the user includes three steps:

[0076] (1) Construct a directed graph and obtain node embedding

[0077] Let R = {r1, r2, …, r m} represent a set consisting of all learning resources appearing in all sequences. The user learning sequence s can be represented by in chronological order, where represents the resources learned by the user in the sequence s. The purpose of sequence recommendation is to predict the next learning step of the sequence s, i.e. the sequence label

[0078] Each sequence s can be modeled as a directed graph G s = (R s , E s ). In this sequence graph, each node represents a learning resource Each edge represents that the user has learned after learning Since multiple resources can appear repeatedly in a sequence, each edge is assigned a normalized weight calculated as the number of occurrences of the edge divided by the out-degree of the edge’s starting node. Each learning resource r e R is embedded into a unified embedding space, with node vectors representing the hidden vector of item r learned by the graph neural network, which can also be seen as an embedding vector, where d is the dimension of the embedding vector. Based on the node vectors, each sequence can be represented by the embedding vectors , which is composed of each node vector in the graph.

[0079] The embedding vectors of each node are learned with a gated graph neural network. For a node s in graph G The update function is shown as follows:

[0080]

[0081]

[0082]

[0083]

[0084]

[0085] where z s,i and r s,i are the reset gate and update gate, respectively, is the list of node vectors in session s, σ(·) is the sigmoid function, and ⊙ is the element-wise multiplication operator. represent the hidden vector of node . The connection matrix determines how nodes in the graph communicate with each other.

[0086] A is the concatenation of two adjacency matrices and representing the weighted connections of the output and input edges in the sequence graph, respectively. Given a sequence s = [r1, r2, r3, r2, r4], the corresponding sequence graph G s and connection matrix A s are shown in Figure 2 . are the two columns in and corresponding to node .

[0087] For each sequence graph G sGated graph neural networks process nodes simultaneously. Equation (1) is used to process nodes given A. s Information propagation occurs between different nodes under certain constraints. Specifically, it extracts the hidden vectors of the neighborhood and inputs them into the graph neural network. Equations (2) to (5) are similar to the update of GRU, updating the hidden state of each node with information from other nodes and the previous time step. After updating all nodes in the sequence graph until convergence, the final node vector can be obtained.

[0088] (2) Calculate the learning time weight of each learning resource in the sequence.

[0089] Existing methods only consider the transition between items, neglecting the interaction between users and items. For example, in literature recommendation, users X and Y both learn three documents A, B, and C sequentially; in other words, their learning sequence is A->B->C. Using SR-GNN or GC-SAN, they would be recommended the same document D to both X and Y. However, in reality, for a document B that requires two hours to learn, user X might only read it for five minutes after opening it, while user Y might spend two hours learning from it. This means that both X and Y have learned from B, but Y might have fully grasped the knowledge in B, while X might not. Intuitively, we would prefer to recommend document E, which is less related to B, to X, and document D, which is based on B, to Y. Therefore, we need to incorporate the time spent by users learning each resource into the model, using the learning time to approximate the learning effect.

[0090] Learning performance of each resource in the sequence Calculate using the following formula:

[0091]

[0092] in, Represents the learning sequence China Resources i The learning effect, t i It is r i Study time, It is all learning resources. i User learning i The average learning time. Intuitively speaking, learning r i The closer the time and average are, the better the learning effect. Too short or too long a study time will not produce ideal learning results.

[0093] However, the learning effect within each sequence is relative. Suppose X's learning effects on A, B, and C are 0.3, 0.5, and 0.6 respectively; and Y's learning effects on A, B, and C are 0.8, 0.9, and 0.6 respectively. In sequences X and Y, the user's learning effect on C is the same, but it's clear that in X, C has a greater impact on the next operation. Therefore, we are more concerned with the proportion of each learning resource's learning effect within the sequence.

[0094] Importance of each resource in the sequence The calculation is shown in the formula:

[0095]

[0096] in, Represents the learning sequence China Resources i The importance of It is r i Learning outcomes σ is the average learning performance of all resources in the sequence, and σ is the standard deviation of the learning performance in the sequence. The larger the value of r, the more users value the resource r. i The greater their interest, the better.

[0097] To ensure that the interest representation of each sequence remains consistent, the softmax function is used to compute the... After normalization, the temporal attention weights for each resource are obtained:

[0098]

[0099] Where N is the length of sequence s.

[0100] Based on the embedding vector of each node, the sequence is obtained. Embedded vector emb s =[v1,v2,…,v n ].

[0101] Through the time attention layer, a weighted representation of the learning effect of sequence s is obtained:

[0102] emb s′ =[v′1,v′2,…,v′ n ]

[0103]

[0104] (3) Generate the final sequence embedding and make predictions.

[0105] After obtaining emb s′ =[v′1,v′2,…,v′ nAfterwards, the global embedding of the sequence is obtained using either a soft attention network or a self-attention network, resulting in the final embedding of the sequence.

[0106] First, consider the local embedding s l of the session s. The local embedding can simply be defined as the embedding vector of the final clicked item, i.e. l s n = v'. s Soft attention network: The global embedding s g of the session graph G is considered by summarizing all node vectors. A soft attention mechanism is employed to better represent the global session preference:

[0107] Soft attention network: The global embedding s g of the session graph G is considered by summarizing all node vectors. A soft attention mechanism is employed to better represent the global session preference:

[0108]

[0109]

[0110] where the parameters are learnable parameters.

[0111] Finally, the hybrid embedding s f is computed by concatenating the local and global embedding vectors and applying a linear transformation:

[0112] s f = W3[s l ; s g ]

[0113] where the matrix compresses the combined vector into .

[0114] Self-attention network: The input is fed into a self-attention network to capture the global embedding:

[0115]

[0116] where the projection matrix

[0117] Afterwards, two linear transformations with ReLU activation functions are used to impart non-linearity to the model and consider interactions between different latent dimensions.

[0118] E = ReLU(FW1 + b1)W2 + b2 + F

[0119] where is a bias vector.

[0120] Finally, the hybrid embedding s f is computed by concatenating the local and global embedding vectors:

[0121] s f = ωE n + (1 - ω)v n '

[0122] where denotes the nth row of the matrix.

[0123] After obtaining the final embedding s f of the sequence, the probability of each learning resource appearing in the next of the sequence s is predicted:

[0124]

[0125] v i is the embedding vector of resource r i , is the probability of r i appearing in the next of the sequence s.

[0126] For each sequence, the loss function is defined as the cross-entropy loss:

[0127]

[0128] where y represents the true label, represents the predicted probability. m is the size of the set of learning resources.

[0129] Finally, the learning path is generated as shown in Figure 3 .

Claims

1. A method of personalized recommendation of learning resources, characterized in that, According to the historical learning sequence of the learner, a learning sequence directed graph is constructed, a vector of each node in the learning sequence is obtained by using a graph neural network, and then the learning of the user in the learning sequence and the time for learning each resource are combined to predict the learning resource most likely to be learned by the user next time; The specific method comprises: (1) constructing a directed graph and obtaining node embedding Obtain the learning sequence of all users, construct a directed graph according to the sequences, each node in the graph is a learning resource, the edges represent the order of the user learning the learning resource, and the learning sequence of a user is regarded as a subgraph, then a normalized weighted value is assigned to each edge, and each learning resource is embedded into a unified space; the obtained directed graph is modeled by a gated graph neural network to obtain an embedding vector of each node in the sequence; Step (1) is specifically: Let R = {r1, r2,..., r m} denote the set of all learning resources that appear in all sequences; a user learning sequence s is represented by s = (r1, r2,..., r } ordered by time, where rsdenotes the resources that the user has learned in the sequence s; the goal of sequence recommendation is to predict the next step of the sequence s, i.e. the sequence label Each sequence s is modeled as a directed graph G s = (R s , E s ); in this sequence graph, each node represents a learning resource Each edge represents that the user has learned after learning A normalized weighted value is assigned to each edge, which is calculated by dividing the number of occurrences of the edge by the out-degree of the starting node of the edge; each learning resource r e R is embedded into a unified embedding space, and the node vector represents the hidden vector of the item r learned by the graph neural network, which is regarded as an embedding vector, where d is the dimension of the embedding vector; based on the node vector, each sequence is represented by an embedding vector which is composed of each node vector in the graph; learning embedding vectors for each node with a gated graph neural network; for a graph G s of nodes The update function is shown below: where z s,i and r s,i are the reset and update gates, respectively, is a list of node vector lists in session s, σ(·) is the sigmoid function, and ⊙ is the element-wise multiplication operator; denotes the hidden vector of node ; the connection matrix determines how nodes in the graph communicate with each other; A is the concatenation of two adjacency matrices and representing the weighted connections of the outgoing and incoming edges of the sequence graph, respectively; given a sequence s = [r1, r2, r3, r2, r4], the corresponding sequence graph G s and the connection matrix A s ; is and the two columns corresponding to the node ; For each sequence graph G s , the gated graph neural network processes nodes simultaneously; formula (1) is used to propagate information between different nodes under the constraint of A s , which extracts the hidden vectors of the neighborhood and inputs them into the graph neural network; formulas (2)-(5) are similar to the update of GRU, which updates the hidden state of each node with the information of other nodes and the last time step; after updating all nodes in the sequence graph until convergence, the final node vector is obtained; (2) calculate the learning time weight of each learning resource in the sequence In the model, the time for the user to learn each resource is introduced, the learning effect is calculated by using the learning time, and a time weight addition vector of each node is obtained through a time attention layer; the embedding vector of the sequence is obtained based on the vector of each node, and the time attention layer is passed through; the learning time weighted representation of the sequence is obtained; (3) generate the final sequence embedding and make a prediction Then, a soft attention layer or a self-attention layer is used to obtain the final embedding representation of the sequence, the probability of each learning resource appearing in the next sequence is predicted, and finally the learning path is generated.

2. The method of claim 1, wherein, Step (2) is specifically: In the model, the time for the user to learn each resource is introduced, and the learning effect is approximately calculated by using the learning time; Learning effect of each resource in sequence is calculated with the following formula: wherein, representation learning sequence the learning effect of a resource r i , t i is the learning time of r i , is the average value of the learning time of a user learning r i all learning resources r i ; importance of each resource in the sequence compute as shown in the equation: in, Represents the learning sequence China Resources i The importance of It is r i Learning outcomes σ is the average learning performance of all resources in the sequence, and σ is the standard deviation of the learning performance in the sequence. The larger the value of r, the more users value the resource r. i The greater their interest, the stronger they become; The calculated Normalization is performed, and finally the time attention weight of each resource is obtained: Where N is the length of the sequence s; Based on the embedding vectors of each node, get the embedding vectors emb of the sequence s = [v1, v2, …, v n ]​ Through the time attention layer, the learning effect weighted representation of the sequence s is obtained: emb s′ = [v1, v2,..., v'N-1, vN]T n ] 3. The method of claim 2, wherein, Step (3) is specifically: After obtaining emb s′ = [v'1, v'2,..., v'N] n , a global embedding of the sequence is obtained by using a soft attention network or a self-attention network, and a final embedding of the sequence is obtained. First consider the local embedding s of session s l ; for session Define the local embedding as the embedding vector of the final clicked item , i.e. s l = v' n ; Soft attention network: consider the global embedding s of the conversation graph G by pooling all node vectors s g ; adopt soft attention mechanism to better represent global conversation preferences:​ α i = q T σ(W1v′ n +W2v′ i +c) where the parameters are learnable parameters; Finally, the hybrid embedding s is computed by a linear transformation of the concatenation of the local and global embedding vectors f : s f = W3[s l ; s g ] where the matrix The combined vector is compressed to in; Self-attention network: input into the self-attention network to capture global embedding: where the projection matrix Then, two linear transformations with ReLU activation functions are used to give the model nonlinearity and consider the interaction between different latent dimensions: E = ReLU (FW1 + b1) W2 + b2 + F wherein is a bias vector; Finally, the hybrid embedding s is computed by combining the local and global embedding vectors f : s f = ωE n + (1 - ω)v' n wherein represents the nth row of the matrix; At the end of the sequence s f After that, the probability of each learning resource to appear in the next of the sequence s is predicted: v i is an embedding vector for resource r i , is the probability that r i occurs next in the sequence s; For each sequence, the loss function is defined as a cross-entropy loss: where y represents the true label, denotes the predicted probability; m is the size of the set of learning resources.

Citation Information

Patent Citations

  • Sequence recommendation method fusing dynamic knowledge graph

    CN113590900A

  • Graph neural network recommendation method based on time interval enhancement

    CN113821724A