Video recommendation system, method, and computer storage medium

By introducing data collection, recall calculation, and recommendation modules into the video recommendation system, and combining time-series factors and big data storage systems, the problem of ignoring time-series factors in existing technologies is solved, achieving more accurate and diversified video recommendation effects.

CN116910378BActive Publication Date: 2025-11-04CHINA MOBILEHANGZHOUINFORMATION TECH CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211523757.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-30
Publication Date
2025-11-04
Estimated Expiration
2042-11-30

AI Technical Summary

Technical Problem

Existing video recommendation systems ignore time-series factors, leading to biased recommendation results, and lack big data engine solutions adapted to recommendation algorithms, affecting recommendation performance.

Method used

Design a video recommendation system, including a data acquisition and calculation module, a data retrieval and calculation module, and a recommendation module. Combining time sequence and video type tags, the system generates accurate video recommendation sequences through annealing, normalization, and priority algorithms, and utilizes big data storage systems such as HIVE, HDFS, and HBase for calculation and storage.

Benefits of technology

It improves the timeliness and accuracy of recommendations, adapts to recommendation algorithms on big data engines, and enhances the diversity and variability of recommendation results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116910378B_ABST
    Figure CN116910378B_ABST
Patent Text Reader

Abstract

The present disclosure provides a video recommendation system, comprising: a data collection computing module, configured to acquire user features of a first user, video features, and video behavior features of the first user on videos, and generate the video behavior features of the first user with time sequence and video type labels; a data recall computing module, configured to determine a video recommendation sequence to be recommended to the first user according to the video behavior features of the first user with time sequence and video type labels; and a recommendation module, configured to recommend videos to the first user according to the video recommendation sequence to be recommended to the first user; in this way, the video recommendation system is divided into modules, and the recommendation is combined with the time when the first user watches the videos, so that the recommendation is time-effective.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present disclosure relates to the technical field of big data, and particularly relates to a video recommendation system, a video recommendation method and a computer storage medium. BACKGROUND

[0002] In the related art, in the recall based on collaborative filtering, only the relevance between the recommended target and the target or between the user and the user is concerned, so that the recommendation result generated ignores the time sequence factor and produces certain recommendation deviation. Moreover, in the related art, the big data engine end that can adapt to the recommendation algorithm is less proposed, which undoubtedly affects the recommendation effect of the recommendation algorithm in implementation.

[0003] Therefore, a video recommendation system that can comprehensively consider the time sequence factor and improve the recommendation effect is needed. SUMMARY

[0004] The present disclosure provides a video recommendation system, a video recommendation method and a computer storage medium.

[0005] The first aspect of the present disclosure provides a video recommendation system, characterized in that the system comprises: a data collection calculation module, configured to acquire user features of a first user, video features and video behavior features of the first user on videos, and generate video behavior features of the first user with time sequence and video type labels; a data recall calculation module, configured to determine a video recommendation sequence to be recommended to the first user by a recommendation algorithm according to the video behavior features of the first user with time sequence and video type labels; and a recommendation module, configured to recommend videos to the first user according to the video recommendation sequence to be recommended to the first user.

[0006] The second aspect of the present disclosure provides a video recommendation method, comprising: acquiring user features of a first user, video features and video behavior features of the first user on videos, and generating video behavior features of the first user with time sequence and video type labels; determining a video recommendation sequence to be recommended to the first user by a recommendation algorithm according to the video behavior features of the first user with time sequence and video type labels; and recommending videos to the first user according to the video recommendation sequence to be recommended to the first user.

[0007] The third aspect of the present disclosure provides a non-transitory computer readable storage medium, characterized in that the computer readable storage medium stores computer executable instructions, and the computer executable instructions are executed by a processor to implement the video recommendation method provided in the second aspect.

[0008] The technical scheme provided by the embodiments of the present disclosure can include the following beneficial effects: The embodiments of the present disclosure include: a data collection calculation module, configured to acquire user features of a first user, video features, and video behavior features of the first user on videos, and generate video behavior features of the first user with time sequence and video type labels; a data recall calculation module, configured to determine a video recommendation sequence to be recommended to the first user according to the video behavior features of the first user with time sequence and video type labels through a recommendation algorithm; and a recommendation module, configured to recommend videos to the first user according to the video recommendation sequence to be recommended to the first user. In this way, compared with a recommendation that ignores time sequence factors, the recommendation of the embodiments of the present disclosure is more accurate in combination with time sequence. Moreover, since the embodiments are divided into multiple calculation modules and a recommendation module, each module is implemented through an engine, so that the recommendation algorithm can be adapted and the recommendation effect can be improved.

[0009] It should be understood that the general description above and the detailed description below are only exemplary and explanatory, and cannot limit the present disclosure. BRIEF DESCRIPTION OF DRAWINGS

[0010] Figure 1 A structural schematic diagram of a video recommendation system is shown for an exemplary embodiment.

[0011] Figure 2 A structural schematic diagram of a video recommendation system is shown for an exemplary embodiment.

[0012] Figure 3 A structural schematic diagram of a video recommendation system is shown for an exemplary embodiment.

[0013] Figure 4 A structural schematic diagram of a video recommendation system is shown for an exemplary embodiment.

[0014] Figure 5 A structural schematic diagram of a video recommendation system is shown for an exemplary embodiment.

[0015] Figure 6 A user video browsing behavior schematic diagram is shown for an exemplary embodiment.

[0016] Figure 7 A user video browsing behavior schematic diagram is shown for an exemplary embodiment.

[0017] Figure 8 A structural schematic diagram of a video recommendation system is shown for an exemplary embodiment.

[0018] Figure 9 A flow schematic diagram of a video recommendation method is shown for an exemplary embodiment.

[0019] Figure 10A flowchart of a video recommendation method shown for an exemplary embodiment;

[0020] Figure 11 A flowchart of a video recommendation method shown for an exemplary embodiment;

[0021] Figure 12 A flowchart of a video recommendation method shown for an exemplary embodiment;

[0022] Figure 13 A flowchart of a video recommendation method shown for an exemplary embodiment;

[0023] Figure 14 A flowchart of a video recommendation method shown for an exemplary embodiment;

[0024] Figure 15 A flowchart of a video recommendation method shown for an exemplary embodiment. DETAILED DESCRIPTION

[0025] The exemplary embodiments will be described in detail herein with reference to the attached drawings. When the description below refers to accompanying drawings, unless otherwise noted, the same numbers in different drawings refer to the same or similar elements. The embodiments described in the following exemplary embodiments are not representative of all embodiments consistent with the present disclosure. Rather, they are merely examples of apparatuses and methods consistent with some aspects of the present disclosure, as detailed in the appended claims.

[0026] In the present disclosure, in conjunction with Figure 1 As shown in FIG. 1, a video recommendation system 100 is provided, which comprises:

[0027] A data collection computing module 101 is configured to acquire user features of a first user, video features, and video behavior features of the first user on videos, and generate video behavior features of the first user with time sequence and video type labels;

[0028] A data recall computing module 102 is configured to determine a video recommendation sequence to be recommended to the first user by a recommendation algorithm according to the video behavior features of the first user with time sequence and video type labels;

[0029] A recommendation module 103 is configured to recommend videos to the first user according to the video recommendation sequence to be recommended to the first user.

[0030] In the present disclosure, the video recommendation system 100 can be a big data recommendation engine, which can be applied to a terminal. The terminal can be a smart electronic device such as a mobile phone, a computer, a tablet computer, etc.

[0031] The data collection and calculation module 101 can include a combination of multiple units, and is used at least for obtaining, calculating and storing the relevant data of the first user. Here, the relevant data of the first user includes but is not limited to the following: user features, video features and / or video behavior features of the first user to the video.

[0032] Here, the user features of the first user include but are not limited to one or a combination of the following: first user account, first user age, first user location, first user language and / or first user gender.

[0033] The video features include but are not limited to one or a combination of the following: video title, video type label and / or video duration.

[0034] The video behavior features include but are not limited to one or a combination of the following:

[0035] play behavior features, comment behavior features, watch time, like behavior features or un-like behavior features, dislike behavior features or un-dislike behavior features, collection behavior features, un-collection behavior features and / or forwarding behavior features.

[0036] Here, the play behavior features include but are not limited to whether a certain video is played and / or the watch completion rate of the played video.

[0037] The comment behavior features include but are not limited to positive comment behavior features, negative comment behavior features and / or neutral comment behavior features.

[0038] In some embodiments, after the data collection and calculation module 101 collects the user features of the first user, the video features and the video behavior features of the first user to the video, it aggregates the video behavior features of the first user with time sequence and video type label according to the play time sequence of the first user to the video, the video type label and the video behavior features.

[0039] In this way, the video behavior features of the first user can be obtained with user features as the dimension and sorted according to the play time, so as to obtain comprehensive multi-dimensional data, which facilitates subsequent comprehensive analysis of the data.

[0040] In some embodiments, when calculating the similarity between users, the data recall calculation module 102 can score the video behavior features based on the time sequence factor combined with the recommendation algorithm, and then determine the video recommendation sequence to be recommended to the first user according to the scored video behavior features.

[0041] For example, considering the play time sequence of the first user, the annealing parameter of the video whose play time is farther away from the current time is smaller, so the weight occupied is smaller.

[0042] Here, the recommendation algorithm includes but is not limited to: annealing algorithm, normalization algorithm and / or priority algorithm.

[0043] In this way, an effective video recommendation sequence based on time factors can be obtained. For example, for a video watched by the first user a long time ago, the current viewing interest may not be great. The annealing algorithm considers similar problems and reduces the weight of the video viewing behavior features at a time far from the current time. In this way, a video recommendation sequence with timeliness can be obtained.

[0044] After the data recall calculation module 102 determines the video recommendation sequence, the recommendation module 103 stores the video recommendation sequence. When the first user logs in to the terminal application, the recommendation module 103 will recommend videos to the first user in real time. And will store the recommended videos in the log.

[0045] In the embodiments of the present disclosure, the data collection calculation module 101, the data recall calculation module 102 and the data recommendation module 103 are at least connected to each other to transmit related data without interfering with the execution of their respective functions. It has a certain layering and low coupling degree, which is effective and convenient for algorithm processing of large amounts of data, such as 10,000 to 100,000 or even millions of massive data. And based on the time sequence factor combined with the annealing algorithm to calculate the video behavior features, get the video to be recommended, which can improve the accuracy.

[0046] In the embodiments of the present disclosure, combined with Figure 2 As shown in the figure, the data collection calculation module 101 specifically includes:

[0047] The collection unit 1011 is configured to collect the user features of the first user, the video features and the video behavior features of the first user to the video.

[0048] The aggregation unit 1012 is configured to generate the video behavior features of the first user with time sequence and video type label according to the viewing time of the first user and the user features of the first user, the video features and the video behavior features of the first user to the video.

[0049] The storage unit 1013 is configured to store the video behavior features of the first user with time sequence and video type label and the video features.

[0050] In the embodiments of the present disclosure, the collection unit 1011 can be a message middleware Kafka, which can be used for real-time data collection, and can be used for data buffering, interface decoupling and data storage.

[0051] Thus, the collection unit 1011 can collect at least the user feature of the first user, the video feature, and the video behavior feature of the first user on the video from the terminal application.

[0052] In some embodiments, the aggregation unit 1012 can include a Flink component and a Hive component. The Flink component is a real-time computing engine responsible for processing real-time tasks. It is used to monitor user behavior in real time, analyze, calculate, and transmit data.

[0053] For example, the Flink component is used to aggregate the video behavior feature of the first user with time sequence and video type label according to the viewing time of the first user at least in real time.

[0054] The Hive component is an offline computing database that can process offline data, so it can at least combine the Flink component to process and obtain the viewing time of the first user offline and periodically, aggregate the video behavior feature of the first user with time sequence and video type label. The video feature of the video watched by the first user, such as the video type label, is stored, and the video type label is sorted from recent to remote according to time sequence.

[0055] In some embodiments, the storage unit 1013 can be a distributed storage data system HDFS for distributed storage of data.

[0056] For example, the distributed storage data system HDFS is used to store the user feature of the first user, the video feature, and the video behavior feature of the first user on the video in a distributed manner.

[0057] Thus, the data stored in the storage unit 1013 can be used for recall calculation of the data recall calculation module 102.

[0058] In the embodiments of the present disclosure, the data recall calculation module 102 is combined with Figure 3 As shown, the data recall calculation module 102 includes:

[0059] The first recall calculation unit 1021 is configured to generate a video behavior score sequence of the first user with time sequence according to the video behavior feature of the first user with time sequence and video type label and the video feature.

[0060] The second recall calculation unit 1022 is configured to determine a total score of the video type label of the video watched by the first user according to the video behavior score sequence of the first user with time sequence by using an annealing algorithm.

[0061] The third recall calculation unit 1023 is configured to determine, according to the video type label total score, a second user similar to the first user from a plurality of second users as a target second user by a normalization algorithm.

[0062] The fourth recall calculation unit 1023 is configured to determine a video recommendation sequence to be recommended to the first user by a priority algorithm and the video type label total score and the viewing video set of the target second user.

[0063] In the embodiment of the present disclosure, the first recall calculation unit 1021 is specifically configured to:

[0064] generate a video behavior score sequence of the first user according to the video behavior features of the first user with time sequence and video type label and video features;

[0065] generate a video type label score according to the video behavior score sequence of the first user.

[0066] In the embodiment of the present disclosure, the recall calculation module 102 can be a Spark component as an offline or real-time calculation engine to calculate data by calling different algorithms.

[0067] Regarding the first recall calculation unit 1021, at least the video behavior features of the first user to the video with some labels are scored, and the scores of these videos are sorted in the order of time from far to near relative to the current time, thereby generating a video behavior score sequence of the first user with time sequence.

[0068] Here, different scores are given to different video behavior features. For example, a positive score can be given to a behavior feature with a positive attitude. A negative score can be given to a behavior feature with a negative attitude. A score of 0 can be given to a behavior feature with a neutral attitude.

[0069] Specifically, for example, the collection behavior feature, the like behavior feature, the forwarding behavior feature, the positive comment behavior feature, the playing behavior feature, the canceling the like behavior feature, and the like belong to the behavior feature with a positive attitude, and a positive score can be given. The dislike behavior feature, the negative comment behavior feature, the canceling the like behavior feature, and the not playing a video belong to the behavior feature with a negative attitude, and a negative score can be given. The neutral comment behavior feature belongs to the behavior feature with a neutral attitude, and a score of 0 can be given.

[0070] In one embodiment, the collection behavior feature can be 5 points, the like behavior feature can be 4 points, the forwarding behavior feature can be 3 points, the canceling the collection behavior feature can be -2 points, the canceling the like behavior can be -1 point, and the canceling the dislike behavior feature can be 1 point.

[0071] The watching completeness rate of the played video in the playing behavior feature refers to a ratio between the playing time length and the total time length of the video.

[0072] A score can be determined according to the watching completeness rate. For example, if the watching completeness rate is greater than a first threshold value, a first score is given; if the watching completeness rate is between the first threshold value and a second threshold value, a second score is given; if the watching completeness rate is less than the second threshold value, a third score is given; wherein the first threshold value is greater than the second threshold value, the first score is greater than the second score and both are positive numbers, and the third score is a negative number.

[0073] For example, the first threshold value can be 0.5, 0.6, or 0.7. The second threshold value can be 0.2 or 0.1. The first score can be 2 points, 3 points, or 4 points. The second score can be 1 point. 0.5 points, etc. The third score can be -1 point, -2 points, or any suitable value. The embodiments of the present disclosure are not limited to the above examples.

[0074] After the first user's time-ordered video behavior score sequence is calculated and generated by the first recall calculation unit 1021, the first user's time-ordered video behavior score sequence can be stored in the distributed storage data system HDFS.

[0075] Regarding the second recall calculation unit 1022, it can be used to call multiple algorithms to determine the total score of the video type label of the video watched by the first user according to the first user's time-ordered video behavior score sequence.

[0076] For example, the first user's time-ordered video behavior score sequence is taken out from the experience pool, i.e., the distributed storage data system HDFS, which at least records the video behavior score of the first user within a preset time. At the same time, the video type label of the video watched by the first user is taken out from the corresponding Hive component. Through an annealing algorithm, the total score of the video type label of the video watched by the first user is determined.

[0077] Here, the annealing algorithm is at least based on time sequence, decays the weight of the video behavior score from near to far in time sequence and takes the sum, thereby obtaining the total score of the video type label of the video watched by the first user within a preset time in the near future. Each label corresponds to a total score of the video type label. In this way, the set of videos watched according to the total score of the video type label of the first user is more likely to be recommended to the first user.

[0078] Regarding the third recall calculation unit 1023, the normalization result of the total score of each video type label can be calculated by a normalization algorithm, and the second user with high similarity to the first user or meeting the preset condition is selected as the target second user.

[0079] Here, the normalization result of the total score of each video type label is equal to the ratio of the total score of the corresponding video type label to the total scores of multiple video type labels. Here, the number of total scores of multiple video type labels is specifically the number of all video type label types of the video watched by the first user. For example, the number of video type label types can be 3, 4, 5, 6, 7, 8, 9, etc. Any suitable number. The embodiments of the present disclosure are not limited to the above examples.

[0080] Regarding the fourth recall calculation unit 1023, the priority algorithm can be constructed by a priority function, so that videos with high priority have a greater probability of being selected into the video recommendation sequence, and the priority recommendation element also has a certain opportunity to be selected into the video recommendation sequence. Thus, the diversity of the recommendation can be improved.

[0081] Specifically, a reference score can be added when constructing the priority function. If the priority score obtained by the priority function is greater than the reference score, the priority of the corresponding label is enhanced. If the priority score obtained by the priority function is less than the reference score, the priority of the corresponding label is decayed.

[0082] Here, the priority function can be modeled by an exponential function, so as to expand the gap between the scores and make the priority more sensitive to differences. In this way, the video recommendation sequence with diversity and difference can be obtained by the priority algorithm.

[0083] And the video recommendation sequence is stored in the columnar storage database HBASE for subsequent calling. The columnar storage database HBASE is convenient for storing massive data and reading data faster and more conveniently.

[0084] The present disclosure and because of the annealing algorithm combined with the timing problem, the timeliness of the recommendation is improved. Because the normalization algorithm is combined, the recommended video of the second user with higher priority can be obtained. And the priority algorithm can improve the diversity and difference of the recommendation.

[0085] In the embodiments of the present disclosure, the annealing algorithm is combined with the timing problem. Figure 4 As shown in the figure, the recommendation module 103 comprises:

[0086] The storage unit 1031 is configured to store a video recommendation sequence to be recommended to the first user.

[0087] The parameter configuration unit 1032 is configured to generate video recommendation configuration parameters of the video recommendation sequence recommended to the first user.

[0088] In the embodiments of the present disclosure, the storage unit can be a redis memory, and the first user's video recommendation sequence can be read more quickly through the storage unit. The parameter configuration unit can be an Apollo parameter configuration unit, and can configure parameters for video recommendation. For example, the recommended position of the recommended video, the recommended time, and the like.

[0089] In this way, the terminal can recommend a video to the first user.

[0090] In the embodiments of the present disclosure, the second recall calculation unit 1022 is specifically configured to:

[0091] call an annealing algorithm;

[0092] The annealing algorithm is specifically configured to:

[0093] determine an index of a weight of each video type tag score of the videos with the same tag according to a time sequence in which the first user watches the videos with the same tag before a preset time, wherein the index of the weight is inversely proportional to the time sequence, and the weight is less than 1;

[0094] obtain a sum of a product of a value of the index power of the weight of the video type tag scores of the videos with the same tag and the corresponding video type tag score according to the product of the index power of the weight of each video type tag score of the videos with the same tag and the corresponding video type tag score;

[0095] obtain a total video type tag score of the videos watched by the first user according to the sum of the product.

[0096] In the embodiments of the present disclosure, the formula of the annealing algorithm is as follows:

[0097]

[0098] In the above formula 1.1, γ is a discount factor and is less than 1, and is exponentially attenuated with time interval t. The time interval t refers to the interval number of videos watched between the time of watching the video and the current time. For example, for one video watched before the current time, the time interval of the one video is 1. If two videos are watched between the current time, the earliest time interval of watching the video is 2, and so on. Here, the time interval t is opposite to the time sequence. The discount factor is also called the weight, and t-1 represents the index of the weight.

[0099] When t is larger, γ is smaller. That is, the index of the weight is inversely proportional to the time sequence. γ is also called the weight.

[0100] Since the video type tags have been sorted by the aggregation unit 1012 from near to far, the discount factor of the video type tag that the first user browsed recently decays as t increases. Thus, the closer the video corresponding to the video type tag that the user watched to the current time, the easier it is to find the second user's video corresponding to the video type tag and recommend it to the first user.

[0101] In the above formula 1.1, represents the overall score of the video type tag i that the user a has browsed, which is equivalent to the score of the video type tag of a video that the user watches the sum of the product of the discount factor γ and the exponential n-1.

[0102] It should be noted that the sum of the product is the total score of the video type tag of the video that the first user watches.

[0103] In this way, the recommendation granularity reaches the level of label recommendation of media asset attributes, rather than the level of item recommendation in the related art.

[0104] In the embodiment of the present disclosure, the third recall calculation unit 1023 is specifically configured to:

[0105] invoke a normalization algorithm,

[0106] The normalization algorithm is specifically configured to:

[0107] determine the ratio between the sum of the total scores of the video type tags of any same label that the first user watches and the total scores of the video type tags of multiple different labels that the first user watches,

[0108] determine the video watching preference of the first user under each label;

[0109] determine a plurality of second users similar to the first user according to the video watching preference of the first user under each label;

[0110] determine a second user whose similarity to the first user satisfies a preset condition as a target second user according to the plurality of second users similar to the first user.

[0111] In the embodiment of the present disclosure, the normalization algorithm formula is as follows:

[0112]

[0113] In formula 1.2, represents the total score of the video of the same label, The sum of the video type label total scores of different multiple different labels. The video viewing preferences of the first user under each label can be determined as the normalized result. Thus, the video viewing preferences of the first user under each label are obtained from the database for a plurality of second users similar to the first user.

[0114] The second user can select 5, 10, 20, etc. any suitable number, and the embodiments of the present disclosure are not limited to the above examples.

[0115] In some embodiments, the determining the second user whose similarity to the first user satisfies a preset condition as a target second user comprises: determining the second user with the highest similarity to the first user as the target second user; and thus obtaining a video collection of the target second user to recommend videos to the first user.

[0116] The specific calculation embodiment is as follows:

[0117] As Figure 6 The behavior of the user's recent video viewing is shown. The recent movie viewing behavior of users A and B is shown, wherein the ellipses record the user names, the rectangles record the movie viewing of the users, and the braces record the classification labels of the movies, i.e. the specific attributes of the movies. User A recently viewed {moive1, movie3, movie4} three movies, and user B recently viewed {moive2, movie3, movie5}. The label corresponding to the video moive1 is {label1, label2, label4}, the label corresponding to the video moive2 is {label2, label3, label5}, the label corresponding to the video moive3 is {label1, label4}, the label corresponding to the video moive4 is {label2, label4}, and the label corresponding to the video moive5 is {label1, label3, label5}. The video type label score under the user dimension can be obtained according to formula 1.2, and the distribution is recorded as mrA1, mrA3, and mrA4.

[0118] Figure 7 The recent movie viewing order of users A and B is shown. This data can be obtained from the experience meta on the experience playback on HDFS. Figure 7 It can be concluded that, according to the time from far to near, the recent viewing order of user A is {moive1, movie3, movie4}, and the viewing time order of user B can be obtained according to this method. Assuming that the discount factor = 0.99, a two-dimensional table of (user-movie label score) is established based on this, as shown in Table 1.

[0119] Table 1: Calculation of movie label score under user dimension

[0120]

[0121] In combination with Table 1, the scores of label 1 under user A are listed as follows:

[0122] The first label 1 tagged are {moive 1, movie 3, movie 5}, and the user browsed movies are only {moive 1, movie 3}, so the label 1 score is only related to {moive 1, movie 3}, and therefore mrA2 does not appear under Score Label 1. Through Figure 6 It is found that the user browses two movies in the order of {moive 1--->movie 3}, that is, movie 3 is the most recent, and according to the calculation method of formula (1), the score of label 1 under user A is obtained: mrA3*1+mrA1*0.99.

[0123] For the calculation of label 2 under user A, it can be seen that the square is taken here, because in Figure 2 user A experiences 3 time steps, that is, t=3, in the order of near and far according to the browsing order, moive 1 and movie 4 are different by 2 time steps, so the square is taken.

[0124] It should be noted that in Table 1, A1 represents the total score of the video type label under label 1, A2 represents the total score of the video type label under label 2, A3 represents the total score of the video type label under label 3, A4 represents the total score of the video type label under label 4, and A5 represents the total score of the video type label under label 5. SumA represents the Ratio(A) under label 1 is equal to A1 / SumA, Ratio(A) under label 1 is equal to A2 / SumA, Ratio(A) under label 3 is equal to A3 / SumA, Ratio(A) under label 4 is equal to A4 / SumA, and Ratio(A) under label 5 is equal to A5 / SumA.

[0125] For user B, B1 represents the total score of the video type label under label 1, B2 represents the total score of the video type label under label 2, B3 represents the total score of the video type label under label 3, B4 represents the total score of the video type label under label 4, and B5 represents the total score of the video type label under label 5. SumB represents the Ratio(B) under label1 is equal to B1 / SumB, Ratio(B) under label1 is equal to B2 / SumB, Ratio(B) under label3 is equal to B3 / SumB, Ratio(B) under label4 is equal to B4 / SumB, and Ratio(B) under label5 is equal to B5 / SumB.

[0126] Ratio(A) is calculated from formula 1.2, which is used to represent the preference of user A under each label, and is an important means of selecting similar users. Ratio(B) is calculated from formula 1.2, which is used to represent the preference of user B under each label, and is an important means of selecting similar users. It should be noted that user A and user B in the above example are different first users.

[0127] In this way, the second user similar to the first user can be determined by calculating the user deviation of the first user.

[0128] In the embodiments of the present disclosure, the preset condition comprises:

[0129] The similarity is greater than a preset similarity;

[0130] Or,

[0131] The second users are ranked from high to low according to the similarity, and the second users in the top N, wherein the N is a positive integer.

[0132] In the embodiments of the present disclosure, the N can be 1, 2, 3, etc. The preset similarity can be 0.5, 0.6, 0.7, 0.8, etc. The embodiments of the present disclosure are not limited to the above examples.

[0133] In the embodiments of the present disclosure, on the basis of obtaining the similar second users, the video needs to be effectively recommended. According to the order of similarity from high to low, a plurality of videos under the second user with the highest similarity to the first user can be selected for recommendation.

[0134] In this way, by setting the preset condition, part of the second users can be selected, or the second user with the highest similarity to the first user can be selected.

[0135] In the embodiments of the present disclosure, the fourth recall calculation unit 1023 is specifically configured to:

[0136] Call a priority algorithm;

[0137] The priority algorithm is specifically used to:

[0138] Determine a priority recommendation probability according to the score of each video type label;

[0139] determining a video recommendation priority order recommended to the first user from the target second user's video set according to the priority recommendation probability;

[0140] generating a video recommendation sequence to be recommended to the first user according to the video recommendation priority order recommended to the first user.

[0141] In the related art, if only the video with the highest expression score is selected from the target second user's video set according to the similarity calculation result, the optimality of the recommendation can be ensured. However, only recommending the optimal recommendation result under the current set cannot fully tap the potential interests of the user, and therefore it is necessary to effectively maintain the balance between the current optimality and the potential recommendation potential, that is, the EE problem.

[0142] In the embodiments of the present disclosure, in order to maintain the diversity of the recommendation elements, a set of priority algorithms is designed, and the priority function is used to ensure the exploration and utilization of the recommendation. The result with high priority has a greater probability of being selected and recommended to ensure the optimality of the recommendation. At the same time, the recommendation element with low priority also has a chance to be selected to ensure the diversity of the recommendation result.

[0143] The specific implementation is as follows:

[0144] A reference score is selected for comparison. If the score is greater than the reference score, it is strengthened, and the recommendation of the label category is enhanced. Otherwise, it is attenuated. For a media pool with K sets, the detailed priority calculation formula is as follows:

[0145]

[0146] In the above formula 1.3, p represents the first user, the mean value is selected as the reference standard, and the parameter h controls the difference between the score and the mean value. By adjusting h, the stability of the score can be ensured. The present application selects an exponential function model. Because the exponential function can expand the difference between the scores, the priority is more sensitive to the difference. Priority recommendation probability.

[0147] In the embodiments of the present disclosure, the calculation result of formula 1.3 can be stored in a columnar storage database HBASE for calling.

[0148] In this way, a video recommendation set with difference and diversity can be obtained.

[0149] Example 1:

[0150] The embodiments of the present disclosure provide a video recommendation method.

[0151] The disadvantages of the related art are as follows:

[0152] Most of the existing recall based on collaborative filtering only concerns the relevance between recommended items and items or users and users, and rarely considers the user timing factor, and the timing decay and priority problem of the recommended result based on the timing factor;

[0153] The recommendation granularity of the collaborative filtering method at the present stage only reaches the commodity level, and the inherent attribute characteristics of commodities are not effectively mined.

[0154] The existing recommendation algorithm can rarely propose a big data engine end scheme suitable for the algorithm, but in engineering practice, the advantages and disadvantages of the algorithm are closely related to the big data engine and scheduling.

[0155] The technical problems solved by the embodiments of the present disclosure are as follows:

[0156] The "collaborative filtering method based on timing priority" proposed in the present application is realized in a massive big data scenario, so a complete recommendation engine process needs to be designed to better adapt to the algorithm, and the engine part mainly includes a data acquisition and cleaning module, a recall data calculation module and a diversity result storage module. In order to maintain effective calculation and storage of big data, the present application uses HIVE as an offline data calculation engine, uses HDFS as a basic data storage warehouse, and uses HBASE database as a storage module for diversity recall results on the basis of HDFS.

[0157] In order to further realize user-item based joint recall, the time effectiveness and timing of data are fully utilized, and an evaluation system is established based on user behavior. The timing factor is considered for annealing on the basis of the scoring mechanism, and the calculated result priority is sorted to ensure the diversity of the recommended result.

[0158] The collaborative filtering calculation granularity of the present application reaches the label attribute level of commodities. Compared with the collaborative filtering (Collaborative, CF) recommendation algorithm of the related art which only reaches the commodity level, the present application can fully mine data and improve the data operation value.

[0159] In order to alleviate the above-mentioned related art deficiencies, the present application provides a scoring mechanism, which establishes an evaluation system based on user behavior. The timing factor is considered for annealing on the basis of the scoring mechanism. The overall scheme big data engine includes a data acquisition and cleaning module, a recall data calculation module and a real-time service module, and uses a hierarchical structure processing to ensure low coupling between layers. The process is as shown in Figure 5 .

[0160] 1. Data acquisition and cleaning module (described by the data acquisition and calculation module in the above embodiment)

[0161] The original behavior reporting data is input into the Kafka message middleware through the embedding point, real-time monitoring, analysis, calculation and transmission are adopted by using the Flink component, and finally stored in the HDFS end for big data storage. The HDFS data is synchronized to the HIVE warehouse through the repair of the meta database of the hive table for offline data warehouse analysis. In the transmission process, the main experience tuple (user name id, field frequency id, timestamp, event, action) is recorded, and the real-time experience of the embedding point is synchronized to the database.

[0162] For the experience data stored in the database, it is necessary to aggregate offline regularly according to the time sequence in the user dimension, and store the aggregated information in the database for experience playback when offline calculation is used.

[0163] 2. Recall data calculation module (through the data recall calculation module in the above embodiment)

[0164] The recall data calculation module is the core module of the application, and the main functions include the score mechanism calculation based on time decay and priority calculation.

[0165] 2.1.1 Time sequence decay based collaborative filtering

[0166] The traditional collaborative filtering algorithm is based on users or items, and the popularity of the recommended goods is obtained by calculating the similarity. The application designs a collaborative filtering mechanism using experience playback, which accurately considers the correlation of goods to the attribute label of the goods and also considers the connection between users. A set of evaluation system is established through the user's behavior, and the time sequence factor is considered for annealing based on the scoring mechanism. Finally, the user sequential comprehensive score is obtained to support the similarity calculation, so that the recommendation effect is more accurate and flexible. Specifically:

[0167] (1) The experience data of the recent stage is obtained from the experience pool regularly, and the user dimension is aggregated to obtain a user's recent behavior data stream.

[0168] (2) According to the user's behavior to the video, a specific action-scoring mechanism is established based on the label in the video media information, in detail: 5 points for collection, 4 points for like, 3 points for forwarding, and for the user's playback behavior, the playback rate needs to be calculated, that is, the playback time / total time. If the value is greater than 0.5, it is given 2 points, if the value is less than 0.1, it means that the user is not interested, and it is given-1 point, and the rest is 0 point. If the user cancels the collection, it is given-2 points, and if the user cancels the like, it is given-1 point. After the calculation, it is stored in the experience pool of HDFS;

[0169] (3) Experience playback: take out each piece of sequential experience in the experience pool, which records the user's recent video behavior, and get the label of the media from the HIVE media library, calculate the user's score for a complete experience chain according to formula (1) and store it in HBASE.

[0170]

[0171] wherein is a discount factor, which decays exponentially with time t, since the video label is sorted from recent to distant by the data collection and cleaning module based on user behavior, the discount degree of the video label recently browsed by the user is low, and it is easier to be recommended.

[0172] It can be seen from formula 2.1 that, represents the overall score of the video type label i browsed by user a, which is equivalent to the score of the label * discount factor, wherein the score of the label The video score obtained by formula 2.1 is the video score, and it can be seen that the precision granularity of the present application reaches the label level of the media attribute, rather than the traditional item level.

[0173] (4) After the experience playback is calculated, normalize the proportion of each label in the user dimension to prevent the label weight of different videos from deviating too much, specifically as formula 2.2.

[0174]

[0175] The following example illustrates the above calculation logic:

[0176] Figure 6 The user's recent behavior is shown:

[0177] Figure 6 The recent video behavior of users A and B is shown, wherein the oval records the user name, the rectangle is the video browsed by the user, and the label in the curly braces records the classification label of the video, i.e. the specific attribute of the video. User A recently browsed {movie1, movie3, movie4} three videos, and the video score in the user dimension, i.e. the label score, can be obtained according to formula 2.1, which are mrA1, mrA3 and mrA4 respectively.

[0178] Figure 7 The recent video browsing order of users A and B is shown, and this data can be obtained from the experience playback experience on HDFS.

[0179] From Figure 7It can be concluded that the recent browsing order of user A is {movie1, movie3, movie4} in time from far to near, and the browsing time order of user B can be obtained in this way. Assuming that the discount factor = 0.99, a two-dimensional table (user---movie tag score) is established based on this.

[0180] Explanation: label1 score under userA:

[0181] The first label1 tagged is {movie1, movie3, movie5}, and only {movie1, movie3} is under the movie browsed by the user, so the label1 score is only related to {movie1, movie3}, and therefore mrA2 does not appear under Score Label1. Through Figure 2 It is found that the user browses two movies in the order {movie1--->movie3}, that is, movie3 is the most recent, and according to the calculation method of formula (1), the score of label1 under userA dimension is obtained: mrA3*1+mrA1*0.99.

[0182] For the calculation of label2 under userA dimension, it can be seen that γ takes the square here, because in Figure 7 user A experiences 3 time steps, that is, t = 3, in the order of browsing order from near to far, movie1 and movie4 differ by 2 time steps, so the square is taken.

[0183] The calculation of Ratio(A) comes from formula 2.2, which is used to represent the preference of user A under each label, and is an important means of selecting similar users.

[0184] 2.2.2 Diversity result calculation module

[0185] On the basis of obtaining the most similar users, it is necessary to effectively recommend videos. In the present application, according to the similarity order, the topk videos under the user p with the highest similarity to the user u are selected according to formula 2.2 for recommendation (after deduplication). If the video with the highest tag score in the set is selected according to the similarity calculation result, the optimality of the current recommendation can be guaranteed, but only recommending the optimal recommendation result under the current set cannot fully tap the potential interests of the user, so it is necessary to effectively maintain the balance between the current optimality and the exploration of potential recommendation potential, that is, the EE problem.

[0186] In order to maintain the diversity of recommended elements, the application designs a priority algorithm, through the priority function to ensure the exploration and utilization of the recommendation, the results with high priority have a greater probability of being selected and recommended to ensure the optimality of the recommendation, at the same time, the recommended elements with low priority also have the opportunity to be selected to ensure the diversity of the recommended results, the specific idea is as follows:

[0187] A reference score is selected for comparison, and the score greater than the reference score is strengthened, and the recommendation of the label category is enhanced, otherwise it is attenuated, for a media pool with K sets, the detailed priority calculation formula is as follows:

[0188]

[0189] In formula 2.3, the mean value is selected as the reference standard, and the parameter h controls the difference between score and the mean value, by adjusting h, the stability of score can be ensured, the application selects an exponential function model, because the exponential function will enlarge the difference between scores, so that the priority is more sensitive to the difference.

[0190] Finally, the results obtained through formula 2.3 are stored in HBASE for calling.

[0191] 2.3 Real-time service module (described by the above recommendation module)

[0192] The real-time service module is mainly responsible for synchronizing the data stored in the big data, since the recommended results need to be

[0193] Ensure the stability and timeliness of the results, therefore, for the recommendation request of the user, it needs to be put into the redis component based on the memory. Therefore, the application uses the big data spark computing engine to synchronize the recommended result data regularly, the hyperparameter adjustment of the real-time service is obtained by using apollo, and the log is stored by using elk framework.

[0194] The system provided by the application is driven by task flow in the offline big data computing module, uses the task scheduling module dolphinscheduler to schedule and monitor, so as to ensure the stable execution of the system.

[0195] The complete hierarchical system module flow is as Figure 8 .

[0196] Step [1] real-time monitoring of Kafka data, through the Flink component to transmit the message to the big data storage platform HDFS;

[0197] Step [2] regularly obtain the data of the recent stage from HDFS, aggregate the data by time from near to far in user dimension, and store the aggregated information in hive;

[0198] Step [3] according to user behavior, using spark components to score the movie (label) based on rating, collection 5 points, like 4 points, forward 3 points, for the user's playback behavior, according to the playback time / total time, if the value is greater than 0.5, give 2 points, if the value is less than 0.1, give -1 point, the rest is 0 point, if the user cancels the collection, give -2 points, cancel the like, give -1 point, after scoring, store the data in the experience pool;

[0199] Step [4] using spark components to do experience playback operation: according to formula (1) batch update to the stored sequential information, and finally store the complete experience chain score to HBASE;

[0200] Step [5] after experience playback, using spark components to do the result of step [4] according to formula (2) normalization, and according to the Pearson coefficient to calculate the similarity between users and store it in HBASE;

[0201] Step [6] using spark components to do priority calculation according to formula (3) on the similarity calculation result of experience playback, and according to the calculation result, recommend by probability to maintain the diversity of the recommendation result;

[0202] Step [7] store the recommendation result into HBASE to complete the recommendation engine calculation, and synchronize to redis for real-time part calling.

[0203] Step [8] real-time part reads apollo configuration parameters and reads redis results for recommendation service, and puts the recommendation result into the log module composed of ELK.

[0204] Here, the log module includes Logstash data synchronization component, responsible for data synchronization; Elasticsearch log storage database; Kibana storage data UI interface display module, generally cooperates with log platform elk

[0205] In the recommendation background in the embodiment of the disclosure, the timeliness and time sequence of data are fully utilized, and an evaluation system is established based on user behavior. The time sequence factor is considered for annealing based on the scoring mechanism, and the priority of the calculation result is sorted to ensure the diversity of the recommendation result.

[0206] In the embodiment of the disclosure, the proposed "a collaborative filtering method and system based on time sequence priority in video scene" is realized in the massive big data scene, so a complete recommendation engine process is needed to better adapt to the algorithm, and each function module of the engine part is also the protection point of the proposal

[0207] In the embodiments of the present disclosure, the collaborative filtering calculation granularity reaches the label attribute level of the video, compared with the traditional CF recommendation algorithm which only reaches the commodity level, and the present application can fully mine data and improve the data operation value.

[0208] The embodiments of the present disclosure design a big data engine processing system which is consistent with the present application; the data calculation granularity reaches the label level in the collaborative filtering scene, and the calculation is more accurate; a scoring method and a priority method based on time sequence attenuation annealing are designed.

[0209] In the embodiments of the present disclosure, in combination with Figure 9 As shown in the figure, a video recommendation method is provided, and the method comprises:

[0210] Step S201, obtaining user features of a first user, video features, and video behavior features of the first user on videos, and generating video behavior features of the first user with time sequence and video type labels;

[0211] Step S202, determining a video recommendation sequence to be recommended to the first user by a recommendation algorithm according to the video behavior features of the first user with time sequence and video type labels;

[0212] Step S203, recommending videos to the first user according to the video recommendation sequence to be recommended to the first user.

[0213] In the embodiments of the present disclosure, in combination with Figure 10 As shown in the figure, the step S201, obtaining user features of a first user, video features, and video behavior features of the first user on videos, and generating video behavior features of the first user with time sequence and video type labels, comprises:

[0214] Step S2011, collecting user features of the first user, video features, and video behavior features of the first user on videos;

[0215] Step S2012, generating video behavior features of the first user with time sequence and video type labels according to the viewing time of the first user and the user features of the first user, the video features, and the video behavior features of the first user on videos;

[0216] Step S2013, storing the video behavior features of the first user with time sequence and video type labels and the video features.

[0217] In the embodiments of the present disclosure, in combination with Figure 11As shown, the step S202, according to the video behavior features of the first user with time sequence and video type tags, determining a video recommendation sequence to be recommended to the first user by a recommendation algorithm, including:

[0218] Step S2021, generating a video behavior score sequence with time sequence of the first user according to the video behavior features of the first user with time sequence and video type tags and video features;

[0219] Step S2022, determining a video type tag total score of the first user watching videos according to the video behavior score sequence with time sequence of the first user by an annealing algorithm;

[0220] Step S2023, determining a second user as a target second user from a plurality of second users according to the video type tag total score and the similarity of the first user satisfying a preset condition by a normalization algorithm;

[0221] Step S2024, determining a video recommendation sequence to be recommended to the first user by a priority algorithm and the video type tag total score and the set of videos watched by the target second user.

[0222] In the embodiments of the present disclosure, the video behavior features of the first user with time sequence and video type tags are determined according to the video behavior features of the first user with time sequence and video type tags. Figure 12 As shown, the method further includes:

[0223] Step S204, storing the video recommendation sequence to be recommended to the first user;

[0224] Step S205, generating a video recommendation configuration parameter of the video recommendation sequence recommended to the first user.

[0225] In the embodiments of the present disclosure, the video behavior features of the first user with time sequence and video type tags are determined according to the video behavior features of the first user with time sequence and video type tags. Figure 13 As shown, the step S2022, determining a video type tag total score of the first user watching videos according to the video behavior score sequence with time sequence of the first user by an annealing algorithm, includes:

[0226] Step S20221, determining an index of weight of each video type tag score of the same tag according to the time sequence of the first user watching a plurality of videos with the same tag before a preset time; wherein the index of weight is inversely proportional to the time sequence, and the weight is less than 1;

[0227] Step S20222, obtaining a sum of the product of the value of the index power of the weight of a plurality of video type tag scores of the same tag and the corresponding video type tag score according to the product of the value of the index power of the weight of each video type tag score of the same tag and the corresponding video type tag score;

[0228] Step S20223, obtaining a total score of the video type label of the video watched by the first user according to the sum of the products.

[0229] In the embodiments of the present disclosure, the step S2023 includes Figure 14 As shown in the step S2023, the step S2023 includes:

[0230] Step S20231, determining a ratio between a total score of the video type label of the video watched by the first user under any same label and a sum of total scores of the video type label of the videos watched by the first user under multiple different labels,

[0231] Step S20232, determining a video watching preference of the first user under each label;

[0232] Step S20233, determining multiple second users similar to the first user according to the video watching preference of the first user under each label;

[0233] Step S20234, determining a second user similar to the first user as a target second user according to the multiple second users similar to the first user.

[0234] In the embodiments of the present disclosure, the step S2024 includes

[0235] The preset condition includes:

[0236] The similarity is greater than a preset similarity.

[0237] Or,

[0238] The second users are sorted from high to low according to the similarity, and the second users in the first N are determined as the target second users, where the N is a positive integer.

[0239] In the embodiments of the present disclosure, the step S2024 includes Figure 15 As shown in the step S2024, the step S2024 includes:

[0240] Step S20241, determining a priority recommendation probability according to the score of each video type label;

[0241] Step S20242, determining a video recommendation priority order for the first user from the set of videos watched by the target second user according to the priority recommendation probability;

[0242] In step S20243, a video recommendation sequence to be recommended to the first user is generated according to the video recommendation priority order recommended to the first user.

[0243] In the embodiments of the present disclosure, an electronic device is provided, which comprises:

[0244] a processor;

[0245] a memory for storing processor-executable instructions;

[0246] When the processor is used to run the computer service, the steps in the video recommendation method described above are implemented.

[0247] Those skilled in the art can understand that all or part of the steps of the above-mentioned method embodiments can be completed by program instruction-related hardware, and the foregoing program can be stored in a computer-readable storage medium. When the program is executed, the steps of the above-mentioned method embodiments are executed; and the foregoing storage medium includes: a mobile storage device, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, and various media that can store program codes.

[0248] In the embodiments of the present disclosure, a storage medium is provided, and computer-executable instructions are stored in the storage medium. When the computer-executable instructions are executed by a processor, the steps in the feedback method described above are implemented.

[0249] Alternatively, the integrated units in the embodiments of the present disclosure, if realized in the form of software function modules and sold or used as independent products, can also be stored in a computer-readable storage medium. Based on this understanding, the technical solutions of the embodiments of the present disclosure can be embodied in the form of software products, and the computer software products are stored in a storage medium, including a plurality of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the methods described in the embodiments of the present disclosure. The foregoing storage medium includes: a mobile storage device, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, and various media that can store program codes.

[0250] The above merely provides the specific implementation of the present disclosure, but the protection scope of the present disclosure is not limited thereto, any person skilled in the art can easily think of the changes or replacements within the technical range disclosed by the present disclosure, which should be covered within the protection scope of the present disclosure. Therefore, the protection scope of the present disclosure should be subject to the protection scope of the claims.

Claims

1. A video recommendation system, characterized by, The system comprises: a data collection computing module, configured to acquire user features of a first user, video features, and video behavior features of the first user on videos, and generate video behavior features of the first user with time sequence and video type labels; a data recall computing module, configured to determine a video recommendation sequence to be recommended to the first user according to the video behavior features of the first user with time sequence and video type labels through a recommendation algorithm; a recommendation module, configured to recommend videos to the first user according to the video recommendation sequence to be recommended to the first user; the data recall computing module comprises: a first recall computing unit, configured to generate a video behavior score sequence of the first user with time sequence according to the video behavior features of the first user with time sequence and video type labels and the video features; a second recall computing unit, configured to determine a total video type label score of videos watched by the first user according to the video behavior score sequence of the first user with time sequence through an annealing algorithm; a third recall computing unit, configured to determine a second user that meets a preset condition in similarity with the first user as a target second user from a plurality of second users according to the total video type label score through a normalization algorithm; a fourth recall computing unit, configured to determine the video recommendation sequence to be recommended to the first user according to the total video type label score, a set of videos watched by the target second user, and a priority algorithm; the second recall computing unit is specifically configured to: call the annealing algorithm; the annealing algorithm is specifically configured to: determine an index of a weight of each video type label score of a plurality of videos with the same label according to a time sequence in which the first user watched the plurality of videos with the same label before a preset time; wherein the index of the weight is inversely proportional to the time sequence, and the weight is less than 1; obtain a sum of products of values of the index of the weight raised to a power and corresponding video type label scores according to the products; obtain the total video type label score of the videos watched by the first user according to the sum of the products.

2. The video recommendation system of claim 1, wherein, the data collection computing module specifically comprises: a collection unit, configured to collect the user features of the first user, the video features, and the video behavior features of the first user on the videos; an aggregation unit, configured to generate the video behavior features of the first user with time sequence and video type labels according to a watching time of the first user and the user features of the first user, the video features, and the video behavior features of the first user on the videos; a storage unit, configured to store the video behavior features of the first user with time sequence and video type labels and the video features. 3.The video recommendation system of claim 1, wherein, the recommendation module comprises: a storage unit, configured to store the video recommendation sequence to be recommended to the first user; a parameter configuration unit, configured to generate video recommendation configuration parameters of the video recommendation sequence recommended to the first user.

4. The video recommendation system of claim 1, wherein, the third recall computing unit is specifically configured to: calling a normalization algorithm, the normalization algorithm, specifically for: determining the ratio of the sum between the video type tag total score of any same label and the video type tag total score of multiple different labels watched by the first user according to the video type tag total score of any same label watched by the first user; determining the video watching preference of the first user under each label according to the ratio of the sum between the video type tag total score of any same label and the video type tag total score of multiple different labels watched by the first user; determining multiple second users similar to the first user according to the video watching preference of the first user under each label; determining a second user with a similarity to the first user satisfying a preset condition as a target second user according to multiple second users with a similarity to the first user.

5. The video recommendation system according to claim 4, wherein, the preset condition comprises: a similarity greater than a preset similarity; or, the second user is in the top N according to the similarity from high to low, wherein the N is a positive integer.

6. The video recommendation system of claim 1, wherein, the fourth recall calculation unit is specifically configured to: call a priority algorithm; the priority algorithm is specifically for: determining a priority recommendation probability according to the score of each video type label; determining a video recommendation priority order for the first user from the video set watched by the target second user according to the priority recommendation probability; generating a video recommendation sequence to be recommended to the first user according to the video recommendation priority order for the first user.

7. A video recommendation method, characterized by, The method comprises: obtaining the user characteristics of the first user, the video characteristics, and the video behavior characteristics of the first user to the video, and generating the video behavior characteristics of the first user with time sequence and video type label; determining a video recommendation sequence to be recommended to the first user through a recommendation algorithm according to the video behavior characteristics of the first user with time sequence and video type label; recommending a video to the first user according to the video recommendation sequence to be recommended to the first user; determining a video recommendation sequence to be recommended to the first user through a recommendation algorithm according to the video behavior characteristics of the first user with time sequence and video type label, comprising: generating a video behavior score sequence with time sequence of the first user according to the video behavior characteristics of the first user with time sequence and video type label and the video characteristics; determining a video type label total score of the first user watching a video through an annealing algorithm according to the video behavior score sequence with time sequence of the first user; determining a second user with a similarity to the first user satisfying a preset condition as a target second user through a normalization algorithm according to the video type label total score from multiple second users; determining a video recommendation sequence to be recommended to the first user through a priority algorithm and the video type label total score and the video set watched by the target second user. The method comprises the following steps: According to the time sequence of the first user watching a plurality of videos with the same label before the preset time, an index of a weight of each video type label score of the same label is determined; wherein the index of the weight is inversely proportional to the time sequence, and the weight is less than 1; a product of a value of the index power of the weight of each video type label score of the same label and the corresponding video type label score is obtained; a sum of the products is obtained according to the sum of the products; and a video type label total score of the first user watching the video is obtained according to the sum of the products.

8. A non-transitory computer-readable storage medium, comprising: The computer readable storage medium stores computer executable instructions, and the computer executable instructions are executed by the processor to realize the video recommendation method provided in claim 7.

Citation Information

Patent Citations

  • User recommendation method and apparatus based on simulated annealing algorithm

    CN108647724A

  • Information recommendation method and device, equipment and medium

    CN115186200A