CN112860989A - Course recommendation method and device, computer equipment and storage medium - Google Patents

Course recommendation method and device, computer equipment and storage medium Download PDF

Info

Publication number
CN112860989A
CN112860989A CN202110077869.6A CN202110077869A CN112860989A CN 112860989 A CN112860989 A CN 112860989A CN 202110077869 A CN202110077869 A CN 202110077869A CN 112860989 A CN112860989 A CN 112860989A
Authority
CN
China
Prior art keywords
course
user
matrix
label
calculating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110077869.6A
Other languages
Chinese (zh)
Other versions
CN112860989B (en
Inventor
杨德杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN202110077869.6A priority Critical patent/CN112860989B/en
Publication of CN112860989A publication Critical patent/CN112860989A/en
Application granted granted Critical
Publication of CN112860989B publication Critical patent/CN112860989B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/73Querying
    • G06F16/735Filtering based on additional data, e.g. user or group profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/20Education

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Multimedia (AREA)
  • Economics (AREA)
  • Educational Technology (AREA)
  • Educational Administration (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention relates to the technical field of artificial intelligence, and provides a course recommendation method, a device, computer equipment and a storage medium, wherein the course recommendation method comprises the following steps: calculating to obtain a first user tag matrix according to multiple watching behaviors of each course watched by each user and the course tag of each course; calculating to obtain a label course matrix according to the first user label matrix; calculating a target penalty factor according to the marking times of each course label and the watching times of each course; expanding the first user label matrix into a second user label matrix using a potential dirichlet distribution; calculating to obtain a user course matrix according to the second user label matrix, the label course matrix and the target penalty factor; and generating a user course recommendation list according to the user course matrix. The invention improves the diversity of course recommendation and improves the effect of course recommendation.

Description

Course recommendation method and device, computer equipment and storage medium
Technical Field
The invention relates to the technical field of artificial intelligence, in particular to a course recommendation method and device, computer equipment and a storage medium.
Background
In a conventional User Generated Content (UGC) tag recommendation system, a user is required to tag a viewed course, and the recommendation system is updated and maintained based on the tagging behavior of the user. However, the subjectivity of the user for labeling the courses is strong, the quality of the labels is low, the real characteristics of the courses cannot be reflected, and the deviation of the recommendation result is caused; in addition, the user may mark some useless tags, for example, "boring" or "dislike", and the recommendation system needs to add a larger amount of tasks to recognize the useless tags, which results in low recommendation efficiency. When recommending courses, the recommending system only considers the watching behaviors of the user on the courses, and can not reflect the favorite degree of the user on the watched courses, so that the recommending effect is poor.
Disclosure of Invention
In view of the above, it is necessary to provide a course recommendation method, apparatus, computer device and storage medium, which improve the diversity of course recommendations and improve the effect of course recommendation.
A first aspect of the present invention provides a course recommendation method, the method comprising:
calculating to obtain a first user tag matrix according to multiple watching behaviors of each course watched by each user and the course tag of each course;
calculating to obtain a label course matrix according to the first user label matrix;
calculating a target penalty factor according to the marking times of each course label and the watching times of each course;
expanding the first user label matrix into a second user label matrix using a potential dirichlet distribution;
calculating to obtain a user course matrix according to the second user label matrix, the label course matrix and the target penalty factor;
and generating a user course recommendation list according to the user course matrix.
In an optional implementation manner of the present invention, the calculating the first user tag matrix according to the multiple viewing behaviors of each course viewed by each user and the course tag of each course includes:
calculating the behavior times of each watching behavior of each course watched by each user;
calculating the course preference degree of each user for each course according to the behavior times of each watching behavior and the corresponding preset behavior weight;
calculating the label preference degree of each user for the courses with the same course labels according to the course preference degree of each user for each course;
and constructing a first user label matrix according to the label preference degree of each user.
In an optional implementation manner of the present invention, the generating a user course recommendation list according to the user course matrix includes:
acquiring the preference degree of each user to each course according to the user course matrix;
sequencing the preference degrees of each course of each user in a reverse order;
generating a first user course recommendation list according to the courses corresponding to the previously preset first quantity of course preference degrees;
calculating the similarity between every two courses in the first user course recommendation list;
acquiring the target similarity which is greater than a preset similarity threshold in the similarities;
and deleting the course with the minimum preference degree in the two courses corresponding to each target similarity from the first user course recommendation list to obtain a second user course recommendation list.
In an optional implementation manner of the present invention, the calculating a target penalty factor according to the marking times of each course label and the viewing times of each course includes:
constructing a first penalty factor based on the marking times of each course label;
constructing a second penalty factor based on the number of views of each course;
and calculating to obtain a target penalty factor according to the first penalty factor and the second penalty factor.
In an optional embodiment of the present invention, the expanding the first user tag matrix to the second user tag matrix using a latent dirichlet distribution includes:
extracting a plurality of course topics and posterior probability of each course topic according to the course introduction of each course by using the potential Dirichlet distribution;
sorting a plurality of the posterior probabilities for each course in reverse order;
acquiring target course topics corresponding to a second quantity of posterior probabilities which are preset in the front in sequence;
determining the target course theme as an expansion label of the corresponding course;
and updating the first user label matrix according to the extended label to obtain a second user label matrix.
In an optional implementation manner of the present invention, calculating the user course matrix according to the second user tag matrix, the tag course matrix, and the penalty factor includes:
calculating according to the second user label matrix and the label course matrix to obtain a first user course matrix;
and calculating to obtain a second user course matrix according to the first user course matrix and the penalty factor.
In an alternative embodiment of the present invention, the method further comprises:
extracting a plurality of participles in each course, and determining a plurality of hot words according to the word heat of each participle;
calculating the hot word sharing popularity of each hot word according to the watching behavior of the user in watching the course;
calculating the course sharing popularity of each course according to the hot word sharing popularity;
calculating the label sharing heat of each course label according to the course sharing heat;
and determining a target course label according to the label sharing popularity.
A second aspect of the present invention provides a course recommending apparatus, comprising:
the first calculation module is used for calculating to obtain a first user tag matrix according to various watching behaviors of each course watched by each user and the course tag of each course;
the second calculation module is used for calculating a label course matrix according to the first user label matrix;
the third calculation module is used for calculating a target penalty factor according to the marking times of each course label and the watching times of each course;
a tag expansion module for expanding the first user tag matrix into a second user tag matrix using a latent dirichlet distribution;
the fourth calculation module is used for calculating to obtain a user course matrix according to the second user label matrix, the label course matrix and the target penalty factor;
and the course recommending module is used for generating a user course recommending list according to the user course matrix.
A third aspect of the present invention provides a computer apparatus comprising:
a memory for storing a computer program;
and the processor is used for realizing the course recommendation method when executing the computer program.
A fourth aspect of the present invention provides a computer-readable storage medium having stored thereon a computer program which, when executed by a processor, implements the course recommendation method.
In summary, the course recommendation method, apparatus, computer device and storage medium in the present invention construct the user tag matrix and the course tag matrix by using the viewing behavior of the user viewing the course, use the original tag of the course viewed by the user as the tag of the user for the course, and construct a quadruplet (u, i, t, S) indicating that the user u has viewed the course i, the course tag is t, and the user' S preference degree for the course is S. And constructing a user label matrix A (a grading matrix of the user for the course labels) and a label course matrix B (a heat matrix of the courses under the course labels) by using the four-tuple to obtain a user course matrix C (a grading matrix of the user for the courses), and sequencing the grades of the user for the courses to obtain a final recommendation result. The weight scores are added to the user label matrix, the tendency degree of the user to different course labels is shown, the accuracy and recall rate of the recommendation result are greatly improved, and the goal of accurate recommendation is achieved; the course label is expanded by utilizing the LDA topic model, the diversity of the course label is increased, the limitation of manually marking the course label is broken, and the problem of sparsity of a user label matrix is solved; by means of the TF-IDF thought, punishment items are added to hot course labels and hot courses, the diversity of course recommendation is improved, the courses in the recommendation result can reflect the personalized interests of different users, and the goal of personalized recommendation is achieved.
Drawings
Fig. 1 is a flowchart of a course recommending method according to an embodiment of the present invention.
Fig. 2 is a block diagram of a course recommending apparatus according to a second embodiment of the present invention.
Fig. 3 is a schematic structural diagram of a computer device according to a third embodiment of the present invention.
Detailed Description
In order that the above objects, features and advantages of the present invention can be more clearly understood, a detailed description of the present invention will be given below with reference to the accompanying drawings and specific embodiments. It should be noted that the embodiments of the present invention and features of the embodiments may be combined with each other without conflict.
Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. The terminology used in the description of the invention herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention.
The course recommending method provided by the embodiment of the invention is executed by the computer equipment, and correspondingly, the course recommending device runs in the computer equipment.
Fig. 1 is a flowchart of a course recommending method according to an embodiment of the present invention. The course recommendation method specifically includes the following steps, and the sequence of the steps in the flowchart can be changed and some steps can be omitted according to different requirements.
And S11, calculating to obtain a first user label matrix according to the multiple watching behaviors of each course watched by each user and the course label of each course.
The computer device has multiple courses (e.g., training courses) stored locally, each course corresponding to a viewing link, and different courses corresponding to different viewing links.
The user can initiate a course request to the computer device, the computer device responds to the course request, sends a course link corresponding to the course request to the user, and the user watches the course according to the course link.
The computer equipment can acquire the watching behaviors of different users when watching the course in a point burying mode, so that a first user label matrix and a label course matrix are constructed according to the watching behaviors.
The viewing behavior may include, but is not limited to: reward, like, share, etc. Each viewing behavior corresponds to a preset behavior weight, and different viewing behaviors can correspond to different preset behavior weights or the same preset behavior weight.
In an optional embodiment, the calculating the first user tag matrix according to the plurality of viewing behaviors of each user viewing each course and the course tag of each course includes:
calculating the behavior times of each watching behavior of each course watched by each user;
calculating the course preference degree of each user for each course according to the behavior times of each watching behavior and the corresponding preset behavior weight;
calculating the label preference degree of each user for the courses with the same course labels according to the course preference degree of each user for each course;
and constructing a first user label matrix according to the label preference degree of each user.
The watching behaviors of a user watching a course represent the user's preference degree for the course, different watching behaviors show that the user's preference degree for the course is different, and the user's preference degree for the course can be obtained by performing weighted combination on the watching behaviors:
Figure BDA0002908209330000061
wherein p isu,kRepresenting the number of times of user u's k-th viewing behavior of course i, skA viewing weight indicating a kth viewing behavior, K indicating a kind of viewing behavior, Su,iIndicating the degree of preference of user u for course i.
For each user, the courses with the same course label are aggregated to obtain a plurality of course label clusters, each course label cluster corresponds to one course label, and different course label clusters correspond to different course labels. And for each user, carrying out weighted combination on the course preference degrees of the user for the courses in each course label cluster to obtain the label preference degree of the user for the course labels.
Each user corresponds to a plurality of course labels and the label preference degree of each course label, and the label preference degrees corresponding to the plurality of users are combined to obtain a first user label matrix A. Each row in the first user tag matrix a represents tag preference degrees of a plurality of course tags of one user, and each column represents tag preference degrees of different users under the same course tag. The first user tag matrix A (u, t, S)u,t) I.e. the degree of preference S of the user u for the curriculum label tu,t
Illustratively, suppose user u1Having watched course i1For the course i while watching1Sharing for 1 time, liking for 2 times and rewarding for 2 times, wherein the preset behavior weight corresponding to the sharing watching behavior is 1, the preset behavior weight corresponding to the liking watching behavior is 2, the preset behavior weight corresponding to the rewarding watching behavior is 4, and then the user u is used1For course i1Course preference degree
Figure BDA0002908209330000062
Comprises the following steps: 1 × 1+2 × 2+1 × 4 ═ 9 points. Similarly, calculate user u1For course i2Course preference degree
Figure BDA0002908209330000063
Is 10 points, calculate user u1For course i3Course preference degree
Figure BDA0002908209330000064
The score was 12. Suppose course i1Course i2Course i3The course labels are all t1Then user u1For course label t1The degree of preference of the label is
Figure BDA0002908209330000071
Figure BDA0002908209330000072
And S12, calculating to obtain a label course matrix according to the first user label matrix.
The computer device may determine a degree of tag preference of each user for each course tag from the first user tag matrix. And for each user, determining a plurality of courses corresponding to each course label, and determining the course preference degree of each course under each course label by the user according to the label preference degree of each course label by the user.
Illustratively, assume that user u is determined from a first user tag matrix1For course label t1Has a preference degree of 31, course label t1Corresponding course i1Course i2Course i3Then for user u1In other words, for course tag t1Course i1Course preference degree of 31, course label t1Course i2Course preference degree of 31, course label t1Course i3Course ofThe preference level is 31.
Constructing a label course matrix B (t, i, R) according to different course labels preferred by each usert,i) Indicating the degree of preference R of the course i containing the label tt,i
In another embodiment, the computer device may also obtain the number of times each lesson was viewed by the user, i.e., how many users viewed the lesson i in total, corresponding to the trending degree of the lesson. And constructing a label course matrix according to the course labels and the hot degree of the courses.
And S13, calculating a target penalty factor according to the marking times of each course label and the watching times of each course.
Because the recommendation result is often greatly influenced by hot content, the recommendation result is single and the repeatability is high; in addition, the course labels preferred by the user are usually subjected to long-tail distribution, most of the course labels are preferred or loved by few users, but the course labels can reflect the individual learning requirements of the users to a great extent, and therefore, the courses in the long tail are difficult to recommend by only considering the popularity degree of the course labels and the courses.
In an optional embodiment, said calculating a target penalty factor according to the marking times of each course label and the watching times of each course comprises:
constructing a first penalty factor based on the marking times of each course label;
constructing a second penalty factor based on the number of views of each course;
and calculating to obtain a target penalty factor according to the first penalty factor and the second penalty factor.
The marking times of each course label refer to a first number of each course label marked by a user, and the marking times of each course label are obtained by obtaining the course labels of the courses watched by the user and then calculating the number of the marked users of the same course label to obtain the first number. For course label t, use
Figure BDA0002908209330000081
Representing the number of times the curriculum label t is marked by the user, and marking the number of times
Figure BDA0002908209330000082
And taking the logarithm to obtain a first penalty factor of the course label t.
The number of viewing times of each course refers to a second number of the courses viewed by the user, and the number of viewing times of each course is obtained by obtaining the courses viewed by the user and then calculating the number of the users viewing the same course to obtain the second number. For course i, use
Figure BDA0002908209330000083
Representing the number of views of course i by the user for which
Figure BDA0002908209330000084
And taking the logarithm to obtain a second penalty factor of the course i.
The first punishment factor represents the punishment degree to the corresponding course label, and the second punishment factor represents the punishment degree to the corresponding course, calculates first punishment factor with the product of second punishment factor obtains the target punishment factor, the punishment degree of every course under every course label is represented to the target punishment factor.
The TF-IDF value is mainly used to evaluate the importance of a keyword to a corpus, and the importance of a keyword is proportional to the number of times it appears in a document and inversely proportional to the number of times it appears in the corpus as a whole.
In this alternative embodiment, with the aid of the TF-IDF concept, a first penalty factor of the course label and a second penalty factor of the course are introduced to indicate the importance of a course in the whole course library. The scores of hot courses under excessively hot course labels in the final recommendation result can be reduced through the penalty factors, and the scores of cold courses under excessively cold course labels in the final recommendation result are improved, so that courses containing course label long tails appear more in a course list recommended for each user, and the diversity and the coverage rate of course recommendation are improved.
S14, expanding the first user label matrix into a second user label matrix using a latent Dirichlet distribution.
The tag recommendation system depends on the historical viewing behavior of the user to a great extent, and for some new users and users with less historical viewing behavior, the obtained first user tag matrix is sparse because the number of the course tags included in the viewed course is small. In order to improve the generalization capability of the tag recommendation system and enable the recommendation result to be approved by more users, the course tags need to be expanded.
In an optional embodiment, the expanding the first user tag matrix to a second user tag matrix using a latent dirichlet distribution comprises:
extracting a plurality of course topics and posterior probability of each course topic according to the course introduction of each course by using the potential Dirichlet distribution;
sorting a plurality of the posterior probabilities for each course in reverse order;
acquiring target course topics corresponding to a second quantity of posterior probabilities which are preset in the front in sequence;
determining the target course theme as an expansion label of the corresponding course;
and updating the first user label matrix according to the extended label to obtain a second user label matrix.
The Dirichlet Allocation (LDA) does not need to manually label a training set during training, and therefore, the LDA is an unsupervised bayesian model and can give each document in the document set according to a probability distribution form. The probability given by the Dirichlet distribution is called posterior probability, the posterior probability is relative to prior probability, the prior probability is obtained according to past experience, the posterior probability is that an event has occurred, and the reason for the occurrence of the event is the possibility caused by a certain factor.
The computer equipment can initialize the number of the course subjects, then extract the course content of each course, take all the course contents as the course content set, extract a subject from the subject distribution for each course content in the course content set, randomly extract a word from the word distribution corresponding to the extracted subject, and continuously repeat the two extraction processes until each word in the course contents is traversed.
In the optional embodiment, the LDA is used to extract the curriculum topics of the curriculum watched by the user, then n curriculum topics with the maximum posterior probability are selected as the expansion tags of the curriculum, and the n curriculum topics are added to the tag list T marked by the user uuTherefore, the first user label matrix is updated by the expanded label list to obtain the second user label matrix, the technical problem that manual labeling of course labels is limited to a certain extent and the label types are not large is solved, the number of the course labels in the label recommendation system is expanded, and the generalization capability of the label recommendation system can be improved based on the training of the label recommendation system after the course labels are expanded.
And S15, calculating to obtain a user course matrix according to the second user label matrix, the label course matrix and the target penalty factor.
The computer device calculates a user course matrix based on the second user label matrix, the label course matrix and the target penalty factor to identify the preference degree of the user for each course, so that personalized course recommendation is realized based on the preference degree of each course.
In an optional embodiment, said calculating a user course matrix according to said second user tag matrix, said tag course matrix and said penalty factor comprises:
calculating according to the second user label matrix and the label course matrix to obtain a first user course matrix;
and calculating to obtain a second user course matrix according to the first user course matrix and the penalty factor.
And multiplying the constructed user label matrix A and the label course matrix B, and adding a penalty factor to obtain a user course matrix C.
In an alternative embodiment, the user course matrix may be calculated using the following computational model:
Figure BDA0002908209330000101
wherein, TuAn aggregated list of extension tags and course tags, C (u, i, Q), representing user uu,i) Representing a user course matrix, Qu,iIndicating the degree of course preference of user u for course i.
In this alternative embodiment, the penalty factor for the course tag is added to the denominator portion when calculating the user course matrix
Figure BDA0002908209330000102
And a penalty factor for the course
Figure BDA0002908209330000103
The preference degree Q obtained by final calculation of the hot course labels and the hot coursesu,iReducing the preference degree Q obtained by final calculation of non-hot course labels and non-hot coursesu,iTherefore, the courses containing the non-popular course labels favored by the user can be recommended in the recommendation result, and the personalized recommendation effect is achieved.
And S16, generating a user course recommendation list according to the user course matrix.
Each row in the user course matrix represents the preference degree of one user for different courses, and each column represents the preference degree of different users for the same course, so that the computer equipment can recommend the courses for a plurality of users in batches based on the user course matrix, and the course recommendation efficiency is greatly improved.
In an optional embodiment, the generating a user course recommendation list according to the user course matrix includes:
acquiring the preference degree of each user to each course according to the user course matrix;
sequencing the preference degrees of each course of each user in a reverse order;
generating a first user course recommendation list according to the courses corresponding to the previously preset first quantity of course preference degrees;
calculating the similarity between every two courses in the first user course recommendation list;
acquiring the target similarity which is greater than a preset similarity threshold in the similarities;
and deleting the course with the minimum preference degree in the two courses corresponding to each target similarity from the first user course recommendation list to obtain a second user course recommendation list.
Each row in the user course matrix represents the preference degree of each user for a plurality of courses, and the computer device can sort the preference degrees of the courses in each row in a reverse order and then generate a first user course recommendation list according to the courses corresponding to the previously preset first number of the preference degrees of the courses.
Because the contents of some courses are very close to each other, in order to avoid repeated learning of courses with very close contents and waste of learning time and energy, the computer device may extract a text vector of each course by using a BERT model, calculate the similarity between two courses by calculating the similarity between the text vectors, and judge whether the contents of the two courses are the same or similar according to the similarity. The higher the similarity is, the more similar the contents of the two corresponding courses are, and the lower the similarity is, the more irrelevant the contents of the two corresponding courses are.
When the similarity of the two courses is larger than the preset similarity threshold, the contents of the two courses are identical or very similar, the course with the larger preference degree in the two courses is reserved, the course with the smaller preference degree of the user is deleted, the first user course recommendation list is filtered, the second user course recommendation list obtained through filtering is recommended to the user, and repeated learning of the user on the courses with the identical or similar contents can be avoided.
In an optional embodiment, the method further comprises:
extracting a plurality of participles in each course, and determining a plurality of hot words according to the word heat of each participle;
calculating the hot word sharing popularity of each hot word according to the watching behavior of the user in watching the course;
calculating the course sharing popularity of each course according to the hot word sharing popularity;
calculating the label sharing heat of each course label according to the course sharing heat;
and determining a target course label according to the label sharing popularity.
The computer device may perform word segmentation on each course using a crust word segmentation tool to obtain a plurality of word segments. And constructing a word segmentation corpus according to a plurality of segmentation words of a plurality of courses, and calculating TF-IDF values of each segmentation word in the whole word segmentation corpus to obtain the word heat of each segmentation word. And performing reverse ordering on the word heat degrees, and determining the word segmentation corresponding to the word heat degrees ordered in the preset number as the hot word.
Determining the courses with the sharing watching behaviors of the user as sharing courses, and calculating the number of the sharing courses containing the hot words for each hot word to obtain the hot word sharing popularity of the hot word. And for each course, calculating the hot word sharing degree of all the hot words in the course to obtain the course sharing degree of the course. And for each course label, calculating the course sharing heat of all courses under the course label to obtain the label sharing heat of the course label. The higher the tag sharing degree is, the higher the sharing degree of the user to the course tag is, and the lower the tag sharing degree is, the lower the sharing degree of the user to the course tag is. And sorting the tag sharing heat in a reverse order, and determining the course tags corresponding to the tag sharing heat of the previously preset number as target course tags with higher training requirement.
To sum up, the course recommendation method provided in the embodiment of the present invention constructs a user tag matrix and a course tag matrix by using the viewing behavior of the user viewing the course, and constructs a quadruple (u, i, t, S) by using the original tag of the course viewed by the user as the tag of the user for the course, which indicates that the user u has viewed the course i, the course tag is t, and the preference degree of the user for the course is S. And constructing a user label matrix A (a grading matrix of the user for the course labels) and a label course matrix B (a heat matrix of the courses under the course labels) by using the four-tuple to obtain a user course matrix C (a grading matrix of the user for the courses), and sequencing the grades of the user for the courses to obtain a final recommendation result. The weight scores are added to the user label matrix, the tendency degree of the user to different course labels is shown, the accuracy and recall rate of the recommendation result are greatly improved, and the goal of accurate recommendation is achieved; the course label is expanded by utilizing the LDA topic model, the diversity of the course label is increased, the limitation of manually marking the course label is broken, and the problem of sparsity of a user label matrix is solved; by means of the TF-IDF thought, punishment items are added to hot course labels and hot courses, the diversity of course recommendation is improved, the courses in the recommendation result can reflect the personalized interests of different users, and the goal of personalized recommendation is achieved.
It is emphasized that the course recommendation list may be stored in a node of the block chain in order to further ensure the privacy and security of the course recommendation list.
Fig. 2 is a block diagram of a course recommending apparatus according to a second embodiment of the present invention.
In some embodiments, the course recommender 20 may comprise a plurality of functional modules comprising computer program segments. The computer program of each program segment in the course recommender 20 may be stored in the memory of the computing device and executed by at least one processor to perform the course recommendation function (described in detail in fig. 1).
In this embodiment, the course recommending apparatus 20 may be divided into a plurality of functional modules according to the functions performed by the course recommending apparatus. The functional module may include: a first calculation module 201, a second calculation module 202, a third calculation module 203, a label extension module 204, a fourth calculation module 205, a course recommendation module 206, a hotword determination module 207 and a hotness calculation module 208. The module referred to herein is a series of computer program segments capable of being executed by at least one processor and capable of performing a fixed function and is stored in memory. In the present embodiment, the functions of the modules will be described in detail in the following embodiments.
The first calculating module 201 is configured to calculate a first user tag matrix according to multiple viewing behaviors of each user viewing each course and a course tag of each course.
The computer device has multiple courses (e.g., training courses) stored locally, each course corresponding to a viewing link, and different courses corresponding to different viewing links.
The user can initiate a course request to the computer device, the computer device responds to the course request, sends a course link corresponding to the course request to the user, and the user watches the course according to the course link.
The computer equipment can acquire the watching behaviors of different users when watching the course in a point burying mode, so that a first user label matrix and a label course matrix are constructed according to the watching behaviors.
The viewing behavior may include, but is not limited to: reward, like, share, etc. Each viewing behavior corresponds to a preset behavior weight, and different viewing behaviors can correspond to different preset behavior weights or the same preset behavior weight.
In an alternative embodiment, the calculating module 201, calculating the first user tag matrix according to the plurality of viewing behaviors of each user viewing each course and the course tag of each course, includes:
calculating the behavior times of each watching behavior of each course watched by each user;
calculating the course preference degree of each user for each course according to the corresponding preset behavior weight and the behavior times of each watching behavior;
calculating the label preference degree of each user for the courses with the same course labels according to the course preference degree of each user for each course;
and constructing a first user label matrix according to the label preference degree of each user.
The watching behaviors of a user watching a course represent the user's preference degree for the course, different watching behaviors show that the user's preference degree for the course is different, and the user's preference degree for the course can be obtained by performing weighted combination on the watching behaviors:
Figure BDA0002908209330000141
wherein p isu,kRepresenting the number of times of user u's k-th viewing behavior of course i, skA viewing weight indicating a kth viewing behavior, K indicating a kind of viewing behavior, Su,iIndicating the degree of preference of user u for course i.
For each user, the courses with the same course label are aggregated to obtain a plurality of course label clusters, each course label cluster corresponds to one course label, and different course label clusters correspond to different course labels. And for each user, carrying out weighted combination on the course preference degrees of the user for the courses in each course label cluster to obtain the label preference degree of the user for the course labels.
Each user corresponds to a plurality of course labels and the label preference degree of each course label, and the label preference degrees corresponding to the plurality of users are combined to obtain a first user label matrix A. Each row in the first user tag matrix a represents tag preference degrees of a plurality of course tags of one user, and each column represents tag preference degrees of different users under the same course tag. The first user tag matrix A (u, t, S)u,t) I.e. the degree of preference S of the user u for the curriculum label tu,t
Illustratively, suppose user u1Having watched course i1For the course i while watching1Share 1 time, pointThe user u likes 2 times and rewards 2 times, wherein the preset behavior weight corresponding to the sharing watching behavior is 1, the preset behavior weight corresponding to the watching behavior like clicking on the favorite is 2, and the preset behavior weight corresponding to the watching behavior like rewarding is 4, so that the user u is1For course i1Course preference degree
Figure BDA0002908209330000142
Comprises the following steps: 1 × 1+2 × 2+1 × 4 ═ 9 points. Similarly, calculate user u1For course i2Course preference degree
Figure BDA0002908209330000143
Is 10 points, calculate user u1For course i3Course preference degree
Figure BDA0002908209330000144
The score was 12. Suppose course i1Course i2Course i3The course labels are all t1Then user u1For course label t1The degree of preference of the label is
Figure BDA0002908209330000151
Figure BDA0002908209330000152
The second calculating module 202 is configured to calculate a tag course matrix according to the first user tag matrix.
The computer device may determine a degree of tag preference of each user for each course tag from the first user tag matrix. And for each user, determining a plurality of courses corresponding to each course label, and determining the course preference degree of each course under each course label by the user according to the label preference degree of each course label by the user.
Illustratively, assume that user u is determined from a first user tag matrix1For course label t1Has a preference degree of 31, course label t1Corresponding course i1Course i2Course i3Then for user u1In other words, for course tag t1Course i1Course preference degree of 31, course label t1Course i2Course preference degree of 31, course label t1Course i3The class preference level of (1) is 31.
Constructing a label course matrix B (t, i, R) according to different course labels preferred by each usert,i) Indicating the degree of preference R of the course i containing the label tt,i
In another embodiment, the computer device may also obtain the number of times each lesson was viewed by the user, i.e., how many users viewed the lesson i in total, corresponding to the trending degree of the lesson. And constructing a label course matrix according to the course labels and the hot degree of the courses.
The third calculating module 203 is configured to calculate a target penalty factor according to the marking times of each course label and the viewing times of each course.
Because the recommendation result is often greatly influenced by hot content, the recommendation result is single and the repeatability is high; in addition, the course labels preferred by the user are usually subjected to long-tail distribution, most of the course labels are preferred or loved by few users, but the course labels can reflect the individual learning requirements of the users to a great extent, and therefore, the courses in the long tail are difficult to recommend by only considering the popularity degree of the course labels and the courses.
In an alternative embodiment, the third calculating module 203 for calculating the target penalty factor according to the marking times of each course label and the watching times of each course comprises:
constructing a first penalty factor based on the marking times of each course label;
constructing a second penalty factor based on the number of views of each course;
and calculating to obtain a target penalty factor according to the first penalty factor and the second penalty factor.
Wherein the marking times of each course label isThe method comprises the steps of obtaining the curriculum labels of the curriculum watched by the user, and then calculating the number of times of marking of each curriculum label by the same curriculum label by the users to obtain the first number. For course label t, use
Figure BDA0002908209330000161
Representing the number of times the curriculum label t is marked by the user, and marking the number of times
Figure BDA0002908209330000162
And taking the logarithm to obtain a first penalty factor of the course label t.
The number of viewing times of each course refers to a second number of the courses viewed by the user, and the number of viewing times of each course is obtained by obtaining the courses viewed by the user and then calculating the number of the users viewing the same course to obtain the second number. For course i, use
Figure BDA0002908209330000163
Representing the number of views of course i by the user for which
Figure BDA0002908209330000164
And taking the logarithm to obtain a second penalty factor of the course i.
The first punishment factor represents the punishment degree to the corresponding course label, and the second punishment factor represents the punishment degree to the corresponding course, calculates first punishment factor with the product of second punishment factor obtains the target punishment factor, the punishment degree of every course under every course label is represented to the target punishment factor.
The TF-IDF value is mainly used to evaluate the importance of a keyword to a corpus, and the importance of a keyword is proportional to the number of times it appears in a document and inversely proportional to the number of times it appears in the corpus as a whole.
In this alternative embodiment, with the aid of the TF-IDF concept, a first penalty factor of the course label and a second penalty factor of the course are introduced to indicate the importance of a course in the whole course library. The scores of hot courses under excessively hot course labels in the final recommendation result can be reduced through the penalty factors, and the scores of cold courses under excessively cold course labels in the final recommendation result are improved, so that courses containing course label long tails appear more in a course list recommended for each user, and the diversity and the coverage rate of course recommendation are improved.
The tag expansion module 204 is configured to expand the first user tag matrix into a second user tag matrix using a latent dirichlet distribution.
The tag recommendation system depends on the historical viewing behavior of the user to a great extent, and for some new users and users with less historical viewing behavior, the obtained first user tag matrix is sparse because the number of the course tags included in the viewed course is small. In order to improve the generalization capability of the tag recommendation system and enable the recommendation result to be approved by more users, the course tags need to be expanded.
In an optional embodiment, the tag expansion module 204 expanding the first user tag matrix to a second user tag matrix using a latent dirichlet distribution comprises:
extracting a plurality of course topics and posterior probability of each course topic according to the course introduction of each course by using the potential Dirichlet distribution;
sorting a plurality of the posterior probabilities for each course in reverse order;
acquiring target course topics corresponding to a second quantity of posterior probabilities which are preset in the front in sequence;
determining the target course theme as an expansion label of the corresponding course;
and updating the first user label matrix according to the extended label to obtain a second user label matrix.
The Dirichlet Allocation (LDA) does not need to manually label a training set during training, and therefore, the LDA is an unsupervised bayesian model and can give each document in the document set according to a probability distribution form. The probability given by the Dirichlet distribution is called posterior probability, the posterior probability is relative to prior probability, the prior probability is obtained according to past experience, the posterior probability is that an event has occurred, and the reason for the occurrence of the event is the possibility caused by a certain factor.
The computer equipment can initialize the number of the course subjects, then extract the course content of each course, take all the course contents as the course content set, extract a subject from the subject distribution for each course content in the course content set, randomly extract a word from the word distribution corresponding to the extracted subject, and continuously repeat the two extraction processes until each word in the course contents is traversed.
In the optional embodiment, the LDA is used to extract the curriculum topics of the curriculum watched by the user, then n curriculum topics with the maximum posterior probability are selected as the expansion tags of the curriculum, and the n curriculum topics are added to the tag list T marked by the user uuTherefore, the first user label matrix is updated by the expanded label list to obtain the second user label matrix, the technical problem that manual labeling of course labels is limited to a certain extent and the label types are not large is solved, the number of the course labels in the label recommendation system is expanded, and the generalization capability of the label recommendation system can be improved based on the training of the label recommendation system after the course labels are expanded.
The fourth calculating module 205 is configured to calculate a user course matrix according to the second user tag matrix, the tag course matrix, and the target penalty factor.
The computer device calculates a user course matrix based on the second user label matrix, the label course matrix and the target penalty factor to identify the preference degree of the user for each course, so that personalized course recommendation is realized based on the preference degree of each course.
In an optional embodiment, the fourth calculation module 205 for calculating the user course matrix according to the second user label matrix, the label course matrix and the penalty factor includes:
calculating according to the second user label matrix and the label course matrix to obtain a first user course matrix;
and calculating to obtain a second user course matrix according to the first user course matrix and the penalty factor.
And multiplying the constructed user label matrix A and the label course matrix B, and adding a penalty factor to obtain a user course matrix C.
In an alternative embodiment, the user course matrix may be calculated using the following computational model:
Figure BDA0002908209330000181
wherein, TuAn aggregated list of extension tags and course tags, C (u, i, Q), representing user uu,i) Representing a user course matrix, Qu,iIndicating the degree of course preference of user u for course i.
In this alternative embodiment, the penalty factor for the course tag is added to the denominator portion when calculating the user course matrix
Figure BDA0002908209330000182
And a penalty factor for the course
Figure BDA0002908209330000183
The preference degree Q obtained by final calculation of the hot course labels and the hot coursesu,iReducing the preference degree Q obtained by final calculation of non-hot course labels and non-hot coursesu,iTherefore, the courses containing the non-popular course labels favored by the user can be recommended in the recommendation result, and the personalized recommendation effect is achieved.
The course recommending module 206 is configured to generate a user course recommending list according to the user course matrix.
Each row in the user course matrix represents the preference degree of one user for different courses, and each column represents the preference degree of different users for the same course, so that the computer equipment can recommend the courses for a plurality of users in batches based on the user course matrix, and the course recommendation efficiency is greatly improved.
In an alternative embodiment, the course recommendation module 206 generating the user course recommendation list according to the user course matrix includes:
acquiring the preference degree of each user to each course according to the user course matrix;
sequencing the preference degrees of each course of each user in a reverse order;
generating a first user course recommendation list according to the courses corresponding to the previously preset first quantity of course preference degrees;
calculating the similarity between every two courses in the first user course recommendation list;
acquiring the target similarity which is greater than a preset similarity threshold in the similarities;
and deleting the course with the minimum preference degree in the two courses corresponding to each target similarity from the first user course recommendation list to obtain a second user course recommendation list.
Each row in the user course matrix represents the preference degree of each user for a plurality of courses, and the computer device can sort the preference degrees of the courses in each row in a reverse order and then generate a first user course recommendation list according to the courses corresponding to the previously preset first number of the preference degrees of the courses.
Because the contents of some courses are very close to each other, in order to avoid repeated learning of courses with very close contents and waste of learning time and energy, the computer device may extract a text vector of each course by using a BERT model, calculate the similarity between two courses by calculating the similarity between the text vectors, and judge whether the contents of the two courses are the same or similar according to the similarity. The higher the similarity is, the more similar the contents of the two corresponding courses are, and the lower the similarity is, the more irrelevant the contents of the two corresponding courses are.
When the similarity of the two courses is larger than the preset similarity threshold, the contents of the two courses are identical or very similar, the course with the larger preference degree in the two courses is reserved, the course with the smaller preference degree of the user is deleted, the first user course recommendation list is filtered, the second user course recommendation list obtained through filtering is recommended to the user, and repeated learning of the user on the courses with the identical or similar contents can be avoided.
The hot word determining module 207 is configured to extract a plurality of segmented words in each course, and determine a plurality of hot words according to the word heat of each segmented word.
The popularity calculation module 208 is configured to calculate a popularity of hot word sharing of each hot word according to a viewing behavior of the user viewing the course; calculating the course sharing popularity of each course according to the hot word sharing popularity; calculating the label sharing heat of each course label according to the course sharing heat; and determining a target course label according to the label sharing popularity.
The computer device may perform word segmentation on each course using a crust word segmentation tool to obtain a plurality of word segments. And constructing a word segmentation corpus according to a plurality of segmentation words of a plurality of courses, and calculating TF-IDF values of each segmentation word in the whole word segmentation corpus to obtain the word heat of each segmentation word. And performing reverse ordering on the word heat degrees, and determining the word segmentation corresponding to the word heat degrees ordered in the preset number as the hot word.
Determining the courses with the sharing watching behaviors of the user as sharing courses, and calculating the number of the sharing courses containing the hot words for each hot word to obtain the hot word sharing popularity of the hot word. And for each course, calculating the hot word sharing degree of all the hot words in the course to obtain the course sharing degree of the course. And for each course label, calculating the course sharing heat of all courses under the course label to obtain the label sharing heat of the course label. The higher the tag sharing degree is, the higher the sharing degree of the user to the course tag is, and the lower the tag sharing degree is, the lower the sharing degree of the user to the course tag is. And sorting the tag sharing heat in a reverse order, and determining the course tags corresponding to the tag sharing heat of the previously preset number as target course tags with higher training requirement.
According to the course recommending device provided by the embodiment of the invention, a user label matrix and a course label matrix are constructed by utilizing the watching behavior of a user watching a course, an original label of the course watched by the user is used as a label of the user for the course, a four-tuple (u, i, t, S) is constructed, the fact that the user u watches the course i is shown, the course label is t, and the preference degree of the user for the course is S. And constructing a user label matrix A (a grading matrix of the user for the course labels) and a label course matrix B (a heat matrix of the courses under the course labels) by using the four-tuple to obtain a user course matrix C (a grading matrix of the user for the courses), and sequencing the grades of the user for the courses to obtain a final recommendation result. The weight scores are added to the user label matrix, the tendency degree of the user to different course labels is shown, the accuracy and recall rate of the recommendation result are greatly improved, and the goal of accurate recommendation is achieved; the course label is expanded by utilizing the LDA topic model, the diversity of the course label is increased, the limitation of manually marking the course label is broken, and the problem of sparsity of a user label matrix is solved; by means of the TF-IDF thought, punishment items are added to hot course labels and hot courses, the diversity of course recommendation is improved, the courses in the recommendation result can reflect the personalized interests of different users, and the goal of personalized recommendation is achieved.
It is emphasized that the course recommendation list may be stored in a node of the block chain in order to further ensure the privacy and security of the course recommendation list.
Fig. 3 is a schematic structural diagram of a computer device according to a third embodiment of the present invention. In the preferred embodiment of the present invention, the computer device 3 includes a memory 31, at least one processor 32, at least one communication bus 33, and a transceiver 34.
It will be appreciated by those skilled in the art that the configuration of the computer device shown in fig. 3 does not constitute a limitation of the embodiments of the present invention, and may be a bus-type configuration or a star-type configuration, and that the computer device 3 may include more or less hardware or software than those shown, or a different arrangement of components.
In some embodiments, the computer device 3 is a device capable of automatically performing numerical calculation and/or information processing according to instructions set or stored in advance, and the hardware includes but is not limited to a microprocessor, an application specific integrated circuit, a programmable gate array, a digital processor, an embedded device, and the like. The computer device 3 may also include a client device, which includes, but is not limited to, any electronic product capable of interacting with a client through a keyboard, a mouse, a remote controller, a touch pad, or a voice control device, for example, a personal computer, a tablet computer, a smart phone, a digital camera, etc.
It should be noted that the computer device 3 is only an example, and other electronic products that are currently available or may come into existence in the future, such as electronic products that can be adapted to the present invention, should also be included in the scope of the present invention, and are included herein by reference.
In some embodiments, the memory 31 has stored therein a computer program which, when executed by the at least one processor 32, performs all or part of the steps of the course recommendation method as described. The Memory 31 includes a Read-Only Memory (ROM), a Programmable Read-Only Memory (PROM), an Erasable Programmable Read-Only Memory (EPROM), a One-time Programmable Read-Only Memory (OTPROM), an electronically Erasable rewritable Read-Only Memory (Electrically-Erasable Programmable Read-Only Memory (EEPROM)), an optical Read-Only disk (CD-ROM) or other optical disk Memory, a magnetic disk Memory, a tape Memory, or any other medium readable by a computer capable of carrying or storing data.
Further, the computer-readable storage medium may mainly include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required for at least one function, and the like; the storage data area may store data created according to the use of the blockchain node, and the like.
The block chain is a novel application mode of computer technologies such as distributed data storage, point-to-point transmission, a consensus mechanism, an encryption algorithm and the like. A block chain (Blockchain), which is essentially a decentralized database, is a series of data blocks associated by using a cryptographic method, and each data block contains information of a batch of network transactions, so as to verify the validity (anti-counterfeiting) of the information and generate a next block. The blockchain may include a blockchain underlying platform, a platform product service layer, an application service layer, and the like.
In some embodiments, the at least one processor 32 is a Control Unit (Control Unit) of the computer device 3, connects various components of the entire computer device 3 by using various interfaces and lines, and executes various functions and processes data of the computer device 3 by running or executing programs or modules stored in the memory 31 and calling data stored in the memory 31. For example, the at least one processor 32, when executing the computer program stored in the memory, implements all or a portion of the steps of the course recommendation method described in embodiments of the present invention; or implement all or part of the functionality of the course recommending apparatus. The at least one processor 32 may be composed of an integrated circuit, for example, a single packaged integrated circuit, or may be composed of a plurality of integrated circuits packaged with the same or different functions, including one or more Central Processing Units (CPUs), microprocessors, digital Processing chips, graphics processors, and combinations of various control chips.
In some embodiments, the at least one communication bus 33 is arranged to enable connection communication between the memory 31 and the at least one processor 32 or the like.
Although not shown, the computer device 3 may further include a power supply (such as a battery) for supplying power to each component, and preferably, the power supply may be logically connected to the at least one processor 32 through a power management device, so as to implement functions of managing charging, discharging, and power consumption through the power management device. The power supply may also include any component of one or more dc or ac power sources, recharging devices, power failure detection circuitry, power converters or inverters, power status indicators, and the like. The computer device 3 may further include various sensors, a bluetooth module, a Wi-Fi module, and the like, which are not described herein again.
The integrated unit implemented in the form of a software functional module may be stored in a computer-readable storage medium. The software functional module is stored in a storage medium and includes several instructions to enable a computer device (which may be a personal computer, a computer device, or a network device) or a processor (processor) to execute parts of the methods according to the embodiments of the present invention.
In the embodiments provided in the present invention, it should be understood that the disclosed apparatus and method may be implemented in other ways. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the modules is only one logical functional division, and other divisions may be realized in practice.
The modules described as separate parts may or may not be physically separate, and parts displayed as modules may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the present embodiment.
In addition, functional modules in the embodiments of the present invention may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, or in a form of hardware plus a software functional module.
It will be evident to those skilled in the art that the invention is not limited to the details of the foregoing illustrative embodiments, and that the present invention may be embodied in other specific forms without departing from the spirit or essential attributes thereof. The present embodiments are therefore to be considered in all respects as illustrative and not restrictive, the scope of the invention being indicated by the appended claims rather than by the foregoing description, and all changes which come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein. Any reference sign in a claim should not be construed as limiting the claim concerned. Furthermore, it is obvious that the word "comprising" does not exclude other elements or that the singular does not exclude the plural. A plurality of units or means recited in the present invention can also be implemented by one unit or means through software or hardware. The terms first, second, etc. are used to denote names, but not any particular order.
Finally, it should be noted that the above embodiments are only for illustrating the technical solutions of the present invention and not for limiting, and although the present invention is described in detail with reference to the preferred embodiments, it should be understood by those skilled in the art that modifications or equivalent substitutions may be made on the technical solutions of the present invention without departing from the spirit and scope of the technical solutions of the present invention.

Claims (10)

1. A course recommendation method, the method comprising:
calculating to obtain a first user tag matrix according to multiple watching behaviors of each course watched by each user and the course tag of each course;
calculating to obtain a label course matrix according to the first user label matrix;
calculating a target penalty factor according to the marking times of each course label and the watching times of each course;
expanding the first user label matrix into a second user label matrix using a potential dirichlet distribution;
calculating to obtain a user course matrix according to the second user label matrix, the label course matrix and the target penalty factor;
and generating a user course recommendation list according to the user course matrix.
2. The course recommendation method of claim 1, wherein said calculating a first user tag matrix based on the plurality of viewing behaviors of each user viewing each course and the course tag of each course comprises:
calculating the behavior times of each watching behavior of each course watched by each user;
calculating the course preference degree of each user for each course according to the behavior times of each watching behavior and the corresponding preset behavior weight;
calculating the label preference degree of each user for the courses with the same course labels according to the course preference degree of each user for each course;
and constructing a first user label matrix according to the label preference degree of each user.
3. The course recommendation method of claim 2, wherein said generating a user course recommendation list based on said user course matrix comprises:
acquiring the preference degree of each user to each course according to the user course matrix;
sequencing the preference degrees of each course of each user in a reverse order;
generating a first user course recommendation list according to the courses corresponding to the previously preset first quantity of course preference degrees;
calculating the similarity between every two courses in the first user course recommendation list;
acquiring the target similarity which is greater than a preset similarity threshold in the similarities;
and deleting the course with the minimum preference degree in the two courses corresponding to each target similarity from the first user course recommendation list to obtain a second user course recommendation list.
4. The course recommendation method of claim 1, wherein said calculating a target penalty factor based on the number of tags per course label and the number of views per course comprises:
constructing a first penalty factor based on the marking times of each course label;
constructing a second penalty factor based on the number of views of each course;
and calculating to obtain a target penalty factor according to the first penalty factor and the second penalty factor.
5. The course recommendation method of claim 1, wherein said expanding said first user tag matrix to a second user tag matrix using a latent dirichlet distribution comprises:
extracting a plurality of course topics and posterior probability of each course topic according to the course introduction of each course by using the potential Dirichlet distribution;
sorting a plurality of the posterior probabilities for each course in reverse order;
acquiring target course topics corresponding to a second quantity of posterior probabilities which are preset in the front in sequence;
determining the target course theme as an expansion label of the corresponding course;
and updating the first user label matrix according to the extended label to obtain a second user label matrix.
6. The course recommendation method of any of claims 1-5, wherein computing a user course matrix based on the second user tag matrix, the tag course matrix, and the penalty factor comprises:
calculating according to the second user label matrix and the label course matrix to obtain a first user course matrix;
and calculating to obtain a second user course matrix according to the first user course matrix and the penalty factor.
7. The course recommendation method as recited in any one of claims 1-5, wherein said method further comprises:
extracting a plurality of participles in each course, and determining a plurality of hot words according to the word heat of each participle;
calculating the hot word sharing popularity of each hot word according to the watching behavior of the user in watching the course;
calculating the course sharing popularity of each course according to the hot word sharing popularity;
calculating the label sharing heat of each course label according to the course sharing heat;
and determining a target course label according to the label sharing popularity.
8. A course recommending apparatus, said apparatus comprising:
the first calculation module is used for calculating to obtain a first user tag matrix according to various watching behaviors of each course watched by each user and the course tag of each course;
the second calculation module is used for calculating a label course matrix according to the first user label matrix;
the third calculation module is used for calculating a target penalty factor according to the marking times of each course label and the watching times of each course;
a tag expansion module for expanding the first user tag matrix into a second user tag matrix using a latent dirichlet distribution;
the fourth calculation module is used for calculating to obtain a user course matrix according to the second user label matrix, the label course matrix and the target penalty factor;
and the course recommending module is used for generating a user course recommending list according to the user course matrix.
9. A computer device, characterized in that the computer device comprises:
a memory for storing a computer program;
a processor for implementing the course recommendation method as claimed in any one of claims 1 to 7 when executing said computer program.
10. A computer-readable storage medium, having stored thereon a computer program, wherein the computer program, when executed by a processor, implements the course recommendation method as recited in any one of claims 1-7.
CN202110077869.6A 2021-01-20 2021-01-20 Course recommendation method and device, computer equipment and storage medium Active CN112860989B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110077869.6A CN112860989B (en) 2021-01-20 2021-01-20 Course recommendation method and device, computer equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110077869.6A CN112860989B (en) 2021-01-20 2021-01-20 Course recommendation method and device, computer equipment and storage medium

Publications (2)

Publication Number Publication Date
CN112860989A true CN112860989A (en) 2021-05-28
CN112860989B CN112860989B (en) 2022-02-01

Family

ID=76008295

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110077869.6A Active CN112860989B (en) 2021-01-20 2021-01-20 Course recommendation method and device, computer equipment and storage medium

Country Status (1)

Country Link
CN (1) CN112860989B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113378072A (en) * 2021-08-16 2021-09-10 武汉卓尔数字传媒科技有限公司 Object recommendation method and device, electronic equipment and storage medium
CN113641908A (en) * 2021-08-17 2021-11-12 中国联合网络通信集团有限公司 Course pushing method, device, server and computer storage medium
CN114723488A (en) * 2022-04-07 2022-07-08 平安科技(深圳)有限公司 Course recommendation method and device, electronic equipment and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107133730A (en) * 2017-04-24 2017-09-05 天津大学 A kind of potential feature extracting method based on latent Dirichletal location model
CN109697629A (en) * 2018-11-15 2019-04-30 平安科技(深圳)有限公司 Product data method for pushing and device, storage medium, computer equipment
CN111651670A (en) * 2020-05-26 2020-09-11 中国平安财产保险股份有限公司 Content retrieval method, device terminal and storage medium based on user behavior map
CN112231586A (en) * 2020-12-15 2021-01-15 平安科技(深圳)有限公司 Course recommendation method, device, equipment and medium based on transfer learning

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107133730A (en) * 2017-04-24 2017-09-05 天津大学 A kind of potential feature extracting method based on latent Dirichletal location model
CN109697629A (en) * 2018-11-15 2019-04-30 平安科技(深圳)有限公司 Product data method for pushing and device, storage medium, computer equipment
CN111651670A (en) * 2020-05-26 2020-09-11 中国平安财产保险股份有限公司 Content retrieval method, device terminal and storage medium based on user behavior map
CN112231586A (en) * 2020-12-15 2021-01-15 平安科技(深圳)有限公司 Course recommendation method, device, equipment and medium based on transfer learning

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113378072A (en) * 2021-08-16 2021-09-10 武汉卓尔数字传媒科技有限公司 Object recommendation method and device, electronic equipment and storage medium
CN113641908A (en) * 2021-08-17 2021-11-12 中国联合网络通信集团有限公司 Course pushing method, device, server and computer storage medium
CN113641908B (en) * 2021-08-17 2023-06-20 中国联合网络通信集团有限公司 Course pushing method, course pushing device, server and computer storage medium
CN114723488A (en) * 2022-04-07 2022-07-08 平安科技(深圳)有限公司 Course recommendation method and device, electronic equipment and storage medium
CN114723488B (en) * 2022-04-07 2023-05-30 平安科技(深圳)有限公司 Course recommendation method and device, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN112860989B (en) 2022-02-01

Similar Documents

Publication Publication Date Title
CN112632385B (en) Course recommendation method, course recommendation device, computer equipment and medium
CN112860989B (en) Course recommendation method and device, computer equipment and storage medium
CN111680219B (en) Content recommendation method, device, equipment and readable storage medium
CN115002200B (en) Message pushing method, device, equipment and storage medium based on user portrait
CN112231485B (en) Text recommendation method and device, computer equipment and storage medium
CN112380859A (en) Public opinion information recommendation method and device, electronic equipment and computer storage medium
CN107368521B (en) Knowledge recommendation method and system based on big data and deep learning
CN112288337B (en) Behavior recommendation method, behavior recommendation device, behavior recommendation equipment and behavior recommendation medium
CN112328646B (en) Multitask course recommendation method and device, computer equipment and storage medium
CN111666415A (en) Topic clustering method and device, electronic equipment and storage medium
CN114663198A (en) Product recommendation method, device and equipment based on user portrait and storage medium
CN109918574A (en) Item recommendation method, device, equipment and storage medium
CN114781832A (en) Course recommendation method and device, electronic equipment and storage medium
CN114862140A (en) Behavior analysis-based potential evaluation method, device, equipment and storage medium
CN114880449A (en) Reply generation method and device of intelligent question answering, electronic equipment and storage medium
CN112948526A (en) User portrait generation method and device, electronic equipment and storage medium
CN111950707A (en) Behavior prediction method, apparatus, device and medium based on behavior co-occurrence network
CN110929526A (en) Sample generation method and device and electronic equipment
CN112328752B (en) Course recommendation method and device based on search content, computer equipment and medium
CN114399368A (en) Commodity recommendation method and device based on artificial intelligence, electronic equipment and medium
CN114219663A (en) Product recommendation method and device, computer equipment and storage medium
CN113704608A (en) Personalized item recommendation method and device, electronic equipment and storage medium
CN113591881A (en) Intention recognition method and device based on model fusion, electronic equipment and medium
CN113706252A (en) Product recommendation method and device, electronic equipment and storage medium
CN112328779A (en) Training sample construction method and device, terminal equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant