Method and device for training push model based on joint data of multiple parties and information push

By employing multi-party secure computation and fully homomorphic encryption technology, and training the push model with encrypted data from multiple data parties, the problem of data silos in cross-business scenarios is solved, enabling accurate and timely information push and protecting user privacy.

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

Patent Information

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

AI Technical Summary

Technical Problem

In the context of isolated user data from multiple sources, existing technologies struggle to achieve accurate information delivery across business scenarios while protecting data privacy, resulting in an incomplete portrayal of user interests and untimely capture of changes.

Method used

Employing multi-party secure computation technology, and through fully homomorphic encryption and differential privacy protection mechanisms, the push model is trained using encrypted data from multiple data parties. When pushing information, encrypted data is used for online prediction, thus hiding the numerical information of sensitive user fields.

Benefits of technology

It achieves privacy protection for cross-domain data access, ensuring data security, while improving the accuracy of information push and the timeliness of capturing user interests.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115033916B_ABST
    Figure CN115033916B_ABST
Patent Text Reader

Abstract

Embodiments of the present specification provide a method and device for training a push model based on joint data of multiple parties and information push, in an information push business scenario, user data of multiple data parties is combined for information push. In the process of using user data of multiple data parties, in order to protect data privacy, at least one of differential privacy, homomorphic encryption, statistical values, ordering values and the like is used to encrypt local data, then the encrypted data is integrated to obtain ciphertext distribution data as input data of the push model. Since the push model only perceives data distribution in the ciphertext state and does not use real numerical values, the data privacy of each data party can be protected, and an effective implementation manner is provided for cross-domain information push.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This specification relates to the field of secure computing technology, and in particular to a method and apparatus for training a push model and pushing information based on multi-party joint data. Background Technology

[0002] In existing recommendation scenarios, the user data used is typically multi-source. This includes behavioral data from various convenience platforms such as payment platforms, shopping platforms, and travel service platforms. If this data is not shared, data silos arise; for example, user occupation, interests, and user activity data across different platforms may be isolated. However, the user groups on these business platforms are usually not independent; the same user may generate behavioral data in different business scenarios, thus creating a certain correlation between user behavioral data from different business scenarios.

[0003] To better utilize this data, secure multi-party computation (MPC) can be considered for processing related business operations. Secure multi-party computation, also known as secure multi-party computation or MPC, involves multiple parties collaboratively computing the result of a function without disclosing their individual input data. The result is then made public to one or more of the parties. MPC can be applied to privacy-preserving intersection problems, joint training of machine learning models, data querying, and more. A typical application is joint statistical analysis and machine learning of privacy-preserving multi-party data. Secure multi-party computation allows participating parties to compute statistical and machine learning results based on joint data without exposing their individual raw data.

[0004] Specifically, in the information push business, how to fully utilize users' various business data for accurate information push while protecting data privacy in various business scenarios is a technical issue worth studying. Summary of the Invention

[0005] This specification describes one or more embodiments of a method and apparatus for training a push model based on multi-party joint data and for information push, in order to solve one or more problems mentioned in the background art.

[0006] According to a first aspect, a method for multi-party joint training of a push model is provided, in which multiple data parties jointly train the push model using their respective privacy data; the method includes: obtaining a first training sample, wherein the first training sample corresponds to a first encrypted distribution data and a first response tag based on a first search record, the first encrypted distribution data is obtained by integrating encrypted data of behavioral features provided by each data party, the behavioral features provided by a single data party are extracted based on the local historical behavioral data of the first user, the single behavioral feature corresponds to each feature value under each target category, and the first response tag is extracted based on the first response information of the first user in the first search record in response to the first information pushed; inputting the first encrypted distribution data into a predetermined push model to obtain a first prediction result; and adjusting the pending parameters of the push model based on the comparison between the first prediction result and the first response tag.

[0007] In one embodiment, the plurality of historical behavior features include at least one of browsing duration, browsing frequency, time elapsed since the browsing behavior, search frequency, click frequency, and time elapsed since the search behavior.

[0008] In one embodiment, a single target category corresponds to a single page or multiple pages, and the feature values ​​of a single behavioral feature under multiple target categories are one of the following: the operation value of the first user performing the corresponding operation on the corresponding page, the normalized value of the corresponding operation value, and the relative importance value of the corresponding operation value.

[0009] In one embodiment, a single data party determines the corresponding encrypted data for a single behavioral feature by: determining a single mean and a single variance of each feature value of the single behavioral feature based on each feature value corresponding to each target category; generating Gaussian noise that satisfies the single mean and single variance; and adding the Gaussian noise to each feature value of the single behavioral feature to form encrypted data.

[0010] In one embodiment, a single data party determines the corresponding encrypted data for a single behavioral feature by: determining the corresponding permutation order of each feature value of the single behavioral feature in order of magnitude; and determining the encryption result of each feature value of the single behavioral feature based on the permutation order to obtain the corresponding encrypted data.

[0011] In a further embodiment, the step of determining the encryption result of each feature value based on each permutation order includes: mapping each permutation order to a predetermined value domain using a first mapping function that satisfies fully homomorphic encryption, to obtain each mapping result, wherein the first mapping function is agreed upon in advance by each data party; and using each mapping result as the encryption result of each feature value.

[0012] In one embodiment, a single data party determines the corresponding encrypted data for a single behavioral feature in the following manner: for the single behavioral feature, it repeatedly samples over multiple predetermined time periods to obtain multiple feature data, each feature data including a feature value corresponding one-to-one with each target category within a single predetermined time period; it statistically analyzes each pair of representation parameters corresponding to each target category, each pair of representation parameters including the mean and variance of the multiple feature values ​​corresponding to the single behavioral feature of the single target category over multiple predetermined time periods; and it uses each pair of representation parameters to determine the encrypted data corresponding to each target category for the single behavioral feature.

[0013] In one embodiment, the integration of encrypted data on behavioral characteristics provided by various data parties is performed by at least one of summation, averaging, and median taking.

[0014] In one embodiment, the push model is a classification model, the first prediction result is the user's selection probability for each target category, the element in the first response label corresponding to the target category of the first information is a first value or a second value, the first response label corresponds to the first value when the first response information is clicked, and the first response label corresponds to the second value when the first response information is not clicked.

[0015] In one embodiment, the output of the push model is a number of target categories with the highest probability of being selected by the user. Each target category corresponds to a target identifier, and the first response tag is a target identifier corresponding to the target category selected by the user based on the information pushed.

[0016] In one embodiment, the first information is at least one of goods, services, information items, and film and television works.

[0017] According to the second aspect, a method for information push based on multi-party joint data is provided, which is used to push information to the second user in response to a search request sent by a second user by utilizing the joint historical behavior data of the second user from multiple data parties; the method is executed by a push server and includes: obtaining encrypted data of behavioral features extracted by each data party based on the second user's local historical behavior data, wherein each behavioral feature corresponds to a feature value under each target category; integrating the encrypted data of each data party to obtain second ciphertext distribution data; inputting the second ciphertext distribution data into a pre-trained push model to obtain a second prediction result; and selecting several candidate information items to push to the second user based on the second prediction result.

[0018] In one embodiment, a single target category corresponds to a single page or multiple pages, and the feature values ​​of a single behavioral feature under multiple target categories are one of the following: the operation value of the first user performing the corresponding operation on the corresponding page, the normalized value of the corresponding operation value, and the relative importance value of the corresponding operation value.

[0019] In one embodiment, a single data party determines the corresponding encrypted data for a single behavioral feature by: determining a single mean and a single variance of each feature value of the single behavioral feature based on each feature value corresponding to each target category; generating Gaussian noise that satisfies the single mean and single variance; and adding the Gaussian noise to each feature value of the single behavioral feature to form encrypted data.

[0020] In one embodiment, a single data party determines the corresponding encrypted data for a single behavioral feature by: determining the corresponding permutation order of each feature value of the single behavioral feature in order of magnitude; and determining the encryption result of each feature value of the single behavioral feature based on the permutation order to obtain the corresponding encrypted data.

[0021] In a further embodiment, the step of determining the encryption result of each feature value based on each permutation order includes: mapping each permutation order to a predetermined value domain using a first mapping function that satisfies fully homomorphic encryption, to obtain each mapping result, wherein the first mapping function is agreed upon in advance by each data party; and using each mapping result as the encryption result of each feature value.

[0022] In one embodiment, a single data party determines the corresponding encrypted data for a single behavioral feature in the following manner: for the single behavioral feature, it repeatedly samples over multiple predetermined time periods to obtain multiple feature data, each feature data including a feature value corresponding one-to-one with each target category within a single predetermined time period; it statistically analyzes each pair of representation parameters corresponding to each target category, each pair of representation parameters including the mean and variance of the multiple feature values ​​corresponding to the single behavioral feature of the single target category over multiple predetermined time periods; and it uses each pair of representation parameters to determine the encrypted data corresponding to each target category for the single behavioral feature.

[0023] In one embodiment, integrating the encrypted data from each data party to obtain the second ciphertext distribution data includes: integrating the encrypted data of behavioral characteristics provided by each data party through at least one of the following methods: summation, averaging, and median; and determining the second ciphertext distribution data based on the integration result.

[0024] In one embodiment, the second prediction result is the selection probability of the second user for each target category, and the step of selecting several candidate information to push to the second user based on the second prediction result includes: selecting several target categories with the highest selection probability from each target category; and selecting several candidate information from the several target categories to push to the second user.

[0025] According to a third aspect, an apparatus for training a push model based on multi-party joint data is provided, for multiple data parties to jointly train the push model using their respective privacy data; the apparatus includes: an acquisition unit configured to acquire a first training sample, wherein the first training sample corresponds to a first encrypted distribution data and a first response tag based on a first search record, the first encrypted distribution data is obtained based on the integration of encrypted data of behavioral features provided by each data party, the behavioral features provided by a single data party are extracted based on the local historical behavioral data of the first user, the single behavioral feature corresponds to each feature value under each target category, and the first response tag is extracted based on the first response information of the first user in the first search record in response to the first information pushed; a prediction unit configured to input the first encrypted distribution data into a predetermined push model to obtain a first prediction result; and an adjustment unit configured to adjust the pending parameters of the push model based on the comparison between the first prediction result and the first response tag.

[0026] According to the fourth aspect, an apparatus for information push based on multi-party joint data is provided, used to push information to a second user in response to a search request sent by a second user, utilizing joint historical behavioral data of the second user from multiple data parties; the apparatus is located on a push server and includes: an acquisition unit configured to acquire encrypted data of behavioral features extracted by each data party based on the second user's local historical behavioral data, wherein a single behavioral feature corresponds to a feature value under each target category; an integration unit configured to integrate the encrypted data from each data party to obtain second encrypted distribution data; a prediction unit configured to input the second encrypted distribution data into a pre-trained push model to obtain a second prediction result; and a push unit configured to select several candidate information items and push them to the second user based on the second prediction result.

[0027] According to a fifth aspect, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed in a computer, causes the computer to perform the method of the first or second aspect.

[0028] According to a sixth aspect, a computing device is provided, including a memory and a processor, characterized in that the memory stores executable code, and when the processor executes the executable code, it implements the method of the first aspect or the second aspect.

[0029] The methods and apparatus provided in the embodiments of this specification enable privacy protection. When multiple data providers jointly train a push model using data from their respective business scenarios, each data provider only provides encrypted versions of its local business data, thereby hiding the specific numerical information of sensitive fields for search users. The data distributions of each data provider are integrated into encrypted data distribution ciphertext, which is then used as homogeneous samples for training the downstream push model. Furthermore, when using the trained business model for information push, the encrypted data distributions from multiple data providers can still be used for online prediction. In this way, the values ​​of sensitive user fields can be hidden before multi-source data is input into the push model without changing the data value range or distribution. During cross-domain (cross-business scenario) data calls, only the encrypted data distribution is perceived, not the actual numerical values, thus preventing data leakage and protecting privacy. Attached Figure Description

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

[0031] Figure 1 This diagram illustrates the architecture of a push model trained using multi-party joint data, based on the technical concept described in this specification.

[0032] Figure 2 This diagram illustrates a method for constructing training samples using multi-party joint data with privacy protection, according to one embodiment.

[0033] Figure 3 A flowchart illustrating a method for training a push model using training samples constructed from multi-party joint data, according to one embodiment;

[0034] Figure 4 A flowchart illustrating a method for pushing information based on multi-party joint data using a trained push model, according to one embodiment;

[0035] Figure 5 A schematic block diagram of an apparatus for training a push model using training samples constructed from multi-party joint data, according to one embodiment, is shown.

[0036] Figure 6 A schematic block diagram of an apparatus for pushing information based on multi-party joint data using a trained push model, according to one embodiment, is shown. Detailed Implementation

[0037] The technical solutions provided in this specification are described below with reference to the accompanying drawings.

[0038] With the widespread adoption of various terminal devices and the development of artificial intelligence, personalized information push scenarios based on big data are becoming increasingly common. However, in conventional information push scenarios, most solutions use user behavior data from a single domain (a single business scenario or a single service provider) to predict the user's intent or potential future behavior, thereby determining the information to push to the user. This approach may suffer from limitations such as relatively limited data, insufficient characterization of user interests, and poor timeliness in capturing changes in user interests. For example, if a user searches for brushes on one shopping platform and clicks on multiple pages for dishwashing brushes, when the user switches to another shopping platform to search for brushes, the information from the previous platform cannot be utilized in a timely manner. Consequently, the pushed information may include various brushes such as toothbrushes, bottle brushes, window screen cleaning brushes, and toilet brushes, failing to accurately capture the user's specific need for dishwashing brushes.

[0039] To leverage more user data, cross-domain solutions are considered. This involves using data from multiple business scenarios or multiple business parties to model and predict user behavior, thereby determining the information to be pushed to users. Cross-domain solutions typically involve data privacy protection. These business parties can be service providers within the corresponding business scenario, such as shopping platforms providing sales-related services (merchants listing products, users searching for products, purchasing, and paying), film and television platforms providing film and television playback services (search and playback), or academic database retrieval services, etc. A single data party can hold user data from one business scenario or multiple business scenarios. In large-scale data security solutions, cross-domain joint prediction typically uses semi-homomorphic encryption to achieve privacy protection. Semi-homomorphic encryption includes, for example, multiplicative homomorphism, additive homomorphism, and finite-order homomorphism. Each of these methods has certain limitations and is not suitable for approximate calculations of floating-point numbers.

[0040] In view of this, this specification proposes a technical solution based on differential privacy or fully homomorphic encryption, using multi-party joint data to train a push model and using the trained model for information push. Those skilled in the art will understand that if an encryption function (also called a mapping function) simultaneously satisfies additive homomorphism and multiplicative homomorphism, it is called fully homomorphic encryption. Ciphertext obtained using this encryption function can perform various encrypted operations (such as addition, subtraction, multiplication, division, polynomial evaluation, exponentiation, logarithms, and trigonometric functions). The ciphertext operation result is identical to the ciphertext operation result of the plaintext operation. Ciphertext data can be decrypted into plaintext data using a decryption function corresponding to the encryption function (such as the inverse operation of the encryption function).

[0041] The multi-party joint training of the push model is based on data held by multiple data providers. These data providers can be data holders, such as service providers for one or more services.

[0042] Data providers can jointly train and push models through federated learning. Federated learning can be conducted in a centralized manner, such as by integrating (or synchronizing) data through a service provider or a trusted third party, or in a decentralized manner, such as by multiple data providers exchanging data with each other via MPC. Figure 1 This illustrates an implementation architecture where multiple data providers collaborate to train a push model with the assistance of a third party (hub node). In this decentralized learning approach... Figure 1 Operations performed by a third party can be distributed and securely computed across various data parties.

[0043] like Figure 1 As shown, in a centralized learning architecture, each data provider can perform preliminary processing on its local data and then send the encrypted results to a third party (such as...). Figure 1 (The hub node in the process). Here, local data can be historical user behavior data prior to pushing information to users, such as users' search, browsing, and purchasing behavior on relevant platforms. Third parties can integrate the encrypted data from various data providers, and the integrated result serves as the input data for the push model.

[0044] During the training of the push notification model, response tags can be determined based on user action data in response to information pushed based on the aforementioned historical behavior data. These tags describe whether the pushed information has generated a response from the user, such as clicking or purchasing. Response tags can be determined statistically based on the push results of various business units, or based on the push results of a single business unit. Response tags can be in plaintext or encrypted form. Third parties can compare the output of the push notification model with the response tags to determine the model loss and adjust the parameters to be determined in the direction of reducing the model loss.

[0045] In the decentralized push model training mode Figure 1 The central node no longer needs to act as a third-party hub; the operations described above can be performed by each data party using multi-party secure computation (MPC). MPC can utilize homomorphic encryption, secret sharing, and obfuscated circuits for secret computation of data, which will not be elaborated upon here.

[0046] The trained push model can be invoked by the servers of various business units. During the process of invoking the push model in an information push scenario, data from a single business unit can be used to predict the information needed by the user, or combined data from multiple business units can be used to predict the information needed by the user. It is worth noting that the data input to the push model remains encrypted to maintain the consistency of the data received by the push model, thus ensuring the effectiveness of the push model.

[0047] The technical concept of this specification is described in detail below.

[0048] Figure 2 This specification illustrates a training sample construction process according to one embodiment. The entity executing this process can be a device, computer, server, or similar device with a certain computing capability. More specifically, for example... Figure 1 The diagram illustrates either a hub node acting as a third party (with a center) or a cluster composed of various data providers (without a center), etc. This process is proposed based on the joint processing of business data from different business scenarios or different business providers (such as multiple different shopping platforms), and is a cross-domain data processing process based on privacy protection.

[0049] For ease of description, the construction process of the training sample is described using the first training sample as an example. This first training sample can be any training sample in the training set. The first training sample can correspond to a single search process by the first user, for example, denoted as the first search record. This first search record can correspond to the first user's first historical behavior data, as well as the first pushed information and the user's first response to the first information. Here, "first" refers to the first training sample without any other substantive limitations.

[0050] Here, for the first user's first search record, each data provider can have corresponding local historical behavior data for the first user. This historical behavior data is collectively referred to as the first historical behavior data. It can be understood that the first historical behavior data is the behavior data generated by the first user before performing this search operation, and may include, but is not limited to, at least one of the following: search frequency, time elapsed since the search, browsing frequency, browsing duration, click frequency, number of historical purchases, etc.

[0051] The first piece of information can be the information pushed by the platform to the first user in response to their search. This first piece of information may correspond to a target category, such as information category (e.g., product category) or information preference (e.g., price preference). The user can take further action (e.g., click, browse) on the pushed first piece of information, or they can choose not to. The information in which the user takes or does not take further action can be called the first response information.

[0052] like Figure 2As shown, the process of determining the training samples of the push model may include the following steps: Step 201, obtaining encrypted data of behavioral features extracted by each data party for multiple target categories based on the first user's local historical behavioral data; Step 202, integrating the encrypted data of each data party to obtain the first ciphertext distribution data; Step 203, determining the first response label based on the first response information.

[0053] First, in step 201, encrypted data of behavioral features extracted by each data provider based on the first user's local historical behavioral data for multiple target categories are obtained.

[0054] It is understandable that a single data provider can extract corresponding behavioral features from a user's historical behavior data locally. These behavioral features can correspond to browsing behavior, search behavior, click behavior, etc. A single type of behavior can correspond to one or more behavioral features. For example, browsing behavior can correspond to browsing frequency, the interval between browsing time and the current time, browsing duration, etc.; search behavior can correspond to search frequency, the interval between search time and the current time, etc.; and click behavior can correspond to click frequency, etc. Among these, behavioral features such as browsing duration, search frequency, and click frequency generally have higher importance with larger values, while behavioral features related to the interval between the current time and the current time have higher importance with smaller values. In an optional embodiment, the current search behavior, because its proportion is much greater than other searches, can be one of the historical behavior data, and since the interval between the current time and the current time is close to 0, it can have much greater importance than other historical search behaviors.

[0055] When extracting behavioral features, extraction can be performed on a single page (such as a product, service, or video), or on several pages corresponding to a category of targets (such as a category of products, services, or videos). A single target page or a category of target pages can be referred to as a target category. Thus, the behavioral features extracted from a single data source can be shown in Table 1:

[0056] Table 1 Examples of behavioral features extracted from a single data source

[0057]

[0058]

[0059] In optional implementations, the values ​​in Table 1 can also be converted into importance values ​​by the corresponding data provider according to a predetermined method. Conversion principles include: higher search frequency equals higher importance values; longer browsing time equals higher importance values; higher click frequency equals higher importance values; shorter time elapsed since the last search equals higher importance values, etc., which will not be elaborated upon here. It is worth noting that in a search scenario, the current search behavior has greater importance. Therefore, when extracting behavioral features, more weight can be given to target categories with strong relevance to the current search term. For example, if the current search term is "mouse," then for the target category of the corresponding mouse product page, greater weight should be given to behavioral features such as search frequency and search time elapsed since the last search, such as calculating search frequency as 10 times.

[0060] To protect local data privacy, data providers can also encrypt the extracted behavioral features to obtain corresponding encrypted data.

[0061] In one embodiment, each data provider adds noise that satisfies differential privacy, such as Gaussian noise under a Gaussian mechanism, to the behavioral features extracted locally. Under the Gaussian mechanism, noise satisfying N(μ, σ) can be added. 2 The noise is a Gaussian distribution. The mean μ and variance σ are given by the expression. 2 It can be determined based on feature data of behavioral characteristics. For example, the mean μ and variance σ of the feature data are respectively. 2 Specifically, a single data point can have a mean and variance of μ and σ, respectively. 2 A series of noise elements are generated under a Gaussian distribution, and these noise elements are superimposed one-to-one onto the feature values ​​of the behavioral features to obtain the noisy behavioral features as encrypted data. It can be understood that the variance σ above... 2 It is the square of the standard deviation σ. Therefore, variance can also be replaced by standard deviation, and the two are equivalent in characterization.

[0062] It is worth noting that, when various behavioral characteristics are defined according to their respective behaviors, the values ​​for different behavioral characteristics may have different units of measurement, and the values ​​may differ significantly. Therefore, the noise parameters μ and σ can be determined for a single behavioral characteristic. 2 And add corresponding noise. When the feature values ​​of various behavioral characteristics are mapped to a predetermined interval (e.g., between 0 and 1) in a predetermined manner, a noise parameter μ and σ can be determined for the feature values ​​of all behavioral characteristics. 2 And add the corresponding noise.

[0063] In another embodiment, homomorphic encryption can be used, where a predetermined mapping function maps the feature values ​​of the behavioral characteristics to ciphertext that can be homomorphically computed, serving as the encrypted data of the behavioral characteristics. Taking the data in Table 1 as an example, if the mapping function is denoted as E, then the encrypted features 15, 3, and 8 can be denoted as E(15), E(3), and E(8). Under homomorphic encryption, the mapping E satisfies the following: the computation result in the ciphertext state is consistent with the ciphertext result in the plaintext state after the computation result in the same mapping. Therefore, the computation result in the ciphertext state is consistent with the plaintext result after decryption by the inverse function of the corresponding mapping function. For example, E(15+3)=E(15)+E(3), E(15×3)=E(15)×E(3).

[0064] In another embodiment, behavioral features can be encrypted by hiding feature values ​​and describing the data distribution through the magnitude of these feature values. For example, each data provider can pre-align various possible target categories (such as product categories), i.e., pre-agree on the order of each search target. Each data provider determines an ordinal value for the corresponding target category according to the magnitude of the feature value corresponding to the search target, replacing the feature value. For example, if the target categories include a, b, and c, and the feature values ​​corresponding to data provider 1 under the behavioral feature of click frequency are 5, 10, and 8 respectively, then they are arranged in descending order as b, c, and a. To align with the data of other data providers, the order of target categories a, b, and c can be used to replace the corresponding feature values, such as (3, 1, 2), indicating that a is ranked 3rd, b is ranked 1st, and c is ranked 2nd. In this way, the data distribution can be used as encrypted data instead of specific numerical values, thereby encrypting the local data.

[0065] In a further embodiment, to avoid the leakage of data distribution information, the data distribution information can be encrypted using methods such as homomorphic encryption, and the resulting ciphertext can be used as encrypted data for behavioral characteristics. For example, the order (3, 1, 2) of the search targets a, b, c can be encrypted as (E(3), E(1), E(2)).

[0066] In another embodiment, a single data provider can also obtain a statistical probability distribution based on repeated sampling results multiple times, which serves as the corresponding encrypted data. For example, historical behavior data of the first user within a predetermined time period can be acquired, and feature values ​​of the corresponding behavioral characteristics can be extracted. Then, the mean and variance of the feature values ​​for the first user in each time period for a single target category can be calculated. The variance describes the probability that the first user's intention is based on the mean of the feature values ​​in each time period. Generally, the larger the variance, the smaller the probability. This mean, variance, or a value negatively correlated with the variance can replace the corresponding feature values ​​as the corresponding encrypted data.

[0067] For example, given a predetermined time period of one day and target categories a, b, and c, under the behavioral characteristic of click frequency, the feature values ​​corresponding to data point 1 on the last day are 5, 10, and 8, respectively; the feature values ​​corresponding to data point 1 on the second-to-last day are 6, 3, and 5, respectively; the feature values ​​corresponding to data point 1 on the third-to-last day are 4, 7, and 1, and so on. Then, for target category a, the mean and variance can be calculated based on the feature values ​​5, 6, 4, etc., obtained from multiple samplings. Assuming the mean is 5 and the variance is 24, the mean 5 and variance 24 can be used as the encrypted data corresponding to the feature values ​​of target category a under the behavioral characteristic of click frequency. For a single behavioral feature of a single target category, a set of μ and σ can be determined. 2 For ease of description, we can use a set of μ, σ 2 These are called characterization parameter pairs.

[0068] In a further optional embodiment, the above statistical results can also be obtained by sorting the feature values ​​of multiple target categories. That is, if the order of each target category a, b, c... on the penultimate day is (5, 1, 2...), the second order is (6, 3, 2...), and the third order is (8, 1, 3...), then the statistical results for target category a are the mean and variance of 5, 6, 8...

[0069] In other embodiments, each data party may also encrypt local behavioral characteristics in other reasonable ways, which will not be elaborated here.

[0070] Next, in step 202, the encrypted data from each data provider is integrated to obtain the first ciphertext distribution data. It can be understood that in order to jointly train the push model using data from multiple data providers, it is necessary to integrate the data from each data provider in an encrypted state, i.e., to integrate the encrypted data, thereby obtaining comprehensive information reflecting the first user's interest in the search target of the current search.

[0071] The integration of encrypted data from various data sources can be performed in ciphertext. For example, for data under differential privacy encryption, the data can be integrated according to the encrypted data after adding noise; under encryption methods that use data distribution instead of feature values, the data distribution can be integrated; for encrypted data under homomorphic encryption, the encrypted ciphertext can be used for integration; and so on.

[0072] Data integration of encrypted data representing the behavioral characteristics of individual data providers can be achieved through one of the following methods: summation, averaging, or median. For example, summation can be used to overlay information from various data providers to construct a complete user interest profile. For instance, if data provider 1's encrypted data is (E(3), E(1), E(2)...), data provider 2's encrypted data is (E(6), E(3), E(2)...), data provider 3's encrypted data is (E(13), E(0), E(5)...), etc., then the integrated data can be: E(3), E(1), E(2)...) + (E(6), E(3), E(2)...) + (E(13), E(0), E(5)...) + ...

[0073] In specific embodiments, other reasonable integration methods can also be used to integrate encrypted data, which will not be elaborated here. It is understood that the integrated encrypted data can describe the cross-domain comprehensive information distribution of the first user in ciphertext state without revealing the real data, and therefore can be referred to as the first ciphertext distribution data.

[0074] On the other hand, step 203 determines the first response label based on the first response information. It can be understood that the first response information describes whether the first user accepts the pushed information, expressing the degree to which the pushed first information matches the user's intent. Therefore, based on the first response information, the response label of the first training sample can be determined.

[0075] In one embodiment, the push model is a classification model, and the response label can be a single numerical value. In one case, if the first user performs further action on the current first information, the response label is a predetermined first value (e.g., a predetermined non-zero value of 1); if the first user does not perform further action on the current first information, the response label is a predetermined second value (e.g., zero). In this case, the first information can be a single push message. Further, for each message pushed in the current search, each message can correspond to a training sample. The historical behavior data and the current search term of these training samples are consistent, and the corresponding label is determined based on the actual situation. In another case, the single numerical value corresponding to the response label can be the target identifier corresponding to the target clicked by the user. For example, if the user clicks on page A, the response label is target identifier 1; if the user clicks on page B, the response label is target identifier 2, and so on.

[0076] In another embodiment, the push model is a multi-task model, and the response tags can also be response vectors corresponding to multiple information categories. For example, one information category corresponds to one target category, or one information category and one information tendency correspond to one target category. If the push information corresponding to these target categories is further processed by the user, the corresponding dimension can correspond to the first value; otherwise, it corresponds to the second value. Optionally, the element values ​​of the dimension for a single target category in the corresponding vector in this embodiment can also be statistical results of multiple push information. In this statistical result, the corresponding dimension can be determined as the first value and the second value according to whether the user has further processed the push information under the corresponding target category (regardless of the number of messages processed), or it can be determined as the corresponding value according to the number of push information under the corresponding target category processed by the user. If a user operates on a total of 10 data items, with 8 items operated on the first target category, 2 items operated on the second target category, and 0 items operated on the others, then the corresponding dimension for the first target category can be determined as 8 or 0.8 (normalized result), the corresponding dimension for the second target category can be determined as 2 or 0.2 (normalized result), and the other dimensions can be determined as 0.

[0077] In another optional embodiment, the response label can also be a response matrix corresponding to multiple information categories. Each row / column of this matrix corresponds to a target category, and each column / row corresponding to a single target category contains two dimensions: one dimension indicates whether the information of the corresponding target category is pushed to the first user, and the other dimension indicates whether the first user performs further action on the information of the corresponding target category. Optionally, when the information of the corresponding target category is pushed to the first user, the corresponding dimension is a first value (e.g., 1); otherwise, it is a second value (e.g., 0). If the first user performs further action on the information of the corresponding target category, the corresponding dimension is a first value (e.g., 1); otherwise, it is a second value (e.g., 0).

[0078] In the embodiments corresponding to the response vectors and response matrices described above, a single search process may correspond to only one training sample. In other embodiments, the response labels can be determined in other reasonable ways, which will not be elaborated here. The first response label can be in plaintext or ciphertext form according to the pre-agreed terms of each data party, and this specification does not limit this.

[0079] Those skilled in the art will understand that steps 201 and 202 above are the process of determining the input data of the push model in the training samples, and step 203 is the process of determining the sample labels in the training samples. When the first search record is known, these two processes are independent of each other. Therefore, these two processes can be performed in parallel or in reverse order. This specification does not limit this.

[0080] according to Figure 2The illustrated process extracts the first training sample for training the push model. Multiple training samples can be extracted in a similar manner. In an optional implementation, multiple training samples can be extracted in batches. In a single training sample, the corresponding encrypted distribution data serves as input data, and the corresponding response label serves as the sample label. By utilizing multiple training samples jointly extracted from data from multiple data sources, a cross-business platform (cross-domain) push model can be trained to determine information that better matches the user's search intent.

[0081] Figure 3 This specification illustrates a flowchart of a push notification model trained using multi-party joint data, according to one embodiment. This flowchart is used to train the push notification model based on training samples constructed from the privacy data of multiple data parties. The entity executing this flowchart can be a device, computer, server, etc., with a certain computing power. More specifically, for example... Figure 1 The diagram illustrates a hub node acting as a third party (with a center), or a cluster composed of various data providers (without a center), etc. This process is proposed based on the joint processing of business data from different business scenarios or different business providers (such as multiple different shopping platforms), and is a cross-domain push model training process based on privacy protection.

[0082] like Figure 3 As shown, the process of training a push model based on multi-party joint data may include the following steps:

[0083] Step 301: Obtain the first training sample. The first training sample can be obtained sequentially, randomly, or sampled according to a predetermined method. The first training sample can be any training sample in the training sample set. More specifically, the first training sample can be... Figure 2 The illustrated process constructs training samples. In an optional embodiment, multiple samples in a batch can be obtained sequentially, with the first training sample being one of the training samples in that batch. The first training sample may correspond to first encrypted distribution data and a first response label. The first encrypted distribution data can be used as the data input to the push model in the corresponding training sample, i.e., input data, which can be determined in advance when constructing the training samples or when training the push model; this is not limited here.

[0084] Step 302: Input the first encrypted distribution data into a pre-determined push model to obtain the first prediction result. Here, the pre-determined push model can be a model with a pre-determined model structure and undetermined parameters. For example, it can be a decision tree model, a neural network, etc. It can be a classification model or a multi-objective probability prediction model.

[0085] The first encrypted distribution data is input into the push model. After processing the encrypted data, the push model can output the target category corresponding to the target page most likely to be clicked by the user, or the probability of each target category being clicked by the user. The output probability can be in plaintext or encrypted form, consistent with the plaintext and encrypted forms of the first response tag.

[0086] In a specific example, the push model could be an MMOE (Multi-gate Mixture-of-Experts) multi-objective prediction model. The MMOE model is an optimized version of the Shared-Bottom Multi-task Model. It can provide a gating circuit for each prediction objective, allowing for different Expert weights for different tasks. This enables selective utilization of Experts, learning different combinations of Experts, and thus making it easier for the model to capture the correlations and differences between sub-tasks. In this case, each task can correspond to a probability for each search objective.

[0087] Step 303: Based on the comparison between the first prediction result and the first response label, adjust the undetermined parameters of the push model. Specifically, the current model loss can be determined based on the comparison between the first prediction result and the first response label, and the undetermined parameters in the push model can be adjusted in the direction of decreasing model loss. The model loss can be determined using loss functions such as cross-entropy, squared difference, or logarithm, based on the form of the first prediction result and the first response label. Adjusting the undetermined parameters can be done using gradient descent, Newton's method, etc. The gradient data used is the gradient of the model loss with respect to the corresponding undetermined parameters, which will not be elaborated here.

[0088] Once the parameters to be determined converge and the loss function converges, the push notification model can be considered successfully trained. Furthermore, using the trained push notification model, information can be pushed to users based on data from multiple sources.

[0089] Figure 4 This illustrates a process for information dissemination based on shared data from multiple parties. The executor of this process can be a device, computer, server, or similar entity with a certain computing capacity. More specifically, for example... Figure 1 This can be illustrated as a hub node acting as a third party, or a single specific business service provider (such as a shopping platform). For ease of description, the corresponding executing entity can be referred to as a push server. In a search scenario, this process can be executed in response to a search request from a second user. Here, the second user can be any user served by the push server.

[0090] like Figure 4As shown, the process of pushing information under multi-party joint data may include the following steps: Step 401, obtaining encrypted data of behavioral features extracted by each data party based on the local historical behavioral data of the second user, wherein each behavioral feature corresponds to a feature value under each target category; Step 402, integrating the encrypted data of each data party to obtain second ciphertext distribution data; Step 403, inputting the second ciphertext distribution data into a pre-trained push model to obtain a second prediction result; Step 404, based on the second prediction result, selecting several candidate information items to push to the second user.

[0091] First, in step 401, encrypted data of behavioral features extracted by each data provider from the second user's local historical behavioral data across multiple target categories is obtained. Each behavioral feature corresponds to a feature value under each target category. The confidential data is the ciphertext data obtained after encrypting these feature values.

[0092] In one embodiment, a single target category is a single page or multiple pages corresponding to a single target category, and the individual behavioral feature values ​​under multiple target categories are one of the following: the operation value of the first user performing the corresponding operation on the corresponding page, the normalized value of the corresponding operation value, and the relative importance value of the corresponding operation value.

[0093] In one alternative implementation, a single data party determines the corresponding encrypted data for a single behavioral feature by: determining a single mean and a single variance for each feature value corresponding to each target category based on the single behavioral feature; generating Gaussian noise that satisfies the single mean and single variance; and adding the Gaussian noise to each feature value to form encrypted data.

[0094] In another optional implementation, a single data party determines the corresponding encrypted data for a single behavioral feature by: determining the order of each feature value of the single behavioral feature according to its size; and determining the encryption result of each feature value based on the order of the order. For example, if the target categories include a, b, and c, and the feature values ​​corresponding to the click frequency behavioral feature are 5, 10, and 8 respectively, then arranged in descending order as b, c, and a, the order of target categories a, b, and c, such as (3, 1, 2), can be used as the encrypted data for the corresponding feature values.

[0095] In a further embodiment, determining the encryption result of each feature value based on each permutation order includes: mapping each permutation order to a predetermined value domain using a first mapping function that satisfies fully homomorphic encryption, obtaining each mapping result, wherein the first mapping function is agreed upon in advance by each data party; and using each mapping result as the encryption result of each feature value. If the mapping function is denoted as E, then the encrypted features 15, 3, and 8 can be denoted as E(15), E(3), and E(8).

[0096] In another optional implementation, a single data provider determines the corresponding encrypted data for a single behavioral feature in the following way: For a single behavioral feature, repeated sampling is performed over multiple predetermined time periods to obtain multiple feature data points. Each feature data point includes feature values ​​that correspond one-to-one with each target category within a single predetermined time period. Each target category's corresponding representation parameter pairs are statistically analyzed. Each representation parameter pair includes the mean and variance of the multiple feature values ​​corresponding to the single behavioral feature of the single target category over multiple predetermined time periods. The encrypted data corresponding to each target category for the single behavioral feature is determined using these representation parameter pairs. For example, if the predetermined time period is one day, and the feature values ​​of target category a under the behavioral feature of click frequency for data provider 1 are 5, 6, 4, etc. for several consecutive days, then the mean and variance of 5, 6, 4, etc. (assuming the mean is 5 and the variance is 24) can be used as the encrypted data for the feature value of target category a under the behavioral feature of click frequency.

[0097] The push server can obtain this encrypted data and call the trained push model to determine the information to be pushed.

[0098] Then, in step 402, the encrypted data from each data party is integrated to obtain the second ciphertext distribution data. The encrypted data of behavioral characteristics provided by each data party are integrated using at least one of the following methods: summation, averaging, or median calculation; the second ciphertext distribution data is determined based on the integration result. The integrated encrypted data can be used to perceive the cross-domain comprehensive information distribution of the second user in the ciphertext state, but cannot be used to perceive the actual data.

[0099] Next, in step 403, the second encrypted distribution data is input into the pre-trained push model to obtain the second prediction result. The second prediction result can be a classification result into several target categories, or a multi-task prediction probability result of the user's intent for each target category.

[0100] Further, via step 404, based on the second prediction result, several candidate information items are selected and pushed to the second user. If the second prediction result is a classification result into several target categories, several candidate information items can be selected from the target categories corresponding to the second prediction result and pushed to the second user. If the second prediction result is a multi-task prediction probability result of the second user for each target category's selection probability, one or more target categories with the highest predicted selection probability can be selected from each target category, and then several candidate information items can be selected from these one or more target categories and pushed to the second user.

[0101] In summary, the technical concept presented in this specification involves combining user data from multiple data providers in an information push service scenario. To protect data privacy during the joint use of user data from multiple providers, local data can be encrypted using at least one of the following methods: differential privacy, homomorphic encryption, statistical values, or sorted values. The encrypted data is then integrated to obtain ciphertext distribution data, which serves as the input data for the push model. Since the push data intelligently perceives the data distribution in the ciphertext state but not the actual numerical values, the data privacy of each data provider can be protected, providing an effective way to implement cross-domain information push.

[0102] According to another embodiment, an apparatus for training a push model based on multi-party joint data is also provided, for multiple data parties to jointly train the push model using their respective private data. This apparatus can be located at a trusted third party or distributed among the various data parties; no limitation is made herein.

[0103] Figure 5 This is a schematic diagram of an apparatus for training a push model based on multi-party joint data, according to one embodiment of this specification. Figure 5 As shown, the device 500 includes:

[0104] The acquisition unit 501 is configured to acquire a first training sample, wherein the first training sample corresponds to a first encrypted distribution data and a first response tag based on a first search record. The first encrypted distribution data is obtained by integrating encrypted data of behavioral features provided by each data party. The behavioral features provided by a single data party are extracted based on the local historical behavioral data of the first user. Each behavioral feature corresponds to a feature value under each target category. The first response tag is extracted based on the first response information of the first user to the first information pushed in the first search record.

[0105] The prediction unit 502 is configured to input the first ciphertext distribution data into a predetermined push model to obtain a first prediction result;

[0106] Adjustment unit 503 is configured to adjust the pending parameters of the push model based on the comparison between the first prediction result and the first response label.

[0107] According to another embodiment, an apparatus for information push based on multi-party joint data is also provided, used to push information to a second user in response to a search request, utilizing joint historical behavioral data of the second user from multiple data providers. This apparatus can be installed on a push server. Figure 6 As shown, an information push device 600 based on multi-party joint data, as one embodiment, includes:

[0108] The acquisition unit 601 is configured to acquire encrypted data of behavioral features extracted by each data party based on the local historical behavioral data of the second user, wherein each behavioral feature corresponds to a feature value under each target category.

[0109] Integration unit 602 is configured to integrate the encrypted data from each data party to obtain second ciphertext distribution data;

[0110] Prediction unit 603 is configured to input the second ciphertext distribution data into a pre-trained push model to obtain a second prediction result;

[0111] Push unit 604 is configured to select several candidate messages based on the second prediction result and push them to the second user.

[0112] It is worth noting that, Figure 5 , Figure 6 The devices 500, 600 and shown are Figure 3 , Figure 4 Corresponding to the described method, Figure 3 , Figure 4 The corresponding descriptions in the method embodiments also apply to devices 500 and 600, and will not be repeated here.

[0113] According to another embodiment, a computer-readable storage medium is also provided, on which a computer program is stored, which, when executed in a computer, causes the computer to perform a combination Figure 2 , Figure 3 , Figure 4 The methods described above.

[0114] According to another embodiment, a computing device is also provided, including a memory and a processor, wherein executable code is stored in the memory, and when the processor executes the executable code, it implements a combination... Figure 2 , Figure 3 , Figure 4 The methods described above.

[0115] Those skilled in the art will recognize that the functions described in the embodiments of this specification in one or more of the above examples can be implemented using hardware, software, firmware, or any combination thereof. When implemented in software, these functions can be stored in a computer-readable medium or transmitted as one or more instructions or code on a computer-readable medium.

[0116] The specific embodiments described above further illustrate the purpose, technical solution, and beneficial effects of the technical concept in this specification. It should be understood that the above description is only a specific embodiment of the technical concept in this specification and is not intended to limit the scope of protection of the technical concept in this specification. Any modifications, equivalent substitutions, improvements, etc., made on the basis of the technical solutions of the embodiments in this specification should be included within the scope of protection of the technical concept in this specification.

Claims

1. A method for training a push notification model based on multi-party joint data, wherein multiple data parties jointly train the push notification model using their respective private data; the method includes: Obtain a first training sample, wherein the first training sample corresponds to a first encrypted distribution data and a first response tag based on a first search record. The first encrypted distribution data is obtained by integrating encrypted data of behavioral features provided by each data party. The behavioral features provided by a single data party are extracted based on the local historical behavioral data of the first user. Each behavioral feature corresponds to a feature value under each target category. The encrypted data of the behavioral features provided by a single data party describes the corresponding data distribution. The first response tag is extracted based on the first response information of the first user in the first search record for the first information pushed. The first ciphertext distribution data is input into a predetermined push model to obtain a first prediction result; Based on the comparison between the first prediction result and the first response tag, the undetermined parameters of the push model are adjusted.

2. The method according to claim 1, wherein, The behavioral characteristics include at least one of the following: browsing duration, browsing frequency, time elapsed since the browsing behavior, search frequency, click frequency, and time elapsed since the search behavior.

3. The method according to claim 1, wherein, A single target category corresponds to a single page or multiple pages. The feature values ​​of a single behavioral feature under multiple target categories are one of the following: the operation value of the first user performing the corresponding operation on the corresponding page, the normalized value of the corresponding operation value, and the relative importance value of the corresponding operation value.

4. The method according to claim 1, wherein, For a single data provider, the corresponding encrypted data is determined using the following methods for a single behavioral characteristic: Based on the feature values ​​of each target category corresponding to the single behavioral feature, determine the single mean and single variance of each feature value of the single behavioral feature; Generate Gaussian noise that satisfies the single mean and single variance; The Gaussian noise is added to each feature value of the single behavioral feature to form encrypted data.

5. The method according to claim 1, wherein, For a single data provider, the corresponding encrypted data is determined using the following methods for a single behavioral characteristic: The individual feature values ​​of this single behavioral feature are arranged in order of magnitude to determine their respective order of arrangement; Based on the various permutation orders, the encryption results of each feature value of the single behavioral feature are determined, and the corresponding encrypted data is obtained.

6. The method according to claim 5, wherein, The encryption results, which determine each feature value based on each permutation order, include: The first mapping function that satisfies fully homomorphic encryption is used to map each permutation order to a predetermined value domain to obtain each mapping result. The first mapping function is agreed upon in advance by each data party. Each mapping result is used as a separate encryption result for each feature value.

7. The method according to claim 1, wherein, For a single data provider, the corresponding encrypted data is determined using the following methods for a single behavioral characteristic: For the single behavioral feature, repeated sampling is performed over multiple predetermined time periods to obtain multiple feature data. Each feature data includes a feature value that corresponds one-to-one with each target category within a single predetermined time period. The statistical analysis is performed on each pair of representation parameters corresponding to each target category. Each pair of representation parameters includes the mean and variance of multiple feature values ​​corresponding to a single behavioral feature of a single target category over multiple predetermined time periods. Encrypted data is used to determine the correspondence between the individual behavioral features and the target categories using various characterization parameters.

8. The method according to claim 1, wherein, The integration of encrypted data on behavioral characteristics provided by various data providers is carried out through at least one of the following methods: summation, averaging, and median.

9. The method according to claim 1, wherein, The push model is a classification model. The first prediction result is the probability of each user selecting each target category. The element in the first response label that corresponds to the target category of the first information is a first value or a second value. When the first response information is clicked, the first response label corresponds to the first value. When the first response information is not clicked, the first response label corresponds to the second value.

10. The method according to claim 1, wherein, The output of the push model is a number of target categories with the highest probability of being selected by the user. Each target category corresponds to a target identifier. The first response tag is the target identifier corresponding to the target category selected by the user based on the information pushed.

11. The method according to claim 1, wherein, The first piece of information is at least one of the following: goods, services, information items, and film and television works.

12. A method for information push based on multi-party joint data, used to push information to a second user in response to a search request sent by a second user by utilizing joint historical behavior data of the second user from multiple data parties; The method is executed by the push server and includes: The encrypted data of behavioral features extracted by each data party based on the local historical behavioral data of the second user are obtained. Each behavioral feature corresponds to a feature value under each target category. The encrypted data of behavioral features provided by each data party describes the corresponding data distribution. The encrypted data from each data source is integrated to obtain the second ciphertext distribution data; The second ciphertext distribution data is input into a pre-trained push model to obtain a second prediction result; Based on the second prediction result, several candidate information items are selected and pushed to the second user.

13. The method according to claim 12, wherein, A single target category corresponds to a single page or multiple pages. The feature values ​​of a single behavioral feature under multiple target categories are one of the following: the operation value of the second user performing the corresponding operation on the corresponding page, the normalized value of the corresponding operation value, and the relative importance value of the corresponding operation value.

14. The method according to claim 12, wherein, For a single data provider, the corresponding encrypted data is determined using the following methods for a single behavioral characteristic: Based on the feature values ​​of each target category corresponding to the single behavioral feature, determine the single mean and single variance of each feature value of the single behavioral feature; Generate Gaussian noise that satisfies the single mean and single variance; The Gaussian noise is added to each feature value of the single behavioral feature to form encrypted data.

15. The method according to claim 12, wherein, For a single data provider, the corresponding encrypted data is determined using the following methods for a single behavioral characteristic: The individual feature values ​​of this single behavioral feature are arranged in order of magnitude to determine their respective order of arrangement; Based on the various permutation orders, the encryption results of each feature value of the single behavioral feature are determined, and the corresponding encrypted data is obtained.

16. The method according to claim 15, wherein, The encryption results, which determine each feature value based on each permutation order, include: The first mapping function that satisfies fully homomorphic encryption is used to map each permutation order to a predetermined value domain to obtain each mapping result. The first mapping function is agreed upon in advance by each data party. Each mapping result is used as a separate encryption result for each feature value.

17. The method according to claim 12, wherein, For a single data provider, the corresponding encrypted data is determined using the following methods for a single behavioral characteristic: For the single behavioral feature, repeated sampling is performed over multiple predetermined time periods to obtain multiple feature data. Each feature data includes a feature value that corresponds one-to-one with each target category within a single predetermined time period. The statistical analysis is performed on each pair of representation parameters corresponding to each target category. Each pair of representation parameters includes the mean and variance of multiple feature values ​​corresponding to a single behavioral feature of a single target category over multiple predetermined time periods. Encrypted data is used to determine the correspondence between the individual behavioral features and the target categories using various characterization parameters.

18. The method according to claim 12, wherein, The process of integrating the encrypted data from each data party to obtain the second ciphertext distribution data includes: Encrypted data on behavioral characteristics provided by various data providers are integrated using at least one of the following methods: summation, averaging, or median. The second ciphertext distribution data is determined based on the integration results.

19. The method according to claim 12, wherein, The second prediction result is the selection probability of the second user for each target category. The step of selecting several candidate messages and pushing them to the second user based on the second prediction result includes: Select the target categories with the highest selection probability from each target category; Several candidate messages are selected from the aforementioned target categories and pushed to the second user.

20. An apparatus for training a push notification model based on multi-party joint data, used by multiple data parties to jointly train the push notification model using their respective private data; the apparatus includes: The acquisition unit is configured to acquire a first training sample, wherein the first training sample corresponds to a first encrypted distribution data and a first response tag based on a first search record. The first encrypted distribution data is obtained by integrating encrypted data of behavioral features provided by each data party. The behavioral features provided by a single data party are extracted based on the local historical behavioral data of the first user. Each behavioral feature corresponds to a feature value under each target category. The encrypted data of the behavioral features provided by a single data party describes the corresponding data distribution. The first response tag is extracted based on the first response information of the first user in the first search record for the first information pushed. The prediction unit is configured to input the first ciphertext distribution data into a predetermined push model to obtain a first prediction result; The adjustment unit is configured to adjust the pending parameters of the push model based on the comparison between the first prediction result and the first response tag.

21. An apparatus for information push based on multi-party joint data, used to push information to a second user in response to a search request sent by a second user, using joint historical behavior data of the second user from multiple data parties; The device is located on the push server and includes: The acquisition unit is configured to acquire encrypted data of behavioral features extracted by each data party based on the local historical behavioral data of the second user. Each behavioral feature corresponds to a feature value under each target category, and the encrypted data of behavioral features provided by each data party describes the corresponding data distribution. The integration unit is configured to integrate the encrypted data from each data party to obtain the second ciphertext distribution data; The prediction unit is configured to input the second ciphertext distribution data into a pre-trained push model to obtain a second prediction result; The push unit is configured to select several candidate information items and push them to the second user based on the second prediction result.

22. A computer-readable storage medium having a computer program stored thereon, which, when executed in a computer, causes the computer to perform the method of any one of claims 1-19.

23. A computing device, comprising a memory and a processor, characterized in that, The memory stores executable code, and when the processor executes the executable code, it implements the method of any one of claims 1-19.