A course recommendation method and system based on a knowledge graph and multi-task learning

By constructing a job-course knowledge graph and a multi-task learning model, the problems of insufficient data mapping and low personalization in course recommendation are solved, realizing fine-grained and personalized course recommendations to meet students' needs for precise learning guidance.

CN121639424BActive Publication Date: 2026-05-15ZHEJIANG NORMAL UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
ZHEJIANG NORMAL UNIV
Filing Date
2026-02-05
Publication Date
2026-05-15

AI Technical Summary

Technical Problem

Existing technologies for course recommendation suffer from several problems, including a lack of direct mapping between job skill requirements and university course content at the data level, coarse recommendation granularity, and insufficient personalization, making it impossible to achieve accurate, fine-grained, and personalized course recommendations.

Method used

We construct a course recommendation method based on knowledge graphs and multi-task learning. By building a job-course knowledge graph, we obtain the interaction matrix between users and jobs, and use a multi-task learning model to predict the jobs that users are interested in and recommend related courses, integrating individual user characteristics and dynamic job skill requirements.

Benefits of technology

It enables precise matching of university course resources based on the actual job skill requirements, providing personalized course recommendations and improving the granularity and personalization of the recommendations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121639424B_ABST
    Figure CN121639424B_ABST
Patent Text Reader

Abstract

The application discloses a course recommendation method and system based on a knowledge graph and multi-task learning, relates to the technical field of course recommendation, and relates to a method which constructs a position-course knowledge graph of associated position information and course information, fuses position and course information, predicts the first K positions of interest of a target user through a multi-task learning model comprising a recommendation module, a knowledge graph embedding module and a cross compression unit module, and recommends courses associated with the first K positions to the target user through the position-course knowledge graph, so that fine-grained and personalized course accurate recommendation of the target user is achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of course recommendation technology, and more specifically to a course recommendation method and system based on knowledge graphs and multi-task learning. Background Technology

[0002] Currently, some research has attempted to use artificial intelligence to assist in career planning and learning recommendations. Some studies analyze and optimize from the perspective of educational structure; others explore the application of technologies such as deep learning and recommendation systems to career development guidance, for example, recommending online courses by analyzing user behavior data or planning career paths based on user skills. However, these existing solutions still have many limitations in practical applications:

[0003] First, there is a severe limitation at the data level. Most existing public datasets only contain course information or job information, lacking data resources that organically link the two. This makes it impossible to establish a direct mapping from specific job skill requirements to university course content, which is a fundamental obstacle to achieving accurate recommendations.

[0004] Secondly, the recommendations are rather coarse-grained. Existing solutions mostly focus on recommending overall learning directions or career paths, failing to delve into specific courses or skill modules. This results in recommendations that are not very actionable and cannot provide students with fine-grained, direct guidance for their learning.

[0005] Finally, the level of personalization is insufficient. Most solutions fail to deeply integrate individual user characteristics (such as historical behavior and interests) with dynamic job skill requirements, resulting in homogeneous recommendation results that cannot meet students' personalized development needs.

[0006] Therefore, how to deeply integrate job market demands, knowledge-based course resources, and individual user characteristics to achieve precise, granular, and personalized course recommendations is a problem that those skilled in the art urgently need to solve. Summary of the Invention

[0007] In view of the above problems, the present invention is proposed to provide a course recommendation method and system based on knowledge graph and multi-task learning that overcomes or at least partially solves the above problems.

[0008] To achieve the above objectives, the present invention adopts the following technical solution:

[0009] This invention provides a course recommendation method based on knowledge graphs and multi-task learning. The course recommendation method based on knowledge graphs and multi-task learning includes the following steps:

[0010] Construct a job-course knowledge graph that links job information with course information; the job-course knowledge graph consists of a triplet of head entity vector, relation vector, and tail entity vector.

[0011] Obtain user vectors and job vectors, and construct a user-job interaction matrix.

[0012] A multi-task learning model is constructed, comprising a recommendation module and a knowledge graph embedding module, which are connected by a cross-compression unit module. The recommendation module uses user vectors and job vectors from the user-job interaction matrix as feature inputs and outputs the predicted probability of user-job interaction. The knowledge graph embedding module uses head entity vectors and relation vectors from the job-course knowledge graph as feature inputs and outputs the predicted tail entity vectors. The cross-compression unit module performs feature interaction on the job vectors input from the recommendation module and the head entity vectors input from the knowledge graph embedding module, outputting job feature vectors to train the multi-task learning model.

[0013] A trained multi-task learning model is used to predict the top K jobs that a target user is interested in, and courses associated with the top K jobs are recommended to the target user through the job-course knowledge graph.

[0014] Preferably, constructing a job-course knowledge graph that links job information with course information includes the following steps:

[0015] Collect job data to form the original job dataset, and perform clustering and semantic deduplication on job names to obtain the deduplicated job dataset;

[0016] Collect course data to form the original course dataset, and perform clustering and semantic deduplication on the course names to obtain the deduplicated course dataset;

[0017] Skill keywords are extracted from the deduplicated job dataset, and the skill keywords are deduplicated and irrelevant words are removed to form a skill vocabulary list;

[0018] Entity recognition is performed on the description text of each course in the deduplicated course dataset, and the identified entities are matched with the skill vocabulary to establish the association between courses and skills.

[0019] Based on the association between the job and the course, a job-course knowledge graph is constructed.

[0020] Preferably, job data is collected to form an original job dataset, and job names are clustered and semantically deduplicated to obtain a deduplicated job dataset, including the following steps:

[0021] Collect job data to form the original job dataset;

[0022] use Clustering algorithms are used to cluster the job names in the original job dataset;

[0023] use The algorithm calculates the similarity between job titles in each cluster and determines whether the similarity between the job titles is less than a first similarity threshold. If so, no deduplication is performed; otherwise, the algorithm proceeds to the next step.

[0024] The BERT algorithm is used to calculate the deep semantic representation of the job description corresponding to each job name in each cluster. Based on the deep semantic representation of the job description corresponding to each job name in each cluster, the semantic similarity between the deep semantic representations of the job descriptions of each job name in each cluster is calculated. It is then determined whether the semantic similarity between the deep semantic representations of the job descriptions of each job name in each cluster is less than a second similarity threshold. If it is, no deduplication is performed; otherwise, semantic deduplication is performed to obtain the deduplicated job dataset.

[0025] Preferably, skill keywords are extracted from the deduplicated job dataset using the following formula:

[0026] ;

[0027] in, Indicates skill keywords; This represents the deduplicated job dataset; This refers to the operation of extracting skill terms from fields such as job title and description;

[0028] The skill keywords are deduplicated and irrelevant words are removed to form a skill vocabulary list, using the following formula:

[0029] ;

[0030] in, S This indicates a vocabulary list of skills. This indicates that duplicate keywords for skills have been removed. This indicates the process of removing irrelevant words from the deduplicated skill keywords.

[0031] Optionally, entity recognition is performed on the description text of each course in the deduplicated course dataset, using the following formula:

[0032] ;

[0033] in, This represents the set of entities contained in a course within the deduplicated course dataset. This indicates the courses in the deduplicated course dataset. Description text, This indicates that the BERT entity recognition model is used to analyze the deduplicated course data. Entity recognition is performed on the descriptive text;

[0034] The identified entities are matched with the skill vocabulary to establish the association between courses and skills, using the following formula:

[0035] ;

[0036] in, Indicates the identified entity; Represents entities in the skills vocabulary; This indicates that the identified entities are matched with entities in the skill vocabulary, and the similarity between the identified entities and entities in the skill vocabulary is output. If the similarity between the identified entities and entities in the skill vocabulary exceeds a certain threshold... In the case of sim, the value is assigned as 1; otherwise, the value is assigned as 0. Indicates similarity.

[0037] Preferably, the execution process of the cross-compression unit module includes:

[0038] The cross-compression unit in the cross-compression unit module captures the second-order interaction information between job vectors and entity vectors. The second-order interaction information is projected and fused using a learnable weight matrix. By stacking multiple layers of cross-compression units, job vectors and entity vectors with enhanced relevance are output.

[0039] Preferably, the execution process of the recommendation module includes:

[0040] The user vector is input into the multilayer perceptron to obtain the user feature vector;

[0041] The job vector and the head entity vector in the job-course knowledge graph are input into the cross-compression unit module to perform feature fusion of the job vector and the head entity vector to obtain the job feature vector;

[0042] The user feature vector and the job feature vector are non-linearly mapped and concatenated to obtain the interaction feature vector;

[0043] The interaction feature vector is input into a linear layer to obtain the original predicted probability value of user interaction with job posting;

[0044] The original predicted probability values ​​are input into the CorNet block, which outputs the predicted probability of user interaction with job postings.

[0045] Preferably, the execution process of the knowledge graph embedding module includes:

[0046] The job vector and the head entity vector in the job-course knowledge graph are input into the cross-compression unit to perform feature fusion of the head entity vector and the job vector, resulting in an enhanced head entity feature vector.

[0047] The relation vectors in the job-course knowledge graph are input into a multilayer perceptron to obtain relation feature vectors;

[0048] The head entity feature vector and the relation feature vector are concatenated to obtain the concatenated fused vector;

[0049] The fused vector is input into the linear layer to obtain the original predicted tail entity vector;

[0050] The original predicted tail entity vector is input into the CorNet block to obtain the enhanced predicted tail entity vector;

[0051] The enhanced predicted tail entity vector is input into the knowledge graph scoring function. It performs supervised learning within a multi-task learning framework and outputs the predicted tail entity vector.

[0052] Preferably, the method involves using a trained multi-task learning model to predict the top K jobs that the target user is interested in, and then recommending courses associated with the top K jobs to the target user through the job-course knowledge graph, including the following steps:

[0053] Use a trained multi-task learning model to predict the probability of target users interacting with job postings;

[0054] Based on the predicted probability of the target user interacting with the job, select the top K jobs that the target user is interested in;

[0055] Find the skill sets required for the top K positions in the job-course knowledge graph;

[0056] Based on the skill set, find courses associated with the skill set;

[0057] The found courses will be recommended to the target users.

[0058] This invention also provides a course recommendation system based on knowledge graphs and multi-task learning, the system comprising:

[0059] The Job-Course Knowledge Graph Construction Module is used to construct a job-course knowledge graph that associates job information with course information; the job-course knowledge graph consists of a triplet of head entity vector, relation vector, and tail entity vector.

[0060] The user-job interaction matrix construction module is used to obtain user vectors and job vectors and construct the user-job interaction matrix.

[0061] The multi-task learning model construction module is used to build a multi-task learning model, which includes a recommendation module and a knowledge graph embedding module, connected by a cross-compression unit module. The recommendation module takes user vectors and job vectors as feature inputs and outputs the predicted probability of user-job interaction. The knowledge graph embedding module takes head entity vectors and relation vectors in the job-course knowledge graph as feature inputs and outputs the predicted tail entity vectors. The cross-compression unit module performs feature interaction on the job vectors input from the recommendation module and the head entity vectors input from the knowledge graph embedding module, and outputs enhanced job vectors and head entity vectors.

[0062] The multi-task learning model training module is used to train multi-task learning models.

[0063] The course recommendation module uses a trained multi-task learning model to predict the top K jobs that a target user is interested in, and recommends courses associated with the top K jobs to the target user through a job-course knowledge graph.

[0064] As can be seen from the above technical solution, compared with the prior art, the present invention has the following beneficial effects:

[0065] This invention implements a job-oriented personalized course recommendation algorithm, which can accurately match university course resources at a fine-grained content level according to the actual job skill requirements, and provide personalized recommendations based on individual user characteristics. Attached Figure Description

[0066] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on the provided drawings without creative effort.

[0067] Figure 1 This is a flowchart of a course recommendation method based on knowledge graph and multi-task learning provided in an embodiment of the present invention;

[0068] Figure 2 A detailed flowchart illustrating the steps involved in constructing a job-course knowledge graph that links job information with course information;

[0069] Figure 3 This is a structural diagram of the JC-CorMKR multi-task learning model provided in this embodiment of the invention;

[0070] Figure 4A detailed structural diagram of the CorNet block in the JC-CorMKR multi-task learning model structure diagram;

[0071] Figure 5 This is a comparison of the accuracy of different models on the job-course dataset in this embodiment of the invention;

[0072] Figure 6 This is a comparison of the accuracy of different models on a book dataset in this embodiment of the invention;

[0073] Figure 7 This is a comparison of the accuracy of different models on a movie dataset in this embodiment of the invention;

[0074] Figure 8 This is a comparison of the accuracy of different models on a music dataset in the embodiments of the present invention;

[0075] Figure 9 This is a schematic diagram of a course recommendation system based on knowledge graph and multi-task learning provided in an embodiment of the present invention. Detailed Implementation

[0076] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0077] like Figure 1 As shown in the figure, this invention discloses a course recommendation method based on knowledge graphs and multi-task learning. The course recommendation method based on knowledge graphs and multi-task learning includes the following steps:

[0078] Construct a job-course knowledge graph that links job information with course information; the job-course knowledge graph consists of a triplet of head entity vector, relation vector, and tail entity vector.

[0079] Obtain user vectors and job vectors, and construct a user-job interaction matrix;

[0080] A multi-task learning model is constructed, comprising a recommendation module and a knowledge graph embedding module, which are connected by a cross-compression unit module. The recommendation module takes user vectors and job vectors from the user-job interaction matrix as feature inputs and outputs the predicted probability of user-job interaction. The knowledge graph embedding module takes head entity vectors and relation vectors from the job-course knowledge graph as feature inputs and outputs the predicted tail entity vectors. The cross-compression unit module performs feature interaction between the job vectors input from the recommendation module and the head entity vectors input from the knowledge graph embedding module, outputting job feature vectors to train the multi-task learning model.

[0081] We use a trained multi-task learning model to predict the top K jobs that the target user is interested in, and then recommend courses related to the top K jobs to the target user through a job-course knowledge graph.

[0082] Specifically, such as Figure 2 As shown, constructing a job-course knowledge graph that links job information with course information includes the following steps:

[0083] Step 101: Collect job data to form the original job dataset, and perform clustering and semantic deduplication on the job names to obtain the deduplicated job dataset, including the following sub-steps:

[0084] Collect job data to form the original job dataset;

[0085] Specifically, this embodiment uses web crawling technology to collect computer-related job data from mainstream recruitment websites to form the original job dataset. D , Each data item Includes job title Structured fields such as job description, required skills, and company information.

[0086] use Clustering algorithms are used to analyze job titles in the original job dataset. Clustering is performed, and the formula is expressed as: ,in, ,in For data Job titles in each cluster This represents a set of semantically similar job titles. This represents the number of clusters in the clustering;

[0087] use The algorithm calculates the similarity between job titles in each cluster and determines whether the similarity between the job titles is less than a first similarity threshold. If so, no deduplication is performed; otherwise, the algorithm proceeds to the next step.

[0088] Specifically, during implementation, the job titles in each cluster are entered sequentially. Algorithm: Calculate the similarity between job titles within a cluster.

[0089] ;

[0090] in, For data Job title in the document; For data Job title in the document;

[0091] Set the first similarity threshold ,like If the two are not redundant, no deduplication is performed, and the data is... and data Add to job dataset J :

[0092] ;

[0093] like If so, proceed to the next step.

[0094] The BERT algorithm is used to calculate the deep semantic representation of the job description corresponding to each job name in each cluster. Based on the deep semantic representation of the job description corresponding to each job name in each cluster, the semantic similarity between the deep semantic representations of the job descriptions of each job name in each cluster is calculated. It is then determined whether the semantic similarity between the deep semantic representations of the job descriptions of each job name in each cluster is less than a second similarity threshold. If it is, no deduplication is performed; otherwise, semantic deduplication is performed to obtain the deduplicated job dataset.

[0095] Specifically, when At that time, extract the corresponding job description. and The deep semantic representation is computed using the BERT model:

[0096] ;

[0097] ;

[0098] Calculate semantic similarity:

[0099] ;

[0100] Set a second similarity threshold , If the data is not redundant, it will be determined as non-redundant data and will not be deduplicated. and data Add to job dataset middle:

[0101] ;

[0102] Finally, we obtain the deduplicated job dataset. This method can significantly reduce computation compared to directly using BERT for semantic analysis and deduplication.

[0103] Step 102: Collect course data to form the original course dataset, and perform clustering and semantic deduplication on the course names to obtain the deduplicated course dataset.

[0104] Specifically, regarding course data, undergraduate curriculum plans for computer-related majors were systematically collected from the official websites of multiple universities in China. To ensure the representativeness and diversity of the data, forty-two top domestic universities were randomly selected, and their course offerings and teaching arrangements were extracted. During the data cleaning process, only courses directly related to the computer science major were retained, and the deduplication process was followed as described above for job data, ultimately resulting in the deduplicated course dataset C.

[0105] In this embodiment, after constructing the job datasets respectively With course dataset Subsequently, since the two have different feature forms, appropriate data processing methods are used to extract relevant skills.

[0106] Step 103: Extract skill keywords from the deduplicated job dataset, and deduplicate and remove irrelevant words from the skill keywords to form a skill vocabulary list.

[0107] Specifically, skill keywords are extracted from the deduplicated job dataset using the following formula:

[0108] ;

[0109] in, Indicates skill keywords; This represents the deduplicated job dataset; This refers to the operation of extracting skill terms from fields such as job title and description;

[0110] The skill vocabulary is generated by deduplicating and removing irrelevant words from the skill keywords, using the following formula:

[0111] ;

[0112] in, S Vocabulary of skills, This indicates that duplicate keywords for skills have been removed. This indicates that irrelevant words were manually removed from the deduplicated skill keywords.

[0113] Step 104: Perform entity recognition on the description text of each course in the deduplicated course dataset, and match the identified entities with the skill vocabulary to establish the association between courses and skills.

[0114] Specifically, in this embodiment, entity recognition is performed on the description text of each course in the deduplicated course dataset using the following formula:

[0115] ;

[0116] in, This represents the courses in the deduplicated course dataset. The collection of entities included This represents the courses in the deduplicated course dataset. Description text, This indicates that the BERT entity recognition model is used to analyze the deduplicated course data. Entity recognition is performed on the descriptive text;

[0117] Identified entities With skills vocabulary list S To match and establish the association between courses and skills, the following formula is used:

[0118] ;

[0119] in, Indicates the identified entity; Represents entities in the skills vocabulary; This indicates that the output will show the similarity between the identified entities and entities in the skill vocabulary. If the similarity between the identified entities and entities in the skill vocabulary exceeds a certain threshold... In the case of sim, the value is assigned as 1; otherwise, the value is assigned as 0. Indicates similarity.

[0120] Step 105: Construct a job-course knowledge graph based on the relationships between jobs, skills, and courses.

[0121] Step 2: Obtain user vectors and job vectors, and construct the user-job interaction matrix Y.

[0122] Specifically, in this embodiment, there is a group of M users. and a set of N positions This constitutes a user-job interaction matrix. ,in Indicates user With position Interactive behavior (click, view, favorite, etc.) must occur, otherwise .

[0123] In this embodiment, the job-course knowledge graph G obtained in step 1 and the user-job interaction matrix obtained in step 2 are... Y The goal is to learn a prediction function. ,in User vector With job vector The probability of an interactive action occurring. Representation function The model parameters are determined. Finally, based on the prediction results, the K positions with the highest probabilities will be selected, and knowledge graphs will be used to recommend course information related to these positions to users, specifically implemented in subsequent steps 3-5.

[0124] Step 3: This invention constructs the JC-CorMKR multi-task learning model, such as... Figure 3 As shown, the JC-CorMKR multi-task learning model includes a recommendation module and a knowledge graph embedding module, which are connected through a cross-compression unit module; the recommendation module uses user vectors u With job vector v As feature input, the output is the predicted probability of user interaction with job; the knowledge graph embedding module uses the head entity vectors from the job-course knowledge graph. h and relation vector r As feature input, the output is the predicted tail entity vector; the cross-compression unit module performs feature interaction on the job vector input from the recommendation module and the head entity vector input from the knowledge graph embedding module, and outputs the enhanced job vector and head entity vector.

[0125] Specifically, the execution process of the recommendation module includes: processing user vectors... u Input to multilayer perceptron MLP To obtain the user feature vector u L ; Combine the job vector and the head entity vector in the job-course knowledge graph h Input to cross compression unit C In the process of performing job vectorization v With head entity vector h Feature fusion yields the job feature vector. v L ; user feature vector u L and job feature vector v L By performing nonlinear mapping and concatenation, we obtain the interactive feature vector. , v L andu L , The interaction feature vector is input into a linear layer to obtain the raw predicted probability values ​​of user-job interaction; the raw predicted probability values ​​are then input into a CorNet block, such as... Figure 3 As shown, the final predicted probability of enhanced user-job interaction is obtained. .

[0126] The execution process of the cross-compression unit module includes: using the cross-compression unit. C It captures second-order interaction information between job vectors and entity vectors, projects and fuses this second-order interaction information using a learnable weight matrix, and employs multi-layer stacked cross-compression units. C The model progressively extracts and fuses high-order interaction features, outputting a job feature vector that retains the original semantic information and enhances relevance. v L and head entity feature vector h L .

[0127] Specifically, the cross-compression unit module can automatically learn the high-order feature interactions between job vectors in the recommendation module and entities in the knowledge graph embedding module.

[0128] The execution process of the knowledge graph embedding module includes: combining the job vector and the head entity vector from the job-course knowledge graph. h The input is fed into the cross-compression unit to generate the head entity vector. h With job vector v Feature fusion yields an enhanced head entity feature vector. h L ; The relation vectors in the job-course knowledge graph r Input to multilayer perceptron MLP To obtain the relation feature vector r L ; to transform the head entity feature vector h L With relational feature vectors r L The concatenation is performed to obtain the concatenated fusion vector. h L , r L The fused vector is input into the linear layer to obtain the original predicted tail entity vector. ; the original predicted tail entity vector The input is fed into a CorNet block to obtain an enhanced predicted tail entity vector; a scoring function is then applied. The augmented predicted tail entity vectors are supervised by the real tail entity vectors in the job-course knowledge graph, and the final predicted tail entity vectors are output.t .

[0129] More specifically, in this embodiment, the CorNet module in the JC-CorMKR multi-task learning model enhances the original predicted probability value of the linear layer output. The formula for constructing CorNet is defined as follows:

[0130] ;

[0131] in, This represents the underlying mapping function. Specifically, This represents the original prediction value before the CorNet block. This represents the augmented prediction value after the CorNet block. However, the CorNet model can cause training instability in the JC-CorMKR multi-task learning model. Therefore, a concept similar to a "residual structure" is designed: the user vector... With job vector Input into MLP to extract user features With job characteristics :

[0132] ;

[0133] ;

[0134] in, This indicates that the vector is extracted using an L-layer MLP. The extracted features are then processed through another MLP for non-linear mapping before being concatenated with another original feature.

[0135] ;

[0136] in, , This indicates that two different multilayer perceptrons were set up to perform nonlinear mapping on the features. The high-order features obtained from the final concatenation are then input into a linear layer to obtain the original predicted values:

[0137] ;

[0138] Finally, the obtained probability prediction values ​​are input into CorNet to obtain enhanced prediction values.

[0139] Step 4: Train the JC-CorMKR multi-task learning model.

[0140] Step 5: Utilize the trained JC-CorMKR multi-task learning model to predict the top K jobs that the target user is interested in, and recommend courses associated with the top K jobs to the target user through the job-course knowledge graph. This includes the following steps: using the trained JC-CorMKR multi-task learning model to predict the probability of the target user interacting with jobs; selecting the top K jobs that the target user is interested in based on the predicted probability of interaction; searching for the skill sets required for the top K jobs in the job-course knowledge graph; searching for courses associated with the skill sets; and recommending the found courses to the target user.

[0141] In summary, the course recommendation method based on knowledge graph and multi-task learning proposed in this invention introduces nonlinear transformation, which enhances feature representation ability and makes it easier to learn the implicit interaction relationship between users and positions. In addition, the above method has stronger symmetrical interaction and can more balancedly consider the influence of users and positions on each other, thereby making the model training highly stable and less prone to oscillation.

[0142] This invention provides a specific embodiment to verify the feasibility of the above method. This embodiment also experimentally verifies the course dataset, job dataset, and JC-CorMKR multi-task learning model used in the above method, as follows:

[0143] The following four datasets were used in the experiment (the first three are commonly used benchmark datasets in the recommendation field):

[0144] 1. MovieLens-1M dataset: The MovieLens-1M dataset is a widely used benchmark dataset for movie recommendations. It contains approximately 1 million explicit ratings (ranging from 1 to 5) from the MovieLens website.

[0145] 2. The Book-Crossing dataset contains explicit ratings (ranging from 0 to 10) for 1,149,780 books in the Book-Crossing community.

[0146] 3. The Last.FM dataset contains musician listening information from 2,000 users of the Last.fm online music system.

[0147] 4. Job-class dataset: This dataset was built using the methods described above. The data sources are major popular recruitment websites and information from randomly selected training programs of top domestic universities.

[0148] The datasets mentioned above are all subsets that can be used for knowledge-enhanced recommendation.

[0149] The basic statistical data of the four datasets are shown in Table 1.

[0150] Table 1. Basic statistics of the four datasets

[0151]

[0152] In the experimental verification process of this embodiment, the model was developed using Python, the deep learning framework was PyTorch, and it was trained on an NVIDIA 3090 Ti graphics card. Regarding model hyperparameters, this embodiment used a 2-layer CorNetBlock architecture with a batch size of 32 and a learning rate of 0.001, and the same hyperparameters were set across all datasets. For each dataset, the ratio of training set, validation set, and test set was 6:2:2. Each experiment was repeated three times, and the average of the three experiments was taken as the final result. In click-through rate (CTR) prediction, the trained model was applied to each interaction in the test set, and the predicted click probability was output. AUC and accuracy were used to evaluate the performance of CTR prediction.

[0153] First, comparative experiments were conducted with other methods on a job-course dataset to verify the effectiveness of the constructed dataset. Then, comparative experiments were performed with the baseline model on three public datasets to demonstrate the superiority of the model proposed in this embodiment. All models used the same parameter settings. The difference lies in that the comparative models only utilized user-job interaction information, while the model in this embodiment further integrated knowledge graph information. To ensure fairness in the comparison, knowledge graph information was also added to the input of the comparative models, thus ensuring that the input data of all models was consistent. The experimental results are shown in Tables 2 and 3, respectively.

[0154] Table 2. Comparison of experimental results with other methods on the job-course dataset.

[0155]

[0156] In Table 2, "double input" means... Figure 3 The knowledge graph embedding module and cross-compression unit module are integrated into the input method, enabling it to utilize knowledge graph information, while not using knowledge graph information in single-input scenarios. Figure 4 The detailed structure diagram of the CorNet block in the JC-CorMKR multi-task learning model structure diagram is shown. Table 2 shows that the method in this embodiment achieves optimal AUC and suboptimal ACC. Other methods also show no abnormalities in performance on the job-course dataset, thus demonstrating the effectiveness of the job-course dataset.

[0157] Table 3. Comparison results between the baseline model and the public dataset.

[0158]

[0159] Meanwhile, as can be seen from Table 3, the model in this embodiment has improved in all indicators compared with the baseline model. All of the models are dual-input models, which further proves the superiority of the proposed model.

[0160] To verify the effectiveness of the proposed module, this embodiment also conducted ablation experiments on the job-course dataset, with other experimental conditions remaining the same. The CorNet module and the "residual" structure were ablated sequentially. Table 4 shows the ablation experiment results for the CorNet module. Here, w / o CorNet indicates that neither the recommendation module nor the knowledge graph embedding module contains the CorNet module; Recw / o CorNet indicates that only the CorNet part in the recommendation module is removed, while the CorNet part in the knowledge graph embedding module is retained; similarly, Kg w / o CorNet indicates that only the CorNet part in the knowledge graph embedding module is removed, while the CorNet part in the recommendation module is retained; JC-CorMKR is the model proposed in this invention. As can be seen from Table 4, when the CorNet module is removed, whether it is removed separately in the recommendation module and the knowledge graph embedding module, or completely removed from the overall model, the AUC and ACC indices decrease, indicating that the CorNet module plays a crucial role in improving model performance. The ablation experiment results for the "residual" structure are also shown on four different datasets. Figure 5 The results of comparing the accuracy of different models on the job-course dataset; Figure 6 The results of the accuracy comparison of different models on the book dataset, Figure 7 Comparison of accuracy results of different models on movie datasets Figure 8 The results show the accuracy comparison of different models on music datasets. The experimental results on each dataset verify that the introduced "residual structure" has significant effects on maintaining training stability.

[0161] Table 4 Ablation Experiment Results

[0162]

[0163] This example visualizes the relationship between job titles and courses for some users in the recommendation results.

[0164] Based on the same inventive concept, embodiments of the present invention also provide a course recommendation system based on knowledge graphs and multi-task learning, such as... Figure 9 As shown, it includes:

[0165] The Job-Course Knowledge Graph Construction Module is used to construct a job-course knowledge graph that associates job information with course information; the job-course knowledge graph consists of a triplet of head entity vector, relation vector, and tail entity vector.

[0166] The user-job interaction matrix construction module is used to obtain user vectors and job vectors and construct the user-job interaction matrix.

[0167] The multi-task learning model construction module is used to build the JC-CorMKR multi-task learning model. The JC-CorMKR multi-task learning model includes a recommendation module and a knowledge graph embedding module, which are connected through a cross-compression unit module. The recommendation module takes user vectors and job vectors as feature inputs and outputs the predicted probability of user-job interaction. The knowledge graph embedding module takes head entity vectors and relation vectors in the job-course knowledge graph as feature inputs and outputs the predicted tail entity vectors. The cross-compression unit module performs feature interaction on the job vectors input from the recommendation module and the head entity vectors input from the knowledge graph embedding module, and outputs the enhanced job vectors and head entity vectors.

[0168] The multi-task learning model training module is used to train the JC-CorMKR multi-task learning model.

[0169] The course recommendation module uses a trained JC-CorMKR multi-task learning model to predict the top K jobs that a target user is interested in, and recommends courses associated with the top K jobs to the target user through a job-course knowledge graph.

[0170] This invention constructs a job-course dataset that links university courses with job skills. Based on this dataset, it designs and implements personalized course recommendations. By analyzing users' historical job-related behaviors, it can predict users' needs for potential jobs, thereby accurately matching corresponding courses. Experiments on a self-built dataset and multiple public datasets verify the effectiveness of the constructed dataset and the superiority of the algorithm over baseline models in recommendation performance. The dataset constructed in this invention provides a solid data foundation for future research on job-demand-driven course recommendations.

[0171] Since the principles by which these devices and clients solve problems are similar to the aforementioned course recommendation methods based on knowledge graphs and multi-task learning, the implementation of this system can refer to the implementation of the aforementioned methods, and the repetitions will not be repeated.

[0172] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on the differences from other embodiments. The same or similar parts between the various embodiments can be referred to each other.

[0173] The above description of the disclosed embodiments enables those skilled in the art to make or use the invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the invention. Therefore, the invention is not to be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A course recommendation method based on knowledge graphs and multi-task learning, characterized in that, Includes the following steps: Construct a job-course knowledge graph that links job information and course information; the job-course knowledge graph is composed of a triplet of head entity vector, relation vector, and tail entity vector. Obtain user vectors and job vectors, and construct a user-job interaction matrix; A multi-task learning model is constructed, comprising a recommendation module and a knowledge graph embedding module, which are connected by a cross-compression unit module. The recommendation module uses user vectors and job vectors from the user-job interaction matrix as feature inputs and outputs the predicted probability of user-job interaction. The knowledge graph embedding module uses head entity vectors and relation vectors from the job-course knowledge graph as feature inputs and outputs the predicted tail entity vectors. The cross-compression unit module performs feature interaction on the job vectors input from the recommendation module and the head entity vectors input from the knowledge graph embedding module, outputting job feature vectors to train the multi-task learning model. The trained multi-task learning model is used to predict the top K jobs that the target user is interested in, and the job-course knowledge graph is used to recommend courses associated with the top K jobs to the target user. The execution process of the recommendation module includes: The user vector is input into the multilayer perceptron to obtain the user feature vector; The job vector and the head entity vector in the job-course knowledge graph are input into the cross-compression unit module to perform feature fusion of the job vector and the head entity vector to obtain the job feature vector; The user feature vector and the job feature vector are non-linearly mapped and concatenated to obtain the interaction feature vector; The interaction feature vector is input into a linear layer to obtain the original predicted probability value of user interaction with job posting; Input the original predicted probability values ​​into the CorNet block, and output the predicted probability of user interaction with job posting; The execution process of the knowledge graph embedding module includes: The job vector and the head entity vector in the job-course knowledge graph are input into the cross-compression unit to perform feature fusion of the head entity vector and the job vector, resulting in an enhanced head entity feature vector. The relation vectors in the job-course knowledge graph are input into a multilayer perceptron to obtain relation feature vectors; The head entity feature vector and the relation feature vector are concatenated to obtain the concatenated fused vector; The fused vector is input into the linear layer to obtain the original predicted tail entity vector; The original predicted tail entity vector is input into the CorNet block to obtain the enhanced predicted tail entity vector; The enhanced predicted tail entity vector is input into the knowledge graph scoring function. And supervised learning is performed under a multi-task learning framework to output the predicted tail entity vector; The execution process of the cross-compression unit module includes: The cross-compression unit in the cross-compression unit module captures the second-order interaction information between job vectors and entity vectors. The second-order interaction information is projected and fused using a learnable weight matrix. By stacking multiple layers of cross-compression units, job vectors and entity vectors with enhanced relevance are output.

2. The course recommendation method based on knowledge graph and multi-task learning according to claim 1, characterized in that, Constructing a job-course knowledge graph that links job information with course information includes the following steps: Collect job data to form the original job dataset, and perform clustering and semantic deduplication on job names to obtain the deduplicated job dataset; Collect course data to form the original course dataset, and perform clustering and semantic deduplication on the course names to obtain the deduplicated course dataset; Skill keywords are extracted from the deduplicated job dataset, and the skill keywords are deduplicated and irrelevant words are removed to form a skill vocabulary list; Entity recognition is performed on the description text of each course in the deduplicated course dataset, and the identified entities are matched with the skill vocabulary to establish the association between courses and skills. Based on the association between the job and the course, a job-course knowledge graph is constructed.

3. The course recommendation method based on knowledge graph and multi-task learning according to claim 2, characterized in that, Collect job data to form the original job dataset, and then perform clustering and semantic deduplication on the job names to obtain the deduplicated job dataset. This includes the following steps: Collect job data to form the original job dataset; use Clustering algorithms are used to cluster the job names in the original job dataset; use The algorithm calculates the similarity between job titles in each cluster and determines whether the similarity between the job titles is less than a first similarity threshold. If so, no deduplication is performed; otherwise, the algorithm proceeds to the next step. The BERT algorithm is used to calculate the deep semantic representation of the job description corresponding to each job name in each cluster. Based on the deep semantic representation of the job description corresponding to each job name in each cluster, the semantic similarity between the deep semantic representations of the job descriptions of each job name in each cluster is calculated. It is then determined whether the semantic similarity between the deep semantic representations of the job descriptions of each job name in each cluster is less than a second similarity threshold. If it is, no deduplication is performed; otherwise, semantic deduplication is performed to obtain the deduplicated job dataset.

4. The course recommendation method based on knowledge graph and multi-task learning according to claim 2, characterized in that, Skill keywords are extracted from the deduplicated job dataset using the following formula: ; in, Indicates skill keywords; This represents the deduplicated job dataset; This indicates the operation of extracting skill terms from the job title and description fields; The skill keywords are deduplicated and irrelevant words are removed to form a skill vocabulary list, using the following formula: ; in, S This indicates a vocabulary list of skills. This indicates that duplicate keywords for skills have been removed. This indicates the process of removing irrelevant words from the deduplicated skill keywords.

5. The course recommendation method based on knowledge graph and multi-task learning according to claim 2, characterized in that, Entity recognition is performed on the description text of each course in the deduplicated course dataset using the following formula: ; in, This indicates the courses in the deduplicated course dataset. The collection of entities included This indicates the courses in the deduplicated course dataset. Description text, This indicates that the BERT entity recognition model is used to analyze the deduplicated course data. Entity recognition is performed on the descriptive text; The identified entities are matched with the skill vocabulary to establish the association between courses and skills, using the following formula: ; in, Indicates the identified entity; Represents entities in the skills vocabulary; This indicates that the identified entities are matched with entities in the skill vocabulary, and the similarity between the identified entities and the entities in the skill vocabulary is output. If the similarity between the identified entities and the entities in the skill vocabulary exceeds a certain threshold... In the case of sim, the value is assigned as 1; otherwise, the value is assigned as 0. Indicates similarity.

6. The course recommendation method based on knowledge graph and multi-task learning according to claim 1, characterized in that, The method of using a trained multi-task learning model to predict the top K jobs that a target user is interested in, and recommending courses associated with the top K jobs to the target user through the job-course knowledge graph, includes the following steps: Use a trained multi-task learning model to predict the probability of target users interacting with job postings; Based on the predicted probability of the target user interacting with the job postings, select the top K jobs that the target user is interested in; Find the skill sets required for the top K positions in the job-course knowledge graph; Find courses associated with the skill set based on the skill set; The found courses will be recommended to the target users.

7. A course recommendation system based on knowledge graphs and multi-task learning, employing the course recommendation method based on knowledge graphs and multi-task learning as described in any one of claims 1-6, characterized in that, The system includes: The Job-Course Knowledge Graph Construction Module is used to construct a job-course knowledge graph that associates job information with course information; the job-course knowledge graph is composed of a triplet of head entity vector, relation vector, and tail entity vector. The user-job interaction matrix construction module is used to obtain user vectors and job vectors and construct the user-job interaction matrix. A multi-task learning model construction module is used to construct a multi-task learning model, including a recommendation module and a knowledge graph embedding module, which are connected through a cross-compression unit module. The recommendation module takes the user vector and job vector as feature inputs and outputs the predicted probability of user-job interaction. The knowledge graph embedding module takes the head entity vector and relation vector in the job-course knowledge graph as feature inputs and outputs the predicted tail entity vector. The cross-compression unit module performs feature interaction on the job vector input by the recommendation module and the head entity vector input by the knowledge graph embedding module, and outputs the enhanced job vector and head entity vector. A multi-task learning model training module is used to train the multi-task learning model; The recommendation module is used to predict the top K jobs that a target user is interested in using a trained multi-task learning model, and recommend courses associated with the top K jobs to the target user through the job-course knowledge graph. The execution process of the recommendation module includes: The user vector is input into the multilayer perceptron to obtain the user feature vector; The job vector and the head entity vector in the job-course knowledge graph are input into the cross-compression unit module to perform feature fusion of the job vector and the head entity vector to obtain the job feature vector; The user feature vector and the job feature vector are non-linearly mapped and concatenated to obtain the interaction feature vector; The interaction feature vector is input into a linear layer to obtain the original predicted probability value of user interaction with job posting; Input the original predicted probability values ​​into the CorNet block, and output the predicted probability of user interaction with job posting; The execution process of the knowledge graph embedding module includes: The job vector and the head entity vector in the job-course knowledge graph are input into the cross-compression unit to perform feature fusion of the head entity vector and the job vector, resulting in an enhanced head entity feature vector. The relation vectors in the job-course knowledge graph are input into a multilayer perceptron to obtain relation feature vectors; The head entity feature vector and the relation feature vector are concatenated to obtain the concatenated fused vector; The fused vector is input into the linear layer to obtain the original predicted tail entity vector; The original predicted tail entity vector is input into the CorNet block to obtain the enhanced predicted tail entity vector; The enhanced predicted tail entity vector is input into the knowledge graph scoring function. And supervised learning is performed under a multi-task learning framework to output the predicted tail entity vector; The execution process of the cross-compression unit module includes: The cross-compression unit in the cross-compression unit module captures the second-order interaction information between job vectors and entity vectors. The second-order interaction information is projected and fused using a learnable weight matrix. By stacking multiple layers of cross-compression units, job vectors and entity vectors with enhanced relevance are output.