User attribute prediction method and device, computer device, and storage medium

By using private domain transmission channels and secret sharing technology, and utilizing the sub-models of the first and second participating devices to generate model prediction parameters, the problem of low user prediction efficiency in existing technologies is solved, and efficient user attribute prediction is achieved.

CN114764724BActive Publication Date: 2025-12-19TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202110043538.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-01-13
Publication Date
2025-12-19
Estimated Expiration
2041-01-13

AI Technical Summary

Technical Problem

In existing technologies, when introducing third-party nodes to jointly predict user characteristics from different enterprises, the data interaction is complex, resulting in low user prediction efficiency.

Method used

By employing a private domain transmission channel and secret sharing technology, the first and second participating devices are allowed to transmit encrypted data through the private domain transmission channel to predict random numbers. Combined with their respective sub-models, they generate model prediction parameters to achieve the prediction of user attributes.

Benefits of technology

While ensuring data confidentiality, it improves the efficiency of user attribute prediction and avoids the complexity of data interaction through third-party nodes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114764724B_ABST
    Figure CN114764724B_ABST
Patent Text Reader

Abstract

The application discloses a user attribute prediction method and device, computer equipment and a storage medium. The method comprises the following steps: obtaining a first user feature of a to-be-predicted user in a first user feature dimension and a first sub-model, and generating a first data prediction parameter according to the first user feature and the first sub-model; receiving a data prediction random number generated by a second participating device according to a second data prediction parameter based on a private domain transmission channel; the second data prediction parameter is generated by the second participating device according to a second user feature of the to-be-predicted user in a second user feature dimension and model parameters of a second sub-model; performing model prediction parameter synthesis processing on the first data prediction parameter and the data prediction random number to obtain a model prediction parameter for a target model; the target model is composed of the first sub-model and the second sub-model; and predicting and outputting a user attribute of the to-be-predicted user according to the model prediction parameter. The application can improve the prediction efficiency of the user attribute.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of data processing, and in particular to a user attribute prediction method and device, a computer device and a storage medium. BACKGROUND

[0002] Machine learning in artificial intelligence can be used to study how computers simulate or implement human learning behavior to acquire new knowledge or skills. Machine learning has penetrated into various aspects of daily life. For example, a trained model can be applied to target identification or interest recommendation scenarios through machine learning.

[0003] In some cases, enterprise a can have part of the user features of a user, and enterprise b can have another part of the user features of the user. When a trained model is used to predict (e.g., interest prediction) the user, the user features of enterprise a and the user features of enterprise b need to be used together. Therefore, in the prior art, a trusted third-party node is introduced, which can be responsible for secretly forwarding the user features sent by enterprise a and enterprise b to each other. The user features are encrypted by the public and private keys of the enterprise to which the user features belong during the secret forwarding. Therefore, the third-party node is also responsible for distributing the public and private keys of enterprise a and enterprise b to achieve successful forwarding of the user features of enterprise a and enterprise b.

[0004] As can be seen, in the prior art, when different enterprise user features are used to predict a user, the data interaction in the prediction process is complex, which leads to low prediction efficiency for the user. SUMMARY

[0005] The present application provides a user attribute prediction method and device, a computer device and a storage medium, which can improve the prediction efficiency for user attributes.

[0006] In one aspect, the present application provides a user attribute prediction method, which is executed by a first participating device. The method comprises:

[0007] obtaining a first user feature of a to-be-predicted user in a first user feature dimension and a first sub-model having model parameters to which the first user feature dimension belongs, generating a first data prediction parameter for the to-be-predicted user according to the first user feature and the first sub-model;

[0008] receiving a data prediction random number generated by a second participating device according to a second data prediction parameter based on a private domain transmission channel; wherein the second data prediction parameter is generated by the second participating device according to a second user feature of the to-be-predicted user in a second user feature dimension and a second sub-model having model parameters to which the second user feature dimension belongs.

[0009] The first data prediction parameter and the data prediction random number are subjected to model prediction parameter synthesis processing to obtain a model prediction parameter of a target model used for predicting the user attribute; the target model is composed of the first sub-model and the second sub-model;

[0010] The user attribute of the to-be-predicted user is predicted and output according to the model prediction parameter.

[0011] In an aspect, the present application provides a user attribute prediction device, which can be applied to a first participating device and comprises:

[0012] The parameter generation module is configured to obtain a first user feature of the to-be-predicted user in a first user feature dimension and a first sub-model having a model parameter to which the first user feature dimension belongs, and generate a first data prediction parameter for the to-be-predicted user according to the first user feature and the first sub-model;

[0013] The random number acquisition module is configured to receive, based on a private domain transmission channel, a data prediction random number generated by a second participating device according to a second data prediction parameter; the second data prediction parameter is generated by the second participating device according to a second user feature of the to-be-predicted user in a second user feature dimension and a second sub-model having a model parameter to which the second user feature dimension belongs;

[0014] The model parameter determination module is configured to subject the first data prediction parameter and the data prediction random number to model prediction parameter synthesis processing to obtain a model prediction parameter of a target model used for predicting the user attribute; the target model is composed of the first sub-model and the second sub-model;

[0015] The attribute prediction module is configured to predict and output the user attribute of the to-be-predicted user according to the model prediction parameter.

[0016] The data prediction random number is generated by the second participating device according to a parameter operation type associated with the second data prediction parameter and a secret sharing protocol indicated by the secret sharing technology;

[0017] The user attribute prediction device is further configured to:

[0018] establish the private domain transmission channel with the second participating device based on the secret sharing technology;

[0019] The model parameter determination module is further configured to:

[0020] when it is detected that the data prediction random number is acquired through the private domain transmission channel, subject the first data prediction parameter and the data prediction random number to model prediction parameter synthesis processing according to a parameter operation type associated with the data prediction random number and a secret sharing protocol, to obtain a model prediction random number.

[0021] The attribute prediction module comprises:

[0022] The attribute parameter calculation unit is configured to calculate a user attribute parameter of the to-be-predicted user according to the model prediction parameter;

[0023] The user attribute determination unit is configured to determine a user attribute associated with the user attribute parameter as a predicted user attribute of the to-be-predicted user, and output the predicted user attribute of the to-be-predicted user.

[0024] The device further comprises:

[0025] The model random number acquisition module is configured to receive, based on the private domain transmission channel, a model random number generated by the second participating device according to second model training parameters of the target sample user; the second model training parameters comprise model parameters of a second initial sub-model and a user feature of the target sample user in a second user feature dimension;

[0026] The sample prediction module is configured to determine a predicted user attribute of the target sample user according to the model random number and first model training parameters to which the first participating device belongs; the first model training parameters comprise model parameters of a first initial sub-model and a user feature of the target sample user in a first user feature dimension;

[0027] The first gradient determination module is configured to determine a first model gradient according to the predicted user attribute, a user attribute label of the target sample user, and first feature gradient parameters to which the first participating device belongs;

[0028] The second gradient acquisition module is configured to acquire second feature gradient parameters to which the second participating device belongs, and determine a second model gradient according to the predicted user attribute, the user attribute label, and the second feature gradient parameters;

[0029] The parameter correction module is configured to correct the model parameters of the first initial sub-model based on the first model gradient to obtain a first sub-model, and send the second model gradient to the second participating device, so that the second participating device corrects the model parameters of the second initial sub-model based on the second model gradient to obtain a second sub-model.

[0030] The private domain transmission channel between the first participating device and the second participating device is established based on secret sharing technology; the first initial sub-model and the second initial sub-model are used to constitute an initial model;

[0031] The sample prediction module comprises:

[0032] The model parameter recovery unit is configured to, when it is detected that the model random number is obtained through the private domain transmission channel, recover the initial model training parameter of the initial model according to the parameter operation type associated with the second model training parameter, the secret sharing protocol indicated by the secret sharing technology, the model random number, and the second model training parameter.

[0033] The sample prediction unit is configured to determine a predicted user attribute of the target sample user according to the initial model training parameter.

[0034] The first gradient determination module includes:

[0035] The first progressive parameter determination unit is configured to determine a progressive gradient parameter according to the predicted user attribute and the user attribute label.

[0036] The first gradient determination unit is configured to determine a product of the progressive gradient parameter and the first feature gradient parameter as the first model gradient.

[0037] The second gradient acquisition module is configured to:

[0038] Acquire a homomorphic gradient parameter of the second feature gradient parameter homomorphic encrypted by the second participating device.

[0039] The second gradient acquisition module includes:

[0040] The second progressive parameter determination unit is configured to determine a progressive gradient parameter according to the predicted user attribute and the user attribute label.

[0041] The second gradient determination unit is configured to determine a product of the progressive gradient parameter and the homomorphic gradient parameter as the homomorphic encrypted second model gradient.

[0042] The parameter correction module is configured to:

[0043] Send the homomorphic encrypted second model gradient to the second participating device, so that the second participating device decrypts the homomorphic encrypted second model gradient to obtain a target model gradient; and the second participating device corrects the model parameter of the second initial sub-model according to the target model gradient to obtain the second sub-model.

[0044] The parameter correction module includes:

[0045] The gradient descent unit is configured to adjust the model parameter of the first initial sub-model and perform a gradient descent operation on the first model gradient.

[0046] The convergence determination unit is configured to, when the first initial sub-model is in a model convergence state during the gradient descent operation on the first model gradient, determine the first initial sub-model in the model convergence state as the first sub-model.

[0047] The apparatus further comprises:

[0048] The apparatus further comprises:

[0049] The apparatus further comprises:

[0050] The apparatus further comprises:

[0051] The apparatus further comprises:

[0052] The apparatus further comprises:

[0053] The apparatus further comprises:

[0054] The apparatus further comprises:

[0055] The apparatus further comprises:

[0056] The apparatus further comprises:

[0057] The apparatus further comprises:

[0058] The apparatus further comprises:

[0059] The computer readable storage medium according to an aspect of the present application stores a computer program, and the computer program includes program instructions. When the program instructions are executed by a processor, the processor executes the method in the aspect.

[0060] According to an aspect of the present application, a computer program product or computer program is provided, 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 the processor executes the computer instructions, so that the computer device executes the method provided in the various optional manners of the aspect.

[0061] The present application can train the first initial sub-model held by the first participating device and the second initial sub-model held by the second participating device by the user features held by the first participating device and the user features held by the second participating device, to obtain the first sub-model and the second sub-model, which are used to constitute a target model, and the target model can be used to predict the user attribute of the user. In the process of predicting the user attribute of the user by using the target model, the first data prediction parameter of the first participating device and the second data prediction parameter of the second participating device can be transmitted to the other party through a private domain transmission channel, and the data transmitted through the private domain transmission channel is a random value of the data, not the original data. Therefore, in the case that the interaction data between the first participating device and the second participating device is secret, the prediction of the user attribute of the user does not need to introduce a third-party node, and therefore, the method provided by the present application can improve the efficiency of predicting the user attribute of the user. BRIEF DESCRIPTION OF DRAWINGS

[0062] In order to more clearly illustrate the technical solutions in the present application or the prior art, the drawings needed in the embodiments or prior art description will be briefly introduced. Obviously, the drawings in the following description are only some embodiments of the present application, and for those skilled in the art, other drawings can also be obtained without creative labor.

[0063] Figure 1 is a structural schematic diagram of a network architecture for predicting a user attribute provided by an embodiment of the present application;

[0064] Figure 2 is a scene schematic diagram of predicting a user attribute provided by the present application;

[0065] Figure 3 is a flow schematic diagram of a user attribute prediction method provided by the present application;

[0066] Figure 4 is a scenario schematic diagram of acquiring a user to be predicted provided by the present application;

[0067] Figure 5 is a scenario schematic diagram of model application provided by the present application;

[0068] Figure 6 is a flow schematic diagram of a model training method provided by the present application;

[0069] Figure 7 is a scenario schematic diagram of data sharing provided by the present application;

[0070] Figure 8 is a scenario schematic diagram of generating a model gradient provided by the present application;

[0071] Figure 9 is a structural schematic diagram of a target model provided by the present application;

[0072] Figure 10 is a flow schematic diagram of a model training method provided by the present application;

[0073] Figure 11 is a flow schematic diagram of a model training method provided by the present application;

[0074] Figure 12 is a flow schematic diagram of a model training method provided by the present application;

[0075] Figure 13 is a structural schematic diagram of a user attribute prediction device provided by the present application;

[0076] Figure 14 is a structural schematic diagram of a computer device provided by the present application. DETAILED DESCRIPTION

[0077] The technical solutions in the present application will be described clearly and completely below with reference to the drawings in the present application. Obviously, the described embodiments are only part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all the other embodiments obtained by those of ordinary skill in the art without any creative work fall within the scope of protection of the present application.

[0078] The present application relates to artificial intelligence related technologies. Among them, artificial intelligence (Artificial Intelligence, AI) is to use digital computers or digital computer controlled machines to simulate, extend and expand human intelligence, perceive the environment, acquire knowledge and use knowledge to obtain the best results. In other words, artificial intelligence is a comprehensive technology of computer science, which tries to understand the essence of intelligence and produce a new intelligent machine that can react in a similar way to human intelligence. Artificial intelligence is to study the design principles and implementation methods of various intelligent machines, so that machines have perception, reasoning and decision-making functions.

[0079] Artificial intelligence technology is a comprehensive discipline, involving a wide range of fields, both hardware and software level technology. Artificial intelligence basic technology generally includes technologies such as sensors, special artificial intelligence chips, cloud computing, distributed storage, big data processing technology, operation / interaction system, mechatronics, etc. Artificial intelligence software technology mainly includes computer vision technology, speech processing technology, natural language processing technology, and machine learning / deep learning, etc. several major directions.

[0080] In the present application, machine learning in artificial intelligence is mainly involved. Among them, machine learning (Machine Learning, ML) is a multi-field interdisciplinary subject, involving probability theory, statistics, approximation theory, convex analysis, algorithm complexity theory and other disciplines, which is specially designed to study how computers simulate or implement human learning behavior to acquire new knowledge or skills, reorganize existing knowledge structure to continuously improve their performance. Machine learning is the core of artificial intelligence and the fundamental approach to making computers intelligent, and its applications are widespread in various fields of artificial intelligence. Machine learning and deep learning usually include artificial neural networks, belief networks, reinforcement learning, transfer learning, inductive learning, and rule-based learning.

[0081] Machine learning involved in the present application mainly refers to how to train a target model to realize prediction of user data attributes of the to-be-predicted user data through the target model. For details, please refer to the description of the corresponding embodiments below. Figure 3

[0082] Please refer to Figure 1 , Figure 1 is a structural schematic diagram of a network architecture for predicting user attributes provided by an embodiment of the present application. As shown in Figure 1 , the network architecture can include a server cluster 101a and a terminal device cluster 100a, and the terminal device cluster 100a can include a plurality of terminal devices, which will not be limited in number. As shown in Figure 1 ​As shown, the multiple terminal devices may specifically include terminal device z1, terminal device z2, ..., terminal device zn, for a total of n terminal devices. Server cluster 101a may include multiple servers, the specific number of which is determined by the actual application scenario. These multiple servers may specifically include server f1, server f2, ..., and server fm, for a total of m servers. Each terminal device in terminal device cluster 100a can communicate with each server in server cluster 101a via the network.

[0083] like Figure 1 The servers in the server cluster 101a shown can be independent physical servers, distributed systems composed of multiple physical servers, or cloud servers providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms. Terminal devices can be smart terminals such as smartphones, tablets, laptops, desktop computers, and smart TVs.

[0084] In this cluster, each terminal device in terminal device cluster 100a can belong to a different user, with one terminal device corresponding to one user. Similarly, each server in server cluster 101a can belong to a different enterprise, with one server corresponding to one enterprise. Therefore, it can be understood that the users to whom the terminal devices in terminal device cluster 100a belong can be users (customers) owned by all the enterprises corresponding to the servers in server cluster 101a.

[0085] The servers in server cluster 101a can communicate with the terminal devices in terminal device cluster 100a and obtain user characteristics from the terminal devices in terminal device cluster 100a. Each server can obtain different user characteristics of the same user. For example, for the user corresponding to terminal device z1 (which can be denoted as user y1), server f1 can obtain user characteristic 1 of user y1, server f2 can obtain user characteristic 2 of user y1, ..., server fm can obtain user characteristic m of user y1. User characteristic 1, user characteristic 2, ... and user characteristic m can be different from each other.

[0086] Therefore, the present application mainly describes that the prediction of a user, such as the prediction of a user attribute or the prediction of a user interest, can be achieved by different user features of the same user respectively possessed by different enterprises. When the prediction of a user is achieved by different user features of the user possessed by a plurality of enterprises, the plurality of enterprises can be referred to as a plurality of participants, and the plurality of participants can be divided into a guest and a host. The guest refers to a participant who needs to obtain a prediction result of a user, and the host refers to a participant who does not need to obtain a prediction result of a user. It can be understood that the guest is a participant who wants to train a final model, and the host is a participant who assists the guest to train a model. In some scenarios, the host does not need the final trained model. Therefore, the number of guests can be one, and the number of hosts can be multiple.

[0087] Since the process of predicting each user is the same, and the interaction process between the server corresponding to the guest and the server corresponding to each host is the same in the process of predicting a user, the process of predicting a user by one guest and one host is taken as an example for description. For example, the enterprise corresponding to the server f1 can be taken as the guest, and the enterprise corresponding to the server f2 can be taken as the host, and then the user corresponding to the terminal device z1 can be predicted by the server f1 and the server f2. Please refer to the following description.

[0088] Please refer to Figure 2 , Figure 2 is a scene schematic diagram for predicting a user attribute provided by the present application. As shown in Figure 2 , the enterprise corresponding to the server f1 can be referred to as enterprise a, and the enterprise a belongs to the guest. The enterprise corresponding to the server f2 can be referred to as enterprise b, and the enterprise b belongs to the host. The user to which the terminal device z1 belongs can be referred to as a user to be predicted.

[0089] The terminal device z1 can include a client of the enterprise a and a client of the enterprise b, and therefore, when the user uses the terminal device z1 to access the client of the enterprise a, the server f1 can obtain the user features synchronized by the client of the enterprise a, which can be referred to as first user features 100b. For example, the enterprise a can be a merchant, and therefore the first user features can be the order information of goods purchased by the user to be predicted at the enterprise a.

[0090] Similarly, when the user accesses the client of enterprise b using terminal device z1, server f2 can obtain the user features synchronized by the client of enterprise b, which can be referred to as second user features 103b. For example, enterprise b can be an asset management agency (such as a bank), and the second user features can be user asset information of the user to be predicted at enterprise b.

[0091] In this embodiment, enterprise a also has a first sub-model 101b, and enterprise b also has a second sub-model 104b. Since enterprise a has the first user features 100b of the user to be predicted, and enterprise b has the second user features 103b of the user to be predicted, the first user features 100b and the second user features 103b are different user features, it can be understood that the first user features 100b and the second user features 103b belong to user features in different user feature dimensions of the user to be predicted. The user feature dimension to which the first user features 100b belong can be referred to as a first user feature dimension, and the user feature dimension to which the second user features 103b belong can be referred to as a second user feature dimension.

[0092] Therefore, it can be understood that the first sub-model 101b only has user (referring to all users, not only the user to be predicted) features in the first user feature dimension, and the second sub-model 104b only has user features in the second user feature dimension. However, the first sub-model 101b and the second sub-model 104b are both trained by user features in the first user feature dimension and the second user feature dimension. The specific process of how to train the first sub-model 101b and the second sub-model 104b can be referred to as the following Figure 6 the related description in the corresponding embodiment.

[0093] Therefore, server f1 can generate first data prediction parameters 102b by the first sub-model 101b and the first user features 100b. The first data prediction parameters 102b are part of the parameters used to predict the user to be predicted, and the specific generation process of the first data prediction parameters 102b can be referred to as the following Figure 3 the description of step S101 in the corresponding embodiment.

[0094] Similarly, server f2 can generate second data prediction parameters 105b by the second model 104b and the second user features 103b. The second data prediction parameters 105b are also part of the parameters used to predict the user to be predicted. Since enterprise a needs to obtain the prediction result of the user, server f2 can send the second data prediction parameters 105b to server f1, so that server f1 can realize the prediction of the user to be predicted by the first data prediction parameters 102b and the second data prediction parameters 105b.

[0095] However, it needs to be explained that the server f2 will not send the second data prediction parameter 105b directly to the server f1, but will perform a secret sharing operation on the second data prediction parameter 105b to generate a random number of the second data prediction parameter 105b (which can be referred to as a data prediction random number 106b), and then send the data prediction random number 106b to the server f1.

[0096] In other words, the server f2 will not send the second data prediction parameter 105b to the server f1, but will send the data prediction random number 106b of the second data prediction parameter 105b to the server f1. The server f2 can achieve the same effect of synchronizing the second data prediction parameter 105b to the server f1 by sending the data prediction random number 106b to the server f1. In this way, the second data prediction parameter 105b can be kept secret from the server f1, that is, from the enterprise a.

[0097] Further, the server f1 can predict the to-be-predicted user by obtaining the data prediction random number 106b and the first data prediction parameter 102b. If the user attribute of the to-be-predicted user is predicted, the server f1 can predict the user attribute 107b of the to-be-predicted user by the data prediction random number 106b and the first data prediction parameter 102b. The user attribute 107b can refer to any attribute of the user to be predicted, such as user portrait attribute or user interest attribute, etc. Wherein, how to realize the prediction of the to-be-predicted user by the data prediction random number 106b and the first data prediction parameter 102b can be referred to the related description in the corresponding embodiments. Figure 3

[0098] In fact, the server f1 can also synchronize the random number of the first data prediction parameter 102b to the server f2, and the server f2 can also realize the prediction of the to-be-predicted user according to the obtained random number of the first data prediction parameter 102b and the second data prediction parameter 105b to obtain the user attribute 107b of the to-be-predicted user. However, since the enterprise b usually does not need to predict the user attribute of the to-be-predicted user, the enterprise b can not predict the to-be-predicted user. It can be understood that the above enterprise b can be multiple.

[0099] By the method provided in the present application, the mutually synchronized data (such as the first data prediction parameter 102b and the second data prediction parameter 105b) between each participant (such as the above enterprise a and enterprise b) can be realized by secret sharing technology. Under the premise of ensuring the confidentiality of the mutually synchronized data between each participant, the process of quickly predicting the to-be-predicted user by the user features owned by each participant is realized.​

[0100] Please refer to Figure 3 , Figure 3 is a flowchart of a user attribute prediction method provided by the present application, as Figure 3 shown, the method can comprise:

[0101] Step S101, obtaining a first user feature of a to-be-predicted user in a first user feature dimension and a first sub-model with a model parameter to which the first user feature dimension belongs, generating a first data prediction parameter for the to-be-predicted user according to the first user feature and the first sub-model;

[0102] Specifically, the execution subject in the embodiment of the present application can be a first participating device, which can be a computer device or a computer device cluster composed of multiple computer devices. The computer device can be a server or a terminal device. Therefore, the first participating device can be a server, a terminal device, or a combination of a server and a terminal device.

[0103] The present application mainly describes that the prediction of the user attribute of a user can be realized by different user features of the same user owned by multiple (at least two) participants, and the user attribute can be an interest attribute of the user for an item or a user portrait attribute. When predicting the user by different user features of the same user owned by the multiple participants, the user feature of each participant is secret to other participants.

[0104] Among them, the multiple participants are participants with mutually isolated data, such as multiple enterprises, and the data of each enterprise is secret to other enterprises. Each participant can own its own device (such as a background server). Each participant can also own its own client and its own user set (i.e. customer set), and the user set of each participant can refer to a set of users registered with a user account in the client. In the process of using the client of each participant, the device of each participant can obtain the user feature of the user contained in the user set of each participant, such as the user feature can be the browsing feature of the user for the data in the client, or the marking feature of the user for the data in the client, or the feature of the data recorded by the user in the client, etc.

[0105] The plurality of participants can be divided into two categories. One category is participants who need to obtain the predicted user attributes of the user, which can be referred to as a guest. The other category is participants who do not need to obtain the predicted user attributes of the user, which can be referred to as a host. The device owned by the guest can be the first participating device, and the device owned by the host can be the second participating device. The second participating device can also be a computer device or a computer device cluster composed of a plurality of computer devices.

[0106] It can be understood that the guest is a participant who wants to train a target model through user features owned by all participants, and the host is a participant who assists or helps the guest to train the target model. In other words, usually the guest is a participant who needs to apply the target model, and the host is a participant who does not need to apply the target model. The target model is used to predict user attributes of a user.

[0107] Therefore, there can be one guest and multiple hosts, i.e., one first participating device and multiple second participating devices. In fact, there need to be at least two hosts. If there is only one host and only one guest, the guest and the host can very likely infer each other's user data (such as user features) based on their own user data (such as user features) during the process of training the target model or applying the target model. Therefore, ensuring that there are at least two hosts and at least three participants can ensure that each participant cannot infer the user data of other participants based on their own user data, and thus ensures that the user data of each participant is secret to other participants.

[0108] Therefore, it can be understood that the user to be predicted can be a user common to all participants, in other words, the user to be predicted belongs to the intersection of the user sets of all participants. For example, the user set owned by the first participating device (i.e., the user set owned by the guest) can be referred to as the first user set, and the user set owned by the second participating device (i.e., the user set owned by the host) can be referred to as the second user set.

[0109] The first participating device can obtain the first user set and the second user set. Since the common user (i.e., the customer) between different participants can usually be distinguished by an email address, a communication number, or an application account of a communication application, in other words, the user can log in to the client to which each participant belongs through an email address, a communication number, or an application account of a communication application.

[0110] Therefore, the users of the clients of different participants who log in through the same mailbox, communication number or application account of a communication application can be considered as the same user. The mailbox, communication number or application account of a communication application of a user can be usually identified by an id (identity). Therefore, the first user set obtained by the first participating device can only include the ids of the mailbox, communication number or application account of a communication application used by the client of the user who logs in as guest, and the second user set obtained by the first participating device can include the ids of the mailbox, communication number or application account of a communication application used by the client of the user who logs in as host. For example, if a user registers the client belonging to the first participating device and the client belonging to the second participating device using the same mailbox, the user is considered as a user common to the first participating device and the second participating device.

[0111] Therefore, the first participating device can consider the users corresponding to the same ids in the first user set and the second user set as users common to guest and host. The set of the common users can be referred to as a user intersection, and the user intersection can include users common to all participants. The first participating device can consider a user without an actual user attribute as a to-be-predicted user. After a target model is trained by the user features of each participant, the target model can be used to predict the user attribute of the to-be-predicted user. If the first participating device already has an actual application attribute of a user in the user intersection, the user attribute of the user does not need to be predicted, and the user can be used as a sample user to train the target model. Therefore, if the first participating device does not have an actual application attribute of a user in the user intersection, the user attribute of the user needs to be predicted, and therefore, the user can be a to-be-predicted user.

[0112] Please refer to Figure 4 , Figure 4 is a scenario diagram for obtaining a to-be-predicted user provided by the present application. It is assumed that the participant to which the first participating device belongs is participant a, and the participant to which the second participating device belongs is participant b. The first user set 100c owned by participant a can include multiple users, and the second user set 101c owned by participant b can include multiple users.

[0113] The user intersection 102c can be obtained from the first user set 100c and the second user set 101c, and the first participating device can consider one or more users in the user intersection 102c without an actual user attribute as a to-be-predicted user 103c.

[0114] Wherein, since the user features of the to-be-predicted user obtained by each participant are different, it can be understood that each participant obtains the user features of the to-be-predicted user in different user feature dimensions. Wherein, the user features of the to-be-predicted user obtained by the first participating device can be referred to as the user features of the to-be-predicted user in the first user feature dimension, and the user features of the to-be-predicted user obtained by the second participating device can be referred to as the user features of the to-be-predicted user in the second user feature dimension. Wherein, when there are multiple second participating devices (i.e. multiple hosts), the user features of the to-be-predicted user obtained by each second participating device are the user features of the to-be-predicted user in different second user feature dimensions. In other words, the user features of the to-be-predicted user obtained by each participant can belong to the user features of the to-be-predicted user in different user feature dimensions, respectively.

[0115] Wherein, the final trained target model is distributed at each participant, which can include multiple sub-models, each participant can have a sub-model of the target model, and each participant's sub-model is trained by the user features of the users obtained by all participants (herein, referring to the target sample users used to train the target model below). However, the sub-model owned by each participant only has the model parameters corresponding to the user feature dimension to which the user features obtained by the participant belong.

[0116] In other words, there is actually no complete target model, the target model is distributed in the devices to which each participant belongs as multiple sub-models, but when predicting the to-be-predicted user, it is predicted by the sub-models owned by all participants and the user features of the to-be-predicted user. It can be understood that in a broad sense, the sub-models owned by each participant collectively constitute the target model. Wherein, the specific process of training the target model (i.e. training each sub-model included in the target model) can be referred to as the description in the corresponding embodiment below. Figure 6

[0117] Wherein, the sub-model of the target model owned by the first participating device can be referred to as the first sub-model, and the sub-model of the target model owned by the second participating device can be referred to as the second sub-model.

[0118] The user features of the to-be-predicted user in the first user feature dimension can be referred to as the first user features, and the user features of the to-be-predicted user in the second user feature dimension can be referred to as the second user features. Therefore, the first participating device can obtain the user features of the to-be-predicted user in the first user feature dimension, and the user features of the to-be-predicted user in the first user feature dimension owned by the first participating device can be referred to as the first user features.

[0119] ​Therefore, the first participating device can obtain the first user feature and the first sub-model, and generate the first data prediction parameter according to the obtained first user feature and the model parameter of the first sub-model. The first data prediction parameter is a partial parameter possessed by the first participating device for predicting the user attribute of the to-be-predicted user.

[0120] Optionally, the first participating device can obtain the first sub-model in the following manner:

[0121] After the first participating device trains the first sub-model, the first participating device can directly store the first sub-model in a database of the first participating device. Therefore, when the first participating device needs to use the first sub-model, the first participating device can directly obtain the first sub-model from the database.

[0122] Alternatively, after the first participating device trains the first sub-model, the first participating device can store the first sub-model in another backup device instead of storing the first sub-model in the first participating device. The first participating device has data access authority to the backup device. Therefore, when the first participating device needs to use the first sub-model, the first participating device can obtain the first sub-model from the backup device. The backup device can be a server for sharing data storage pressure. By storing the first sub-model in the backup device, the data storage pressure of the first participating device on the first sub-model can be reduced.

[0123] Optionally, the first sub-model can be directly trained by the first participating device, or the first sub-model can be trained by the first participating device by calling the backup device. This can further reduce the calculation pressure of the first participating device on the model training data. In this case, after the backup device trains the first sub-model, the backup device can send the first sub-model to the first participating device for storage, or the backup device can store the first sub-model by itself. Subsequently, the first participating device can directly obtain the first sub-model from its own storage, or the first participating device can obtain the first sub-model from the backup device. Furthermore, the second participating device can obtain the second sub-model in the same manner as the first participating device obtains the first sub-model.

[0124] The principle of generating the first data prediction parameter according to the first user feature and the model parameter of the first sub-model is the same as the principle of generating the first model training parameter according to the user feature of the target sample user in the first user feature dimension and the model parameter of the first initial sub-model in the corresponding embodiment, and specific content can be referred to in the following Figure 6 Figure 6

[0125] ​​Step S102: Receive the random number of data prediction generated by the second participating device based on the second data prediction parameters through the private domain transmission channel; wherein, the second data prediction parameters are generated by the second participating device based on the second user features of the user to be predicted in the second user feature dimension and the second sub-model with the model parameters to which the second user feature dimension belongs;

[0126] Specifically, the user features of the user to be predicted in the second user feature dimension, possessed by the second participating device, can be referred to as the second user features. The second participating device can also generate second data prediction parameters based on these second user features and the model parameters of the second sub-model. These second data prediction parameters are a subset of parameters possessed by the second participating device used to predict the user attributes of the user to be predicted.

[0127] The principle of generating the second data prediction parameters based on the second user characteristics and the model parameters of the second sub-model is similar to the following: Figure 6 The principle of generating the second model training parameters based on the user features of the target sample user in the second user feature dimension and the model parameters of the second initial sub-model is the same in the corresponding embodiment. For details, please refer to the following. Figure 6 The content description in the document.

[0128] Because the first participating device needs not only its own first data prediction parameters but also the second data prediction parameters possessed by the second participating device to predict the user attributes, when making predictions, the second participating device needs to keep these second data prediction parameters confidential. Therefore, the second participating device does not directly provide the second data prediction parameters to the first participating device. Instead, it transmits encrypted second data prediction parameters to the first participating device through a private transmission channel. The first participating device can also receive encrypted second data prediction parameters sent by the first participating device through this private transmission channel.

[0129] The private transmission channel between the first participating device and the second participating device can be pre-established, and this private transmission channel can be established based on secret sharing technology. In other words, the data transmitted through this private transmission channel can be data encrypted using secret sharing technology. Therefore, it can be understood that the encrypted second data prediction parameters obtained by the first participating device based on the private transmission channel can be second data prediction parameters encrypted using secret sharing technology.

[0130] The data encrypted by the secret sharing technology is a random number of the data, in other words, the data transmitted or received by the first participating device and the second participating device through the private domain transmission channel can be a random number obtained by encrypting the original data of the data by the secret sharing technology. Therefore, the encrypted second data prediction parameter obtained by the first participating device through the private domain transmission channel is a random number obtained by encrypting the second data prediction parameter by the secret sharing technology. The random number of the second data prediction parameter obtained by the secret sharing technology can be referred to as a data prediction random number. Therefore, the second participating device sends the data prediction random number to the first participating device through the private domain transmission channel to achieve the purpose of sharing the second data prediction parameter with the first participating device.

[0131] The secret sharing technology is a cryptographic technology for splitting and storing secrets. It is to split the secret in an appropriate way, and each share is managed by a different participant. A single participant cannot recover the secret information, and only a number of participants can recover the secret message together.

[0132] The secret sharing technology is explained in the above application: since the target model is split into multiple sub-models, each sub-model has model parameters in different user feature dimensions. Different data prediction parameters (such as the first data prediction parameter and the second data prediction parameter described above) can be calculated by different sub-models and user features of the to-be-predicted user in the corresponding user feature dimension. Therefore, the secret split by the secret sharing technology in the present application can refer to the total data prediction parameter, which can refer to the model prediction parameter in step S103.

[0133] In other words, it can be understood that the secret sharing technology used in the present application splits the model prediction parameter into multiple data prediction parameters, which are distributed at different participating devices. For example, the multiple data prediction parameters can include the first data prediction parameter generated by the first participating device and the second data prediction parameter generated by the second participating device. The first data prediction parameter is distributed at the first participating device, and the second data prediction parameter is distributed at the second participating device. Therefore, the first participating device and the second participating device jointly own a secret, which is the model prediction parameter.

[0134] It needs to be explained that by using the secret sharing technology, when different participants share data with each other, the original data is not directly shared, but the random number of the original data is shared. For example, when the first participating device shares the first data prediction parameter with the second participating device, it shares the random number of the first data prediction parameter with the second participating device. Similarly, when the second participating device shares the second data prediction parameter with the first participating device, it shares the random number of the second data prediction parameter with the first participating device, that is, the above-mentioned data prediction random number.

[0135] Since the secret sharing technology is used, one participant cannot recover the secret, so it can be understood that the first participating device cannot recover the model prediction parameter only by the first data prediction parameter, but the first participating device can recover the model prediction parameter by its own first data prediction parameter and the data prediction random number shared by the second participating device. Please refer to the content description in the following step S103.

[0136] Therefore, by using the secret sharing technology to encrypt the data (such as the first data prediction parameter and the second data prediction parameter) exchanged between the first participating device and the second participating device (that is, by using the private domain transmission channel for data transmission), it can be realized that the data of the first participating device is secret to the second participating device, and the data of the second participating device is secret to the first participating device. The premise is that the first participating device and the second participating device can jointly predict the user attributes of the to-be-predicted user.

[0137] Step S103, the first data prediction parameter and the data prediction random number are subjected to model prediction parameter synthesis processing to obtain the model prediction parameter of the target model used for predicting the user attributes; the target model is composed of the first sub-model and the second sub-model;

[0138] Specifically, the first participating device can recover the model prediction parameter for the entire target model according to the obtained data prediction random number and the generated first data prediction parameter. It can be understood that the model prediction parameter for the target model is equivalent to the final feature parameter used for predicting the user attributes of the to-be-predicted user, which is calculated by all sub-models and all participants. The user features of the to-be-predicted user.

[0139] Further, the second participating device can generate the data prediction random number of the second data prediction parameter according to the parameter operation type associated with the second data prediction parameter and the secret sharing protocol indicated by the secret sharing technology.

[0140] The parameter operation type associated with the second data prediction parameter can refer to the type of operation involved in calculating the second data prediction parameter, which can be a linear operation type or a nonlinear operation type. For example, the operation type can be an addition type, a subtraction type, a multiplication type, a division type, a square root type, or a square type.

[0141] The secret sharing protocol indicated by the secret sharing technology indicates how to perform a secret sharing operation on the second data prediction parameter to obtain the data prediction random number of the second data prediction parameter. Conversely, it can be understood that the secret sharing protocol also indicates how to combine the data prediction random number and the first data prediction parameter to recover the model prediction parameter for the target model.

[0142] The data transmitted through the private domain transmission channel can include the parameter operation type associated with the data and the secret sharing protocol used. Therefore, when the first participant device detects the data prediction random number received through the private domain transmission channel, the first participant device can identify the secret sharing protocol used by the received data prediction random number and the associated parameter operation type (i.e., the parameter operation type associated with the second data prediction parameter). Then, the first participant device can combine the data prediction random number and the first data prediction parameter according to the identified secret sharing protocol used by the data prediction random number and the involved parameter operation type, thereby recovering the model prediction parameter for the target model. The operation of combining the data prediction random number and the first data prediction parameter can be referred to as model prediction parameter synthesis processing of the data prediction random number and the first data prediction parameter.

[0143] Step S104: predicting and outputting the user attribute of the to-be-predicted user according to the model prediction parameter;

[0144] Specifically, the target model can be used to predict the user attribute of the to-be-predicted user. The user attribute can be any attribute of the to-be-predicted user. The specific attribute to be predicted can be set according to the actual application scenario.

[0145] The first participating device can predict the user attributes of the user to be predicted based on the model's prediction parameters. This can be understood as the model's prediction parameters being equivalent to the feature parameters of the user to be predicted identified by the entire target model, while the target model has learned during training which feature parameters correspond to which user attributes. The machine language of user attributes in the target model is also a parameter; for example, the machine language of user attributes can be represented by a numerical value. In other words, each user attribute can correspond to a single numerical value or a range of numerical values, or, in other words, each user attribute can be represented by a single numerical value or a range of numerical values ​​in the machine.

[0146] Therefore, when the first participating device predicts the user attributes of the user to be predicted based on the model prediction parameters, it can calculate a value used to determine the user attributes of the user to be predicted based on the model prediction parameters. This value can be called the user attribute parameter. Then, the server can use the user attribute corresponding to the user attribute parameter (this user attribute can be understood as a user attribute associated with the user attribute parameter, and the association relationship is pre-defined) as the predicted user attributes of the user to be predicted.

[0147] The following can be adopted: Figure 6 The principle of formula (1) in the corresponding embodiment is used to calculate the user attribute parameters for the user to be predicted. However, when calculating the user attribute parameters for the user to be predicted using formula (1), the initial model training parameters in formula (1) need to be replaced with the model prediction parameters here for calculation. It can be understood that y' calculated in formula (1) is also a kind of user attribute parameter, but y' is a user attribute parameter used to determine the user attributes of the target sample user.

[0148] Through the above process, the user attributes of the user to be predicted can be predicted based on the model prediction parameters. The first participating device can output the predicted user attributes of the user to be predicted and display them to the enterprise or organization to which the first participating device belongs. Then, the enterprise or organization can formulate relevant user strategies for the user to be predicted based on the predicted user attributes, such as product recommendation strategies.

[0149] Optionally, the first participating device can be a device belonging to a participating merchant, and the participating merchant can be a participant. The second participating device can be a device belonging to an asset management institution, and the asset management institution can be a bank or the like, and the asset management institution can be a participant. Therefore, the first user feature of the to-be-predicted user in the first user feature dimension can be a commodity order data feature of the to-be-predicted user at the participating merchant, and the commodity order data feature can include features of all commodities ordered by the to-be-predicted user at the participating merchant, and the like. The second user feature of the to-be-predicted user in the second user feature dimension can be a user asset data feature of the to-be-predicted user at the asset management institution, and the user asset data feature can include features such as the amount of transfer in and out of the assets of the user at the asset management institution.

[0150] Therefore, the user attribute of the to-be-predicted user predicted by the target model can be the first probability order attribute or the second probability order attribute. The first probability order attribute and the second probability order attribute can be the predicted user attribute of the to-be-predicted user for the target commodity. The first probability order attribute can indicate that the to-be-predicted user is very likely to be interested in the target commodity and want to order the target commodity. The second probability order attribute can indicate that the to-be-predicted user is very likely not to be interested in the target commodity and not want to order the target commodity data.

[0151] Therefore, when the predicted user attribute of the to-be-predicted user is the first probability order attribute, the first participating device can recommend the target commodity to the to-be-predicted user in the client, thereby guiding the to-be-predicted user to order the target commodity. Conversely, when the predicted user attribute of the to-be-predicted user is the second probability order attribute, the first participating device can hide the target commodity from the to-be-predicted user, that is, not recommend the target commodity to the to-be-predicted user in the client. The above is only an example of the target model which can be applied in the scene of commodity recommendation. In fact, the target model can be applied in various scenes according to actual conditions.

[0152] Please refer to Figure 5 , Figure 5 is a schematic diagram of a model application scenario provided by the present application. As shown in Figure 5 , there are two second participating devices, that is, two hosts. The first participating device 108d can have the user feature 3 of the to-be-predicted user 100d, the second participating device 107d can have the user feature 2 of the to-be-predicted user 100d, and the second participating device 106d can have the user feature 1 of the to-be-predicted user 100d.

[0153] In a broad sense, the sub-models respectively owned by the first participating device 108d, the second participating device 107d and the second participating device 106d can be considered as constituting the target model 101d. Therefore, the user attribute 102d of the to-be-predicted user can be predicted through the target model 101d, the user feature 1, the user feature 2 and the user feature 3. Therefore, the first participating device can obtain the user attribute 102d. When the user attribute 102d is the first-probability-ordering attribute, the first participating device 108d can send the commodity recommendation information related to the target commodity to the user terminal 103d to which the to-be-predicted user 100d belongs. Then, the user terminal 103d can display the commodity recommendation information for the target commodity in the client page 104d, so as to achieve the purpose of recommending the target commodity to the to-be-predicted user. As shown in the client page 104d, the target commodity can be a jigsaw puzzle.

[0154] Optionally, when the user attribute 102d is the second-probability-ordering attribute, the first participating device 108d can not recommend the target commodity to the to-be-predicted user 100d, and therefore the commodity recommendation page in the client page 105d of the user terminal 103d to which the to-be-predicted user 100d belongs can be empty, i.e., there is no commodity recommendation.

[0155] The first data prediction parameter and the second data prediction parameter are encrypted and transmitted in a secret sharing manner in the application, and the secret sharing technology is completely equal for all participants, so that a third-party node does not need to be introduced to predict the user attribute of the to-be-predicted user, and the prediction efficiency of the user attribute of the to-be-predicted user is improved.

[0156] Please refer to Figure 6 , Figure 6 is a flowchart of a model training method provided by the application, as shown in Figure 6 , the method can include:

[0157] In step S201, a model random number generated by a second participating device according to a second model training parameter for a target sample user is received based on the private domain transmission channel. The second model training parameter includes a model parameter of a second initial sub-model and a user feature of the target sample user in a second user feature dimension;

[0158] Specifically, the execution subject in the embodiment of the application can be a first participating device. The first participating device can be one, and the number of second participating devices is at least two. The specific description of the first participating device and the second participating device can be referred to the above Figure 3 The step S101 in the corresponding embodiment is not repeated here.

[0159] The machine learning used in the present application is longitudinal federated learning. Federated learning refers to model training that can be performed without leaving the local data owned by each participant, and the difference between the model obtained by training and the model during aggregation training is small under the condition that the data of each participant is mutually secret. The longitudinal federated learning refers to that the users (e.g., target sample users) of each participant are the same during training, but the user features of the users obtained by each participant are different.

[0160] The target sample user can be a user in the user intersection of the user set of all participants and having an actual user attribute. Therefore, the target sample user can be a user in the user intersection of the first user set and the second user set and having an actual user attribute.

[0161] Since the first participating device is a device of a guest, the guest is a participant who needs to train the target model, therefore, the first participating device has the actual user attribute of the target sample user, and the second participating device usually does not have the actual user attribute of the target sample user. The actual user attribute is used to generate a user attribute label of the target sample user, and the user attribute label indicates the actual user attribute of the target sample user. The user attribute label is used to obtain the gap between the predicted value (i.e., the predicted user attribute) and the actual value (i.e., the actual user attribute) during model training, and then the model parameters can be corrected through the gap.

[0162] Therefore, the first sub-model can be obtained by training the first initial sub-model, and the second sub-model can be obtained by training the second initial sub-model. The model composed of the first initial sub-model and the second initial sub-model can be referred to as an initial model, and therefore, the target model can be obtained by training the initial model. It can be understood that there is actually no complete initial model, and the initial model is distributed at each participant as a plurality of initial sub-models, that is, the initial model can include a plurality of initial sub-models, and the plurality of initial sub-models include the first initial sub-model owned by the first participating device and the second initial sub-model owned by the second participating device.

[0163] Therefore, the first initial sub-model only has model parameters in the first user feature dimension, and the second initial sub-model only has model parameters in the second user feature dimension.

[0164] The initial model can be a factorization machine model (FM model), and therefore each initial sub-model can be a factorization machine model.

[0165] It needs to be noted that the principle of training the initial model by using any one sample user is the same, and therefore, the process of training the initial model by using the target sample user is taken as an example for description. The target sample data can be any one sample user, which can be a user having actual user attributes in the intersection of the users of the first user set and the second user set.

[0166] The first participating device can obtain the model random number for the target sample user sent by the second participating device. The model random number is a random number generated by the second participating device after performing the secret sharing operation on the second model training parameter. The second model training parameter is generated by the second participating device through the model parameter of the second initial sub-model and the user feature of the target sample user in the second user feature dimension.

[0167] Since the initial model can be a factorization machine model, the initial model can include a model parameter w and a model parameter v. The model parameter w is a vector, and the model parameter v is a matrix. The vector w can include model parameters corresponding to user features of each user feature dimension of the user, for example, the vector w can be an n-dimensional vector [x1, x2, ……xk, ……, xn]. The model parameters belonging to the first user feature dimension can include the model parameters of the x1-xk dimensions in the vector w, and the model parameters belonging to the second user feature dimension can include the model parameters of the xk-xn dimensions in the vector w. That is, the first initial sub-model only includes the model parameters of the x1-xk dimensions in the vector w, and the second initial sub-model only includes the model parameters of the xk-xn dimensions in the vector w.

[0168] The matrix v is a matrix for extracting cross features between features, and the matrix v enables the model to process relatively sparse sample data. The matrix v is a matrix unique to the factorization machine model. Similarly, the matrix v has two dimensions, one column dimension and one row dimension, and one of the two dimensions of the matrix v is the same as the dimension of the vector w, for example, the row dimension of the matrix v can be the same as the dimension of the vector w. Therefore, the dimension of the matrix v can be m*n, indicating that the matrix v is an m-column n-row matrix.

[0169] Similarly, when the model parameters belonging to the first user feature dimension include the model parameters of the x1-xk dimensions in the vector w, the model parameters belonging to the first user feature dimension can also include the model parameters of the 1st row to the kth row in the matrix v, and the model parameters belonging to the second user feature dimension can also include the model parameters of the kth row to the nth row in the matrix v. That is, the first initial sub-model only includes the model parameters of the 1st row to the kth row in the matrix v, and the second initial sub-model only includes the model parameters of the kth row to the nth row in the matrix v.

[0170] wherein the model parameters in the vector w possessed by the second initial sub-model of the second participating device can be denoted as w h The model parameters in the matrix v possessed by the second initial sub-model can be denoted as v h The user features of the target sample user in the second user feature dimension possessed by the second participating device can be denoted as x h Therefore, the second model training parameters generated by the second participating device can include the inner product of w h and x h , which can be denoted as <w h x h >, also include the inner product of v h and x h , which can be denoted as <v h x h >, and also include the inner product of and , which can be denoted as

[0171] Therefore, the model random numbers sent by the second participating device and acquired by the first participating device can include the random numbers of <w h , x h >, the random numbers of <v h , x h >, and the random numbers of .

[0172] The first participating device can acquire the model random numbers sent by the second participating device through the private domain transmission channel between the first participating device and the second participating device. The random numbers transmitted through the private domain transmission channel can be obtained by encrypting the original data of the random numbers through secret sharing technology. For related description and explanation of the private domain transmission channel and the secret sharing technology, please refer to the description in the above Figure 3 corresponding embodiments, which will not be described here in detail.

[0173] In step S202, the predicted user attribute of the target sample user is determined according to the model random numbers and the first model training parameters to which the first participating device belongs; the first model training parameters include the model parameters of the first initial sub-model and the user features of the target sample user in the first user feature dimension;

[0174] Specifically, the model parameters in the vector w possessed by the first initial sub-model of the first participating device can be denoted as w g The model parameters in the matrix v possessed by the first initial sub-model can be denoted as v g The user features of the target sample user in the first user feature dimension possessed by the first participating device can be denoted as x g. Thus, the first model training parameter generated by the first participating device can include an inner product of w g and x g , which can be denoted as <w g x g >, can also include an inner product of v h and x h , which can be denoted as <v g x g >, and can also include an inner product of u and v , which can be denoted as <u v .

[0175] The first participating device can restore the model training parameter of the initial model according to the obtained model random number and the generated first model training parameter, which can be referred to as the initial model training parameter. The user feature of the target sample user on all user feature dimensions can be denoted as x, and the initial model training parameter can include an inner product between the above-mentioned vector w and the user feature x, which can be denoted as <w <wx>), the inner product between the above matrix v and the user feature x (which can be denoted as <vx>) and the inner product between the square of the matrix v and the square of the user feature x (which can be denoted as <v2x2>). Indeed, <wx>sum of <w h x h sum of <w g x g sum of <w <vx>equal to <v h x h > and <v g x g > sums, <v2x2>is equal to and .

[0176] It can be seen that the initial model training parameters are obtained by the overall model parameters w and v of the initial model and the overall user features x of the target sample user, and the first model training parameters are obtained by the partial model parameters of the initial model and the partial user features of the target sample user.

[0177] The data transmitted through the private domain transmission channel can include a parameter operation type associated with the data and a secret sharing protocol (which belongs to a secret sharing technology) adopted, so that the first participating device can identify the parameter operation type associated with the model random number (that is, the participating operation type associated with the second model training parameter) and the secret sharing protocol adopted when detecting that the model random number is received through the private domain transmission channel, and can combine the model random number and the second model training parameter according to the identified parameter operation type associated with the model random number and the secret sharing protocol to restore the initial model training parameters of the initial model. The principle of how to combine the model random number and the second model training parameter according to the parameter operation type associated with the second model training parameter and the secret sharing protocol indicated by the secret sharing operation to restore the initial model training parameters of the initial model is the same as the principle of how to combine the data prediction random number and the first data prediction parameter to restore the model prediction parameter according to the secret sharing protocol adopted by the data prediction random number and the parameter operation type involved in the corresponding embodiment. Figure 3 In the corresponding embodiment, the principle of how to combine the data prediction random number and the first data prediction parameter to restore the model prediction parameter according to the secret sharing protocol adopted by the data prediction random number and the parameter operation type involved is the same as the principle of how to combine the data prediction random number and the first data prediction parameter to restore the model prediction parameter according to the secret sharing protocol adopted by the data prediction random number and the parameter operation type involved in the corresponding embodiment. Figure 3 In the corresponding embodiment, the principle of how to combine the data prediction random number and the first data prediction parameter to restore the model prediction parameter according to the secret sharing protocol adopted by the data prediction random number and the parameter operation type involved is the same as the principle of how to combine the data prediction random number and the first data prediction parameter to restore the model prediction parameter according to the secret sharing protocol adopted by the data prediction random number and the parameter operation type involved in the corresponding embodiment.

[0178] The first participating device can predict the user attributes of the target sample user according to the restored initial model training parameters, and the predicted user attributes of the target sample user can be referred to as predicted user attributes. The predicted user attributes can be denoted as y', and the process of obtaining the predicted user attributes y' through the initial model training parameters can be referred to as formula (1) as follows:

[0179]

[0180] where w0 is a bias term, which is a constant.

[0181] Since each user attribute of the user can be represented as a numerical value or a numerical value range in the machine, it can be understood that the calculated predicted user attribute y' is a machine language, which can be a numerical value, and the predicted user attribute y' in the machine represents a user attribute of the target sample user. In the actual prediction scene of the user attribute, when it is necessary to inform the relevant personnel of the predicted user attribute, the text form attribute corresponding to the predicted user attribute y' can be obtained, and the text form attribute can be a text description of the user attribute represented by the predicted user attribute y', for example, the text form attribute can be an attribute that the user will purchase a certain commodity or an attribute that the user will not purchase a certain commodity.

[0182] Please refer to Figure 7 , Figure 7 is a scene diagram of data sharing provided by the present application. As shown in Figure 7 , there are two second participating devices, including a second participating device 101e and a second participating device 102e.

[0183] Among them, the device identifier of the first participating device 100e can be 1, the device identifier of the second participating device 101e can be 2, and the device identifier of the second participating device 102e can be 3. Therefore, the first model training parameter of the first participating device can be denoted as <vx> 1、 <wx>1 and <v 2 x 2 >1, the second model training parameter of the second participating device 101e can be denoted as <vx> 2、 <wx>2 and <v 2 x 2 >2, the second model training parameter of the second participating device 102e can be denoted as <vx> 3、 <wx>3 and <v 2 x 2 >3.

[0184] As Figure 7 indicated, each participating device can send its own model training parameters to other participating devices: the first participating device 100e can send its own first model training parameters <vx>the random number of 1, <wx>the random number of 1 and <v 2 x 2 the random number of 1, to the second participating device 101e and the second participating device 102e. The second participating device 101e can transmit its own second model training parameters <vx>the random number of 2, <wx>the random number of 2 and <v 2 x 2 the random number of 2, to the first participating device 100e and the second participating device 102e. The second participating device 102e can transmit its own second model training parameters <vx>the random number of 3, <wx>3 random numbers and <v 2 x 2 A random number greater than 3 is sent to the first participating device 100e and the second participating device 101e. This random number is obtained by performing a secret sharing operation on the corresponding parameters.

[0185] Therefore, each participant can reconstruct the initial model training parameters based on the random numbers of model training parameters sent by other participants and their own model training parameters. However, usually only the guest needs to reconstruct these initial model training parameters, while the host does not.

[0186] Step S203: Determine the first model gradient based on the predicted user attributes, the user attribute labels of the target sample user, and the first feature gradient parameters of the first participating device.

[0187] Specifically, the first participating device can also train the parameters of the first model as described above. <vx>The first feature gradient parameter is calculated as shown in the following formula (2):

[0188]

[0189] Where w0 is the bias term, which is a constant. The user characteristics x possessed by the first participating device. g The dimension of x can correspond to the first to kth dimensions in vector w, where i can be a positive integer between 1 and k, therefore x i It can be x g Any element in the matrix. The matrix v has dimensions n*m, and j can be a positive integer between 1 and n. i This represents the i-th element in vector w, which exists in the model parameters w of the first participating device. g middle.

[0190] The model parameters in matrix v of the first participating device are v g The v g This can include model parameters from rows 1 to k in matrix v, where f can be a positive integer between 1 and k. Therefore, v j,f This can represent the element in row j and column f of v. It can be recovered <vx>obtained, to <vx>one element in the matrix v. i,f is the element in the i-th row and f-th column in the matrix v, which exists in the model parameter v g owned by the first participating device.

[0191] Therefore, the first participating device can calculate the first feature gradient parameter without calculating the predicted user attribute y', but can directly calculate the first feature gradient parameter through the recovered initial model training parameter <vx>The calculation is performed.

[0192] The first participating device can generate a first model gradient according to the predicted user attribute, the user attribute label of the target sample user, and the first feature gradient parameter, the first model gradient being a model gradient for correcting the first initial sub-model. Wherein, since the user attribute label represents the actual user attribute of the target sample user, the actual user attribute can be denoted as y, and the first model gradient is generated by the predicted user attribute, the user attribute label, and the first feature gradient parameter. The process can be referred to as the following formula:

[0193] The first participating device can generate a progressive gradient parameter according to the predicted user attribute and the user attribute label. The predicted user attribute can be denoted as y', the actual user attribute indicated by the user attribute label can be denoted as y, and the progressive gradient parameter can be denoted as d. Therefore, the generation principle of the progressive gradient parameter can be referred to as the following formula (3):

[0194] d=[σ(y'y)-1]y (3)

[0195] Wherein, σ represents an activation function.

[0196] Therefore, the first participating device can calculate the product of the progressive gradient parameter d and the first feature gradient parameter, and take the product as the first model gradient.

[0197] In step S204, the second feature gradient parameter to which the second participating device belongs is obtained, and a second model gradient is determined according to the predicted user attribute, the user attribute label, and the second feature gradient parameter.

[0198] Specifically, the first participating device can obtain the second feature gradient parameter sent by the second participating device. It should be noted that since the second feature gradient parameter also needs to be kept secret from the first participating device, the second participating device will not send the second feature gradient parameter directly to the first participating device, but will first homomorphically encrypt the second feature gradient parameter, and then send the homomorphically encrypted second feature gradient parameter to the first participating device. The homomorphically encrypted second feature gradient parameter can be referred to as a homomorphic gradient parameter. Therefore, the first participating device can obtain the homomorphic gradient parameter sent by the second participating device.

[0199] Similarly, the first participating device can take the product between the above-mentioned gradient progressive parameter (see formula (3)) obtained by the predicted user attribute and the user attribute label and the homomorphic gradient parameter as the second model gradient. The second model gradient is a gradient for correcting the model parameters of the second initial sub-model. It should be noted that the characteristic of homomorphic encryption is that the result of operating on the data before homomorphic encryption is the same as the result of operating on the data after homomorphic encryption.

[0200] The process by which the second participating device calculates the second feature gradient parameters using the model parameters of the second initial sub-model and the user features of the target sample user in the second user feature dimension is the same as the process by which the first participating device calculates the first feature gradient parameters using the model parameters of the first initial sub-model and the user features of the target sample user in the first user feature dimension, as detailed below:

[0201] In this process, each participant sends random numbers representing their model training parameters (obtained through secret sharing) to other participants. Therefore, the first participating device also sends the random numbers obtained through secret sharing of its first model training parameters to the second participating device. Thus, the second participating device can reconstruct the initial model training parameters based on the obtained random numbers and the second model training parameters. Similarly, the second participating device can also use the reconstructed initial model training parameters... <vx>The second feature gradient parameter is calculated as shown in the following formula (4):

[0202]

[0203] Where w0 is the bias term, which is a constant. The second participating device possesses user characteristics x. h The dimension of x can correspond to the k-th to n-th dimensions in vector w, and s can be a positive integer between k and n, therefore x s It can be x h Any element in the matrix. The matrix v has dimensions n*m, and j can be a positive integer between 1 and n. s This represents the s-th element in vector w, which exists in the model parameters w of the second participating device. h middle.

[0204] The model parameters in matrix v of the second participating device are v h The v h This can include model parameters from rows k to n in matrix v, where f can be a positive integer between k and n. Therefore, v j,f This can represent the element in row j and column f of v. It can be recovered <vx>obtained, to <vx>one element in the matrix v. s,f is the element in the s-th row and f-th column in the matrix v, which exists in the model parameter v h .

[0205] It can be seen that the second participating device can also not calculate the second feature gradient parameter through the predicted user attribute y', but can directly calculate the second feature gradient parameter through the recovered initial model training parameter <vx>The calculation is performed.

[0206] Since the second model gradient is obtained by operating the homomorphic gradient parameter, the obtained second model gradient is also homomorphic encryption.

[0207] In step S205, the model parameters of the first initial sub-model are corrected based on the first model gradient to obtain a first sub-model, and the second model gradient is sent to the second participating device to enable the second participating device to correct the model parameters of the second initial sub-model based on the second model gradient to obtain a second sub-model.

[0208] Specifically, the first participating device can correct the model parameters of the first initial sub-model by the first model gradient. The process can be as follows:

[0209] The first participating device can adjust the model parameters of the first initial sub-model to implement gradient descent operation on the first model gradient, that is, to make the value of the first model gradient as small as possible, which can make the gap between the predicted value and the actual value of the first initial sub-model smaller, that is, to make the accuracy of the first initial sub-model higher. When the first participating device adjusts the model parameters of the first initial sub-model to implement gradient descent operation on the first model gradient, and detects that the first initial sub-model reaches a model convergence state, the first participating device can take the first initial sub-model that reaches the model convergence state at this time as the first sub-model obtained by training.

[0210] The first participating device can send the homomorphic encrypted second model gradient to the second participating device, and the second participating device can decrypt the homomorphic encrypted second model gradient to obtain a decrypted second model gradient, which can be referred to as a target model gradient. The second participating device can correct the model parameters of the second initial sub-model by the target model gradient. The second initial sub-model whose model parameters are corrected can be taken as the second sub-model. The process of correcting the second initial sub-model by the target model gradient by the second participating device is the same as the process of correcting the model parameters of the first initial sub-model by the first model gradient by the first participating device.

[0211] The first initial sub-model can be trained to obtain the first sub-model, and the second initial sub-model can be trained to obtain the second sub-model by executing the same process as described above. The first sub-model and the second sub-model can constitute a target model. The target model can be used to predict the user attributes of a user. The process of predicting the user attributes of a user by the target model can be referred to the above description. Figure 3 The process of predicting the user attribute of the to-be-predicted user by the target model in the corresponding embodiment. In other words, the target model (including the first sub-model and the second sub-model) trained in the embodiment of the application is the target model described above Figure 3 The target model in the corresponding embodiment of the application can be used to predict the user attribute of the to-be-predicted user.

[0212] The application encrypts and transmits the first model training parameter and the second model training parameter in a secret sharing manner. The secret sharing technology is completely equal for all participants, and thus a third-party node is not needed to train the model, and the efficiency of the model training is improved.

[0213] Please refer to Figure 8 , Figure 8 is a scene schematic diagram for generating a model gradient provided by the application. As Figure 8 indicated, there can be three second participating devices, i.e., three hosts, including a second participating device 1, a second participating device 2, and a second participating device 3.

[0214] The second initial sub-model owned by the second participating device 1 is the initial sub-model 100f, and the user feature 101f of the target sample user owned by the second participating device 1. The second initial sub-model owned by the second participating device 2 is the initial sub-model 102f, and the user feature 103f of the target sample user owned by the second participating device 2. The second initial sub-model owned by the second participating device 3 is the initial sub-model 104f, and the user feature 105f of the target sample user owned by the second participating device 3. The second initial sub-model owned by the first participating device is the initial sub-model 109f, and the user feature 110f of the target sample user owned by the first participating device.

[0215] Therefore, the second model training parameter calculated by the second participating device 1 according to the model parameter of the initial sub-model 100f and the user feature 101f can be the second model training parameter 1, and the second participating device 1 can perform a secret sharing operation on the second model training parameter 1, i.e., the model random number 1 of the second model training parameter 1 can be obtained.

[0216] Similarly, the second model training parameter calculated by the second participating device 2 according to the model parameter of the initial sub-model 102f and the user feature 103f can be the second model training parameter 2, and the second participating device 2 can perform a secret sharing operation on the second model training parameter 2, i.e., the model random number 2 of the second model training parameter 2 can be obtained.

[0217] Similarly, the second participating device 3 can calculate the second model training parameter according to the model parameter of the initial sub-model 104f and the user feature 105f, and the second model training parameter obtained by the calculation can be a second model training parameter 3. The second participating device 3 can perform a secret sharing operation on the second model training parameter 3, that is, the model random number 3 of the second model training parameter 3 can be obtained.

[0218] Similarly, the first participating device can calculate the first model training parameter according to the model parameter of the initial sub-model 109f and the user feature 110f.

[0219] The second participating device 1 can send the model random number 1 to the first participating device, the second participating device 2 can send the model random number 2 to the first participating device, and the second participating device 3 can send the model random number 3 to the first participating device. Therefore, the first participating device can restore the initial model training parameter 106f of the initial model according to the obtained model random number 1, model random number 2, model random number 3 and first model training parameter. Further, the first participating device can predict the predicted user attribute 107f of the target sample user through the restored initial model training parameter 106f.

[0220] In addition, the second participating device 1 can also calculate its own second feature gradient parameter 1, and the second participating device 1 can perform homomorphic encryption on the second feature gradient parameter 1 to obtain a homomorphic gradient feature 1. The second participating device 2 can also calculate its own second feature gradient parameter 2, and the second participating device 2 can perform homomorphic encryption on the second feature gradient parameter 2 to obtain a homomorphic gradient feature 2. The second participating device 3 can also calculate its own second feature gradient parameter 3, and the second participating device 3 can perform homomorphic encryption on the second feature gradient parameter 3 to obtain a homomorphic gradient feature 3. The first participating device can also calculate its own first feature gradient parameter.

[0221] The second participating device 1 can send the homomorphic gradient parameter 1 to the first participating device, the second participating device 2 can send the homomorphic gradient parameter 2 to the first participating device, and the second participating device 3 can send the homomorphic gradient parameter 3 to the first participating device.

[0222] Therefore, the first participating device can calculate the second model gradient 1 for correcting the model parameter of the initial sub-model 100f according to the obtained homomorphic gradient parameter 1, the user attribute label 108f of the target sample user and the predicted user attribute 107f. The first participating device can send the homomorphic encryption second model gradient 1 to the second participating device 1, and the second participating device 1 can decrypt the homomorphic encryption second model gradient 1, and then the second model gradient 1 after decryption can be used to correct the model parameter of the initial sub-model 100f.

[0223] The first participating device can calculate a second model gradient 2 for correcting the model parameters of the initial sub-model 102f according to the obtained homomorphic gradient parameter 2, the user attribute label 108f of the target sample user, and the predicted user attribute 107f. The first participating device can send the homomorphically encrypted second model gradient 2 to the second participating device 2, and the second participating device 2 can decrypt the homomorphically encrypted second model gradient 2, and then the second participating device 2 can correct the model parameters of the initial sub-model 102f through the decrypted second model gradient 2.

[0224] The first participating device can calculate a second model gradient 3 for correcting the model parameters of the initial sub-model 104f according to the obtained homomorphic gradient parameter 3, the user attribute label 108f of the target sample user, and the predicted user attribute 107f. The first participating device can send the homomorphically encrypted second model gradient 3 to the second participating device 3, and the second participating device 3 can decrypt the homomorphically encrypted second model gradient 3, and then the second participating device 3 can correct the model parameters of the initial sub-model 104f through the decrypted second model gradient 3.

[0225] The first participating device can also calculate a first model gradient for correcting the model parameters of the initial sub-model 109f according to the first feature gradient parameter of the first participating device, the user attribute label 108f of the target sample user, and the predicted user attribute 107f. The first participating device can perform gradient descent on the first model gradient to correct the model parameters of the initial sub-model 109f.

[0226] Please refer to Figure 9 , Figure 9 is a structural schematic diagram of a target model provided by the present application. As Figure 9 indicated, it can include four participants, which can include participant 1, participant 2, participant 3, and participant 4. Participant 1 can be a guest, and participant 2, participant 3, and participant 4 can be a host.

[0227] Among them, participant 1 owns the first sub-model 101g trained, participant 2 owns the second sub-model 102g trained, participant 3 owns the second sub-model 103g, and participant 4 owns the second sub-model 104g. Therefore, the first sub-model 101g, the second sub-model 102g, the second sub-model 103g, and the second sub-model 104g jointly constitute the target model 100g. However, the target model 100g actually does not exist, but is dispersed in each participant as the first sub-model 101g, the second sub-model 102g, the second sub-model 103g, and the second sub-model 104g.

[0228] The first participating device and the second participating device can jointly train the first initial sub-model held by the first participating device and the second initial sub-model held by the second participating device through user features held by the first participating device and user features held by the second participating device, and the first model training parameters of the first participating device and the second model training parameters of the second participating device can be transmitted to the other party in a secret sharing manner during the training process. The secret sharing technology can ensure that the first participating device and the second participating device are in a completely equal relationship, so that the model training does not need to introduce a third-party node, and therefore the efficiency of the model training can be improved. In addition, the first model training parameters of the first participating device and the second model training parameters of the second participating device are encrypted and transmitted in a secret sharing manner, and the Taylor approximation of the loss function of the model is not needed, which ensures the accuracy of the trained model.

[0229] Please refer to Figure 10 , Figure 10 is a flowchart of a model training method provided by the present application. The method can include the following steps:

[0230] s1, the second participating device can send [factor B] to the first participating device: [factor B] refers to the second feature gradient parameter after homomorphic encryption, that is, the second participating device can send the second feature gradient parameter after homomorphic encryption (i.e., the homomorphic gradient parameter) to the first participating device.

[0231] s2: the first participating device calculates the product of factor A and [factor B] of the second participating device to obtain the second model gradient: factor A is the above-mentioned progressive gradient parameter, and the first participating device can calculate the product of factor A and [factor B] as the second model gradient for correcting the second initial sub-model.

[0232] s3: the first participating device can send the calculated second model gradient to the second participating device.

[0233] s4: the second participating device can decrypt the homomorphic encrypted second model gradient, and update the model parameters of the second initial sub-model by using the decrypted second model gradient (i.e., the target model gradient).

[0234] s5: s5 has no front-back order with s1, s2, s3 and s4, and s5 can be executed when the first participating device calculates factor A. The first participating device can calculate the product of factor A and its own factor B (i.e., the first feature gradient parameter), and use the product as the first model gradient. The first participating device can correct the model parameters of the first initial sub-model through the first model gradient.

[0235] Wherein, since the operation adopted by homomorphic encryption must be a linear operation, for some cases where homomorphic encryption is adopted during model training and there is a nonlinear operation, Taylor approximation needs to be performed on the loss function of the model, which will cause only the second-order gradient information to be retained in the loss function and the gradient information of other orders to be lost, thereby causing the model training to be inaccurate. In the present application, only the factor B is homomorphic encrypted, while the first model training parameter and the second model training parameter are encrypted and transmitted through secret sharing, and only a simple linear operation (i.e. multiplication operation) is performed between the factor A and the [factor B], so that Taylor approximation does not need to be performed on the loss function of the model, and the gradient information of all orders is retained, thereby ensuring the accuracy of the model training.

[0236] Please refer to Figure 11 , Figure 11 is a flowchart of a model training method provided by the present application. The execution subject of the method can be a first participating device, and the method can include:

[0237] Step S401: The first participating device can perform sample intersection, i.e. obtain the user intersection of the user set of all participants, and can take the users in the user intersection having actual user attributes as target sample users.

[0238] Step S402: The first participating device can initialize the training parameter and initialize the model parameter of the first initial sub-model. Wherein, initializing the training parameter can mean representing the user features as machine language, for example, representing the user features as a feature vector.

[0239] Step S403: The first participating device can detect whether the first initial sub-model has reached a model convergence state, if it is detected that the first initial sub-model has reached the model convergence state, the model training process ends, and the first initial sub-model reaching the model convergence state is the first sub-model trained.

[0240] Step S404: Model training can be performed on all target sample users in batches. p is the number of target sample data in a batch of target sample users used for training the model, p can be counted from 0 to the total number of batches of target sample users (i.e. the number of batches). Therefore, for the model training using a batch of target sample users, p is set to 0.

[0241] Step S405: When p is less than or equal to the batch quantity, it indicates that the model training has not been performed through all target sample users in the current batch, and thus the following step S406 is performed. When p is greater than the batch quantity, it indicates that the model training has been performed through all target sample users in the current batch, and thus the following step S411 is performed.

[0242] Step S406: The first participant device can calculate the first model training parameter, and can share the first model training parameter to other participants through secret sharing. Similarly, other participants can also share the second model training parameter to the first participant device through secret sharing.

[0243] Step S407: The first participant device can calculate factor A (i.e., the progressive gradient parameter) according to the random number of the obtained second model training parameter, the first model training parameter, and the user attribute label.

[0244] Step S408: The first participant device can receive the [factor B] (the second feature gradient parameter of homomorphic encryption) sent by other participants, and can calculate the second model gradient through the [factor B] and the factor A, and can send the second model gradient to the corresponding participant. When the second model gradient is obtained by other participants, the model parameters of the second initial sub-model can be corrected through the second model gradient.

[0245] Step S409: The first participant device can also calculate the first model gradient according to the factor A and the own factor B.

[0246] Step S410: The first participant device can perform gradient optimization and gradient descent on the calculated first model gradient, so as to correct the model parameters of the first initial sub-model.

[0247] Step S411: The above process completes a model training through the target sample user with a count of 0, and then the count of p can be incremented by 1 (i.e., p++), and then the above step S405 can be performed, i.e., whether p after incrementing by 1 is greater than the batch quantity. If yes, step S412 is performed, and if not, step S406 is performed again.

[0248] Step S412: q represents the total batch number of the batched target sample users. When p is greater than the batch number, it means that the model training has been performed on all target sample users in the current batch, and then the current batch can be incremented by 1 (i.e., q++), so as to perform model training on the target sample users in the next batch. Then, the above step S403 can be performed, i.e., it is judged whether the first initial sub-model converges at this time. If the first initial sub-model converges, the model training process ends. If the first initial sub-model does not converge, the p count is reset to 0, and the model training is continued by the new batch of target sample users. The above steps are repeatedly performed until the first participating device detects that the first initial sub-model reaches the model convergence state. Then, the first initial sub-model in the model convergence state can be taken as the trained first sub-model.

[0249] As can be seen from the above, the first participating device can guarantee that the user features, the first model training parameters and the factor B are secret to the second participating device, and the model training is completed with the second participating device.

[0250] Please refer to Figure 12 , Figure 12 is a flowchart of a model training method provided by the present application. The execution subject of the method can be the second participating device, and the method can include:

[0251] Step S301: The second participating device can perform sample intersection, i.e., obtain the user intersection of the user set of all participants, and can take the users with actual user attributes in the user intersection as target sample users.

[0252] Step S302: The second participating device can initialize the training parameters and initialize the model parameters of the second initial sub-model. Wherein, initializing the training parameters can mean that the user features are represented as machine language, for example, the user features are represented as a feature vector.

[0253] Step S303: Whether to continue or stop the model training can be detected by the first participating device. When the first participating device detects that the degree of model training is sufficient, for example, detects that the first initial sub-model reaches the model convergence state, the first participating device can send a stop indication information to other participants. When the second participating device receives the stop indication information sent by the first participating device, it means that the model training ends and the model training is completed. When the second participating device does not obtain the stop indication information sent by the first participating device, the following step S304 can be performed.

[0254] Step S304: Similarly, the model training can be performed on all target sample users in batches. p is the number of target sample data used for training the model in a batch of target sample users, p can be counted from 0 to the total number of target sample users in a batch (i.e. batch number). Therefore, when the model training is just performed on a batch of target sample users, p is set to 0.

[0255] Step S305: When p is less than or equal to the batch number, it indicates that the model training has not been performed on all target sample users in the current batch, and therefore step S306 is performed. When p is greater than the batch number, it indicates that the model training has been performed on all target sample users in the current batch, and therefore step S311 is performed.

[0256] Step S306: The second participating device can calculate the second model training parameter and share it to other participants (i.e. guests) by secret sharing. Similarly, other participants can also share the first model training parameter to the second participating device by secret sharing.

[0257] Step S307: The second participating device can calculate its own factor B and homomorphically encrypt the factor B to obtain [factor B], and the second participating device can send [factor B] to the first participating device.

[0258] Step S308: The second participating device can obtain the second model gradient obtained by the first participating device, which is obtained by the first participating device according to [factor B] and the calculated factor A.

[0259] Step S309: The first participating device can perform gradient optimization and gradient descent on the obtained second model gradient to correct the model parameters of the second initial sub-model.

[0260] Step S310: The above process completes a model training through the target sample user with a count of 0, then the count of p can be incremented (i.e. p++), and then step S305 can be performed to determine whether p after incrementing is greater than the batch number. If yes, step S311 is performed, and if not, step S306 is performed again.

[0261] Step S311: Similarly, q represents the total number of batches for all target sample users. When p is greater than the number of batches, it means that the model has been trained using all target sample users in the current batch. Then, the current batch count can be incremented by 1 (i.e., q++) to train the model using the next batch of target sample users. Next, step S203 above can be executed, i.e., it is determined whether a stop indication message has been received. If received, the model training process ends; if not received, the p count is reset to 0, and model training continues using a new batch of target sample users. The above steps are repeated until the second participating device receives the stop indication message, at which point the second initial sub-model is taken as the trained second sub-model.

[0262] As can be seen from the above, the second participating device can complete the model training together with the first participating device while ensuring that its user characteristics, second model training parameters, and factor B are kept confidential from the first participating device.

[0263] Please see Figure 13 , Figure 13 This is a schematic diagram of a user attribute prediction device provided in this application. This user attribute prediction device can be applied to a first participating device, and can be used to perform the above-described... Figure 3 Corresponding embodiments and Figure 6 The various steps in the corresponding embodiments. For example... Figure 13 As shown, the user attribute prediction device 1 may include: a parameter generation module 101, a random number acquisition module 102, a model parameter determination module 103, and an attribute prediction module 104;

[0264] The parameter generation module 101 is used to obtain the first user features of the user to be predicted in the first user feature dimension and the first sub-model with the model parameters belonging to the first user feature dimension, and generate the first data prediction parameters for the user to be predicted based on the first user features and the first sub-model with the model parameters.

[0265] The random number acquisition module 102 is used to receive random numbers generated by the second participating device based on the second data prediction parameters through the private domain transmission channel; wherein, the second data prediction parameters are generated by the second participating device based on the second user features of the user to be predicted in the second user feature dimension and the second sub-model with the model parameters to which the second user feature dimension belongs;

[0266] The model parameter determination module 103 is used to perform model prediction parameter synthesis processing on the first data prediction parameters and the data prediction random number to obtain the model prediction parameters of the target model used to predict user attributes; the target model consists of a first sub-model and a second sub-model.

[0267] The attribute prediction module 104 is configured to predict and output the user attribute of the to-be-predicted user according to the model prediction parameter.

[0268] The specific function implementation manners of the parameter generation module 101, the random number acquisition module 102, the model parameter determination module 103, and the attribute prediction module 104 can be referred to the Figure 3 The steps S101-S104 in the corresponding embodiment will not be repeated here.

[0269] The data prediction random number is generated by the second participating device according to the parameter operation type associated with the second data prediction parameter and the secret sharing protocol indicated by the secret sharing technology;

[0270] The user attribute prediction apparatus 1 is further configured to:

[0271] establish a private domain transmission channel with the second participating device based on the secret sharing technology;

[0272] The model parameter determination module 103 is further configured to:

[0273] When it is detected that the data prediction random number is acquired through the private domain transmission channel, the first data prediction parameter and the data prediction random number are subjected to model prediction parameter synthesis processing according to the parameter operation type associated with the data prediction random number and the secret sharing protocol, so as to obtain the model prediction random number.

[0274] The attribute prediction module 104 includes an attribute parameter calculation unit 1041 and a user attribute determination unit 1042.

[0275] The attribute parameter calculation unit 1041 is configured to calculate a user attribute parameter for the to-be-predicted user according to the model prediction parameter.

[0276] The user attribute determination unit 1042 is configured to determine a user attribute associated with the user attribute parameter as the predicted user attribute of the to-be-predicted user, and output the predicted user attribute of the to-be-predicted user.

[0277] The specific function implementation manners of the attribute parameter calculation unit 1041 and the user attribute determination unit 1042 can be referred to the Figure 3 The step S104 in the corresponding embodiment will not be repeated here.

[0278] The user attribute prediction apparatus 1 further includes a model random number acquisition module 105, a sample prediction module 106, a first gradient determination module 107, a second gradient acquisition module 108, and a parameter correction module 109.

[0279] The model random number obtaining module 105 is configured to receive, based on the private domain transmission channel, a model random number generated by the second participating device according to second model training parameters for the target sample user; the second model training parameters include model parameters of a second initial submodel and user features of the target sample user in a second user feature dimension;

[0280] The sample prediction module 106 is configured to determine a predicted user attribute of the target sample user according to the model random number and first model training parameters to which the first participating device belongs; the first model training parameters include model parameters of a first initial submodel and user features of the target sample user in a first user feature dimension.

[0281] The first gradient determination module 107 is configured to determine a first model gradient according to the predicted user attribute, a user attribute label of the target sample user, and first feature gradient parameters to which the first participating device belongs.

[0282] The second gradient obtaining module 108 is configured to obtain second feature gradient parameters to which the second participating device belongs, and determine a second model gradient according to the predicted user attribute, the user attribute label, and the second feature gradient parameters.

[0283] The parameter correction module 109 is configured to correct the model parameters of the first initial submodel based on the first model gradient to obtain a first submodel, and send the second model gradient to the second participating device, so that the second participating device corrects the model parameters of the second initial submodel based on the second model gradient to obtain a second submodel; the first submodel and the second submodel are used to constitute a target model; the target model is used to predict a user attribute of a to-be-predicted user.

[0284] The specific function implementation manners of the model random number obtaining module 105, the sample prediction module 106, the first gradient determination module 107, the second gradient obtaining module 108, and the parameter correction module 109 can be referred to the specific function implementation manners of the steps S201-S205 in the corresponding embodiments, which will not be described here in detail. Figure 6 The specific function implementation manners of the model random number obtaining module 105, the sample prediction module 106, the first gradient determination module 107, the second gradient obtaining module 108, and the parameter correction module 109 can be referred to the specific function implementation manners of the steps S201-S205 in the corresponding embodiments, which will not be described here in detail.

[0285] The private domain transmission channel between the first participating device and the second participating device is established based on secret sharing technology; the first initial submodel and the second initial submodel are used to constitute an initial model.

[0286] The sample prediction module 106 includes a model parameter recovery unit 1061 and a sample prediction unit 1062.

[0287] The model parameter recovery unit 1061 is configured to, when it is detected that the model random number is obtained through the private domain transmission channel, recover the initial model training parameter of the initial model according to the parameter operation type associated with the second model training parameter, the secret sharing protocol indicated by the secret sharing technology, the model random number, and the second model training parameter.

[0288] The sample prediction unit 1062 is configured to determine the predicted user attribute of the target sample user according to the initial model training parameter.

[0289] For specific function implementation manners of the model parameter recovery unit 1061 and the sample prediction unit 1062, refer to Figure 6 For step S202 in the corresponding embodiment, details are not described herein again.

[0290] The first gradient determination module 107 includes a first progressive parameter determination unit 1071 and a first gradient determination unit 1072.

[0291] The first progressive parameter determination unit 1071 is configured to determine the progressive gradient parameter according to the predicted user attribute and the user attribute label.

[0292] The first gradient determination unit 1072 is configured to determine the product of the progressive gradient parameter and the first feature gradient parameter as the first model gradient.

[0293] For specific function implementation manners of the first progressive parameter determination unit 1071 and the first gradient determination unit 1072, refer to Figure 6 For step S203 in the corresponding embodiment, details are not described herein again.

[0294] The second gradient acquisition module 108 is configured to:

[0295] Acquire the homomorphic gradient parameter of the homomorphic encryption of the second feature gradient parameter performed by the second participating device;

[0296] The second gradient acquisition module 108 includes a second progressive parameter determination unit 1081 and a second gradient determination unit 1082.

[0297] The second progressive parameter determination unit 1081 is configured to determine the progressive gradient parameter according to the predicted user attribute and the user attribute label.

[0298] The second gradient determination unit 1082 is configured to determine the product of the progressive gradient parameter and the homomorphic gradient parameter as the homomorphic encryption of the second model gradient.

[0299] For specific function implementation manners of the second progressive parameter determination unit 1081 and the second gradient determination unit 1082, refer to Figure 6 Corresponding to step S204 in the embodiment, details are not repeated here.

[0300] The parameter correction module 109 is configured to:

[0301] The homomorphic encryption second model gradient is sent to the second participant device, so that the second participant device decrypts the homomorphic encryption second model gradient to obtain a target model gradient; and the second participant device corrects the model parameters of the second initial sub-model according to the target model gradient to obtain a second sub-model.

[0302] The parameter correction module 109 includes a gradient descent unit 1091 and a convergence determination unit 1092.

[0303] The gradient descent unit 1091 is configured to adjust the model parameters of the first initial sub-model and perform a gradient descent operation on the first model gradient.

[0304] The convergence determination unit 1092 is configured to, when the first initial sub-model is in a model convergence state during the gradient descent operation on the first model gradient, determine the first initial sub-model in the model convergence state as the first sub-model.

[0305] For specific function implementation manners of the gradient descent unit 1091 and the convergence determination unit 1092, refer to the description of the gradient descent unit 1091 and the convergence determination unit 1092. Figure 6 Corresponding to step S205 in the embodiment, details are not repeated here.

[0306] The user attribute prediction device 1 further includes a user set obtaining module 112 and a predicted user determining module 113.

[0307] The user set obtaining module 112 is configured to obtain a first user set to which the first participant device belongs, and obtain a second user set to which the second participant device belongs.

[0308] The sample determining module 111 is configured to obtain a user intersection between the first user set and the second user set, determine a user with an actual user attribute in the user intersection as a target sample user, and generate a user attribute label of the target sample user according to the actual user attribute.

[0309] For specific function implementation manners of the user set obtaining module 110 and the sample determining module 111, refer to the description of the user set obtaining module 110 and the sample determining module 111. Figure 6 Corresponding to step S201 in the embodiment, details are not repeated here.

[0310] The user attribute prediction device 1 further includes a user set obtaining module 112 and a predicted user determining module 113.

[0311] The user set obtaining module 112 is configured to obtain a first user set to which the first participating device belongs, and obtain a second user set to which the second participating device belongs.

[0312] The predicted user determining module 113 is configured to obtain a user intersection of the first user set and the second user set, and determine a user in the user intersection without an actual user attribute as a predicted user.

[0313] The specific function implementation manners of the user set obtaining module 112 and the predicted user determining module 113 can be referred to the Figure 3 The step S101 in the corresponding embodiment will not be repeated here.

[0314] The first participating device is a device participating in a merchant; the second participating device is a device participating in an asset management institution; the first user feature of the predicted user in the first user feature dimension includes a product order data feature of the predicted user at the merchant; the second user feature of the predicted user in the second user feature dimension includes a user asset data feature of the predicted user at the asset management institution; the user attribute is a first probability order attribute or a second probability order attribute.

[0315] The attribute prediction module 104 includes an attribute prediction unit 1043, a guided order unit 1044, and a product hiding unit 1045.

[0316] The attribute prediction unit 1043 is configured to predict and output, according to the model prediction parameter, a user attribute of the predicted user for a target product indicated by the product order data feature and the user asset data feature.

[0317] The guided order unit 1044 is configured to guide the predicted user to place a product order for the target product when the user attribute is the first probability order attribute.

[0318] The product hiding unit 1045 is configured to hide the target product from the predicted user when the user attribute is the second probability order attribute.

[0319] The specific function implementation manners of the attribute prediction unit 1043, the guided order unit 1044, and the product hiding unit 1045 can be referred to the Figure 3 The step S104 in the corresponding embodiment will not be repeated here.

[0320] The first participating device and the second participating device can jointly train the first initial sub-model held by the first participating device and the second initial sub-model held by the second participating device through user features held by the first participating device and user features held by the second participating device, and the first model training parameters of the first participating device and the second model training parameters of the second participating device can be transmitted to each other by using a private domain transmission channel in the training process. The use of the private domain transmission channel to transmit data can ensure that the first participating device and the second participating device are in a completely equal relationship, so that the training of the model does not need to introduce a third-party node. Therefore, it can be seen that the device provided in the application can improve the efficiency of training the model. In addition, the first model training parameters of the first participating device and the second model training parameters of the second participating device are also transmitted through the private domain transmission channel, so that the Taylor approximation of the loss function of the model is not needed, which ensures the accuracy of the model obtained by training. In addition, when the target model is applied to predict the user attributes of the to-be-predicted user, a third-party node is also not needed to be introduced for prediction, so that the efficiency of predicting the user attributes of the to-be-predicted user is also improved.

[0321] Please refer to Figure 14 , Figure 14 is a structural schematic diagram of a computer device provided by the application. As shown in Figure 14 , the computer device 1000 can include a processor 1001, a network interface 1004 and a memory 1005, in addition, the computer device 1000 can also include a user interface 1003, and at least one communication bus 1002. Wherein, the communication bus 1002 is used to realize the connection communication between these components. Wherein, the user interface 1003 can include a display screen (Display), a keyboard (Keyboard), and the optional user interface 1003 can also include a standard wired interface, a wireless interface. The network interface 1004 can optionally include a standard wired interface, a wireless interface (such as a WI-FI interface). The memory 1005 can be a high-speed RAM memory, or a non-volatile memory, for example, at least one disk memory. The memory 1005 can optionally be at least one storage device located away from the aforementioned processor 1001. As shown in Figure 14 , the memory 1005 as a computer storage medium can include an operating system, a network communication module, a user interface module and a device control application program.

[0322] In Figure 14 the computer device 1000, the network interface 1004 can provide network communication function; while the user interface 1003 is mainly used to provide an interface for the user to input; and the processor 1001 can be used to call the device control application program stored in the memory 1005 to realize the foregoing Figure 3 and Figure 6 the corresponding embodiments. It should be understood that the computer device 1000 described in this application can also execute the foregoing Figure 13 the description of the user attribute prediction apparatus 1 in the corresponding embodiments, which will not be repeated here. In addition, the description of the beneficial effects of using the same method will also not be repeated.

[0323] In addition, it should be noted here that the present application also provides a computer readable storage medium, and the computer readable storage medium stores the computer program executed by the user attribute prediction apparatus 1 mentioned above, and the computer program includes program instructions, and when the processor executes the program instructions, the foregoing Figure 3 and Figure 6 the corresponding embodiments. Therefore, the foregoing will not be repeated here. In addition, the description of the beneficial effects of using the same method will also not be repeated. For technical details not disclosed in the computer storage medium embodiments of the present application, please refer to the description of the method embodiments of the present application.

[0324] Those of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiments can be completed by a computer program instructing related hardware. The above-mentioned program can be stored in a computer readable storage medium, and when the program is executed, it can include the processes of the above-mentioned embodiments. Among them, the storage medium can be a magnetic disc, an optical disc, a read-only memory (ROM) or a random access memory (RAM) and the like.

[0325] The above only describes the preferred embodiments of the present application, and of course cannot limit the scope of the rights of the present application, so the equivalent changes made according to the claims of the present application still fall within the scope of the present application.< / vx> < / vx> < / vx> < / vx> < / vx> < / vx> < / vx> < / vx> < / wx> < / vx> < / wx> < / vx> < / wx> < / vx> < / wx> < / vx> < / wx> < / vx> < / wx> < / vx> < / vx> < / wx> < / vx> < / wx>

Claims

1. A user attribute prediction method characterized by, The method is performed by a first participating device, and the method includes: Obtain the first user feature of the user to be predicted in the first user feature dimension and the first sub-model with the model parameters belonging to the first user feature dimension; generate the first data prediction parameters for the user to be predicted based on the first user feature and the first sub-model. A private transmission channel is established between the device and the second participating device based on secret sharing technology; The second participating device receives a data prediction random number generated by the second participating device based on the second data prediction parameters through the private domain transmission channel; wherein, the second data prediction parameters are generated by the second participating device based on the second user features of the user to be predicted in the second user feature dimension and the second sub-model having the model parameters to which the second user feature dimension belongs; the data prediction random number is generated by the second participating device based on the parameter operation type associated with the second data prediction parameters and the secret sharing protocol indicated by the secret sharing technology; When it is detected that the data prediction random number is obtained through the private domain transmission channel, the first data prediction parameter and the data prediction random number are processed by model prediction parameter synthesis according to the parameter operation type associated with the data prediction random number and the secret sharing protocol to obtain the model prediction parameters of the target model for predicting user attributes; the target model is composed of the first sub-model and the second sub-model; The user attributes of the user to be predicted are predicted and output based on the model prediction parameters.

2. The method of claim 1, wherein, The step of predicting and outputting the user attributes of the user to be predicted based on the model prediction parameters includes: Calculate the user attribute parameters for the user to be predicted based on the model prediction parameters; The user attributes associated with the user attribute parameters are determined as the user attributes of the user to be predicted, and the predicted user attributes of the user to be predicted are output.

3. The method according to claim 1, characterized in that, The method further includes: The second participating device receives a model random number generated by the second participating device based on the second model training parameters for the target sample user through the private domain transmission channel; the second model training parameters include the model parameters of the second initial sub-model and the user features of the target sample user in the second user feature dimension; The predicted user attributes of the target sample user are determined based on the model random number and the first model training parameters of the first participating device; the first model training parameters include the model parameters of the first initial sub-model and the user features of the target sample user in the first user feature dimension. The first model gradient is determined based on the predicted user attributes, the user attribute labels of the target sample user, and the first feature gradient parameters of the first participating device. Obtain the second feature gradient parameter to which the second participating device belongs, and determine the second model gradient based on the predicted user attribute, the user attribute label, and the second feature gradient parameter; The model parameters of the first initial sub-model are corrected based on the first model gradient to obtain the first sub-model. The second model gradient is then sent to the second participating device so that the second participating device corrects the model parameters of the second initial sub-model based on the second model gradient to obtain the second sub-model.

4. The method according to claim 3, characterized in that, The first initial sub-model and the second initial sub-model are used to construct the initial model; The step of determining the predicted user attributes of the target sample user based on the model random number and the first model training parameters to which the first participating device belongs includes: When it is detected that the model random number is obtained through the private domain transmission channel, the initial model training parameters of the initial model are recovered according to the parameter operation type associated with the second model training parameters, the secret sharing protocol indicated by the secret sharing technology, the model random number, and the second model training parameters; The predicted user attributes of the target sample users are determined based on the initial model training parameters.

5. The method according to claim 3, characterized in that, The step of determining the first model gradient based on the predicted user attributes, the user attribute labels of the target sample user, and the first feature gradient parameters of the first participating device includes: The progressive gradient parameters are determined based on the predicted user attributes and the user attribute labels; The product of the progressive gradient parameter and the first feature gradient parameter is determined as the first model gradient.

6. The method according to claim 3, characterized in that, The process of obtaining the second feature gradient parameters includes: Obtain the homomorphic gradient parameters after the second participating device homomorphically encrypts the second feature gradient parameters; Determining the second model gradient based on the predicted user attributes, the user attribute labels, and the second feature gradient parameters includes: The progressive gradient parameters are determined based on the predicted user attributes and the user attribute labels; The product of the progressive gradient parameter and the homomorphic gradient parameter is determined as the second model gradient after homomorphic encryption.

7. The method according to claim 6, characterized in that, The step of sending the second model gradient to the second participating device, so that the second participating device can correct the model parameters of the second initial sub-model based on the second model gradient to obtain the second sub-model, includes: The homomorphically encrypted second model gradient is sent to the second participating device so that the second participating device can decrypt the homomorphically encrypted second model gradient to obtain the target model gradient; the second participating device is used to correct the model parameters of the second initial sub-model according to the target model gradient to obtain the second sub-model.

8. The method according to claim 3, characterized in that, The step of correcting the model parameters of the first initial sub-model based on the gradient of the first model to obtain the first sub-model includes: Adjust the model parameters of the first initial sub-model and perform gradient descent operation on the gradient of the first model; When the gradient descent operation is performed on the gradient of the first model, and it is detected that the first initial sub-model is in a model convergence state, the first initial sub-model in the model convergence state is determined as the first sub-model.

9. The method according to claim 3, characterized in that, The method further includes: Obtain the first user set to which the first participating device belongs, and obtain the second user set to which the second participating device belongs; Obtain the user intersection between the first user set and the second user set, and determine the users with actual user attributes in the user intersection as the target sample users; the actual user attributes are used to generate the user attribute labels of the target sample users.

10. The method according to claim 1, characterized in that, The method further includes: Obtain the first user set to which the first participating device belongs, and obtain the second user set to which the second participating device belongs; Obtain the user intersection of the first user set and the second user set, and identify the users in the user intersection that do not have actual user attributes as the users to be predicted.

11. The method according to claim 1, characterized in that, The first participating device is the device belonging to the participating merchant; the second participating device is the device belonging to the asset management institution; the first user feature of the user to be predicted in the first user feature dimension includes the product order data feature of the user to be predicted at the participating merchant; The second user feature of the user to be predicted in the second user feature dimension includes the user asset data feature of the user to be predicted at the asset management institution. The user attribute is either a first probability order attribute or a second probability order attribute; The step of predicting and outputting the user attributes of the user to be predicted based on the model prediction parameters includes: The model predicts and outputs the user attributes of the user to be predicted for the target product, based on the product order data features and the user asset data features, according to the prediction parameters of the model. When the user attribute is the first probability order attribute, guide the user to be predicted to place an order for the target product. When the user attribute is the second probability order attribute, the target product is hidden from the user to be predicted.

12. A user attribute prediction device, characterized in that, The device is applied to a first participating device, and the device includes: The parameter generation module is used to obtain the first user features of the user to be predicted in the first user feature dimension and the first sub-model with the model parameters belonging to the first user feature dimension, and to generate the first data prediction parameters for the user to be predicted based on the first user features and the first sub-model. The random number acquisition module is used to establish a private transmission channel with the second participating device based on secret sharing technology. The random number acquisition module is further configured to receive, based on the private domain transmission channel, a data prediction random number generated by the second participating device according to the second data prediction parameters; wherein, the second data prediction parameters are generated by the second participating device based on the second user features of the user to be predicted in the second user feature dimension and a second sub-model having model parameters to which the second user feature dimension belongs; the data prediction random number is generated by the second participating device based on the parameter operation type associated with the second data prediction parameters and the secret sharing protocol indicated by the secret sharing technology; The model parameter determination module is used to, when it is detected that the data prediction random number is obtained through the private domain transmission channel, perform model prediction parameter synthesis processing on the first data prediction parameter and the data prediction random number according to the parameter operation type associated with the data prediction random number and the secret sharing protocol, to obtain the model prediction parameters of the target model for predicting user attributes; the target model is composed of the first sub-model and the second sub-model; The attribute prediction module is used to predict and output the user attributes of the user to be predicted based on the model prediction parameters.

13. A computer device, characterized in that, It includes a memory and a processor, the memory storing a computer program that, when executed by the processor, causes the processor to perform the steps of the method according to any one of claims 1-11.

14. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program adapted to be loaded by a processor and executed as described in any one of claims 1-11.

Citation Information

Patent Citations

  • Speech synthesis method and device thereof, computing equipment and storage medium

    CN111105778A

  • Method and device for obtaining user attributes, computer equipment and storage medium

    CN111260419A