Video pushing method and device, equipment and medium
By obtaining user historical data, determining similar users, building and decomposing video scoring matrix, calculating predictive scores and pushing videos, the problem of not being able to provide personalized recommendations in the existing technology is solved, efficient personalized video push is achieved, and user experience is improved.
Patent Information
- Application Number
- CN202311469777.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-11-06
- Publication Date
- 2025-05-06
AI Technical Summary
Existing video push methods such as popular recommendations and latest recommendations cannot provide users with personalized recommendations, resulting in a long-tail effect and poor user experience.
By obtaining the user's historical viewing video and ratings, identify similar users with similar conditions as the user, construct a video scoring matrix and perform matrix decomposition, obtain the user's feature matrix and video feature matrix, calculate the user's predicted score for unwatched videos, and push the target video.
It realizes personalized video push for users, reduces computing complexity and improves user experience.
Smart Images

Figure CN119946332A_ABST
Abstract
Description
Technical Field
[0001] The present application belongs to the field of big data processing technology, and in particular, relates to a video push method, device, equipment and medium. Background Art
[0002] At present, in some applications, videos are usually pushed to users by popular recommendations or latest recommendations. However, popular recommendations are prone to cause a long-tail effect, that is, popular content becomes more popular, and unpopular content becomes less popular. In addition, popular recommendations and latest recommendations cannot provide users with personalized recommendations, which affects user experience. Summary of the invention
[0003] The embodiments of the present application provide a video push method, apparatus, device and medium, which can provide personalized video push for users.
[0004] In a first aspect, an embodiment of the present application provides a video push method, including:
[0005] Obtaining a first video set watched by a first user, a first historical rating of each first video in the first video set by the first user, and a plurality of second video sets watched by a plurality of second users, respectively, and a second historical rating of each second video in the second video set by the second users;
[0006] Determine, from the plurality of second users, a similar user who meets similar conditions as the first user, according to the first video and the first historical score, and the second videos in each of the second video sets and the second historical score;
[0007] constructing a video rating matrix according to the third video set watched by the similar user and the second historical ratings of the similar user;
[0008] Performing matrix decomposition on the video rating matrix to obtain a user feature matrix and a video feature matrix;
[0009] Calculating, according to the user feature matrix and the video feature matrix, a predicted score of the first user for the unwatched videos in the third video set;
[0010] Determining a target video from the unwatched videos according to the predicted score;
[0011] The target video is pushed to the first user.
[0012] In a second aspect, an embodiment of the present application provides a video push device, the device comprising:
[0013] An acquisition module, configured to acquire a first video set watched by a first user, a first historical rating of each first video in the first video set by the first user, and a plurality of second video sets watched by a plurality of second users, respectively, and a second historical rating of each second video in the second video set by the second users;
[0014] A first determining module, configured to determine, from the plurality of second users, a similar user that meets a similarity condition with the first user based on the first video and the first historical score, and the second videos in each of the second video sets and the second historical score;
[0015] A construction module, configured to construct a video rating matrix according to a third video set watched by the similar user and a second historical rating of the similar user;
[0016] A decomposition module, used for performing matrix decomposition processing on the video rating matrix to obtain a user feature matrix and a video feature matrix;
[0017] A calculation module, configured to calculate, based on the user feature matrix and the video feature matrix, a predicted score of the first user for the unwatched videos in the third video set;
[0018] A second determination module, configured to determine a target video from the unwatched videos according to the predicted score;
[0019] A push module is used to push the target video to the first user.
[0020] In a third aspect, an embodiment of the present application provides an electronic device, comprising: a processor and a memory storing computer program instructions; when the processor executes the computer program instructions, the steps of the video push method described in any one of the embodiments of the first aspect are implemented.
[0021] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, on which computer program instructions are stored. When the computer program instructions are executed by a processor, the steps of the video push method described in any one of the embodiments of the first aspect are implemented.
[0022] The video push method, apparatus, device and medium of the embodiments of the present application determine similar users to the first user among the multiple second users based on the watched videos and historical ratings corresponding to the first user and the multiple second users respectively, and use the similar users to construct a video rating matrix, that is, the video rating matrix corresponds to similar users rather than all users, which can reduce the matrix dimension and thus reduce the computational complexity; then, through matrix decomposition, the predicted rating of the first user for the unwatched video is calculated based on the user feature matrix and the video feature matrix obtained by decomposing the video rating matrix, so as to determine the target video from the unwatched video based on the predicted rating, and push the target video to the first user, which can provide users with personalized video push and thus improve the user experience. BRIEF DESCRIPTION OF THE DRAWINGS
[0023] In order to more clearly illustrate the technical solution of the embodiments of the present application, the following is a brief introduction to the drawings required for use in the embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0024] Figure 1 It is a flowchart of a video push method provided in an embodiment of the present application;
[0025] Figure 2 It is a flowchart of another video push method provided in an embodiment of the present application;
[0026] Figure 3 It is a structural schematic diagram of a video push device provided in an embodiment of the present application;
[0027] Figure 4 It is a structural schematic diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0028] The features and exemplary embodiments of various aspects of the present application will be described in detail below. In order to make the purpose, technical solutions and advantages of the present application clearer, the present application will be further described in detail below in conjunction with the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain the present application, rather than to limit the present application. For those skilled in the art, the present application can be implemented without the need for some of these specific details. The following description of the embodiments is only to provide a better understanding of the present application by illustrating the examples of the present application.
[0029] It should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the statement "include..." do not exclude the presence of other identical elements in the process, method, article or device including the elements.
[0030] It should be noted that the acquisition, storage, use and processing of data in the embodiments of the present application are in compliance with the relevant provisions of national laws and regulations.
[0031] SVD (Singular Value Decomposition) is used to represent the matrix decomposition method. For a rating matrix R with m users and n items, SVD decomposes it into a singular value diagonal matrix Σ and two unitary matrices U and V, expressed as:
[0032]
[0033] Among them, the main diagonal of the diagonal matrix Σ contains singular values arranged in descending order, and the other elements are all 0, so it is also called a singular value matrix. Generally, the largest k singular values are taken to approximate the description of the matrix.
[0034] FunkSVD is a matrix decomposition method used to represent latent semantic models. FunkSVD believes that there are only a few potential features that determine user preferences. Therefore, latent factors are used to describe user preference features and item attribute features, and the original rating matrix R is decomposed into two full-rank low-dimensional feature matrices, expressed as:
[0035]
[0036] Among them, U is the user feature matrix, V is the item feature matrix, k is the number of latent factors, usually k<<m,n. The user feature matrix and item feature matrix are obtained by minimizing the difference between the true rating and the predicted rating, and then the inner product of the two feature matrices is used to predict the unknown rating. The optimization objective function is expressed as:
[0037]
[0038] where r ij is the true rating of item j by user i, is the predicted rating of user i for item j, λ(‖u i ‖ 2 +‖v j ‖ 2 ) is the regularization term to reduce overfitting, and λ is the regularization term coefficient, which is generally obtained from experience.
[0039] At present, in some applications, videos are usually pushed to users by popular recommendations or latest recommendations. However, popular recommendations are prone to cause a long-tail effect, that is, popular content becomes more popular, and unpopular content becomes less popular. In addition, popular recommendations and latest recommendations cannot provide users with personalized recommendations, which affects user experience.
[0040] In order to solve the problems of the related art, the embodiments of the present application provide a video push method, device, equipment and medium.
[0041] The video push method provided by the embodiment of the present application is described in detail below through specific embodiments and their application scenarios in conjunction with the accompanying drawings.
[0042] Figure 1 A schematic flow chart of a video push method 100 according to an embodiment of the present application is shown.
[0043] like Figure 1 As shown, the video push method 100 may specifically include the following steps:
[0044] S101, obtaining a first video set watched by a first user, a first historical rating of each first video in the first video set by the first user, and a plurality of second video sets watched by a plurality of second users, respectively, and a second historical rating of each second video in the second video set by the second users;
[0045] S102, determining a similar user who meets similar conditions as the first user from among the plurality of second users according to the first video and the first historical score, and the second video in each of the second video sets and the second historical score;
[0046] S103, constructing a video rating matrix according to the third video set watched by the similar user and the second historical ratings of the similar user;
[0047] S104, performing matrix decomposition processing on the video rating matrix to obtain a user feature matrix and a video feature matrix;
[0048] S105, calculating the predicted ratings of the first user for the unwatched videos in the third video set according to the user feature matrix and the video feature matrix;
[0049] S106, determining a target video from the unwatched videos according to the predicted score;
[0050] S107: Push the target video to the first user.
[0051] Therefore, according to the watched videos and historical ratings corresponding to the first user and multiple second users respectively, similar users to the first user are determined among the multiple second users, and a video rating matrix is constructed using the similar users, that is, the video rating matrix corresponds to similar users rather than all users, which can reduce the matrix dimension and thus reduce the computational complexity; then, through matrix decomposition, the predicted rating of the first user for the unwatched video is calculated based on the user feature matrix and the video feature matrix obtained by decomposing the video rating matrix, so as to determine the target video from the unwatched video based on the predicted rating, and push the target video to the first user, which can provide users with personalized video push, thereby improving the user experience.
[0052] The specific implementation methods of the above steps are introduced below.
[0053] It should be noted that the video format in the embodiment of the present application may include multiple forms, for example, VR (Virtual Reality) video, which is not limited in this embodiment. It can be understood that due to the rapid development of communication technology and the popularization of 5G networks, VR technology has provided a realistic foundation, and the endless emergence of VR videos has made it particularly important to implement video push.
[0054] In addition, the push method and multi-dimensional rating system of the embodiments of the present application are not only applicable to the personalized recommendation of VR videos, but also to the recommendation of various VR applications, such as VR games, VR cultural travel, etc.
[0055] In some embodiments, before step S101, historical data of the first user is obtained, and whether the first user is a new user is determined based on whether the historical data includes watched videos and historical ratings of watched videos.
[0056] In some embodiments, when the first user is a new user, since it is impossible to push videos based on their historical data, the quality score corresponding to each video is determined to randomly push videos to the first user based on the quality score.
[0057] Specifically, refer to Figure 2 , which is another video push method 200 provided by this application. Figure 2As shown, the specific implementation of the method 200 may include: in step S201, obtaining attribute feature data of multiple aspects of each video; in step S202, determining the quality score of each video according to the attribute feature data of multiple aspects; in step S203, randomly selecting a video with a quality score greater than a preset threshold as a target video; in step S204, pushing the target video to the first user. The score range may be (0,5), then the preset threshold θ 1 It can be 4.
[0058] Taking VR video as an example, the quality score of VR video can be determined by the quality of content source, content presentation quality, immersive experience quality, interactive experience quality and dizziness experience quality. Among them, the quality of content source is determined by the resolution, frame rate and bit rate of the video; the quality of content presentation is affected by the number / duration of playback freezes, the number / duration of screen distortion, and whether the audio and video are synchronized; the quality of immersive experience is determined by the sense of lag and the degree of freedom of operation; the quality of interactive experience is mainly affected by the first frame playback time and the degree of freedom of interaction; the quality of dizziness experience is determined by the refresh frequency and dynamic display delay of the head-mounted display device. In this way, the test tool can be used to collect multiple attribute feature data corresponding to each quality score, and the quality scores of each item and the total quality score can be calculated according to the pre-set VR video service evaluation.
[0059] In step S101, when the first user is not a new user, that is, when the first video set watched by the first user and the first historical rating of each first video in the first video set by the first user are obtained, multiple second video sets watched by multiple second users and the second historical rating of each second video in the second video set by the second users can be further obtained, so as to perform further data analysis and processing of the pushed videos based on the first video, the first historical rating, and the second videos in each second video set and the second historical rating.
[0060] It should be noted that the first historical rating or the second historical rating is obtained by the corresponding user based on subjective experience after watching the video, and the rating range may be (0,5).
[0061] In some embodiments, in step S102, the similarity condition is that the user similarity is greater than the preset similarity. Therefore, it is necessary to determine the user similarity, and the specific process may include: determining the number of identical videos and the total number of videos based on the first video and the second video in each of the second video sets, the number of identical videos being the number of videos that the first user has watched with each second user respectively, and the total number of videos being the sum of the number of videos that the first user has watched with a single second user; determining the set similarity of the first video set with each of the second video sets based on the number of identical videos and the total number of videos; determining the video rating similarity of the first user with each of the second users for the same watched video based on the first historical rating and each of the second historical ratings; determining the user similarity based on the set similarity and the video rating similarity.
[0062] Specifically, the user similarity can be determined according to the following formulas (4), (5) and (6):
[0063] TMJ(p,q)=Triangle(p,q)×Jaccard(p,q); (4)
[0064]
[0065]
[0066] Among them, TMJ(p,q) is used to indicate the TMJ similarity between the first user p and the second user q, that is, the user similarity; Triangle(p,q) is used to indicate the video score similarity; pj represents the first historical rating of the first user p for the watched video j; r qj represents the second historical rating of the second user q on the watched video j; n represents the number of identical videos; Jaccard (p, q) is used to indicate the set similarity; I p I represents the first video set; q Represents a second video set.
[0067] It should be noted that for TMJ (Triangle multiplying Jaccard) similarity, Triangle similarity, and Jaccard similarity, the larger the corresponding value, the higher the similarity. The TMJ similarity value range is [0,1].
[0068] In this way, the second user whose user similarity is greater than the preset similarity is determined as a similar user of the first user. 2 It can be 0.5.
[0069] Further, in some embodiments, in step S103, a video rating matrix is constructed based on the third video set watched by similar users and the second historical ratings of the similar users. It can be understood that since the video rating matrix corresponds to similar users rather than all users, the matrix dimension can be reduced, thereby reducing the computational complexity.
[0070] Specifically, the video rating matrix includes similar user IDs and each video ID in the third video set. The following Table 1 is an exemplary video rating matrix.
[0071] Table 1. Video rating matrix
[0072]
[0073] As shown in Table 1, the video rating matrix includes m similar users and n videos. Each row of the video rating matrix represents a similar user, and each column represents a video. The score in the table is the corresponding second historical score, and "-" means that the similar user has not watched the video, that is, there is no rating.
[0074] In some embodiments, in step S104, an objective function of matrix decomposition is constructed according to the video rating matrix, and then the objective function is solved using the stochastic gradient descent method to obtain a user feature matrix and a video feature matrix.
[0075] It should be understood that for matrix decomposition in related technologies, SVD requires that the original matrix must be a dense matrix, but the rating matrix is mostly a sparse matrix; although FunkSVD alleviates the problem that SVD is not suitable for sparse matrices, the huge number of users makes the calculation complexity too high; and, the latent factors in FunkSVD have no practical significance, that is, each dimension of the feature matrix has no practical meaning, resulting in the matrix decomposition model not being interpretable, which leads to the subsequent video push not being interpretable, which will reduce user trust and affect the actual recommendation effect.
[0076] Therefore, the objective function of the matrix decomposition in this embodiment includes an interpretability regularization term, and the interpretability regularization term is used to indicate minimizing the difference between the user feature matrix and the video feature matrix to perform interpretability matrix decomposition. In other words, the interpretability of the model is improved by adding an interpretability regularization term to constrain the objective function.
[0077] In a specific implementation, the user feature matrix U=0.1×rand(m,k) and the video feature matrix V=0.1×rand(n,k) are randomly initialized, wherein the number of latent factors k can be 20.
[0078] Although the latent factors in the matrix decomposition have no practical significance, when user i prefers video j, the preference characteristics of user i should be similar to the attribute characteristics of video j, and the user feature vector should be close to the video feature vector, that is, u i -v j It should be close to 0. Therefore, the difference between the user feature vector and the video feature vector can be minimized as a regular term to improve the model interpretability of matrix decomposition.
[0079] Then, the objective function can be obtained:
[0080]
[0081] Among them, u i represents the preference features of the i-th user in the user feature matrix, v j Represents the attribute features of the jth video in the video feature matrix; r ij represents the second historical rating of the i-th user on the j-th video; λ represents the regularization term coefficient; β represents the interpretability regularization term coefficient.
[0082] Specifically, for the interpretability regularization term Use the true score r ij Weighted, a higher score indicates that the video is more explainable to users.
[0083] Furthermore, using the stochastic gradient descent method, we can solve u i and v j The update formula is:
[0084]
[0085]
[0086] Among them, α is the iteration step size of gradient descent, t is the number of iterations, and the appropriate step size can obtain the local optimal values of U and V.
[0087] Therefore, in step S105, the predicted ratings of the first user for the unwatched videos in the third video set may be obtained according to the inner product of the user feature matrix and the video feature matrix.
[0088] That is, the prediction score can be calculated according to the following formula (10):
[0089]
[0090] In addition, in some embodiments, the first historical score is determined based on the first user's index scores of multiple dimensional indicators of the first video. For example, the first historical score may be an average score of the index scores of multiple dimensional indicators.
[0091] Taking VR video as an example, the indicator scores of multiple dimensional indicators of VR video may include: user experience score, picture clarity score, playback smoothness score, user immersion score, playback interaction experience score and user dizziness score, etc.
[0092] It should be noted that these multi-dimensional indicators correspond to multiple aspects of the video's attribute characteristics. For example, picture clarity corresponds to content source quality, playback smoothness corresponds to content presentation quality, user immersion corresponds to immersion experience quality, playback interaction experience corresponds to interaction experience quality, and user dizziness corresponds to dizziness experience quality.
[0093] Furthermore, in some embodiments, the dimension indicators that the first user is concerned about can be determined based on the indicator scores of the first user on multiple dimension indicators of the first video. The specific determination process may include: according to the first video and the first historical score, determining the first video in the first video set whose first historical score is greater than a preset threshold as a reference video; then, according to the indicator scores of the multiple dimension indicators of the reference video, determining the dimension indicators whose indicator scores meet the scoring conditions as the dimension indicators that the first user is concerned about. The preset threshold may be 4.
[0094] In specific implementation, an explanation reference matrix can be established based on the index scores of multiple dimensional indicators of the reference video. The following Table 2 is an exemplary explanation reference matrix.
[0095] Table 2. Interpretation reference matrix
[0096]
[0097] Thus, in some embodiments, the average score of the index ratings of the reference videos in the interpretation reference matrix on multiple dimensional indexes can be calculated, and the dimensional index corresponding to the maximum value in the average score can be selected as the dimensional index of concern to the first user.
[0098] Thus, in step S106, based on the predicted scores of the first user for the unwatched videos in the third video set, the unwatched videos with predicted scores greater than a preset threshold can be determined as candidate videos; then, based on the dimension indicators that the first user is concerned about, the target video can be determined from the candidate videos. The preset threshold can be 4.
[0099] In some embodiments, the average value of the attribute feature data corresponding to the dimension index of interest of the candidate videos may be determined, and the candidate videos whose attribute feature data is greater than or equal to the average value of the attribute feature data may be determined as target videos.
[0100] For example, if the dimension indicator of interest to the first user is "picture clarity", a video with a content source quality score greater than the average score among the candidate videos is used as the target video.
[0101] Further, in some embodiments, in step S107, push explanation information is generated based on the target video, and the target video and the push explanation information are pushed to the first user. For example, if the dimension indicator of the first user's concern is "picture clarity", the push explanation information may be: "You pay more attention to picture clarity, and the content source quality of the following videos is high".
[0102] In addition, in some embodiments, after the target video is pushed, the user's behavior data, that is, the rating data for the target video, may be further obtained to update the user rating information.
[0103] In this way, by establishing a multi-dimensional rating system, in addition to the overall rating, users can also rate videos from multiple dimensions. Compared with the related technology that only uses the user's overall rating as the basis, the multi-dimensional rating system can fully reflect the user's preferences, thereby improving the accuracy of video push results; and, pushing target videos and pushing explanation information to users can provide users with personalized, efficient, and explainable video push, thereby improving user experience.
[0104] It should be noted that the above describes some embodiments of the present application. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recorded in the claims can be performed in an order different from that in the above embodiments and still achieve the desired results. In addition, the processes depicted in the accompanying drawings do not necessarily require the specific order or continuous order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
[0105] Based on the same technical concept, corresponding to any of the above-mentioned embodiment methods, the present application also provides a video pushing device 300.
[0106] like Figure 3 As shown, the video push device 300 may include:
[0107] An acquisition module 301 is used to acquire a first video set watched by a first user, a first historical rating of each first video in the first video set by the first user, and a plurality of second video sets watched by a plurality of second users, respectively, and a second historical rating of each second video in the second video set by the second users;
[0108] A first determining module 302, configured to determine, from the plurality of second users, a similar user that meets a similarity condition with the first user based on the first video and the first historical score, and the second videos in each of the second video sets and the second historical score;
[0109] A construction module 303, configured to construct a video rating matrix according to the third video set watched by the similar user and the second historical rating of the similar user;
[0110] A decomposition module 304 is used to perform matrix decomposition processing on the video rating matrix to obtain a user feature matrix and a video feature matrix;
[0111] A calculation module 305, configured to calculate the predicted ratings of the first user for the unwatched videos in the third video set according to the user feature matrix and the video feature matrix;
[0112] A second determination module 306, configured to determine a target video from the unwatched videos according to the predicted score;
[0113] The push module 307 is used to push the target video to the first user.
[0114] In some embodiments, the similarity condition is that the user similarity is greater than a preset similarity.
[0115] In some embodiments, the first determination module 302 is specifically used to determine the number of identical videos and the total number of videos based on the first video and the second videos in each of the second video sets, the number of identical videos being the number of videos that the first user has watched together with each second user, and the total number of videos being the sum of the number of videos that the first user has watched with a single second user; determining the set similarity between the first video set and each second video set based on the number of identical videos and the total number of videos; determining the video score similarity between the first user and each second user for the same watched video based on the first historical score and each second historical score; determining the user similarity based on the set similarity and the video score similarity; determining a second user whose user similarity is greater than a preset similarity as a similar user of the first user.
[0116] In some embodiments, the first determination module 302 is further specifically configured to determine the similarity of the video ratings of the first user and each second user for the same watched video according to the following formula:
[0117]
[0118] Among them, r pj represents the first historical rating of the first user p for the watched video j; r qj represents the second historical rating of the second user q for the watched video j; n represents the number of identical videos.
[0119] In some embodiments, the decomposition module 304 is specifically used to construct an objective function of matrix decomposition according to the video rating matrix, wherein the objective function includes an interpretability regularization term, and the interpretability regularization term is used to indicate minimizing the difference between the user feature matrix and the video feature matrix; solve the objective function using a stochastic gradient descent method to obtain a user feature matrix and a video feature matrix;
[0120] The objective function is:
[0121]
[0122] Among them, u i represents the preference features of the i-th user in the user feature matrix, v j Represents the attribute features of the jth video in the video feature matrix; r ij represents the second historical rating of the i-th user on the j-th video; λ represents the regularization term coefficient; β represents the interpretability regularization term coefficient.
[0123] In some embodiments, the calculation module 305 is specifically configured to obtain the predicted ratings of the first user for the unwatched videos in the third video set according to the inner product of the user feature matrix and the video feature matrix.
[0124] In some embodiments, the first historical score is determined based on the first user's score of multiple dimensional indicators of the first video.
[0125] In some embodiments, the second determination module 306 is specifically used to determine, based on the predicted score, an unwatched video whose predicted score is greater than a preset threshold as an alternative video; determine, based on the indicator score of the first user on multiple dimensional indicators of the first video, the dimensional indicators that the first user is concerned about; and determine a target video from the alternative videos based on the dimensional indicators that the first user is concerned about.
[0126] In some embodiments, the second determination module 306 is further specifically used to determine, based on the first video and the first historical score, a first video in the first video set whose first historical score is greater than a preset threshold as a reference video; and based on the indicator scores of multiple dimensional indicators of the reference video, determine the dimensional indicator whose indicator score meets the scoring conditions as the dimensional indicator that the first user is concerned about.
[0127] In some embodiments, the push module 307 is specifically configured to generate push explanation information according to the target video; and push the target video and the push explanation information to the first user.
[0128] It should be noted that, for the convenience of description, the above device is described in various modules according to their functions. Of course, when implementing this application, the functions of each module can be implemented in the same or multiple software and / or hardware.
[0129] The device of the above embodiment is used to implement the corresponding video push method in any of the above embodiments, and has the beneficial effects of the corresponding method embodiment, which will not be repeated here.
[0130] Based on the same technical concept, corresponding to any of the above-mentioned embodiment methods, the present application also provides an electronic device.
[0131] Figure 4 A more specific schematic diagram of the hardware structure of an electronic device provided by this embodiment is shown.
[0132] The electronic device 400 may include a processor 401 and a memory 402 storing computer program instructions.
[0133] Specifically, the processor 401 may include a central processing unit (CPU), or an application specific integrated circuit (ASIC), or may be configured to implement one or more integrated circuits of the embodiments of the present application.
[0134] Memory 402 may include a large capacity memory for data or instructions. By way of example and not limitation, memory 402 may include a hard disk drive (HDD), a floppy disk drive, a flash memory, an optical disk, a magneto-optical disk, a magnetic tape, or a universal serial bus (USB) drive or a combination of two or more of these. In appropriate cases, memory 402 may include a removable or non-removable (or fixed) medium. In appropriate cases, memory 402 may be inside or outside of an integrated gateway disaster recovery device. In a specific embodiment, memory 402 is a non-volatile solid-state memory.
[0135] In certain embodiments, the memory may include a read-only memory (ROM), a random access memory (RAM), a magnetic disk storage medium device, an optical storage medium device, a flash memory device, an electrical, optical or other physical / tangible memory storage device. Thus, typically, the memory includes one or more tangible (non-transitory) computer-readable storage media (e.g., a memory device) encoded with software including computer-executable instructions, and when the software is executed (e.g., by one or more processors), it is operable to perform the operations described with reference to the method according to one aspect of the present application.
[0136] The processor 401 implements any one of the video pushing methods in the above embodiments by reading and executing computer program instructions stored in the memory 402 .
[0137] In some examples, the electronic device 400 may further include a communication interface 403 and a bus 410. Figure 4 As shown, the processor 401, the memory 402, and the communication interface 403 are connected via a bus 410 and communicate with each other.
[0138] The communication interface 403 is mainly used to implement communication between various modules, devices, units and / or equipment in the embodiments of the present application.
[0139] Bus 410 includes hardware, software or both, and the components of online data flow billing equipment are coupled to each other. For example, but not limitation, bus 410 may include accelerated graphics port (AGP) or other graphics bus, enhanced industrial standard architecture (EISA) bus, front-end bus (FSB), hypertransport (HT) interconnection, industrial standard architecture (ISA) bus, infinite bandwidth interconnection, low pin count (LPC) bus, memory bus, micro channel architecture (MCA) bus, peripheral component interconnection (PCI) bus, PCI-Express (PCI-X) bus, serial advanced technology attachment (SATA) bus, video electronics standard association local (VLB) bus or other suitable bus or two or more of these combinations. In appropriate cases, bus 410 may include one or more buses. Although the present application embodiment describes and shows a specific bus, the present application considers any suitable bus or interconnection.
[0140] Exemplarily, the electronic device 400 may be a mobile phone, a tablet computer, a laptop computer, a PDA, an in-vehicle electronic device, an ultra-mobile personal computer (UMPC), a netbook, or a personal digital assistant (PDA).
[0141] Based on the same technical concept, corresponding to any of the above-mentioned embodiments, the present application also provides a non-transitory computer-readable storage medium. Computer program instructions are stored on the computer-readable storage medium; when the computer program instructions are executed by the processor, any of the video push methods in the above-mentioned embodiments is implemented. Examples of computer-readable storage media include non-transitory computer-readable storage media, such as portable disks, hard disks, random access memories (RAM), read-only memories (ROM), erasable programmable read-only memories (EPROM or flash memory), portable compact disk read-only memories (CD-ROM), optical storage devices, magnetic storage devices, etc.
[0142] Based on the same technical concept, corresponding to any of the above-mentioned embodiments, the present application also provides a computer program product, which includes computer program instructions. In some embodiments, the computer program instructions can be executed by one or more processors of a computer so that the computer and / or the processor execute the video push method. Corresponding to the execution subject corresponding to each step in each embodiment of the video push method, the processor that executes the corresponding step may belong to the corresponding execution subject.
[0143] It should be clear that the present application is not limited to the specific configuration and processing described above and shown in the figures. For the sake of simplicity, a detailed description of the known method is omitted here. In the above embodiments, several specific steps are described and shown as examples. However, the method process of the present application is not limited to the specific steps described and shown, and those skilled in the art can make various changes, modifications and additions, or change the order between the steps after understanding the spirit of the present application.
[0144] The functional blocks shown in the above-described block diagram can be implemented as hardware, software, firmware or a combination thereof. When implemented in hardware, it can be, for example, an electronic circuit, an application-specific integrated circuit (ASIC), appropriate firmware, a plug-in, a function card, etc. When implemented in software, the elements of the present application are programs or code segments that are used to perform the required tasks. The program or code segment can be stored in a machine-readable medium, or transmitted on a transmission medium or a communication link by a data signal carried in a carrier wave. "Machine-readable medium" can include any medium capable of storing or transmitting information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, ROM, flash memory, erasable ROM (EROM), floppy disks, CD-ROMs, optical disks, hard disks, optical fiber media, radio frequency (RF) links, etc. The code segment can be downloaded via a computer network such as the Internet, an intranet, etc.
[0145] It should also be noted that the exemplary embodiments mentioned in this application describe some methods or systems based on a series of steps or devices. However, this application is not limited to the order of the above steps, that is, the steps can be performed in the order mentioned in the embodiment, or in a different order from the embodiment, or several steps can be performed simultaneously.
[0146] The above reference is according to the method of the embodiment of the present application, the flow chart of the device (system) and the computer program product and / or the block diagram described various aspects of the present application.It should be understood that each square box in the flow chart and / or the block diagram and the combination of each square box in the flow chart and / or the block diagram can be realized by computer program instructions.These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer or other programmable data processing device to produce a machine so that these instructions executed by the processor of the computer or other programmable data processing device enable the realization of the function / action specified in one or more square boxes of the flow chart and / or the block diagram.Such a processor can be but is not limited to a general-purpose processor, a special-purpose processor, a special application processor or a field programmable logic circuit.It can also be understood that each square box in the block diagram and / or the flow chart and the combination of the square boxes in the block diagram and / or the flow chart can also be realized by the dedicated hardware that performs the specified function or action, or can be realized by the combination of dedicated hardware and computer instructions.
[0147] The above is only a specific implementation of the present application. Those skilled in the art can clearly understand that for the convenience and simplicity of description, the specific working processes of the systems, modules and units described above can refer to the corresponding processes in the aforementioned method embodiments, and will not be repeated here. It should be understood that the protection scope of the present application is not limited to this. Any technician familiar with the technical field can easily think of various equivalent modifications or replacements within the technical scope disclosed in this application, and these modifications or replacements should be included in the protection scope of this application.
Claims
1. A video push method, characterized in that: include: Obtaining a first video set watched by a first user, a first historical rating of each first video in the first video set by the first user, and a plurality of second video sets watched by a plurality of second users, respectively, and a second historical rating of each second video in the second video set by the second users; Determine, from the plurality of second users, a similar user who meets similar conditions as the first user, according to the first video and the first historical score, and the second videos in each of the second video sets and the second historical score; constructing a video rating matrix according to the third video set watched by the similar user and the second historical ratings of the similar user; Performing matrix decomposition on the video rating matrix to obtain a user feature matrix and a video feature matrix; Calculating, according to the user feature matrix and the video feature matrix, a predicted score of the first user for the unwatched videos in the third video set; Determining a target video from the unwatched videos according to the predicted score; The target video is pushed to the first user.
2. The method according to claim 1, characterized in that The similarity condition is that the user similarity is greater than a preset similarity; The determining, from the plurality of second users, a similar user that meets a similar condition to the first user according to the first video and the first historical score, and the second videos in each of the second video sets and the second historical score, comprises: Determine the number of identical videos and the total number of videos according to the first video and each second video in the second video set, wherein the number of identical videos is the number of videos that the first user has watched together with each second user, and the total number of videos is the sum of the number of videos that the first user has watched with a single second user; Determine, according to the number of identical videos and the total number of videos, a set similarity between the first video set and each second video set; Determining, based on the first historical score and each second historical score, the similarity of the video scores of the first user and each second user for the same watched video; Determining user similarity based on the set similarity and the video score similarity; A second user whose user similarity is greater than a preset similarity is determined as a similar user of the first user.
3. The method according to claim 2, characterized in that The determining, based on the first historical score and each second historical score, the similarity of the video scores of the first user and each second user for the same watched video, includes: The similarity of the video ratings of the first user and each second user for the same watched video is determined according to the following formula: Among them, r pj represents the first historical rating of the first user p for the watched video j; r qj represents the second historical rating of the second user q for the watched video j; n represents the number of identical videos.
4. The method according to claim 1, characterized in that: The step of performing matrix decomposition processing on the video rating matrix to obtain a user feature matrix and a video feature matrix includes: According to the video rating matrix, construct an objective function of matrix decomposition, wherein the objective function includes an interpretability regularization term, and the interpretability regularization term is used to indicate minimizing the difference between the user feature matrix and the video feature matrix; Solving the objective function using a stochastic gradient descent method to obtain a user feature matrix and a video feature matrix; The objective function is: Among them, u i represents the preference features of the i-th user in the user feature matrix, v j Represents the attribute features of the jth video in the video feature matrix; r ij represents the second historical rating of the i-th user on the j-th video; λ represents the regularization term coefficient; β represents the interpretability regularization term coefficient.
5. The method according to claim 4, characterized in that The calculating, according to the user feature matrix and the video feature matrix, the predicted rating of the first user for the unwatched videos in the third video set comprises: According to the inner product of the user feature matrix and the video feature matrix, the predicted ratings of the first user for the unwatched videos in the third video set are obtained.
6. The method according to claim 1, characterized in that The first historical score is determined based on the indicator scores of multiple dimensional indicators of the first video by the first user.
7. The method according to claim 6, characterized in that Determining a target video from the unwatched videos according to the predicted score includes: According to the predicted score, determining the unwatched videos whose predicted score is greater than a preset threshold as candidate videos; Determining the dimensional indicators that the first user is concerned about according to the indicator scores of the first user on the multiple dimensional indicators of the first video; A target video is determined from the candidate videos according to the dimension index concerned by the first user.
8. The method according to claim 7, characterized in that The determining, according to the indicator scores of the first user on the multiple dimensional indicators of the first video, the dimensional indicators that the first user is concerned about includes: According to the first video and the first historical score, a first video in the first video set whose first historical score is greater than a preset threshold is determined as a reference video; According to the indicator scores of the multiple dimensional indicators of the reference video, the dimensional indicators whose indicator scores meet the scoring conditions are determined as the dimensional indicators concerned by the first user.
9. The method according to claim 1, characterized in that: The pushing the target video to the first user includes: Generate push explanation information according to the target video; The target video and the push explanation information are pushed to the first user.
10. A video push device, characterized in that: The device comprises: An acquisition module, configured to acquire a first video set watched by a first user, a first historical rating of each first video in the first video set by the first user, and a plurality of second video sets watched by a plurality of second users, respectively, and a second historical rating of each second video in the second video set by the second users; A first determining module, configured to determine, from the plurality of second users, a similar user that meets a similarity condition with the first user based on the first video and the first historical score, and the second videos in each of the second video sets and the second historical score; A construction module, configured to construct a video rating matrix according to a third video set watched by the similar user and a second historical rating of the similar user; A decomposition module, used for performing matrix decomposition processing on the video rating matrix to obtain a user feature matrix and a video feature matrix; A calculation module, configured to calculate, based on the user feature matrix and the video feature matrix, a predicted score of the first user for the unwatched videos in the third video set; A second determination module, configured to determine a target video from the unwatched videos according to the predicted score; A push module is used to push the target video to the first user.
11. An electronic device, characterized in that: The device comprises: a processor and a memory storing computer program instructions; when the processor calls the computer program instructions, the video pushing method according to any one of claims 1 to 9 is implemented.
12. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer program instructions, and when the computer program instructions are called by the processor, the video pushing method according to any one of claims 1 to 9 is implemented.