Click-through rate prediction method, device, equipment, storage medium and program product

By constructing interactive subgraphs and combining airspace and time domain features, using graph neural networks and recurrent neural networks, the problem of inaccurate click-through rate prediction in the existing technology is solved, and more accurate click-through rate prediction is achieved.

CN114331500BActive Publication Date: 2025-09-05TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111500222.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-12-09
Publication Date
2025-09-05
Estimated Expiration
2041-12-09

AI Technical Summary

Technical Problem

In the prior art, the click rate of cross-prediction based on the feature domain of the target user and the target product is not accurate enough, and historical click information is not fully utilized.

Method used

By constructing interactive subgraphs on the target user side and the target product side, mining feature information of first-order and second-order relationships, combining airspace and time domain features, using graph neural networks and recurrent neural networks for feature aggregation and prediction.

Benefits of technology

It improves the accuracy and reliability of click-through rate prediction, comprehensively focuses on explicit and implicit information, avoids one-sided prediction, and achieves more accurate click-through rate prediction.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114331500B_ABST
    Figure CN114331500B_ABST
Patent Text Reader

Abstract

The present application discloses a click-through rate prediction method, apparatus, device, storage medium, and program product, belonging to the field of artificial intelligence. The method includes: determining M2 second-order user accounts that have a click relationship with N1 first-order products clicked by a target user account; determining N2 second-order products that have a click relationship with M1 first-order user accounts that have clicked on the target product; obtaining a first spatial domain feature based on the N1 first-order products and M2 second-order user accounts; obtaining a second spatial domain feature based on the M1 first-order user accounts and N2 second-order products; obtaining a first temporal domain feature based on the click timestamps of the N1 first-order products and M2 second-order user accounts; obtaining a second temporal domain feature based on the click timestamps of the M1 first-order user accounts and N2 second-order products; and predicting the click-through rate based on the first spatial domain feature, the second spatial domain feature, the first temporal domain feature, and the second temporal domain feature. This method improves the accuracy of the click-through rate.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of artificial intelligence, and in particular to a click-through rate prediction method, apparatus, device, storage medium, and program product. Background Art

[0002] With the development of Internet e-commerce platforms, it is common to make decisions based on the click-through rate of target users on target products to determine whether to push target products to target users. The click-through rate is the probability that a target user clicks on a target product.

[0003] In related technologies, the click-through rate (CTR) of a target user on a target product is predicted by cross-checking the various feature domains of the target user and the target product. For example, based on the target user's age and occupation, the probability of the target user clicking on an advertisement for a luxury product (which is expensive and scarce) is predicted. Based on the predicted CTR, a decision is made on whether to push the advertisement to the target user.

[0004] However, related technologies only rely on various feature domains of target users and target products for prediction, and the predicted click-through rate is not accurate. This application provides a more accurate click-through rate prediction method. Summary of the Invention

[0005] This application provides a click-through rate prediction method, apparatus, device, storage medium, and program product, which can improve the accuracy of the predicted click-through rate. The technical solution is as follows:

[0006] According to one aspect of the present application, a method for predicting click-through rate is provided, the method comprising:

[0007] Determine M2 second-order user accounts that have click relationships with the N1 first-order products that the target user account has clicked on; and determine N2 second-order products that have click relationships with the M1 first-order user accounts that have clicked on the target product; N1, M2, M1, and N2 are all positive integers;

[0008] Based on the features of N1 first-order products and the features of M2 second-order user accounts, a first spatial domain feature is obtained; and based on the features of M1 first-order user accounts and the features of N2 second-order products, a second spatial domain feature is obtained;

[0009] Based on the click timestamps of N1 first-order products and M2 second-order user accounts, a first time domain feature is obtained; based on the click timestamps of M1 first-order user accounts and N2 second-order products, a second time domain feature is obtained;

[0010] Based on the first spatial domain feature, the second spatial domain feature, the first temporal domain feature, and the second temporal domain feature, the probability of the target user account clicking on the target product is predicted.

[0011] According to one aspect of the present application, a click-through rate prediction device is provided, the device comprising:

[0012] a determination module configured to determine M2 second-order user accounts that have click relationships with N1 first-order products that have been clicked by a target user account; and to determine N2 second-order products that have click relationships with M1 first-order user accounts that have clicked on the target product; wherein N1, M2, M1, and N2 are all positive integers;

[0013] a processing module configured to obtain a first spatial domain feature based on features of N1 first-order products and features of M2 second-order user accounts; and to obtain a second spatial domain feature based on features of M1 first-order user accounts and features of N2 second-order products;

[0014] The processing module is further configured to obtain a first time domain feature based on the click timestamps of the N1 first-order products and the M2 second-order user accounts; and obtain a second time domain feature based on the click timestamps of the M1 first-order user accounts and the N2 second-order products.

[0015] The prediction module is used to predict the probability of a target user account clicking on a target product based on the first spatial domain feature, the second spatial domain feature, the first temporal domain feature, and the second temporal domain feature.

[0016] In an optional embodiment, the determination module is further used to construct a first interaction subgraph on the target user side based on the target user node corresponding to the target user account, N1 first-order product nodes corresponding to the N1 first-order products clicked by the target user account, M2 second-order user nodes corresponding to M2 second-order user accounts that have a click relationship with the N1 first-order products, and using the click timestamp as the edge weight between the target user node and the first-order product node, and using the click timestamp as the edge weight between the first-order product node and the second-order user node.

[0017] In an optional embodiment, the determination module is further used to construct a second interaction subgraph on the target product side based on the target product node corresponding to the target product, the M1 first-order user nodes corresponding to the M1 first-order user accounts that have clicked on the target product, the N2 second-order product nodes corresponding to the N2 second-order products that have a click relationship between the M1 first-order user accounts, and using the click timestamp as the edge weight between the target product node and the first-order user node, and using the click timestamp as the edge weight between the first-order user node and the second-order product node.

[0018] In an optional embodiment, the processing module is further used to transfer the features of N1 first-order product nodes and the features of M2 second-order user nodes to the target user node through a first graph neural network, and aggregate them with the features of the target user node to obtain a first spatial domain feature.

[0019] In an optional embodiment, the processing module is further used to transfer the features of M1 first-order user nodes and the features of N2 second-order product nodes to the target product node through a second graph neural network, and aggregate them with the features of the target product node to obtain a second spatial domain feature.

[0020] In an optional embodiment, the processing module is further configured to perform two aggregation processes through the first graph neural network, and use the feature vector of the target user node obtained by the second aggregation as the first spatial domain feature vector;

[0021] During the kth aggregation:

[0022] Aggregate the N1 k-1th eigenvectors of the N1 first-order product nodes dimensionally to obtain the kth first-order product eigenvector. Then, concatenate the kth first-order product eigenvector with the k-1th eigenvector of the target user node to obtain the kth eigenvector of the target user node.

[0023] And, for the pth of the N1 first-order commodity nodes, M 2p M second-order user nodes 2p Aggregate the k-1th eigenvectors dimensionally and get the k-th second-order user eigenvector. Then concatenate the k-th second-order user eigenvector with the k-1th eigenvector of the first-order product node to get the k-th eigenvector of the first-order product node. The value of k is 1 or 2, and the value of p is 1 to N1.

[0024] in,

[0025] In an optional embodiment, the processing module is further configured to perform two aggregation processes through a second graph neural network, and use the feature vector of the target product node obtained by the second aggregation as the second spatial domain feature vector;

[0026] During the jth aggregation:

[0027] Aggregate the M1 j-1th eigenvectors of the M1 first-order user nodes dimensionally to obtain the j-th first-order user eigenvector. Then, concatenate the j-1th eigenvector of the target product node with the j-1th eigenvector of the target product node to obtain the j-th eigenvector of the target product node.

[0028] And, for the qth of the M1 first-order user nodes, N 2q N second-order commodity nodes2q Aggregate the j-1th eigenvectors dimensionally and average them to get the j-th second-order product eigenvector. Then concatenate the j-th second-order product eigenvector with the j-1th eigenvector of the first-order user node to get the j-th eigenvector of the first-order user node. The value of j is 1 or 2, and the value of q is 1 to M1.

[0029] in,

[0030] In an optional embodiment, the processing module is further used to input the initial features of N1 first-order product nodes sorted by click timestamps into the first recurrent neural network to obtain first time-domain sub-features corresponding to the N1 first-order product nodes; input the initial features of M2 second-order user nodes sorted by click timestamps into the first recurrent neural network to obtain first time-domain sub-features corresponding to the M2 second-order user nodes; and obtain the first time-domain feature by aggregating two first time-domain sub-features.

[0031] In an optional embodiment, the processing module is further used to input the initial features of M1 first-order user nodes sorted by click timestamps into the second recurrent neural network to obtain second time-domain sub-features corresponding to the M1 first-order user nodes; input the initial features of N2 second-order product nodes sorted by click timestamps into the second recurrent neural network to obtain second time-domain sub-features corresponding to the N2 second-order product nodes; and obtain the second time-domain features by aggregating two second time-domain sub-features.

[0032] In an optional embodiment, the recurrent neural network is a long short-term memory network (LSTM).

[0033] In an optional embodiment, the processing module is further used to input the initial feature vectors of the N1 first-order product nodes sorted by click timestamps into the long short-term memory network, and use the updated feature vector of the last first-order product node as the first time-domain sub-feature vector corresponding to the N1 first-order product nodes.

[0034] In an optional embodiment, the processing module is further used to input the initial feature vectors of the M2 second-order user nodes sorted by click timestamps into the long short-term memory network, and use the updated feature vector of the last second-order user node as the first time-domain sub-feature vector corresponding to the M2 second-order user nodes.

[0035] In an optional embodiment, the processing module is further configured to concatenate the two first time-domain sub-feature vectors to obtain a first time-domain feature vector.

[0036] In an optional embodiment, the second recurrent neural network is a long short-term memory network (LSTM).

[0037] In an optional embodiment, the processing module is further used to input the initial feature vectors of M1 first-order user nodes sorted by click timestamps into the long short-term memory network, and use the updated feature vector of the last first-order user node as the second time-domain sub-feature vector corresponding to the M1 first-order user nodes.

[0038] In an optional embodiment, the processing module is further configured to input the initial feature vectors of the N2 second-order product nodes sorted by click timestamps into the long short-term memory network, and use the updated feature vector of the last second-order product node as the second time-domain sub-feature vector corresponding to the N2 second-order product nodes.

[0039] In an optional embodiment, the processing module is further configured to concatenate the two second time-domain sub-feature vectors to obtain a second time-domain feature vector.

[0040] In an optional embodiment, the initial features of the first-order commodity node are obtained by aggregating the features of the first-order commodity node and the time features; the initial features of the second-order user node are obtained by aggregating the features of the second-order user node and the time features.

[0041] In an optional embodiment, the initial features of the first-order user node are obtained by aggregating the features of the first-order user node and the time features; the initial features of the second-order product node are obtained by aggregating the features of the second-order product node and the time features.

[0042] In an optional embodiment, the prediction module is further used to splice the first spatial domain feature vector with the first time domain feature vector to obtain a feature vector on the target user side; and to splice the second spatial domain feature vector with the second time domain feature vector to obtain a feature vector on the target product side.

[0043] In an optional embodiment, the prediction module is further configured to concatenate the feature vector on the target user side with the feature vector on the target product side to obtain an intermediate feature vector.

[0044] In an optional embodiment, the prediction module is further configured to pass the intermediate feature vector through a multi-layer perceptron to predict the probability of the target user account clicking on the target product.

[0045] In an optional embodiment, the determination module is further used to construct an interactive bipartite graph, which includes multiple user nodes and multiple product nodes. When there is a click relationship between the user node and the product node, the user node and the product node are connected by an edge, and the edge weight between the user node and the product node is set to the click timestamp.

[0046] In an optional embodiment, the determination module is further used to determine a target user node, multiple first-order candidate product nodes connected to the target user node, and multiple second-order candidate user nodes connected to the multiple first-order candidate product nodes; sort the multiple first-order candidate product nodes according to click timestamps and sample to obtain N1 first-order product nodes; sort the multiple second-order candidate user nodes according to click timestamps and sample to obtain M2 second-order user nodes.

[0047] In an optional embodiment, the determination module is further used to determine a target product node, multiple first-order candidate user nodes connected to the target product node, and multiple second-order candidate product nodes connected to the multiple first-order candidate user nodes; sort the multiple first-order candidate user nodes according to click timestamps and sample to obtain M1 first-order user nodes; sort the multiple second-order candidate product nodes according to click timestamps and sample to obtain N2 second-order product nodes.

[0048] According to one aspect of the present application, a computer device is provided, comprising: a processor and a memory, wherein the memory stores a computer program, and the computer program is loaded and executed by the processor to implement the click-through rate prediction method as described above.

[0049] According to another aspect of the present application, a computer-readable storage medium is provided, wherein the storage medium stores a computer program, and the computer program is loaded and executed by a processor to implement the click-through rate prediction method as described above.

[0050] According to another aspect of the present application, a computer program product or computer program is provided, comprising computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the aforementioned click-through rate prediction method.

[0051] The beneficial effects of the technical solutions provided in the embodiments of the present application include at least:

[0052] By mining information from both the target user side (target user account, N1 first-order items, and M1 first-order user accounts) and the target item side (target item, M1 first-order user accounts, and N2 second-order items), the algorithm globally focuses not only on explicit information (information between the target user account and first-order items, and between the target item and first-order user account) but also on implicit information (information between first-order items and second-order user accounts, and between first-order user accounts and second-order items). This symmetrical information focus avoids one-sided click-through rate predictions and improves the effectiveness and reliability of the predicted click-through rates.

[0053] In addition, by paying full attention to the historical click information between products and users, the predicted click-through rate is made more accurate. BRIEF DESCRIPTION OF THE DRAWINGS

[0054] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.

[0055] Figure 1 is a schematic diagram of a computer system provided by an exemplary embodiment of the present application;

[0056] Figure 2 is a flowchart of a method for predicting click-through rate provided by an exemplary embodiment of the present application;

[0057] Figure 3 is a flowchart of a method for constructing a first interaction subgraph and a second interaction subgraph provided by an exemplary embodiment of the present application;

[0058] Figure 4 is a schematic diagram of an interactive bipartite graph provided by an exemplary embodiment of the present application;

[0059] Figure 5 is a schematic diagram of a first interaction subgraph provided by an exemplary embodiment of the present application;

[0060] Figure 6 is a schematic diagram of a second interaction subgraph provided by an exemplary embodiment of the present application;

[0061] Figure 7 is a flowchart of a method for calculating a first spatial domain feature and a second spatial domain feature provided by an exemplary embodiment of the present application;

[0062] Figure 8 is a flowchart of a method for calculating a first time domain feature provided by an exemplary embodiment of the present application;

[0063] Figure 9 is a schematic diagram of an aggregation process of two first time-domain sub-features provided by an exemplary embodiment of the present application;

[0064] Figure 10 is a flowchart of a method for calculating a second time domain feature provided by an exemplary embodiment of the present application;

[0065] Figure 11 is a schematic diagram of an aggregation process of two second time-domain sub-features provided by an exemplary embodiment of the present application;

[0066] Figure 12 is a flowchart of a method for predicting click-through rate provided by another exemplary embodiment of the present application;

[0067] Figure 13 This is a structural block diagram of a click-through rate prediction device provided by an exemplary embodiment of the present application;

[0068] Figure 14 It is a structural block diagram of a computer device provided by an exemplary embodiment of the present application. DETAILED DESCRIPTION

[0069] In order to make the objectives, technical solutions and advantages of this application clearer, the implementation methods of this application will be further described in detail below with reference to the accompanying drawings.

[0070] First, a brief introduction to the terms involved in the embodiments of this application is given:

[0071] Graph Network: In the embodiments of this application, a graph network refers to data stored in the form of a graph. Graph networks are also referred to as graph data, graph models, graph representations, and graph structured data. A graph network consists of at least one node and at least one edge. Each node has corresponding features, and edges represent the connection between different nodes. Each edge also has an edge weight that represents the connection information between different nodes.

[0072] Graph neural network: refers to the general term for models applied by neural networks on graph networks. Graph neural networks include graph convolutional neural networks, graph attention networks, etc. Graph neural networks are used to predict the category of a graph based on the structural features of the graph. Specifically, a graph neural network will include one or more feature extraction layers. The feature extraction layer is, for example, a graph convolution layer (GCL). The feature extraction layer is used to extract the structural features of the graph. For example, if two graphs are isomorphic, then the structural features obtained after the graphs of the two graphs pass through the feature extraction layer will be similar. If the two graphs are heterogeneous, then the structural features obtained after the graphs of the two graphs pass through the feature extraction layer will be different. Therefore, graph neural networks can map graph structures with isomorphic properties to the same representation domain and output the same category.

[0073] RNNs (Recurrent Neural Networks): RNNs are a type of neural network used to process sequential data. In an RNN, the output of a current position in a sequence is related to the output of the previous position. RNNs are based on neural networks with fixed weights, external inputs, and internal states. They can be viewed as behavioral dynamics with respect to internal states, with weights and external inputs as parameters.

[0074] LSTM (Long Short Term Memory): LSTM is a time recursive neural network used to process and predict important events in time series with relatively long intervals or delays. It is a special RNN.

[0075] Figure 1 FIG. 1 shows a schematic diagram of a computer system provided by an exemplary embodiment of the present application. Figure 1 As shown, a click-through rate prediction network is obtained by training device 101 (running a click-through rate prediction method provided by an exemplary embodiment of the present application), and the click-through rate prediction network is sent to the using device 102, where the click-through rate prediction network can be used.

[0076] The training device 101 and the using device 102 may be computer devices with machine learning capabilities, for example, the computer device may be a terminal or a server.

[0077] Optionally, the training device 101 and the user device 102 can be the same computer device, or they can be different computer devices. Furthermore, when the training device 101 and the user device 102 are different devices, they can be the same type of device, such as both being servers. Alternatively, the training device 101 and the user device 102 can be different types of devices, such as the training device 101 being a server and the user device 102 being a terminal. The server can be an independent physical server, a server cluster or distributed system consisting of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms. The terminal can be, but is not limited to, a smartphone, tablet computer, laptop computer, desktop computer, smart TV, in-vehicle terminal, wearable device, and smart speaker. The terminal and the server may be connected directly or indirectly via wired or wireless communication, which is not limited in this application.

[0078] In the related art of the present application, there are two possible prediction methods for predicting the click-through rate of a target user account clicking on a target product.

[0079] The first prediction method is to make predictions based on the cross-integration of the various feature domains of the target user account and the target product. This prediction method is simple and has certain effects, but it requires more feature domain information and only mines the explicit information between the target user account and the target product.

[0080] The second prediction method predicts the probability of the target user account clicking on the target product based on the target user account's interest information contained in the target user account's historical behavior sequence. This method implicitly includes the target user account's historical click information, but it still does not fully utilize this historical click information.

[0081] The click-through rate prediction method provided in this application is more accurate and has better results than the above two prediction methods.

[0082] To improve the accuracy of the predicted click-through rate, Figure 2 A flowchart of a method for predicting click-through rate provided by an exemplary embodiment of the present application is shown. Figure 1 Using device 102 as an example, the method includes:

[0083] Step 220: Determine M2 second-order user accounts that have click relationships with the N1 first-order products that the target user account has clicked on; and determine N2 second-order products that have click relationships with the M1 first-order user accounts that have clicked on the target product.

[0084] Among them, N1, M2, M1 and N2 are all positive integers.

[0085] Target User Account: In this application, click-through rate refers to the probability that the target user account clicks on the target product. That is, the target user account is the subject account of this application. The N1 first-order products clicked by the target user account are the cluster of products clicked by the target user account during the first preset historical time period. The M2 second-order user accounts that have a click relationship with the N1 first-order products are the cluster of second-order user accounts that clicked on the N1 first-order products during the second preset historical time period.

[0086] Optionally, the first preset historical time period is the same as the second preset historical time period. In this case, the M2 second-order user accounts include the target user account.

[0087] For example, "User Account 11" (target user account) has clicked on three products (N1 first-order products) in the past seven days: a water cup, a keyboard, and a mouse. Among them, the water cup has been clicked on by four user accounts (M1, 11, 12, 13, and 14) in the past seven days. 21Second-level user accounts), the keyboard has been clicked by three user accounts in the past seven days: user account 21 (the same account as user account 11), user account 22, and user account 23 (M 22 Second-level user accounts), the mouse has been clicked by two user accounts, user account 31 (the same account as user account 11) and user account 32, in the past five days (M 23 Second-order user accounts), M 21 Second-level user accounts, M 22 Second-order user accounts and M 23 Second-order user accounts constitute M2 second-order user accounts.

[0088] Target Product: In this application, click-through rate refers to the probability that a target user account clicks on the target product; that is, the target product is the subject product of this application. The M1 first-order user accounts that clicked on the target product represent the cluster of first-order user accounts that clicked on the target product during the third preset historical time period. The N2 second-order products that have a click relationship with the M1 first-order user accounts represent the cluster of second-order products that were clicked by the M1 first-order user accounts during the fourth preset historical time period.

[0089] Optionally, the third preset historical time period is the same as the fourth preset historical time period. In this case, N2 second-order products include the target product.

[0090] For example, the laptop computer (target product) has been clicked by two user accounts (M1 first-order user accounts), user account 01 and user account 02, in the past seven days. User account 01 has clicked on two products (N) in the past seven days, namely, the laptop computer and the pen. 21 Second-order products), user account 02 clicked on two products, laptop and chair, in the past seven days (N 22 second-order goods), N 21 second-order goods and N 22 Second-order goods constitute N2 second-order goods.

[0091] It is understandable that the N1 first-order commodities may or may not include the target commodity, and the M1 first-order user accounts may or may not include the target user account.

[0092] For a detailed description of step 220 , please refer to “Step 220 ” below.

[0093] Step 240: Obtain a first spatial domain feature based on the features of the N1 first-order products and the features of the M2 second-order user accounts; and obtain a second spatial domain feature based on the features of the M1 first-order user accounts and the features of the N2 second-order products.

[0094] User account characteristics: Optional, user account characteristics can be derived based on user-entered identity information, purchase history, credit points, and other information. In this application, the click timestamp between the user account and the target product is used as the time characteristic, as described in detail below. Beyond this, this application does not limit the method for generating user account characteristics.

[0095] Product Features: Optional. Product features can be derived based on information such as price, historical sales volume, inventory level, and sales velocity. In this application, the timestamp of the click of the target product by the user account is used as the time feature, which will be explained in detail below. Beyond this, this application does not limit the method for generating product features.

[0096] Spatial features: In this application, the features obtained by fusing the features of multiple user accounts with the features of multiple products are called spatial features.

[0097] For a detailed description of step 240 , please refer to “Step 240 ” below.

[0098] Step 260: Obtain a first temporal feature based on the click timestamps of the N1 first-order products and the M2 second-order user accounts; obtain a second temporal feature based on the click timestamps of the M1 first-order user accounts and the N2 second-order products;

[0099] Click timestamp: refers to the time when a user account clicks on a product (or when the product is clicked by the user account). Optionally, the click timestamp granularity is at least one of year, quarter, month, week, day, and hour. For example, the user account "Hahaha" clicked on xxx brand skincare products on December 6, 2021 (illustratively, the granularity is day).

[0100] Time domain features: In this application, the features obtained by fusing click timestamps between multiple user accounts and multiple products are called time domain features.

[0101] For a detailed description of step 260 , please refer to “Step 260 ” below.

[0102] Step 280 : predicting the probability of the target user account clicking on the target product based on the first spatial domain feature, the second spatial domain feature, the first temporal domain feature, and the second temporal domain feature.

[0103] Based on the first spatial domain feature, the second spatial domain feature, the first time domain feature, and the second time domain feature obtained above, the device 102 is used to predict the probability that the target user account clicks on the target product.

[0104] For a detailed description of step 280 , please refer to “Step 280 ” below.

[0105] In summary, by mining information from both the target user side (target user account, N1 first-order items, and M1 first-order user accounts) and the target item side (target item, M1 first-order user accounts, and N2 second-order items), we globally focus not only on explicit information (information between the target user account and first-order items, and between the target item and first-order user account) but also on implicit information (information between first-order items and second-order user accounts, and between first-order user accounts and second-order items). This symmetrical information-focusing approach avoids one-sided click-through rate predictions and improves the effectiveness and reliability of the predicted click-through rates.

[0106] For example, from the perspective of the target user, the implicit information between the second-order user account and the first-order product can be used to analyze the second-order user account's interest in the first-order product. Overall, it implicitly includes the target user account's interest ranking among competing accounts, and this ranking can be fed back into the target user account's prediction of the click-through rate of the first-order product.

[0107] Furthermore, by fully considering the historical click information between products and users, the predicted click-through rate is made more accurate. Furthermore, the click-through rate prediction network using the above method is a complete end-to-end network, requiring no staged training or prediction.

[0108] Regarding step 220: it can be implemented by constructing a first interaction subgraph on the target user side and a second interaction subgraph on the target product side.

[0109] Figure 3 A flowchart of a method for constructing a first interaction subgraph and a second interaction subgraph provided by an exemplary embodiment of the present application is shown. The method includes:

[0110] Step 221: construct an interactive bipartite graph including multiple user nodes and multiple product nodes;

[0111] The interaction bipartite graph includes multiple user nodes and multiple product nodes. If a click relationship exists between a user node and a product node, an edge is connected between the user node and the product node, and the edge weight between the user node and the product node is set to the click timestamp. Optionally, the click relationship refers to a click event occurring within a preset historical time period.

[0112] Indicative, Figure 4 This is a schematic diagram of the interaction bipartite graph. The user node cluster 41 includes user nodes A1 to A6, and the product node cluster 42 includes product nodes B1 to B6. User node A1 is connected to product node B1, B2, B4, and B6, respectively.

[0113] User node A2 is connected to product node B1, product node B3, and product node B5 respectively;

[0114] User node A3 is connected to product node B1, product node B2, product node B4, and product node B6 respectively;

[0115] User node A4 is connected to product node B3, product node B4, and product node B5 respectively;

[0116] User node A5 is connected to product node B1, product node B4, and product node B6 respectively;

[0117] User node A6 is connected to product node B5 and product node B6 respectively.

[0118] The edge weight between the user node and the product node is the click timestamp. Optionally, the click timestamp is the timestamp of the most recent click event, or the average time within a preset historical time period when click events are most frequent.

[0119] In one embodiment, a matrix may be used. represents an interaction bipartite graph, where each row represents a user node, and the total number of user nodes is M; each column represents a product node, and the total number of product nodes is N. The value of each position in the matrix represents the click timestamp.

[0120] Step 222: extracting a first interaction subgraph from the interaction bipartite graph;

[0121] A target user node, multiple first-order candidate product nodes connected to the target user node, and multiple second-order candidate user nodes connected to the multiple first-order candidate product nodes are determined from the interaction bipartite graph; the multiple first-order candidate product nodes are sorted according to click timestamps and sampled to obtain N1 first-order product nodes; the multiple second-order candidate user nodes are sorted according to click timestamps and sampled to obtain M2 second-order user nodes.

[0122] Instructively, it is determined that the number of first-order candidate product nodes is s1, and the s1 first-order candidate product nodes are sorted from recent to farthest according to timestamps, and the s1 first-order candidate product nodes are divided into N1 segments. The number of first-order candidate product nodes in each segment is s1 / N1. Optionally, a first-order candidate product node is randomly selected from each segment as the first-order product node. Based on this, a total of N1 first-order product nodes are obtained.

[0123] Similarly, M2 second-order user nodes can be obtained from multiple second-order candidate user nodes.

[0124] Next, we will introduce how to construct the first interaction subgraph based on the target user node, N1 first-order product nodes, and M2 second-order user nodes.

[0125] The first interaction subgraph on the target user side is constructed based on the target user node corresponding to the target user account, the N1 first-order product nodes corresponding to the N1 first-order products clicked by the target user account, the M2 second-order user nodes corresponding to the M2 second-order user accounts that have click relationships with the N1 first-order products, and the click timestamp as the edge weight between the target user node and the first-order product node, and the click timestamp as the edge weight between the first-order product node and the second-order user node.

[0126] Indicative, Figure 5 A schematic diagram of the first interaction subgraph is shown.

[0127] The target user node 51 includes the target user node u. The first-order commodity node 520 includes the first-order commodity node v 11 and first-order commodity node v 12 The second-order user node 530 includes the second-order user node u 21 , second-order user node u 22 , second-order user node u 23 and second-order user node u 24 .

[0128] Target user node u and first-order product node v 11 and first-order commodity node v 12 Connect the edges;

[0129] First-order commodity node v 11 Respectively with the second-order user node u 21 and second-order user node u 22 Connect the edges;

[0130] First-order commodity node v 12 Respectively with the second-order user node u 23 and second-order user node u 24 Connect the edges.

[0131] In one embodiment, G u Represents the first interaction subgraph on the target user side, using I u Represents a set of N1 first-order commodity nodes, using U u represents the set of M2 second-order user nodes, then:

[0132] G u = {u, I u , U u};

[0133] Step 223: extract a second interaction subgraph from the interaction bipartite graph.

[0134] A target product node, multiple first-order candidate user nodes connected to the target product node, and multiple second-order candidate product nodes connected to the multiple first-order candidate user nodes are determined from the interaction bipartite graph; the multiple first-order user product nodes are sorted according to click timestamps and sampled to obtain M1 first-order user nodes; and the multiple second-order candidate product nodes are sorted according to click timestamps and sampled to obtain N2 second-order product nodes.

[0135] Indicatively, it is determined that the number of first-order candidate user nodes is s2, and the s2 first-order candidate user nodes are sorted from recent to farthest according to timestamps, and the s2 first-order candidate user nodes are divided into M1 segments. The number of first-order candidate user nodes in each segment is s2 / M1. Optionally, a first-order candidate user node is randomly selected from each segment as the first-order user node. Based on this, a total of M1 first-order user nodes are obtained.

[0136] Similarly, N2 second-order commodity nodes can be obtained from multiple second-order candidate commodity nodes.

[0137] Next, we will introduce how to construct the second interaction subgraph based on the target product node, M1 first-order user nodes, and N2 second-order product nodes.

[0138] The second interaction subgraph on the target product side is constructed based on the target product node corresponding to the target product, the M1 first-order user nodes corresponding to the M1 first-order user accounts that have clicked the target product, the N2 second-order product nodes corresponding to the N2 second-order products that have click relationships with the M1 first-order user accounts, and the click timestamp as the edge weight between the target product node and the first-order user node, and the click timestamp as the edge weight between the first-order user node and the second-order product node.

[0139] Indicative, Figure 6 A schematic diagram of the second interaction subgraph is shown.

[0140] The target commodity node 61 includes the target commodity node v. The first-order user node 620 includes the first-order user node u. 11 and first-order user node u 12 The second-order commodity node 630 includes the second-order commodity node v 21 , second-order commodity node v 22 , second-order commodity node v 23 and second-order commodity node v 24 .

[0141] Target product node v and first-order user node u 11 and first-order user node u 12 Connect the edges;

[0142] First-order user node u 11 Respectively with the second-order commodity node v21 and second-order commodity node v 22 Connect the edges;

[0143] First-order user node u 12 Respectively with the second-order commodity node v 23 and second-order commodity node v 24 Connect the edges.

[0144] In one embodiment, G v The second interaction subgraph represents the target product side, using U v Represents a set of M1 first-order user nodes, using I v represents a set of N2 second-order commodity nodes, then:

[0145] G v ={v,U v ,I v};

[0146] To sum up, by constructing the first interaction subgraph and the second interaction subgraph, the foundation is laid for the subsequent calculation of the first spatial domain feature, the second spatial domain feature, the first time domain feature and the second time domain feature based on the first interaction subgraph and the second interaction subgraph, and the tedious calculation process involved in this application can be simplified through the graph network.

[0147] Regarding step 240: Optionally, step 240 may be based on Figure 3 The first interaction subgraph and the second interaction subgraph constructed by the illustrated method embodiment are further implemented.

[0148] Figure 7 A flowchart of a method for calculating a first spatial domain feature and a second spatial domain feature provided by an exemplary embodiment of the present application is shown. The method includes:

[0149] Step 241: Using a first graph neural network, the features of N1 first-order product nodes and M2 second-order user nodes are transferred to a target user node, and aggregated with the features of the target user node to obtain a first spatial domain feature.

[0150] Optionally, the first graph neural network is any one of GCN (Graph Convolutional Network), GraphSAGE (a graph neural network), and GAT (Graph Attention Networks).

[0151] In one embodiment, two aggregation processes are performed through the first graph neural network, and the feature vector of the target user node obtained by the second aggregation is used as the first spatial domain feature vector.

[0152] In the k-th aggregation process (the value of k is 1 or 2): it includes two sub-processes: N1 first-order product nodes transfer features to the target user node, and M2 second-order user nodes transfer features to N1 first-order product nodes.

[0153] In the first sub-process, the N1 k-1th feature vectors of the N1 first-order product nodes are firstly dimensionally averaged and aggregated to obtain the kth first-order product feature vector. Then, the kth first-order product feature vector is concatenated with the k-1th feature vector of the target user node to obtain the kth feature vector of the target user node.

[0154] Schematically, the first sub-process can be expressed by the following formula:

[0155]

[0156]

[0157] Among them, MEAN(·) is the dimension-by-dimension mean operation, W k and b k denote the trainable parameter matrix and trainable parameter vector respectively, CONCAT(·) denotes the vector concatenation operation, σ(·) denotes the nonlinear activation function, usually the ReLU function; N(u) is the first-order commodity node set of the target user node u, is the kth first-order commodity feature vector, is the k-1th feature vector of the target user node above, is the kth feature vector of the target user node above, is the k-1th eigenvector of a node in the above first-order commodity node set.

[0158] In the second sub-process, for the pth of the N1 first-order commodity nodes, M 2p M second-order user nodes 2p Aggregate the k-1th eigenvectors dimensionally and get the k-th second-order user eigenvector. Then concatenate the k-th second-order user eigenvector with the k-1th eigenvector of the first-order product node to get the k-th eigenvector of the first-order product node. The value of p ranges from 1 to N1.

[0159] in,

[0160] Similarly, the second sub-process can also use similar formulas (1) and (2) above, which will not be repeated here.

[0161] After the above two aggregation processes, the features (implicit information) of M2 second-order user nodes can be transferred to the target user node, and the obtained features of the target user node are used as the first spatial domain features.

[0162] In step 242 , the features of the M1 first-order user nodes and the features of the N2 second-order product nodes are transferred to the target product node through the second graph neural network, and aggregated with the features of the target product node to obtain the second spatial domain features.

[0163] Optionally, the second graph neural network is any one of GCN, GraphSAGE, and GAT.

[0164] In one embodiment, two aggregation processes are performed through the second graph neural network, and the feature vector of the target product node obtained by the second aggregation is used as the second spatial domain feature vector.

[0165] In the j-th aggregation process (the value of j is 1 or 2): it includes two sub-processes: M1 first-order user nodes transfer features to the target product node, and N2 second-order product nodes transfer features to M1 first-order user nodes.

[0166] In the first sub-process, first, the M1 j-1th eigenvectors of the M1 first-order user nodes are dimensionally averaged and aggregated to obtain the j-th first-order user eigenvector. Then, the j-th first-order user eigenvector is concatenated with the j-1th eigenvector of the target product node to obtain the j-th eigenvector of the target product node.

[0167] Schematically, the first sub-process can be expressed by the following formula:

[0168]

[0169]

[0170] Among them, MEAN(·) is the dimension-by-dimension mean operation, W j and b j denote the trainable parameter matrix and trainable parameter vector respectively, CONCAT(·) denotes the vector concatenation operation, σ(·) denotes the nonlinear activation function, usually the ReLU function; M(v) is the first-order user node set of the target product node v, is the j-th first-order user feature vector, is the j-1th eigenvector of the target product node above, is the j-th eigenvector of the target product node, is the j-1th eigenvector of a node in the first-order user node set.

[0171] In the second sub-process, for the qth of the M1 first-order user nodes, N 2q N second-order commodity nodes 2qAggregate the j-1th eigenvectors dimensionally and get the j-th second-order product eigenvector. Then concatenate the j-th second-order product eigenvector with the j-1th eigenvector of the first-order user node to get the j-th eigenvector of the first-order product node. The value of q ranges from 1 to M1.

[0172] in,

[0173] Similarly, the second sub-process can also use similar formulas (3) and (4) above, which will not be repeated here.

[0174] After the above two aggregation processes, the features (implicit information) of N2 second-order product nodes can be transferred to the target product node, and the obtained features of the target product node are used as the second spatial domain features.

[0175] It is understandable that the order of the above-mentioned step 241 and step 242 may also be interchanged, that is, step 242 is performed first and then step 241.

[0176] In summary, through graph neural networks, the features of first-order and second-order nodes are transferred to the target node and aggregated with the target node's features to obtain spatial features. This method considers the global features of the complete target user account-target product relationship, provides a method for calculating spatial features, and further ensures the validity and reliability of the predicted click-through rate.

[0177] Regarding step 260: Optionally, step 260 may be based on Figure 3 The first interaction subgraph and the second interaction subgraph constructed by the illustrated method embodiment are further implemented.

[0178] Figure 8 A flowchart of a method for calculating a first time domain feature provided by an exemplary embodiment of the present application is shown. The method includes:

[0179] Step 261: Input the initial features of the N1 first-order product nodes sorted by click timestamps into a first recurrent neural network to obtain first time-domain sub-features corresponding to the N1 first-order product nodes;

[0180] Schematically, the initial feature vectors of N1 first-order product nodes sorted by click timestamps are input into the long short-term memory network, and the updated feature vector of the last first-order product node is used as the first time-domain sub-feature vector corresponding to the N1 first-order product nodes;

[0181] In one embodiment, the initial features of the first-order product node are obtained by aggregating the features of the first-order product node and the time feature. The time feature is the feature of the click timestamp between the first-order product node and the target user node. The initial feature vector of the first-order product node can be expressed as:

[0182] h i =CONCAT(x i ,time i ); (5)

[0183] Among them, x i is the characteristic vector of the first-order commodity node i itself, time i is the time feature corresponding to the first-order commodity node i.

[0184] Long short-term memory network, used for: Let the length of the sorted node sequence be T, the current position be t∈[1,T], for the t-th node, based on the updated feature vector h of the t-1th node t-1 and the initial eigenvector x of the t-th node t , get the first intermediate vector f through the forget gate t Based on h t-1 and x t , get the second intermediate vector i through the input gate t Based on h t-1 and x t , get the candidate cell state Based on f t , the cell state C of the t-1th node t-1 、i t and Get the cell state C of the tth node t Based on h t-1 and x t , get the third intermediate vector o through the output gate t ; Based on C t and o t , get the updated feature vector h of the tth node t .

[0185] Forget Gate:

[0186] f t =sigmoid(W f ·CONCAT(h t-1 ,x t )+b f ); (6)

[0187] Input Gate:

[0188] i t =sigmoid(W i CONCAT(h t-1 ,x t )+b i ); (7)

[0189] Candidate cell states

[0190]

[0191] Cell State C t :

[0192]

[0193] Output gate o t :

[0194] o t =sigmoid(W o CONCAT(h t-1 ,x t )+b o ); (10)

[0195] Calculate the updated feature vector h of the tth node t :

[0196] h t =o t *tanh(C t ); (11)

[0197] Among them, the above W f and b f is the trainable parameter matrix and trainable parameter vector in the forget gate, W i and b i is the trainable parameter matrix and trainable parameter vector of the input gate, W c and b c is the trainable parameter matrix and trainable parameter vector for calculating the candidate cell state, W o and b o It is the trainable parameter matrix and trainable parameter vector of the output gate. The sigmoid function maps the numerical value to the interval [0, 1]. CONCAT represents vector concatenation.

[0198] Indicative, Figure 9 The aggregation process of the first time domain sub-feature is shown. The first-order commodity node vector representation 522 output by the long short-term memory network is the first time domain sub-feature.

[0199] Step 262: Input the initial features of the M2 second-order user nodes sorted by click timestamps into the first recurrent neural network to obtain first time-domain sub-features corresponding to the M2 second-order user nodes;

[0200] Schematically, the initial feature vectors of M2 second-order user nodes sorted by click timestamps are input into the long short-term memory network, and the updated feature vector of the last second-order user node is used as the first time-domain sub-feature vector corresponding to the M2 second-order user nodes.

[0201] In one embodiment, the initial features of the second-order user node are obtained by aggregating the features of the second-order user node and the time feature, where the time feature is the feature of the click timestamp between the second-order user node and the first-order product node.

[0202] The long short-term memory network is similar to that described in step 261 above and will not be described again here.

[0203] Indicative, with reference Figure 9 , Figure 9 The aggregation process of another first time-domain sub-feature is also shown. The second-order user node vector representation 532 output by the long short-term memory network is another first time-domain sub-feature.

[0204] Step 263 : Obtain a first time domain feature by aggregating the two first time domain sub-features.

[0205] Schematically, two first time-domain sub-feature vectors are concatenated to obtain a first time-domain feature vector.

[0206]

[0207] in, is the first time-domain sub-feature vector corresponding to N1 first-order commodity nodes, is the first time-domain sub-eigenvector corresponding to M2 second-order user nodes, is the first time domain eigenvector.

[0208] Next, we will introduce how to aggregate and obtain the second time domain features of the target product.

[0209] Figure 10 A flowchart of a method for calculating a second time domain feature provided by an exemplary embodiment of the present application is shown. The method includes:

[0210] Step 264: Input the initial features of the M1 first-order user nodes sorted by click timestamps into a second recurrent neural network to obtain second time-domain sub-features corresponding to the M1 first-order user nodes;

[0211] Schematically, the initial feature vectors of M1 first-order user nodes sorted by click timestamps are input into the long short-term memory network, and the updated feature vector of the last first-order user node is used as the second time-domain sub-feature vector corresponding to the M1 first-order user nodes.

[0212] In one embodiment, the initial features of the first-order user node are obtained by aggregating the features of the first-order user node and the time feature, where the time feature is the feature of the click timestamp between the first-order user node and the target product node.

[0213] The long short-term memory network is similar to that described in step 261 above and will not be described again here.

[0214] Indicative, with reference Figure 11 , Figure 11 The aggregation process of the second time domain sub-feature is shown. The first-order user node vector 622 output by the long short-term memory network represents the second time domain sub-feature.

[0215] Step 265: Input the initial features of the N2 second-order product nodes sorted by click timestamps into a second recurrent neural network to obtain second time-domain sub-features corresponding to the N2 second-order product nodes;

[0216] Input the initial feature vectors of the N2 second-order product nodes sorted by click timestamps into the long short-term memory network, and use the updated feature vector of the last second-order product node as the second time-domain sub-feature vector corresponding to the N2 second-order product nodes;

[0217] In one embodiment, the initial features of the second-order product node are obtained by aggregating the features of the second-order product node and the time feature, where the time feature is the feature of the click timestamp between the second-order product node and the first-order user node.

[0218] The long short-term memory network is similar to that described in step 261 above and will not be described again here.

[0219] Indicative, with reference Figure 11 , Figure 11 The aggregation process of another second time domain sub-feature is also shown. The second-order commodity node vector representation 632 output by the long short-term memory network is another second time domain sub-feature.

[0220] Step 266 : Obtain a second time domain feature by aggregating the two second time domain sub-features.

[0221] Schematically, two second time-domain sub-feature vectors are concatenated to obtain a second time-domain feature vector.

[0222] It is worth noting that the execution order of the above steps 261 to 263 and steps 264 to 266 may be interchanged, that is, steps 264 to 266 are executed first, and then steps 261 to 263 are executed.

[0223] In summary, through the recurrent neural network, full attention is paid to the characteristics of the click timestamp in each order of goods (or user accounts), providing a method for calculating time domain features, and ensuring the accuracy of the predicted click rate.

[0224] Regarding step 280:

[0225] Figure 12 A flowchart of a method for predicting click-through rate provided by an exemplary embodiment of the present application is shown. The method includes:

[0226] Step 281: Concatenate the first spatial feature vector and the first temporal feature vector to obtain a feature vector for the target user; and concatenate the second spatial feature vector and the second temporal feature vector to obtain a feature vector for the target product.

[0227] In the above, the first spatial domain feature vector is obtained through step 241, the second spatial domain feature vector is obtained through step 242, the first time domain feature vector is obtained through steps 261, 262 and 263, and the second time domain feature vector is obtained through steps 264, 265 and 266.

[0228] In one embodiment, the first spatial domain feature vector and the first time domain feature vector are concatenated to obtain a feature vector of the target user side. Schematically,

[0229]

[0230] Among them, Emb u represents the feature vector on the target user side, represents the first spatial feature vector, represents the first time domain eigenvector, W r is the trainable parameter matrix.

[0231] Similarly, we can get the characteristic vector Emb of the target product side v .

[0232] Step 282: Concatenate the target user's feature vector with the target product's feature vector to obtain an intermediate feature vector.

[0233] Schematically, the intermediate eigenvector can be obtained by the following formula:

[0234] F=CONCAT(Emb u , Emb v ); (14)

[0235] F represents the intermediate eigenvector.

[0236] Step 283: The intermediate feature vector is passed through a multi-layer perceptron to predict the probability of the target user account clicking on the target product.

[0237] Indicatively, the probability can be obtained by the following formula:

[0238] α=σ(MLP(F)); (15)

[0239] Here, σ(·) represents the sigmoid function, which maps the output to a value between [0, 1]. α represents the final predicted click-through rate. MLP is a multi-layer perceptron.

[0240] In summary, the above method provides a method for predicting click-through rate based on the first spatial domain feature, the second spatial domain feature, the first temporal domain feature, and the second temporal domain feature, further ensuring the implementation of the entire solution.

[0241] In one embodiment, the server uses a click-through rate prediction network to predict the click-through rate of game players for a character skin. If the predicted click-through rate is high, the character skin is recommended and displayed on the player's game store homepage. The server sends the display instruction to the client, and the client responds by displaying the character skin.

[0242] In one embodiment, the server uses a click-through rate prediction network to predict the reader's click-through rate for a particular piece of information. If the predicted click-through rate is high, the server recommends displaying related information on the reader's browser. The server then sends a display instruction to the reader's terminal, which then displays the related information.

[0243] In one embodiment, the server uses a click-through rate prediction network to predict the click-through rate of consumers for a certain category of products. If the click-through rate is high, the server recommends related products of the category on the e-commerce platform. The server sends a command to display the related products to the consumer's terminal, and the terminal displays the related products.

[0244] Figure 13 The following is a structural block diagram of a click-through rate prediction device provided by an exemplary embodiment of the present application, wherein the device includes:

[0245] Determination module 1301 is configured to determine M2 second-order user accounts that have click relationships with N1 first-order products that have been clicked by the target user account; and determine N2 second-order products that have click relationships with M1 first-order user accounts that have clicked on the target product; N1, M2, M1, and N2 are all positive integers;

[0246] Processing module 1302 is configured to obtain a first spatial domain feature based on features of N1 first-order products and features of M2 second-order user accounts; and obtain a second spatial domain feature based on features of M1 first-order user accounts and features of N2 second-order products;

[0247] The processing module 1302 is further configured to obtain a first time-domain feature based on the click timestamps of the N1 first-order products and the M2 second-order user accounts; and obtain a second time-domain feature based on the click timestamps of the M1 first-order user accounts and the N2 second-order products.

[0248] The prediction module 1303 is configured to predict the probability of the target user account clicking on the target product based on the first spatial domain feature, the second spatial domain feature, the first temporal domain feature, and the second temporal domain feature.

[0249] In an optional embodiment, the determination module 1301 is further used to construct a first interaction subgraph on the target user side based on the target user node corresponding to the target user account, the N1 first-order product nodes corresponding to the N1 first-order products clicked by the target user account, the M2 second-order user nodes corresponding to the M2 second-order user accounts that have a click relationship with the N1 first-order products, and using the click timestamp as the edge weight between the target user node and the first-order product node, and using the click timestamp as the edge weight between the first-order product node and the second-order user node.

[0250] In an optional embodiment, the determination module 1301 is further used to construct a second interaction subgraph on the target product side based on the target product node corresponding to the target product, the M1 first-order user nodes corresponding to the M1 first-order user accounts that have clicked on the target product, the N2 second-order product nodes corresponding to the N2 second-order products that have a click relationship between the M1 first-order user accounts, and using the click timestamp as the edge weight between the target product node and the first-order user node, and using the click timestamp as the edge weight between the first-order user node and the second-order product node.

[0251] In an optional embodiment, the processing module 1302 is further used to transfer the features of N1 first-order product nodes and the features of M2 second-order user nodes to the target user node through the first graph neural network, and aggregate them with the features of the target user node to obtain the first spatial domain features.

[0252] In an optional embodiment, the processing module 1302 is further used to transfer the features of M1 first-order user nodes and the features of N2 second-order product nodes to the target product node through a second graph neural network, and aggregate them with the features of the target product node to obtain a second spatial domain feature.

[0253] In an optional embodiment, the processing module 1302 is further configured to perform two aggregation processes through the first graph neural network, and use the feature vector of the target user node obtained by the second aggregation as the first spatial feature vector;

[0254] During the kth aggregation:

[0255] Aggregate the N1 k-1th eigenvectors of the N1 first-order product nodes dimensionally to obtain the kth first-order product eigenvector. Then, concatenate the kth first-order product eigenvector with the k-1th eigenvector of the target user node to obtain the kth eigenvector of the target user node.

[0256] And, for the pth of the N1 first-order commodity nodes, M 2p M second-order user nodes 2p Aggregate the k-1th eigenvectors dimensionally and get the k-th second-order user eigenvector. Then concatenate the k-th second-order user eigenvector with the k-1th eigenvector of the first-order product node to get the k-th eigenvector of the first-order product node. The value of k is 1 or 2, and the value of p is 1 to N1.

[0257] in,

[0258] In an optional embodiment, the processing module 1302 is further configured to perform two aggregation processes through a second graph neural network, and use the feature vector of the target product node obtained by the second aggregation as the second spatial feature vector;

[0259] During the jth aggregation:

[0260] Aggregate the M1 j-1th eigenvectors of the M1 first-order user nodes dimensionally to obtain the j-th first-order user eigenvector. Then, concatenate the j-1th eigenvector of the target product node with the j-1th eigenvector of the target product node to obtain the j-th eigenvector of the target product node.

[0261] And, for the qth of the M1 first-order user nodes, N 2q N second-order commodity nodes 2q Aggregate the j-1th eigenvectors dimensionally and average them to get the j-th second-order product eigenvector. Then concatenate the j-th second-order product eigenvector with the j-1th eigenvector of the first-order user node to get the j-th eigenvector of the first-order user node. The value of j is 1 or 2, and the value of q is 1 to M1.

[0262] in,

[0263] In an optional embodiment, the processing module 1302 is further used to input the initial features of N1 first-order product nodes sorted by click timestamps into the first recurrent neural network to obtain first time-domain sub-features corresponding to the N1 first-order product nodes; input the initial features of M2 second-order user nodes sorted by click timestamps into the first recurrent neural network to obtain first time-domain sub-features corresponding to the M2 second-order user nodes; and obtain the first time-domain feature by aggregating two first time-domain sub-features.

[0264] In an optional embodiment, the processing module 1302 is further used to input the initial features of M1 first-order user nodes sorted by click timestamps into the second recurrent neural network to obtain second time-domain sub-features corresponding to the M1 first-order user nodes; input the initial features of N2 second-order product nodes sorted by click timestamps into the second recurrent neural network to obtain second time-domain sub-features corresponding to the N2 second-order product nodes; and obtain the second time-domain features by aggregating two second time-domain sub-features.

[0265] In an optional embodiment, the recurrent neural network is a long short-term memory network (LSTM).

[0266] In an optional embodiment, the processing module 1302 is further configured to input the initial feature vectors of the N1 first-order product nodes sorted by click timestamps into the long short-term memory network, and use the updated feature vector of the last first-order product node as the first time-domain sub-feature vector corresponding to the N1 first-order product nodes.

[0267] In an optional embodiment, the processing module 1302 is further used to input the initial feature vectors of the M2 second-order user nodes sorted by click timestamps into the long short-term memory network, and use the updated feature vector of the last second-order user node as the first time-domain sub-feature vector corresponding to the M2 second-order user nodes.

[0268] In an optional embodiment, the processing module 1302 is further configured to concatenate the two first time-domain sub-feature vectors to obtain a first time-domain feature vector.

[0269] In an optional embodiment, the second recurrent neural network is a long short-term memory network (LSTM).

[0270] In an optional embodiment, the processing module 1302 is further used to input the initial feature vectors of the M1 first-order user nodes sorted by click timestamps into the long short-term memory network, and use the updated feature vector of the last first-order user node as the second time-domain sub-feature vector corresponding to the M1 first-order user nodes.

[0271] In an optional embodiment, the processing module 1302 is further configured to input the initial feature vectors of the N2 second-order product nodes sorted by click timestamps into the long short-term memory network, and use the updated feature vector of the last second-order product node as the second time-domain sub-feature vector corresponding to the N2 second-order product nodes.

[0272] In an optional embodiment, the processing module 1302 is further configured to concatenate the two second time-domain sub-feature vectors to obtain a second time-domain feature vector.

[0273] In an optional embodiment, the initial features of the first-order commodity node are obtained by aggregating the features of the first-order commodity node and the time features; the initial features of the second-order user node are obtained by aggregating the features of the second-order user node and the time features.

[0274] In an optional embodiment, the initial features of the first-order user node are obtained by aggregating the features of the first-order user node and the time features; the initial features of the second-order product node are obtained by aggregating the features of the second-order product node and the time features.

[0275] In an optional embodiment, the prediction module 1303 is further used to splice the first spatial domain feature vector with the first time domain feature vector to obtain a feature vector on the target user side; and to splice the second spatial domain feature vector with the second time domain feature vector to obtain a feature vector on the target product side.

[0276] In an optional embodiment, the prediction module 1303 is further configured to concatenate the feature vector of the target user side with the feature vector of the target product side to obtain an intermediate feature vector.

[0277] In an optional embodiment, the prediction module 1303 is further configured to pass the intermediate feature vector through a multi-layer perceptron to predict the probability of the target user account clicking on the target product.

[0278] In an optional embodiment, the determination module 1301 is further used to construct an interactive bipartite graph, which includes multiple user nodes and multiple product nodes. When there is a click relationship between the user node and the product node, the user node and the product node are connected by an edge, and the edge weight between the user node and the product node is set to the click timestamp.

[0279] In an optional embodiment, the determination module 1301 is further used to determine a target user node, multiple first-order candidate product nodes connected to the target user node, and multiple second-order candidate user nodes connected to the multiple first-order candidate product nodes; sort the multiple first-order candidate product nodes according to the click timestamps and sample to obtain N1 first-order product nodes; sort the multiple second-order candidate user nodes according to the click timestamps and sample to obtain M2 second-order user nodes.

[0280] In an optional embodiment, the determination module 1301 is further used to determine a target product node, multiple first-order candidate user nodes connected to the target product node, and multiple second-order candidate product nodes connected to the multiple first-order candidate user nodes; sort the multiple first-order candidate user nodes according to click timestamps and sample to obtain M1 first-order user nodes; sort the multiple second-order candidate product nodes according to click timestamps and sample to obtain N2 second-order product nodes.

[0281] In summary, the above-described device, by mining information on the target user side (target user account, N1 first-order products, and M1 first-order user accounts) and the target product side (target product, M1 first-order user accounts, and N2 second-order products), globally focuses not only on explicit information (information between the target user account and first-order products, and information between the target product and first-order user account) but also on implicit information (information between first-order products and second-order user accounts, and information between first-order user accounts and second-order products). This symmetrical information-focusing approach avoids one-sided click-through rate predictions and improves the effectiveness and reliability of the predicted click-through rates.

[0282] In addition, by paying full attention to the historical click information between products and users, the predicted click-through rate is made more accurate.

[0283] Figure 14 14 is a schematic diagram illustrating the structure of a computer device according to an exemplary embodiment. The computer device 1400 includes a central processing unit (CPU) 1401, a system memory 1404 including a random access memory (RAM) 1402 and a read-only memory (ROM) 1403, and a system bus 1405 connecting the system memory 1404 and the CPU 1401. The computer device 1400 also includes a basic input / output system (I / O system) 1406 for facilitating information transmission between various components within the computer device, and a mass storage device 1407 for storing an operating system 1413, application programs 1414, and other program modules 1415.

[0284] The basic input / output system 1406 includes a display 1408 for displaying information and an input device 1409, such as a mouse or keyboard, for user input. Both the display 1408 and the input device 1409 are connected to the central processing unit 1401 via an input / output controller 1410 connected to the system bus 1405. The basic input / output system 1406 may also include an input / output controller 1410 for receiving and processing input from a variety of other devices, such as a keyboard, mouse, or electronic stylus. Similarly, the input / output controller 1410 also provides output to a display screen, printer, or other types of output devices.

[0285] The mass storage device 1407 is connected to the central processing unit 1401 via a mass storage controller (not shown) connected to the system bus 1405. The mass storage device 1407 and its associated computer-readable medium provide non-volatile storage for the computer device 1400. In other words, the mass storage device 1407 may include computer-readable media (not shown) such as a hard disk or a CD-ROM drive.

[0286] Without loss of generality, the computer device readable medium may include computer device storage media and communication media. Computer device storage media include volatile and non-volatile, removable and non-removable media implemented by any method or technology for storing information such as computer device readable instructions, data structures, program modules or other data. Computer device storage media include RAM, ROM, Erasable Programmable Read-Only Memory (EPROM), Electrically Erasable Programmable Read-Only Memory (EEPROM), CD-ROM, Digital Video Disc (DVD) or other optical storage, tape cassettes, magnetic tapes, disk storage or other magnetic storage devices. Of course, those skilled in the art will appreciate that the computer device storage media is not limited to the above-mentioned ones. The above-mentioned system memory 1404 and mass storage device 1407 can be collectively referred to as memory.

[0287] According to various embodiments of the present disclosure, the computer device 1400 may also be connected to a remote computer device on a network such as the Internet for operation. That is, the computer device 1400 may be connected to the network 1411 via the network interface unit 1412 connected to the system bus 1405, or the network interface unit 1412 may be used to connect to other types of networks or remote computer device systems (not shown).

[0288] The memory also includes one or more programs, which are stored in the memory. The central processing unit 1401 implements all or part of the steps of the above-mentioned infection trend prediction method by executing the one or more programs.

[0289] The present application also provides a computer-readable storage medium, which stores at least one instruction, at least one program, code set or instruction set. The at least one instruction, at least one program, code set or instruction set is loaded and executed by a processor to implement the click-through rate prediction method provided by the above method embodiment.

[0290] The present application provides a computer program product or computer program, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the click-through rate prediction method provided in the above method embodiment.

[0291] The serial numbers of the above embodiments of the present application are for description only and do not represent the advantages or disadvantages of the embodiments.

[0292] Those skilled in the art will understand that all or part of the steps to implement the above embodiments may be accomplished by hardware, or by a program to instruct the relevant hardware, and the program may be stored in a computer-readable storage medium, which may be a read-only memory, a disk, or an optical disk, etc.

[0293] The above description is merely an optional embodiment of the present application and is not intended to limit the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present application shall be included in the scope of protection of the present application.

Claims

1. A method for predicting click-through rate, characterized in that: The method comprises: Determine M2 second-order user accounts that have click relationships with the N1 first-order products that the target user account has clicked on; and determine N2 second-order products that have click relationships with the M1 first-order user accounts that have clicked on the target product; N1, M2, M1, and N2 are all positive integers; Based on the features of the N1 first-order products and the features of the M2 second-order user accounts, a first spatial domain feature is obtained; and based on the features of the M1 first-order user accounts and the features of the N2 second-order products, a second spatial domain feature is obtained; Based on the click timestamps of the N1 first-order products and the M2 second-order user accounts, a first time-domain feature is obtained; based on the click timestamps of the M1 first-order user accounts and the N2 second-order products, a second time-domain feature is obtained; The first spatial domain feature vector and the first time domain feature vector are spliced ​​together to obtain a feature vector on the target user side; the second spatial domain feature vector and the second time domain feature vector are spliced ​​together to obtain a feature vector on the target product side; the feature vector on the target user side is spliced ​​together with the feature vector on the target product side to obtain an intermediate feature vector; the intermediate feature vector is passed through a multi-layer perceptron to predict the probability of the target user account clicking on the target product.

2. The method according to claim 1, characterized in that The determining of M2 second-order user accounts having a click relationship with the N1 first-order products clicked by the target user account includes: Constructing a first interaction subgraph on the target user side based on the target user node corresponding to the target user account, the N1 first-order product nodes corresponding to the N1 first-order products clicked by the target user account, the M2 second-order user nodes corresponding to the M2 second-order user accounts that have the click relationship with the N1 first-order products, and using the click timestamp as the edge weight between the target user node and the first-order product node, and using the click timestamp as the edge weight between the first-order product node and the second-order user node; The determining of N2 second-order products that have a click relationship with the M1 first-order user accounts that have clicked the target product includes: A second interaction subgraph on the target product side is constructed based on the target product node corresponding to the target product, the M1 first-order user nodes corresponding to the M1 first-order user accounts that have clicked the target product, the N2 second-order product nodes corresponding to the N2 second-order products that have the click relationship between the M1 first-order user accounts, and the click timestamp as the edge weight between the target product node and the first-order user node, and the click timestamp as the edge weight between the first-order user node and the second-order product node.

3. The method according to claim 2, characterized in that The first spatial domain feature is obtained based on the features of the N1 first-order products and the features of the M2 second-order user accounts, including: Through a first graph neural network, the features of the N1 first-order product nodes and the features of the M2 second-order user nodes are transferred to the target user node, and aggregated with the features of the target user node to obtain the first spatial domain features; The second spatial domain feature is obtained based on the features of the M1 first-order user accounts and the features of the N2 second-order products, including: Through the second graph neural network, the features of the M1 first-order user nodes and the features of the N2 second-order product nodes are transferred to the target product node, and aggregated with the features of the target product node to obtain the second spatial domain features.

4. The method according to claim 3, characterized in that The first graph neural network transmits the features of the N1 first-order product nodes and the features of the M2 second-order user nodes to the target user node, aggregates them with the features of the target user node, and obtains the first spatial domain features, including: Performing two aggregation processes through the first graph neural network, and using the feature vector of the target user node obtained by the second aggregation as the first spatial domain feature vector; During the kth aggregation: Aggregating the N1 k-1th feature vectors of the N1 first-order product nodes dimensionally averaged to obtain a k-th first-order product feature vector, and then concatenating the k-1th feature vector of the target user node with the k-1th feature vector of the target user node to obtain a k-th feature vector of the target user node; And, for the pth of the N1 first-order commodity nodes, M 2p M of the second-order user nodes 2p Aggregate the k-1th eigenvectors dimensionally and average them to obtain the k-th second-order user eigenvector, then concatenate the k-th second-order user eigenvector with the k-1th eigenvector of the first-order product node to obtain the k-th eigenvector of the first-order product node, where the value of k is 1 or 2, and the value of p is 1 to N1; in, .

5. The method according to claim 3, characterized in that The second graph neural network is used to transfer the features of the M1 first-order user nodes and the features of the N2 second-order product nodes to the target product node, and aggregate them with the features of the target product node to obtain the second spatial domain features, including: Performing two aggregation processes through the second graph neural network, and using the feature vector of the target product node obtained by the second aggregation as the second spatial domain feature vector; During the jth aggregation: Aggregate the M1 j-1th eigenvectors of the M1 first-order user nodes dimensionally to obtain the j-th first-order user eigenvector, and then concatenate the j-1th eigenvector of the target product node to obtain the j-th eigenvector of the target product node; And, for the qth one of the M1 first-order user nodes, N 2q N of the second-order commodity nodes 2q Aggregate the j-1th feature vector dimension by dimension to obtain the j-th second-order product feature vector, then concatenate the j-1th feature vector of the first-order user node with the j-1th feature vector of the first-order user node to obtain the j-th feature vector of the first-order user node, where the value of j is 1 or 2, and the value of q is 1 to M1; in, .

6. The method according to any one of claims 2 to 5, characterized in that: The obtaining of the first time domain feature based on the click timestamps of the N1 first-order products and the M2 second-order user accounts includes: Inputting the initial features of the N1 first-order product nodes sorted by the click timestamp into a first recurrent neural network to obtain first time-domain sub-features corresponding to the N1 first-order product nodes; inputting the initial features of the M2 second-order user nodes sorted by the click timestamp into the first recurrent neural network to obtain first time-domain sub-features corresponding to the M2 second-order user nodes; and obtaining the first time-domain feature by aggregating two of the first time-domain sub-features; The second time domain feature is obtained based on the click timestamps of the M1 first-order user accounts and the N2 second-order products, including: The initial features of the M1 first-order user nodes sorted by the click timestamp are input into a second recurrent neural network to obtain second time-domain sub-features corresponding to the M1 first-order user nodes; the initial features of the N2 second-order product nodes sorted by the click timestamp are input into the second recurrent neural network to obtain second time-domain sub-features corresponding to the N2 second-order product nodes; and the second time-domain feature is obtained by aggregating two of the second time-domain sub-features.

7. The method according to claim 6, characterized in that The first recurrent neural network is a long short-term memory network LSTM; The obtaining of the first time domain feature based on the click timestamps of the N1 first-order products and the M2 second-order user accounts includes: Inputting the initial feature vectors of the N1 first-order product nodes sorted by the click timestamps into the long short-term memory network, and using the updated feature vector of the last first-order product node as the first time-domain sub-feature vector corresponding to the N1 first-order product nodes; Inputting the initial feature vectors of the M2 second-order user nodes sorted by the click timestamps into the long short-term memory network, and using the updated feature vector of the last second-order user node as the first time-domain sub-feature vector corresponding to the M2 second-order user nodes; The two first time-domain sub-feature vectors are concatenated to obtain a first time-domain feature vector.

8. The method according to claim 6, characterized in that The second recurrent neural network is a long short-term memory network LSTM; The second time domain feature is obtained based on the click timestamps of the M1 first-order user accounts and the N2 second-order products, including: Inputting the initial feature vectors of the M1 first-order user nodes sorted by the click timestamps into the long short-term memory network, and using the updated feature vector of the last first-order user node as the second time-domain sub-feature vector corresponding to the M1 first-order user nodes; Inputting the initial feature vectors of the N2 second-order product nodes sorted by the click timestamps into the long short-term memory network, and using the updated feature vector of the last second-order product node as the second time-domain sub-feature vector corresponding to the N2 second-order product nodes; The two second time-domain sub-feature vectors are concatenated to obtain a second time-domain feature vector.

9. The method according to claim 6, characterized in that The initial features of the first-order commodity node are obtained by aggregating the features and time features of the first-order commodity node; the initial features of the second-order user node are obtained by aggregating the features and time features of the second-order user node; The initial features of the first-order user node are obtained by aggregating the features and time features of the first-order user node; the initial features of the second-order product node are obtained by aggregating the features and time features of the second-order product node.

10. The method according to claim 2, characterized in that The method further comprises: Constructing an interactive bipartite graph, the interactive bipartite graph including a plurality of user nodes and a plurality of product nodes, connecting the user node with the product node when the click relationship exists between the user node and the product node, and setting the edge weight between the user node and the product node to the click timestamp; Determine the target user node, multiple first-order candidate product nodes connected to the target user node, and multiple second-order candidate user nodes connected to the multiple first-order candidate product nodes; sort the multiple first-order candidate product nodes according to the click timestamps and sample to obtain the N1 first-order product nodes; sort the multiple second-order candidate user nodes according to the click timestamps and sample to obtain the M2 second-order user nodes; Determine the target product node, multiple first-order candidate user nodes connected to the target product node, and multiple second-order candidate product nodes connected to the multiple first-order candidate user nodes; sort the multiple first-order candidate user nodes according to the click timestamps and sample to obtain the M1 first-order user nodes; sort the multiple second-order candidate product nodes according to the click timestamps and sample to obtain the N2 second-order product nodes.

11. A click rate prediction device, characterized in that: The device comprises: a determination module configured to determine M2 second-order user accounts that have click relationships with N1 first-order products that have been clicked by a target user account; and to determine N2 second-order products that have click relationships with M1 first-order user accounts that have clicked on the target product; wherein N1, M2, M1, and N2 are all positive integers; a processing module configured to obtain a first spatial domain feature based on the features of the N1 first-order products and the features of the M2 second-order user accounts; and to obtain a second spatial domain feature based on the features of the M1 first-order user accounts and the features of the N2 second-order products; The processing module is further configured to obtain a first time-domain feature based on the click timestamps of the N1 first-order products and the M2 second-order user accounts; and obtain a second time-domain feature based on the click timestamps of the M1 first-order user accounts and the N2 second-order products. The prediction module is used to splice the first spatial domain feature vector with the first time domain feature vector to obtain a feature vector on the target user side; splice the second spatial domain feature vector with the second time domain feature vector to obtain a feature vector on the target product side; splice the feature vector on the target user side with the feature vector on the target product side to obtain an intermediate feature vector; and pass the intermediate feature vector through a multi-layer perceptron to predict the probability of the target user account clicking on the target product.

12. A computer device, characterized in that: The computer device includes: a processor and a memory, wherein the memory stores a computer program, and the computer program is loaded and executed by the processor to implement the click-through rate prediction method according to any one of claims 1 to 10.

13. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, which is loaded and executed by a processor to implement the click-through rate prediction method according to any one of claims 1 to 10.

14. A computer program product, characterized in that The computer program product stores a computer program, and the computer program is executed by a computer device. The computer device includes a processor and a memory. The processor loads and executes the computer program to implement the click-through rate prediction method according to any one of claims 1 to 10.

Citation Information

Patent Citations

  • Click rate estimation method and device, equipment and storage medium

    CN110309406A

  • Video recommendation method and device, and computer readable storage medium

    WO2020088126A1