CN109657138B - Video recommendation method and device, electronic equipment and storage medium - Google Patents

Video recommendation method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN109657138B
CN109657138B CN201811507325.3A CN201811507325A CN109657138B CN 109657138 B CN109657138 B CN 109657138B CN 201811507325 A CN201811507325 A CN 201811507325A CN 109657138 B CN109657138 B CN 109657138B
Authority
CN
China
Prior art keywords
video
user
preference value
preference
action
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.)
Active
Application number
CN201811507325.3A
Other languages
Chinese (zh)
Other versions
CN109657138A (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.)
SHENZHEN DAYU WUXIAN TECHNOLOGY Co.,Ltd.
Original Assignee
Shenzhen Dayu Wuxian Technology 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 Shenzhen Dayu Wuxian Technology Co ltd filed Critical Shenzhen Dayu Wuxian Technology Co ltd
Priority to CN201811507325.3A priority Critical patent/CN109657138B/en
Publication of CN109657138A publication Critical patent/CN109657138A/en
Application granted granted Critical
Publication of CN109657138B publication Critical patent/CN109657138B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention relates to a video recommendation method and device, electronic equipment and a storage medium, and belongs to the field of internet technologies. The video recommendation method comprises the following steps: determining a plurality of video tags according to a consumption log of a user, wherein the video tags are used for representing the category of videos; calculating a preference value of the user for each of the plurality of video tags; and determining a recommended video according to the preference value of each video tag, and recommending the recommended video to the client. In the embodiment of the application, the video tags corresponding to the videos consumed by the user are determined through the consumption log of the user, the preference value of the user for each video tag is calculated, and then the recommended videos are determined according to the calculation result, namely the videos recommended to the user according to the preference of the user, so that the videos interested by the user can be recommended to the user.

Description

Video recommendation method and device, electronic equipment and storage medium
Technical Field
The invention belongs to the field of internet technologies, and particularly relates to a video recommendation method and device, electronic equipment and a storage medium.
Background
With the development of internet technology, channels for people to obtain information are more and more, various platforms provide information including articles, albums, videos and the like for users, and for the platforms, how to push information in which users are interested to the users is the problem that the platforms are the first to face. Information recommended to a user by a platform is often determined by various algorithms, the algorithms can accurately determine information favored by different users only through training and testing of a large amount of data, and because the data amount required by the training of the algorithms is huge, the data of a whole day is often trained and tested at a time interval of one day, the information recommendation performed by the method cannot timely feed back the current operation behavior of the user, the recommended content interesting to the user can be calculated often until the next day, and the recommendation effect is not ideal.
Disclosure of Invention
In view of the above, the present invention provides a video recommendation method, apparatus, electronic device and storage medium to effectively solve the above problem.
The embodiment of the invention is realized by the following steps:
in a first aspect, an embodiment of the present invention provides a video recommendation method, including: determining a plurality of video tags according to a consumption log of a user, wherein the video tags are used for representing the category of videos; calculating a preference value of the user for each of the plurality of video tags; and determining a recommended video according to the preference value of each video tag, and recommending the recommended video to the client.
With reference to one possible implementation manner of the first aspect, calculating the preference value of the user for each video tag in the plurality of video tags includes: obtaining the last calculated historical preference value of the user on each video tag in the plurality of video tags; acquiring a time interval from a last calculation time point to a current time point, and determining a time attenuation coefficient according to the time interval; calculating all behavioral weights of the user for each of the plurality of video tags; determining a preference value of the user for each of the plurality of video tags according to the historical preference value, the time decay factor, and the all behavioral weights.
With reference to one possible implementation manner of the first aspect, determining the preference value of the user for each video tag in the plurality of video tags according to the historical preference value, the time attenuation coefficient, and the all behavior weights includes: determining a preference value of the user for each of the plurality of video tags according to the historical preference value, the time decay coefficient and the all-behavior weight, and a preference formula P (Ui, Tj) ═ P (Ui, Tj)' TimeDecay + SumAllAction (ActionWeight ItemWeight ItemTagWeiight UserTagWeiight); wherein, P (Ui, Tj) represents the preference value of the user i to the video label j; p (Ui, Tj)' represents the historical preference value of the user i to the video tag j calculated last time, and the value is zero if the historical preference value is calculated for the first time; TimeDecay represents the time attenuation coefficient exp (-deltaSeconds/decapeyfactor), deltaSeconds represents the time interval from the last time point of calculation to the current time point, and the unit is second; decapeyfactor is used to control the decay rate, with decapeyfactor being 800000 for positive preference and 100000 for negative preference; SumAllAction is all behavior weights containing the video label j, namely the sum of five behavior weights including clicking, playing, downloading, exposing and disliking; ActionWeight is the individual behavior weights, for forward preferences, the individual behavior weights are respectively: click action is 1, play action is 2, download action is 5, exposure action is-0.1, dislike action is-5, and for negative preference, the individual action weights are: the click action is-1, the play action is-2, the download action is-5, the exposure action is 1, and the dislike action is 5; ItemWeight represents the weight of video tag j, ItemWeight is log (ActionCount/ItemActionCount), wherein ActionCount represents the total number of all users for a certain behavior of video tag j, and ItemActionCount represents the total number of users i for video tag j under the behavior; ItemTagWeight represents the weight of Tj in Item, and is a default value; usertaggweight denotes the weight of Tj in the user preference, usertaggweight ═ log (number of times all video tags have been counted historically/number of times video tag j has been counted cumulatively).
With reference to one possible implementation manner of the first aspect, the consumption log is a search log; determining a plurality of video tags according to a consumption log of a user, comprising: performing word segmentation processing on the search words in the search log by taking the words as units to obtain a plurality of words; performing deduplication processing on the plurality of words; arranging and combining the multiple de-duplicated characters to obtain multiple words; and matching each word in the plurality of words with a video library tag respectively, and taking the word hit by the video library tag as the video tag.
With reference to one possible implementation manner of the first aspect, determining a recommended video according to the preference value of each video tag includes: sequencing the preference value of each video label by using a trained gradient lifting decision tree model to obtain a sequencing result; and determining the recommended video according to the sorting result.
In a second aspect, an embodiment of the present application further provides a video recommendation apparatus, including: the system comprises a first determining module, a second determining module and a display module, wherein the first determining module is used for determining a plurality of video tags according to a consumption log of a user, and the video tags are used for representing the category of videos; a calculation module for calculating a preference value of the user for each of the plurality of video tags; and the second determining module is used for determining recommended videos according to the preference value of each video tag and recommending the recommended videos to the client.
With reference to the second aspect, in a possible implementation manner, the calculating module is further configured to obtain a last calculated historical preference value of the user for each video tag in the plurality of video tags; acquiring a time interval from a last calculation time point to a current time point, and determining a time attenuation coefficient according to the time interval; calculating all behavioral weights of the user for each of the plurality of video tags; determining a preference value of the user for each of the plurality of video tags according to the historical preference value, the time decay factor, and the all behavioral weights.
In combination with a possible implementation manner of the second aspect, the calculation module is further configured to determine a preference value of the user for each of the plurality of video tags according to the historical preference value, the time attenuation coefficient, and the all behavior weights, and a preference formula P (Ui, Tj)' TimeDecay + SumAllAction (ActionWeight itemwweight userweight); wherein, P (Ui, Tj) represents the preference value of the user i to the video label j; p (Ui, Tj)' represents the historical preference value of the user i to the video tag j calculated last time, and the value is zero if the historical preference value is calculated for the first time; TimeDecay represents the time attenuation coefficient exp (-deltaSeconds/decapeyfactor), deltaSeconds represents the time interval from the last time point of calculation to the current time point, and the unit is second; decapeyfactor is used to control the decay rate, with decapeyfactor being 800000 for positive preference and 100000 for negative preference; SumAllAction is all behavior weights containing the video label j, namely the sum of five behavior weights including clicking, playing, downloading, exposing and disliking; ActionWeight is the individual behavior weights, for forward preferences, the individual behavior weights are respectively: click action is 1, play action is 2, download action is 5, exposure action is-0.1, dislike action is-5, and for negative preference, the individual action weights are: the click action is-1, the play action is-2, the download action is-5, the exposure action is 1, and the dislike action is 5; ItemWeight represents the weight of video tag j, wherein ActionCount represents the total number of all users for a certain behavior of video tag j, and ItemActionCount represents the total number of users i for video tag j under the behavior; ItemTagWeight represents the weight of Tj in Item, and is a default value; usertaggweight denotes the weight of Tj in the user preference, usertaggweight ═ log (number of times all video tags have been counted historically/number of times video tag j has been counted cumulatively).
With reference to a possible implementation manner of the second aspect, the consumption log is a search log, and the first determining module is further configured to perform word segmentation processing on search words in the search log by taking a word as a unit to obtain a plurality of words; performing deduplication processing on the plurality of words; arranging and combining the multiple de-duplicated characters to obtain multiple words; and matching each word in the plurality of words with a video library tag respectively, and taking the word hit by the video library tag as the video tag.
With reference to a possible implementation manner of the second aspect, the second determining module is further configured to rank the preference value of each video tag by using a trained gradient boosting decision tree model to obtain a ranking result; and determining the recommended video according to the sorting result.
In a third aspect, an embodiment of the present application further provides an electronic device, including: a memory and a processor, the memory and the processor connected; the memory is used for storing programs; the processor is configured to invoke a program stored in the memory to perform the first aspect and/or the method provided in connection with one possible implementation manner of the first aspect.
In a fourth aspect, this application further provides a storage medium including a computer program, where the computer program is executed by a processor to perform the method of the first aspect and/or the method provided in connection with one possible implementation manner of the first aspect.
The video recommendation method provided by the embodiment of the invention comprises the following steps: determining a plurality of video tags according to a consumption log of a user, wherein the video tags are used for representing the category of videos; calculating a preference value of the user for each of the plurality of video tags; and determining a recommended video according to the preference value of each video tag, and recommending the recommended video to the client. In the embodiment of the application, the video tags corresponding to the videos consumed by the user are determined through the consumption log of the user, the preference value of the user for each video tag is calculated, and then the recommended videos are determined according to the calculation result, namely the videos recommended to the user according to the preference of the user, so that the videos interested by the user can be recommended to the user.
Additional features and advantages of the invention will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by the practice of the embodiments of the invention. The objectives and other advantages of the invention will be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings needed in the embodiments will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings without creative efforts. The above and other objects, features and advantages of the present invention will become more apparent from the accompanying drawings. Like reference numerals refer to like parts throughout the drawings. The drawings are not necessarily to scale, emphasis instead being placed upon illustrating the principles of the invention.
Fig. 1 shows a schematic structural diagram of an electronic device according to an embodiment of the present invention.
Fig. 2 is a flowchart illustrating a video recommendation method according to an embodiment of the present invention.
Fig. 3 shows a schematic flowchart of step S102 in fig. 2 according to an embodiment of the present invention.
Fig. 4 is a schematic block diagram illustrating a video recommendation apparatus according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are some, but not all, embodiments of the present invention. The components of embodiments of the present invention generally described and illustrated in the figures herein may be arranged and designed in a wide variety of different configurations.
Thus, the following detailed description of the embodiments of the present invention, presented in the figures, is not intended to limit the scope of the invention, as claimed, but is merely representative of selected embodiments of the invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
It should be noted that: like reference numbers and letters refer to like items in the following figures, and thus, once an item is defined in one figure, it need not be further defined and explained in subsequent figures.
In the description of the present invention, it should be noted that the terms "first", "second", "third", and the like are used only for distinguishing the description, and are not intended to indicate or imply relative importance. Further, the term "and/or" in the present application is only one kind of association relationship describing the associated object, and means that three kinds of relationships may exist, for example, a and/or B may mean: a exists alone, A and B exist simultaneously, and B exists alone.
As shown in fig. 1, fig. 1 is a block diagram illustrating a structure of an electronic device 100 according to an embodiment of the present invention. The electronic device 100 includes: a video recommender 110, a memory 120, a memory controller 130, and a processor 140. In the embodiment of the present invention, the electronic device 100 may be, but is not limited to, a web server, a database server, a cloud server, and the like.
The memory 120, the memory controller 130, and the processor 140 are electrically connected to each other directly or indirectly to realize data transmission or interaction. For example, the components may be electrically connected to each other via one or more communication buses or signal lines. The video recommendation apparatus 110 includes at least one software function module which can be stored in the memory 120 in the form of software or firmware (firmware) or solidified in an Operating System (OS) of the electronic device 100. The processor 140 is configured to execute executable modules stored in the memory 120, such as software functional modules or computer programs included in the video recommendation device 110.
The Memory 120 may be, but is not limited to, a Random Access Memory (RAM), a Read Only Memory (ROM), a Programmable Read-Only Memory (PROM), an Erasable Read-Only Memory (EPROM), an electrically Erasable Read-Only Memory (EEPROM), and the like. The memory 120 is configured to store a program, and the processor 140 executes the program after receiving an execution instruction, and a method executed by the electronic device 100 defined by a flow disclosed in any embodiment of the invention described later may be applied to the processor 140, or implemented by the processor 140.
The processor 140 may be an integrated circuit chip having signal processing capabilities. The Processor may be a general-purpose Processor, including a Central Processing Unit (CPU), a Network Processor (NP), and the like; but may also be a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic device, discrete hardware components. The various methods, steps and logic blocks disclosed in the embodiments of the present invention may be implemented or performed. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
Referring to fig. 2, steps included in a video recommendation method applied to the electronic device 100 according to an embodiment of the present invention will be described with reference to fig. 2.
Step S101: and determining a plurality of video tags according to the consumption log of the user, wherein the video tags are used for representing the category of the video.
The method comprises the steps of obtaining a consumption log of a user (such as a user i) in a preset time period (such as the past month, 15 days, 7 days and the like), and determining a plurality of video tags according to the consumption log, namely determining corresponding video tags according to a plurality of videos consumed by the user. Wherein the video tag is used to indicate the category of the video. It should be noted that each video has at least one video tag, the video tags are divided in advance according to the content of the video, different video tags indicate different types, and the process is somewhat similar to the video classification.
Wherein the consumption log comprises: search logs, play logs, click logs, download logs, exposure logs, and dislike logs. When the consumption logs are play logs, click logs, download logs, exposure logs and dislike logs, the videos correspond to each other, and each video is provided with a corresponding video tag in advance, so that when the consumption logs are play logs, click logs, download logs, exposure logs and dislike logs, the corresponding video tags can be directly determined. However, when the consumption log is a search log, the corresponding video tag cannot be directly determined, at this time, word segmentation processing may be performed on a search word in the search log by taking the word as a unit to obtain a plurality of words, then, de-duplication processing may be performed on the plurality of words obtained after the word segmentation processing, then, the plurality of words after de-duplication may be arranged and combined to obtain a plurality of words, and finally, each word in the plurality of words obtained by the arrangement and combination may be respectively matched with the video library tag, and the word hit with the video library tag may be used as the video tag. In this way, it can be determined that the video corresponding to the search term is labeled. For ease of understanding, it is assumed for example that the user searches 3 times (the real data may be far more than this) within a preset time period, and the search terms are as follows: one word is played (4 words), i is not a pharmacograph (5 words) and the next words (5 words), after word segmentation processing, a total of 14 words are included, after de-duplication processing, 13 words remain, wherein one repeated word of 'i' is removed, then the remaining 13 words are arranged and combined, for example, 13 types are included in a word combination mode, 13 types are included in a two-word combination mode, 13 types are included in a three-word combination mode, 13 types are included in a 12-1716 … …, finally, each word in the plurality of words obtained through arrangement and combination is respectively matched with a video library label, and the word hit with the video library label is used as a video label.
Step S102: calculating a preference value of the user for each of the plurality of video tags.
After a plurality of video tags are determined according to a consumption log of a user (such as a user i), a preference value of the user to each video tag in the plurality of video tags is calculated.
As an alternative, the number of the video tags may be counted, and then divided by the sum of the counted numbers of the video tags to determine the preference value. For example, 5 video tags, A, B, C, D and E respectively, are determined from the consumption log of the user (e.g., user i), and assuming that the number of a statistics is 5, the number of B statistics is 7, the number of C statistics is 10, the number of D statistics is 2, and the number of E statistics is 3, the preference value of the user for a is 5/(5+7+10+2+3), and similarly, the preference value of the user for B is 7/(5+7+10+2+3), and so on, the preference value of the user for each video tag can be obtained.
As another alternative, the process may be described with reference to the steps included in fig. 3.
Step S201: and acquiring the last calculated historical preference value of the user on each video tag in the plurality of video tags.
Since the historical preference value of each video tag is calculated before, the system records the historical preference value and only needs to directly acquire the historical preference value. Wherein if a video tag is calculated for the first time, the historical preference value is defaulted to zero.
Step S202: and acquiring the time interval from the last calculation time point to the current time point, and determining a time attenuation coefficient according to the time interval.
And acquiring a time interval from the last time point to the current time point, and determining a time attenuation coefficient according to the time interval, wherein the unit of the time interval is second. For example, if the time interval from the last time point to the current time point is 15 days, the corresponding second is 15 × 24 × 60 — 1296000 seconds, and the time attenuation coefficient determined according to the time interval may be determined according to the time attenuation function formula TimeDecay ═ exp (-deltasemiconductors/decapectors). Where deltaSeconds is the number of seconds from the last time the current time was calculated, such as 1296000 seconds, decapeyfactor is used to control the decay rate, 800000 for positive preference and 100000 for negative preference.
It should be noted that the positive preference and the negative preference indicate the types of the video tags, that is, if the video tags are classified according to a large category, the video tags include two categories, that is, the positive preference and the negative preference, where each category corresponds to a plurality of sub-categories, such as a first-class category, a second-class category, a content tag, an lda (late Dirichlet allocation) tag, and the like. If the video tag belongs to the positive preference, the decapayfactor is 800000, and if the video tag belongs to the negative preference, the decapayfactor is 100000.
Step S203: calculating all behavioral weights of the user for each of the plurality of video tags.
And respectively calculating all behavior weights of the user to each video label according to each video label, namely the weight sum of five behaviors of clicking, playing, downloading, exposing and disliking. Taking the calculation of all behavior weights of the user on the video tag j as an example, the weights of the video tag j under 5 behaviors of clicking, playing, downloading, exposing and disliking are calculated respectively, and then the 5 behavior weights are summed up, so that all behavior weights of the user on the video tag j can be calculated. For ease of understanding, the following formula is given as an example: SumAllAction (ActionWeight ItemWeight ItemTagWeiight UserTagWeiight). Wherein, the SumAllAction is the weight of all behaviors containing the video label j, namely the sum of the weights of five behaviors including clicking, playing, downloading, exposing and disliking; ActionWeight is the individual behavior weights, for forward preferences, the individual behavior weights are respectively: click action is 1, play action is 2, download action is 5, exposure action is-0.1, dislike action is-5, and for negative preference, the individual action weights are: the click action is-1, the play action is-2, the download action is-5, the exposure action is 1, and the dislike action is 5. Itemwight represents the weight of video tag j, itemwight is log (ActionCount/itemwactoncount), where ActionCount represents the total number of all users for a certain behavior of video tag j, and itemwactoncount represents the total number of users i for video tag j under that behavior. For example, taking click behavior as an example, the ActionCount represents the total number of click behaviors of all users for the video tag j, and is assumed to include 100 users (where, the user i is included in the 100 users), and the ActionCount is the sum of the clicks of the 100 users for the video tag j, and is assumed to be 10000. ItemActionCount represents the total number of user i under this behavior (in this case, click behavior) for video tag j, assumed to be 100. For another example, taking the play behavior as an example, the ActionCount represents the total number of play behaviors of all users for the video tag j, and if 100 users are included (where, the user i is included in the 100 users), the ActionCount is the sum of the play numbers of the 100 users for the video tag j, and is assumed to be 80000. ItemActionCount represents the total number of user i under this behavior (now the play behavior) for video tag j, assumed to be 500. ItemTagWeight indicates the weight of Tj in Item, and is a default value, usually 1, depending on the actual setting. Usertaggweight denotes the weight of Tj in the user preference, usertaggweight ═ log (number of times all video tags have been counted historically/number of times video tag j has been counted cumulatively). For example, also taking the above 5 video tags (A, B, C, D and E) as an example, the accumulated number of times of history calculation of all the video tags is represented as the sum of the accumulated number of times of history calculation of A, B, C, D and E, respectively. If the video tag j is a, accumulating the counted number of times by the video tag j, and accumulating the counted number of times by the video tag j for the history of a.
Step S204: determining a preference value of the user for each of the plurality of video tags according to the historical preference value, the time decay factor, and the all behavioral weights.
After the historical preference value, the time attenuation coefficient and all the behavior weights of all the video tags are obtained, the preference value of the user on each video tag in the plurality of video tags can be determined according to the obtained historical preference value, the obtained time attenuation coefficient and all the behavior weights.
As an alternative, the historical preference value of each video tag is multiplied by the time attenuation coefficient plus all the behavior weights to be the preference value of the video tag. The preference values of different calculation formulas are different, for example, the historical preference value of each video tag plus the time attenuation coefficient multiplied by all the behavior weights is the preference value of the video tag.
For convenience of understanding, the history preference value multiplied by a time attenuation coefficient and added with all the behavior weights are taken as an example of a preference value of a certain video tag, and the preference value of the user on each of the plurality of video tags is determined according to the history preference value, the time attenuation coefficient, all the behavior weights and a preference formula P (Ui, Tj) ═ P (Ui, Tj)' TimeDecay + sumalleAction (action weight Itemweight ItemTagweight) UserTagweight. Wherein, P (Ui, Tj) represents the preference value of the user i to the video label j; p (Ui, Tj)' represents the historical preference value of the user i to the video tag j calculated last time, and the value is zero if the historical preference value is calculated for the first time; TimeDecay represents the time attenuation coefficient exp (-deltaSeconds/decapeyfactor), deltaSeconds represents the time interval from the last time point of calculation to the current time point, and the unit is second; decapeyfactor is used to control the decay rate, with decapeyfactor being 800000 for positive preference and 100000 for negative preference; SumAllAction is all behavior weights containing the video label j, namely the sum of five behavior weights including clicking, playing, downloading, exposing and disliking; ActionWeight is the individual behavior weights, for forward preferences, the individual behavior weights are respectively: click action is 1, play action is 2, download action is 5, exposure action is-0.1, dislike action is-5, and for negative preference, the individual action weights are: the click action is-1, the play action is-2, the download action is-5, the exposure action is 1, and the dislike action is 5; ItemWeight represents the weight of video tag j, ItemWeight is log (ActionCount/ItemActionCount), wherein ActionCount represents the total number of all users for a certain behavior of video tag j, and ItemActionCount represents the total number of users i for video tag j under the behavior; ItemTagWeight represents the weight of Tj in Item, and is a default value; usertaggweight denotes the weight of Tj in the user preference, usertaggweight ═ log (number of times all video tags have been counted historically/number of times video tag j has been counted cumulatively).
Step S103: and determining a recommended video according to the preference value of each video tag, and recommending the recommended video to the client.
After the preference value of the user for each video tag is calculated, the recommended video is determined according to the calculated preference value of each video tag and recommended to the client. Since the videos are recommended to the user according to the preference of the user, the videos which are interested by the user can be recommended to the user. Optionally, the preference values of each video tag may be ranked by using a trained Gradient-enhanced Decision Tree (GBDT) model to obtain a ranking result, and the recommended video is determined according to the ranking result. For example, after the sorting result is obtained, the result ranked at the top is directly selected as the recommended video, and the content ranked at the top three, for example, is used as the final recommended content. In addition to considering the above-mentioned preference characteristics of the user (i.e., the preference value of the user to each video tag), the GBDT gives a higher weight to the play samples with longer play time and higher video playing rate, so that the final ranking result can better reflect the preference of the user.
It should be noted that the gradient boosting decision tree model is trained in advance, and includes three processes, i.e., a first process and a training log; secondly, sample feature extraction, thirdly, output result optimization, wherein the process is different from the existing establishment process of the gradient lifting decision tree model in a great way, and different from the existing establishment process of the gradient lifting decision tree model, the training data are different, so that the application scenes are different.
In addition to considering the above-mentioned preference characteristics of the user (i.e., the preference value of the user to each video tag), the output result is optimized, and by giving a higher weight to the play samples with longer play time and higher video playing completion rate, the final ranking result can better reflect the preference of the user.
That is to say, the calculated preference value of each video tag is combined with the corresponding weight, and then the videos are ranked, so that compared with the recommended videos determined only based on the preference value of each video tag, the recommended videos determined by the multi-objective weight optimization method can better reflect the interest of the user, and further the finally recommended videos can attract the user. It should be noted that the above-mentioned examples are given for the convenience of understanding, and are only examples, and therefore, the present application is not limited thereto.
An embodiment of the present invention further provides a video recommendation apparatus 110, as shown in fig. 4. The video recommendation apparatus 110 includes: a first determination module 111, a calculation module 112, and a second determination module 113.
The first determining module 111 is configured to determine a plurality of video tags according to the consumption log of the user, where the video tags are used to indicate categories of videos.
A calculation module 112 for calculating a preference value of the user for each of the plurality of video tags,
and the second determining module 113 is configured to determine a recommended video according to the preference value of each video tag, and recommend the recommended video to the client.
It should be noted that, in the present specification, the embodiments are all described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments may be referred to each other.
The video recommendation apparatus 110 according to the embodiment of the present invention has the same implementation principle and technical effect as the foregoing method embodiments, and for brief description, reference may be made to the corresponding contents in the foregoing method embodiments for the parts of the apparatus embodiments that are not mentioned.
An embodiment of the present invention further provides a non-volatile computer-readable storage medium, where the storage medium includes a computer program, and the computer program is executed by a processor to perform the method described above.
In the embodiments provided in the present application, it should be understood that the disclosed apparatus and method can be implemented in other ways. The apparatus embodiments described above are merely illustrative, and for example, the flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of apparatus, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
In addition, the functional modules in the embodiments of the present invention may be integrated together to form an independent part, or each module may exist separately, or two or more modules may be integrated to form an independent part.
The functions, if implemented in the form of software functional modules and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present invention may be embodied in the form of a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a notebook computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes. It is noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in a process, method, article, or apparatus that comprises the element.
The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention, and various modifications and changes may be made by those skilled in the art. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (6)

1. A method for video recommendation, comprising:
determining a plurality of video tags according to a consumption log of a user, wherein the video tags are used for representing the category of videos;
calculating a preference value of the user for each of the plurality of video tags;
determining a recommended video according to the preference value of each video tag, recommending the recommended video to a client,
wherein calculating the preference value of the user for each of the plurality of video tags comprises:
obtaining the last calculated historical preference value of the user on each video tag in the plurality of video tags;
acquiring a time interval from a last calculation time point to a current time point, and determining a time attenuation coefficient according to the time interval;
calculating all behavior weights of the user on each video label in the plurality of video labels, wherein all behavior weights of each video label are the sum of the weights of the video label under five behaviors of clicking, playing, downloading, exposing and disliking;
determining a preference value for each video tag of the plurality of video tags by the user based on the historical preference values, the temporal decay factor, and the all behavioral weights,
wherein determining the preference value of the user for each of the plurality of video tags according to the historical preference value, the time decay coefficient, and the all behavioral weights comprises:
determining a preference value of the user for each of the plurality of video tags based on the historical preference value, the time decay factor, and the all-behavior weights and a preference formula P (Ui, Tj) '-P (Ui, Tj)' TimeDecay + SumAllAction (Actionweight Itemweight ItemTagweight UserTagweight);
wherein, P (Ui, Tj) represents the preference value of the user i to the video label j; p (Ui, Tj)' represents the historical preference value of the user i to the video tag j calculated last time, and the value is zero if the historical preference value is calculated for the first time; TimeDecay represents the time attenuation coefficient exp (-deltaSeconds/decapeyfactor), deltaSeconds represents the time interval from the last time point of calculation to the current time point, and the unit is second; decapeyfactor is used to control the decay rate, with decapeyfactor being 800000 for positive preference and 100000 for negative preference; SumAllAction is all behavior weights containing the video label j, namely the sum of five behavior weights including clicking, playing, downloading, exposing and disliking; ActionWeight is the individual behavior weights, for forward preferences, the individual behavior weights are respectively: click action is 1, play action is 2, download action is 5, exposure action is-0.1, dislike action is-5, and for negative preference, the individual action weights are: the click action is-1, the play action is-2, the download action is-5, the exposure action is 1, and the dislike action is 5; ItemWeight represents the weight of video tag j, ItemWeight is log (ActionCount/ItemActionCount), wherein ActionCount represents the total number of all users for a certain behavior of video tag j, and ItemActionCount represents the total number of users i for video tag j under the behavior; ItemTagWeight represents the weight of Tj in Item, and is a default value; usertaggweight denotes the weight of Tj in the user preference, usertaggweight ═ log (number of times all video tags have been counted historically/number of times video tag j has been counted cumulatively).
2. The method of claim 1, wherein the consumption log is a search log; determining a plurality of video tags according to a consumption log of a user, comprising:
performing word segmentation processing on the search words in the search log by taking the words as units to obtain a plurality of words;
performing deduplication processing on the plurality of words;
arranging and combining the multiple de-duplicated characters to obtain multiple words;
and matching each word in the plurality of words with a video library tag respectively, and taking the word hit by the video library tag as the video tag.
3. The method of claim 1, wherein determining the recommended video according to the preference value of each video tag comprises:
sequencing the preference value of each video label by using a trained gradient lifting decision tree model to obtain a sequencing result;
and determining the recommended video according to the sorting result.
4. A video recommendation apparatus, comprising:
the system comprises a first determining module, a second determining module and a display module, wherein the first determining module is used for determining a plurality of video tags according to a consumption log of a user, and the video tags are used for representing the category of videos;
the calculation module is used for calculating the preference value of the user for each video tag in the plurality of video tags, and the calculation module is further used for acquiring the historical preference value of the user for each video tag in the plurality of video tags, which is calculated last time; acquiring a time interval from a last calculation time point to a current time point, and determining a time attenuation coefficient according to the time interval; calculating all behavioral weights of the user for each of the plurality of video tags; determining the preference value of the user for each video label in the plurality of video labels according to the historical preference value, the time attenuation coefficient and all the behavior weights, wherein all the behavior weights of each video label are the sum of the weights of the video label under five behaviors of clicking, playing, downloading, exposing and disliking;
a second determining module, configured to determine a recommended video according to the preference value of each video tag, and recommend the recommended video to the client,
wherein the calculation module is further configured to determine a preference value of the user for each of the plurality of video tags according to the historical preference value, the time decay coefficient, and all the behavior weights, and a preference formula P (Ui, Tj)', TimeDecay + sumailaction (ActionWeight, ItemWeight, ItemTagWeight, userttagweight);
wherein, P (Ui, Tj) represents the preference value of the user i to the video label j; p (Ui, Tj)' represents the historical preference value of the user i to the video tag j calculated last time, and the value is zero if the historical preference value is calculated for the first time; TimeDecay represents the time attenuation coefficient exp (-deltaSeconds/decapeyfactor), deltaSeconds represents the time interval from the last time point of calculation to the current time point, and the unit is second; decapeyfactor is used to control the decay rate, with decapeyfactor being 800000 for positive preference and 100000 for negative preference; SumAllAction is all behavior weights containing the video label j, namely the sum of five behavior weights including clicking, playing, downloading, exposing and disliking; ActionWeight is the individual behavior weights, for forward preferences, the individual behavior weights are respectively: click action is 1, play action is 2, download action is 5, exposure action is-0.1, dislike action is-5, and for negative preference, the individual action weights are: the click action is-1, the play action is-2, the download action is-5, the exposure action is 1, and the dislike action is 5; ItemWeight represents the weight of video tag j, ItemWeight is log (ActionCount/ItemActionCount), wherein ActionCount represents the total number of all users for a certain behavior of video tag j, and ItemActionCount represents the total number of users i for video tag j under the behavior; ItemTagWeight represents the weight of Tj in Item, and is a default value; usertaggweight denotes the weight of Tj in the user preference, usertaggweight ═ log (number of times all video tags have been counted historically/number of times video tag j has been counted cumulatively).
5. An electronic device, comprising: a memory and a processor, the memory and the processor connected;
the memory is used for storing programs;
the processor to invoke a program stored in the memory to perform the method of any of claims 1-3.
6. A storage medium, comprising a computer program which, when executed by a processor, performs the method of any one of claims 1-3.
CN201811507325.3A 2018-12-10 2018-12-10 Video recommendation method and device, electronic equipment and storage medium Active CN109657138B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811507325.3A CN109657138B (en) 2018-12-10 2018-12-10 Video recommendation method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811507325.3A CN109657138B (en) 2018-12-10 2018-12-10 Video recommendation method and device, electronic equipment and storage medium

Publications (2)

Publication Number Publication Date
CN109657138A CN109657138A (en) 2019-04-19
CN109657138B true CN109657138B (en) 2021-02-26

Family

ID=66113293

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811507325.3A Active CN109657138B (en) 2018-12-10 2018-12-10 Video recommendation method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN109657138B (en)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110245274A (en) * 2019-04-23 2019-09-17 五八有限公司 A kind of label temperature calculates method, apparatus, electronic equipment and storage medium
CN110321474B (en) * 2019-05-21 2022-01-11 北京奇艺世纪科技有限公司 Recommendation method and device based on search terms, terminal equipment and storage medium
CN110209843A (en) * 2019-05-31 2019-09-06 腾讯科技(深圳)有限公司 Multimedia resource playback method, device, equipment and storage medium
CN110287372B (en) * 2019-06-26 2021-06-01 广州市百果园信息技术有限公司 Label determining method for negative feedback, video recommending method and device thereof
CN110413881B (en) * 2019-07-11 2023-10-20 腾讯科技(深圳)有限公司 Method, device, network equipment and storage medium for identifying label accuracy
CN110619063A (en) * 2019-09-20 2019-12-27 北京字节跳动网络技术有限公司 Video pushing method and device based on video searching and electronic equipment
CN111125514B (en) * 2019-11-20 2023-08-22 泰康保险集团股份有限公司 Method, device, electronic equipment and storage medium for analyzing user behaviors
CN111159541B (en) * 2019-12-11 2023-08-25 微民保险代理有限公司 Method and device for determining account behavior preference
CN110929166B (en) * 2019-12-27 2023-10-20 咪咕文化科技有限公司 Content recommendation method, electronic equipment and storage medium
CN111209432A (en) * 2020-01-02 2020-05-29 北京字节跳动网络技术有限公司 Information acquisition method and device, electronic equipment and computer readable medium
CN113139083A (en) * 2020-01-19 2021-07-20 Tcl集团股份有限公司 Video recommendation method and device, terminal equipment and storage medium
CN111581452B (en) * 2020-03-26 2023-10-17 浙江口碑网络技术有限公司 Recommendation object data obtaining method and device and electronic equipment
CN111510783B (en) * 2020-04-26 2022-06-03 咪咕动漫有限公司 Method, device, electronic equipment and storage medium for determining video exposure
CN111738768A (en) * 2020-06-24 2020-10-02 江苏云柜网络技术有限公司 Advertisement pushing method and system
CN111813992A (en) * 2020-07-14 2020-10-23 四川长虹电器股份有限公司 Sorting system and method for movie recommendation candidate set
CN112135193B (en) * 2020-09-24 2022-06-07 湖南快乐阳光互动娱乐传媒有限公司 Video recommendation method and device
CN112188295B (en) * 2020-09-29 2022-07-05 有半岛(北京)信息科技有限公司 Video recommendation method and device
CN113407521B (en) * 2021-05-24 2022-02-08 广州市万表科技股份有限公司 User behavior tag preference sorting method, device, equipment and storage medium
CN114048392B (en) * 2022-01-13 2022-07-01 北京达佳互联信息技术有限公司 Multimedia resource pushing method and device, electronic equipment and storage medium
CN114528484A (en) * 2022-01-26 2022-05-24 北京金堤科技有限公司 Preference mining method and device, storage medium and electronic equipment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104602042A (en) * 2014-12-31 2015-05-06 合一网络技术(北京)有限公司 User behavior based label setting method
CN104933134A (en) * 2015-06-12 2015-09-23 海信集团有限公司 User feature analysis method and user feature analysis device
CN105005587A (en) * 2015-06-26 2015-10-28 深圳市腾讯计算机系统有限公司 User portrait updating method, apparatus and system
CN106407241A (en) * 2016-03-21 2017-02-15 传线网络科技(上海)有限公司 Video recommendation method and system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104602042A (en) * 2014-12-31 2015-05-06 合一网络技术(北京)有限公司 User behavior based label setting method
CN104933134A (en) * 2015-06-12 2015-09-23 海信集团有限公司 User feature analysis method and user feature analysis device
CN105005587A (en) * 2015-06-26 2015-10-28 深圳市腾讯计算机系统有限公司 User portrait updating method, apparatus and system
CN106407241A (en) * 2016-03-21 2017-02-15 传线网络科技(上海)有限公司 Video recommendation method and system

Also Published As

Publication number Publication date
CN109657138A (en) 2019-04-19

Similar Documents

Publication Publication Date Title
CN109657138B (en) Video recommendation method and device, electronic equipment and storage medium
CN107016026B (en) User tag determination method, information push method, user tag determination device, information push device
US8990241B2 (en) System and method for recommending queries related to trending topics based on a received query
CN107153656B (en) Information searching method and device
US11276099B2 (en) Multi-perceptual similarity detection and resolution
US20180089715A1 (en) System and method for analyzing and predicting emotion reaction
CN111061979A (en) User label pushing method and device, electronic equipment and medium
CN110689402A (en) Method and device for recommending merchants, electronic equipment and readable storage medium
CN111861605A (en) Business object recommendation method
KR20110023750A (en) Object customization and management system
CN111680213A (en) Information recommendation method, data processing method and device
US9201967B1 (en) Rule based product classification
CN108595580B (en) News recommendation method, device, server and storage medium
CN113706253A (en) Real-time product recommendation method and device, electronic equipment and readable storage medium
KR102299525B1 (en) Product Evolution Mining Method And Apparatus Thereof
Khan et al. Term-based approach for linking digital news stories
CN117056619A (en) Method and device for determining user behavior characteristics
US11017452B2 (en) Concerted learning and multi-instance sequential prediction tree
Gendron Introduction to R for Business Intelligence
CN113610580B (en) Product recommendation method and device, electronic equipment and readable storage medium
US11615245B2 (en) Article topic alignment
CN114693409A (en) Product matching method, device, computer equipment, storage medium and program product
CN112148964B (en) Information processing and recommending method, system and equipment
GB2608112A (en) System and method for providing media content
CN112989020A (en) Information processing method, apparatus and computer readable 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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20210203

Address after: Unit 1701e, China energy storage building, 3099 Keyuan South Road, high tech community, Yuehai street, Nanshan District, Shenzhen, Guangdong 518000

Applicant after: SHENZHEN DAYU WUXIAN TECHNOLOGY Co.,Ltd.

Address before: Unit 2301-l, bicker building, No.9, Keke Road, Gaoxin Middle District, Yuehai street, Nanshan District, Shenzhen, Guangdong 518000

Applicant before: SHENZHEN MOSHI TECHNOLOGY Co.,Ltd.

GR01 Patent grant
GR01 Patent grant