A course recommendation method, system and electronic device

By constructing a high-order interactive graph and knowledge graph, and calculating the final preference score based on user similarity, course matching and demand, the problem of poor recommendation results in the existing course recommendation methods is solved, personalized course recommendation is achieved, and user learning experience and efficiency are improved.

CN117251626BActive Publication Date: 2025-07-18HUAZHONG NORMAL UNIV
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202311096331.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-08-25
Publication Date
2025-07-18
Estimated Expiration
2043-08-25

AI Technical Summary

Technical Problem

The existing course recommendation methods are not effective in recommendation, and fail to effectively consider the popularity of courses in similar users, the degree to which candidate courses match the courses already learned by users, and the degree of users' demand for recommended course categories, resulting in the recommendation results being uncommon, repetitive or useless.

Method used

By constructing advanced interaction graphs and knowledge graphs between users and courses, combining user similarity, course matching and demand, users' final preference scores for courses are calculated, and personalized courses are recommended.

Benefits of technology

It improves the accuracy and personalization of course recommendations, alleviates information overload problems, and improves user learning experience and efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117251626B_ABST
    Figure CN117251626B_ABST
Patent Text Reader

Abstract

The present invention provides a course recommendation method, system and electronic device. The method includes: using high-order user-course interaction information and knowledge graphs to form user / course representations. Obtaining the user-course relevance based on the view count of the course to be recommended in the set of similar users, calculating the frequency of pairing of two courses using association rules as the user-course matching degree, and mining the user's historical learning records to obtain the user-course demand degree. The present invention makes full use of user click information, proposes a new embedding propagation method to embed high-order user-item collaborative interaction information into user representations, making the client-side embedding representation richer and more accurate, and forming course representations using the high-order structure and semantic information of course knowledge graphs. At the same time, incorporating the user-course relevance, user-course matching degree, and user-course demand degree into the course recommendation system to provide users with highly accurate course recommendations.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the field of artificial intelligence, and more specifically, relates to a course recommendation method, system and electronic device. Background Art

[0002] With the continuous growth of the economic level and the rapid development of Internet technology, the society's attention to education has also been continuously improving, and the online education industry has achieved unprecedented development. As a product of Internet technology in the education field in the "Internet +" era, online learning is a brand-new teaching mode formed by integrating educational theoretical knowledge with Internet technology. Compared with traditional learning methods, this new learning method of online learning has its own unique advantages. Online education breaks through the limitations of time and space, reducing the time cost and economic cost of students.

[0003] Currently, Massive Open Online Courses (MOOCs) have developed rapidly. Foreign online learning platforms mainly include EdX, Coursera, Khan Academy, etc., and domestic online learning platforms mainly include Fanya Network Teaching Platform, 51talk, YuanTiKu, etc. However, while online learning has changed people's learning methods, some drawbacks have also emerged. For course learners, online learning platforms cannot provide targeted learning guidance and personalized recommendations for learners in terms of user learning style preferences, course content similarity, course prerequisites, etc. As a result, learners often get lost when faced with so many online courses and cannot quickly find out which courses they need, ultimately reducing the user's learning experience and learning efficiency. Referring to relevant research data, the average course completion rate of domestic online education platforms is 15%, and the course completion rate of the foreign Coursera platform is only 10%. Therefore, further improving the utilization efficiency of online education resources is an urgent problem for online education platforms; in this context, personalized course recommendation has emerged. Course recommendation algorithms study users' course selection interests, historical course selection behaviors, course attributes, etc., and recommend courses that users may be interested in to effectively alleviate the problem of information overload and improve users' course selection efficiency and online experience.

[0004] Traditional online course recommendation algorithms mainly include content-based recommendation algorithms and collaborative filtering recommendation algorithms. Among them, content-based recommendation algorithms mainly make recommendations by analyzing information such as course content and tags, which is suitable for new users or situations where there is less user behavior data; collaborative filtering recommendation algorithms analyze users' historical behavior data to discover users' interest preferences, and then recommend courses of similar users to users; with the gratifying results achieved by deep learning in many fields, its application in the education field has gradually become a research hotspot.

[0005] Higher-order interaction information can also help the recommendation system discover new correlations and potential interest points. Therefore, incorporating user-course higher-order interaction information into the course recommendation model can more accurately capture users' interests and behaviors, thereby better meeting users' needs. The NGCF model considers the higher-order connectivity between users and items, and uses a stacked multi-layer graph convolutional neural network to learn the embedding representations of nodes in the heterogeneous graph, and then obtains the final node embeddings through representations of different layers. The multi-modal graph convolutional network (MMGCN) is a multi-modal graph convolutional recommendation system model based on graph neural networks. It constructs user-item bipartite graphs representing each modality, and uses the topological structure of each node and the features of neighboring nodes to enrich the representations of each node, so as to more effectively capture users' preferences.

[0006] Currently, existing course recommendation methods still have deficiencies in several aspects. First, they rarely pay attention to the popularity of courses in the set of similar users, which may lead to recommended courses being relatively esoteric and unpopular; second, they also rarely consider the matching degree between candidate courses and the courses that users have already studied, which may result in repeated recommendations of similar courses or inappropriate recommendations; third, they rarely pay attention to the degree of users' demand for the categories of courses to be recommended, which may result in useless recommendations, thus causing students' weariness of learning. Summary of the Invention

[0007] Aiming at the defects of the existing technology, the purpose of the present invention is to provide a course recommendation method, system and electronic device, aiming to solve the problem of poor effectiveness of existing course recommendation methods.

[0008] To achieve the above purpose, in the first aspect, the present invention provides a course recommendation method, including the following steps:

[0009] Determine the higher-order interaction graph of users and courses according to the historical interaction information of different users and different courses, and determine the knowledge graph of courses based on different attributes of the courses;

[0010] Determine the high-order embedding representation of the preset user based on the high-order interaction graph, and determine the aggregated embedding representation of the preset course based on the first-order neighbors of each course in the knowledge graph. Then, preliminarily calculate the preference score of the preset user for the preset course based on the high-order embedding representation of the user and the aggregated embedding representation of the course;

[0011] Determine the set of similar users of the preset user according to the similarity between users, and determine the relevance between the preset user and the preset course according to the course selection situation of the users in the set of similar users; if the degree to which the preset course is selected by the users in the set of similar users is higher, the relevance is relatively higher;

[0012] For any two courses, determine the collocation degree between any two courses according to the number of users who select both courses and the number of users who select a single course. Then, calculate the average collocation degree between the preset course and the courses already selected by the preset user to determine the matching degree between the preset user and the preset course;

[0013] Determine the set of similar courses of the preset course according to the similarity between courses, and determine the demand degree between the preset user and the preset course according to the selection situation of the preset user for the courses in the set of similar courses; if the degree to which the preset user selects the courses in the set of similar courses is higher, the demand degree is relatively higher;

[0014] Combine the relevance, matching degree, and demand degree to update the preliminarily calculated preference score to obtain the final preference score of the preset user for the preset course, so as to recommend courses to the preset user according to the final preference score.

[0015] It can be understood that courses with a final preference score exceeding the threshold can be recommended to the preset user, that is, the user of the course to be recommended.

[0016] It should be noted that if only the high-order and embedding representations of users and courses are considered for recommendation, the recommendation effect is not good. Considering the relevance, matching degree, and demand degree between users and courses can further optimize the course recommendation scheme, fully combining the course selection habits of similar users, the matching degree of courses, and the characteristics of the user group of similar courses, and realizing a course recommendation scheme with a recommendation effect closer to the actual needs of users.

[0017] In a possible implementation manner, the relevance is determined through the following steps:

[0018] Use the cosine metric between user representations to represent the similarity between user latent interest vectors; user u i and user u j The cosine similarity between them is:

[0019]

[0020] where Denote user u i 's characterization, Denote user u j 's characterization, Denote user u i the modulus of the vector, Denote user u j the modulus of the vector;

[0021] Take multiple users with a relatively high similarity ranking to the preset user as the set of similar users, and calculate the relevance RD(u, v) between the preset user u and the preset course v through the following formula:

[0022]

[0023] where u' represents a similar user of u, and C u′ represents the set of courses registered by user u', is an indicator function, which is equal to 1 when v ∈ C u′ and 0 otherwise, and U u,k1 represents the set of similar users of user u, and k1 represents the number of users in the set of similar users.

[0024] In a possible implementation manner, the matching degree is determined through the following steps:

[0025] Calculate the proportion of the number of users who select both course v and course v' to the number of users who select course v as confidence(v → v');

[0026] Calculate the proportion of the number of users who select both course v and course v' to the number of users who select course v' as confidence(v' → v), and the calculation process is as follows:

[0027]

[0028]

[0029] where N v represents the set of users who select course v, and N v′ represents the set of users who select course v';

[0030] Regard CC(v, v') as the matching degree between two courses, and the calculation process is:

[0031]

[0032] Calculate the average matching degree between the preset course v and the courses in the set of courses already selected by the user as the matching degree AD(u, v) between the preset user and the preset course, and the calculation process is as follows:

[0033]

[0034] Among them, N u is the set of courses selected by the user, and |N u | is the total number of courses in N u .

[0035] In a possible implementation manner, the demand degree is determined through the following steps:

[0036] For course v i and course v j , the course similarity is calculated using the Euclidean distance algorithm:

[0037]

[0038] Among them, and are respectively the k-th dimensional values of the vector representations of v i and v j , and d is the length of the vector representation;

[0039] For the preset course v, a plurality of courses with a high similarity ranking to the preset course are used as the similar course set, and the demand degree DD(u, v) of the preset user u and the preset course v is calculated through the following formula:

[0040]

[0041] Among them, v' represents the similar course of course v; U v′ represents the set of users who have registered for course v'; is the indicator function, which returns 1 when u ∈ U v′ and returns 0 otherwise; C v,k2 represents the similar course set of the preset course v, and k2 represents the number of courses in the similar course set.

[0042] In a possible implementation manner, the initially calculated preference score is updated in combination with the relevance, matching degree, and demand degree to obtain the final preference score of the preset user for the preset course Specifically:

[0043]

[0044] Among them, f is the mapping function; is the initially calculated preference score; RD(u, v), AD(u, v), and DD(u, v) are the relevance, matching degree, and demand degree respectively; a, b, and c are the weights of the relevance, matching degree, and demand degree respectively, and a + b + c = 1.

[0045] In a second aspect, the present invention provides a course recommendation system, including:

[0046] A preliminary course preference calculation unit for determining a high-order interaction graph between a user and a course based on the historical interaction information between different users and different courses, and determining a knowledge graph of the course based on different attributes of the course; and determining a high-order embedding representation of a preset user based on the high-order interaction graph, and determining an aggregated embedding representation of a preset course based on the first-order neighbors of each course in the knowledge graph, and then preliminarily calculating a preference score of the preset user for the preset course based on the high-order embedding representation of the user and the aggregated embedding representation of the course;

[0047] A relevance determination unit for determining a set of similar users of a preset user according to the similarity between users, and determining the relevance between the preset user and the preset course according to the course selection situation of the users in the set of similar users; if the degree to which the preset course is selected by the users in the set of similar users is higher, the relevance is relatively higher;

[0048] A matching degree determination unit for, for any two courses, determining the collocation degree between any two courses according to the number of users who select both courses and the number of users who select a single course, and then calculating the average collocation degree between the preset course and the courses already selected by the preset user to determine the matching degree between the preset user and the preset course;

[0049] A demand degree determination unit for determining a set of similar courses of a preset course according to the similarity between courses, and determining the demand degree between the preset user and the preset course according to the selection situation of the preset user for the courses in the set of similar courses; if the degree to which the preset user selects the courses in the set of similar courses is higher, the demand degree is relatively higher;

[0050] A course recommendation unit for updating the preliminarily calculated preference score by combining the relevance, matching degree and demand degree to obtain the final preference score of the preset user for the preset course, and recommending courses to the preset user according to the final preference score.

[0051] In a possible implementation manner, the relevance determination unit uses the cosine metric between user representations to represent the similarity between user latent interest vectors; for user u i and user u j The cosine similarity between them is: where represents the representation of user u i , represents the representation of user u j , represents the norm of the vector of user u i , represents the norm of the vector of user u j ; taking multiple users with the top similarity rankings to the preset user as the set of similar users, and calculating the relevance RD(u, v) between the preset user u and the preset course v through the following formula: Among them, u′ represents the similar users of u, and C u′ represents the set of courses registered by user u′, is an indicator function that equals 1 when v ∈ C u′ and 0 otherwise. U u,k1 represents the set of similar users of user u, and k1 represents the number of users in the set of similar users.

[0052] In a possible implementation manner, the matching degree determination unit calculates the proportion of the number of users who select both course v and course v′ to the number of users who select course v as confidence(v→v′); calculates the proportion of the number of users who select both course v and course v′ to the number of users who select course v′ as confidence(v′→v). The calculation process is as follows: Among them, N v represents the set of users who select course v, and N v′ represents the set of users who select course v′; regards CC(v, v′) as the matching degree between two courses. The calculation process is: Calculates the average matching degree between the preset course v and the courses in the set of courses already selected by the user as the matching degree AD(u, v) between the preset user and the preset course. The calculation process is as follows: Among them, N u is the set of courses already selected by the user, and |N u | is the total number of courses in N u .

[0053] In a possible implementation manner, the demand degree determination unit, for course v i and course v j , uses the Euclidean distance algorithm to calculate the course similarity: Among them, and are the k-th dimensional values of the vector representations of v i and v j respectively, and d is the length of the vector representation; for the preset course v, takes the multiple courses with the top-ranked similarity to the preset course as the set of similar courses, and calculates the demand degree DD(u, v) between the preset user u and the preset course v through the following formula: Among them, v' represents the similar courses of course v; U v′ represents the set of users who have registered for course v'; is an indicator function that returns 1 when u ∈ U v′ and 0 otherwise; C v,k2 represents the set of similar courses of the preset course v, and k2 represents the number of courses in the set of similar courses.

[0054] In a third aspect, the present invention provides an electronic device, including: at least one memory for storing a program; at least one processor for executing the program stored in the memory, and when the program stored in the memory is executed, the processor is configured to execute the method described in the first aspect or any possible implementation manner of the first aspect.

[0055] In a fourth aspect, the present invention provides a computer-readable storage medium storing a computer program, and when the computer program runs on a processor, it causes the processor to execute the method described in the first aspect or any possible implementation manner of the first aspect.

[0056] In a fifth aspect, the present invention provides a computer program product, and when the computer program product runs on a processor, it causes the processor to execute the method described in the first aspect or any possible implementation manner of the first aspect.

[0057] Generally speaking, compared with the prior art by the above technical solution conceived by the present invention, the following beneficial effects are achieved:

[0058] The present invention provides a course recommendation method, system and electronic device, which makes full use of the information that different users select different courses, proposes a new embedding propagation method to embed high-order user-item collaborative interaction information into user representations, making the embedded representations at the user side richer and more accurate, and obtaining course representations by using the high-order structure and semantic information of the course knowledge graph. At the same time, the learner-course relevance, learner-course matching degree, and learner-course demand degree are incorporated into the course recommendation system to provide personalized recommendations for users. To a certain extent, it alleviates the problem of information overload, improves the utilization rate of information, filters out effective information for the majority of users, and improves the performance of recommendations. Through experiments for evaluation, compared with other recent methods, the recommendation performance of the method provided by the present invention is better than other methods. BRIEF DESCRIPTION OF THE DRAWINGS

[0059] Figure 1 is a flowchart of a course recommendation method provided by an embodiment of the present invention;

[0060] Figure 2 is another flowchart of a course recommendation method provided by an embodiment of the present invention;

[0061] Figure 3 is a schematic diagram for explaining the relevance between a learner and a course provided by an embodiment of the present invention;

[0062] Figure 4 is a schematic diagram for explaining the matching degree between a learner and a course provided by an embodiment of the present invention;

[0063] Figure 5 is a schematic diagram for explaining the demand degree between a learner and a course provided by an embodiment of the present invention;

[0064] Figure 6 It is the architecture diagram of the course recommendation system provided by the embodiments of the present invention. Specific embodiments

[0065] In order to make the objectives, technical solutions and advantages of the present invention clearer and more understandable, the present invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not used to limit the present invention.

[0066] Figure 1 It is a flowchart of a course recommendation method provided by the embodiments of the present invention. As Figure 1 shown, it includes the following steps:

[0067] S101, determine the high-order interaction graph between the user and the course according to the historical interaction information between different users and different courses, and determine the knowledge graph of the course based on different attributes of the course;

[0068] Specifically, the high-order interaction graph is used to represent the interaction correlation between the user and the course; the knowledge graph is used to enrich the course representation.

[0069] S102, determine the high-order embedding representation of the preset user based on the high-order interaction graph, and determine the aggregated embedding representation of the preset course based on the first-order neighbors of each course in the knowledge graph. Then, preliminarily calculate the preference score of the preset user for the preset course based on the high-order embedding representation of the user and the aggregated embedding representation of the course;

[0070] S103, determine the set of similar users of the preset user according to the similarity between users, and determine the relevance between the preset user and the preset course according to the selection of courses by the users in the set of similar users; if the preset course is selected by the users in the set of similar users to a higher degree, then the relevance is relatively high;

[0071] S104, for any two courses, determine the collocation degree between any two courses according to the number of users who select both courses and the number of users who select a single course, and then calculate the average collocation degree between the preset course and the courses already selected by the preset user to determine the matching degree between the preset user and the preset course;

[0072] S105, determine the set of similar courses of the preset course according to the similarity between courses, and determine the demand degree between the preset user and the preset course according to the selection of courses in the set of similar courses by the preset user; if the preset user selects the courses in the set of similar courses to a higher degree, then the demand degree is relatively high;

[0073] S106. Update the initially calculated preference score by combining the relevance, matching degree, and demand degree to obtain the final preference score of the preset user for the preset course, so as to recommend courses to the preset user according to the final preference score.

[0074] In a specific embodiment, the user can be different types of learners or learning personnel, etc. The following embodiments take the user as a learner as an example for expansion and explanation.

[0075] Figure 2 It is another flowchart of the course recommendation method provided by the embodiments of the present invention. As Figure 2 shown, it includes the following steps:

[0076] Determine the interaction information and knowledge graph between the learner and the course; the course includes entities in the scenario to be recommended for the learner.

[0077] Determine the interaction matrix between the learner and the course according to the interaction information between the learner and the course to reflect whether there is an interaction between the learner and each course; according to the interaction matrix between the learner and the course, determine the courses that have an interaction with the learner, take the courses with an interaction as the first-order interaction information of the learner, and determine other learners who have an interaction with the first-order neighbors as the second-order interaction information of the learner, and then determine the courses that have an interaction with the second-order neighbors as the third-order interaction information of the learner, and so on. Connect the various-order neighbors of the learner to obtain the high-order interaction graph between the learner and the course, and perform layer-by-layer embedding iteration based on the high-order interaction graph to determine the high-order embedding representation of the learner.

[0078] Randomly sample the first-order neighbors of the course to form the first-order neighborhood of the course; determine the relationships between the course and each neighbor in its first-order neighborhood in the knowledge graph, and determine the weights of each neighbor relationship based on the attention mechanism to reflect the importance of each neighbor relationship to the learner; combine the representations of each neighbor in the first-order neighborhood with their corresponding relationship weights to determine the embedding representation of the first-order neighborhood of the course; aggregate the self-embedding representation of the course with the embedding representation of its first-order neighborhood to obtain the aggregated embedding representation of the course.

[0079] Obtain the learner-course relevance according to the browsing volume of the course to be recommended in the set of similar learners, calculate the frequency of course matching using association rules as the learner-course matching degree, and mine the historical learning records of the learner to obtain the learner-course demand degree.

[0080] Finally, predict the preference score of the learner for the course according to the high-order representation of the learner and the representation of the course, and combine the three indicators of learner-course relevance, learner-course matching degree, and learner-course demand degree, and recommend the courses that the learner is interested in based on the preference score.

[0081] Determine the interaction matrix between the learner and the course according to the interaction information between the learner and the course, specifically as follows:

[0082] Represent the set of learners as U = {u1, u2,..., u m}; m represents the number of learners, and u i represents the i-th learner; 1 ≤ i ≤ m;

[0083] Represent the set of courses as V = {v1, v2,..., v n}; n represents the number of courses, and v j represents the j-th course; 1 ≤ j ≤ n;

[0084] Define the interaction matrix Y ∈ R m×n , if there is an interaction between learner u and course v, define y uv as 1, otherwise define it as 0; y uv is an element in the interaction matrix Y.

[0085] The high-order embedding representation of the learner is determined through the following steps:

[0086] Let the contribution of the course v that has directly interacted with learner u to the formation of the characteristics of learner u be I u,v :

[0087]

[0088] In the formula, N v represents the set of users who have directly interacted with course v, |N v | represents the number of users who have directly interacted with course v, N u represents the set of courses that learner u has interacted with, |N u | represents the number of courses that learner u has interacted with, W1 (1) represents the weight matrix, is the initial vector representation of course v.

[0089] The first-order representation of learner u is:

[0090]

[0091] The high-order representation of learner u is:

[0092]

[0093] In the formula, LeakyReLU is the activation function, integrates the information from the first-order neighbor to the l-th order neighbor, and is the representation of the learner at the l-th layer of the high-order interaction graph, Integrates the information of the 1st - order neighbors to the (l - 1)th - order neighbors, and is the representation of the learner at the (l - 1)th layer of the high - order interaction graph.

[0094] The high - order embedding representation of learner u is obtained by summing the embedding representations of the learner at each layer. It is:

[0095]

[0096] The aggregated embedding representation of the said course is determined through the following steps:

[0097] Let e i represent entity i, e j represent entity j, and r represent the relationship between the two; an attention mechanism is introduced to determine the importance of relationship r to learner u as the relationship weight. The relationship weight of relationship r to learner u is:

[0098]

[0099] where u e , r e are the vector representations of learner u and relationship r respectively.

[0100] Multiply the vector representation of the first - order neighbors sampled by course v by its corresponding normalized relationship weight and sum them to obtain the first - order neighborhood representation of course v as:

[0101]

[0102] where π(u, r v,i ) represents the normalized relationship weight, r v,i represents the relationship between course v and entity i, and e i is the embedding representation of entity i;

[0103] The aggregated embedding representation of course v is:

[0104]

[0105] where σ represents the activation function ReLU, v0 is the vector representation of the course itself, W2 is the linear transformation matrix, and b represents the bias term.

[0106] See Appendix Figure 3 , study the online learning behaviors of similar learners to explore the relevance between the learner - to - be and the course. First, use the cosine metric between learner representations to represent the similarity between the potential interest vectors of learners. The cosine similarity between learner u i and learner u j can be calculated as:

[0107]

[0108] Among them, represents the representation of learner u i ; represents the representation of learner u j ; represents the modulus of the vector of user u i ; represents the modulus of the vector of user u j ;

[0109] Then, the users with the top-k similarity are calculated as the set of similar users, and the proportion of the selected course sets of similar users that contain the course to be recommended is used as the learner-course relevance.

[0110]

[0111] Among them, u′ represents the similar user of u, and C u′ represents the course registered by learner u′, is an indicator function that equals 1 when v ∈ C u′ and 0 otherwise.

[0112] See Appendix Figure 4 . It is necessary to analyze the matching degree between the learned courses and the course to be recommended according to the correlation relationship between courses as the learner-course matching degree.

[0113] First, form course pairs one by one between the course to be recommended and the courses in the user course set, and then calculate the course matching degree for each course pair. Specifically, it is to determine the frequency of the matching between course v and course v′; first, calculate the proportion of the number of users who select both course v and course v′ to the number of users who select course v as confidence(v → v′); then, calculate the proportion of the number of users who select both course v and course v′ to the number of users who select course v′ as confidence(v′ → v). The calculation process is as follows:

[0114]

[0115]

[0116] N v represents the set of users who select course v, and N v′ represents the set of users who select course v′.

[0117] Then, calculate the course matching degree. Regarding CC(v, v′) as the matching degree between two courses, the calculation process is:

[0118]

[0119] Finally, calculate the average matching degree between the course v to be recommended and the courses in the learner's selected course set as the learner-course matching degree AD(u, v). The calculation process is as follows:

[0120]

[0121] See the appendix Figure 5 to mine the learner's online learning behavior and explore the degree of the learner's demand for the course to be recommended as the learner-course demand degree. Measure the degree of the learner's demand for such courses as the learner-course demand degree by measuring the degree to which the user set of similar courses of the course to be recommended contains this learner.

[0122] First, use the Euclidean distance to calculate the content similarity between any two courses. For example, for the course v to be recommended i and the course v j , use the Euclidean distance algorithm to calculate the course similarity:

[0123]

[0124] Among them, and are the vector representations of v i and v j respectively, and d is the length of the vector representation.

[0125] After calculating the course content similarity, for the course v to be recommended, we can use the TOP-k sorting to obtain the K courses closest to the course v to be recommended, and then generate the learner-course demand degree DD according to the situation of the learner selecting courses in the similar course set:

[0126]

[0127] Among them, v' represents the similar course of course v, and U v′ represents the set of learners who have registered for course v', is the indicator function; it returns 1 when u ∈ U v′ and returns 0 otherwise.

[0128] After obtaining the embedded representation of the learner and the embedded representation of the course, combine the two and use the activation function to perform the preliminary preference score prediction. The specific formula is as follows:

[0129]

[0130] Among them, sigmoid represents the activation function.

[0131] Then, calculate the learner-course relevance, learner-course matching degree, and learner-course demand degree, and combine the preliminary prediction results to obtain the final prediction result. That is, the final preference score:

[0132]

[0133] It can be understood that courses with a final preference score exceeding the threshold are recommended to learners.

[0134] Among them, a + b + c = 1; preferably, a = 1 / 3, b = 1 / 3, c = 1 / 3, and those skilled in the art can also set different values according to actual needs; f is a mapping function that maps values to the range [0.5, 1.5], and the mapping function f can be expressed as:

[0135]

[0136] For the calculation of the loss function, this model uses the binary cross-entropy loss function to perform binary cross-entropy on the data in a sample set and sum them up.

[0137] The loss function of this model is:

[0138]

[0139] Among them, l is the cross-entropy loss, P is the sample set, y uv is the true value, is the predicted value.

[0140] Example:

[0141] The experiment used the MOOC dataset of a certain university, which contains the interaction information of 698 courses from 199,199 learners, and implemented the functions of the recommendation model based on the PyTorch framework. By modeling from both the user side and the item side, the knowledge graph and high-order collaborative information were jointly incorporated into the recommendation model, and the metrics AUC, ACC, Precision, and F1 were calculated. First, the user interaction information and the knowledge graph were used as inputs in the input layer. Then, high-order connectivity expression modeling was performed in the high-order user-item interaction graph to capture deeper features on the user side to enrich the user-side embedding representation, and neighbor feature embedding was performed in the knowledge graph through neighbor sampling and combined with the attention mechanism to enrich the item-side embedding representation. Then, in the aggregation layer, the embedding representations of the neighbors calculated in the embedding layer were aggregated with their own representations to obtain the final user and item representations. Then, the embedding representations of the user and the item were combined through the prediction function to obtain the preliminary prediction score. Finally, three indicators, namely learner-course relevance, learner-course matching degree, and learner-course demand degree, were introduced to deeply explore the relationships in various dimensions between learners and courses to obtain the final prediction score. The final output is the preference degree of a given user for the target item, expressing the size of the user's interest. The results were analyzed from several aspects of the recommendation metrics AUC, ACC, Precision, and F1, as described below:

[0142] The comparative experiment used the DEKGCI model, that is, the preference scores of preset users for preset courses calculated initially were used to recommend courses to users. For the detailed technical solution, refer to the description in Patent Document CN 115329196 A, which will not be elaborated here.

[0143] (1) Analysis of AUC results: The data used in the comparative experiment process was the same as that used in this experiment, and the prediction function used was the same. When comparing the present invention with the DEKGCI model, the AUC experimental results were 0.9356 and 0.8003 respectively. The present invention improved by 13.53% compared with the comparative experiment. Thus, in terms of recommendation accuracy, the recommendation method of the present invention has better effects.

[0144] (2) Analysis of ACC results: The data used in the comparative experiment process was the same as that used in this experiment, and the prediction function used was the same. When comparing the present invention with the DEKGCI model, the ACC experimental results were 0.8406 and 0.7345 respectively. The present invention improved by 10.61% compared with the comparative experiment. Thus, in terms of recommendation performance, the recommendation method of the present invention has better performance.

[0145] (3) Precision result analysis: The data used in the comparative experiment process is the same as that used in this experiment, and the prediction functions used are the same. The present invention is compared with the DEKGCI model. The Precision experiment results are 0.9506 and 0.7580 respectively. The present invention has increased by 19.26% compared with the comparative experiment. Thus, in terms of the recommendation accuracy, the recommendation method of the present invention has better effects.

[0146] (4) F1 result analysis: The data used in the comparative experiment process is the same as that used in this experiment, and the prediction functions used are the same. The present invention is compared with the DEKGCI model. The F1 experiment results are 0.8139 and 0.7223 respectively. The present invention has increased by 9.16% compared with the comparative experiment. Thus, in terms of the recommendation performance, the recommendation method of the present invention has better performance.

[0147] Figure 6 This is the architecture diagram of the course recommendation system provided by the embodiment of the present invention. As Figure 6 shown, it includes:

[0148] A preliminary course preference calculation unit 610, configured to determine a high-order interaction graph between a user and a course according to historical interaction information between different users and different courses, and determine a knowledge graph of the course based on different attributes of the course; and determine a high-order embedding representation of a preset user based on the high-order interaction graph, and determine an aggregated embedding representation of a preset course based on first-order neighbors of each course in the knowledge graph, and then preliminarily calculate a preference score of the preset user for the preset course based on the high-order embedding representation of the user and the aggregated embedding representation of the course;

[0149] A relevance determination unit 620, configured to determine a set of similar users of a preset user according to the similarity between users, and determine the relevance between the preset user and the preset course according to the course selection situation of the users in the set of similar users; if the degree to which the preset course is selected by the users in the set of similar users is higher, the relevance is relatively higher;

[0150] A matching degree determination unit 630, configured to, for any two courses, determine the matching degree between any two courses according to the number of users who select both courses and the number of users who select a single course, and then calculate the average matching degree between the preset course and the courses already selected by the preset user to determine the matching degree between the preset user and the preset course;

[0151] A demand degree determination unit 640, configured to determine a set of similar courses of a preset course according to the similarity between courses, and determine the demand degree between the preset user and the preset course according to the course selection situation of the preset user for the courses in the set of similar courses; if the degree to which the preset user selects the courses in the set of similar courses is higher, the demand degree is relatively higher;

[0152] A course recommendation unit 650 is used to update the initially calculated preference score in combination with the relevance, matching degree, and demand degree, so as to obtain the final preference score of a preset user for a preset course, and recommend courses to the preset user according to the final preference score.

[0153] It can be understood that for the detailed function implementation of each of the above units, refer to the description in the foregoing method embodiments, and details are not described herein.

[0154] It should be understood that the above system is used to execute the method in the above embodiment. For the corresponding program modules in the system, their implementation principles and technical effects are similar to those described in the above method. The working process of this system can refer to the corresponding process in the above method, and details are not described herein.

[0155] Based on the method in the above embodiment, an embodiment of the present invention provides an electronic device. The device may include: at least one memory for storing a program and at least one processor for executing the program stored in the memory. Wherein, when the program stored in the memory is executed, the processor is used to execute the method described in the above embodiment.

[0156] Based on the method in the above embodiment, an embodiment of the present invention provides a computer-readable storage medium. The computer-readable storage medium stores a computer program. When the computer program runs on a processor, the processor is caused to execute the method in the above embodiment.

[0157] Based on the method in the above embodiment, an embodiment of the present invention provides a computer program product. When the computer program product runs on a processor, the processor is caused to execute the method in the above embodiment.

[0158] It can be understood that the processor in the embodiments of the present invention may be a central processing unit (CPU), or may also be other general-purpose processors, digital signal processors (DSPs), application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. The general-purpose processor may be a microprocessor or any conventional processor.

[0159] The method steps in the embodiments of the present invention can be implemented in a hardware manner or by a processor executing software instructions. The software instructions can be composed of corresponding software modules, and the software modules can be stored in a random access memory (RAM), flash memory, read-only memory (ROM), programmable ROM (PROM), erasable PROM (EPROM), electrically erasable PROM (EEPROM), register, hard disk, removable hard disk, CD-ROM, or any other form of storage medium well known in the art. An exemplary storage medium is coupled to the processor so that the processor can read information from the storage medium and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and the storage medium can be located in an ASIC.

[0160] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the processes or functions described in the embodiments of the present invention are generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer-readable storage medium or transmitted through the computer-readable storage medium. The computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center in a wired manner (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or a wireless manner (such as infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that the computer can access or a data storage device such as a server or data center that includes one or more integrated available media. The available medium can be a magnetic medium (such as a floppy disk, hard disk, magnetic tape), an optical medium (such as a DVD), or a semiconductor medium (such as a solid state disk (SSD)).

[0161] It can be understood that the various numerical numbers involved in the embodiments of the present invention are only for the convenience of description and are not used to limit the scope of the embodiments of the present invention.

[0162] Those skilled in the art can easily understand that the above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent replacements, and improvements made within the spirit and principle of the present invention shall be included within the protection scope of the present invention.

Claims

1. A course recommendation method, characterized in that Including the following steps: Determine the high-order interaction graph between users and courses according to the historical interaction information of different users and different courses, and determine the knowledge graph of courses based on different attributes of courses; Determine the high-order embedding representation of a preset user based on the high-order interaction graph, and determine the aggregated embedding representation of a preset course based on the first-order neighbors of each course in the knowledge graph. Then, preliminarily calculate the preference score of the preset user for the preset course based on the high-order embedding representation of the user and the aggregated embedding representation of the course; Determine the set of similar users of the preset user according to the similarity between users, and determine the relevance between the preset user and the preset course according to the course selection situation of the users in the set of similar users; if the degree to which the preset course is selected by the users in the set of similar users is higher, then the relevance is relatively higher; For any two courses, determine the collocation degree between any two courses according to the number of users who select both courses and the number of users who select a single course, and then calculate the average collocation degree between the preset course and the courses already selected by the preset user to determine the matching degree between the preset user and the preset course; Determine the set of similar courses of the preset course according to the similarity between courses, and determine the demand degree between the preset user and the preset course according to the course selection situation of the preset user for the courses in the set of similar courses; If the degree to which the preset user selects the courses in the set of similar courses is higher, then the demand degree is relatively higher; Combine the relevance, matching degree and demand degree to update the preliminarily calculated preference score to obtain the final preference score of the preset user for the preset course, so as to recommend courses to the preset user according to the final preference score.

2. The method according to claim 1, wherein The relevance is determined through the following steps: Use the cosine metric between user representations to represent the similarity between user latent interest vectors; user u i and user u j The cosine similarity between them is as follows: Among them, represents the characterization of user u i ; represents the characterization of user u j ; represents the magnitude of the vector of user u i ; represents the magnitude of the vector of user u j ; Take multiple users with the top similarity rankings to the preset user as the set of similar users, and calculate the relevance RD(u, v) between the preset user u and the preset course v through the following formula: Among them, u′ represents the similar users of u, and C u′ represents the set of courses registered by user u′, is an indicator function that equals 1 when v ∈ C u′ and 0 otherwise. U u,k1 represents the set of similar users of user u, and k1 represents the number of users in the set of similar users.

3. The method according to claim 1, wherein The matching degree is determined through the following steps: Calculate the proportion of the number of users who select both course v and course v′ to the number of users who select course v as confidence(v→v′); Calculate the proportion of the number of users who select both course v and course v′ to the number of users who select course v′ as confidence(v′→v), and the calculation process is as follows: Among them, N v represents the set of users who select course v, and N v′ represents the set of users who select course v'; Regard CC(v, v′) as the collocation degree between two courses, and the calculation process is: Calculate the average collocation degree between the preset course v and the courses in the set of courses already selected by the user as the matching degree AD(u, v) between the preset user and the preset course, and the calculation process is as follows: Among them, N u is the set of courses selected by the user, |N u | is the total number of courses in N u ​ 4. The method according to claim 1, wherein The demand degree is determined through the following steps: For course v i and course v j , the Euclidean distance algorithm is used to calculate the course similarity: Among them, and are the k-th dimensional values of the vector representations of v i and v j respectively, and d is the length of the vector representation; For the preset course v, take multiple courses with the top similarity rankings to the preset course as the set of similar courses, and calculate the demand degree DD(u, v) between the preset user u and the preset course v through the following formula: Among them, v' represents the similar courses of course v; U v′ represents the set of users who have registered for course v'; is an indicator function that returns 1 when u ∈ U v′ and returns 0 otherwise; C v,k2 represents the set of similar courses of the preset course v, and k2 represents the number of courses in the set of similar courses.

5. The method according to any one of claims 1 to 4, characterized in that Update the initially calculated preference score in combination with the relevance, matching degree, and demand degree to obtain the final preference score of the preset user for the preset course Specifically: where f is a mapping function; is the preliminary preference score calculated; RD(u, v), AD(u, v), and DD(u, v) are the relevance, matching degree, and demand degree respectively; a, b, and c are the weights of the relevance, matching degree, and demand degree respectively, and a + b + c = 1.

6. A course recommendation system, characterized in that, Including: A course preference preliminary calculation unit, configured to determine the high-order interaction graph between users and courses according to the historical interaction information of different users and different courses, and determine the knowledge graph of courses based on different attributes of courses; And determining the high-order embedding representation of the preset user based on the high-order interaction graph, and determining the aggregated embedding representation of the preset course based on the first-order neighbors of each course in the knowledge graph, and then preliminarily calculating the preference score of the preset user for the preset course based on the high-order embedding representation of the user and the aggregated embedding representation of the course; The relevance determination unit is configured to determine a set of similar users of the preset user according to the similarity between users, and determine the relevance between the preset user and the preset course according to the course selection situation of the users in the set of similar users; if the degree to which the preset course is selected by the users in the set of similar users is higher, the relevance is relatively higher; The matching degree determination unit is configured to, for any two courses, determine the collocation degree between any two courses according to the number of users who select both courses and the number of users who select a single course, and then calculate the average collocation degree between the preset course and the courses already selected by the preset user to determine the matching degree between the preset user and the preset course; The demand degree determination unit is configured to determine a set of similar courses of the preset course according to the similarity between courses, and determine the demand degree between the preset user and the preset course according to the selection situation of the preset user for the courses in the set of similar courses; If the degree to which the preset user selects the courses in the set of similar courses is higher, the demand degree is relatively higher; The course recommendation unit is configured to update the preliminarily calculated preference score by combining the relevance, the matching degree and the demand degree to obtain the final preference score of the preset user for the preset course, so as to recommend courses to the preset user according to the final preference score.

7. The system according to claim 6, wherein The relevance determination unit uses the cosine metric between user representations to represent the similarity between user latent interest vectors; for user u i and user u j The cosine similarity between them is: Wherein, represents the representation of user u i , represents the representation of user u j , represents the modulus of the vector of user u i , represents the modulus of the vector of user u j ; The multiple users with the top-ranked similarity to the preset user are used as the similar user set, and the relevance RD(u, v) between the preset user u and the preset course v is calculated by the following formula: Wherein, u′ represents the similar user of u, and C u′ represents the set of courses registered by user u′, is an indicator function, which is equal to 1 when v ∈ C u′ and 0 otherwise, and U u,k1 represents the set of similar users of user u, and k1 represents the number of users in the similar user set.

8. The system according to claim 6, characterized in that, The matching degree determination unit calculates the proportion of the number of users who select both course v and course v' to the number of users who select course v as confidence(v→v'); calculates the proportion of the number of users who select both course v and course v' to the number of users who select course v' as confidence(v'→v). The calculation process is as follows: Among them, N v represents the set of users who select course v, and N v′ represents the set of users who select course v'. Regarding CC(v, v') as the matching degree between two courses, the calculation process is: Calculate the average matching degree between the preset course v and the courses in the set of courses already selected by the user as the matching degree AD(u, v) between the preset user and the preset course. The calculation process is as follows: Among them, N u is the set of courses already selected by the user, and |N u | is the total number of courses in N u .

9. The system according to claim 6, wherein The demand degree determination unit, for course v i and course v j , calculates the course similarity using the Euclidean distance algorithm: where and are respectively the k-th dimension values of the vector representations of v i and v j , and d is the length of the vector representation; for the preset course v, multiple courses with the top-ranked similarities to the preset course are used as the similar course set, and the demand degree DD(u, v) of the preset user u and the preset course v is calculated by the following formula: where, v' represents the similar course of course v; U v′ represents the set of users who have registered for course v'; is the indicator function, which returns 1 when u ∈ U v′ and returns 0 otherwise; C v,k2 represents the set of similar courses of the preset course v, and k2 represents the number of courses in the similar course set.

10. An electronic device, characterized in that, Comprising: At least one memory for storing programs; At least one processor for executing the programs stored in the memory, and when the programs stored in the memory are executed, the processor is configured to execute the method according to any one of claims 1-5.

Citation Information

Patent Citations

  • Recommendation method and system based on knowledge graph and high-order collaborative information

    CN115329196A

  • Course recommendation method and system based on heterogeneous graph and collaborative attenuation attention mechanism

    CN115272015A

  • Intelligent recommendation method based on teaching big data

    CN115809376A