Detailed Description
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 only a part of the embodiments of the present invention, and not all of the embodiments. 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 of the present invention 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. Meanwhile, in the description of the present invention, the terms "first", "second", and the like are used only for distinguishing the description, and are not to be construed as indicating or implying relative importance.
Referring to fig. 1, fig. 1 is a schematic diagram illustrating a communication between a server 100 and at least one user terminal 200 according to a preferred embodiment of the present invention. The server 100 and the user terminal 200 are communicatively connected via a network, an interface, or the like. The user terminal 200 may be, but is not limited to, a television, a smart phone, a tablet computer, and the like. The user terminal 200 sends a request for obtaining a recommendation list to the server 100; the server 100 receives the request and transmits a short advertisement and video program mixed recommendation list to the user terminal 200. The user terminal 200 receives and plays the advertisement clips and the video programs according to the mixed recommendation list, so that the user can watch the complete video program.
Referring to fig. 2, fig. 2 is a block diagram of the server 100 shown in fig. 1. The server 100 may include a database 112, a hybrid recommendation device 300, a memory 110, a storage controller 120, and a processor 130.
The elements of the memory 110, the memory controller 120 and the processor 130 are electrically connected 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 memory 110 stores therein a database 112 and a hybrid recommendation device 300, the hybrid recommendation device 300 includes at least one software function module which can be stored in the memory 110 in the form of software or firmware (firmware). The processor 130 executes various functional applications and data processing, i.e., implements the method for recommending a mixture of advertisement clips and video programs in the embodiment of the present invention, by running software programs and modules stored in the memory 110, such as the mixture recommending apparatus 300 in the embodiment of the present invention.
The Memory 110 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 110 is used for storing a program, and the processor 130 executes the program after receiving the execution instruction. Access to the memory 110 by the processor 130 and possibly other components may be under the control of the memory controller 120.
the processor 130 may be an integrated circuit chip having signal processing capabilities. The Processor 130 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.
It will be appreciated that the configuration shown in fig. 2 is merely illustrative and that server 100 may include more or fewer components than shown in fig. 2 or have a different configuration than shown in fig. 2. The components shown in fig. 2 may be implemented in hardware, software, or a combination thereof.
Referring to fig. 3, fig. 3 is a flowchart illustrating a method for recommending a short advertisement and a video program in a mixed manner according to a preferred embodiment of the present invention. The method is applied to a server 100 which is in communication connection with a user terminal 200. The server 100 includes a database 112, and the database 112 stores a first vector for describing the user's interest level in the advertisement short, and a second vector for describing the interest level in the video program. The flow in fig. 3 may be implemented by the processor 130. The following describes a specific flow of the method for recommending the advertisement short-film and video program mixture in detail.
step S120, obtain the first vector and the second vector.
In this embodiment, the database 112 stores information of a plurality of user terminals 200. When the information is directed to one of the user terminals 200, the information corresponding to the user terminal 200 is extracted. Wherein the information comprises a first vector and a second vector. The first vector includes at least one advertisement clip and a similarity between each advertisement clip and a user using the user terminal 200. The second vector includes at least one video program and a similarity between each video program and a user using the user terminal 200. The degree of interest of the user in the advertisement short film or the video program can be obtained through the similarity, and generally, the higher the similarity is, the more interest of the user is indicated.
Step S130, selecting vector elements satisfying a preset condition from the first vector and the second vector, and processing the selected vector elements to form a hybrid recommended vector.
Referring to fig. 4, fig. 4 is a flowchart illustrating sub-steps included in step S130 in fig. 3. The step S130 may include a substep S131 and a substep S132.
In the sub-step S131, vector elements satisfying a predetermined condition are selected from the first vector and the second vector to form a third vector and a fourth vector.
In this embodiment, the manner of selecting the vector elements satisfying the predetermined condition from the first vector and the second vector to form the third vector and the fourth vector is any one of the following two manners.
selecting a first preset number of vector elements in the first vector in a sequence from high similarity to low similarity to form a third vector, and selecting a second preset number of vector elements in the second vector in a sequence from high similarity to low similarity to form a fourth vector, wherein the vector elements in the first vector and the second vector are arranged in a descending order or an ascending order according to the similarity of the vector elements.
And selecting vector elements with the vector element similarity larger than a first preset similarity from the first vectors to form a third vector, and selecting vector elements with the vector element similarity larger than a second preset similarity from the second vectors to form a fourth vector.
In an implementation manner of this embodiment, the vector elements (commercials) in the first vector and the vector elements (video programs) in the second vector are all arranged in descending order or ascending order according to the similarity of the vector elements. When the vector elements are selected, the vector elements are selected from the first vector element with the highest similarity according to the sequence of the similarity from high to low. And selecting a first preset number of vector elements from the first vector to form a third vector, wherein the third vector comprises at least one advertisement short film and the similarity between each advertisement short film and the user. And selecting vector elements of second preset data from the second vector to form a fourth vector, wherein the fourth vector comprises at least one video program and the similarity between each video program and the user. For example, 5 vector elements may be selected in the first vector to recommend 5 ad clips; selecting 20 vector elements in the second vector to recommend 20 video programs. Therefore, the method has theoretical and regular control on the mixed arrangement of the short advertisement films and the video programs, and can well balance the advertisement benefits and the user experience.
The specific numerical value of the first preset number is determined according to the interest degree of the user in the advertisement short film, and the specific numerical value of the second preset number is determined according to the interest of the user in the video program. Under the condition that a certain user exits without clicking advertisements or clicking on the advertisement, the advertisement short films can be recommended less, and the proportion of the advertisement short films is reduced. Therefore, the recommended number of the advertisement clips, the recommended number of the video programs and the ratio of the advertisement clips to the video programs are determined according to the interest of the user.
In another implementation manner of this embodiment, the vector element selection may be performed by setting a preset similarity. Specifically, vector elements (advertisement clips) with similarity greater than a first preset similarity are selected from the first vectors to obtain third vectors; and selecting a vector element (video program) with the similarity larger than a second preset similarity from the second vector to obtain a fourth vector.
The specific value of the first preset similarity is determined according to the interest degree of the user in the advertisement short film, and the specific value of the second preset similarity is determined according to the interest of the user in the video program. Therefore, the specific value of the first preset similarity and the specific value of the second preset similarity can be set according to actual conditions.
In the substep S132, the third vector and the fourth vector are processed respectively, and the processed third vector and the processed fourth vector are combined to obtain a mixed recommendation vector.
Referring to fig. 5, fig. 5 is a flowchart illustrating sub-steps included in sub-step S132 in fig. 4. The substep S132 may include substeps S1321 and substep S1322.
In the substep S1321, normalization processing is performed on the third vector and the fourth vector, respectively.
In the embodiment of this embodiment, by performing normalization processing on the similarity corresponding to the vector elements in the third vector and the fourth vector, the advertisement short film and the video program are processed in a unified manner, which is equivalent to regarding the advertisement short film as a video program. The normalization is a simplified calculation mode, and means that a dimensional expression is converted into a dimensionless expression through transformation, so that the dimensionless expression becomes a scalar.
In the sub-step S1322, the normalized third vector and the normalized fourth vector are combined to obtain a mixed vector, and the mixed vector is arranged in a descending order or an ascending order according to the similarity of the vector elements in the mixed vector to obtain a mixed recommendation vector.
In this embodiment, the normalized third vector and the normalized fourth vector are combined into one vector to obtain a mixed vector. The mixed vector comprises the similarity after normalization processing corresponding to the advertisement short films and each advertisement short film, and the similarity after normalization processing corresponding to the video programs and each video program. And performing descending or ascending arrangement on the vector elements in the mixed vector according to the normalized similarity, thereby obtaining a mixed recommendation vector.
how to obtain the hybrid recommendation vector is described below by way of example.
Referring to fig. 6, fig. 6 is a schematic diagram illustrating obtaining a hybrid recommendation vector according to a preferred embodiment of the invention. A first vector and a second vector are obtained from the database 112, wherein the vector elements of the first vector and the second vector are arranged in a descending order according to the similarity of the vector elements. The first vector is: [ (a1, S1), (a2, S2.)..., (am, Sm) ], said second vector being: a., (vn, sn) ], (v1, s1), (v2, s2). a1, a2 and the like represent advertisement short pieces, S1, S1 and the like represent the similarity between the advertisement short pieces and the user, and m represents the number of the advertisement short pieces; v1, v2, etc. represent video programs, s1, s1, etc. represent the similarity of video programs to users, and n represents the number of video programs.
Selecting k advertisement clips in the first vector to obtain a third vector: [ (a1, S1), (a2, S2.)..., (ak, Sk) ]; selecting h video programs in the second vector to obtain a fourth vector: [ (v1, s1), (v2, s2). And normalizing the third vector and the fourth vector to obtain the normalized third vector and the normalized fourth vector. The normalized third vector is: [ (a1, C1), (a2, C2. -, (ak, Ck) ]; the fourth vector after normalization is: [ (v1, c1), (v2, c2). And combining the third vector and the fourth vector subjected to normalization processing, and performing descending order arrangement according to the normalized similarity to obtain a mixed recommendation vector: [ (r1, w1), (r2, w2). ·., (r (h + k), w (h + k)) ]. r1, r2, etc. represent commercials or video programs, and w1, w2, etc. represent the similarity after normalization processing. For example, when normalization is performed on s1, s2, …, sh, the mean s and the standard deviation t are calculated first, (s1-s)/t is the result of s1 normalization, and the rest is analogized.
and step S140, obtaining a mixed recommendation list of the advertisement short films and the video programs according to the mixed recommendation vector.
Referring to fig. 7, fig. 7 is a flowchart illustrating sub-steps included in step S140 in fig. 3. The step S140 may include a substep S141 and a substep S142.
In the substep S141, the advertisement clips or video programs corresponding to each vector element in the mixed recommendation vector are searched.
in this embodiment, the database 112 further stores the corresponding relationship between the vector elements and the advertisement clips or the video programs. By looking up in the database 112, the ad clips and video programs included in the hybrid recommendation vector can be obtained.
in the substep S142, a mixed recommendation list of the advertisement short films and the video programs is obtained according to the searched advertisement short films and video programs, so that the user terminal 200 plays the advertisement short films and the video programs based on the mixed recommendation list.
in this embodiment, after the advertisement clips and the video programs corresponding to the vector elements are obtained, the advertisement clips and the video programs are arranged in an ascending order or a descending order according to the similarity after the normalization processing corresponding to the advertisement clips and the video programs, so as to obtain a mixed recommendation list of the advertisement clips and the video programs. Therefore, the user terminal 200 can play the advertisement short films and the video programs according to the mixed recommendation list, and user experience is improved. In an implementation manner of this embodiment, the advertisement clips and the video programs in the mixed recommendation list are arranged in a descending order.
after the advertisement short-film and video program mixed recommendation list of a certain user is obtained, the advertisement short-film and video program mixed recommendation list of each user is circularly calculated, and then the total mixed recommendation list can be obtained.
Referring to fig. 8, fig. 8 is a schematic flow chart illustrating a method for recommending a short advertisement and a video program in a mixed manner according to a preferred embodiment of the invention. The method may further include step S110.
In step S110, a first vector describing the interest level of the user in the advertisement short film and a second vector describing the interest level of the video program are established, and the first vector and the second vector are stored in the database 112.
Referring to fig. 9, fig. 9 is a flowchart illustrating a part of sub-steps included in step S110 in fig. 8. The step S110 may include a substep S116, a substep S117, a substep S118, and a substep S119.
in the sub-step S116, an advertisement short-film vector, a video program vector and a user feature vector are obtained, where the advertisement short-film vector includes one or more tags corresponding to each advertisement short-film, the video program vector includes one or more tags corresponding to each video program, and the user feature vector includes one or more tags of each video program viewed by the user or one or more tags of each advertisement short-film.
The sub-step S117 calculates the similarity between the advertisement short-film vector and the user feature vector and the similarity between the video program vector and the user feature vector.
The similarity between the advertisement short-film vector and the user feature vector and the similarity between the video program vector and the user feature vector can be calculated through the vector inner product, the jaccard similarity, the Euclidean distance and the like.
The substep S118 calculates the similarity between each advertisement filmlet in the advertisement filmlet vector and the user according to the similarity between the advertisement filmlet vector and the user feature vector, and obtains a first vector according to the advertisement filmlet vector and the similarity between each advertisement filmlet and the user.
The first vector comprises at least one advertisement short film and the similarity between each advertisement short film and a user.
The substep S119 is to calculate the similarity between each video program in the video program vectors and the user according to the similarity between the video program vectors and the user feature vectors, and obtain a second vector according to the video program vectors and the similarity between each video program and the user.
the second vector comprises at least one video program and the similarity between each video program and the user.
Referring to fig. 10, fig. 10 is a schematic flowchart of another part of sub-steps included in step S110 in fig. 8. The step S110 may further include a substep S112, a substep S113, and a substep S114.
in the substep S112, the label of the advertisement short film and the label of the video program are obtained, the advertisement short film vector is obtained according to the label of the advertisement short film, and the video program vector is obtained according to the label of the video program.
In this embodiment, the manner of converting the advertisement clips and the video programs into the numerical vectors may be to obtain the labels of the advertisement clips and the video programs first, and then convert the labels into the numerical vectors. The manner of obtaining the label may be, but is not limited to, manually labeling the video (commercial clips, video programs) from various dimensions (e.g., scenes, shooting techniques, etc.), automatically extracting the label from the video (commercial clips, video programs) through a machine learning algorithm, and the like. After the labels are obtained, the labels can be converted into numerical vectors through a machine learning technology (such as word2vector) to obtain advertisement short-film vectors and video program vectors, and therefore the correlation degree between texts can be calculated better.
In the sub-step S113, the advertisement short and the video program viewed by the user are obtained from the user behavior log.
In the sub-step S114, the label of the advertisement short film or the label of the video program watched by the user is extracted, and the label of the advertisement short film or the label of the video program watched by the user is used as the user label, so as to obtain the user feature vector.
in this embodiment, the manner of obtaining the user feature vector is the same as that of obtaining the advertisement short-film vector and the video program vector, and is not described herein again.
referring to fig. 11, fig. 11 is a block diagram of a device 300 for recommending a mixture of advertisement clips and video programs according to a preferred embodiment of the present invention. The hybrid recommendation apparatus 300 is applied to the server 100 which is in communication connection with the user terminal 200. The server 100 includes a database 112, and the database 112 stores a first vector for describing the user's interest level in the advertisement short, and a second vector for describing the interest level in the video program. The hybrid recommendation device 300 includes an obtaining module 320, a hybrid recommendation vector module 330, and a recommendation list generating module 340.
The obtaining module 320 is configured to obtain the first vector and the second vector.
In this embodiment, the obtaining module 320 is configured to execute step S120 in fig. 3, and the detailed description about the obtaining module 320 may refer to the description of step S120 in fig. 3.
The hybrid recommendation vector module 330 is configured to select vector elements that satisfy a preset condition from the first vector and the second vector, and process the selected vector elements to form a hybrid recommendation vector.
Referring to fig. 12, fig. 12 is a block diagram of another apparatus 300 for recommending a mixture of advertisement clips and video programs according to a preferred embodiment of the present invention. The hybrid recommendation vector module 330 includes a selection sub-module 331 and a processing sub-module 332.
the selecting submodule 331 is configured to select vector elements that meet a preset condition from the first vector and the second vector to form a third vector and a fourth vector, respectively.
The selection sub-module 331 selects, from the first vector and the second vector, vector elements that satisfy a preset condition to form a third vector and a fourth vector, respectively, in any one of the following two ways:
Selecting a first preset number of vector elements in the first vector in a sequence of similarity from high to bottom to form a third vector, and selecting a second preset number of vector elements in the second vector in a sequence of similarity from high to bottom to form a fourth vector, wherein the vector elements in the first vector and the second vector are arranged in a descending order or an ascending order according to the similarity of the vector elements;
and selecting vector elements with the vector element similarity larger than a first preset similarity from the first vectors to form a third vector, and selecting vector elements with the vector element similarity larger than a second preset similarity from the second vectors to form a fourth vector.
The processing submodule 332 is configured to process the third vector and the fourth vector respectively, and combine the processed third vector and fourth vector to obtain a mixed recommendation vector.
The processing submodule 332 respectively processes the third vector and the fourth vector, and combines the processed third vector and fourth vector to obtain a mixed recommended vector, where the method includes:
respectively carrying out normalization processing on the third vector and the fourth vector;
And combining the third vector and the fourth vector after the normalization processing to obtain a mixed vector, and performing descending or ascending arrangement on the mixed vector according to the similarity of vector elements in the mixed vector to obtain a mixed recommendation vector.
In this embodiment, the hybrid recommendation vector module 330 is configured to perform step S130 in fig. 3, and the detailed description about the hybrid recommendation vector module 330 may refer to the description of step S130 in fig. 3.
The recommendation list generating module 340 is configured to obtain a mixed recommendation list of the advertisement clips and the video programs according to the mixed recommendation vector, so that the user terminal 200 plays the advertisement clips and the video programs based on the mixed recommendation list.
The way for the recommendation list generation module 340 to obtain the short advertisement and video program mixed recommendation list according to the mixed recommendation vector includes:
Searching for advertisement short films or video programs corresponding to each vector element in the mixed recommendation vector;
And obtaining a mixed recommendation list of the advertisement short films and the video programs according to the searched advertisement short films and video programs.
In this embodiment, the recommendation list generating module 340 is configured to execute step S140 in fig. 3, and the detailed description about the recommendation list generating module 340 may refer to the description of step S140 in fig. 3.
Referring again to fig. 12, the hybrid recommendation device 300 may further include a vector establishing module 310. The vector establishing module 310 is configured to establish a first vector describing the user's interest level in the advertisement short, and a second vector describing the interest level in the video program, and store the first vector and the second vector in the database 112.
The way that the vector establishing module 310 establishes a first vector describing the interest level of the user in the advertisement short film and a second vector describing the interest level of the user in the video program, and stores the first vector and the second vector in the database 112 includes:
Acquiring advertisement short-film vectors, video program vectors and user feature vectors, wherein the advertisement short-film vectors comprise one or more labels corresponding to each advertisement short-film, the video program vectors comprise one or more labels corresponding to each video program, and the user feature vectors comprise one or more labels of each video program watched by the user or one or more labels of each advertisement short-film;
Calculating the similarity between the advertisement short-film vector and the user feature vector and the similarity between the video program vector and the user feature vector;
Calculating the similarity between each advertisement short film in the advertisement short film vector and the user according to the similarity between the advertisement short film vector and the user characteristic vector, and obtaining a first vector according to the advertisement short film vector and the similarity between each advertisement short film and the user;
And calculating the similarity between each video program in the video program vectors and the user according to the similarity between the video program vectors and the user characteristic vectors, and obtaining a second vector according to the video program vectors and the similarity between each video program and the user.
The way that the vector establishing module 310 establishes a first vector describing the user's interest level in the advertisement short film and a second vector describing the interest level in the video program, and stores the first vector and the second vector in the database 112 further includes:
obtaining a label of an advertisement short film and a label of a video program, obtaining an advertisement short film vector according to the label of the advertisement short film, and obtaining a video program vector according to the label of the video program;
Obtaining advertisement short films and video programs watched by a user from a user behavior log;
Extracting the label of the advertisement short film or the label of the video program watched by the user, and taking the label of the advertisement short film or the label of the video program watched by the user as the user label, thereby obtaining the user feature vector.
In this embodiment, the vector establishing module 310 is configured to execute step S110 in fig. 8, and the detailed description about the vector establishing module 310 may refer to the description of step S110 in fig. 8.
In summary, the present invention provides a method and an apparatus for recommending advertisement clips and video programs in a mixed manner, which are applied to a server in communication connection with a user terminal. The server comprises a database, wherein a first vector for describing the interest degree of the user in the advertisement short film and a second vector for describing the interest degree of the user in the video program are stored in the database. After the first vector and the second vector are obtained, vector elements in the first vector and the second vector are selected according to preset conditions, and the selected vector elements are processed to obtain a mixed recommendation vector. Therefore, the mixed recommendation list of the advertisement short films and the video programs is obtained through the mixed recommendation vector, and the user terminal plays the advertisement short films and the video programs according to the mixed recommendation list. Therefore, the advertisement short films and the video programs are treated equally, and mixed recommendation of the advertisement short films and the video programs is processed in a unified mode instead of inserting the advertisement short films in the video programs. In this way, the user is not disturbed by the advertisement clips while watching the video program, and the advertisement clip revenue and the user experience are well balanced.
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.