Video recommendation method and device, electronic equipment and medium
By constructing a semantic interest tree and using multi-level semantic code groups, the problem of difficult to effectively represent user interests based on vertical granularity in the prior art is solved, and more accurate and personalized video recommendations are achieved, improving user experience.
Patent Information
- Application Number
- CN202411877219.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-18
- Publication Date
- 2025-04-11
- Estimated Expiration
- 2044-12-18
AI Technical Summary
The existing video recommendation system is difficult to effectively represent user interests based on the vertical granularity of video, resulting in unsatisfactory results in the mining of new interests.
By obtaining the historical video data of the target object, a semantic interest tree is constructed, and combining the multi-level semantic code group of candidate videos, the recommended order between candidate videos is determined.
It improves the accuracy and personalization of video recommendations and improves the user experience.
Smart Images

Figure CN119807471A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of artificial intelligence technology, in particular to the fields of big data, intelligent recommendation, large models and deep learning, and specifically to a video recommendation method. Background Art
[0002] The video recommendation system recommends videos that users may be interested in by predicting the user's interaction with the video. The video recommendation system also needs to explore new interests of users.
[0003] At present, most of the related technical solutions explore and mine users' new interests based on the vertical category to which the video belongs. However, the concept of the vertical category to which the video belongs is broad, and a single vertical category includes various sub-fields, which makes it difficult to effectively represent user interests. Therefore, the effect of mining users' new interests based on the granularity of vertical categories is not ideal. Summary of the invention
[0004] The present disclosure provides a video recommendation method, device, electronic device and medium.
[0005] According to one aspect of the present disclosure, a video recommendation method is provided, the method comprising:
[0006] Obtain at least two candidate videos matching the target object;
[0007] Determine a first semantic code group corresponding to the candidate video; wherein the first semantic code group is used to describe at least two levels of semantics of the candidate video;
[0008] Acquire a semantic interest tree pre-constructed for the target object; wherein the semantic interest tree is constructed according to an input operation corresponding to a historical video and a second semantic code group corresponding to the historical video, the historical video being a video that the target object has browsed;
[0009] Determining a recommendation order among the candidate videos based on the first semantic code group and the semantic interest tree;
[0010] The video recommendation operation is performed according to the recommendation order.
[0011] According to another aspect of the present disclosure, a video recommendation device is provided, the device comprising:
[0012] A candidate video acquisition module, used to acquire at least two candidate videos matching the target object;
[0013] A semantic code group determination module, used to determine a first semantic code group corresponding to the candidate video; wherein the first semantic code group is used to describe at least two levels of semantics of the candidate video;
[0014] An interest tree acquisition module, used to acquire a semantic interest tree pre-constructed for the target object; wherein the semantic interest tree is constructed according to an input operation corresponding to a historical video and a second semantic code group corresponding to the historical video, the historical video being a video that the target object has browsed;
[0015] A recommendation order determination module, used for determining a recommendation order among the candidate videos based on the first semantic code group and the semantic interest tree;
[0016] The video recommendation module is used to perform a video recommendation operation according to the recommendation order.
[0017] According to another aspect of the present disclosure, there is provided an electronic device, the electronic device comprising:
[0018] at least one processor; and
[0019] a memory communicatively connected to the at least one processor; wherein,
[0020] The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the video recommendation method described in any embodiment of the present disclosure.
[0021] According to another aspect of the present disclosure, a non-transitory computer-readable storage medium storing computer instructions is provided, wherein the computer instructions are used to enable a computer to execute the video recommendation method described in any embodiment of the present disclosure.
[0022] According to another aspect of the present disclosure, a computer program product is provided, including a computer program, wherein when the computer program is executed by a processor, the video recommendation method according to any embodiment of the present disclosure is implemented.
[0023] The present disclosure effectively improves the accuracy and personalization of video recommendations, and adopting the present disclosure for video recommendations is conducive to improving user experience.
[0024] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0025] The accompanying drawings are used to better understand the present solution and do not constitute a limitation of the present disclosure.
[0026] Figure 1 is a flowchart of a video recommendation method provided according to an embodiment of the present disclosure;
[0027] Figure 2is a flowchart of a first semantic code group determination solution provided according to an embodiment of the present disclosure;
[0028] Figure 3 is a flowchart of another video recommendation method provided according to an embodiment of the present disclosure;
[0029] Figure 4 is a structural schematic diagram of a semantic interest tree provided according to an embodiment of the present disclosure;
[0030] Figure 5 is a flowchart of another video recommendation method provided according to an embodiment of the present disclosure;
[0031] Figure 6 is a structural schematic diagram of a video recommendation device provided according to an embodiment of the present disclosure;
[0032] Figure 7 A block diagram of an electronic device for implementing the video recommendation method according to an embodiment of the present disclosure. DETAILED DESCRIPTION
[0033] The following is a description of exemplary embodiments of the present disclosure in conjunction with the accompanying drawings, including various details of the embodiments of the present disclosure to facilitate understanding, which should be considered as merely exemplary. Therefore, it should be recognized by those of ordinary skill in the art that various changes and modifications may be made to the embodiments described herein without departing from the scope and spirit of the present disclosure. Similarly, for the sake of clarity and conciseness, descriptions of well-known functions and structures are omitted in the following description.
[0034] Figure 1 1 is a flowchart of a video recommendation method provided according to an embodiment of the present disclosure. The embodiment of the present disclosure can be applied to the case of recommending videos to users. The method can be executed by a video recommendation device, which can be implemented in software and / or hardware. Figure 1 As shown, the video recommendation method of this embodiment may include:
[0035] S101, obtaining at least two candidate videos matching the target object.
[0036] S102, determining a first semantic code group corresponding to the candidate video; wherein the first semantic code group is used to describe at least two levels of semantics of the candidate video.
[0037] S103, obtaining a semantic interest tree pre-constructed for the target object; wherein the semantic interest tree is constructed according to an input operation corresponding to a historical video and a second semantic code group corresponding to the historical video, and the historical video is a video that the target object has browsed.
[0038] S104: Determine a recommendation order among the candidate videos based on the first semantic code group and the semantic interest tree.
[0039] S105: Execute a video recommendation operation according to the recommendation order.
[0040] The candidate videos matching the target object refer to videos that match the interests of the target object and are to be recommended to the target object. The candidate videos may be videos that have been carefully ranked by the video recommendation system. There are at least two candidate videos, and the specific number of candidate videos is determined according to actual business needs and is not limited here. The disclosed technical solution can sort the candidate videos, such as videos carefully ranked by the video recommendation system, to recommend videos that better match the interests of the target object.
[0041] Each candidate video has a corresponding first semantic code group. The first semantic code group is the semantic representation of the candidate video at different levels of abstraction, which can describe at least two levels of semantics of the candidate video. These levels can be understood as semantic divisions from concrete to abstract, from details to the whole. Low-level semantics may correspond to specific objects, actions or scenes in the candidate video, while high-level semantics may correspond to the theme, category or emotion of the candidate video. Optionally, the first semantic code group of the candidate video is obtained by hierarchical quantization of the video content of the candidate video. The vertical category to which the candidate video belongs will be considered in the generation process of the first semantic code group, but it is not the level itself.
[0042] Among them, the semantic interest tree is constructed based on the input operations corresponding to the historical videos and the second semantic code group corresponding to the historical videos. The historical videos are videos that the target object has browsed. The historical videos are associated with input operations. The input operations refer to the interactive behaviors and feedback behaviors exhibited by the target object in the process of browsing the videos. Optionally, the input operations include: viewing operations and interactive operations. The input operations corresponding to the historical videos can reflect the target object's interest in the historical videos. The acquisition and application of user-related information such as the input operations of the target object involved in the embodiments of the present disclosure are known and agreed by the user, are in compliance with the provisions of relevant laws and regulations, and do not violate public order and good morals.
[0043] It can be understood that the semantic interest tree is dynamically adjusted and optimized according to the actual interest points of the target object, and the semantic interest tree is continuously improved with the further accumulation and analysis of input operations.
[0044] The second semantic code group is used to describe at least two levels of semantics of the historical video. The semantic interest tree constructed based on the input operation corresponding to the historical video and the second semantic code group corresponding to the historical video can reflect the semantics of interest to the target object in a hierarchical manner.
[0045] The first semantic code group describes at least two levels of semantics of the candidate video, and the semantic interest tree hierarchically describes the semantics that the target object is interested in. Optionally, the at least two levels of semantics described by the first semantic code group are matched with the multi-level semantics described by the semantic interest tree, and the recommendation order between the candidate videos is determined based on the obtained matching results. The video recommendation operation is performed according to the recommendation order.
[0046] The technical solution disclosed in the present invention constructs a semantic interest tree for the target object in advance, and uses the semantic interest tree to describe the multi-level semantics that the target object is interested in. At least two levels of semantics of the candidate video described by the first semantic code group are used, and then, based on the semantic interest tree and the first semantic code group, the recommendation order between the candidate videos is determined. The present invention fully explores the relationship between video semantics and user interests, realizes video recommendation based on multi-level semantics, effectively improves the accuracy and personalization of video recommendations, and is conducive to improving user experience.
[0047] In an optional embodiment, determining the first semantic code group corresponding to the candidate video includes: determining a semantic fusion vector of the candidate video based on a text description and a video frame description of the candidate video; calculating the semantic similarity between the semantic fusion vector and a candidate semantic vector in a preset semantic code table; wherein the preset semantic code table is trainable; based on the semantic similarity, determining a target semantic vector in the candidate semantic vector that is semantically similar to the semantic fusion vector; identifying the position of the target semantic vector in the preset semantic code table, and determining it as the first semantic codeword in the first semantic code group; calculating the residual between the semantic fusion vector and the target semantic vector, and using the residual as a new semantic fusion vector.
[0048] Among them, the text description of the candidate video refers to the text used for video semantics. The text description of the candidate video can be the video theme, content overview and video subtitles of the candidate video. The video frame description of the candidate video refers to the video frame used to describe the video semantics. The video frame description of the candidate video can be a video frame captured from the candidate video. For example, the first 5 seconds of the video frame of the candidate video are captured to determine the video frame description of the candidate video. The text description of the candidate video is in text mode, and the video frame description of the candidate video is in image mode. Optionally, the text description and video frame description of the candidate video are vectorized respectively to obtain a text semantic vector and a visual semantic vector. The text semantic vector and the visual semantic vector are fused to obtain a semantic fusion vector of the candidate video. Optionally, the text semantic vector and the visual semantic vector are spliced, and the splicing result is used as a semantic fusion vector.
[0049] The semantic fusion vector of the candidate video includes both the text semantics of the candidate video and the visual semantics of the candidate video.
[0050] The preset semantic code table is used to quantize the continuous semantic fusion vector into discrete code words. The code words are candidate semantic vectors in the preset semantic code table. The code words in the preset semantic code table are not fixed and will be optimized and updated according to the training data and the loss function of the model.
[0051] The semantic similarity is used to quantify the semantic proximity between the semantic fusion vector and the candidate semantic vector. Optionally, the semantic similarity is cosine similarity.
[0052] By calculating the semantic similarity between the semantic fusion vector and the candidate semantic vectors in the preset semantic code table, the semantic fusion vector can be mapped to the codeword in the preset semantic code table that is semantically closest. Optionally, the preset semantic code table is maintained by an RQ-VAE (Residual Quantized Variational Autoencoder) model. The target semantic vector refers to the codeword in the preset semantic code table that is semantically closest to the semantic fusion vector. The position of the target semantic vector in the preset semantic code table is identified and determined as the first semantic codeword in the first semantic code group.
[0053] The residual between the semantic fusion vector and the target semantic vector is used to represent the degree of approximation or information loss between the semantic fusion vector and the target semantic vector. By repeating the above calculation using the residual as the new semantic fusion vector, the closest codeword, i.e., the position identifier of the target semantic vector in the preset semantic code table, can be obtained multiple times. These position identifiers constitute the first semantic code group, and each position identifier corresponds to a first semantic codeword in the first semantic code group.
[0054] Figure 2 is a flowchart of a first semantic code group determination solution provided according to an embodiment of the present disclosure; see Figure 2 , a text semantic vector is generated from the text description of the candidate video, a visual semantic vector is generated from the video frame description of the candidate video, and the text semantic vector and the visual semantic vector are spliced to obtain the semantic fusion vector of the candidate video corresponding to Figure 2 Embedding in.
[0055] The semantic fusion vector is passed through a DNN encoder (Deep Neural Networks, deep neural network) Figure 2 The Encoder in is encoded to generate a new embedding vector, denoted as e∈R 1xN , N represents the embedding vector dimension. The RQ-VAE model maintains a trainable preset semantic code table C∈R MxN , corresponding to Figure 2codebook_1, codebook_2 and codebook_3 in the preset semantic code table. M represents the length of the preset semantic code table. RQ-VAE will calculate the cosine similarity with e in the M dimension of the preset semantic code table in turn, and select the codeword closest to the semantic fusion vector in the preset semantic code table based on the cosine similarity, that is, the target semantic vector, and count the target semantic vector as C i ∈R 1xN . Wherein, i represents the position identifier of the target semantic vector in the preset semantic code table.
[0056] Furthermore, through eC i The residual e1 can be obtained. Then, the above calculation is repeated using the residual e1. By repeating the calculation, the closest codeword, that is, the position identifier of the target semantic vector in the preset semantic code table can be obtained multiple times. These position identifiers constitute the first semantic code group. Figure 2 In (7,1,4), each position identifier corresponds to a first semantic codeword in the first semantic code group. RQ-VAE is pre-trained, and the MSE loss between the final embedding representation (Embedding) and the original embedding representation of the trained RQ-VAE is as small as possible. The embedding representation finally generated by RQ-VAE is obtained by adding the candidate semantic vectors corresponding to each first semantic codeword in the first semantic code group, and then decoding it through the DNN decoder (Decoder). The original embedding representation is the semantic fusion vector encoded by the DNN encoder.
[0057] The above technical solution provides a feasible solution for determining the first semantic code group, provides technical support for describing at least two levels of semantics of candidate videos, and provides data support for video recommendation based on multi-level semantics.
[0058] In an optional embodiment, the semantic node in the semantic interest tree corresponds to the second semantic codeword in the second semantic code group, and the level of the semantic node in the semantic interest tree corresponds to the position of the second semantic codeword in the second semantic code group; the interest weight associated with the semantic node is determined based on the input operation corresponding to the historical video.
[0059] The second semantic code group corresponds to the historical video, and the second semantic code group includes at least two second semantic code words, and one second semantic code word corresponds to a semantic level. The second semantic code group is used to describe at least two levels of semantics of the historical video. The position of the second semantic code word in the second semantic code group is used to describe the relative relationship between the semantic levels represented by the second semantic code word. The semantic interest tree includes at least one semantic node, and one semantic node corresponds to a semantic level. The semantic interest tree includes at least two semantic nodes, and the level of the semantic node in the semantic interest tree is determined according to the relative relationship between the semantic levels represented by the semantic nodes.
[0060] The input operation corresponding to the historical video can reflect the interest of the target object in the historical video. The interest weight is used to quantify the interest of the target object in the semantic level corresponding to the semantic node.
[0061] The semantic nodes in the semantic interest tree correspond to the second semantic codewords in the second semantic code group. Each historical video has a corresponding second semantic codeword, and the interest weight associated with the semantic node is determined based on the input operation corresponding to the historical video. The semantic interest tree represents the association between video semantics and user interests.
[0062] The above technical solution provides a feasible solution for constructing a semantic interest tree, provides technical support for hierarchically describing the semantics of interest to the target object, quantifies the association between video semantics and user interests, and provides data support for video recommendation based on multi-level semantics.
[0063] In an optional embodiment, based on the first semantic code group and the semantic interest tree, a recommendation order among the candidate videos is determined, including: determining the recommendation order based on the first semantic codeword in the first semantic code group, the semantic nodes in the semantic interest tree, and the interest weights associated with the semantic nodes.
[0064] The first semantic code group includes at least two first semantic codewords, and each first semantic codeword describes a level of semantics of the candidate video.
[0065] The semantic interest tree includes at least two semantic nodes. The semantic interest tree describes the multi-level semantics that the target object is interested in. The interest weight is used to quantify the interest of the target object in the semantic level corresponding to the semantic node.
[0066] Optionally, the first semantic codeword in the first semantic code group is matched with the semantic node in the semantic interest tree to determine the semantic node that matches the first semantic codeword, and the interest weight associated with the semantic node is combined to determine the interest level of the target object in the candidate video. Then, according to the interest level of the target object in the candidate video, the recommendation order among the candidate videos is determined.
[0067] The above technical solution provides a feasible solution for determining the recommendation order, which can be used to determine the recommendation order among candidate videos, and uses the association between video semantics and user interests for video recommendation, providing technical support for realizing video recommendation based on multi-level semantics.
[0068] Figure 3 It is a flowchart of another video recommendation method provided according to an embodiment of the present disclosure; this embodiment is an optional solution proposed on the basis of the above embodiment.
[0069] See also Figure 3 , the video recommendation method provided in this embodiment includes:
[0070] S301, in response to determining that the second semantic code group includes a second semantic codeword corresponding to the semantic node, based on the input operation, determining the interest tendency information and browsing time information of the target object for the historical video.
[0071] The second semantic code group corresponding to the historical video includes the second semantic codeword corresponding to the semantic node, indicating that the historical video hits the semantics that the target object is interested in. In other words, the semantics that the target object is interested in is browsed again by the target object. At this time, the interest weight associated with the semantic node is reconfigured.
[0072] The input operation corresponding to the historical video can reflect the target object's interest in the historical video. Among them, based on the interest tendency information, the historical video can be divided into those that the target object is interested in and those that he is not interested in. The interest tendency information can be determined based on the input operation of the target object for the historical video. Exemplarily, if the target object watches for a long time and has interactive behaviors such as likes, collections, and sharing, it can be determined that the target object is interested in the historical video. On the contrary, the target object is not interested in the historical video.
[0073] The time spent by the target object in browsing the historical video can be determined based on the browsing time information. Generally, the browsing time is proportional to the interest of the target object in the historical video.
[0074] S302: Determine a target component to be adjusted in the weight components of the interest weight based on the interest tendency information.
[0075] The target component is the weight component in the interest weight that needs to be adjusted. Optionally, the weight component of the interest weight includes a positive weight and a negative weight. Optionally, if it is determined based on the interest tendency information that the target object is interested in the historical video, the positive weight of the interest weight is determined as the target component to be adjusted, and if it is determined based on the interest tendency information that the target object is not interested in the historical video, the negative weight of the interest weight is determined as the target component to be adjusted.
[0076] S303: Determine a target step size for adjusting the target component based on the browsing duration information and the level of the semantic node corresponding to the second semantic codeword in the semantic interest tree.
[0077] The target step size refers to the step size used when reconfiguring the interest weights of semantic nodes.
[0078] The level of semantic nodes in the semantic interest tree can be understood from shallow to deep, which is from concrete to abstract, from details to the whole. The deeper the level of the semantic node in the semantic interest tree, the more abstract the semantics represented by the semantic node, and the greater the probability of belonging to high-level semantics. For semantic nodes corresponding to high-level semantics, a larger step size can be used to adjust their interest weights.
[0079] When analyzing the target object's interest in historical videos, browsing time information is also an important reference indicator. The longer the browsing time, the greater the target object's interest. For semantic nodes with corresponding browsing time, a larger step size can be used to adjust their interest weights.
[0080] S304: reconfigure the weight of the semantic node corresponding to the second semantic codeword based on the target step size and the target component.
[0081] When the target step size, target component, and semantic nodes that need to be weighted are determined, the target step size is used to reconfigure the weight of the target component associated with the semantic node.
[0082] Optionally, after the weight of the semantic node corresponding to the second semantic codeword is adjusted, the weight adjustment time of the semantic node is recorded.
[0083] The disclosed technical solution determines the weight adjustment timing as the second semantic code group including the second semantic codeword corresponding to the semantic node, that is, when the semantics of interest to the target object is browsed again by the target object. According to the interest tendency information corresponding to the historical video, the target component to be adjusted in the interest weight is determined; according to the browsing time information corresponding to the historical video and the level of the semantic node corresponding to the second semantic codeword in the semantic interest tree, the target step size used when adjusting the weight of the target component is designed, and based on the target step size and the target component, the interest weight associated with the semantic node is adjusted, so that the interest change of the target object can be quickly captured, and the semantic interest tree can be adjusted and updated in time, so that the semantic interest tree can more accurately reflect the current interest status of the target object.
[0084] In an optional embodiment, the method also includes: determining the weight values of the positive component and the negative component in the interest weight corresponding to the semantic node within a first preset time period based on the weight adjustment time corresponding to the semantic node; determining the weight difference between the weight value of the positive component and the weight value of the negative component; in response to determining that the weight difference is greater than a preset difference threshold, determining the semantic node as an invalid node; and removing the invalid node from the semantic interest tree.
[0085] The weight adjustment time refers to the time for adjusting the interest weight of the semantic node. The weight adjustment time corresponding to the semantic node can be used to determine which semantics the target object browsed within the first preset time period.
[0086] The first preset time period is a time period that is relatively close to the current time period, which is conducive to improving the timeliness of the semantic interest tree so that it can timely reflect the recent interest changes of the target object. The specific value of the first preset time period is determined according to actual business needs. For example, the first preset time period can be the last 12 hours.
[0087] The positive component and the negative component are weight components in the interest weight, corresponding to the target object's interest and disinterest in the semantics corresponding to the semantic node, respectively.
[0088] The weight values of the positive component and the negative component in the interest weight corresponding to the semantic node in the first preset time period are used to quantify the target object's interest and lack of interest in the semantics corresponding to the semantic node in the first preset time period.
[0089] The weight difference between the weight value of the positive component and the weight value of the negative component can be used to determine the recent interest change of the target object. The preset difference threshold is used to determine whether the target object is still interested in the semantics corresponding to the semantic node. The specific value of the preset difference threshold is determined according to actual business needs and is not limited here.
[0090] If the weight difference is greater than the preset difference threshold, it means that the target object's interest has changed within the first preset time period and is no longer interested in the semantics corresponding to the semantic node. In this case, the semantic node is determined as an invalid node and removed from the semantic interest tree.
[0091] Figure 4 is a structural diagram of a semantic interest tree provided according to an embodiment of the present disclosure. Figure 4 , Figure 4A semantic interest tree with four semantic levels is shown in Figure 1. The semantic nodes of the semantic interest tree include E, E_F, E_F_G and E_F_G_H. They are located at Layer 1, Layer 2, Layer 3 and Layer 4 of the semantic interest tree respectively. The values 0.8, 0.7, 0.5 and 0.3 in the semantic nodes represent the interest weights associated with E, E_F, E_F_G and E_F_G_H respectively. Figure 4 The semantic nodes shown with dotted lines in are invalid nodes and need to be removed from the semantic interest tree.
[0092] The above technical solution provides a feasible interest tree optimization solution, which is to make a difference between the weight values of the positive component and the negative component in the interest weight corresponding to the semantic node in the first preset time period, compare the obtained weight difference with the preset difference threshold, determine the invalid node from the semantic node in the semantic interest tree, and remove the invalid node from the semantic interest tree. The semantic interest tree can more accurately reflect the current interest state of the target object, improve the accuracy of the semantic interest tree, and use the semantic interest tree for subsequent video recommendation, which can recommend videos that better match the target object's interests, which is conducive to improving user experience.
[0093] In an optional embodiment, the method further includes: determining a second level corresponding to the second semantic codeword in the semantic interest tree based on the position of the second semantic codeword in the second semantic code group; content matching the semantic nodes at the second level in the semantic interest tree with the second semantic codeword; and in response to determining that the match fails, adding a semantic node corresponding to the second semantic codeword in the second level of the semantic interest tree.
[0094] The position of the second semantic codeword in the second semantic code group is used to describe the relative relationship between the semantic levels represented by the second semantic codeword. The relative relationship between the semantic levels is used to distinguish high-level semantics from low-level semantics. The number of layers of the semantic interest tree is determined based on the relative relationship between the semantic levels. If the semantic level is divided into high-level semantics, middle-level semantics and low-level semantics. Then the semantic interest tree has 3 layers, corresponding to the hierarchical semantics, middle-level semantics and low-level semantics respectively.
[0095] The second level refers to the semantic node corresponding to the second semantic codeword, and its level in the semantic interest tree. Content matching is performed on the semantic nodes and the second semantic codeword belonging to the same semantic level. A successful content match indicates that the semantics corresponding to the second semantic codeword is already in the semantic interest tree and does not need to be added repeatedly. A failed content match indicates that there is no semantics corresponding to the second semantic codeword in the semantic interest tree, and this semantics is a new point of interest for the target object. At this point, a semantic node corresponding to the second semantic codeword is added to the corresponding level of the semantic interest tree.
[0096] The above technical solution provides a feasible semantic interest tree update solution, which can be used to update the semantic nodes in the semantic interest tree. When updating the semantic nodes in the semantic interest tree, the level of the semantic nodes in the semantic interest tree and the content of the semantic nodes are comprehensively considered, thereby improving the accuracy of the semantic interest tree.
[0097] Figure 5 It is a flowchart of another video recommendation method provided according to an embodiment of the present disclosure; this embodiment is an optional solution proposed on the basis of the above embodiment.
[0098] See also Figure 5 , the video recommendation method provided in this embodiment includes:
[0099] S501: Obtain at least two candidate videos matching the target object.
[0100] S502, determining a first semantic code group corresponding to the candidate video; wherein the first semantic code group is used to describe at least two levels of semantics of the candidate video.
[0101] The first semantic code group includes at least two first semantic code words.
[0102] S503, obtaining a semantic interest tree pre-constructed for the target object; wherein the semantic interest tree is constructed according to an input operation corresponding to a historical video and a second semantic code group corresponding to the historical video, and the historical video is a video that the target object has browsed.
[0103] The second semantic code group includes at least two second semantic code words. The lengths of the first semantic code group and the second semantic code group are consistent. That is, the number of the first semantic code words and the second semantic code words is the same.
[0104] S504: Determine a first level corresponding to the first semantic codeword in the semantic interest tree according to the position of the first semantic codeword in the first semantic code group.
[0105] The position of the first semantic codeword in the first semantic code group is used to describe the relative relationship between the semantic levels represented by the first semantic codeword. The first level refers to the level of the semantic node corresponding to the first semantic codeword in the semantic interest tree.
[0106] S505: Content-match the semantic nodes at the first level in the semantic interest tree with the first semantic codeword to determine a target node matching the first semantic codeword from the semantic nodes at the first level.
[0107] Content matching is performed on the semantic nodes and the first semantic codeword belonging to the same semantic level. Successful content matching indicates that the semantics corresponding to the first semantic codeword is of interest to the target object.
[0108] The target node refers to a semantic node in the first level of the semantic interest tree that matches the first semantic codeword.
[0109] S506: Determine the recommendation weight of each of the candidate videos based on the level of the target node in the semantic interest tree and the weight values of the positive component and the negative component in the interest weight.
[0110] The level of the target node in the semantic interest tree can determine whether the semantics corresponding to the target node is high-level semantics or low-level semantics. Based on the level of the target node in the semantic interest tree, the level factor of the target node can be determined. Generally speaking, the level factor of the target node is positively correlated with the level of the target node in the semantic interest tree. The deeper the level of the target node, the larger the level factor of the target node.
[0111] Optionally, the hierarchical factor of the target node is used to weight the weight values of the positive component and the negative component in the interest weight, and the recommendation weight of the candidate video is determined based on the weighted result. Optionally, the formula is used Determine the recommendation weight of the candidate video. Among them, pos_weight+=value(tree pos , rqvae_key)*layer_weight, neg_weight+=value(tree neg , rqvae_key)*layer_weight. Here, layer_weight represents the layer factor, value(tree pos , rqvae_key) and value(tree neg , rqvae_key) represent the weight values of the positive component and negative component corresponding to the target node respectively.
[0112] S507: Determine the recommendation order based on the recommendation weight of each of the candidate videos.
[0113] S508: Execute a video recommendation operation according to the recommendation order.
[0114] Optionally, the candidate videos are sorted in descending order of recommendation weights to determine a recommendation order among the candidate videos. Optionally, candidate videos with large recommendation weights are preferentially recommended to the target object.
[0115] The disclosed technical solution not only considers the interest weights related to the input operation, but also considers the level of the target node in the semantic interest tree when determining the recommendation order among the candidate videos. Giving different weights to the semantic representations at different abstract levels is conducive to improving the accuracy of the recommendation order, and can recommend videos that better match the interests of the target object, which is conducive to improving the user experience.
[0116] In an optional embodiment, the method further includes: determining the number of times the interest weight of the target node is adjusted within a second preset time period based on the weight adjustment time corresponding to the semantic node; in response to determining that the number of adjustments is less than or equal to the preset number, determining the target node as a new exploration node; using a preset new exploration factor to correct the recommendation weight of the candidate video to obtain a correction result, and using the correction result to update the recommendation weight of the candidate video.
[0117] Among them, the weight adjustment time refers to the time for adjusting the interest weight of the semantic node. The weight adjustment time corresponding to the semantic node can be used to determine how many times the target object browses the semantics corresponding to the target node within the second preset time period. Alternatively, it can also be understood as how many times the video with the semantics corresponding to the target node is recommended to the target object within the second preset time period. Among them, the specific value of the second preset time period is determined according to actual business needs and is not limited here. Exemplarily, the second preset time period can be 14 days. Optionally, the second preset time period is used as an interest exploration cycle, and interest exploration is performed on the target object at intervals of the second preset time period.
[0118] The preset number of times is used to determine whether the target node is a new exploration node. The target node can be determined as a new exploration node only if it is less than or equal to the set number of times. The specific value of the set number of times is determined according to actual business needs and is not limited here. For example, the set number of times is 3 times.
[0119] The specific value of the new exploration factor is based on actual business needs and is not limited here. The new exploration factor is used to quantify the necessity of interest exploration of the target object for the target node. Exemplarily, the new exploration factor is set to 1.5. The preset new exploration factor is used to correct the recommendation weight of the candidate video, and the correction result is used to update the recommendation weight of the candidate video. Optionally, the preset new exploration factor is used to perform weighted processing on the recommendation weight of the candidate video, and the weighted processing result is updated as the recommendation weight of the candidate video.
[0120] The above technical solution, when determining the recommendation order between candidate videos, takes into account how many times the videos with the semantics corresponding to the target node are recommended to the target object within the second preset period. Based on this, it is determined whether it is necessary to conduct interest exploration for the target object with respect to the target node, and the user's interests are effectively explored, and videos that better match the target object's interests can be recommended to the target object, which is conducive to improving the user experience.
[0121] Figure 6 1 is a schematic diagram of a video recommendation device according to an embodiment of the present disclosure, which can be applied to recommending videos to users. The device can be implemented by software and / or hardware, and can implement the video recommendation method described in any embodiment of the present disclosure.
[0122] like Figure 6 As shown, the video recommendation device 600 includes:
[0123] A candidate video acquisition module 601 is used to acquire at least two candidate videos matching the target object;
[0124] The semantic code group determination module 602 is used to determine a first semantic code group corresponding to the candidate video; wherein the first semantic code group is used to describe at least two levels of semantics of the candidate video;
[0125] The interest tree acquisition module 603 is used to acquire a semantic interest tree pre-constructed for the target object; wherein the semantic interest tree is constructed according to an input operation corresponding to a historical video and a second semantic code group corresponding to the historical video, and the historical video is a video that the target object has browsed;
[0126] A recommendation order determination module 604, configured to determine a recommendation order among the candidate videos based on the first semantic code group and the semantic interest tree;
[0127] The video recommendation module 605 is used to perform a video recommendation operation according to the recommendation order.
[0128] The disclosed technical solution constructs a semantic interest tree for the target object in advance, and uses the semantic interest tree to describe the multi-level semantics that the target object is interested in. The at least two-level semantics of the candidate video described by the first semantic code group are used, and then the recommendation order between the candidate videos is determined based on the semantic interest tree and the first semantic code group. The disclosed technical solution fully explores the relationship between video semantics and user interests, realizes video recommendation based on multi-level semantics, effectively improves the accuracy and personalization of video recommendation, and is conducive to improving user experience.
[0129] Optionally, the semantic node in the semantic interest tree corresponds to the second semantic codeword in the second semantic code group, and the level of the semantic node in the semantic interest tree corresponds to the position of the second semantic codeword in the second semantic code group; the interest weight associated with the semantic node is determined based on the input operation corresponding to the historical video.
[0130] Optionally, the recommendation order determination module 604 is specifically configured to determine the recommendation order based on the first semantic codeword in the first semantic code group, the semantic nodes in the semantic interest tree, and the interest weights associated with the semantic nodes.
[0131] Optionally, the device 600 also includes: a tendency and duration determination module, which is used to determine the interest tendency information and browsing duration information of the target object for the historical video based on the input operation in response to determining that the second semantic code group includes a second semantic code word corresponding to the semantic node; a target component determination module, which is used to determine the target component to be adjusted in the weight component of the interest weight based on the interest tendency information; a target step determination module, which is used to determine the target step used to adjust the target component based on the browsing duration information and the level of the semantic node corresponding to the second semantic code word in the semantic interest tree; and a weight adjustment module, which is used to reconfigure the weight of the semantic node corresponding to the second semantic code word based on the target step size and the target component.
[0132] Optionally, the device 600 also includes: a weight value determination module, which is used to determine the weight values of the positive component and the negative component in the interest weight corresponding to the semantic node within a first preset time period based on the weight adjustment time corresponding to the semantic node; a weight difference determination module, which is used to determine the weight difference between the weight value of the positive component and the weight value of the negative component; an invalid node determination module, which is used to determine the semantic node as an invalid node in response to determining that the weight difference is greater than a preset difference threshold; and an invalid node removal module, which is used to remove the invalid node from the semantic interest tree.
[0133] Optionally, the recommendation order determination module 604 includes: a first level determination submodule, used to determine the first level corresponding to the first semantic codeword in the semantic interest tree according to the position of the first semantic codeword in the first semantic code group; a target node determination submodule, used to match the semantic nodes at the first level in the semantic interest tree with the first semantic codeword to determine the target node matching the first semantic codeword from the semantic nodes at the first level; a recommendation weight determination submodule, used to determine the recommendation weight of each of the candidate videos based on the level of the target node in the semantic interest tree and the weight values of the positive component and the negative component in the interest weight; a recommendation order determination submodule, used to determine the recommendation order based on the recommendation weight of each of the candidate videos.
[0134] Optionally, the device 600 also includes: an adjustment number determination module, used to determine the number of adjustments of the interest weight of the target node within a second preset time period based on the weight adjustment time corresponding to the semantic node; a new exploration node determination module, used to determine the target node as a new exploration node in response to determining that the adjustment number is less than or equal to the preset number; a recommended weight correction module, used to use a preset new exploration factor to correct the recommended weight of the candidate video to obtain a correction result, and use the correction result to update the recommended weight of the candidate video.
[0135] Optionally, the device 600 also includes: a second-level determination module, used to determine the second level corresponding to the second semantic codeword in the semantic interest tree based on the position of the second semantic codeword in the second semantic code group; a content matching module, used to content match the semantic nodes at the second level in the semantic interest tree with the second semantic codeword; and a semantic node adding module, used to add a semantic node corresponding to the second semantic codeword in the second level of the semantic interest tree in response to determining that the match fails.
[0136] Optionally, the semantic code group determination module 602 includes: a semantic fusion submodule, used to determine the semantic fusion vector of the candidate video based on the text description and video frame description of the candidate video; a semantic matching submodule, used to calculate the semantic similarity between the semantic fusion vector and the candidate semantic vector in a preset semantic code table; wherein the preset semantic code table is trainable;
[0137] A target semantic vector determination submodule is used to determine a target semantic vector that is semantically similar to the semantic fusion vector from among the candidate semantic vectors based on the semantic similarity; a semantic codeword determination submodule is used to identify the position of the target semantic vector in the preset semantic code table as the first semantic codeword in the first semantic code group; a residual determination submodule is used to calculate the residual between the semantic fusion vector and the target semantic vector, and use the residual as a new semantic fusion vector.
[0138] The video recommendation device provided in the embodiments of the present disclosure can execute the video recommendation method provided in any embodiment of the present disclosure, and has the corresponding functional modules and beneficial effects of executing the video recommendation method.
[0139] In the technical solution of the present disclosure, the collected input operations are information and data authorized by the user or fully authorized by all parties, and the collection, storage, use, processing, transmission, provision, disclosure and application of the relevant data comply with the relevant laws, regulations and standards of the relevant countries and regions, take necessary confidentiality measures, do not violate public order and good morals, and provide corresponding operation entrances for users to choose to authorize or refuse the collection, storage, use, processing, transmission, provision and disclosure of the input operations involved, which are in compliance with the provisions of relevant laws and regulations and do not violate public order and good morals.
[0140] According to an embodiment of the present disclosure, the present disclosure also provides an electronic device, a readable storage medium and a computer program product.
[0141] Figure 7 A schematic block diagram of an example electronic device 700 that can be used to implement an embodiment of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present disclosure described and / or required herein.
[0142] like Figure 7As shown, the electronic device 700 includes a computing unit 701, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 702 or a computer program loaded from a storage unit 708 into a random access memory (RAM) 703. In the RAM 703, various programs and data required for the operation of the electronic device 700 can also be stored. The computing unit 701, the ROM 702, and the RAM 703 are connected to each other via a bus 704. An input / output (I / O) interface 705 is also connected to the bus 704.
[0143] Multiple components in the electronic device 700 are connected to the I / O interface 705, including: an input unit 706, such as a keyboard, a mouse, etc.; an output unit 707, such as various types of displays, speakers, etc.; a storage unit 708, such as a disk, an optical disk, etc.; and a communication unit 709, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 709 allows the electronic device 700 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.
[0144] The computing unit 701 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the computing unit 701 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The computing unit 701 performs the various methods and processes described above, such as the video recommendation method. For example, in some embodiments, the video recommendation method may be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as a storage unit 708. In some embodiments, part or all of the computer program may be loaded and / or installed on the electronic device 700 via the ROM 702 and / or the communication unit 709. When the computer program is loaded into the RAM 703 and executed by the computing unit 701, one or more steps of the video recommendation method described above may be performed. Alternatively, in other embodiments, the computing unit 701 may be configured to perform the video recommendation method in any other appropriate manner (e.g., by means of firmware).
[0145] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
[0146] The program code for implementing the method of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable video recommendation device, so that when the program code is executed by the processor or controller, the functions / operations specified in the flow chart and / or block diagram are implemented. The program code may be executed entirely on the machine, partially on the machine, partially on the machine as a stand-alone software package and partially on a remote machine, or entirely on a remote machine or server.
[0147] In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0148] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).
[0149] The systems and techniques described herein may be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), and the Internet.
[0150] A computer system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The relationship of client and server is generated by computer programs running on respective computers and having a client-server relationship with each other. The server may be a cloud server, a server of a distributed system, or a server combined with a blockchain.
[0151] Artificial intelligence is a discipline that studies how to use computers to simulate certain human thought processes and intelligent behaviors (such as learning, reasoning, thinking, planning, etc.). It includes both hardware-level and software-level technologies. Artificial intelligence hardware technologies generally include technologies such as sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, and big data processing; artificial intelligence software technologies mainly include computer vision technology, speech recognition technology, natural language processing technology, machine learning / deep learning technology, big data processing technology, knowledge graph technology, and other major directions.
[0152] Cloud computing refers to a technology system that uses network access to elastically scalable shared physical or virtual resource pools. Resources can include servers, operating systems, networks, software, applications, and storage devices, and can be deployed and managed on demand and in a self-service manner. Cloud computing technology can provide efficient and powerful data processing capabilities for technical applications such as artificial intelligence and blockchain, as well as model training.
[0153] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps recorded in this disclosure can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved, and this document does not limit this.
[0154] The above specific implementations do not constitute a limitation on the protection scope of the present disclosure. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present disclosure shall be included in the protection scope of the present disclosure.
Claims
1. A video recommendation method, the method comprising: Obtain at least two candidate videos matching the target object; Determine a first semantic code group corresponding to the candidate video; wherein the first semantic code group is used to describe at least two levels of semantics of the candidate video; Acquire a semantic interest tree pre-constructed for the target object; wherein the semantic interest tree is constructed according to an input operation corresponding to a historical video and a second semantic code group corresponding to the historical video, the historical video being a video that the target object has browsed; Determining a recommendation order among the candidate videos based on the first semantic code group and the semantic interest tree; The video recommendation operation is performed according to the recommendation order.
2. The method according to claim 1, wherein: The semantic node in the semantic interest tree corresponds to the second semantic codeword in the second semantic code group, and the level of the semantic node in the semantic interest tree corresponds to the position of the second semantic codeword in the second semantic code group; the interest weight associated with the semantic node is determined based on the input operation corresponding to the historical video.
3. The method according to claim 2, wherein: The determining, based on the first semantic code group and the semantic interest tree, a recommendation order among the candidate videos includes: The recommendation order is determined based on the first semantic codeword in the first semantic code group, the semantic nodes in the semantic interest tree, and the interest weights associated with the semantic nodes.
4. The method according to claim 2, further comprising: In response to determining that the second semantic code group includes a second semantic codeword corresponding to the semantic node, based on the input operation, determining the interest tendency information and browsing duration information of the target object for the historical video; Based on the interest tendency information, determining a target component to be adjusted in the weight components of the interest weight; Determining a target step size adopted for adjusting the target component based on the browsing duration information and the level of the semantic node corresponding to the second semantic codeword in the semantic interest tree; Based on the target step size and the target component, a weight of the semantic node corresponding to the second semantic codeword is reconfigured.
5. The method according to claim 2, further comprising: Based on the weight adjustment time corresponding to the semantic node, determine the weight values of the positive component and the negative component in the interest weight corresponding to the semantic node within the first preset time period respectively; Determine a weight difference between the weight value of the positive component and the weight value of the negative component; In response to determining that the weight difference is greater than a preset difference threshold, determining the semantic node as a failed node; The invalid node is removed from the semantic interest tree.
6. The method according to claim 3, wherein: The determining the recommendation order based on the first semantic codeword in the first semantic code group, the semantic nodes in the semantic interest tree, and the interest weights associated with the semantic nodes includes: Determining a first level corresponding to the first semantic codeword in the semantic interest tree according to the position of the first semantic codeword in the first semantic code group; Content matching is performed between the semantic nodes at the first level in the semantic interest tree and the first semantic codeword, so as to determine a target node matching the first semantic codeword from the semantic nodes at the first level; Determine the recommendation weight of each of the candidate videos based on the level of the target node in the semantic interest tree and the weight values of the positive component and the negative component in the interest weight; The recommendation order is determined based on the recommendation weight of each of the candidate videos.
7. The method according to claim 6, further comprising: Determining the number of times the interest weight of the target node is adjusted within a second preset time period based on the weight adjustment time corresponding to the semantic node; In response to determining that the number of adjustments is less than or equal to a preset number of times, determining the target node as a new exploration node; The recommendation weight of the candidate video is modified by using a preset new exploration factor to obtain a modified result, and the recommendation weight of the candidate video is updated by using the modified result.
8. The method according to claim 2, further comprising: Determining, in the semantic interest tree, a second level corresponding to the second semantic codeword based on a position of the second semantic codeword in the second semantic code group; Content matching of the semantic nodes at the second level in the semantic interest tree with the second semantic codeword; In response to determining that the match fails, a semantic node corresponding to the second semantic codeword is added to the second level of the semantic interest tree.
9. The method according to claim 1, wherein: The determining the first semantic code group corresponding to the candidate video includes: Determining a semantic fusion vector of the candidate video based on the text description and the video frame description of the candidate video; Calculating the semantic similarity between the semantic fusion vector and the candidate semantic vector in a preset semantic code table; wherein the preset semantic code table is trainable; Based on the semantic similarity, determining a target semantic vector semantically similar to the semantic fusion vector from among the candidate semantic vectors; The position identifier of the target semantic vector in the preset semantic code table is determined as the first semantic codeword in the first semantic code group; The residual between the semantic fusion vector and the target semantic vector is calculated, and the residual is used as a new semantic fusion vector.
10. A video recommendation device, comprising: A candidate video acquisition module, used to acquire at least two candidate videos matching the target object; A semantic code group determination module, used to determine a first semantic code group corresponding to the candidate video; wherein the first semantic code group is used to describe at least two levels of semantics of the candidate video; An interest tree acquisition module, used to acquire a semantic interest tree pre-constructed for the target object; wherein the semantic interest tree is constructed according to an input operation corresponding to a historical video and a second semantic code group corresponding to the historical video, the historical video being a video that the target object has browsed; A recommendation order determination module, used for determining a recommendation order among the candidate videos based on the first semantic code group and the semantic interest tree; The video recommendation module is used to perform a video recommendation operation according to the recommendation order.
11. The device according to claim 10, wherein: The semantic node in the semantic interest tree corresponds to the second semantic codeword in the second semantic code group, and the level of the semantic node in the semantic interest tree corresponds to the position of the second semantic codeword in the second semantic code group; the interest weight associated with the semantic node is determined based on the input operation corresponding to the historical video.
12. The device according to claim 11, wherein The recommendation order determination module is specifically configured to determine the recommendation order based on the first semantic codeword in the first semantic code group, the semantic nodes in the semantic interest tree, and the interest weights associated with the semantic nodes.
13. The device according to claim 11, further comprising: a tendency and duration determination module, configured to determine, in response to determining that the second semantic code group includes a second semantic codeword corresponding to the semantic node, the interest tendency information and browsing duration information of the target object for the historical video based on the input operation; A target component determination module, configured to determine a target component to be adjusted in the weight components of the interest weight based on the interest tendency information; A target step length determination module, configured to determine a target step length for adjusting the target component based on the browsing duration information and the level of the semantic node corresponding to the second semantic codeword in the semantic interest tree; A weight adjustment module is used to reconfigure the weight of the semantic node corresponding to the second semantic codeword based on the target step size and the target component.
14. The device according to claim 11, further comprising: A weight value determination module, used to determine the weight values of the positive component and the negative component in the interest weight corresponding to the semantic node within a first preset time period based on the weight adjustment time corresponding to the semantic node; A weight difference determination module, used to determine the weight difference between the weight value of the positive component and the weight value of the negative component; A failure node determination module, configured to determine the semantic node as a failure node in response to determining that the weight difference is greater than a preset difference threshold; The invalid node removal module is used to remove the invalid node from the semantic interest tree.
15. The device according to claim 12, wherein: The recommended order determination module includes: A first level determination submodule, configured to determine a first level corresponding to the first semantic codeword in the semantic interest tree according to the position of the first semantic codeword in the first semantic code group; a target node determination submodule, configured to perform content matching between the semantic nodes at the first level in the semantic interest tree and the first semantic codeword, so as to determine a target node matching the first semantic codeword from among the semantic nodes at the first level; A recommendation weight determination submodule, used to determine the recommendation weight of each candidate video based on the level of the target node in the semantic interest tree and the weight values of the positive component and the negative component in the interest weight; The recommendation order determination submodule is used to determine the recommendation order based on the recommendation weight of each candidate video.
16. The apparatus according to claim 15, further comprising: An adjustment times determination module, used to determine the adjustment times of the interest weight of the target node within a second preset time period based on the weight adjustment time corresponding to the semantic node; A new exploration node determination module, configured to determine the target node as a new exploration node in response to determining that the number of adjustments is less than or equal to a preset number of times; The recommendation weight correction module is used to use a preset new exploration factor to correct the recommendation weight of the candidate video to obtain a correction result, and use the correction result to update the recommendation weight of the candidate video.
17. The apparatus according to claim 11, further comprising: A second level determination module, configured to determine, in the semantic interest tree, a second level corresponding to the second semantic codeword based on a position of the second semantic codeword in the second semantic code group; A content matching module, used for performing content matching between the semantic nodes at the second level in the semantic interest tree and the second semantic codeword; The semantic node adding module is used to add a semantic node corresponding to the second semantic codeword in the second level of the semantic interest tree in response to determining that the match fails.
18. The device according to claim 10, wherein: The semantic code group determination module includes: A semantic fusion submodule, used to determine a semantic fusion vector of the candidate video based on the text description and the video frame description of the candidate video; A semantic matching submodule, used to calculate the semantic similarity between the semantic fusion vector and the candidate semantic vector in a preset semantic code table; wherein the preset semantic code table is trainable; A target semantic vector determination submodule, used to determine a target semantic vector that is semantically similar to the semantic fusion vector from among the candidate semantic vectors based on the semantic similarity; A semantic codeword determination submodule, used for determining the position identifier of the target semantic vector in the preset semantic code table as the first semantic codeword in the first semantic code group; The residual determination submodule is used to calculate the residual between the semantic fusion vector and the target semantic vector, and use the residual as a new semantic fusion vector.
19. An electronic device comprising: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can perform the video recommendation method according to any one of claims 1 to 9.
20. A non-transitory computer-readable storage medium storing computer instructions, wherein: The computer instructions are used to enable a computer to execute the video recommendation method according to any one of claims 1-9.
21. A computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the computer program implements the video recommendation method according to any one of claims 1 to 9.
Citation Information
Patent Citations
Article recommendation method and device
CN113094576A
Video recommendation information determination method and device, electronic equipment and storage medium
CN113987262A
Device / Method for selecting contents and recording medium
JP2002007460A
Method and system for recommending dynamic, adaptive and non-sequentially assembled videos
US20180014053A1
Dynamically augmenting query to search for content not previously known to the user
US20210042374A1