Feature crossover method, device, computer readable storage medium and program product

By using homomorphic encryption technology in the vertical federated learning framework, public and private keys are generated, and feature crossover is carried out with the assistance of trusted participants, the problem of class attribute feature crossover in vertical federated learning is solved, and the accuracy of data privacy protection and feature crossover results is achieved.

CN112668046BActive Publication Date: 2025-05-16WEBANK (CHINA)
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202011552619.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-12-24
Publication Date
2025-05-16
Estimated Expiration
2040-12-24

AI Technical Summary

Technical Problem

Under the vertical federated learning framework, it is difficult to cross the category attribute features due to the need to protect data privacy, especially when these features are distributed separately among different participants.

Method used

Feature crossover is performed by generating public and private keys for homomorphic encryption and with the assistance of trusted parties. Specific steps include public key distribution, acquisition of ciphertext feature crossover results and homomorphic decryption to ensure that feature crossover is achieved without leaking the original data.

Benefits of technology

It realizes the feature crossover of category features based on the vertical federated learning framework under the premise of protecting data privacy, ensuring the accuracy and privacy protection of cross-section results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112668046B_ABST
    Figure CN112668046B_ABST
Patent Text Reader

Abstract

The present application provides a feature crossover method, device, computer-readable storage medium and program product, the method is applied to a trusted participant performing feature crossover, the trusted participant is used to jointly train the model, the method includes: generating a public key and a private key for homomorphic encryption; distributing the public key to a first participant and a second participant performing feature crossover; obtaining at least one ciphertext feature crossover result from the second participant, the ciphertext feature crossover result being obtained based on the first feature of the first participant, the second feature of the second participant and the public key; homomorphically decrypting the at least one ciphertext feature crossover result based on the private key to obtain at least one plaintext feature crossover result. Through the present application, feature crossover of category features can be achieved based on a vertical federated learning framework while protecting data privacy.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of artificial intelligence technology, and relates to but is not limited to a feature intersection method, device, computer-readable storage medium, and program product. Background Art

[0002] Federated learning technology is an emerging privacy protection technology that can effectively combine data from all parties for model training without leaving the local data.

[0003] Vertical federated learning usually involves different participants jointly training machine learning models. When using vertical federated learning for modeling, it is often necessary to cross the features of different participants. However, under the framework of vertical federation, if the features of two category attributes are distributed among different participants, it is often difficult to cross the features due to the need to protect data privacy. Summary of the invention

[0004] The embodiments of the present application provide a feature crossing method, apparatus, device, computer-readable storage medium, and computer program product, which can realize feature crossing of category features based on a vertical federated learning framework while protecting data privacy.

[0005] The technical solution of the embodiment of the present application is implemented as follows:

[0006] The embodiment of the present application provides a feature crossover method, which is applied to a trusted participant who performs feature crossover, and the trusted participant is used to perform joint training on a model, and the method includes:

[0007] Generate public and private keys for homomorphic encryption;

[0008] Distributing the public key to a first participant and a second participant performing feature crosstalk;

[0009] Acquire at least one ciphertext feature cross result from the second participant, where the ciphertext feature cross result is obtained according to the first feature of the first participant, the second feature of the second participant, and the public key;

[0010] The at least one ciphertext feature cross-result is homomorphically decrypted based on the private key to obtain at least one plaintext feature cross-result.

[0011] The embodiment of the present application provides a feature crossover method, the method is applied to a first participant who performs feature crossover, the first participant is used to perform joint training on a model, the method includes:

[0012] Obtaining at least one first feature and a public key for feature crossover;

[0013] Encoding the at least one first feature to obtain a first encoding value corresponding to the at least one first feature;

[0014] Performing homomorphic encryption on a first encoding value corresponding to the at least one first feature based on the public key to obtain at least one first ciphertext feature;

[0015] The at least one first ciphertext feature is sent to a second participant who performs feature crossover, so that the second participant performs feature crossover based on the first ciphertext feature.

[0016] The embodiment of the present application provides a feature crossover method, the method is applied to a second participant who performs feature crossover, the second participant is used to perform joint training on a model, the method includes:

[0017] Acquire at least one second feature for feature crossover, at least one first ciphertext feature, and a public key, where the at least one first ciphertext feature is obtained by a first participant in the feature crossover based on the at least one first feature and the public key;

[0018] Performing homomorphic encryption on the at least one second feature based on the public key to obtain at least one second ciphertext feature;

[0019] Perform feature intersection based on the at least one first ciphertext feature and the at least one second ciphertext feature to obtain at least one ciphertext feature intersection result;

[0020] The at least one ciphertext feature crossover result is sent to a trusted party that performs feature crossover, so that the trusted party determines a plaintext feature crossover result based on the ciphertext feature crossover result.

[0021] The present application embodiment provides a feature crossover method, which is applied to an active participant in feature crossover, and the active participant is used to perform joint training on a model, and the method includes:

[0022] Determining a sample for feature crossover according to a first participant and a second participant for feature crossover;

[0023] Obtaining label information of the sample;

[0024] Homomorphically encrypt the label information of the sample to obtain ciphertext label information;

[0025] Sending the ciphertext marking information to a trusted participant who performs feature cross-checking, so that the trusted participant determines the number of ciphertext marking information corresponding to the plaintext feature cross-checking result based on the ciphertext marking information;

[0026] Based on the number of ciphertext marked information sent by the trusted party, the information value of the plaintext feature cross-result is determined.

[0027] The embodiment of the present application provides a feature crossover device, which is applied to a trusted participant who performs feature crossover, and the trusted participant is used to perform joint training on a model, and the device includes:

[0028] A first generation module, used to generate a public key and a private key for homomorphic encryption;

[0029] A first sending module, used to distribute the public key to a first participant and a second participant performing feature cross-talk;

[0030] A first acquisition module, configured to acquire at least one ciphertext feature cross result from the second participant, wherein the ciphertext feature cross result is obtained according to a first feature of the first participant, a second feature of the second participant, and the public key;

[0031] A decryption module is used to perform homomorphic decryption on the at least one ciphertext feature cross-result based on the private key to obtain at least one plaintext feature cross-result.

[0032] The embodiment of the present application provides a feature crossover device, which is applied to a first participant who performs feature crossover, and the first participant is used to perform joint training on a model, and the device includes:

[0033] A fourth acquisition module, used to acquire at least one first feature and a public key for feature cross-talk;

[0034] An encoding module, used to encode the at least one first feature to obtain a first encoding value corresponding to the at least one first feature;

[0035] A second encryption module is used to perform homomorphic encryption on a first encoding value corresponding to the at least one first feature based on the public key to obtain at least one first ciphertext feature;

[0036] The fourth sending module is used to send the at least one first ciphertext feature to a second participant who performs feature cross-linking, so that the second participant performs feature cross-linking based on the first ciphertext feature.

[0037] The embodiment of the present application provides a feature crossover device, which is applied to a second participant who performs feature crossover, and the second participant is used to perform joint training on a model, and the device includes:

[0038] A second acquisition module is used to acquire at least one second feature for feature crossover, at least one first ciphertext feature, and a public key; the at least one first ciphertext feature is obtained by a first participant in feature crossover based on at least one first feature and the public key;

[0039] A first encryption module, configured to perform homomorphic encryption on the at least one second feature based on the public key to obtain at least one second ciphertext feature;

[0040] A feature crossover module, configured to perform feature crossover based on the at least one first ciphertext feature and the at least one second ciphertext feature to obtain at least one ciphertext feature crossover result;

[0041] The second sending module is used to send the at least one ciphertext feature cross-cutting result to a trusted participant who performs feature cross-cutting, so that the trusted participant determines the plaintext feature cross-cutting result based on the ciphertext feature cross-cutting result.

[0042] The embodiment of the present application provides a feature crossover device, which is applied to an active participant in feature crossover, and the active participant is used to perform joint training on a model, and the device includes:

[0043] A second determination module is used to determine a sample for feature cross-linking according to the first participant and the second participant for feature cross-linking;

[0044] A fifth acquisition module, used to acquire the label information of the sample;

[0045] A third encryption module is used to homomorphically encrypt the tag information of the sample to obtain ciphertext tag information;

[0046] A fifth sending module, used to send the ciphertext marking information to a trusted participant who performs feature cross-checking, so that the trusted participant determines the number of ciphertext marking information corresponding to the plaintext feature cross-checking result based on the ciphertext marking information;

[0047] The third determination module is used to determine the information value of the plaintext feature cross-result based on the number of ciphertext mark information sent by the trusted party.

[0048] The embodiment of the present application provides a feature cross-connection device, including:

[0049] A memory for storing executable instructions;

[0050] The processor is used to implement the method provided in the embodiment of the present application when executing the executable instructions stored in the memory.

[0051] An embodiment of the present application provides a computer-readable storage medium, on which executable instructions are stored, for causing a processor to execute and implement the method provided in the embodiment of the present application.

[0052] An embodiment of the present application provides a computer program product, including a computer program, and when the computer program is executed by a processor, the method provided by the embodiment of the present application is implemented.

[0053] The embodiments of the present application have the following beneficial effects:

[0054] In the feature crossover method provided in the embodiment of the present application, a trusted party generates a public key and a private key for homomorphic encryption; distributes the public key to the first party and the second party performing feature crossover; obtains at least one ciphertext feature crossover result from the second party, and the ciphertext feature crossover result is obtained according to the first feature of the first party, the second feature of the second party and the public key; homomorphically decrypts the at least one ciphertext feature crossover result based on the private key to obtain at least one plaintext feature crossover result. Through the embodiment of the present application, the crossover of features of the first party and the second party can be achieved without leaking their original data; the ciphertext feature crossover result is obtained by a trusted party, so that each party cannot infer the original data, and data privacy can be protected; encryption and decryption are performed by homomorphic encryption, so that at least one plaintext feature crossover result can be obtained consistent with the feature crossover result obtained by processing the unencrypted original data in the same way without leaking the original data, ensuring that the result obtained by feature crossover is correct. In this way, feature crossover of category features can be achieved based on a vertical federated learning framework under the premise of protecting data privacy. BRIEF DESCRIPTION OF THE DRAWINGS

[0055] Figure 1 A schematic diagram of a network architecture of a feature crossover method provided in an embodiment of the present application;

[0056] Figure 2 It is a schematic diagram of the composition structure of the characteristic cross-connection device provided in the embodiment of the present application;

[0057] Figure 3 A schematic diagram of an implementation flow of a feature crossover method provided in an embodiment of the present application;

[0058] Figure 4 A schematic diagram of another implementation flow of the feature crossover method provided in an embodiment of the present application;

[0059] Figure 5 A schematic diagram of another implementation flow of the feature crossover method provided in an embodiment of the present application;

[0060] Figure 6 A schematic diagram of another implementation flow of the feature crossover method provided in an embodiment of the present application;

[0061] Figure 7 A schematic diagram of another implementation flow of the feature crossover method provided in an embodiment of the present application;

[0062] Figure 8 A schematic diagram of the participants in the category feature intersection method provided in an embodiment of the present application. DETAILED DESCRIPTION

[0063] In order to make the purpose, technical solutions and advantages of the present application clearer, the present application will be further described in detail below in conjunction with the accompanying drawings. The described embodiments should not be regarded as limiting the present application. All other embodiments obtained by ordinary technicians in the field without making creative work are within the scope of protection of this application.

[0064] In the following description, reference is made to “some embodiments”, which describe a subset of all possible embodiments, but it will be understood that “some embodiments” may be the same subset or different subsets of all possible embodiments and may be combined with each other without conflict.

[0065] In the following description, the terms "first\second\third" involved are only used to distinguish similar objects and do not represent a specific ordering of the objects. It can be understood that "first\second\third" can be interchanged with a specific order or sequence where permitted, so that the embodiments of the present application described here can be implemented in an order other than that illustrated or described here.

[0066] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art to which this application belongs. The terms used herein are only for the purpose of describing the embodiments of this application and are not intended to limit this application.

[0067] Before further describing the embodiments of the present application in detail, the nouns and terms involved in the embodiments of the present application are explained. The nouns and terms involved in the embodiments of the present application are subject to the following interpretations.

[0068] 1) Federated Learning, an emerging basic AI technology, is designed to carry out efficient machine learning among multiple parties or computing nodes while ensuring information security during big data exchange, protecting terminal data and personal data privacy, and ensuring legality and compliance.

[0069] 2) Vertical Federated Learning: When there is a large overlap in users and a small overlap in user features between two datasets, the datasets are split vertically (i.e., feature dimension) and the data with the same users but different user features are taken out for machine learning training.

[0070] 3) Homomorphic Encryption: Homomorphic encryption is a cryptographic technique based on the computational complexity theory of mathematical problems. The data that has been homomorphically encrypted is processed to obtain an output, and the output is decrypted, and the result is the same as the output obtained by processing the unencrypted original data in the same way.

[0071] 4) Binning: split a continuous value into several segments, and treat each segment as a category. The process of converting continuous values ​​into discrete values ​​is usually called binning.

[0072] 5) Information Value, or IV value for short, is mainly used to encode input variables and evaluate predictive ability in binary classification problems of machine learning. The size of the IV value of a feature variable indicates the strength of the variable's predictive ability.

[0073] The following describes an exemplary application of the apparatus for implementing the embodiment of the present application. The apparatus provided in the embodiment of the present application can be implemented as a terminal device. The following describes an exemplary application of the terminal device when the apparatus is implemented as a terminal device.

[0074] Figure 1 A schematic diagram of the network architecture of the feature cross-talk method provided in the embodiment of the present application is shown in FIG. Figure 1 As shown, the network architecture includes at least a trusted participant C 100, a participant A 200, a participant B 300, an active participant D 400 and a network 500. To support an exemplary application, the trusted participant C 100, the participant A 200, the participant B 300 and the active participant D 400 can be the participants who jointly train the machine learning model in the vertical federated learning. Among them, the trusted participant C 100, the participant A 200, the participant B 300 and the active participant D 400 can be the client, such as the participant device of each bank or hospital that stores the user feature data, and the client can be a laptop, a tablet computer, a desktop computer, a dedicated training device and other devices with model training functions. Trusted party C 100 is connected to party A 200, party B 300 and active party D 400 respectively through network 500, and party A 200 is connected to party B 300 through network 500. Network 500 can be a wide area network or a local area network, or a combination of the two, using wireless or wired links to achieve data transmission.

[0075] The trusted party C 100 first generates a first public key and a first private key for additive homomorphic encryption, and distributes the first public key to the parties A 200 and B 300. The party B 300 receives the first public key sent by the trusted party C 100 and converts the i-th feature Encoded as is an integer between 1 and N, where N is the number of participants B 300 including feature X B The number of Perform homomorphic encryption to obtain the first ciphertext feature The first ciphertext feature Sent to participant A 200. Participant A 200 receives the first public key sent by trusted participant C 100, and receives the The jth feature Encoded as is an integer between 1 and M, where M is the number of participants A 200 including feature X A The number of Perform homomorphic encryption to obtain the second ciphertext feature Determine a ciphertext feature cross result based on the first ciphertext feature and the second ciphertext feature, and Sent to trusted party C 100. Trusted party C 100 receives the Decrypt with the first private key to get the cross signature Then, the cross-features are calculated jointly with the active participant D 400 The IV value of the trusted participant C 100 does not need to obtain the original data of the participants A 200 and B 300, and can realize the intersection of category features without leaking the original data of each participant; by introducing the trusted participant C100 to obtain the intersection feature This makes it impossible for all participants to infer the original data, thus protecting data privacy. Through homomorphic encryption for encryption and decryption, at least one plaintext feature crossover result can be made consistent with the feature crossover result obtained by processing the unencrypted original data in the same way without leaking the original data, thus ensuring that the result obtained by feature crossover is correct. In this way, feature crossover of category features can be realized based on the vertical federated learning framework while protecting data privacy.

[0076] The device provided in the embodiments of the present application may be implemented in the form of hardware or a combination of hardware and software. Various exemplary implementations of the device provided in the embodiments of the present application are described below.

[0077] according to Figure 2 An exemplary structure of a feature cross-device is shown. Here, the feature cross-device is shown taking the trusted participant C100 as an example. Other exemplary structures of the feature cross-device can be foreseen. Therefore, the structure described here should not be regarded as limiting. For example, some components described below can be omitted, or components not described below can be added to meet the special needs of certain applications.

[0078] Figure 2 The feature cross device 100 shown includes: at least one processor 110, a memory 140, at least one network interface 120 and a user interface 130. Each component in the feature cross device 100 is coupled together via a bus system 150. It is understood that the bus system 150 is used to achieve connection and communication between these components. In addition to the data bus, the bus system 150 also includes a power bus, a control bus and a status signal bus. However, for the sake of clarity, the bus system 150 is not described in detail. Figure 2 Various buses are labeled as bus system 150 .

[0079] The user interface 130 may include a display, a keyboard, a mouse, a touch pad, a touch screen, and the like.

[0080] The memory 140 may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memories. Among them, the non-volatile memory may be a read-only memory (ROM). The volatile memory may be a random access memory (RAM). The memory 140 described in the embodiments of the present application is intended to include any suitable type of memory.

[0081] The memory 140 in the embodiment of the present application can store data to support the operation of the feature cross device 100. Examples of such data include: any computer program used to operate on the feature cross device 100, such as an operating system and an application program. Among them, the operating system includes various system programs, such as a framework layer, a core library layer, a driver layer, etc., which are used to implement various basic services and process hardware-based tasks. The application program can include various application programs.

[0082] As an example of the method provided in the embodiment of the present application being implemented by software, the method provided in the embodiment of the present application can be directly embodied as a combination of software modules executed by the processor 110. The software module can be located in a storage medium, and the storage medium is located in the memory 140. The processor 110 reads the executable instructions included in the software module in the memory 140, and completes the method provided in the embodiment of the present application in combination with the necessary hardware (for example, including the processor 110 and other components connected to the bus 150).

[0083] As an example, the processor 110 can be an integrated circuit chip with signal processing capabilities, such as a general-purpose processor, a digital signal processor (DSP), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc., where the general-purpose processor can be a microprocessor or any conventional processor, etc.

[0084] The feature crossing method provided in the embodiment of the present application will be described in conjunction with the exemplary application and implementation of the terminal provided in the embodiment of the present application.

[0085] Figure 3 A schematic diagram of an implementation flow of the feature crossover method provided in the embodiment of the present application, which is applied to Figure 1 The trusted participant C in the network architecture shown will combine Figure 3 The steps shown are explained.

[0086] Step S301, generate a public key and a private key for homomorphic encryption.

[0087] In an embodiment of the present application, a trusted party generates a public key and a private key for homomorphic encryption, so that each party does not need to send the original data to the trusted party, thereby protecting the privacy of the original data of each party.

[0088] Here, in order to distinguish between the public key and private key generated by the active participant, the public key generated by the trusted participant is referred to as the first public key, and the private key generated by the trusted participant is referred to as the first private key.

[0089] Homomorphic encryption is a cryptographic technique based on the computational complexity theory of mathematical problems. The homomorphic encrypted data is processed to obtain an output, and this output is decrypted, and the result is the same as the output result obtained by processing the unencrypted original data in the same way. The generated first public key and first private key can be used for any of the homomorphic encryptions of additive homomorphic encryption, multiplicative homomorphic encryption, hybrid multiplicative homomorphic encryption, subtractive homomorphic encryption, division homomorphic encryption, algebraic homomorphic encryption (also known as full homomorphic encryption) and arithmetic homomorphic encryption. Here, the full homomorphic encryption refers to the encryption function that satisfies both additive homomorphism and multiplicative homomorphism.

[0090] In some embodiments, the trusted party may generate a first public key and a first private key for additive homomorphic encryption, or a first public key and a first private key for multiplicative homomorphic encryption, or a first public key and a first private key for fully homomorphic encryption. Compared with generating a first public key and a first private key for fully homomorphic encryption, generating a first public key and a first private key for additive homomorphic encryption can improve computing efficiency.

[0091] Step S302: Distribute the public key to the first party and the second party performing feature cross-talk.

[0092] Here, the first participant and the second participant are different participants who perform feature crossover. The feature included in the first participant is recorded as the first feature, and the feature included in the second participant is recorded as the second feature. The first participant encrypts the first coding value corresponding to the first feature based on the first public key to obtain the first ciphertext feature, and the second participant encrypts the second coding value corresponding to the second feature based on the first public key to obtain the second ciphertext feature. Then the second participant performs feature crossover on the first ciphertext feature of the first participant and its own second ciphertext feature to obtain the ciphertext feature crossover result.

[0093] For example, the first feature is "male", the first code value corresponding to the first feature is 1, and the first code value 1 is encrypted based on the first public key to obtain the first ciphertext feature 5; the second feature is "juvenile", the second code value corresponding to the second feature is 2, and the second code value 2 is encrypted based on the first public key to obtain the second ciphertext feature 7. The second participant performs feature crossover on the first ciphertext feature 5 and the second ciphertext feature 7 to obtain a ciphertext feature crossover result, for example, the ciphertext feature crossover result is 32.

[0094] Step S303: Obtain at least one ciphertext feature crossover result from the second participant.

[0095] The ciphertext feature cross result is obtained based on the first feature of the first participant, the second feature of the second participant and the public key.

[0096] After the second participant performs feature cross-talk and obtains the ciphertext feature cross-talk result, the ciphertext feature cross-talk result (i.e., ciphertext cross-talk feature) is sent to the trusted participant. In the embodiment of the present application, the ciphertext feature cross-talk result is obtained by the trusted participant, so that each participant cannot infer the original data, and data privacy can be protected.

[0097] Step S304: perform homomorphic decryption on the at least one ciphertext feature cross-result based on the private key to obtain at least one plaintext feature cross-result.

[0098] The first private key generated by the trusted party is used to homomorphically decrypt the received ciphertext feature crossover result to obtain the plaintext feature crossover result. By decrypting with the first private key used for homomorphic encryption, at least one plaintext feature crossover result can be made consistent with the feature crossover result obtained by processing the unencrypted original data in the same way without leaking the original data, ensuring that the result obtained by feature crossover is correct. Therefore, feature crossover of category features can be realized based on the vertical federated learning framework under the premise of protecting data privacy.

[0099] The feature crossover method provided in the embodiment of the present application is applied to a trusted participant who performs feature crossover. The trusted participant is used to jointly train the model. The trusted participant generates a public key and a private key for homomorphic encryption; the public key is distributed to the first participant and the second participant who perform feature crossover; at least one ciphertext feature crossover result is obtained from the second participant, and the ciphertext feature crossover result is obtained according to the first feature of the first participant, the second feature of the second participant and the public key; the at least one ciphertext feature crossover result is homomorphically decrypted based on the private key to obtain at least one plaintext feature crossover result. Through the embodiment of the present application, the crossover of the features of the first participant and the second participant can be realized without leaking the original data of the first participant and the second participant; the ciphertext feature crossover result is obtained by the trusted participant, so that each participant cannot infer the original data, and the data privacy can be protected; encryption and decryption are performed by homomorphic encryption, and the at least one plaintext feature crossover result can be obtained without leaking the original data. The feature crossover result obtained can be kept consistent with the feature crossover result obtained by processing the unencrypted original data using the same method, ensuring that the result obtained by the feature crossover is correct. In this way, feature crossover of category features can be realized based on the vertical federated learning framework under the premise of protecting data privacy.

[0100] In some embodiments, Figure 3 After obtaining at least one plaintext feature cross-continuation result in step S304 of the illustrated embodiment, the trusted party may further determine the information value of the at least one plaintext feature cross-continuation result in conjunction with the active party. After step S304, the method may further include the following steps:

[0101] Step S305: bin the at least one plaintext feature cross result to obtain at least one binning result.

[0102] In an embodiment of the present application, the same plaintext feature cross-results in the at least one plaintext feature cross-result may be divided into one bin. For example, if there are three plaintext feature cross-results of 5 in the at least one plaintext feature cross-result, the three plaintext feature cross-results may be divided into one bin result.

[0103] Step S306, obtaining the ciphertext marking information of the plaintext feature cross-cutting results in each binning result from the active participant who performs feature cross-cutting and has marking information.

[0104] Here, the marking information includes a first mark y and a second mark 1-y, and the ciphertext marking information includes a first ciphertext mark [[y]] and a second ciphertext mark [[1-y]].

[0105] Step S307: determining the number of ciphertext marking information corresponding to the plaintext feature cross-over result based on the ciphertext marking information.

[0106] In some embodiments, it can be implemented as follows: determining the number of first ciphertext marks corresponding to the plaintext feature cross-over result based on the first ciphertext mark; and determining the number of second ciphertext marks corresponding to the plaintext feature cross-over result based on the second ciphertext mark.

[0107] Still taking the above binning results as an example, among the three plaintext feature crossover results with a plaintext feature crossover result of 5, the first plaintext feature crossover result and the third plaintext feature crossover result correspond to the first ciphertext mark [[y]], and the second plaintext feature crossover result corresponds to the second ciphertext mark [[1-y]], then the number of first ciphertext marks corresponding to the plaintext feature crossover results in the binning result is [[y]] k is 2, the number of second ciphertext marks is [[1-y]] k is 1.

[0108] Step S308: sending the number of the ciphertext mark information to the active participant.

[0109] The number of first ciphertext marks determined by the trusted party is [[y]] k and the number of second ciphertext tags [[1-y]] k The information is sent to the active participant so that the active participant determines the information value of the plaintext feature cross-result based on the number of the ciphertext mark information.

[0110] The feature crossover method provided in the embodiment of the present application enables a trusted participant to determine the information value of at least one plaintext feature crossover result by jointly with an active participant, and based on the information value, can efficiently screen out crossover features with strong interpretability and good effects, thereby improving the model fitting ability and interpretability under the vertical federation framework, and further improving the model effect.

[0111] Based on the above embodiments, the present application further provides a feature intersection method. Figure 4 Another implementation flow diagram of the feature crossover method provided in the embodiment of the present application is applied to Figure 1 Participant B in the network architecture shown is Figure 4 As shown, the feature intersection method includes the following steps:

[0112] Step S401, obtaining at least one first feature and a public key for feature cross-checking.

[0113] Here, the first feature is a category feature of feature crossover by the first participant (ie, participant B). The public key is obtained from a trusted participant, that is, the public key is a first public key generated by a trusted participant for homomorphic encryption.

[0114] Step S402: Encode the at least one first feature to obtain a first encoding value corresponding to the at least one first feature.

[0115] In the embodiment of the present application, the first feature is denoted as X B , the first party includes the first feature X B The number of is recorded as N, for the i-th first feature Encode and get the first encoding value is an integer between 1 and N, that is, N first features X B The first encoded value obtained by encoding is an integer in the range [1, N].

[0116] In some embodiments, step S402 may be implemented as the following steps:

[0117] Step S4021: When there is a target first feature that has not been encoded in the at least one first feature, the number of encoded times is obtained.

[0118] Step S4022: Encode the target first feature based on the number of encoded times to obtain a first encoding value of the target first feature.

[0119] For example, at least one first feature contains a target first feature that is not encoded. The number of encodings is 5. Based on the number of encodings 5, the first feature of the target Get the first feature of the target The first encoding value is 6. Then, it is determined whether there is any target first feature that has not been encoded. At this time, the number of encodings has been updated to 6. Repeat the above steps until there is no target first feature that has not been encoded, so that N first features are The first encoded value obtained by encoding

[0120] Step S403: Perform homomorphic encryption on the first encoding value corresponding to the at least one first feature based on the public key to obtain at least one first ciphertext feature.

[0121] Based on the first public key, the i-th first feature The corresponding first code value Perform homomorphic encryption to obtain the i-th first ciphertext feature.

[0122] Here, the i-th first feature can be obtained based on the first public key The corresponding first code value Additive homomorphic encryption can improve computing efficiency.

[0123] Step S404: Send the at least one first ciphertext feature to a second participant performing feature cross-talk.

[0124] The first participant sends the first ciphertext feature determined based on its own first feature and the first public key to the second participant, so that the second participant performs feature cross-talk based on the first ciphertext feature. Since the first participant sends the first ciphertext feature to the second participant, the second participant cannot obtain the first feature of the first participant, thereby protecting data privacy.

[0125] Based on the above embodiments, the present application further provides a feature intersection method. Figure 5 A schematic diagram of another implementation flow of the feature crossover method provided in the embodiment of the present application, which is applied to Figure 1 Participant A in the network architecture shown is Figure 5 As shown, the feature intersection method includes the following steps:

[0126] Step S501, obtaining at least one second feature for feature cross-checking, at least one first ciphertext feature and a public key.

[0127] Here, the second feature is a category feature of the second participant (i.e., participant A) for feature crossover. The at least one first ciphertext feature can be obtained from the first participant, and the at least one first ciphertext feature is obtained by the first participant performing feature crossover based on at least one first feature and the public key. The public key is obtained from a trusted participant, that is, the public key is a first public key generated by a trusted participant for homomorphic encryption.

[0128] Step S502: homomorphically encrypt the at least one second feature based on the public key to obtain at least one second ciphertext feature.

[0129] Step S503: Perform feature intersection based on the at least one first ciphertext feature and the at least one second ciphertext feature to obtain at least one ciphertext feature intersection result.

[0130] Here, at least one first ciphertext feature is recorded as At least one second ciphertext feature is denoted as Based on at least one first ciphertext feature and at least one second ciphertext feature Perform feature crossover to obtain at least one ciphertext feature crossover result, recorded as Where M is the second participant including the second feature X A The number of .

[0131] Step S504: Send the at least one ciphertext feature crossover result to a trusted participant who performs feature crossover.

[0132] The second participant will obtain at least one ciphertext feature cross result The trusted party sends the encrypted feature cross result to the trusted party, so that the trusted party determines the plaintext feature cross result based on the encrypted feature cross result. In actual implementation, the trusted party performs homomorphic decryption on the at least one encrypted feature cross result based on the private key to obtain at least one plaintext feature cross result.

[0133] In the embodiment of the present application, since the second party sends the ciphertext feature cross result to the trusted party, the trusted party cannot obtain the first feature of the first party and the second feature of the second party, thereby protecting data privacy.

[0134] In some embodiments, Figure 5 In the illustrated embodiment, step S502 of “performing homomorphic encryption on the at least one second feature based on the public key to obtain at least one second ciphertext feature” can be implemented as the following steps:

[0135] Step S5021: Encode the at least one second feature to obtain a second encoding value corresponding to the at least one second feature.

[0136] In the embodiment of the present application, the second feature is denoted as X A , the second party includes the second feature X A The number of is recorded as M, for the jth second feature Encode and get the second encoding value is an integer between 1 and M, that is, M second features X A The second encoded value obtained by encoding is an integer in the range [1, M].

[0137] In some embodiments, step S5021 can be implemented as the following steps:

[0138] Step S50211: When there is a target second feature that has not been encoded in the at least one second feature, the number of encoded times is obtained.

[0139] Step S50212: Encode the target second feature based on the number of encoded times to obtain a second encoded value of the target second feature.

[0140] For example, at least one of the second features contains a target second feature that is not encoded. The number of encodings is 5. Based on the number of encodings 5, the second feature of the target Get the target second feature The second encoding value is 6. Then, it is determined whether there is any target second feature that has not been encoded. At this time, the number of encodings has been updated to 6. Repeat the above steps until there is no target second feature that has not been encoded, thereby adding M second features The second encoded value obtained by encoding

[0141] Step S5022: Perform homomorphic encryption on the second encoding value corresponding to the at least one second feature based on the public key to obtain at least one second ciphertext feature.

[0142] Based on the first public key, the j-th second feature The corresponding second code value Perform homomorphic encryption to obtain the j-th second ciphertext feature.

[0143] Here, the j-th second feature can be obtained based on the first public key The corresponding second code value Additive homomorphic encryption can improve computing efficiency.

[0144] Based on the above embodiments, the present application further provides a feature intersection method. Figure 6 A schematic diagram of another implementation flow of the feature crossover method provided in the embodiment of the present application, which is applied to Figure 1 The active participant D in the network architecture shown is Figure 6 As shown, the feature intersection method includes the following steps:

[0145] Step S601, determining samples for feature cross-linking according to the first participant and the second participant for feature cross-linking.

[0146] Step S602: Obtain label information of the sample.

[0147] Here, the tag information includes a first tag and a second tag.

[0148] For example, the marking information is whether the marking sample has an overdue record. If there is an overdue record, the marking information of the sample is determined to be the first mark, such as mark y is 1; if there is no overdue record, the marking information of the sample is determined to be the second mark, such as mark 1-y is 0.

[0149] Step S603, homomorphically encrypt the marking information of the sample to obtain ciphertext marking information.

[0150] In some embodiments, before step S603, the method further includes step S61, generating a second public key and a second private key for homomorphic encryption. Then step S603 includes: homomorphically encrypting the tag information of the sample based on the second public key to obtain ciphertext tag information.

[0151] In some embodiments, the active party may generate a second public key and a second private key for additive homomorphic encryption, or the active party may generate a second public key and a second private key for multiplicative homomorphic encryption, or the active party may generate a second public key and a second private key for full homomorphic encryption. Compared with generating a second public key and a second private key for full homomorphic encryption, generating a second public key and a second private key for additive homomorphic encryption can improve computing efficiency.

[0152] In some embodiments, the marking information includes a first mark and a second mark, and the ciphertext marking information includes a first ciphertext mark and a second ciphertext mark. The above step S603 can be implemented by the following steps:

[0153] Step S6031: homomorphically encrypt the first mark and the second mark of the sample based on the second public key to obtain a first ciphertext mark and a second ciphertext mark.

[0154] The first mark y and the second mark 1-y are homomorphically encrypted, and the obtained first ciphertext mark is recorded as [[y]], and the obtained second ciphertext mark is recorded as [[1-y]].

[0155] Step S6032: determine the first ciphertext mark and the second ciphertext mark as ciphertext mark information.

[0156] Step S604: Send the ciphertext mark information to a trusted party that performs feature cross-checking.

[0157] The active participant sends the first ciphertext mark [[y]] and the second ciphertext mark [[1-y]] to the trusted participant, so that the trusted participant determines the number of ciphertext mark information corresponding to the plaintext feature cross-cutting result based on the ciphertext mark information. The trusted participant determines the number of first ciphertext marks [[y]] corresponding to the plaintext feature cross-cutting result based on the first ciphertext mark [[y]] k , based on the second ciphertext mark [[1-y]], determine the number of second ciphertext marks corresponding to the plaintext feature crossover result [[1-y]] k , and then the trusted party marks the number of first ciphertext [[y]] k and the number of second ciphertext tags [[1-y]] k Sent to active participants.

[0158] Step S605, determining the information value of the plaintext feature cross-result based on the number of ciphertext mark information sent by the trusted party.

[0159] The active participant homomorphically decrypts the number of ciphertext mark information based on the second private key to obtain the number of plaintext mark information, and further calculates the information value of the plaintext feature cross-result based on the number of plaintext mark information.

[0160] In some embodiments, the above step S605 "determining the information value of the plaintext feature cross-result based on the number of ciphertext mark information sent by the trusted party" can be implemented by the following steps:

[0161] Step S6051, receiving the first number of ciphertext marks and the second number of ciphertext marks sent by the trusted party.

[0162] Step S6052: Decrypt the first number of ciphertext marks and the second number of ciphertext marks based on the second private key to obtain a first number of plaintext marks and a second number of plaintext marks.

[0163] Step S6053: Determine the information value of the plaintext feature cross-result based on the first plaintext tag number and the second plaintext tag number.

[0164] For example, the active participant uses the second private key to mark the number of times [[y]] the first ciphertext is marked k Perform homomorphic decryption to obtain the number of first plaintext tags y k , the number of times the second ciphertext is marked based on the second private key is [[1-y]] k Perform homomorphic decryption to obtain the number of second plaintext tags n k . Mark the number of the first plaintext y k and the number of second plaintext tags n k Input the calculation formula of IV value to obtain the information value of plaintext feature cross-result.

[0165] In the embodiment of the present application, the calculation formula of IV value is shown in the following formula (1):

[0166]

[0167] In the formula, WOE k The weight of evidence.

[0168] The feature crossover method provided in the embodiment of the present application enables the active participant to determine the information value of at least one plaintext feature crossover result by jointly with the trusted participant, and based on the information value, can efficiently screen out crossover features with strong interpretability and good effects, thereby improving the model fitting ability and interpretability under the vertical federation framework, and further improving the model effect.

[0169] Based on the above embodiments, the present application further provides a feature intersection method. Figure 7A schematic diagram of another implementation flow of the feature crossover method provided in the embodiment of the present application, which is applied to Figure 1 The network architecture shown in Figure 7 As shown, the feature intersection method includes the following steps:

[0170] Step S701: A trusted party generates a first public key and a first private key for homomorphic encryption.

[0171] Step S702: The trusted party distributes the first public key to the first party and the second party performing feature cross-talk.

[0172] Step S703: The first participant obtains at least one first feature for feature cross-checking.

[0173] The first participant here is Figure 1 Participant B in the network architecture shown.

[0174] Step S704: The first participant encodes the at least one first feature to obtain a first encoding value corresponding to the at least one first feature.

[0175] Step S705: The first party homomorphically encrypts the first encoding value corresponding to the at least one first feature based on the first public key to obtain at least one first ciphertext feature.

[0176] Step S706: The first participant sends the at least one first ciphertext feature to the second participant for feature cross-checking.

[0177] Step S707: The second participant obtains at least one second feature for feature cross-talk.

[0178] Step S708: The second participant encodes the at least one second feature to obtain a second encoding value corresponding to the at least one second feature.

[0179] Step S709: The second party homomorphically encrypts the second encoded value corresponding to the at least one second feature based on the first public key to obtain at least one second ciphertext feature.

[0180] Step S710: The second participant performs feature crossover based on the at least one first ciphertext feature and the at least one second ciphertext feature to obtain at least one ciphertext feature crossover result.

[0181] Step S711: The second party sends the at least one ciphertext feature cross-check result to the trusted party.

[0182] Step S712: The trusted party decrypts the at least one ciphertext feature cross-result based on the first private key to obtain at least one plaintext feature cross-result.

[0183] Step S713: The trusted party bins the at least one plaintext feature cross result to obtain at least one binning result.

[0184] Step S714: the active participant determines a sample for feature cross-linking according to the first participant and the second participant for feature cross-linking.

[0185] Step S715: The active participant obtains the marking information of the sample.

[0186] Step S716: The active participant generates a second public key and a second private key for homomorphic encryption.

[0187] Step S717: The active participant homomorphically encrypts the marking information of the sample based on the second public key to obtain ciphertext marking information.

[0188] Step S718: The active participant sends the ciphertext marking information to the trusted participant.

[0189] Step S719: The trusted party determines the number of ciphertext marking information corresponding to the plaintext feature cross-result based on the ciphertext marking information.

[0190] Step S720: The trusted party sends the number of the ciphertext marking information to the active party.

[0191] Step S721: The active participant performs homomorphic decryption on the number of ciphertext marking information based on the second private key to obtain the number of plaintext marking information.

[0192] Step S722: The active participant determines the information value of the plaintext feature cross-result based on the number of plaintext tag information.

[0193] The feature crossover method provided in the embodiment of the present application can realize the crossover of the features of the first and second participants without disclosing the original data of the first and second participants; the ciphertext feature crossover result is obtained through a trusted participant, so that each participant cannot infer the original data, thereby protecting data privacy; and encryption and decryption are performed through homomorphic encryption, so that at least one plaintext feature crossover result obtained can be consistent with the feature crossover result obtained by processing the unencrypted original data in the same way without disclosing the original data, thereby ensuring that the result obtained by the feature crossover is correct. In this way, feature crossover of category features can be realized based on the vertical federated learning framework while protecting data privacy.

[0194] The following is an explanation of an exemplary application of the embodiments of the present application in a practical application scenario.

[0195] In related technologies, vertical federated learning usually involves different participants jointly training machine learning models, where the participant with a label (usually only one) is called the active party, and the participant without a label is called the passive party. When using vertical federated learning for modeling, it is often necessary to cross the features of different participants to find a good feature combination to improve the model effect. The value range of the category attribute feature is usually a set, so the value range after crossing the features of two category attributes is usually the Cartesian product of the two sets. For example, if we want to cross the life stage (infant, child, youth, middle-aged, elderly) and gender, we will get (male infant, male child, male youth, male middle-aged, male elderly, female infant, female child, female youth, female middle-aged, female elderly). However, under the framework of vertical federation, if the features of the two category attributes are distributed in different participants, it is often difficult to cross the features due to the need to protect data privacy. There is a lack of effective mechanism under the framework of vertical federation to screen out feature combinations with strong interpretability and good results. These pain points affect the model fitting ability and interpretability under the vertical federated framework, which in turn affects the model effect, making it difficult for the vertical federated learning framework in related technologies to perform feature cross-fertilization of category attribute features.

[0196] This embodiment of the application proposes a category feature crossover method based on a vertical federated learning framework. Assume that participant A has category feature X A , participant B has class feature X B , participant D has label Y. A and X B When performing feature crossing, in order to prevent the original data of participants A and B from being leaked, we introduce a trusted participant C to obtain the features after the crossing of participants A and B.

[0197] Figure 8 A schematic diagram of the participants in the category feature crossover method provided in the embodiment of the present application, such as Figure 8 As shown, the method comprises the following steps:

[0198] In step S801, party C generates a public key and a private key for additive homomorphic encryption, and distributes the public key to party A and party B.

[0199] Step S802: Party B receives the public key sent by Party C and Encoded as The number will Homomorphic encryption with the public key Will Sent to Party A.

[0200] Here, N is The size of the range collection.

[0201] Step S803: Party A receives the public key sent by Party C and the Will Encoded as digit; Using public key homomorphic encryption Will Sent to Party C.

[0202] Here, M is The size of the range collection.

[0203] Step S804: Party C receives the Decrypted with the private key Calculate the IV value of the cross-feature jointly with party D with label Y.

[0204] The method provided in the embodiment of the present application realizes the intersection of category features without leaking the original data of the participants. Since participants A and B are both able to infer the other party's original data after obtaining the cross-features, the present invention introduces a trusted participant C to obtain the cross-features, so that each participant cannot infer the original data. Encryption is only achieved through additive homomorphism, avoiding the use of full homomorphic encryption, and ensuring computational efficiency. The category attributes are directly encoded, and then the encoding of the cross-features is obtained based on the encoding. The algorithm is simple and easy to implement with high efficiency. Encryption is only achieved through additive homomorphic encryption, avoiding the use of full homomorphic encryption, and ensuring computational efficiency.

[0205] The following is a description of an exemplary structure of a feature crossover device provided in an embodiment of the present application implemented as a software module. In some embodiments, Figure 2 As shown, the feature crossover device 90 stored in the memory 140 is applied to a trusted participant who performs feature crossover, and the trusted participant is used to jointly train the model. The software modules in the feature crossover device 90 may include:

[0206] A first generating module 91, used to generate a public key and a private key for homomorphic encryption;

[0207] A first sending module 92, used to distribute the public key to a first participant and a second participant performing feature cross-talk;

[0208] A first acquisition module 93, configured to acquire at least one ciphertext feature cross result from the second participant, wherein the ciphertext feature cross result is obtained according to the first feature of the first participant, the second feature of the second participant, and the public key;

[0209] The decryption module 94 is used to perform homomorphic decryption on the at least one ciphertext feature cross-result based on the private key to obtain at least one plaintext feature cross-result.

[0210] In some embodiments, the feature intersection device 90 may further include:

[0211] A binning module, used to bin the at least one plaintext feature cross result to obtain at least one binning result;

[0212] The third acquisition module is used to obtain the ciphertext marking information of the plaintext feature cross-cutting results in each binning result from the active participant who performs feature cross-cutting and has marking information;

[0213] A first determination module, configured to determine the number of ciphertext marking information corresponding to the plaintext feature cross-over result based on the ciphertext marking information;

[0214] The third sending module is used to send the number of the ciphertext marking information to the active participant, so that the active participant determines the information value of the plaintext feature cross-result based on the number of the ciphertext marking information.

[0215] In some embodiments, the marking information includes a first mark and a second mark, and the ciphertext marking information includes a first ciphertext mark and a second ciphertext mark;

[0216] The first determining module is further used for:

[0217] Determine the number of first ciphertext marks corresponding to the plaintext feature cross-over result based on the first ciphertext mark;

[0218] The number of second ciphertext marks corresponding to the plaintext feature intersection result is determined based on the second ciphertext marks.

[0219] In some embodiments, the first generating module 91 is further configured to:

[0220] Generate public and private keys for additive homomorphic encryption;

[0221] Alternatively, generate public and private keys for multiplicative homomorphic encryption.

[0222] Based on the foregoing embodiments, the present application further provides a feature crossover device, which is applied to a first participant performing feature crossover, and the first participant is used to perform joint training on a model, and the device at least includes:

[0223] A fourth acquisition module, used to acquire at least one first feature and a public key for feature cross-talk;

[0224] An encoding module, used to encode the at least one first feature to obtain a first encoding value corresponding to the at least one first feature;

[0225] A second encryption module is used to perform homomorphic encryption on a first encoding value corresponding to the at least one first feature based on the public key to obtain at least one first ciphertext feature;

[0226] The fourth sending module is used to send the at least one first ciphertext feature to a second participant who performs feature cross-linking, so that the second participant performs feature cross-linking based on the first ciphertext feature.

[0227] In some embodiments, the encoding module may also be used to:

[0228] When there is a target first feature that has not been encoded in the at least one first feature, obtaining the number of times it has been encoded;

[0229] Based on the number of encoded times, the target first feature is encoded to obtain a first encoding value of the target first feature.

[0230] Based on the foregoing embodiments, the present application further provides a feature crossover device, which is applied to a second participant performing feature crossover, and the second participant is used to perform joint training on the model, and the device at least includes:

[0231] A second acquisition module is used to acquire at least one second feature for feature crossover, at least one first ciphertext feature, and a public key; the at least one first ciphertext feature is obtained by a first participant in feature crossover based on at least one first feature and the public key;

[0232] A first encryption module, configured to perform homomorphic encryption on the at least one second feature based on the public key to obtain at least one second ciphertext feature;

[0233] A feature crossover module, configured to perform feature crossover based on the at least one first ciphertext feature and the at least one second ciphertext feature to obtain at least one ciphertext feature crossover result;

[0234] The second sending module is used to send the at least one ciphertext feature cross-cutting result to a trusted participant who performs feature cross-cutting, so that the trusted participant determines the plaintext feature cross-cutting result based on the ciphertext feature cross-cutting result.

[0235] In some embodiments, the first encryption module is further used to:

[0236] Encoding the at least one second feature to obtain a second encoding value corresponding to the at least one second feature;

[0237] Based on the public key, a second encoded value corresponding to the at least one second feature is homomorphically encrypted to obtain at least one second ciphertext feature.

[0238] In some embodiments, the first encryption module is further used to:

[0239] When there is a target second feature that has not been encoded in the at least one second feature, obtaining the number of times that encoding has been performed;

[0240] Based on the number of encoded times, the target second feature is encoded to obtain a second encoded value of the target second feature.

[0241] Based on the foregoing embodiments, the present application further provides a feature crossover device, which is applied to an active participant in feature crossover, and the active participant is used to jointly train the model, and the device at least includes:

[0242] A second determination module is used to determine a sample for feature cross-linking according to the first participant and the second participant for feature cross-linking;

[0243] A fifth acquisition module, used to acquire the label information of the sample;

[0244] A third encryption module is used to homomorphically encrypt the tag information of the sample to obtain ciphertext tag information;

[0245] A fifth sending module, used to send the ciphertext marking information to a trusted participant who performs feature cross-checking, so that the trusted participant determines the number of ciphertext marking information corresponding to the plaintext feature cross-checking result based on the ciphertext marking information;

[0246] The third determination module is used to determine the information value of the plaintext feature cross-result based on the number of ciphertext mark information sent by the trusted party.

[0247] In some embodiments, the tag information includes a first tag and a second tag, and the apparatus further includes:

[0248] A second generation module, used to generate a second public key and a second private key for homomorphic encryption;

[0249] Accordingly, the third encryption module may also be used for:

[0250] Encrypting the first mark and the second mark of the sample based on the second public key to obtain a first ciphertext mark and a second ciphertext mark;

[0251] The first ciphertext mark and the second ciphertext mark are determined as ciphertext mark information.

[0252] In some embodiments, the third determining module is further used to:

[0253] Receiving a first ciphertext mark number and a second ciphertext mark number sent by the trusted party;

[0254] Decrypt the first number of ciphertext marks and the second number of ciphertext marks based on the second private key to obtain a first number of plaintext marks and a second number of plaintext marks;

[0255] Based on the first number of plaintext tags and the second number of plaintext tags, an information value of the plaintext feature intersection result is determined.

[0256] It should be noted here that the description of the above feature intersection device embodiment is similar to the above method description and has the same beneficial effects as the method embodiment. For technical details not disclosed in the feature intersection device embodiment of the present application, those skilled in the art should refer to the description of the method embodiment of the present application for understanding.

[0257] The present application embodiment provides a storage medium storing executable instructions, wherein the executable instructions are stored. When the executable instructions are executed by a processor, the processor will execute the method provided by the present application embodiment, for example, Figures 3 to 8 The method shown.

[0258] In some embodiments, the storage medium may be a memory such as FRAM, ROM, PROM, EPROM, EE PROM, flash memory, magnetic surface memory, optical disk, or CD-ROM; or may be various devices including one or any combination of the above memories.

[0259] In some embodiments, executable instructions may be in the form of a program, software, software module, script or code, written in any form of programming language (including compiled or interpreted languages, or declarative or procedural languages), and may be deployed in any form, including as a stand-alone program or as a module, component, subroutine or other unit suitable for use in a computing environment.

[0260] As an example, executable instructions may, but need not, correspond to a file in a file system, may be stored as part of a file storing other programs or data, for example, in one or more scripts in a HyperText Markup Language (HTML) document, in a single file dedicated to the program in question, or in multiple coordinated files (for example, files storing one or more modules, subroutines, or code portions).

[0261] By way of example, executable instructions may be deployed to be executed on one computing device, or on multiple computing devices located at one site, or on multiple computing devices distributed across multiple sites and interconnected by a communication network.

[0262] The above is only an embodiment of the present application and is not intended to limit the protection scope of the present application. Any modifications, equivalent substitutions and improvements made within the spirit and scope of the present application are included in the protection scope of the present application.

Claims

1. A feature crossover method, characterized in that: The method is applied to a trusted participant who performs feature crossover, and the trusted participant is used to jointly train the model, and the method includes: Generate public and private keys for homomorphic encryption; Distributing the public key to a first participant and a second participant performing feature crosstalk; Obtaining at least one ciphertext feature crossover result from the second participant, the ciphertext feature crossover result being obtained by the second participant performing feature crossover based on the first ciphertext feature and the second ciphertext feature, wherein the first participant encodes at least one first feature for feature crossover to obtain a first encoding value corresponding to at least one first feature, and performs homomorphic encryption on the first encoding value corresponding to the at least one first feature based on the public key to obtain at least one first ciphertext feature; the second participant encodes at least one second feature for feature crossover to obtain a second encoding value corresponding to at least one second feature, and performs homomorphic encryption on the second encoding value corresponding to the at least one second feature based on the public key to obtain at least one second ciphertext feature; The at least one ciphertext feature cross-result is homomorphically decrypted based on the private key to obtain at least one plaintext feature cross-result.

2. The method according to claim 1, characterized in that The method further comprises: Binning the at least one plaintext feature cross result to obtain at least one binning result; Obtain the ciphertext marking information of the plaintext feature cross-cutting results in each binning result from the active participant who performs feature cross-cutting and has marking information; Determine the number of ciphertext marking information corresponding to the plaintext feature cross-over result based on the ciphertext marking information; The number of the ciphertext marking information is sent to the active participant, so that the active participant determines the information value of the plaintext feature cross-result based on the number of the ciphertext marking information.

3. The method according to claim 2, characterized in that The marking information includes a first mark and a second mark, and the ciphertext marking information includes a first ciphertext mark and a second ciphertext mark; Correspondingly, the determining, based on the ciphertext marking information, the number of ciphertext marking information corresponding to the plaintext feature cross-over result includes: Determine the number of first ciphertext marks corresponding to the plaintext feature cross-over result based on the first ciphertext mark; The number of second ciphertext marks corresponding to the plaintext feature intersection result is determined based on the second ciphertext marks.

4. The method according to claim 1, characterized in that The generating of a public key and a private key for homomorphic encryption includes: Generate public and private keys for additive homomorphic encryption; Alternatively, generate public and private keys for multiplicative homomorphic encryption.

5. A feature crossover method, characterized in that: The method is applied to a second participant who performs feature crossover, and the second participant is used to perform joint training on the model, and the method includes: At least one second feature for feature crossover, at least one first ciphertext feature and a public key are obtained; the at least one first ciphertext feature is encoded by a first participant in feature crossover on at least one first feature to obtain a first coded value corresponding to the at least one first feature, and the first coded value corresponding to the at least one first feature is homomorphically encrypted based on the public key; Encode at least one second feature to obtain a second encoded value corresponding to the at least one second feature, and homomorphically encrypt the second encoded value corresponding to the at least one second feature based on the public key to obtain at least one second ciphertext feature; Perform feature intersection based on the at least one first ciphertext feature and the at least one second ciphertext feature to obtain at least one ciphertext feature intersection result; The at least one ciphertext feature crossover result is sent to a trusted party that performs feature crossover, so that the trusted party determines a plaintext feature crossover result based on the ciphertext feature crossover result.

6. The method according to claim 5, characterized in that The encoding of the at least one second feature to obtain a second encoding value corresponding to the at least one second feature includes: When there is a target second feature that has not been encoded in the at least one second feature, obtaining the number of times that encoding has been performed; Based on the number of encoded times, the target second feature is encoded to obtain a second encoded value of the target second feature.

7. A feature crossover device, characterized in that: The device is applied to a trusted participant who performs feature crossover, and the trusted participant is used to perform joint training on a model, and the device includes: A first generation module, used to generate a public key and a private key for homomorphic encryption; A first sending module, used to distribute the public key to a first participant and a second participant performing feature cross-talk; A first acquisition module is used to obtain at least one ciphertext feature crossover result from the second participant, where the ciphertext feature crossover result is obtained by the second participant performing feature crossover based on the first ciphertext feature and the second ciphertext feature, wherein the first participant encodes at least one first feature for feature crossover to obtain a first coded value corresponding to at least one first feature, performs homomorphic encryption on the first coded value corresponding to the at least one first feature based on the public key to obtain at least one first ciphertext feature, and the second participant encodes at least one second feature for feature crossover to obtain a second coded value corresponding to at least one second feature, performs homomorphic encryption on the second coded value corresponding to the at least one second feature based on the public key to obtain at least one second ciphertext feature; A decryption module is used to perform homomorphic decryption on the at least one ciphertext feature cross-result based on the private key to obtain at least one plaintext feature cross-result.

8. A feature crossover device, characterized in that: The device is applied to a second participant who performs feature crossover, and the second participant is used to perform joint training on the model, and the device includes: A second acquisition module is used to acquire at least one second feature for feature crossover, at least one first ciphertext feature and a public key; the at least one first ciphertext feature is obtained by encoding the at least one first feature for feature crossover by the first participant in the feature crossover to obtain a first coded value corresponding to the at least one first feature, and the first coded value corresponding to the at least one first feature is homomorphically encrypted based on the public key; A first encryption module is used to encode at least one second feature to obtain a second encoded value corresponding to the at least one second feature, and homomorphically encrypt the second encoded value corresponding to the at least one second feature based on the public key to obtain at least one second ciphertext feature; A feature crossover module, configured to perform feature crossover based on the at least one first ciphertext feature and the at least one second ciphertext feature to obtain at least one ciphertext feature crossover result; The second sending module is used to send the at least one ciphertext feature cross-cutting result to a trusted participant who performs feature cross-cutting, so that the trusted participant determines the plaintext feature cross-cutting result based on the ciphertext feature cross-cutting result.

9. A feature crossover device, characterized in that: The device comprises: A memory for storing executable instructions; A processor, configured to implement the method of any one of claims 1 to 4 or claims 5 to 6 when executing the executable instructions stored in the memory.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores executable instructions for causing a processor to execute the instructions to implement the method of any one of claims 1 to 4 or claims 5 to 6.

11. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the method according to any one of claims 1 to 4 or claims 5 to 6 is implemented.

Citation Information

Patent Citations

  • Modeling and predicting method and device based on cross characteristics, equipment and storage medium

    CN111368314A