Method, device and apparatus for recommending content item, and storage medium

By recoding the initial feature set and neighborhood information of content items to generate the target feature set, the problem of poor recommendation performance for new content items is solved, and better recommendation results are achieved.

CN116756411BActive Publication Date: 2026-05-29ALIPAY (HANGZHOU) INFORMATION TECH CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
ALIPAY (HANGZHOU) INFORMATION TECH CO LTD
Filing Date
2023-05-10
Publication Date
2026-05-29

AI Technical Summary

Technical Problem

In existing technologies, newly added content items suffer from poor recommendation performance due to a lack of user interaction.

Method used

By obtaining the initial feature set of content items, determining neighborhood information, recoding, generating the feature set of target content items, and using the interaction behavior features of previously recommended content items to recommend new content items.

Benefits of technology

It improves the effectiveness of content item recommendations by making full use of the characteristics of the content items themselves and the features of interactive behavior, thus achieving better recommendation results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116756411B_ABST
    Figure CN116756411B_ABST
Patent Text Reader

Abstract

The specification discloses a content item recommendation method, device, equipment and storage medium, the method comprising: obtaining an initial content item feature set of a plurality of content items, the plurality of content items comprising unrecommended content items and recommended content items, the initial content item feature set comprising initial content item features of each of the content items, and the initial content item features of the recommended content items comprising interaction behavior features; determining neighborhood information of the plurality of content items based on the initial content item feature set, the neighborhood information being used to represent an association relationship between the plurality of content items; and re-encoding the plurality of content items based on the initial content item feature set of the plurality of content items and the neighborhood information to obtain a target content item feature set of the plurality of content items, the target content item feature set comprising target content item features of each of the content items, and the target content item features being used for content item recommendation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This specification relates to the field of computer technology, and in particular to a method, apparatus, device, and storage medium for recommending content items. Background Technology

[0002] With the development of computer technology, the number of content items is increasing. Content items refer to various forms of content, such as video, text, audio, and images. How to recommend suitable content items to users from this vast amount of content is a key research focus for various manufacturers.

[0003] In related technologies, content items that users may be interested in are often found from a large number of content items based on the characteristics of the content items and the interaction behavior between users and the content items, and these content items that users are interested in are recommended to users.

[0004] However, for some newly added content items, since they have not yet been recommended to users, there is no interaction between users and content items, so recommending these newly added content items to users is not very effective. Summary of the Invention

[0005] This specification provides a method, apparatus, device, and storage medium for recommending content items, which can improve the recommendation effect and recommend content items according to user preferences. The technical solution is as follows:

[0006] On the one hand, a method for recommending content items is provided, the method comprising:

[0007] Obtain an initial content item feature set for multiple content items, the multiple content items including content items that have not been recommended and content items that have been recommended, the initial content item feature set including the initial content item features of each of the content items, and the initial content item features of the recommended content items including interactive behavior features;

[0008] Based on the initial set of content item features, neighborhood information of the plurality of content items is determined, and the neighborhood information is used to represent the association relationship between the plurality of content items;

[0009] Based on the initial content item feature set of the plurality of content items and the neighborhood information, the plurality of content items are re-encoded to obtain the target content item feature set of the plurality of content items. The target content item feature set includes the target content item features of each of the content items, and the target content item features are used for content item recommendation.

[0010] On the one hand, a content item recommendation device is provided, the device comprising:

[0011] The acquisition module is used to acquire an initial content item feature set of multiple content items, the multiple content items including content items that have not been recommended and content items that have been recommended, the initial content item feature set including the initial content item features of each of the content items, and the initial content item features of the recommended content items including interactive behavior features;

[0012] The neighborhood information determination module is used to determine the neighborhood information of the plurality of content items based on the initial content item feature set, wherein the neighborhood information is used to represent the association relationship between the plurality of content items;

[0013] The recoding module is used to recode the multiple content items based on the initial content item feature set and the neighborhood information to obtain the target content item feature set of the multiple content items. The target content item feature set includes the target content item features of each content item, and the target content item features are used for content item recommendation.

[0014] In one possible implementation, the neighborhood information determination module is used to determine the index of the plurality of content items based on the plurality of initial content item features in the initial content item feature set; and to determine the neighborhood information of the plurality of content items based on the plurality of initial content features and the index of the plurality of content items.

[0015] In one possible implementation, the neighborhood information determination module is used to cluster the plurality of initial content item features to obtain a plurality of first cluster centers, each first cluster center corresponding to at least one initial content item feature; and to cluster the initial content item features corresponding to each first cluster center to obtain the index of the plurality of content items.

[0016] In one possible implementation, the neighborhood information determination module is used to randomly determine multiple initial cluster centers from the multiple initial content item features; perform multiple iterations based on the distance between the multiple initial content item features and the multiple initial cluster centers to obtain the multiple first cluster centers, wherein the distance between initial content item features corresponding to the same first cluster center is less than or equal to a first distance threshold, and the distance between initial content item features corresponding to different first cluster centers is greater than or equal to a second distance threshold, wherein the second distance threshold is greater than the first distance threshold.

[0017] In one possible implementation, the neighborhood information determination module is used to, for any one of the plurality of first cluster centers, divide the initial content item features corresponding to the first cluster center into multiple sub-features; and perform clustering based on the multiple sub-features of each initial content item feature to obtain the index of the content item corresponding to the first cluster center.

[0018] In one possible implementation, the neighborhood information determination module is used to perform clustering based on multiple sub-features of each initial content item feature to obtain multiple second cluster centers; and to determine the index of the content item corresponding to the first cluster center based on the identifiers of the multiple second cluster centers.

[0019] In one possible implementation, the neighborhood information determination module is used to determine the association relationship between the multiple content items based on the multiple initial content features and the indexes of the multiple content items; and to generate a Laplace matrix or adjacency matrix of the multiple content items based on the association relationship between the multiple content items.

[0020] In one possible implementation, the recoding module is configured to encode the initial content item feature set and the neighborhood information to obtain a reference content item feature set, the reference content item feature set including reference content item features of each of the content items; decode based on the reference content item feature set to obtain reference neighborhood information; and perform multiple iterations on the initial content item feature set based on a first difference information between the reference neighborhood information and the neighborhood information, and a second difference information between the distribution of the reference content item feature set and the standard normal distribution, to obtain a target content item feature set for the plurality of content items.

[0021] In one possible implementation, the recoding module is used to perform graph convolution on the initial content item feature set and the neighborhood information to obtain the mean and variance of the reference distribution; and to sample based on the mean and variance of the reference distribution to obtain the reference content item feature set.

[0022] In one possible implementation, the recoding module is configured to perform two graph convolutions on the initial content item feature set and the neighborhood information using a first graph convolutional layer and a second graph convolutional layer to obtain the mean of the reference distribution; and to perform two graph convolutions on the initial content item feature set and the neighborhood information using a first graph convolutional layer and a third graph convolutional layer to obtain the variance of the reference distribution, wherein the parameters of the second graph convolutional layer and the third graph convolutional layer are different.

[0023] In one possible implementation, the recoding module is used to sample according to a standard normal distribution to obtain a plurality of first sampled content item features; to perform a Hadamard product of the plurality of first sampled content item features with the variance of the reference distribution to obtain a plurality of second sampled content item features; and to add the plurality of second sampled content item features to the mean of the reference distribution to obtain the reference content item feature set.

[0024] In one possible implementation, the recoding module is used to perform a dot product operation on multiple reference content item features in the reference content item feature set to obtain the reference neighborhood information.

[0025] In one possible implementation, the device further includes:

[0026] The recommendation module is used to respond to a content item recommendation request for a target object, determine the recommendation scenario corresponding to the content item recommendation request, and recommend content items to the target object based on the scenario features of the recommendation scenario, the object features of the target object, and the target content item feature set.

[0027] On one hand, a computer device is provided, the computer device including one or more processors and one or more memories, the one or more memories storing at least one computer program, the computer program being loaded and executed by the one or more processors to implement the recommended method for the content item.

[0028] On one hand, a computer-readable storage medium is provided, wherein at least one computer program is stored therein, the computer program being loaded and executed by a processor to implement a recommended method for the content item.

[0029] On one hand, a computer program product or computer program is provided, which includes program code stored in a computer-readable storage medium, wherein a processor of a computer device reads the program code from the computer-readable storage medium and executes the program code, causing the computer device to perform the recommended method described above.

[0030] The technical solution provided in the embodiments of this specification obtains an initial set of content item features for multiple content items, including both unrecommended and recommended content items. This initial set of features includes the content item features of multiple content items. Since recommended content items have records of user interaction, their initial features include interaction behavior features. Based on this initial set of features, neighborhood information is determined for the multiple content items. This neighborhood information represents the association between the multiple content items, i.e., whether they are similar. Based on the initial set of features and the neighborhood information, the multiple content items are re-encoded to obtain target content item features. These target features enable content item recommendation. In the above process, since unrecommended content items do not have records of user interaction, the re-encoding of multiple content items utilizes the characteristics of the content items themselves and their interaction behavior features to obtain target content item features. Using these target features achieves better content item recommendation results. Attached Figure Description

[0031] To more clearly illustrate the technical solutions in the embodiments of this specification, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this specification. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0032] Figure 1 This is a schematic diagram illustrating the implementation environment of a content item recommendation method provided in the embodiments of this specification;

[0033] Figure 2 This is a flowchart illustrating a method for recommending content items provided in the embodiments of this specification;

[0034] Figure 3 This is a flowchart of another recommended method for content items provided in the embodiments of this specification;

[0035] Figure 4 This is a flowchart illustrating how to determine the characteristics of a target content item, as provided in an embodiment of this specification.

[0036] Figure 5 This is a flowchart of a recommended content item provided in the embodiments of this specification;

[0037] Figure 6 This is a schematic diagram of the structure of a content item recommendation device provided in the embodiments of this specification;

[0038] Figure 7This is a schematic diagram of the structure of a terminal provided in an embodiment of this specification;

[0039] Figure 8 This is a schematic diagram of the structure of a server provided in the embodiments of this specification. Detailed Implementation

[0040] To make the objectives, technical solutions, and advantages of this specification clearer, the embodiments of this specification will be further described in detail below with reference to the accompanying drawings.

[0041] In this manual, the terms "first," "second," etc., are used to distinguish identical or similar items with essentially the same function. It should be understood that there is no logical or temporal dependency between "first," "second," and "nth," nor are there any restrictions on quantity or execution order.

[0042] Artificial intelligence (AI) is the theory, method, technology and application system that uses digital computers or machines controlled by digital computers to simulate, extend and expand human intelligence, perceive the environment, acquire knowledge and use knowledge to obtain better results.

[0043] Machine learning is the core of artificial intelligence and the fundamental way to endow computers with intelligence. Its applications span all areas of artificial intelligence. Machine learning and deep learning typically include techniques such as artificial neural networks, belief networks, reinforcement learning, transfer learning, inductive learning, and learning by demonstration.

[0044] Manifold learning: a method in pattern recognition, whose main idea is to map high-dimensional data to low-dimensional data so that the low-dimensional data can reflect some essential structural features of the original high-dimensional data.

[0045] Graph model: A mathematical model based on network structure (points and edges).

[0046] The Laplace matrix, also known as the Kirchhoff matrix, is a type of matrix used to represent graphs.

[0047] Normalization: Mapping sequences of values ​​with different ranges to the interval (0, 1) to facilitate data processing. In some cases, normalized values ​​can be directly expressed as probabilities.

[0048] Dropout is a method for optimizing deep artificial neural networks. During the learning process, it reduces the interdependence between nodes by randomly setting some weights or outputs of the hidden layers to zero, thereby regularizing the neural network and reducing its structural risks. For example, in model training, given a vector (1, 2, 3, 4), after inputting this vector into a dropout layer, the dropout layer can randomly convert one of the numbers in the vector (1, 2, 3, 4) to 0. For example, converting 2 to 0 would change the vector to (1, 0, 3, 4).

[0049] Learning rate: Used to control the learning progress of the model. The learning rate guides the model in gradient descent on how to adjust network weights using the gradient of the loss function. If the learning rate is too large, the loss function may directly skip the global optimum, resulting in excessive loss. If the learning rate is too small, the loss function changes very slowly, greatly increasing the convergence complexity of the network and making it easy to get trapped in local minima or saddle points.

[0050] Embedded coding, mathematically speaking, represents a correspondence, that is, mapping data in space X to space Y using a function F. This function F is injective, and the mapping result preserves the structure. An injective function means that the mapped data uniquely corresponds to the original data, and preserving the structure means that the order of the original data remains the same. For example, if there are data X1 and X2 before mapping, after mapping we get Y1 corresponding to X1 and Y2 corresponding to X2. If the original data X1 > X2, then correspondingly, the mapped data Y1 > Y2. For words, this means mapping words to another space to facilitate subsequent machine learning and processing.

[0051] Attention weights represent the importance of a piece of data during training or prediction. Importance indicates the magnitude of the influence of input data on output data. Data with high importance corresponds to higher attention weights, while data with low importance corresponds to lower attention weights. The importance of data varies in different scenarios, and training the model to assign attention weights is essentially the process of determining data importance.

[0052] It should be noted that all information (including but not limited to user device information, user personal information, etc.), data (including but not limited to data used for analysis, stored data, displayed data, etc.), and signals involved in this manual are authorized by the user or fully authorized by all parties, and the collection, use, and processing of related data must comply with the relevant laws, regulations, and standards of the relevant countries and regions. For example, the object characteristics mentioned in this manual were obtained with full authorization.

[0053] Figure 1 This is a schematic diagram illustrating the implementation environment of a content item recommendation method provided in the embodiments of this specification. See also... Figure 1 The implementation environment may include terminal 110 and server 140.

[0054] Terminal 110 is connected to server 140 via a wireless or wired network. Optionally, terminal 110 may be a smartphone, tablet, laptop, desktop computer, smartwatch, etc., but is not limited to these. Terminal 110 has an application installed and running that supports the display of content items.

[0055] Server 140 is a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, Content Delivery Network (CDN), and big data and artificial intelligence platforms. Server 140 provides background services for the applications running on terminal 110, that is, it provides the service of recommending content items.

[0056] Those skilled in the art will understand that the number of terminals described above can be more or less. For example, there may be only one terminal, or there may be dozens or hundreds of terminals, or even more, in which case other terminals may also be included in the above implementation environment. This specification does not limit the number of terminals or the type of devices in the embodiments.

[0057] After introducing the implementation environment of the embodiments of this specification, the application scenarios of the embodiments of this specification will be introduced below in conjunction with the above implementation environment. In the following description, the terminal is the terminal 110 in the above implementation environment, and the server is the server 140 in the above implementation environment.

[0058] The technical solutions provided in the embodiments of this specification can be applied to scenarios that recommend various types of content items, such as recommending images, recommending audio, recommending text, or recommending image and text data.

[0059] In image recommendation scenarios, there are instances where the image library is updated, meaning new images are added to the library for recommendation. The server obtains an initial set of image features from multiple images in the library. These images include both previously recommended and unrecommended images; newly added images are those that have not been recommended before. This initial feature set includes the image features of multiple images. Since previously recommended images have user interaction records, their initial feature set includes interaction behavior features. Based on this initial feature set, the server determines the neighborhood information of these multiple images. This neighborhood information represents the relationships between the images, i.e., whether they are similar. Based on the initial feature set and the neighborhood information, the server re-encodes these multiple images to obtain target image features. These target image features are then used to achieve image recommendation. In the above processing, since there are no records of user interaction with images that have not been recommended, multiple images are re-encoded using images that have already been recommended. This fully utilizes the characteristics of the images themselves and the interactive behavior features to obtain the target image features. Using the target image features can achieve better image recommendation results.

[0060] The following section introduces the methods for image recommendation on the server.

[0061] In the process of recommending images to the target object, the scene features of the recommendation scene and the object features of the target object are determined. Based on the scene features of the recommendation scene, the object features of the target object, and the target image features of multiple images, the server recommends images to the target object.

[0062] It should be noted that the above description uses a scenario where the server recommends images as an example. Scenarios where the server recommends audio, text, or image-text information also fall under the same inventive concept, and the details will not be repeated here. Of course, the technical solutions provided in this specification can be applied not only to the scenarios mentioned above but also to scenarios where other types of content items are recommended; this specification does not limit such applications.

[0063] After introducing the implementation environment and application scenarios of the embodiments in this specification, the recommended methods for the content items provided in the embodiments of this specification will be described below. See [link to documentation]. Figure 2 Taking the server as the executing entity as an example, the method includes the following steps.

[0064] 202. The server obtains an initial content item feature set for multiple content items, including content items that have not been recommended and content items that have been recommended. The initial content item feature set includes the initial content item features of each content item, and the initial content item features of the recommended content items include interactive behavior features.

[0065] In this specification, a content item can be any one of images, audio, text, and graphic information, or a combination of at least two of these. The embodiments of this specification do not limit this. Content item features reflect the characteristics of the content item. These features include attribute features and interaction behavior features. Attribute features are the characteristics of the content item itself, while interaction behavior features are features generated after a user interacts with the content item. For example, interaction behavior includes clicking on a content item, saving it, sharing it, and marking it as uninteresting. For content items that have been recommended, the recommendation generates interaction between the user and the content item; therefore, the initial content item features of the recommended content item include attribute features and interaction behavior features. For content items that have not been recommended, since there is no interaction between the user and the content item, the initial content item features of the unrecommended content item include attribute features but do not include interaction behavior features.

[0066] 204. Based on the initial set of content item features, the server determines the neighborhood information of the multiple content items, which is used to represent the association between the multiple content items.

[0067] The relationships between multiple content items indicate whether a connection exists between any two content items. This connection includes not only between any two unrecommended content items, but also between any two recommended content items, and between any unrecommended and any recommended content item. Multiple content items can be represented using a graph network, where each content item corresponds to a node. Node attributes include initial content item features. Connections between nodes in the graph network represent these relationships. For example, a connection between any two nodes indicates a relationship, while the absence of a connection indicates no relationship. In this case, neighborhood information reflects the connection status between nodes in the graph network.

[0068] 206. Based on the initial content item feature set and the neighborhood information of the multiple content items, the server re-encodes the multiple content items to obtain the target content item feature set of the multiple content items. The target content item feature set includes the target content item features of each content item. The target content item features are used for content item recommendation.

[0069] Recoding is used to redefine the features of content items, making the redefined target content item features more suitable for content item recommendation.

[0070] The technical solution provided in the embodiments of this specification obtains an initial set of content item features for multiple content items, including both unrecommended and recommended content items. This initial set of features includes the content item features of multiple content items. Since recommended content items have records of user interaction, their initial features include interaction behavior features. Based on this initial set of features, neighborhood information is determined for the multiple content items. This neighborhood information represents the association between the multiple content items, i.e., whether they are similar. Based on the initial set of features and the neighborhood information, the multiple content items are re-encoded to obtain target content item features. These target features enable content item recommendation. In the above process, since unrecommended content items do not have records of user interaction, the re-encoding of multiple content items utilizes the characteristics of the content items themselves and their interaction behavior features to obtain target content item features. Using these target features achieves better content item recommendation results.

[0071] Steps 202-206 above are a simplified explanation of the recommended method for content items provided in the embodiments of this specification. The recommended method for content items provided in the embodiments of this specification will be explained more clearly below with some examples. See [link to documentation]. Figure 3 Taking the server as the executing entity as an example, the method includes the following steps.

[0072] 302. The server obtains an initial content item feature set for multiple content items, including content items that have not been recommended and content items that have been recommended. The initial content item feature set includes the initial content item features of each content item, and the initial content item features of the recommended content items include interactive behavior features.

[0073] In this specification, a content item can be any one of images, audio, text, and graphic information, or a combination of at least two of these. The embodiments of this specification do not limit this. Content item features reflect the characteristics of the content item. These features include attribute features and interaction behavior features. Attribute features are the characteristics of the content item itself, while interaction behavior features are features generated after a user interacts with the content item. For example, interaction behavior includes clicking on a content item, saving it, sharing it, and marking it as uninteresting. For recommended content items, the recommendation generates interaction between the user and the content item; therefore, the initial content item features of recommended content items include both attribute features and interaction behavior features. For unrecommended content items, since there is no interaction between the user and the content item, the initial content item features of unrecommended content items include attribute features but not interaction behavior features. The initial content item features are also known as embedding features.

[0074] In one possible implementation, the server obtains initial content item features of multiple previously recommended content items. The server then extracts features from multiple previously unrecommended content items to obtain initial content item features for those unrecommended content items.

[0075] Among them, multiple unrecommended content items can be either newly uploaded content items or historically uploaded content items that have never been recommended. This specification does not limit this in the embodiments.

[0076] In this implementation, since recommended content items use content item features, for content items that have already been recommended, the server can directly obtain the content item features as the initial content item features without having to extract features again, which is highly efficient.

[0077] For example, the server obtains the attribute features and interaction behavior information of multiple recommended content items. The interaction behavior information is used to record the interaction behaviors between the user and the recommended content items. In some embodiments, the attribute features and interaction behavior information of the recommended content items are stored in a content item database. The server extracts features from the interaction behavior information of the multiple recommended content items to obtain the interaction behavior features of the multiple recommended content items. The server concatenates the attribute features and interaction behavior features of the multiple recommended content items to obtain the initial content item features of the multiple recommended content items. The server extracts features from multiple unrecommended content items to obtain the attribute features of the multiple unrecommended content items, which are also the initial content item features of the multiple unrecommended content items.

[0078] To illustrate the above example more clearly, the following section explains the method for extracting features from the interaction behavior information of multiple recommended content items to obtain the interaction behavior features of multiple recommended content items.

[0079] In some embodiments, for any one of a plurality of recommended content items, the server performs one of convolution, fully connected, and attention encoding on the interactive behavior information of the content item to obtain the interactive behavior features of the content item.

[0080] In addition, the example above describes the extraction of features from multiple unrecommended content items to obtain the attribute features of these unrecommended content items.

[0081] In some embodiments, for any one of a plurality of unrecommended content items, the server performs convolution, fully connected, and attention encoding on the content item to obtain the attribute features of the content item.

[0082] 304. The server determines the index of the multiple content items based on the multiple initial content item features in the initial content item feature set.

[0083] The index of content items is used to quickly find content items, thereby enabling fast searching between content items in the process of determining the relationship between different content items.

[0084] In one possible implementation, the server clusters the multiple initial content item features to obtain multiple first cluster centers, each first cluster center corresponding to at least one initial content item feature. The server then clusters the initial content item features corresponding to each first cluster center to obtain the indexes of the multiple content items.

[0085] The purpose of clustering multiple initial content item features is to classify them into multiple cluster groups. Each cluster group includes at least one initial content item feature, and the distances between the initial content item features in each cluster group satisfy a first distance condition. Correspondingly, each cluster group corresponds to a first cluster center, and the distances between the first cluster center and other initial content item features in a cluster group satisfy a second distance condition. In some embodiments, the first cluster center of a cluster group can be used to represent the initial content item features in that cluster. The first cluster center is an initial content item feature. The first cluster center has the same dimension as the initial content item feature.

[0086] In this implementation, multiple initial content item features are first clustered to obtain multiple first cluster centers, achieving the first classification of these initial content item features. Then, clustering is performed on the initial content item features corresponding to each first cluster center, which is a second classification of these initial content item features, resulting in indexes for multiple content items, facilitating subsequent content item retrieval.

[0087] To provide a clearer explanation of the above embodiments, the following description will be divided into two parts.

[0088] The first part involves the server clustering the features of the multiple initial content items to obtain multiple first cluster centers.

[0089] In one possible implementation, the server randomly determines multiple initial cluster centers from the multiple initial content item features. The server performs multiple iterations based on the distance between the multiple initial content item features and the multiple initial cluster centers to obtain multiple first cluster centers. The distance between initial content item features corresponding to the same first cluster center is less than or equal to a first distance threshold, and the distance between initial content item features corresponding to different first cluster centers is greater than or equal to a second distance threshold, where the second distance threshold is greater than the first distance threshold.

[0090] The number of initial cluster centers is set by technicians according to actual conditions, such as 512, 1024, or 2048, and this specification embodiment does not limit this. The number of the multiple first cluster centers is the same as the number of multiple initial cluster centers. The distance between initial content item features is used to reflect the similarity between initial content item features. The smaller the distance between two initial content item features, the higher the similarity between the two initial content item features; the larger the distance between two initial content item features, the lower the similarity between the two initial content item features. If the distance between initial content item features corresponding to the same first cluster center is less than or equal to a first distance threshold, it indicates that the initial content item features corresponding to the same first cluster center have a high similarity. If the distance between initial content item features corresponding to different first cluster centers is greater than or equal to a second distance threshold, it indicates that the initial content item features corresponding to different first cluster centers have a low similarity. The first distance threshold and the second distance threshold are set by technicians according to actual conditions, and this specification embodiment does not limit this. In some embodiments, the similarity between initial content item features is the cosine similarity or cosine distance between the initial content item features.

[0091] For example, the server randomly determines multiple initial cluster centers from the multiple initial content item features. The server determines the distance between the multiple initial content item features and the multiple initial cluster centers. Based on the distance between the multiple initial content item features and the multiple cluster centers, the server divides the multiple initial content item features into multiple initial clusters, with one initial cluster corresponding to one initial cluster center. The server determines multiple first reference cluster centers corresponding to each of the multiple initial clusters, where the first reference cluster center of each cluster is the average feature of the initial content item features within that cluster. The server determines the distance between the multiple initial content item features and the multiple first reference cluster centers. Based on the distance between the multiple initial content item features and the multiple first reference cluster centers, the server divides the multiple initial content item features into multiple first clusters, with one first cluster corresponding to one first reference cluster center. The server determines multiple second reference cluster centers corresponding to each of the multiple first clusters. The server repeatedly executes the above steps of dividing the initial content item features and determining the reference cluster center until the multiple first cluster centers are obtained. The distance between the initial content item features corresponding to the same first cluster center is less than or equal to a first distance threshold, and the distance between the initial content item features corresponding to different first cluster centers is greater than or equal to a second distance threshold, which is greater than the first distance threshold.

[0092] For example, the server randomly determines multiple initial cluster centers from the multiple initial content item features. The server determines the similarity between the multiple initial content item features and the multiple initial cluster centers. For any initial cluster center among the multiple initial cluster centers, the server assigns the initial content item features among the multiple initial content item features whose similarity to the initial cluster center is greater than or equal to a first similarity threshold to the initial cluster center to the initial cluster corresponding to that initial cluster center. The first similarity threshold is set by a technician according to the actual situation, and this specification does not limit this. For any initial cluster among the multiple initial clusters, the server determines the average feature of the multiple initial content item features in the initial cluster, and the average feature is the first reference cluster center corresponding to the initial cluster. The server determines the similarity between the multiple initial content item features and the multiple first reference cluster centers. Based on the distance between the multiple initial content item features and the multiple first reference cluster centers, the server divides the multiple initial content item features into multiple first clusters, with one first cluster corresponding to one first reference cluster center. For any first cluster among the multiple first clusters, the server determines the average feature of the multiple initial content item features in the first cluster, and the average feature is the second reference cluster center corresponding to the first cluster. The server repeats the steps of dividing the clusters and determining the reference cluster centers until the multiple first cluster centers are obtained.

[0093] The second part involves the server performing clustering on the initial content item features corresponding to each of the first cluster centers to obtain the indexes of these multiple content items.

[0094] In one possible implementation, for any one of the plurality of first cluster centers, the server divides the initial content item features corresponding to that first cluster center into multiple sub-features. The server performs clustering based on the multiple sub-features of each initial content item feature to obtain the index of the content item corresponding to that first cluster center.

[0095] In this context, for any initial content item feature, dividing it into multiple sub-features means dividing a high-dimensional content item feature into multiple low-dimensional sub-features. Concatenating these sub-features yields the final initial content item feature. Clustering based on these sub-features means clustering based on sub-features at the same positions within each initial content item feature. For example, taking three initial content item features as an example, dividing them into three sub-features and then clustering them involves clustering the first, second, and third sub-features of each initial content item.

[0096] In this implementation, the initial content item features are divided into multiple sub-features, and then clustering is performed on the sub-features to achieve secondary clustering of the initial content item features. The resulting index can quickly locate the corresponding content item.

[0097] To provide a clearer explanation of the above embodiments, the following description will be divided into two parts.

[0098] A. For any one of the multiple first cluster centers, the server divides the initial content item features corresponding to that first cluster center into multiple sub-features.

[0099] In one possible implementation, for any initial content item feature corresponding to any first cluster center among the plurality of first cluster centers, the server divides the initial content item feature into a target number of sub-features. The target number is set by the technician according to the actual situation, such as 4, 6 or 8. This specification does not limit this embodiment.

[0100] For example, if the initial content item feature is a 128-dimensional feature vector, the server will divide the initial content item feature into 4 sub-features, each of which is a 32-dimensional feature vector.

[0101] B. The server performs clustering based on multiple sub-features of each initial content item feature to obtain the index of the content item corresponding to the first cluster center.

[0102] In one possible implementation, the server performs clustering based on multiple sub-features of each initial content item feature to obtain multiple second cluster centers. The server then determines the index of the content item corresponding to the first cluster center based on the identifiers of these multiple second cluster centers.

[0103] The second cluster center is a cluster center obtained by clustering based on sub-features, and the dimension of the second cluster center is the same as that of the sub-features. The identifier of the second cluster center is used to represent the corresponding second cluster center. The index of any content item corresponding to any first cluster center includes the identifiers of multiple second cluster centers. The number of identifiers of multiple second cluster centers included in the index of the content item is the same as the number of sub-features into which the initial content item features of the content item are divided.

[0104] In this implementation, clustering can be performed based on multiple sub-features of each initial content item to obtain multiple second cluster centers. The index of the content item corresponding to the first cluster center is determined based on the identifiers of the multiple second cluster centers, and the corresponding content item can be found based on the index, which is highly efficient.

[0105] For example, if the server divides the initial content item features into four sub-features, the server will cluster the first, second, third, and fourth sub-features of each initial content item feature, obtaining multiple second cluster centers corresponding to the first, second, third, and fourth sub-features. The server will then concatenate the identifiers of the second cluster centers corresponding to the four sub-features of each initial content item feature to obtain the index of the content item corresponding to each initial content item feature.

[0106] 306. Based on the multiple initial content features and the indexes of the multiple content items, the server determines the neighborhood information of the multiple content items, which is used to represent the association relationship between the multiple content items.

[0107] The relationships between multiple content items indicate whether a connection exists between any two content items. This connection includes not only between any two unrecommended content items, but also between any two recommended content items, and between any unrecommended and any recommended content item. Multiple content items can be represented using a graph network, where each content item corresponds to a node. Node attributes include initial content item features. Connections between nodes in the graph network represent these relationships. For example, a connection between any two nodes indicates a relationship, while the absence of a connection indicates no relationship. In this case, neighborhood information reflects the connection status between nodes in the graph network.

[0108] In one possible implementation, the server determines the relationships between the multiple content items based on the multiple initial content features and the indexes of the multiple content items. Based on these relationships, the server generates a Laplace matrix or adjacency matrix for the multiple content items.

[0109] In this context, both the Laplace matrix and the adjacency matrix of the multiple content items can be considered as neighborhood information. Taking the Laplace matrix as an example, each row of the Laplace matrix represents the association between the first content item and the other content items. For instance, if there is an association between the first and second content items, the number in the first row and second column of the Laplace matrix is ​​the first value, such as 1. If there is an association between the first and third content items, the number in the first row and third column is the second value, such as 0. Compared to the adjacency matrix, the Laplace matrix has a first value on its diagonal, used to represent self-joins among the content items. Content items with the same index are considered to belong to the same cluster, indicating a high degree of similarity between them.

[0110] In this implementation, neighborhood information can be quickly determined using initial content item features and indexes, resulting in high efficiency.

[0111] For example, for any one of the multiple content items, the server identifies several candidate content items with the same index as the content item. The server determines the distances between the initial content item features of the content item and the initial content item features of the multiple candidate content items. Based on the distances between the initial content item features of the content item and the initial content item features of the multiple candidate content items, the server determines the distance information corresponding to the content item. The distance information corresponding to multiple content items constitutes the neighborhood information.

[0112] For example, for any one of the multiple content items, the server determines multiple candidate content items with the same index as the content item. The server determines the similarity between the initial content item features of the content item and the initial content item features of the multiple candidate content items. The server determines the reference content items whose similarity between their initial content item features and the initial content item features of the content item is greater than or equal to a third similarity threshold as target reference content items. Alternatively, the server determines the N reference content items with the highest similarity between their initial content item features and the initial content item features of the content item as target reference content items, where N is a positive integer. The third similarity threshold and N are determined by a technician based on the actual situation, and this specification does not limit this. The server sets the distance information between the content item and the target reference content item to a first value, and sets the distance information between the content item and other content items to a second value, thereby obtaining the distance information corresponding to the content item. The distance information corresponding to the content item can reflect the association relationship between the content item and other content items among the multiple content items.

[0113] It should be noted that the above description is based on the example of determining the distance information corresponding to a content item. The method by which the server determines the distance information of other content items belongs to the same inventive concept as described above, and the implementation process will not be repeated here.

[0114] 308. Based on the initial content item feature set and the neighborhood information, the server re-encodes the multiple content items to obtain the target content item feature set of the multiple content items. The target content item feature set includes the target content item features of each content item, and the target content item features are used for content item recommendation.

[0115] Recoding is used to redefine the features of content items, making the redefined target content item features more suitable for content item recommendation.

[0116] In one possible implementation, the server encodes the initial content item feature set and the neighborhood information to obtain a reference content item feature set, which includes reference content item features for each content item. The server decodes the reference content item feature set to obtain reference neighborhood information. Based on the reference neighborhood information and a first difference between the two neighborhood information, and a second difference between the distribution of the reference content item feature set and a standard normal distribution, the server iterates through the initial content item feature set multiple times to obtain a target content item feature set for the multiple content items.

[0117] The initial content item feature set and the neighborhood information are encoded to adjust the initial content item features using the neighborhood information. The reference neighborhood information is determined based on the adjusted initial content item features. Since recoding should not alter the relationships between content items, the first difference information between the reference neighborhood information and the current neighborhood information is used as a constraint to control the iteration to generate target content item features that do not change the relationships between content items and have stronger expressive power. Subsequent content item recommendations can then be made based on these target content item features. Furthermore, the regenerated reference content item feature set is ideally designed to conform to a standard normal distribution; using a standard normal distribution as a constraint improves the accuracy of the determined target content item features. Multiple initial content item features in the initial content item feature set correspond one-to-one with multiple reference content item features in the reference content item feature set, and multiple reference content item features in the reference content item feature set correspond one-to-one with multiple target content item features in the target content item set.

[0118] In this implementation, the initial content item feature set and neighborhood information are encoded to obtain the reference content item feature set. The first difference information and the second difference information are used as constraints to iterate and obtain the target content item feature set for content item recommendation.

[0119] To provide a clearer explanation of the above embodiments, the following description will be divided into several parts.

[0120] The first part involves the server encoding the initial content item feature set and the neighborhood information to obtain the reference content item feature set.

[0121] In one possible implementation, the server performs a graph convolution on the initial set of content item features and the neighborhood information to obtain the mean and variance of a reference distribution. The server then samples based on the mean and variance of the reference distribution to obtain the reference set of content item features.

[0122] Since multiple content items can form a graph network, performing graph convolution on these multiple content items is equivalent to performing graph convolution on the initial set of content item features and the neighborhood information. The reference distribution is the distribution when sampling the features of the reference content items.

[0123] In this implementation, by performing graph convolution on the initial content item feature set and the neighborhood information, the mean and variance of the reference distribution can be obtained. By sampling using the mean and variance of the reference distribution, the reference content item feature set can be obtained, thus realizing the first round of recoding of the initial content item features.

[0124] To provide a clearer explanation of the above embodiments, the following description will be divided into several parts.

[0125] A. The server performs graph convolution on the initial set of content item features and the neighborhood information to obtain the mean and variance of the reference distribution.

[0126] In one possible implementation, the server performs two graph convolutions on the initial content item feature set and the neighborhood information using a first graph convolutional layer and a second graph convolutional layer to obtain the mean of the reference distribution. The server then performs two graph convolutions on the initial content item feature set and the neighborhood information using the first graph convolutional layer and a third graph convolutional layer to obtain the variance of the reference distribution, wherein the parameters of the second and third graph convolutional layers are different.

[0127] In some embodiments, the server uses a first encoder and a second encoder to perform graph convolution on the initial content item feature set and the neighborhood information to obtain the mean and variance of the reference distribution. The first encoder includes the first graph convolution layer and the second graph convolution layer, and the second encoder includes the first graph convolution layer and the third graph convolution layer.

[0128] For example, the server performs graph convolution on the initial set of content item features and the neighborhood information using the following formula (1) to obtain the mean and variance of the reference distribution.

[0129]

[0130] Where μ is the mean of the reference distribution, σ is the variance of the reference distribution, logσ can be positive or negative, σ is a positive number, X is the initial set of content item features, A is the neighborhood information, which is the Laplacian matrix or adjacency matrix of multiple content items, and GCN μ As the first encoder, GCN σ This is the second encoder. D is the degree matrix, and W0 and W1 are learnable parameters that are updated during multiple iterations.

[0131] B. The server samples based on the mean and variance of the reference distribution to obtain the feature set of the reference content items.

[0132] In one possible implementation, the server samples according to a standard normal distribution to obtain multiple first sampled content item features. The server performs a Hadamard product of these multiple first sampled content item features with the variance of the reference distribution to obtain multiple second sampled content item features. The server adds these multiple second sampled content item features to the mean of the reference distribution to obtain the reference content item feature set.

[0133] The Hadamard product is a type of matrix operation. If A = (a ij ) and B = (b ij Let c be two matrices of the same order. ij =a ij ×b ij Then the matrix C = (c ij ) is the Hadamard product of A and B, also known as the basic product.

[0134] For example, the server determines the characteristics of the reference content item using the following formula (2).

[0135] z=μ+∈σ (2)

[0136] Where z is the reference content item feature, ∈ is the first sampled content item feature, and ∈ conforms to the standard normal distribution.

[0137] The second part involves the server decoding the reference content item feature set to obtain reference neighborhood information.

[0138] In one possible implementation, the server performs a dot product operation on multiple reference content item features in the reference content item feature set to obtain the reference neighborhood information.

[0139] For example, the server performs a dot product operation and normalizes the reference content item feature matrix corresponding to the reference content item feature set and the transpose of the reference content item feature matrix to obtain the reference neighborhood information. Here, the reference content item feature matrix includes multiple reference content item features in the reference content item feature set. For example, the server determines the reference neighborhood information using the following formula (3).

[0140]

[0141] in, For reference neighborhood information, s() is a normalization function, such as the Sigmoid function, and Z is the feature matrix of the reference content item, which includes multiple z.

[0142] The third part involves the server performing multiple iterations on the initial content item feature set based on the reference neighborhood information and the first difference information between the neighborhood information, as well as the second difference information between the distribution of the reference content item feature set and the standard normal distribution, to obtain the target content item feature set of the multiple content items.

[0143] The purpose of multiple iterations is to make the determined reference neighborhood information as close as possible to the target neighborhood information, and to make the distribution of the reference content item features in the determined reference content item feature set as close as possible to a standard normal distribution, that is, to make the first difference information and the second difference information as small as possible. Under the condition of satisfying the iteration conditions, the obtained reference content item feature set is also the target content item feature set. The iteration cutoff condition can be either reaching a preset number of iterations or the first difference information and the second difference information converging to a preset value; this embodiment does not limit this.

[0144] Through step 308 above, multiple content items are recoded, making their features denser. This allows the subsequent recommendation model to learn better from both previously recommended and unrecommended content items. In other words, recoding doesn't use the original content item features but instead fits and generates a similar feature distribution. This means previously recommended content items are also recoded, and the dimensionality used is generally low, significantly reducing the sparsity of content item features. This allows the subsequent recommendation model to better utilize historical information and converge faster. Furthermore, since unrecommended content items lack interactive behavior features, recommending them is equivalent to a cold start. The recoding process, independent of interactive behavior features, integrates information from previously recommended content items into the target content item features of unrecommended items, thus achieving a smoother cold start.

[0145] The following will combine Figure 4 Steps 304-308 above will be explained. See [link / reference] Figure 4The server determines the neighborhood information of multiple content items based on their initial content item features. For recommended content items, the neighborhood information is determined using attribute features from their initial content item features. For unrecommended content items, since there is no interaction information, their initial content item features are simply their attribute features, and the neighborhood information is determined directly using these initial features. During the recoding of the initial content item features and neighborhood information, for recommended content items, the recoding process uses attribute features plus interaction features as initial content item features; for unrecommended content items, the recoding process uses attribute features as initial content item features. In the recoding process, the server performs graph convolution on the initial content item feature set and the neighborhood information to obtain the mean and variance of a reference distribution. The server then samples based on the mean and variance of the reference distribution to obtain a reference content item feature set. The server decodes the reference content item feature set to obtain reference neighborhood information. Based on the first difference information between the reference neighborhood information and the neighborhood information, and the second difference information between the distribution of the reference content item feature set and the standard normal distribution, the server iterates the initial content item feature set multiple times to obtain the target content item feature set.

[0146] 310. In response to a content item recommendation request for a target object, the server determines the recommendation scenario corresponding to the content item recommendation request.

[0147] The "recommendation scenario" describes the recommendation method. For the same content item, different recommendation scenarios may use different recommendation methods. For example, for an image, in a news recommendation scenario, the image corresponds to the first recommendation method, while in a product recommendation scenario, the image corresponds to the second recommendation method. This recommendation scenario is set by technical personnel according to actual circumstances, and this specification does not limit it in the embodiments.

[0148] In one possible implementation, in response to a content item recommendation request for a target object, the server determines a recommendation scenario identifier carried in the content item recommendation request. Based on the recommendation scenario identifier, the server determines the recommendation scenario corresponding to the content item recommendation request.

[0149] 312. Based on the scene features of the recommended scenario, the object features of the target object, and the feature set of the target content item, the server recommends content items to the target object.

[0150] Among them, scene features are used to represent the characteristics of the recommendation scene and are an abstract expression of the recommendation scene. The object features of the target object are used to represent the characteristics of the target object and are an abstract expression of the target object.

[0151] In one possible implementation, the server inputs the scene features of the recommended scenario, the object features of the target object, and the feature set of the target content item into a content item recommendation model. The model then recalls and ranks multiple content items to obtain the target content item. The server recommends the target content item to the target object.

[0152] For example, see Figure 5 The server inputs the context features of the recommended scenario, the object features of the target object, and the feature set of the target content item into the content item recommendation model. The content item recommendation model recalls and sorts multiple content items to obtain a list of content items to be recommended, which includes the target content item.

[0153] All the above-mentioned optional technical solutions can be combined in any way to form the optional embodiments of this specification, and will not be described in detail here.

[0154] The technical solution provided in the embodiments of this specification obtains an initial set of content item features for multiple content items, including both unrecommended and recommended content items. This initial set of features includes the content item features of multiple content items. Since recommended content items have records of user interaction, their initial features include interaction behavior features. Based on this initial set of features, neighborhood information is determined for the multiple content items. This neighborhood information represents the association between the multiple content items, i.e., whether they are similar. Based on the initial set of features and the neighborhood information, the multiple content items are re-encoded to obtain target content item features. These target features enable content item recommendation. In the above process, since unrecommended content items do not have records of user interaction, the re-encoding of multiple content items utilizes the characteristics of the content items themselves and their interaction behavior features to obtain target content item features. Using these target features achieves better content item recommendation results.

[0155] Figure 6 This is a schematic diagram of the structure of a content item recommendation device provided in the embodiments of this specification. See also... Figure 6 The device includes: an acquisition module 601, a neighborhood information determination module 602, and a recoding module 603.

[0156] The acquisition module 601 is used to acquire an initial content item feature set of multiple content items, including content items that have not been recommended and content items that have been recommended. The initial content item feature set includes the initial content item features of each content item, and the initial content item features of the recommended content items include interactive behavior features.

[0157] The neighborhood information determination module 602 is used to determine the neighborhood information of the multiple content items based on the initial content item feature set. The neighborhood information is used to represent the association relationship between the multiple content items.

[0158] The recoding module 603 is used to recode the multiple content items based on the initial content item feature set and the neighborhood information to obtain the target content item feature set of the multiple content items. The target content item feature set includes the target content item features of each content item, and the target content item features are used for content item recommendation.

[0159] In one possible implementation, the neighborhood information determination module 602 is used to determine the indexes of the plurality of content items based on the plurality of initial content item features in the initial content item feature set. Based on the plurality of initial content features and the indexes of the plurality of content items, the neighborhood information of the plurality of content items is determined.

[0160] In one possible implementation, the neighborhood information determination module 602 is used to cluster the multiple initial content item features to obtain multiple first cluster centers, each of the first cluster centers corresponding to at least one initial content item feature. Clustering is then performed on the initial content item features corresponding to each of the first cluster centers to obtain the indexes of the multiple content items.

[0161] In one possible implementation, the neighborhood information determination module 602 is used to randomly determine multiple initial cluster centers from the multiple initial content item features. Based on the distances between the multiple initial content item features and the multiple initial cluster centers, multiple iterations are performed to obtain multiple first cluster centers. The distance between initial content item features corresponding to the same first cluster center is less than or equal to a first distance threshold, and the distance between initial content item features corresponding to different first cluster centers is greater than or equal to a second distance threshold, where the second distance threshold is greater than the first distance threshold.

[0162] In one possible implementation, the neighborhood information determination module 602 is used to segment the initial content item features corresponding to any one of the plurality of first cluster centers into multiple sub-features. Clustering is then performed based on the multiple sub-features of each initial content item feature to obtain the index of the content item corresponding to the first cluster center.

[0163] In one possible implementation, the neighborhood information determination module 602 is used to perform clustering based on multiple sub-features of each initial content item feature to obtain multiple second cluster centers. Based on the identifiers of the multiple second cluster centers, the index of the content item corresponding to the first cluster center is determined.

[0164] In one possible implementation, the neighborhood information determination module 602 is used to determine the association relationships between the multiple content items based on the multiple initial content features and the indices of the multiple content items. Based on the association relationships between the multiple content items, a Laplace matrix or adjacency matrix of the multiple content items is generated.

[0165] In one possible implementation, the recoding module 603 is used to encode the initial content item feature set and the neighborhood information to obtain a reference content item feature set, which includes reference content item features for each content item. Based on the reference content item feature set, decoding is performed to obtain reference neighborhood information. Based on the reference neighborhood information and a first difference between the neighborhood information and the reference neighborhood information, and a second difference between the distribution of the reference content item feature set and the standard normal distribution, multiple iterations are performed on the initial content item feature set to obtain the target content item feature set for the plurality of content items.

[0166] In one possible implementation, the recoding module 603 is used to perform graph convolution on the initial content item feature set and the neighborhood information to obtain the mean and variance of a reference distribution. Sampling is then performed based on the mean and variance of the reference distribution to obtain the reference content item feature set.

[0167] In one possible implementation, the recoding module 603 is used to perform two graph convolutions on the initial content item feature set and the neighborhood information using a first graph convolutional layer and a second graph convolutional layer to obtain the mean of the reference distribution. The variance of the reference distribution is obtained by performing two graph convolutions on the initial content item feature set and the neighborhood information using the first graph convolutional layer and a third graph convolutional layer, wherein the parameters of the second graph convolutional layer and the third graph convolutional layer are different.

[0168] In one possible implementation, the recoding module 603 is used to sample according to a standard normal distribution to obtain a plurality of first sampled content item features. The plurality of first sampled content item features are then multiplied by the Hadamard product of the variance of the reference distribution to obtain a plurality of second sampled content item features. Finally, the plurality of second sampled content item features are added to the mean of the reference distribution to obtain the reference content item feature set.

[0169] In one possible implementation, the recoding module 603 is used to perform a dot product operation on multiple reference content item features in the reference content item feature set to obtain the reference neighborhood information.

[0170] In one possible implementation, the device further includes:

[0171] The recommendation module, in response to a content item recommendation request for a target object, determines the recommendation scenario corresponding to the content item recommendation request. Based on the scenario features of the recommendation scenario, the object features of the target object, and the feature set of the target content item, it recommends content items to the target object.

[0172] It should be noted that the content item recommendation device provided in the above embodiments is only illustrated by the division of the above functional modules. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the computer device can be divided into different functional modules to complete all or part of the functions described above. In addition, the content item recommendation device and the content item recommendation method embodiments provided in the above embodiments belong to the same concept, and their specific implementation process can be found in the method embodiments, which will not be repeated here.

[0173] The technical solution provided in the embodiments of this specification obtains an initial set of content item features for multiple content items, including both unrecommended and recommended content items. This initial set of features includes the content item features of multiple content items. Since recommended content items have records of user interaction, their initial features include interaction behavior features. Based on this initial set of features, neighborhood information is determined for the multiple content items. This neighborhood information represents the association between the multiple content items, i.e., whether they are similar. Based on the initial set of features and the neighborhood information, the multiple content items are re-encoded to obtain target content item features. These target features enable content item recommendation. In the above process, since unrecommended content items do not have records of user interaction, the re-encoding of multiple content items utilizes the characteristics of the content items themselves and their interaction behavior features to obtain target content item features. Using these target features achieves better content item recommendation results.

[0174] This specification provides a computer device for performing the above-described method. This computer device can be implemented as a terminal or a server. The structure of a terminal will be described below:

[0175] Figure 7 This is a schematic diagram of the structure of a terminal provided in an embodiment of this specification. The terminal 700 can be a smartphone, tablet computer, laptop computer, or desktop computer. The terminal 700 may also be referred to as user equipment, portable terminal, laptop terminal, desktop terminal, or other names.

[0176] Typically, terminal 700 includes one or more processors 701 and one or more memories 702.

[0177] Processor 701 may include one or more processing cores, such as a quad-core processor, an octa-core processor, etc. Processor 701 may be implemented using at least one hardware form selected from DSP (Digital Signal Processing), FPGA (Field-Programmable Gate Array), and PLA (Programmable Logic Array). Processor 701 may also include a main processor and a coprocessor. The main processor, also known as a CPU (Central Processing Unit), is used to process data in the wake-up state; the coprocessor is a low-power processor used to process data in the standby state. In some embodiments, processor 701 may integrate a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content to be displayed on the screen. In some embodiments, processor 701 may also include an AI (Artificial Intelligence) processor, which is used to handle computational operations related to machine learning.

[0178] Memory 702 may include one or more computer-readable storage media, which may be non-transitory. Memory 702 may also include high-speed random access memory and non-volatile memory, such as one or more disk storage devices or flash memory devices. In some embodiments, the non-transitory computer-readable storage media in memory 702 are used to store at least one computer program for execution by processor 701 to implement the recommended methods of the content items provided in the method embodiments of this specification.

[0179] In some embodiments, the terminal 700 may also optionally include a peripheral device interface 703 and at least one peripheral device. The processor 701, memory 702, and peripheral device interface 703 can be connected via a bus or signal line. Each peripheral device can be connected to the peripheral device interface 703 via a bus, signal line, or circuit board. Specifically, the peripheral device includes at least one of the following: a radio frequency circuit 704, a display screen 705, a camera assembly 706, an audio circuit 707, and a power supply 708.

[0180] Peripheral device interface 703 can be used to connect at least one I / O (Input / Output) related peripheral device to processor 701 and memory 702. In some embodiments, processor 701, memory 702 and peripheral device interface 703 are integrated on the same chip or circuit board; in some other embodiments, any one or two of processor 701, memory 702 and peripheral device interface 703 can be implemented on separate chips or circuit boards, which is not limited in this embodiment.

[0181] The radio frequency (RF) circuit 704 is used to receive and transmit RF (Radio Frequency) signals, also known as electromagnetic signals. The RF circuit 704 communicates with communication networks and other communication devices via electromagnetic signals. The RF circuit 704 converts electrical signals into electromagnetic signals for transmission, or converts received electromagnetic signals back into electrical signals. Optionally, the RF circuit 704 includes: an antenna system, an RF transceiver, one or more amplifiers, a tuner, an oscillator, a digital signal processor, a codec chipset, a user identity module card, etc.

[0182] Display screen 705 is used to display a user interface (UI). This UI may include graphics, text, icons, video, and any combination thereof. When display screen 705 is a touch display screen, it also has the ability to collect touch signals on or above its surface. These touch signals can be input as control signals to processor 701 for processing. In this case, display screen 705 can also be used to provide virtual buttons and / or a virtual keyboard, also known as soft buttons and / or a soft keyboard.

[0183] The camera assembly 706 is used to capture images or videos. Optionally, the camera assembly 706 includes a front-facing camera and a rear-facing camera. Typically, the front-facing camera is located on the front panel of the terminal, and the rear-facing camera is located on the back of the terminal.

[0184] The audio circuit 707 may include a microphone and a speaker. The microphone is used to collect sound waves from the user and the environment, and convert the sound waves into electrical signals that are input to the processor 701 for processing, or input to the radio frequency circuit 704 to realize voice communication.

[0185] The power supply 708 is used to supply power to the various components in the terminal 700. The power supply 708 can be AC ​​power, DC power, a disposable battery, or a rechargeable battery.

[0186] In some embodiments, the terminal 700 further includes one or more sensors 709. The one or more sensors 709 include, but are not limited to: an accelerometer 710, a gyroscope 711, a pressure sensor 712, an optical sensor 713, and a proximity sensor 714.

[0187] Accelerometer 710 can detect the magnitude of acceleration on the three coordinate axes of a coordinate system established with terminal 700.

[0188] The gyroscope sensor 711 can detect the orientation and rotation angle of the terminal 700. The gyroscope sensor 711 can work in conjunction with the accelerometer sensor 710 to collect the user's 3D movements on the terminal 700.

[0189] The pressure sensor 712 can be installed on the side bezel of the terminal 700 and / or on the lower layer of the display screen 705. When the pressure sensor 712 is installed on the side bezel of the terminal 700, it can detect the user's grip signal on the terminal 700, and the processor 701 can perform left / right hand recognition or quick operation based on the grip signal collected by the pressure sensor 712. When the pressure sensor 712 is installed on the lower layer of the display screen 705, the processor 701 can control the operable controls on the UI interface based on the user's pressure operation on the display screen 705.

[0190] An optical sensor 713 is used to collect ambient light intensity. In one embodiment, the processor 701 can control the display brightness of the display screen 705 based on the ambient light intensity collected by the optical sensor 713.

[0191] The proximity sensor 714 is used to detect the distance between the user and the front of the terminal 700.

[0192] Those skilled in the art will understand that Figure 7 The structure shown does not constitute a limitation on terminal 700, and may include more or fewer components than shown, or combine certain components, or use different component arrangements.

[0193] The aforementioned computer equipment can also be implemented as a server. The structure of a server is described below:

[0194] Figure 8This is a schematic diagram of a server structure provided in an embodiment of this specification. The server 800 can vary significantly due to differences in configuration or performance. It may include one or more Central Processing Units (CPUs) 801 and one or more memories 802. The one or more memories 802 store at least one computer program, which is loaded and executed by the one or more processors 801 to implement the methods provided in the various method embodiments described above. Of course, the server 800 may also have wired or wireless network interfaces, a keyboard, and input / output interfaces for input and output. The server 800 may also include other components for implementing device functions, which will not be elaborated upon here.

[0195] In an exemplary embodiment, a computer-readable storage medium is also provided, such as a memory including a computer program that can be executed by a processor to perform the recommended method for the content items in the above embodiments. For example, the computer-readable storage medium may be a read-only memory (ROM), a random access memory (RAM), a compact disc read-only memory (CD-ROM), magnetic tape, floppy disk, and optical data storage device, etc.

[0196] In an exemplary embodiment, a computer program product or computer program is also provided, which includes program code stored in a computer-readable storage medium. A processor of a computer device reads the program code from the computer-readable storage medium and executes the program code, causing the computer device to perform the recommended method described above.

[0197] In some embodiments, the computer program described in this specification may be deployed and executed on a single computer device, or on multiple computer devices located in one location, or on multiple computer devices distributed across multiple locations and interconnected via a communication network. These multiple computer devices distributed across multiple locations and interconnected via a communication network may constitute a blockchain system.

[0198] Those skilled in the art will understand that all or part of the steps of the above embodiments can be implemented by hardware or by a program instructing related hardware. The program can be stored in a computer-readable storage medium, such as a read-only memory, a disk, or an optical disk.

[0199] The above are merely optional embodiments of this specification and are not intended to limit this specification. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this specification shall be included within the scope of protection of this specification.

Claims

1. A method for recommending content items, the method comprising: Obtain an initial content item feature set for multiple content items, the multiple content items including content items that have not been recommended and content items that have been recommended, the initial content item feature set including the initial content item features of each of the content items, and the initial content item features of the recommended content items including interactive behavior features; Based on the initial set of content item features, neighborhood information of the plurality of content items is determined, and the neighborhood information is used to represent the association relationship between the plurality of content items; Based on the initial content item feature set of the plurality of content items and the neighborhood information, the plurality of content items are re-encoded to obtain the target content item feature set of the plurality of content items. The target content item feature set includes the target content item features of each of the content items, and the target content item features are used for content item recommendation. The recoding of the multiple content items based on the initial content item feature set and the neighborhood information to obtain the target content item feature set of the multiple content items includes: Graph convolution is performed on the initial content item feature set and the neighborhood information to obtain the mean and variance of the reference distribution; Based on the mean and variance of the reference distribution, a reference content item feature set is obtained, which includes the reference content item features of each content item. Based on the feature set of the reference content items, the reference neighborhood information is obtained by decoding. Based on the first difference information between the reference neighborhood information and the neighborhood information, and the second difference information between the distribution of the reference content item feature set and the standard normal distribution, the initial content item feature set is iterated multiple times to obtain the target content item feature set of the multiple content items.

2. The method according to claim 1, wherein determining the neighborhood information of the plurality of content items based on the initial content item feature set includes: Based on multiple initial content item features in the initial content item feature set, the indexes of the multiple content items are determined; Based on the multiple initial content features and the indexes of the multiple content items, the neighborhood information of the multiple content items is determined.

3. The method according to claim 2, wherein determining the index of the plurality of content items based on the plurality of initial content item features in the initial content item feature set comprises: Clustering the multiple initial content item features yields multiple first cluster centers, with each first cluster center corresponding to at least one initial content item feature; Clustering is performed on the initial content item features corresponding to each of the first cluster centers to obtain the indexes of the multiple content items.

4. The method according to claim 3, wherein clustering the plurality of initial content item features to obtain a plurality of first cluster centers comprises: Multiple initial cluster centers are randomly determined from the multiple initial content item features; Multiple iterations are performed based on the distance between the multiple initial content item features and the multiple initial cluster centers to obtain the multiple first cluster centers. The distance between the initial content item features corresponding to the same first cluster center is less than or equal to a first distance threshold, and the distance between the initial content item features corresponding to different first cluster centers is greater than or equal to a second distance threshold, wherein the second distance threshold is greater than the first distance threshold.

5. The method according to claim 3, wherein clustering in the initial content item features corresponding to each of the first cluster centers to obtain the indexes of the plurality of content items includes: For any one of the plurality of first cluster centers, the initial content item features corresponding to the first cluster center are divided into multiple sub-features; Clustering is performed based on multiple sub-features of each initial content item feature to obtain the index of the content item corresponding to the first cluster center.

6. The method according to claim 5, wherein clustering based on multiple sub-features of each initial content item feature to obtain the index of the content item corresponding to the first cluster center includes: Clustering is performed based on multiple sub-features of each initial content item to obtain multiple second cluster centers; Based on the identifiers of the multiple second cluster centers, the index of the content item corresponding to the first cluster center is determined.

7. The method according to claim 2, wherein determining the neighborhood information of the plurality of content items based on the plurality of initial content features and the indexes of the plurality of content items includes: Based on the multiple initial content features and the indexes of the multiple content items, the association relationships between the multiple content items are determined; Based on the relationships between the multiple content items, a Laplace matrix or adjacency matrix of the multiple content items is generated.

8. The method according to claim 1, wherein performing graph convolution on the initial content item feature set and the neighborhood information to obtain the mean and variance of the reference distribution includes: The initial content item feature set and the neighborhood information are subjected to two graph convolutions using a first graph convolution layer and a second graph convolution layer to obtain the mean of the reference distribution; The initial content item feature set and the neighborhood information are subjected to two graph convolutions using the first graph convolution layer and the third graph convolution layer to obtain the variance of the reference distribution. The parameters of the second graph convolution layer and the third graph convolution layer are different.

9. The method according to claim 1, wherein sampling based on the mean and variance of the reference distribution to obtain the reference content item feature set comprises: Sampling is performed using a standard normal distribution to obtain multiple first-sampled content item features; The Hadamard product is performed between the multiple first sampled content item features and the variance of the reference distribution to obtain multiple second sampled content item features; The reference content item feature set is obtained by adding the multiple second sampled content item features to the mean of the reference distribution.

10. The method according to claim 1, wherein decoding based on the reference content item feature set to obtain reference neighborhood information includes: The reference neighborhood information is obtained by performing a dot product operation on multiple reference content item features in the reference content item feature set.

11. The method according to claim 1, wherein after recoding the plurality of content items based on the initial content item feature set of the plurality of content items and the neighborhood information to obtain the target content item feature set of the plurality of content items, the method further includes: In response to a content item recommendation request for a target object, determine the recommendation scenario corresponding to the content item recommendation request; Based on the scene features of the recommended scenario, the object features of the target object, and the feature set of the target content items, content items are recommended to the target object.

12. A content item recommendation device, the device comprising: The acquisition module is used to acquire an initial content item feature set of multiple content items, the multiple content items including content items that have not been recommended and content items that have been recommended, the initial content item feature set including the initial content item features of each of the content items, and the initial content item features of the recommended content items including interactive behavior features; The neighborhood information determination module is used to determine the neighborhood information of the plurality of content items based on the initial content item feature set, wherein the neighborhood information is used to represent the association relationship between the plurality of content items; The recoding module is used to recode the multiple content items based on the initial content item feature set and the neighborhood information to obtain the target content item feature set of the multiple content items. The target content item feature set includes the target content item features of each content item, and the target content item features are used for content item recommendation. The recoding module is configured to perform graph convolution on the initial content item feature set and the neighborhood information to obtain the mean and variance of a reference distribution; sample based on the mean and variance of the reference distribution to obtain a reference content item feature set, which includes reference content item features for each content item; decode based on the reference content item feature set to obtain reference neighborhood information; and iterate through the initial content item feature set multiple times based on a first difference information between the reference neighborhood information and the neighborhood information, and a second difference information between the distribution of the reference content item feature set and the standard normal distribution, to obtain a target content item feature set for the plurality of content items.

13. A computer device comprising one or more processors and one or more memories, wherein at least one computer program is stored in the one or more memories, the computer program being loaded and executed by the one or more processors to implement the recommended method of the content item as described in any one of claims 1 to 11.

14. A computer-readable storage medium storing at least one computer program, the computer program being loaded and executed by a processor to implement the recommended method of the content item as described in any one of claims 1 to 11.

15. A computer program product comprising a computer program that, when executed by a processor, implements the recommended method of the content item as described in any one of claims 1 to 11.