CN110839167B - Video recommendation method and device and terminal equipment - Google Patents

Video recommendation method and device and terminal equipment Download PDF

Info

Publication number
CN110839167B
CN110839167B CN201810937007.4A CN201810937007A CN110839167B CN 110839167 B CN110839167 B CN 110839167B CN 201810937007 A CN201810937007 A CN 201810937007A CN 110839167 B CN110839167 B CN 110839167B
Authority
CN
China
Prior art keywords
video
similarity
videos
user
users
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
CN201810937007.4A
Other languages
Chinese (zh)
Other versions
CN110839167A (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.)
TCL Technology Group Co Ltd
Original Assignee
TCL Technology Group 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 TCL Technology Group Co Ltd filed Critical TCL Technology Group Co Ltd
Priority to CN201810937007.4A priority Critical patent/CN110839167B/en
Publication of CN110839167A publication Critical patent/CN110839167A/en
Application granted granted Critical
Publication of CN110839167B publication Critical patent/CN110839167B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/251Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/466Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • H04N21/4668Learning process for intelligent management, e.g. learning user preferences for recommending movies for recommending content, e.g. movies

Abstract

The application is applicable to the technical field of communication, and provides a video recommendation method, a video recommendation device and terminal equipment, wherein the video recommendation method comprises the following steps: acquiring the number of users who send out appointed operation to any video in a video set, and selecting a target video; performing descending order arrangement on the videos in the video set according to the number of users to obtain an ordered set of the video set; sequentially establishing a calculation task of the similarity between the target video and each video sequenced behind the target video; sequentially distributing the computing tasks to a plurality of execution paths to execute the computing tasks to obtain a similarity set output by the computing tasks; according to the similarity set, video recommendation is performed on the users, and a similarity calculation task among videos with the largest number of user operations is established according to the number of users who are subjected to video sending operations, so that the execution container executes different calculation tasks which take longer time in parallel, the running time of the overall similarity calculation task is shortened, and the efficiency of video recommendation for the users is improved.

Description

Video recommendation method and device and terminal equipment
Technical Field
The application belongs to the field of image data processing, and particularly relates to a video recommendation method and device and terminal equipment.
Background
With the advent of the smart television, people can watch live broadcast content of a fixed television station through the smart television and also can select existing video resources such as on-demand movies and television series. In the face of various video resources, the interest preference of the user is found out by utilizing the historical behavior record of the user, and the personalized recommendation system which correspondingly screens out high-quality contents and presents the high-quality contents to the terminal user is developed. When videos similar to videos watched by end users are searched, the correlation between two videos is generally calculated through a collaborative filtering algorithm, the correlation between two videos is larger, which indicates that the similarity is larger, but the method may cause a data skew problem in the calculation process, namely, the execution time of individual tasks far exceeds the average time, so that the running time of the whole task is too long.
Disclosure of Invention
In view of this, embodiments of the present application provide a video recommendation method, an apparatus, and a terminal device, so as to solve the problems in the prior art that video similarity calculation is time-consuming and low in calculation efficiency.
A first aspect of an embodiment of the present application provides a video recommendation method, where the video recommendation method includes:
acquiring the number of users who send out appointed operation to any video in a video set, and selecting a target video in the video set;
performing descending order arrangement on the videos in the video set according to the number of the users to obtain an ordered set of the video set;
sequentially establishing a calculation task of the similarity between the target video and each video sequenced behind the target video;
sequentially distributing the computing tasks to a plurality of execution paths to execute the computing tasks to obtain a similarity set output by the computing tasks;
and recommending videos to users according to the similarity set.
A second aspect of an embodiment of the present application provides a video recommendation apparatus, including:
the system comprises a user number acquisition module, a video collection processing module and a video selection module, wherein the user number acquisition module is used for acquiring the user number of users sending appointed operation to any video in the video collection and selecting a target video in the video collection;
the sorting module is used for carrying out descending order arrangement on the videos in the video set according to the number of the users to obtain a sorting set of the video set;
the task establishing module is used for sequentially establishing a calculation task of the similarity between the target video and each video sequenced behind the target video;
the computing module is used for sequentially distributing the computing tasks to a plurality of execution paths to execute the computing tasks to obtain a similarity set output by the computing tasks;
and the recommending module is used for recommending videos to the user according to the similarity set.
A third aspect of embodiments of the present application provides a terminal device, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor, and the processor, when executing the computer program, implements the steps of any one of the video recommendation methods provided in the first aspect.
A fourth aspect of embodiments of the present application provides a computer-readable storage medium, which stores a computer program that, when executed by a processor, implements the steps of any one of the video recommendation methods provided in the first aspect above.
According to the method and the device, when video recommendation is performed, the number of users who perform appointed operation on videos is obtained for any video, then the videos are arranged in a descending order according to the number of the users performing the operation on the videos to obtain a video ordering set of the videos, the target video is selected from the video ordering set, similarity calculation tasks between the target video and other videos in the video ordering set are sequentially established, the similarity calculation tasks are sequentially distributed into execution containers of the appointed number to calculate the similarity between the target video and other videos in the video ordering set, and therefore the video recommendation is performed on the users according to the similarity between the other videos and the target video. In the process, the videos are sequenced according to the number of users who send appointed operations to the videos, and the more the number of users who operate the videos is, the longer the time consumption for calculating the similarity between the videos and other videos is, so that the similarity calculation tasks among the videos with the largest number of user operations are established according to the number of users who send the operations to the videos and are sequentially distributed to different execution containers for execution, the execution containers can execute different calculation tasks with longer time consumption in parallel, the running time of the whole similarity calculation tasks is shortened, and the video recommendation efficiency of the users is improved.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed to be used in the embodiments or the prior art descriptions will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without inventive exercise.
Fig. 1 is a schematic flowchart of a video recommendation method according to an embodiment of the present application;
fig. 2 is a schematic flowchart of a video recommendation method according to another embodiment of the present application;
fig. 3 is a schematic diagram of a video recommendation apparatus according to an embodiment of the present application;
fig. 4 is a schematic diagram of a terminal device provided in an embodiment of the present application.
Detailed Description
In the following description, for purposes of explanation and not limitation, specific details are set forth, such as particular system structures, techniques, etc. in order to provide a thorough understanding of the embodiments of the present application. It will be apparent, however, to one skilled in the art that the present application may be practiced in other embodiments that depart from these specific details. In other instances, detailed descriptions of well-known systems, devices, circuits, and methods are omitted so as not to obscure the description of the present application with unnecessary detail.
According to the method and the device, when video recommendation is performed, the number of users who perform appointed operation on videos is obtained for any video, then the videos are arranged in a descending order according to the number of the users performing the operation on the videos to obtain a video ordering set of the videos, the target video is selected from the video ordering set, similarity calculation tasks between the target video and other videos in the video ordering set are sequentially established, the similarity calculation tasks are sequentially distributed into execution containers of the appointed number to calculate the similarity between the target video and other videos in the video ordering set, and therefore the video recommendation is performed on the users according to the similarity between the other videos and the target video.
In order to explain the technical solution described in the present application, the following description will be given by way of specific examples.
The first embodiment is as follows:
fig. 1 shows a schematic implementation flow diagram of a video recommendation method provided by an embodiment of the present application, including steps S11-S15, where:
step S11, acquiring the number of users who send out appointed operation to any video in the video set, and selecting the target video in the video set.
In the embodiment provided by the application, when a user watches videos provided by some websites and other places, different users can search, click, watch and other behaviors on different videos, so that the number of users who send out the specified operation on the videos provided by the system is counted first in the application, the videos form a certain set, at the moment, the number of users who send out the specified operation on each video can be counted respectively, and then the number of users who send out the specified operation on each video is recorded to form the set. The specified operation comprises one or more of clicking, searching, collecting and watching the video. For example, if the users watching video a are a and B, the users watching video B are a, B, and C, and the users watching video C are a, the number of users performing the specified operation on video A, B, C may be recorded as: { A (2), B (3), C (1) }.
In the present application, a target video may be first selected from a video set, where the target video may be considered as a video from which similarity calculation is started, and videos other than the target video are referred to as non-target videos. If the similarity between the video B and other videos is to be calculated, the target video is selected as the video B, the videos A and C become non-target videos, and the similarity of (B, A) and the similarity of (B, C) are calculated according to preset rules. Further, rules may be set such that when B is selected for the target video, the calculation of similarity of all videos in the entire video ordering set is performed, and at this time, the system may continue to calculate (A, C) the similarity.
And step S12, performing descending order arrangement on the videos in the video set according to the number of the users to obtain an ordered set of the video set.
Specifically, the plurality of videos are arranged in a descending order according to the number of users who send the specified operation to each video in the video set, so that a sorted set of the video sets of the plurality of videos is obtained. That is, videos provided in the system are sorted according to the number of users who issue the designated operation, and a video sorting set { B (3), a (2), C (1) } can be obtained by sorting the videos A, B, C as described above.
And step S13, sequentially establishing a similarity calculation task between the target video and each video sequenced behind the target video.
In the embodiment provided by the present application, a similarity calculation task is created according to a selected target video, at this time, to avoid repeated calculation of similarity between two videos, only similarity between the target video and all videos after the target video is sorted is calculated, for example, the above-mentioned video sorting set { B (3), a (2), C (1) }, if the selected target video is B, the created similarity calculation task is to calculate similarity between (B, a) and (B, C), and of course, if similarity between any two videos in the set is to be calculated, when the target video is selected as B, the similarity calculation task may further include calculating similarity (A, C). In the application, when the similarity of the two videos is calculated, the similarity of the two videos only needs to be calculated from one side, such as the similarity of the video A, B, and because the results of the similarity calculation tasks (B, A) and (A, B) are the same, the created task (B, A) only needs to be calculated without creating the calculation task (A, B), so that repeated calculation is avoided, and the subsequent calculation time is shortened.
And step S14, sequentially distributing the computing tasks to a plurality of execution paths to execute the computing tasks, and obtaining a similarity set output by the computing tasks.
In the embodiment provided by the application, the similarity between two videos is calculated based on the Spark platform, and therefore, the similarity calculation tasks sequentially created in step S13 are sequentially allocated to different execution paths (such as different execution containers) to synchronously execute a plurality of similarity calculation tasks. When calculating, the above execution path runs the formula:
Figure BDA0001768080520000051
wherein, N (i), N (j) represent the number of users watching video i, j; n (u) represents the number of users who have viewed i and j, WijRepresenting the similarity of two videos and defining Wij=Wji. The number of the execution containers is determined by the processing capacity of the Spark platform, and if 3 execution paths exist, the created 1 st to 3 rd similarity calculation tasks are respectively distributed to the 3 execution paths to execute the calculation of the formula; in having a receiptAnd when the line container finishes the current computing task and is in an idle state, distributing the created 4 th similarity computing task to the idle execution path to continue executing the computing task. And after all the similarity calculation tasks are executed, recording the obtained calculation results to form a similarity set, and outputting the similarity set. For the same video, the more users view the same video, the longer the time consumption is when the similarity between the same video and other videos is calculated, therefore, in the application, the similarity calculation task which consumes the longer time is executed firstly, the multiple execution containers synchronously execute different tasks, and when the idle execution containers exist, the subsequent calculation tasks are continuously distributed, so that each execution container can be in the state of executing the tasks, the condition that one execution container has multiple tasks to be executed and the other execution containers are idle is avoided, and the execution time of the whole task is shortened.
And step S15, recommending videos to users according to the similarity set.
In this step, video recommendation is performed to the user watching the target video according to the similarity between other videos and the target video, for example, a plurality of videos with the greatest similarity to the target video may be recommended to the user, or video recommendation may be performed to the user according to a rule specified by the user.
According to the method and the device, when video recommendation is performed, the number of users who perform appointed operation on videos is obtained for any video, then the videos are arranged in a descending order according to the number of the users performing the operation on the videos to obtain a video ordering set of the videos, the target video is selected from the video ordering set, similarity calculation tasks between the target video and other videos in the video ordering set are sequentially established, the similarity calculation tasks are sequentially distributed into execution containers of the appointed number to calculate the similarity between the target video and other videos in the video ordering set, and therefore the video recommendation is performed on the users according to the similarity between the other videos and the target video. In the process, the videos are sequenced according to the number of users who send appointed operations to the videos, and the more the number of users who operate the videos is, the longer the time consumption for calculating the similarity between the videos and other videos is, so that the similarity calculation tasks among the videos with the largest number of user operations are established according to the number of users who send the operations to the videos and are sequentially distributed to different execution containers for execution, the execution containers can execute different calculation tasks with longer time consumption in parallel, the running time of the whole similarity calculation tasks is shortened, and the video recommendation efficiency of the users is improved.
Example two:
fig. 2 shows a schematic implementation flow diagram of a video recommendation method according to another embodiment of the present application, which is detailed as follows:
step S21, acquiring the number of users who send out appointed operation to any video in the video set, and selecting the target video in the video set.
And step S22, performing descending order arrangement on the videos in the video set according to the number of the users to obtain an ordered set of the video set.
The implementation process of steps S21-S22 refers to steps S11-S12 in the first embodiment, and will not be described herein again.
Step S23, acquiring the appointed operation sent by the user to the target video; and calculating the video scoring of the target video by the user according to the specified operation.
In the step, one video is selected from the video sorting set as a target video, and then one or more operations of clicking, searching, collecting, watching and the like sent by a user to the target video are detected. Further, when acquiring the designated operation sent by the user to the target video, the designated operation sent by the user to the target video within a designated time period, for example, a click operation sent by the user within one year from the current time or an operation for playing the target video, etc., may be acquired. And determining that the user scores the video of the target video according to the operation of the user on the target video.
Optionally, in another embodiment provided by the present application, the calculating, according to the specified operation, a video score of the target video by the user includes:
calling an operation score corresponding to the preset specified operation;
detecting whether the designated operation sent by the user to the target video comprises multiple types;
if so, taking the highest operation score corresponding to the multiple specified operations as the video score of the target video;
and if not, taking the operation score corresponding to the specified operation as the video score of the target video.
In the step, different designated operations and operation scores corresponding to each designated operation are preset, for example, a search operation is set to be 1 score, a click operation is set to be 2 scores, a collection operation is set to be 3 scores, and a play operation is set to be 3-5 scores according to a proportional relation between the playing time length and the total video time length. And then detecting whether the user performs various specified operations on the target video, for example, if the user can click the target video and then continue to watch the target video, at this time, selecting a specified operation with a high score (in the example, selecting a play operation instead of a click operation) as the user score for the video of the target video. And if the clicking operation and the playing operation exist, the user scores the video of the target video according to the relation between the playing time length and the total video length. And if the user only has one appointed operation on the target video, taking an operation score corresponding to the appointed operation as the score of the user on the video of the target video. For example, when the user only has a collection operation, the user scores 1 point for the video of the target video. Furthermore, different scores can be set for different specified operations according to the length from the time point of the specified operation of the user on the target video to the current time point, for example, the operation score can be reduced as appropriate for the specified operation which is relatively far away from the current time point.
And step S24, sequentially establishing a similarity calculation task between the target video and each video sequenced behind the target video.
And step S25, sequentially distributing the computing tasks to a plurality of execution paths to execute the computing tasks, and obtaining a similarity set output by the computing tasks.
And step S26, determining the video recommended to the user according to the video score and the similarity set.
Specifically, the determining the video recommended to the user according to the video score and the similarity set includes:
calculating the product of the video score and each similarity in the similarity set to obtain the prediction score of each non-target video sequenced behind the target video;
and recommending a preset number of videos to a user watching the target video from high to low according to the prediction score.
In this step, the product of the target video and each similarity in the similarity set is calculated, and the prediction score of the corresponding non-target video can be obtained. For example, if the user scores 10 points for the target video B, and { (B, A, 0.9) (B, C, 0.3) } in the similarity set, the prediction scores for the non-target video A, C are 9 points (10 × 0.9) and 3 points (10 × 0.3), respectively. And then recommending videos to the user according to the prediction scores of all the non-target videos, such as recommending videos with the highest prediction scores or recommending videos with prediction scores larger than a certain score. Further, after the prediction scores of the non-target videos are calculated, if it is detected that the user scores the non-target videos, the non-target videos are filtered, and video recommendation is performed on the non-target videos which are not scored by the user.
In the embodiment provided by the application, the prediction scores of the user on other videos are calculated by detecting the operation of the user on a certain video and the similarity between the video and other videos, and the video recommendation is performed on the user according to the calculated prediction scores, so that the video which is more in line with the selection of the user can be recommended to the user.
Example three:
fig. 3 is a block diagram of a computing device for calculating video similarity provided in an embodiment of the present application, which corresponds to the video recommendation method described in the foregoing embodiment, and only shows portions related to the embodiment of the present application for convenience of description.
Referring to fig. 3, the apparatus includes: a user number obtaining module 31, a sorting module 32, a task establishing module 33, a selecting module 34 and a calculating module 35, wherein:
a user number obtaining module 31, configured to obtain the number of users who issue a specified operation on any video in a video set, and select a target video in the video set;
the sorting module 32 is configured to perform descending order arrangement on the videos in the video set according to the number of the users to obtain a sorted set of the video set;
the task establishing module 33 is configured to sequentially establish a calculation task of similarity between the target video and each video sequenced after the target video;
and the calculating module 34 is configured to sequentially allocate the calculating tasks to a plurality of executing paths to execute the calculating tasks, so as to obtain a similarity set output by the calculating tasks.
And the recommending module 35 is configured to recommend a video to the user according to the similarity set.
Optionally, the sorting module 32 is specifically configured to:
and arranging the plurality of videos in the video set in a descending order according to the number of users sending the specified operation to each video to obtain a sequencing set of the plurality of videos.
Optionally, the recommending module 35 includes:
the recommendation module is used for acquiring the designated operation sent by the user to the target video; calculating the video score of the target video by the user according to the specified operation; and determining the video recommended to the user according to the video scoring and the similarity set.
Optionally, the recommending module 35 is specifically configured to:
calculating the product of the video score and each similarity in the similarity set to obtain the prediction score of each non-target video sequenced behind the target video;
and recommending a preset number of videos to a user watching the target video from high to low according to the prediction score.
Optionally, the recommending module 35 is further configured to:
calling an operation score corresponding to the preset specified operation;
detecting whether the designated operation sent by the user to the target video comprises multiple types;
if so, taking the highest operation score corresponding to the multiple specified operations as the video score of the target video;
and if not, taking the operation score corresponding to the specified operation as the video score of the target video.
It should be understood that, the sequence numbers of the steps in the foregoing embodiments do not imply an execution sequence, and the execution sequence of each process should be determined by its function and inherent logic, and should not constitute any limitation to the implementation process of the embodiments of the present application.
Example four:
fig. 4 is a schematic diagram of a terminal device according to an embodiment of the present application. As shown in fig. 4, the terminal device 4 of this embodiment includes: a processor 40, a memory 41 and a computer program 42 stored in said memory 41 and executable on said processor 40. The processor 40, when executing the computer program 42, implements the steps of the above-described embodiments of the video recommendation method, such as the steps S11-S15 shown in fig. 1. Alternatively, the processor 40, when executing the computer program 42, implements the functions of the modules/units in the above-mentioned device embodiments, such as the functions of the modules 31 to 35 shown in fig. 3.
Illustratively, the computer program 42 may be partitioned into one or more modules/units that are stored in the memory 41 and executed by the processor 40 to accomplish the present application. The one or more modules/units may be a series of computer program instruction segments capable of performing specific functions, which are used to describe the execution process of the computer program 42 in the terminal device 4. For example, the computer program 42 may be divided into a user number acquisition module, a ranking module, a task creation module, a calculation module, and a recommendation module, wherein:
the system comprises a user number acquisition module, a video collection processing module and a video selection module, wherein the user number acquisition module is used for acquiring the user number of users sending appointed operation to any video in the video collection and selecting a target video in the video collection;
the sorting module is used for carrying out descending order arrangement on the videos in the video set according to the number of the users to obtain a sorting set of the video set;
the task establishing module is used for sequentially establishing a calculation task of the similarity between the target video and each video sequenced behind the target video;
and the calculation module is used for sequentially distributing the calculation tasks to a plurality of execution paths to execute the calculation tasks so as to obtain a similarity set output by the calculation tasks.
And the recommending module is used for recommending videos to the user according to the similarity set.
Optionally, the sorting module is specifically configured to:
and arranging the plurality of videos in the video set in a descending order according to the number of users sending the specified operation to each video to obtain a sequencing set of the plurality of videos.
Optionally, the recommendation module includes:
the recommendation module is used for acquiring the designated operation sent by the user to the target video; calculating the video score of the target video by the user according to the specified operation; and determining the video recommended to the user according to the video scoring and the similarity set.
Optionally, the recommendation module is specifically configured to:
calculating the product of the video score and each similarity in the similarity set to obtain the prediction score of each non-target video sequenced behind the target video;
and recommending a preset number of videos to a user watching the target video from high to low according to the prediction score.
Optionally, the recommendation module is further configured to:
calling an operation score corresponding to the preset specified operation;
detecting whether the designated operation sent by the user to the target video comprises multiple types;
if so, taking the highest operation score corresponding to the multiple specified operations as the video score of the target video;
and if not, taking the operation score corresponding to the specified operation as the video score of the target video.
The terminal device 4 may be a desktop computer, a notebook, a palm computer, a cloud server, or other computing devices. The terminal device may include, but is not limited to, a processor 40, a memory 41. Those skilled in the art will appreciate that fig. 4 is merely an example of a terminal device 4 and does not constitute a limitation of terminal device 4 and may include more or fewer components than shown, or some components may be combined, or different components, e.g., the terminal device may also include input-output devices, network access devices, buses, etc.
The Processor 40 may be a Central Processing Unit (CPU), other general purpose Processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), an off-the-shelf Programmable Gate Array (FPGA) or other Programmable logic device, discrete Gate or transistor logic, discrete hardware components, etc. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The memory 41 may be an internal storage unit of the terminal device 4, such as a hard disk or a memory of the terminal device 4. The memory 41 may also be an external storage device of the terminal device 4, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash memory Card (Flash Card), and the like, which are provided on the terminal device 4. Further, the memory 41 may also include both an internal storage unit and an external storage device of the terminal device 4. The memory 41 is used for storing the computer program and other programs and data required by the terminal device. The memory 41 may also be used to temporarily store data that has been output or is to be output.
It will be apparent to those skilled in the art that, for convenience and brevity of description, only the above-mentioned division of the functional units and modules is illustrated, and in practical applications, the above-mentioned function distribution may be performed by different functional units and modules according to needs, that is, the internal structure of the apparatus is divided into different functional units or modules to perform all or part of the above-mentioned functions. Each functional unit and module in the embodiments may be integrated in one processing unit, or each unit may exist alone physically, or two or more units are integrated in one unit, and the integrated unit may be implemented in a form of hardware, or in a form of software functional unit. In addition, specific names of the functional units and modules are only for convenience of distinguishing from each other, and are not used for limiting the protection scope of the present application. The specific working processes of the units and modules in the system may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the above embodiments, the descriptions of the respective embodiments have respective emphasis, and reference may be made to the related descriptions of other embodiments for parts that are not described or illustrated in a certain embodiment.
Those of ordinary skill in the art will appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
In the embodiments provided in the present application, it should be understood that the disclosed apparatus/terminal device and method may be implemented in other ways. For example, the above-described embodiments of the apparatus/terminal device are merely illustrative, and for example, the division of the modules or units is only one logical division, and there may be other divisions when actually implemented, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated modules/units, if implemented in the form of software functional units and sold or used as separate products, may be stored in a computer readable storage medium. Based on such understanding, all or part of the flow in the method of the embodiments described above can be realized by a computer program, which can be stored in a computer-readable storage medium and can realize the steps of the embodiments of the methods described above when the computer program is executed by a processor. . Wherein the computer program comprises computer program code, which may be in the form of source code, object code, an executable file or some intermediate form, etc. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording medium, usb disk, removable hard disk, magnetic disk, optical disk, computer Memory, Read-Only Memory (ROM), Random Access Memory (RAM), electrical carrier wave signals, telecommunications signals, software distribution medium, and the like. It should be noted that the computer readable medium may contain other components which may be suitably increased or decreased as required by legislation and patent practice in jurisdictions, for example, in some jurisdictions, computer readable media which may not include electrical carrier signals and telecommunications signals in accordance with legislation and patent practice.
The above-mentioned embodiments are only used for illustrating the technical solutions of the present application, and not for limiting the same; although the present application has been described in detail with reference to the foregoing embodiments, it should be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; such modifications and substitutions do not substantially depart from the spirit and scope of the embodiments of the present application and are intended to be included within the scope of the present application.

Claims (10)

1. A video recommendation method, characterized in that the video recommendation method comprises:
acquiring the number of users who send out appointed operation to any video in a video set, and selecting a target video in the video set;
performing descending order arrangement on the videos in the video set according to the number of the users to obtain an ordered set of the video set;
sequentially establishing a calculation task of the similarity between the target video and each video sequenced behind the target video;
sequentially distributing the computing tasks to a plurality of execution paths to execute the computing tasks to obtain a similarity set output by the computing tasks, specifically, executing the similarity computing tasks which take longer time first, synchronously executing different tasks by a plurality of execution containers, and continuously distributing subsequent computing tasks when idle execution containers exist;
and recommending videos to users according to the similarity set.
2. The video recommendation method of claim 1, wherein said sorting videos in said video set according to the number of users to obtain a sorted set of said video set comprises:
and arranging the plurality of videos in the video set in a descending order according to the number of users sending the specified operation to each video to obtain a sequencing set of the plurality of videos.
3. The video recommendation method of claim 1, wherein said recommending a video to a user according to the set of similarities comprises:
acquiring appointed operation sent by a user to the target video;
calculating the video score of the target video by the user according to the specified operation;
and determining the video recommended to the user according to the video scoring and the similarity set.
4. The video recommendation method of claim 3, wherein said determining a video to recommend to said user based on said video score and said set of similarities comprises:
calculating the product of the video score and each similarity in the similarity set to obtain the prediction score of each non-target video sequenced behind the target video;
and recommending a preset number of videos to a user watching the target video from high to low according to the prediction score.
5. The video recommendation method of claim 3, wherein said calculating a video score for said target video by said user based on said specified operation comprises:
calling an operation score corresponding to the preset specified operation;
detecting whether the designated operation sent by the user to the target video comprises multiple types;
if so, taking the highest operation score corresponding to the multiple specified operations as the video score of the target video;
and if not, taking the operation score corresponding to the specified operation as the video score of the target video.
6. A video recommendation apparatus, characterized in that the video recommendation apparatus comprises:
the system comprises a user number acquisition module, a video collection processing module and a video selection module, wherein the user number acquisition module is used for acquiring the user number of users sending appointed operation to any video in the video collection and selecting a target video in the video collection;
the sorting module is used for carrying out descending order arrangement on the videos in the video set according to the number of the users to obtain a sorting set of the video set;
the task establishing module is used for sequentially establishing a calculation task of the similarity between the target video and each video sequenced behind the target video;
the computing module is used for sequentially distributing the computing tasks to a plurality of execution paths to execute the computing tasks to obtain a similarity set output by the computing tasks, specifically, the similarity computing tasks which take longer time are executed firstly, a plurality of execution containers synchronously execute different tasks, and when an idle execution container exists, the subsequent computing tasks are continuously distributed;
and the recommending module is used for recommending videos to the user according to the similarity set.
7. The video recommendation device of claim 6, wherein the ranking module is specifically configured to:
and arranging the plurality of videos in the video set in a descending order according to the number of users sending the specified operation to each video to obtain a sequencing set of the plurality of videos.
8. The video recommendation device of claim 6, wherein the recommendation module is specifically configured to include:
acquiring appointed operation sent by a user to the target video; calculating the video score of the target video by the user according to the specified operation; and determining the video recommended to the user according to the video scoring and the similarity set.
9. A terminal device comprising a memory, a processor and a computer program stored in the memory and executable on the processor, characterized in that the processor implements the steps of the method according to any of claims 1 to 5 when executing the computer program.
10. A computer-readable storage medium, in which a computer program is stored which, when being executed by a processor, carries out the steps of the method according to any one of claims 1 to 5.
CN201810937007.4A 2018-08-16 2018-08-16 Video recommendation method and device and terminal equipment Active CN110839167B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810937007.4A CN110839167B (en) 2018-08-16 2018-08-16 Video recommendation method and device and terminal equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810937007.4A CN110839167B (en) 2018-08-16 2018-08-16 Video recommendation method and device and terminal equipment

Publications (2)

Publication Number Publication Date
CN110839167A CN110839167A (en) 2020-02-25
CN110839167B true CN110839167B (en) 2021-05-28

Family

ID=69573328

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810937007.4A Active CN110839167B (en) 2018-08-16 2018-08-16 Video recommendation method and device and terminal equipment

Country Status (1)

Country Link
CN (1) CN110839167B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113688260A (en) * 2021-08-31 2021-11-23 维沃移动通信有限公司 Video recommendation method and device

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102346751A (en) * 2010-08-03 2012-02-08 阿里巴巴集团控股有限公司 Information transmitting method and equipment
CN103353872A (en) * 2013-06-03 2013-10-16 大连理工大学 Teaching resource personalization recommendation method based on neural network
CN106294462A (en) * 2015-06-01 2017-01-04 Tcl集团股份有限公司 A kind of method and system obtaining recommendation video
CN106407401A (en) * 2016-09-21 2017-02-15 乐视控股(北京)有限公司 A video recommendation method and device
CN106570008A (en) * 2015-10-09 2017-04-19 阿里巴巴集团控股有限公司 Recommendation method and device
CN107220365A (en) * 2017-06-07 2017-09-29 四川大学 Accurate commending system and method based on collaborative filtering and correlation rule parallel processing

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150193583A1 (en) * 2014-01-06 2015-07-09 Cerner Innovation, Inc. Decision Support From Disparate Clinical Sources

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102346751A (en) * 2010-08-03 2012-02-08 阿里巴巴集团控股有限公司 Information transmitting method and equipment
CN103353872A (en) * 2013-06-03 2013-10-16 大连理工大学 Teaching resource personalization recommendation method based on neural network
CN106294462A (en) * 2015-06-01 2017-01-04 Tcl集团股份有限公司 A kind of method and system obtaining recommendation video
CN106570008A (en) * 2015-10-09 2017-04-19 阿里巴巴集团控股有限公司 Recommendation method and device
CN106407401A (en) * 2016-09-21 2017-02-15 乐视控股(北京)有限公司 A video recommendation method and device
CN107220365A (en) * 2017-06-07 2017-09-29 四川大学 Accurate commending system and method based on collaborative filtering and correlation rule parallel processing

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"基于Spark的混合推荐系统";王茄力;《万方数据》;20170828;第3章第3.4.1.2节、第3.4.1.3节、第3.5.2.2节 *

Also Published As

Publication number Publication date
CN110839167A (en) 2020-02-25

Similar Documents

Publication Publication Date Title
CN110020122B (en) Video recommendation method, system and computer readable storage medium
CN106326391B (en) Multimedia resource recommendation method and device
CN110321958A (en) Training method, the video similarity of neural network model determine method
US11914639B2 (en) Multimedia resource matching method and apparatus, storage medium, and electronic apparatus
CN108304490B (en) Text-based similarity determination method and device and computer equipment
CN104053023B (en) A kind of method and device of determining video similarity
RU2637876C2 (en) Method, server device and terminal device for image delivery
CN105335369A (en) System and method for feeding back point of interest of computer user
CN112380462A (en) Method, device, server and computer readable storage medium for planning participation path
WO2017101652A1 (en) Method and apparatus for determining an access path between website pages
CN110704677A (en) Program recommendation method and device, readable storage medium and terminal equipment
CN113407773A (en) Short video intelligent recommendation method and system, electronic device and storage medium
US10762122B2 (en) Method and device for assessing quality of multimedia resource
CN112100221A (en) Information recommendation method and device, recommendation server and storage medium
JP2019091487A (en) Method of benchmarking media content based on viewer behavior
CN112199582B (en) Content recommendation method, device, equipment and medium
CN111241381A (en) Information recommendation method and device, electronic equipment and computer-readable storage medium
WO2015014260A1 (en) Data processing method and server therefor
CN110839167B (en) Video recommendation method and device and terminal equipment
CN109213933B (en) Content item recommendation method, device, equipment and storage medium
CN108647227B (en) Recommendation method and device
US10318843B2 (en) Method and apparatus for image processing and comparison based on spatial relationships between image features
WO2020026012A1 (en) Method, apparatus, device/terminal/server and storage medium for content interest collection and content data recommendation
CN111143660A (en) Intelligent recommendation method and device for knowledge platform and computer readable storage medium
CN108319721B (en) Application program recommendation method and device, user terminal and server

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
CB02 Change of applicant information

Address after: 516006 TCL technology building, No.17, Huifeng Third Road, Zhongkai high tech Zone, Huizhou City, Guangdong Province

Applicant after: TCL Technology Group Co.,Ltd.

Address before: 516006 Guangdong province Huizhou Zhongkai hi tech Development Zone No. nineteen District

Applicant before: TCL RESEARCH AMERICA Inc.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant