WO2021027254A1 - 模型参数确定方法、装置和电子设备 - Google Patents

模型参数确定方法、装置和电子设备 Download PDF

Info

Publication number
WO2021027254A1
WO2021027254A1 PCT/CN2020/071432 CN2020071432W WO2021027254A1 WO 2021027254 A1 WO2021027254 A1 WO 2021027254A1 CN 2020071432 W CN2020071432 W CN 2020071432W WO 2021027254 A1 WO2021027254 A1 WO 2021027254A1
Authority
WO
WIPO (PCT)
Prior art keywords
share
matrix
product
partner
secretly
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/CN2020/071432
Other languages
English (en)
French (fr)
Inventor
周亚顺
李漓春
殷山
王华忠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced New Technologies Co Ltd
Original Assignee
Advanced New Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Advanced New Technologies Co Ltd filed Critical Advanced New Technologies Co Ltd
Priority to US16/792,031 priority Critical patent/US10936960B1/en
Publication of WO2021027254A1 publication Critical patent/WO2021027254A1/zh
Priority to US17/188,837 priority patent/US11113613B2/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Definitions

  • the embodiments of this specification relate to the field of computer technology, and in particular to a method, device and electronic equipment for determining model parameters.
  • the model parameter optimization method can be used to optimize and adjust the model parameters of the data processing model multiple times. Since the data used to train the data processing model is scattered among the parties involved in the cooperative modeling, how to collaboratively determine the model parameters of the data processing model while protecting data privacy is a technical problem that needs to be solved urgently.
  • the purpose of the embodiments of this specification is to provide a method, device and electronic equipment for determining model parameters, so that the model parameters of the data processing model can be determined by multiple parties under the premise of protecting data privacy.
  • a method for determining model parameters is provided, which is applied to a first data party, including: secretly sharing the Hessian matrix with a partner according to the share of feature data and incentive function values , Obtain the share of the Hessian matrix; secretly share the first inverse matrix with the partner according to the share of the Hessian matrix to obtain the share of the first inverse matrix, the first inverse matrix being the inverse of the Hessian matrix; according to the original model parameters The share of, the share of the first inverse matrix and the share of the gradient of the loss function secretly share the new model parameters with the partner to obtain the share of the new model parameters.
  • a model parameter determination device which is applied to a first data party, and includes: a first secret sharing unit for obtaining a share of values based on characteristic data and an incentive function Share the Hessian matrix secretly with the partner to obtain the share of the Hessian matrix; the second secret sharing unit is used to secretly share the first inverse matrix with the partner according to the share of the Hessian matrix to obtain the share of the first inverse matrix.
  • the first inverse matrix is the inverse matrix of the Hessian matrix;
  • the third secret sharing unit is used to secretly share the new model parameters with the partner according to the share of the original model parameters, the share of the first inverse matrix, and the share of the loss function gradient. The share of new model parameters.
  • an electronic device including: a memory, configured to store computer instructions; a processor, configured to execute the computer instructions to implement the computer instructions described in the first aspect Method steps.
  • a method for determining model parameters is provided, which is applied to a second data party, including: secretly sharing the Hessian matrix with a partner according to the value of the incentive function to obtain the sea Share of the Hessian matrix; secretly share the first inverse matrix with the partner according to the share of the Hessian matrix to obtain the share of the first inverse matrix, which is the inverse of the Hessian matrix; according to the shares of the original model parameters, The share of the first inverse matrix and the share of the gradient of the loss function secretly share the new model parameters with the partner to obtain the share of the new model parameters.
  • a model parameter determination device applied to a second data party, including: a first secret sharing unit for sharing a value with a partner according to an incentive function Secretly share the Hessian matrix to obtain the share of the Hessian matrix; the second secret sharing unit is used to secretly share the first inverse matrix with the partner according to the share of the Hessian matrix to obtain the share of the first inverse matrix, the first inverse The matrix is the inverse matrix of the Hessian matrix; the third secret sharing unit is used to secretly share the new model parameters with the partner according to the share of the original model parameters, the share of the first inverse matrix and the share of the loss function gradient to obtain a new model The share of parameters.
  • an electronic device including: a memory, configured to store computer instructions; and a processor, configured to execute the computer instructions to implement the computer instructions described in the fourth aspect Method steps.
  • the first data party and the second data party can use the secret sharing algorithm to collaboratively determine the data processing model without leaking the data they own.
  • Model parameters since the Newton method is used, the method for determining model parameters of this embodiment has a faster convergence rate, which can reduce the number of optimization adjustments of model parameters and improve the training efficiency of the data processing model.
  • Figure 1 is a schematic diagram of a model parameter determination system according to an embodiment of the specification
  • FIG. 2 is a flowchart of a method for determining model parameters according to an embodiment of the specification
  • FIG. 3 is a flowchart of a method for determining model parameters according to an embodiment of the specification
  • FIG. 4 is a flowchart of a method for determining model parameters according to an embodiment of the specification
  • Fig. 5 is a schematic diagram of a model parameter determining device according to an embodiment of the specification.
  • Fig. 6 is a schematic diagram of a model parameter determining device according to an embodiment of the specification.
  • Fig. 7 is a functional structure diagram of an electronic device according to an embodiment of the specification.
  • Model parameter optimization methods may include gradient descent method, Newton method, and so on.
  • the Newton's method may include primitive Newton's method and various deformation methods based on the primitive Newton's method (such as damping Newton's method, regularized Newton's method, etc.; regularized Newton's method refers to Newton's method with regularization terms; regularization can be Reduce the complexity and instability of the model, thereby reducing the risk of overfitting).
  • the Newton method has a faster convergence rate.
  • Secret Sharing is an algorithm to protect data privacy. Multiple data parties can use secret sharing algorithms to perform collaborative calculations to obtain secret information without leaking their own data. Each data party can obtain a share of the secret information. A single data party cannot recover the secret information. Only multiple data parties can work together to recover the secret information.
  • the data party P 1 owns the data x 1
  • the data party P 2 owns the data x 2 .
  • the data party P 1 can obtain the share y 1 of the secret information y after the calculation
  • the data party P 2 can obtain the share y 2 of the secret information y after the calculation.
  • the model parameter optimization method can be used to optimize and adjust the model parameters of the data processing model.
  • the model parameter optimization method can be implemented by using a secret sharing algorithm.
  • Loss function can be used to measure the degree of inconsistency between the predicted value of the data processing model and the true value. The smaller the value of the loss function, the better the robustness of the data processing model.
  • the loss function includes but is not limited to a logarithmic loss function (Logarithmic Loss Function), a square loss function (Square Loss), and the like.
  • the Hessian Matrix also known as the Hessian matrix, Hessian matrix or Hessian matrix, etc., is a square matrix formed by the second-order partial derivative of the loss function, used to express the local curvature of the loss function.
  • Activation function also known as activation function, can be used to build data processing models.
  • the excitation function defines the output at a given input. Through the excitation function, nonlinear factors can be added to the data processing model to improve the expressive ability of the data processing model.
  • the activation function may include, for example, Sigmoid function, Tanh function, ReLU function, and so on.
  • This specification provides an embodiment of a model parameter determination system.
  • the model parameter determination system may include a first data party, a second data party, and a trusted third party (TTP, Trusted Third Party).
  • TTP Trusted Third Party
  • the third party may be one server; or, it may also be a server cluster including multiple servers.
  • the third party may be used to provide random numbers to the first data party and the second data party.
  • the third party may generate a random number matrix, and each random number in the random number matrix may be split into two shares, one of the shares may be used as the first share, and the other share may be used as the second share.
  • Share The third party may use the matrix formed by the first share of each random number in the random number matrix as the first share of the random number matrix, and the matrix formed by the second share of each random number in the random number matrix As the second share of the random number matrix; the first share of the random number matrix can be sent to the first data party, and the second share of the random number matrix can be sent to the second data party. Wherein, the sum of the first share of the random number matrix and the second share of the random number matrix is equal to the random number matrix.
  • the first data party and the second data party are respectively two parties of cooperative security modeling.
  • the first data party may be a data party that does not have a tag
  • the second data party may be a data party that has a tag.
  • the first data party may have complete feature data
  • the second data party may have a label of the feature data.
  • the first data party may own a part of data items of the characteristic data
  • the second data party may have another part of data items and tags of the characteristic data.
  • the characteristic data may include the user's savings amount and loan amount.
  • the first data party may have the user's savings amount
  • the second data party may have the user's loan amount and the tag of the characteristic data.
  • the tag can be used to distinguish different types of characteristic data, and the specific value can be taken from 0 and 1, for example.
  • the data party here can be an electronic device.
  • the electronic equipment may include a personal computer, a server, a handheld device, a portable device, a tablet device, a multi-processor device; or, it may also include a cluster formed by any of the above devices or devices.
  • the feature data and its corresponding labels together constitute sample data, and the sample data can be used to train the data processing model.
  • the first data party and the second data party can each obtain a share of the original model parameters.
  • the share obtained by the first data party may be used as the first share of the original model parameter
  • the share obtained by the second data party may be used as the second share of the original model parameter.
  • the sum of the first share of the original model parameters and the second share of the original model parameters is equal to the original model parameters.
  • the first data party may receive the first share of the random number matrix.
  • the second data party may receive a second share of the random number matrix.
  • the first data party may be based on the first share of the original model parameters, the characteristic data and the first share of the random number matrix, and the second data party may be based on the second share of the original model parameters, the label and the first share of the random number matrix.
  • Second share adopt the method of secret sharing to collaboratively determine new model parameters.
  • the first data party and the second data party may each obtain a share of the new model parameter.
  • For the specific process please refer to the following model parameter determination method embodiment.
  • This specification also provides an embodiment of a method for determining model parameters.
  • This embodiment can use Newton's method to determine model parameters. Please refer to Figure 2. This embodiment may include the following steps.
  • Step S11 The first data party takes the first share of the value based on the characteristic data and the incentive function, and the second data party secretly shares the Hessian matrix based on the second share of the value taken by the incentive function.
  • the first data party gets the first share of the Hessian matrix
  • the second data party gets the second share of the Hessian matrix.
  • Step S13 The first data party secretly shares the first inverse matrix according to the first share of the Hessian matrix, and the second data party secretly shares the first inverse matrix according to the second share of the Hessian matrix.
  • the first data party obtains the first share of the first inverse matrix
  • the second data party obtains the second share of the first inverse matrix.
  • the first inverse matrix is the inverse matrix of the Hessian matrix.
  • Step S15 The first data party is based on the first share of the original model parameters, the first share of the first inverse matrix, and the first share of the loss function gradient, and the second data party is based on the second share and the first inverse matrix of the original model parameters.
  • the second share of and the second share of the gradient of the loss function secretly share the new model parameters.
  • the first data party gets the first share of the new model parameter, and the second data party gets the second share of the new model parameter.
  • the first product, the second product and the third product may be a product between the original model parameters and the feature data.
  • the second product may be a product between a random number matrix and a Hessian matrix.
  • the third product may be the product between the inverse matrix of the Hessian matrix and the gradient of the loss function.
  • the first product may be expressed as XW; where W represents original model parameters, specifically a vector composed of original model parameters; X represents feature data, specifically a matrix composed of feature data.
  • the second product may be expressed as HR, where H represents a Hessian matrix, and R represents a random number matrix.
  • the third product may be expressed as H -1 dW, where H -1 represents the inverse matrix of the Hessian matrix, dW represents the gradient of the loss function, and dW is a vector.
  • the first inverse matrix and the second inverse matrix Since the Hessian matrix is a square matrix, the Hessian matrix can be inverted, and the inverse matrix of the Hessian matrix can be used as the first inverse matrix.
  • the second product may be a square matrix, and thus the second product may be inverted, and the inverse matrix of the second product may be used as the second inverse matrix.
  • the first inverse matrix may be expressed as H -1
  • the second inverse matrix may be expressed as (HR) -1 .
  • the first data party may according to the characteristic data and the first share of the original model parameters possessed, and the second data party may according to the second share of the original model parameters possessed, Secretly share the first product.
  • the first data party and the second data party may each obtain a share of the first product.
  • the share obtained by the first data party may be used as the first share of the first product
  • the share obtained by the second data party may be used as the second share of the first product.
  • the sum of the first share of the first product and the second share of the first product is equal to the first product.
  • the first share of the original model parameters can be expressed as ⁇ W> 0
  • the first data party may secretly share the first product XW according to X and ⁇ W> 0
  • the second data party may secretly share the first product XW according to ⁇ W> 1 .
  • the first data party can obtain the first share of the first product ⁇ XW> 0
  • the second data party can obtain the second share of the first product ⁇ XW> 1 .
  • ⁇ XW> 0 + ⁇ XW> 1 XW.
  • the first data party may also secretly share the value of the polynomial based on the first share of the first product
  • the second data party may also secretly share the value of the polynomial based on the second share of the first product.
  • the first data party and the second data party may respectively obtain a share of the value of the polynomial.
  • the polynomial can be used to fit the activation function of the data processing model. In this way, the share obtained by the first data party may be used as the first share of the value of the incentive function, and the share obtained by the second data party may be used as the second share of the value of the incentive function.
  • the sum of the first share of the value of the excitation function and the second share of the value of the excitation function is equal to the value of the excitation function.
  • this specification is not limited to the above-mentioned method of using polynomial fitting to realize the secret sharing of the value of the excitation function, and other methods may also be used to realize the secret sharing of the value of the excitation function.
  • the excitation function may be a Sigmoid function.
  • the first share of the value of the excitation function may be expressed as ⁇ a> 0
  • the second share of the value of the excitation function may be expressed as ⁇ a> 1 .
  • ⁇ a> 0 + ⁇ a> 1 a.
  • ⁇ a> 0 , ⁇ a> 1, and a are vectors respectively.
  • the first data party may also secretly share the gradient of the loss function according to the first share of the value of the feature data and the incentive function
  • the second data party may also secretly share the gradient of the loss function according to the label and the second share of the value of the incentive function.
  • the first data party and the second data party may obtain a share of the gradient of the loss function respectively.
  • the share obtained by the first data party may be used as the first share of the loss function gradient
  • the share obtained by the second data party may be used as the second share of the loss function gradient.
  • the sum of the first share of the gradient of the loss function and the second share of the gradient of the loss function is equal to the gradient of the loss function.
  • the first data party can secretly share the gradient dW (specifically a vector) of the loss function based on X and ⁇ a> 0
  • the second data party can secretly share the gradient dW of the loss function based on the label Y and ⁇ a> 1
  • the first data party can obtain the first share of the loss function gradient ⁇ dW> 0
  • the second data party can obtain the second share of the loss function gradient ⁇ dW> 1 .
  • the party may be the first data X
  • the second party data may ⁇ a> 1, secret sharing X T ⁇ a> 1.
  • the first data party can obtain ⁇ [X T ⁇ a> 1 ]> 0
  • the second data party can obtain ⁇ [X T ⁇ a> 1 ]> 1 .
  • ⁇ [X T ⁇ a> 1 ]> 0 + ⁇ [X T ⁇ a> 1 ]> 1 X T ⁇ a> 1 .
  • the first data party may also secretly share X T Y according to X
  • the second data party may also secretly share X T Y according to tag Y (specifically, a vector formed by tags).
  • the first data party can obtain ⁇ X T Y> 0
  • the second data party can obtain ⁇ X T Y> 1 .
  • ⁇ X T Y> 0 + ⁇ X T Y> 1 X T Y.
  • the first data party can calculate X T ⁇ a> 0 ; can calculate X T ⁇ a> 0 + ⁇ [X T ⁇ a> 1 ]> 0 - ⁇ X T Y> 0 as the first of the loss function gradient dW Share ⁇ dW> 0 .
  • the second data party may calculate ⁇ [X T ⁇ a> 1 ]> 1- ⁇ X T Y> 1 as the second share of the loss function gradient dW ⁇ dW> 1 .
  • the first data party may obtain the first share of the value based on the characteristic data and the incentive function, and the second data party may secretly share the second share of the value based on the incentive function.
  • Hessian matrix The first data party and the second data party may obtain a share of the Hessian matrix respectively.
  • the share obtained by the first data party may be used as the first share of the Hessian matrix
  • the share obtained by the second data party may be used as the second share of the Hessian matrix.
  • the sum of the first share of the Hessian matrix and the second share of the Hessian matrix is equal to the Hessian matrix.
  • the first data party may secretly share the diagonal matrix according to the first share of the value of the incentive function
  • the second data party may secretly share the diagonal matrix according to the second share of the value of the incentive function.
  • the first data party and the second data party may obtain a share of the diagonal matrix respectively.
  • the share obtained by the first data party may be used as the first share of the diagonal matrix
  • the share obtained by the second data party may be used as the second share of the diagonal matrix.
  • the sum of the first share of the diagonal matrix and the second share of the diagonal matrix is equal to the diagonal matrix.
  • the first data party can secretly share the Hessian matrix according to the feature data and the first share of the diagonal matrix
  • the second data party can secretly share the Hessian matrix according to the second share of the diagonal matrix.
  • the first data party can obtain the first share of the Hessian matrix
  • the second data party can obtain the second share of the Hessian matrix.
  • the first data party can secretly share the diagonal matrix RNN according to ⁇ a> 0 and the second data party can secretly share the diagonal matrix RNN according to ⁇ a> 1 .
  • the first data party can obtain the first share RNN 0 of the diagonal matrix, and the second data party can obtain the second share RNN 1 of the diagonal matrix.
  • the first party data may ⁇ a> 0, the second party data may ⁇ a> 1, secret sharing ⁇ a> 0 ⁇ ⁇ a> 1.
  • the first data party can obtain ⁇ [ ⁇ a> 0 ⁇ a> 1 ]> 0
  • the second data party can obtain ⁇ [ ⁇ a> 0 ⁇ a> 1 ]> 1 .
  • ⁇ [ ⁇ a> 0 ⁇ a> 1 ]> 0 + ⁇ [ ⁇ a> 0 ⁇ a> 1 ]> 1 ⁇ a> 0 ⁇ a> 1 .
  • ⁇ r> 0 ⁇ r> 1
  • the first party data may be ⁇ r> as data element 0 of the data element on the main diagonal RNN 0, thus achieved under ⁇ r> 0 0 RNN generated; may ⁇ r> 1 data element as a data element on the main diagonal RNN 1, thus realized ⁇ r> 1 generated according RNN 1.
  • the first data party can secretly share the Hessian matrix H according to X and RNN 0
  • the second data party can secretly share the Hessian matrix H according to RNN 1 .
  • the first data party can obtain the first share ⁇ H> 0 of the Hessian matrix
  • the second data party can obtain the second share ⁇ H> 1 of the Hessen matrix.
  • the party may be the first data X
  • the second party data may RNN 1, secret sharing X T RNN 1.
  • the first data party can obtain ⁇ X T RNN 1 > 0
  • the second data party can obtain ⁇ X T RNN 1 > 1 .
  • ⁇ X T RNN 1 > 0 + ⁇ X T RNN 1 > 1 X T RNN 1 .
  • the first party data may also according to X
  • the second party may also be in accordance with data ⁇ X T RNN 1> 1, secret sharing ⁇ X T RNN 1> 1 X.
  • the first data party can obtain ⁇ [ ⁇ X T RNN 1 > 1 X]> 0
  • the second data party can obtain ⁇ [ ⁇ X T RNN 1 > 1 X]> 1 .
  • ⁇ [ ⁇ X T RNN 1 > 1 X]> 0 + ⁇ [ ⁇ X T RNN 1 > 1 X]> 1 ⁇ X T RNN 1 > 1 X.
  • the first data party can calculate X T RNN 0 X+ ⁇ X T RNN 1 > 0 X+ ⁇ [ ⁇ X T RNN 1 > 1 X]> 0 as the first share of the Hessian matrix H ⁇ H> 0 .
  • the second data party may use ⁇ [ ⁇ X T RNN 1 > 1 X]> 1 as the second share of the Hessian matrix H ⁇ H> 0 .
  • the third party may issue the first share of the random number matrix to the first data party; may issue the second share of the random number matrix to the second data party.
  • the sum of the first share of the random number matrix and the second share of the random number matrix is equal to the random number matrix.
  • the first data party may receive a first share of the random number matrix
  • the second data party may receive a second share of the random number matrix.
  • the first data party can be based on the first share of the random number matrix and the first share of the Hessian matrix
  • the second data party can be based on the second share of the random number matrix and the first share of the Hessian matrix.
  • the second share secretly share the second product.
  • the first data party and the second data party may each obtain a share of the second product.
  • the share obtained by the first data party may be used as the first share of the second product
  • the share obtained by the second data party may be used as the second share of the second product.
  • the sum of the first share of the second product and the second share of the second product is equal to the second product.
  • the second data party may perform inversion processing on the second product.
  • the first data party may send the first share of the second product to the second data party.
  • the second data party may receive the first share of the second product; may add the first share of the second product to the second share of the second product owned by itself to obtain the second product. Since the second product is a square matrix, the second data party can perform inverse processing on the second product to obtain the inverse matrix of the second product as the second inverse matrix;
  • the data party sends the second inverse matrix.
  • the first data party may receive the second inverse matrix.
  • the first data party may also perform inversion processing on the second product.
  • the second data party may send the second share of the second product to the first data party.
  • the first data party may receive the second share of the second product; may add the second share of the second product to the first share of the second product owned by itself to obtain the second product. Since the second product is a square matrix, the first data party can perform inverse processing on the second product to obtain the inverse matrix of the second product as the second inverse matrix; The data party sends the second inverse matrix.
  • the second data party may receive the second inverse matrix.
  • the first data party may multiply the first share of the random number matrix by the second inverse matrix to obtain the first share of the first inverse matrix.
  • the second data party may multiply the second share of the random number matrix by the second inverse matrix to obtain the second share of the first inverse matrix.
  • the sum of the first share of the first inverse matrix and the second share of the first inverse matrix is equal to the first inverse matrix.
  • the first share of the random number matrix can be expressed as ⁇ R> 0
  • the first data party may secretly share the second product HR according to ⁇ R> 0 and ⁇ H> 0
  • the second data party may secretly share the second product HR according to ⁇ R> 1 and ⁇ H> 1 .
  • the first data party can obtain the first share of the second product ⁇ HR> 0
  • the second data party can obtain the second product second share ⁇ HR> 1 .
  • the first party data may ⁇ H> 0, the second party data may ⁇ R> 1, secret sharing ⁇ H> 0 ⁇ R> 1 .
  • the first data party can obtain ⁇ [ ⁇ H> 0 ⁇ R> 1 ]> 0
  • the second data party can obtain ⁇ [ ⁇ H> 0 ⁇ R> 1 ]> 1 .
  • ⁇ [ ⁇ H> 0 ⁇ R> 1 ]> 0 + ⁇ [ ⁇ H> 0 ⁇ R> 1 ]> 1 ⁇ H> 0 ⁇ R> 1 .
  • the first data party may also secretly share ⁇ H> 1 ⁇ R> 0 according to ⁇ R> 0 and the second data party may also secretly share ⁇ H> 1 ⁇ R> 0 according to ⁇ H> 1 .
  • the first data party can obtain ⁇ [ ⁇ H> 1 ⁇ R> 0 ]> 0
  • the second data party can obtain ⁇ [ ⁇ H> 1 ⁇ R> 0 ]> 1 .
  • ⁇ [ ⁇ H> 1 ⁇ R> 0 ]> 0 + ⁇ [ ⁇ H> 1 ⁇ R> 0 ]> 1 ⁇ H> 1 ⁇ R> 0 .
  • the first data party can calculate ⁇ H> 0 ⁇ R> 0 + ⁇ [ ⁇ H> 0 ⁇ R> 1 ]> 0 + ⁇ [ ⁇ H> 1 ⁇ R> 0 ]> 0 as the second product of One share ⁇ HR> 0 .
  • the second data party can calculate ⁇ H> 1 ⁇ R> 1 + ⁇ [ ⁇ H> 0 ⁇ R> 1 ]> 1 + ⁇ [ ⁇ H> 1 ⁇ R> 0 ]> 1 as the second product of Second share ⁇ HR> 1 .
  • the second data party performs inversion processing on the second product HR.
  • the first data party may send the first share of the second product ⁇ HR> 0 to the second data party.
  • the second data party may receive the first share of the second product ⁇ HR> 0 ; may add the first share of the second product ⁇ HR> 0 to the second share of the second product ⁇ HR> 1 owned by itself to give the HR second product; inversion process may be performed on the second product HR, to obtain a second inverse matrix (HR) -1; may send a second inverse matrix (HR) -1 to the first party data.
  • the first data party may receive the second inverse matrix (HR) -1 .
  • the first data party may multiply the second inverse matrix (HR) -1 by the first share of the random number matrix ⁇ R> 0 to obtain the first share of the first inverse matrix H -1 ⁇ H -1 > 0 .
  • the second data party may multiply the second inverse matrix (HR) -1 by the second share of the random number matrix ⁇ R> 1 to obtain the first share of the first inverse matrix H -1 ⁇ H -1 > 1 .
  • the first data party may be based on the first share of the first inverse matrix and the first share of the loss function gradient
  • the second data party may be based on the first share of the first inverse matrix.
  • the second share and the second share of the gradient of the loss function secretly share the third product.
  • the first data party and the second data party may each obtain a share of the third product.
  • the share obtained by the first data party may be used as the first share of the third product
  • the share obtained by the second data party may be used as the second share of the third product.
  • the sum of the first share of the third product and the second share of the third product is equal to the third product.
  • the first data party may subtract the first share of the original model parameter from the first share of the third product to obtain the first share of the new model parameter.
  • the second data party may subtract the second share of the original model parameter from the second share of the third product to obtain the second share of the new model parameter.
  • the new model parameters can be used as the new original model parameters, and step S11, step S13, and step S15 can be repeated.
  • iterative optimization and adjustment of model parameters of the data processing model can be achieved.
  • the first data party can secretly share the third party according to ⁇ H -1 > 0 and ⁇ dW> 0
  • the second data party can secretly share the third party according to ⁇ H -1 > 1 and ⁇ dW> 1
  • the first data party can obtain the first share of the third product ⁇ H -1 ⁇ dW> 0
  • the second data party can obtain the second share of the third product ⁇ H -1 ⁇ dW> 1 .
  • the first party data may ⁇ H -1> 0, the second party data may ⁇ dW> 1, secret sharing ⁇ H -1> 0 ⁇ dW> 1.
  • the first data party can obtain ⁇ [ ⁇ H -1 > 0 ⁇ dW> 1 ]> 0
  • the second data party can obtain ⁇ [ ⁇ H -1 > 0 ⁇ dW> 1 ]> 1 .
  • ⁇ [ ⁇ H -1 > 0 ⁇ dW> 1 ]> 0 + ⁇ [ ⁇ H -1 > 0 ⁇ dW> 1 ]> 1 ⁇ H -1 > 0 ⁇ dW> 1 .
  • the first data party can also secretly share ⁇ H -1 > 1 ⁇ dW> 0 according to ⁇ dW> 0 and the second data party can also secretly share ⁇ H -1 > 1 ⁇ dW> 0 according to ⁇ H -1 > 1 .
  • the first data party can obtain ⁇ [ ⁇ H -1 > 1 ⁇ dW> 0 ]> 0
  • the second data party can obtain ⁇ [ ⁇ H -1 > 1 ⁇ dW> 0 ]> 1 .
  • ⁇ [ ⁇ H -1 > 1 ⁇ dW> 0 ]> 0 + ⁇ [ ⁇ H -1 > 1 ⁇ dW> 0 ]> 1 ⁇ H -1 > 1 ⁇ dW> 0 .
  • the first data party can calculate ⁇ H -1 > 0 ⁇ dW> 0 + ⁇ [ ⁇ H -1 > 0 ⁇ dW> 1 ]> 0 + ⁇ [ ⁇ H -1 > 1 ⁇ dW> 0 ]> 0
  • the first share as the third product ⁇ H -1 ⁇ dW> 0
  • the second data party can calculate ⁇ H -1 > 1 ⁇ dW> 1 + ⁇ [ ⁇ H -1 > 0 ⁇ dW> 1 ]> 1 + ⁇ [ ⁇ H -1 > 1 ⁇ dW> 0 ]> 1
  • the second share as the third product ⁇ H -1 ⁇ dW> 1 .
  • H -1 ⁇ dW ⁇ H -1 ⁇ dW> 0 + ⁇ H -1 ⁇ dW> 1
  • the first data party and the second data party can use the secret sharing algorithm to collaboratively determine the model parameters of the data processing model without leaking the data they own.
  • the method for determining model parameters of this embodiment has a faster convergence rate, which can reduce the number of optimization adjustments of model parameters and improve the training efficiency of the data processing model.
  • this specification also provides an embodiment of another method for determining model parameters.
  • the first data party is the execution subject, and the first data party may hold the share of the characteristic data and the original model parameters.
  • This embodiment may include the following steps.
  • Step S21 secretly share the Hessian matrix with the partner according to the share of the characteristic data and the value of the incentive function to obtain the share of the Hessian matrix.
  • the cooperating party may be understood as a data party that performs cooperative security modeling with the first data party, and specifically may be the previous second data party.
  • the first data party may secretly share the value of the polynomial with the partner according to the share of the first product, and obtain the share of the polynomial value as the share of the value of the incentive function.
  • the first product may be a product between the original model parameters and the feature data.
  • the first data party may secretly share the first product with the partner according to the share of the feature data and the original model parameters to obtain the share of the first product.
  • the polynomial is used to fit the excitation function.
  • the first data party may secretly share the gradient of the loss function with the partner according to the share of the characteristic data and the value of the incentive function to obtain the share of the gradient of the loss function.
  • the first data party may secretly share the diagonal matrix with the partner according to the value of the incentive function to obtain the share of the diagonal matrix; and may secretly share the diagonal matrix with the partner according to the feature data and the share of the diagonal matrix. Share the Hessian matrix and get the share of the Hessian matrix.
  • the relevant description in the previous step S11 please refer to the relevant description in the previous step S11, which will not be repeated here.
  • Step S23 secretly share the first inverse matrix with the partner according to the share of the Hessian matrix to obtain the share of the first inverse matrix, and the first inverse matrix is the inverse of the Hessian matrix.
  • the first data party may secretly share the second product with the partner according to the share of the random number matrix and the share of the Hessian matrix to obtain the share of the second product.
  • the second product may be a product between a random number matrix and a Hessian matrix.
  • the first data party may send the share of the second product to the partner; may receive the second inverse matrix fed back by the partner, the second inverse matrix being the inverse of the second product; the second inverse matrix may be Multiply the share of the random number matrix to get the share of the first inverse matrix.
  • the specific process please refer to the related description in the previous step S13, which will not be repeated here.
  • the first data party may secretly share the second product with the partner according to the share of the random number matrix and the share of the Hessian matrix to obtain the first share of the second product.
  • the second product may be a product between a random number matrix and a Hessian matrix.
  • the first data party may receive the second share of the second product sent by the partner; may determine the second inverse matrix according to the first share of the second product and the second share of the second product, the second inverse matrix Is the inverse matrix of the second product; the second inverse matrix can be multiplied by the share of the random number matrix to obtain the share of the first inverse matrix.
  • the specific process please refer to the related description in the previous step S13, which will not be repeated here.
  • Step S25 According to the share of the original model parameter, the share of the first inverse matrix, and the share of the loss function gradient, secretly share the new model parameter with the partner to obtain the share of the new model parameter.
  • the first data party may secretly share the third product with the partner according to the share of the first inverse matrix and the share of the loss function gradient to obtain the share of the third product.
  • the third product may be a product between the first inverse matrix and the gradient of the loss function.
  • the first data party may subtract the share of the original model parameter from the share of the third product to obtain the share of the new model parameter.
  • the first data party can use the secret sharing algorithm to determine the model parameters of the data processing model in collaboration with the partner without leaking the data it owns, and obtain the share of the new model parameters.
  • this specification also provides an embodiment of another method for determining model parameters.
  • the second data party is the execution subject, and the second data party may hold the share of the tag and the original model parameters.
  • This embodiment may include the following steps.
  • Step S31 secretly share the Hessian matrix with the partner according to the value of the incentive function to obtain the Hessian matrix.
  • the cooperating party may be understood as a data party that performs cooperative security modeling with the second data party, and specifically may be the previous first data party.
  • the second data party may secretly share the value of the polynomial with the partner according to the share of the first product, and obtain the share of the polynomial value as the share of the value of the incentive function.
  • the first product may be a product between the original model parameters and the feature data.
  • the second data party may secretly share the first product with the partner according to the share of the original model parameters to obtain the share of the first product.
  • the polynomial is used to fit the excitation function.
  • the second data party may secretly share the gradient of the loss function with the partner according to the share of the label and the value of the incentive function, to obtain the share of the gradient of the loss function.
  • the second data party may secretly share the diagonal matrix with the partner according to the value of the incentive function to obtain the share of the diagonal matrix; and may secretly share the Hesen with the partner according to the share of the diagonal matrix.
  • Matrix get the share of Hessian matrix.
  • Step S33 secretly share the first inverse matrix with the partner according to the share of the Hessian matrix to obtain the share of the first inverse matrix, where the first inverse matrix is the inverse of the Hessian matrix.
  • the second data party may secretly share the second product with the partner according to the share of the random number matrix and the share of the Hessian matrix to obtain the share of the second product.
  • the second product may be a product between a random number matrix and a Hessian matrix.
  • the second data party may send the share of the second product to the partner; may receive the second inverse matrix fed back by the partner, the second inverse matrix being the inverse of the second product; the second inverse matrix may be Multiply the share of the random number matrix to get the share of the first inverse matrix.
  • the specific process please refer to the related description in the previous step S13, which will not be repeated here.
  • the second data party may secretly share the second product with the partner according to the share of the random number matrix and the share of the Hessian matrix to obtain the first share of the second product.
  • the second product may be a product between a random number matrix and a Hessian matrix.
  • the second data party may receive the second share of the second product sent by the partner; may determine the second inverse matrix according to the first share of the second product and the second share of the second product, the second inverse matrix Is the inverse matrix of the second product; the second inverse matrix can be multiplied by the share of the random number matrix to obtain the share of the first inverse matrix.
  • the specific process please refer to the related description in the previous step S13, which will not be repeated here.
  • Step S35 According to the share of the original model parameters, the share of the first inverse matrix, and the share of the loss function gradient, secretly share the new model parameter with the partner to obtain the share of the new model parameter.
  • the second data party may secretly share the third product with the partner according to the share of the first inverse matrix and the share of the loss function gradient to obtain the share of the third product.
  • the third product may be a product between the first inverse matrix and the gradient of the loss function.
  • the second data party may subtract the share of the original model parameter from the share of the third product to obtain the share of the new model parameter.
  • the second data party can use the secret sharing algorithm to cooperate with the partner to determine the model parameters of the data processing model and obtain the share of the new model parameters without leaking the data it owns.
  • this specification also provides an embodiment of a model parameter determination device. Please refer to Figure 5.
  • This embodiment can be applied to the first data party and can include the following units.
  • the first secret sharing unit 41 is used to secretly share the Hessian matrix with the partner according to the share of the characteristic data and the incentive function to obtain the share of the Hessian matrix;
  • the second secret sharing unit 43 is configured to secretly share the first inverse matrix with the partner according to the share of the Hessian matrix to obtain the share of the first inverse matrix, and the first inverse matrix is the inverse of the Hessian matrix;
  • the third secret sharing unit 45 is used to secretly share new model parameters with the partner according to the shares of the original model parameters, the shares of the first inverse matrix, and the shares of the loss function gradient to obtain the shares of the new model parameters.
  • this specification also provides an embodiment of a model parameter determination device. Please refer to Figure 6.
  • This embodiment can be applied to the second data party and can include the following units.
  • the first secret sharing unit 51 is used to secretly share the Hessian matrix with the partner according to the value of the incentive function to obtain the Hessian matrix share;
  • the second secret sharing unit 53 is configured to secretly share the first inverse matrix with the partner according to the share of the Hessian matrix to obtain the share of the first inverse matrix, and the first inverse matrix is the inverse of the Hessian matrix;
  • the third secret sharing unit 55 is used to secretly share new model parameters with the partner according to the shares of the original model parameters, the shares of the first inverse matrix, and the shares of the loss function gradient to obtain the shares of the new model parameters.
  • FIG. 7 is a schematic diagram of the hardware structure of an electronic device in this embodiment.
  • the electronic device may include one or more (only one is shown in the figure) processor, memory, and transmission module.
  • processor any electronic device that can be included in the electronic device.
  • memory any type of memory
  • transmission module any type of transmission module.
  • the hardware structure shown in FIG. 7 is only for illustration, which does not limit the hardware structure of the above electronic device.
  • the electronic device may also include more or fewer component units than shown in FIG. 7; or, have a different configuration from that shown in FIG. 7.
  • the memory may include a high-speed random access memory; or, it may also include a non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory.
  • the storage may also include a remotely set network storage.
  • the remotely set network storage can be connected to the electronic device through a network such as the Internet, an intranet, a local area network, a mobile communication network, and the like.
  • the memory may be used to store program instructions or modules of application software, such as the program instructions or modules of the embodiment corresponding to FIG. 3 of this specification; and/or, the program instructions or modules of the embodiment corresponding to FIG. 4 of this specification.
  • the processor can be implemented in any suitable way.
  • the processor may take the form of, for example, a microprocessor or a processor and a computer-readable medium storing computer-readable program codes (for example, software or firmware) executable by the (micro)processor, logic gates, switches, special-purpose integrated Circuit (Application Specific Integrated Circuit, ASIC), programmable logic controller and embedded microcontroller form, etc.
  • the processor can read and execute program instructions or modules in the memory.
  • the transmission module can be used for data transmission via a network, for example, data transmission via a network such as the Internet, an intranet, a local area network, a mobile communication network, and the like.
  • a network such as the Internet, an intranet, a local area network, a mobile communication network, and the like.
  • a programmable logic device Programmable Logic Device, PLD
  • FPGA Field Programmable Gate Array
  • HDL Hardware Description Language
  • ABEL Advanced Boolean Expression Language
  • AHDL Altera Hardware Description Language
  • HDCal JHDL
  • Lava Lava
  • Lola MyHDL
  • PALASM RHDL
  • Verilog2 Verilog2
  • a typical implementation device is a computer.
  • the computer may be, for example, a personal computer, a laptop computer, a cell phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or Any combination of these devices.
  • This manual can be used in many general or special computer system environments or configurations.
  • program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types.
  • This specification can also be practiced in distributed computing environments, in which tasks are performed by remote processing devices connected through a communication network.
  • program modules can be located in local and remote computer storage media including storage devices.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Bioethics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Optimization (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Algebra (AREA)
  • Medical Informatics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Storage Device Security (AREA)

Abstract

一种模型参数确定方法、装置和电子设备。所述方法包括:根据特征数据和激励函数取值的份额与合作方秘密分享海森矩阵,得到海森矩阵的份额;根据海森矩阵的份额与合作方秘密分享第一逆矩阵,得到第一逆矩阵的份额,所述第一逆矩阵为海森矩阵的逆矩阵;根据原始模型参数的份额、第一逆矩阵的份额和损失函数梯度的份额与合作方秘密分享新的模型参数,得到新的模型参数的份额。

Description

模型参数确定方法、装置和电子设备 技术领域
本说明书实施例涉及计算机技术领域,特别涉及一种模型参数确定方法、装置和电子设备。
背景技术
大数据时代,存在非常多的数据孤岛。数据通常分散存于不同的企业中,企业与企业之间由于竞争关系和隐私保护的考虑,并不是完全的互相信任。在一些情况下,企业与企业之间需要进行合作安全建模,以便在充分保护企业数据隐私的前提下,利用各方的数据对数据处理模型进行协作训练。
在对数据处理模型进行协作训练的过程中,可以利用模型参数优化方法对数据处理模型的模型参数进行多次优化调整。由于用于对数据处理模型进行训练的数据是分散在合作建模的各方的,因此如何在保护数据隐私的条件下,协作确定数据处理模型的模型参数,是当前亟需解决的技术问题。
发明内容
本说明书实施例的目的是提供一种模型参数确定方法、装置和电子设备,以在保护数据隐私的前提下,由多方协作确定数据处理模型的模型参数。
为实现上述目的,本说明书中一个或多个实施例提供的技术方案如下。
根据本说明书一个或多个实施例的第一方面,提供了一种模型参数确定方法,应用于第一数据方,包括:根据特征数据和激励函数取值的份额与合作方秘密分享海森矩阵,得到海森矩阵的份额;根据海森矩阵的份额与合作方秘密分享第一逆矩阵,得到第一逆矩阵的份额,所述第一逆矩阵为海森矩阵的逆矩阵;根据原始模型参数的份额、第一逆矩阵的份额和损失函数梯度的份额与合作方秘密分享新的模型参数,得到新的模型参数的份额。
根据本说明书一个或多个实施例的第二方面,提供了一种模型参数确定装置,应用于第一数据方,包括:第一秘密分享单元,用于根据特征数据和激励函数取值的份额与合作方秘密分享海森矩阵,得到海森矩阵的份额;第二秘密分享单元,用于根据海森矩 阵的份额与合作方秘密分享第一逆矩阵,得到第一逆矩阵的份额,所述第一逆矩阵为海森矩阵的逆矩阵;第三秘密分享单元,用于根据原始模型参数的份额、第一逆矩阵的份额和损失函数梯度的份额与合作方秘密分享新的模型参数,得到新的模型参数的份额。
根据本说明书一个或多个实施例的第三方面,提供了一种电子设备,包括:存储器,用于存储计算机指令;处理器,用于执行所述计算机指令以实现如第一方面所述的方法步骤。
根据本说明书一个或多个实施例的第四方面,提供了一种模型参数确定方法,应用于第二数据方,包括:根据激励函数取值的份额与合作方秘密分享海森矩阵,得到海森矩阵的份额;根据海森矩阵的份额与合作方秘密分享第一逆矩阵,得到第一逆矩阵的份额,所述第一逆矩阵为海森矩阵的逆矩阵;根据原始模型参数的份额、第一逆矩阵的份额和损失函数梯度的份额与合作方秘密分享新的模型参数,得到新的模型参数的份额。
根据本说明书一个或多个实施例的第五方面,提供了一种模型参数确定装置,应用于第二数据方,包括:第一秘密分享单元,用于根据激励函数取值的份额与合作方秘密分享海森矩阵,得到海森矩阵的份额;第二秘密分享单元,用于根据海森矩阵的份额与合作方秘密分享第一逆矩阵,得到第一逆矩阵的份额,所述第一逆矩阵为海森矩阵的逆矩阵;第三秘密分享单元,用于根据原始模型参数的份额、第一逆矩阵的份额和损失函数梯度的份额与合作方秘密分享新的模型参数,得到新的模型参数的份额。
根据本说明书一个或多个实施例的第六方面,提供了一种电子设备,包括:存储器,用于存储计算机指令;处理器,用于执行所述计算机指令以实现如第四方面所述的方法步骤。
由以上本说明书实施例提供的技术方案可见,本说明书实施例中,第一数据方和第二数据方可以利用秘密分享算法,在不泄漏自身所拥有的数据的前提下,协作确定数据处理模型的模型参数。另外,由于使用了牛顿法,因而本实施例的模型参数确定方法有较快的收敛速度,可以减少模型参数优化调整的次数,提高数据处理模型的训练效率。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性 的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书实施例一种模型参数确定系统的示意图;
图2为本说明书实施例一种模型参数确定方法的流程图;
图3为本说明书实施例一种模型参数确定方法的流程图;
图4为本说明书实施例一种模型参数确定方法的流程图;
图5为本说明书实施例一种模型参数确定装置的示意图;
图6为本说明书实施例一种模型参数确定装置的示意图;
图7为本说明书实施例一种电子设备的功能结构图。
具体实施方式
下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。
模型参数优化方法可以包括梯度下降法、牛顿法等等。所述牛顿法可以包括原始牛顿法以及基于原始牛顿法的各种变形方法(诸如阻尼牛顿法、正则化牛顿法等等;正则化牛顿法是指附带了正则化项的牛顿法;正则化可以降低模型的复杂度和不稳定程度,从而降低过拟合的危险)。考虑到相较于梯度下降法,牛顿法有着更快的收敛速度。因此若合作建模各方通过秘密分享的方式,利用牛顿法协作确定数据处理模型的模型参数,则不仅可以保护合作建模各方的数据隐私,还可以减少模型参数优化调整的次数,提高数据处理模型的训练效率。
秘密分享(SS,Secret Sharing)是一种保护数据隐私安全的算法。多个数据方可以在不泄漏自身数据的前提下,使用秘密分享算法进行协作计算,得到秘密信息。每个数据方可以获得该秘密信息的一份份额。单个数据方无法恢复该秘密信息。只有多个数据方一同协作才能恢复该秘密信息。例如数据方P 1拥有数据x 1,数据方P 2拥有数据x 2。 采用秘密分享算法,数据方P 1和数据方P 2可以进行协作计算,得到秘密信息y=y 1+y 2=x 1x 2。数据方P 1在计算后可以获得秘密信息y的份额y 1,数据方P 2在计算后可以获得秘密信息y的份额y 2
在合作安全建模的场景中,出于保护数据隐私的考虑,多个数据方可以在不泄漏自身所拥有的数据的前提下,基于自身拥有的数据,对数据处理模型进行协作训练。所述数据处理模型包括但不限于逻辑回归模型和神经网络模型等。在对数据处理模型进行训练的过程中,可以利用模型参数优化方法对数据处理模型的模型参数进行优化调整。考虑到在合作安全建模的场景中,用于对数据处理模型进行训练的数据分散在合作建模的各数据方。因此在合作安全建模的场景中,所述模型参数优化方法可以采用秘密分享算法来实现。
损失函数(Loss Function)可以用于衡量数据处理模型的预测值与真实值之间不一致的程度。损失函数的值越小,表示数据处理模型的鲁棒性越好。所述损失函数包括但不限于对数损失函数(Logarithmic Loss Function)、平方损失函数(Square Loss)等。
海森矩阵(Hessian Matrix),又称为黑塞矩阵、海瑟矩阵或海塞矩阵等,是损失函数的二阶偏导数所构成的方阵,用于表示损失函数的局部曲率。
激励函数(Activation Function),又称为激活函数,可以用于构建数据处理模型。激励函数定义了在给定输入下的输出。通过激励函数可以在数据处理模型中加入非线性因素,提高数据处理模型的表达能力。所述激励函数例如可以包括Sigmoid函数、Tanh函数和ReLU函数等等。
本说明书提供一种模型参数确定系统的实施例。
请参阅图1。在该实施例中,所述模型参数确定系统可以包括第一数据方、第二数据方和可信任的第三方(TTP,Trusted Third Party)。
所述第三方可以为一个服务器;或者,还可以为包括多个服务器的服务器集群。所述第三方可以用于向所述第一数据方和所述第二数据方提供随机数。具体地,所述第三方可以生成随机数矩阵,可以将所述随机数矩阵中的各个随机数拆分为两个份额,可以将其中一个份额作为第一份额,将其中另一个份额作为第二份额。所述第三方可以将所述随机数矩阵中各个随机数的第一份额形成的矩阵作为所述随机数矩阵的第一份额,将所述随机数矩阵中各个随机数的第二份额形成的矩阵作为所述随机数矩阵的第二份额;可以向所述第一数据方发送所述随机数矩阵的第一份额,可以向所述第二数据方发送所 述随机数矩阵的第二份额。其中,所述随机数矩阵的第一份额和所述随机数矩阵的第二份额的和等于所述随机数矩阵。
所述第一数据方和所述第二数据方分别为合作安全建模的双方。所述第一数据方可以为不拥有标签的数据方,所述第二数据方可以为拥有标签的数据方。例如,所述第一数据方可以拥有完整的特征数据,所述第二数据方可以拥有特征数据的标签。或者,所述第一数据方可以拥有特征数据的一部分数据项,所述第二数据方可以拥有特征数据的另一部分数据项和标签。具体地,例如,特征数据可以包括用户的储蓄金额和借贷金额。所述第一数据方可以拥有用户的储蓄金额,所述第二数据方可以拥有用户的借贷金额和特征数据的标签。所述标签可以用于区分不同类型的特征数据,具体数值例如可以取自0和1。这里的数据方可以为电子设备。所述电子设备可以包括个人计算机、服务器、手持设备、便携式设备、平板型设备、多处理器装置;或者,还可以包括由以上任何多个装置或设备所构成的集群等。另外,特征数据及其对应的标签共同构成了样本数据,样本数据可以用于对数据处理模型进行训练。
在合作安全建模的场景中,所述第一数据方和所述第二数据方可以分别获得原始模型参数的一份份额。这里可以将所述第一数据方获得份额作为原始模型参数的第一份额,可以将所述第二数据方获得份额作为原始模型参数的第二份额。原始模型参数的第一份额和原始模型参数的第二份额的和等于原始模型参数。
所述第一数据方可以接收随机数矩阵的第一份额。所述第二数据方可以接收随机数矩阵的第二份额。所述第一数据方可以基于原始模型参数的第一份额、特征数据和随机数矩阵的第一份额,所述第二数据方可以基于原始模型参数的第二份额、标签和随机数矩阵的第二份额,采用秘密分享的方式,协作确定新的模型参数。所述第一数据方和所述第二数据方可以分别获得新的模型参数的一份份额。具体过程可以参见后面的模型参数确定方法实施例。
本说明书还提供一种模型参数确定方法的实施例。
该实施例可以利用牛顿法来确定模型参数。请参阅图2。该实施例可以包括以下步骤。
步骤S11:第一数据方根据特征数据和激励函数取值的第一份额,第二数据方根据激励函数取值的第二份额,秘密分享海森矩阵。第一数据方获得海森矩阵的第一份额,第二数据方获得海森矩阵的第二份额。
步骤S13:第一数据方根据海森矩阵的第一份额,第二数据方根据海森矩阵的第二份额,秘密分享第一逆矩阵。第一数据方获得第一逆矩阵的第一份额,第二数据方获得第一逆矩阵的第二份额。第一逆矩阵为海森矩阵的逆矩阵。
步骤S15:第一数据方根据原始模型参数的第一份额、第一逆矩阵的第一份额和损失函数梯度的第一份额,第二数据方根据原始模型参数的第二份额、第一逆矩阵的第二份额和损失函数梯度的第二份额,秘密分享新的模型参数。第一数据方获得新的模型参数的第一份额,第二数据方获得新的模型参数的第二份额。
下面介绍在实施例中涉及的一些术语。
(一)、第一乘积、第二乘积和第三乘积。所述第一乘积可以为原始模型参数和特征数据之间的乘积。所述第二乘积可以为随机数矩阵和海森矩阵之间的乘积。所述第三乘积可以为海森矩阵的逆矩阵和损失函数梯度之间的乘积。
在一些场景示例中,所述第一乘积可以表示为XW;其中,W表示原始模型参数,具体为原始模型参数构成的向量;X表示特征数据,具体为特征数据构成的矩阵。
所述第二乘积可以表示为HR,其中,H表示海森矩阵,R表示随机数矩阵。
所述第三乘积可以表示为H -1dW,其中,H -1表示海森矩阵的逆矩阵,dW表示损失函数的梯度,dW为向量。
(二)、第一逆矩阵和第二逆矩阵。鉴于海森矩阵为方阵,因而可以对海森矩阵进行求逆处理,可以将海森矩阵的逆矩阵作为第一逆矩阵。所述第二乘积可以为方阵,因而可以对所述第二乘积进行求逆处理,可以将所述第二乘积的逆矩阵作为第二逆矩阵。
延续前面的场景示例,所述第一逆矩阵可以表示为H -1,所述第二逆矩阵可以表示为(HR) -1
在一些实施例中,在步骤S11之前,所述第一数据方可以根据特征数据和拥有的原始模型参数的第一份额,所述第二数据方可以根据拥有的原始模型参数的第二份额,秘密分享第一乘积。所述第一数据方和所述第二数据方可以分别获得所述第一乘积的一份份额。为了便于描述,可以将所述第一数据方获得的份额作为第一乘积的第一份额,可以将所述第二数据方获得的份额作为第一乘积的第二份额。第一乘积的第一份额和第一乘积的第二份额的和等于第一乘积。
延续前面的场景示例,原始模型参数的第一份额可以表示为<W> 0,原始模型参数的第二份额可以表示为<W> 1,<W> 0+<W> 1=W。所述第一数据方可以根据X和<W> 0,所述第二数据方可以根据<W> 1,秘密分享第一乘积XW。所述第一数据方可以获得第一乘积的第一份额<XW> 0,所述第二数据方可以获得第一乘积的第二份额<XW> 1。<XW> 0+<XW> 1=XW。
进一步地,所述第一数据方还可以根据第一乘积的第一份额,所述第二数据方还可以根据第一乘积的第二份额,秘密分享多项式的取值。所述第一数据方和所述第二数据方可以分别获得所述多项式取值的一份份额。所述多项式可以用于拟合所述数据处理模型的激励函数。如此可以将所述第一数据方获得的份额作为激励函数取值的第一份额,可以将所述第二数据方获得的份额作为激励函数取值的第二份额。激励函数取值的第一份额和激励函数取值的第二份额的和等于激励函数的取值。当然,本说明书并不限于上述采用多项式拟合的方式实现对激励函数取值的秘密分享,还可以采用其它方式实现对激励函数取值的秘密分享。
延续前面的场景示例,所述激励函数可以为Sigmoid函数。所述激励函数的取值可以表示为a=sigmoid(XW)。所述激励函数取值的第一份额可以表示为<a> 0,所述激励函数取值的第二份额可以表示为<a> 1。其中,<a> 0+<a> 1=a。<a> 0、<a> 1和a分别为向量。
进一步地,所述第一数据方还可以根据特征数据和激励函数取值的第一份额,所述第二数据方还可以根据标签和激励函数取值的第二份额,秘密分享损失函数的梯度。所述第一数据方和所述第二数据方可以分别获得所述损失函数梯度的一份份额。为了便于描述,可以将所述第一数据方获得的份额作为损失函数梯度的第一份额,可以将所述第二数据方获得的份额作为损失函数梯度的第二份额。损失函数梯度的第一份额和损失函数梯度的第二份额的和等于损失函数的梯度。
延续前面的场景示例,所述第一数据方可以根据X和<a> 0,所述第二数据方可以根据标签Y和<a> 1,秘密分享损失函数的梯度dW(具体为向量)。所述第一数据方可以获得损失函数梯度的第一份额<dW> 0,所述第二数据方可以获得损失函数梯度的第二份额<dW> 1
下面介绍所述第一数据方和所述第二数据方秘密分享损失函数dW的详细过程。
所述第一数据方可以根据X,所述第二数据方可以根据<a> 1,秘密分享X T<a> 1。所述第一数据方可以获得<[X T<a> 1]> 0,所述第二数据方可以获得<[X T<a> 1]> 1。<[X T<a> 1]> 0+<[X T<a> 1]> 1=X T<a> 1
所述第一数据方还可以根据X,所述第二数据方还可以根据标签Y(具体为标签构成的向量),秘密分享X TY。所述第一数据方可以获得<X TY> 0,所述第二数据方可以获得<X TY> 1。<X TY> 0+<X TY> 1=X TY。
所述第一数据方可以计算X T<a> 0;可以计算X T<a> 0+<[X T<a> 1]> 0-<X TY> 0作为损失函数梯度dW的第一份额<dW> 0。所述第二数据方可以计算<[X T<a> 1]> 1-<X TY> 1作为损失函数梯度dW的第二份额<dW> 1
dW=<dW> 0+<dW> 1
=X T<a> 0+<[X T<a> 1]> 0-<X TY> 0+<[X T<a> 1]> 1-<X TY> 1
=X T<a> 0+X T<a> 1-X TY
=X Ta-X TY
=X T(a-Y)
在一些实施例中,在步骤S11中,所述第一数据方可以根据特征数据和激励函数取值的第一份额,所述第二数据方可以根据激励函数取值的第二份额,秘密分享海森矩阵。所述第一数据方和所述第二数据方可以分别获得所述海森矩阵的一份份额。为了便于描述,可以将所述第一数据方获得的份额作为所述海森矩阵的第一份额,可以将所述第二数据方获得的份额作为所述海森矩阵的第二份额。海森矩阵的第一份额和海森矩阵的第二份额的和等于海森矩阵。
具体地,所述第一数据方可以根据激励函数取值的第一份额,所述第二数据方可以根据激励函数取值的第二份额,秘密分享对角矩阵。所述第一数据方和所述第二数据方可以分别获得所述对角矩阵的一份份额。为了便于描述,可以将所述第一数据方获得的份额作为所述对角矩阵的第一份额,可以将所述第二数据方获得的份额作为所述对角矩阵的第二份额。对角矩阵的第一份额和对角矩阵的第二份额的和等于对角矩阵。如此所 述第一数据方可以根据特征数据和所述对角矩阵的第一份额,所述第二数据方可以根据所述对角矩阵的第二份额,秘密分享海森矩阵。所述第一数据方可以获得所述海森矩阵的第一份额,所述第二数据方可以获得所述海森矩阵的第二份额。
延续前面的场景示例,所述第一数据方可以根据<a> 0,所述第二数据方可以根据<a> 1,秘密分享对角矩阵RNN。所述第一数据方可以获得对角矩阵的第一份额RNN 0,所述第二数据方可以获得对角矩阵的第二份额RNN 1
下面介绍所述第一数据方和所述第二数据方秘密分享对角矩阵RNN的详细过程。
所述第一数据方可以根据<a> 0,所述第二数据方可以根据<a> 1,秘密分享<a> 0·<a> 1。所述第一数据方可以获得<[<a> 0·<a> 1]> 0,所述第二数据方可以获得<[<a> 0·<a> 1]> 1。<[<a> 0·<a> 1]> 0+<[<a> 0·<a> 1]> 1=<a> 0·<a> 1。其中,·表示按位相乘运算。例如,向量m=(m 1,m 2,m 3),向量n=(n 1,n 2,n 3)。那么,
Figure PCTCN2020071432-appb-000001
所述第一数据方可以计算<r> 0=<a> 0-<[<a> 0·<a> 1]> 0-<a> 0·<a> 0,所述第二数据方可以计算<r> 1=<a> 1-<[<a> 0·<a> 1]> 0-<a> 1·<a> 1
r=<r> 0+<r> 1
=<a> 0-<[<a> 0·<a> 1]> 0-<a> 0·<a> 0+<a> 1-<[<a> 0·<a> 1]> 0-<a> 1·<a> 1
={<a> 0+<a> 1}{1-<a> 0-<a> 1}
=a(1-a)
<r> 0、<r> 1和r分别为向量。因而所述第一数据方可以根据<r> 0生成对角矩阵RNN=diag(r)的第一份额RNN 0=diag(<r> 0),所述第二数据方可以根据<r> 1生成对角矩阵RNN=diag(r)的第二份额RNN 1=diag(<r> 1)。RNN 0+RNN 1=RNN。其中,对角矩阵RNN的第一份额RNN 0和第二份额RNN 1均可以为一个对角矩阵。在实际处理过程中,所述第一数据方可以将<r> 0中的数据元素作为RNN 0主对角线上的数据元素,这样便实现了根据<r> 0生成RNN 0;可以将<r> 1中的数据元素作为RNN 1主对角线上的数据元素,这样便实现了根据<r> 1生成RNN 1
所述第一数据方可以根据X和RNN 0,所述第二数据方可以根据RNN 1,秘密分享海 森矩阵H。所述第一数据方可以获得海森矩阵的第一份额<H> 0,所述第二数据方可以获得海森矩阵的第二份额<H> 1
下面介绍所述第一数据方和所述第二数据方秘密分享海森矩阵H的详细过程。
所述第一数据方可以根据X,所述第二数据方可以根据RNN 1,秘密分享X TRNN 1。所述第一数据方可以获得<X TRNN 10,所述第二数据方可以获得<X TRNN 11。<X TRNN 10+<X TRNN 11=X TRNN 1
所述第一数据方还可以根据X,所述第二数据方还可以根据<X TRNN 11,秘密分享<X TRNN 11X。所述第一数据方可以获得<[<X TRNN 11X]> 0,所述第二数据方可以获得<[<X TRNN 11X]> 1。<[<X TRNN 11X]> 0+<[<X TRNN 11X]> 1=<X TRNN 11X。
所述第一数据方可以计算X TRNN 0X+<X TRNN 10X+<[<X TRNN 11X]> 0作为海森矩阵H的第一份额<H> 0。所述第二数据方可以将<[<X TRNN 11X]> 1作为海森矩阵H的第二份额<H> 0
H=<H> 0+<H> 1
=X TRNN 0X+<X TRNN 10X+<[<X TRNN 11X]> 0+<[<X TRNN 11X]> 1
=X TRNN 0X+<X TRNN 10X+<X TRNN 11X
=X TRNN 0X+X TRNN 1X
=X TRNNX
在一些实施例中,第三方可以向第一数据方下发随机数矩阵的第一份额;可以向第二数据方下发随机数矩阵的第二份额。随机数矩阵的第一份额和随机数矩阵的第二份额的和等于随机数矩阵。所述第一数据方可以接收随机数矩阵的第一份额,所述第二数据方可以接收随机数矩阵的第二份额。如此在步骤S13中,所述第一数据方可以根据随机数矩阵的第一份额和海森矩阵的第一份额,所述第二数据方可以根据随机数矩阵的第二份额和海森矩阵的第二份额,秘密分享第二乘积。所述第一数据方和所述第二数据方可以分别获得所述第二乘积的一份份额。为了便于描述,可以将所述第一数据方获得的份额作为第二乘积的第一份额,可以将所述第二数据方获得的份额作为第二乘积的第二份额。第二乘积的第一份额和第二乘积的第二份额的和等于第二乘积。
在本实施例的一些实施方式中,可以由所述第二数据方对所述第二乘积进行求逆处 理。具体地,所述第一数据方可以向所述第二数据方发送第二乘积的第一份额。所述第二数据方可以接收第二乘积的第一份额;可以将第二乘积的第一份额与自身拥有的第二乘积的第二份额相加,得到第二乘积。鉴于所述第二乘积为方阵,因而所述第二数据方可以对所述第二乘积进行求逆处理,得到所述第二乘积的逆矩阵作为第二逆矩阵;可以向所述第一数据方发送所述第二逆矩阵。所述第一数据方可以接收所述第二逆矩阵。或者,在本实施例的另一些实施方式中,还可以由所述第一数据方对所述第二乘积进行求逆处理。具体地,所述第二数据方可以向所述第一数据方发送第二乘积的第二份额。所述第一数据方可以接收第二乘积的第二份额;可以将第二乘积的第二份额与自身拥有的第二乘积的第一份额相加,得到第二乘积。鉴于所述第二乘积为方阵,因而所述第一数据方可以对所述第二乘积进行求逆处理,得到所述第二乘积的逆矩阵作为第二逆矩阵;可以向所述第二数据方发送所述第二逆矩阵。所述第二数据方可以接收所述第二逆矩阵。
所述第一数据方可以将随机数矩阵的第一份额与所述第二逆矩阵相乘,得到第一逆矩阵的第一份额。所述第二数据方可以将随机数矩阵的第二份额与所述第二逆矩阵相乘,得到第一逆矩阵的第二份额。第一逆矩阵的第一份额和第一逆矩阵的第二份额的和等于第一逆矩阵。
延续前面的场景示例,随机数矩阵的第一份额可以表示为<R> 0,随机数矩阵的第二份额可以表示为<R> 1,<R> 0+<R> 1=R。所述第一数据方可以根据<R> 0和<H> 0,所述第二数据方可以根据<R> 1和<H> 1,秘密分享第二乘积HR。所述第一数据方可以获得第二乘积的第一份额<HR> 0,所述第二数据方可以获得第二乘积第二份额<HR> 1
下面介绍所述第一数据方和所述第二数据方秘密分享第二乘积HR的详细过程。
所述第一数据方可以根据<H> 0,所述第二数据方可以根据<R> 1,秘密分享<H> 0<R> 1。所述第一数据方可以获得<[<H> 0<R> 1]> 0,所述第二数据方可以获得<[<H> 0<R> 1]> 1。<[<H> 0<R> 1]> 0+<[<H> 0<R> 1]> 1=<H> 0<R> 1
所述第一数据方还可以根据<R> 0,所述第二数据方还可以根据<H> 1,秘密分享<H> 1<R> 0。所述第一数据方可以获得<[<H> 1<R> 0]> 0,所述第二数据方可以获得<[<H> 1<R> 0]> 1。<[<H> 1<R> 0]> 0+<[<H> 1<R> 0]> 1=<H> 1<R> 0
所述第一数据方可以计算<H> 0<R> 0+<[<H> 0<R> 1]> 0+<[<H> 1<R> 0]> 0作为第二乘积的第一份额<HR> 0。所述第二数据方可以计算<H> 1<R> 1+<[<H> 0<R> 1]> 1+<[<H> 1<R> 0]> 1作为第二乘积的第二份额<HR> 1
HR=<HR> 0+<HR> 1
=<H> 0<R> 0+<[<H> 0<R> 1]> 0+<[<H> 1<R> 0]> 0+
<H> 1<R> 1+<[<H> 0<R> 1]> 1+<[<H> 1<R> 0]> 1
=<H> 0<R> 0+<H> 0<R> 1+<H> 1<R> 0+<H> 1<R> 1
=(<H> 0+<H> 1)(<R> 0+<R> 1)
这里由所述第二数据方对第二乘积HR进行求逆处理。具体地,所述第一数据方可以向所述第二数据方发送第二乘积的第一份额<HR> 0。所述第二数据方可以接收第二乘积的第一份额<HR> 0;可以将第二乘积的第一份额<HR> 0与自身拥有的第二乘积的第二份额<HR> 1相加,得到第二乘积HR;可以对第二乘积HR进行求逆处理,得到第二逆矩阵(HR) -1;可以向所述第一数据方发送第二逆矩阵(HR) -1。所述第一数据方可以接收第二逆矩阵(HR) -1
所述第一数据方可以将第二逆矩阵(HR) -1与随机数矩阵的第一份额<R> 0相乘,得到第一逆矩阵H -1的第一份额<H -10。所述第二数据方可以将第二逆矩阵(HR) -1与随机数矩阵的第二份额<R> 1相乘,得到第一逆矩阵H -1的第一份额<H -11。H -1=<H -10+<H -11=<R> 0(HR) -1+<R> 1(HR) -1=R×(HR) -1
在一些实施例中,在步骤S15中,所述第一数据方可以根据第一逆矩阵的第一份额和损失函数梯度的第一份额,所述第二数据方可以根据第一逆矩阵的第二份额和损失函数梯度的第二份额,秘密分享第三乘积。所述第一数据方和所述第二数据方可以分别获得所述第三乘积的一份份额。为了便于描述,可以将所述第一数据方获得的份额作为第三乘积的第一份额,可以将所述第二数据方获得的份额作为第三乘积的第二份额。第三乘积的第一份额和第三乘积的第二份额的和等于第三乘积。
所述第一数据方可以将原始模型参数的第一份额与第三乘积的第一份额相减,得到新的模型参数的第一份额。所述第二数据方可以将原始模型参数的第二份额与第三乘积的第二份额相减,得到新的模型参数的第二份额。
值得说明的是,在实际应用中,可以将新的模型参数作为新的原始模型参数,重复执行步骤S11、步骤S13和步骤S15。通过重复执行本实施例的模型参数确定方法,可以实现对数据处理模型的模型参数进行迭代优化调整。
延续前面的场景示例,所述第一数据方可以根据<H -10和<dW> 0,所述第二数据方可以根据<H -11和<dW> 1,秘密分享第三乘积H -1×dW。所述第一数据方可以获得第三乘积的第一份额<H -1×dW> 0,所述第二数据方可以获得第三乘积的第二份额<H -1×dW> 1
下面介绍所述第一数据方和所述第二数据方秘密分享第三乘积H -1×dW的详细过程。
所述第一数据方可以根据<H -10,所述第二数据方可以根据<dW> 1,秘密分享<H -10<dW> 1。所述第一数据方可以获得<[<H -10<dW> 1]> 0,所述第二数据方可以获得<[<H -10<dW> 1]> 1。<[<H -10<dW> 1]> 0+<[<H -10<dW> 1]> 1=<H -10<dW> 1
所述第一数据方还可以根据<dW> 0,所述第二数据方还可以根据<H -11,秘密分享<H -11<dW> 0。所述第一数据方可以获得<[<H -11<dW> 0]> 0,所述第二数据方可以获得<[<H -11<dW> 0]> 1。<[<H -11<dW> 0]> 0+<[<H -11<dW> 0]> 1=<H -11<dW> 0
所述第一数据方可以计算<H -10<dW> 0+<[<H -10<dW> 1]> 0+<[<H -11<dW> 0]> 0作为第三乘积的第一份额<H -1×dW> 0。所述第二数据方可以计算<H -11<dW> 1+<[<H -10<dW> 1]> 1+<[<H -11<dW> 0]> 1作为第三乘积的第二份额<H -1×dW> 1
H -1×dW=<H -1×dW> 0+<H -1×dW> 1
=<H -10<dW> 0+<[<H -10<dW> 1]> 0+<[<H -11<dW> 0]> 0+
<H -11<dW> 1+<[<H -10<dW> 1]> 1+<[<H -11<dW> 0]> 1
=<H -10<dW> 0+<H -10<dW> 1+<H -11<dW> 0+<H -11<dW> 1
=(<H -10+<H -11)(<dW> 0+<dW> 1)
所述第一数据方可以计算<W'> 0=<W> 0-<H -1×dW> 0,所述第二数据方可以计算 <W'> 1=<W> 1-<H -1×dW> 1,<W'> 0表示新的模型参数的第一份额,<W'> 1表示新的模型参数的第二份额,W'表示新的模型参数。
W'=<W'> 0+<W'> 1=<W> 0-<H -1×dW> 0+<W> 1-<H -1×dW> 1=W-H -1×dW
在本实施例中,第一数据方和第二数据方可以利用秘密分享算法,在不泄漏自身所拥有的数据的前提下,协作确定数据处理模型的模型参数。另外,由于使用了牛顿法,因而本实施例的模型参数确定方法有较快的收敛速度,可以减少模型参数优化调整的次数,提高数据处理模型的训练效率。
基于同样的发明构思,本说明书还提供另一种模型参数确定方法的实施例。该实施例以第一数据方为执行主体,所述第一数据方可以持有特征数据和原始模型参数的份额。请参阅图3。该实施例可以包括以下步骤。
步骤S21:根据特征数据和激励函数取值的份额与合作方秘密分享海森矩阵,得到海森矩阵的份额。
在一些实施例中,所述合作方可以理解为与所述第一数据方进行合作安全建模的数据方,具体可以为前面的第二数据方。所述第一数据方可以根据第一乘积的份额与合作方秘密分享多项式的取值,得到多项式取值的份额作为激励函数取值的份额。所述第一乘积可以为原始模型参数和特征数据之间的乘积。所述第一数据方可以根据特征数据和原始模型参数的份额与合作方秘密分享第一乘积,得到第一乘积的份额。所述多项式用于拟合所述激励函数。
所述第一数据方可以根据特征数据和激励函数取值的份额与合作方秘密分享损失函数的梯度,得到损失函数梯度的份额。
在一些实施例中,所述第一数据方可以根据激励函数取值的份额与合作方秘密分享对角矩阵,得到对角矩阵的份额;可以根据特征数据和对角矩阵的份额与合作方秘密分享海森矩阵,得到海森矩阵的份额。具体过程可以参见前面步骤S11中的相关描述,在此不再赘述。
步骤S23:根据海森矩阵的份额与合作方秘密分享第一逆矩阵,得到第一逆矩阵的份额,所述第一逆矩阵为海森矩阵的逆矩阵。
在一些实施例中,所述第一数据方可以根据随机数矩阵的份额和海森矩阵的份额与合作方秘密分享第二乘积,得到第二乘积的份额。所述第二乘积可以为随机数矩阵和海 森矩阵之间的乘积。所述第一数据方可以向合作方发送第二乘积的份额;可以接收合作方反馈的第二逆矩阵,所述第二逆矩阵为所述第二乘积的逆矩阵;可以将第二逆矩阵与随机数矩阵的份额相乘,得到第一逆矩阵的份额。具体过程可以参见前面步骤S13中的相关描述,在此不再赘述。
或者,在另一些实施例中,所述第一数据方可以根据随机数矩阵的份额和海森矩阵的份额与合作方秘密分享第二乘积,得到第二乘积的第一份额。所述第二乘积可以为随机数矩阵和海森矩阵之间的乘积。所述第一数据方可以接收合作方发来的第二乘积的第二份额;可以根据第二乘积的第一份额和第二乘积的第二份额确定第二逆矩阵,所述第二逆矩阵为所述第二乘积的逆矩阵;可以将第二逆矩阵与随机数矩阵的份额相乘,得到第一逆矩阵的份额。具体过程可以参见前面步骤S13中的相关描述,在此不再赘述。
步骤S25:根据原始模型参数的份额、第一逆矩阵的份额和损失函数梯度的份额与合作方秘密分享新的模型参数,得到新的模型参数的份额。
在一些实施例中,所述第一数据方可以根据第一逆矩阵的份额和损失函数梯度的份额与合作方秘密分享第三乘积,得到第三乘积的份额。所述第三乘积可以为第一逆矩阵和损失函数梯度之间的乘积。所述第一数据方可以将原始模型参数的份额与第三乘积的份额相减,得到新的模型参数的份额。具体过程可以参见前面步骤S15中的相关描述,在此不再赘述。
在本实施例中,第一数据方可以利用秘密分享算法,在不泄漏自身所拥有的数据的前提下,与合作方协作确定数据处理模型的模型参数,得到新的模型参数的份额。
基于同样的发明构思,本说明书还提供另一种模型参数确定方法的实施例。该实施例以第二数据方为执行主体,所述第二数据方可以持有标签和原始模型参数的份额。请参阅图4。该实施例可以包括以下步骤。
步骤S31:根据激励函数取值的份额与合作方秘密分享海森矩阵,得到海森矩阵的份额。
在一些实施例中,所述合作方可以理解为与所述第二数据方进行合作安全建模的数据方,具体可以为前面的第一数据方。所述第二数据方可以根据第一乘积的份额与合作方秘密分享多项式的取值,得到多项式取值的份额作为激励函数取值的份额。所述第一乘积可以为原始模型参数和特征数据之间的乘积。所述第二数据方可以根据原始模型参数的份额与合作方秘密分享第一乘积,得到第一乘积的份额。所述多项式用于拟合 所述激励函数。
所述第二数据方可以根据标签和激励函数取值的份额与合作方秘密分享损失函数的梯度,得到损失函数梯度的份额。
在一些实施例中,所述第二数据方可以根据激励函数取值的份额与合作方秘密分享对角矩阵,得到对角矩阵的份额;可以根据对角矩阵的份额与合作方秘密分享海森矩阵,得到海森矩阵的份额。具体过程可以参见前面步骤S11中的相关描述,在此不再赘述。
步骤S33:根据海森矩阵的份额与合作方秘密分享第一逆矩阵,得到第一逆矩阵的份额,所述第一逆矩阵为海森矩阵的逆矩阵。
在一些实施例中,所述第二数据方可以根据随机数矩阵的份额和海森矩阵的份额与合作方秘密分享第二乘积,得到第二乘积的份额。所述第二乘积可以为随机数矩阵和海森矩阵之间的乘积。所述第二数据方可以向合作方发送第二乘积的份额;可以接收合作方反馈的第二逆矩阵,所述第二逆矩阵为所述第二乘积的逆矩阵;可以将第二逆矩阵与随机数矩阵的份额相乘,得到第一逆矩阵的份额。具体过程可以参见前面步骤S13中的相关描述,在此不再赘述。
或者,在另一些实施例中,所述第二数据方可以根据随机数矩阵的份额和海森矩阵的份额与合作方秘密分享第二乘积,得到第二乘积的第一份额。所述第二乘积可以为随机数矩阵和海森矩阵之间的乘积。所述第二数据方可以接收合作方发来的第二乘积的第二份额;可以根据第二乘积的第一份额和第二乘积的第二份额确定第二逆矩阵,所述第二逆矩阵为所述第二乘积的逆矩阵;可以将第二逆矩阵与随机数矩阵的份额相乘,得到第一逆矩阵的份额。具体过程可以参见前面步骤S13中的相关描述,在此不再赘述。
步骤S35:根据原始模型参数的份额、第一逆矩阵的份额和损失函数梯度的份额与合作方秘密分享新的模型参数,得到新的模型参数的份额。
在一些实施例中,所述第二数据方可以根据第一逆矩阵的份额和损失函数梯度的份额与合作方秘密分享第三乘积,得到第三乘积的份额。所述第三乘积可以为第一逆矩阵和损失函数梯度之间的乘积。所述第二数据方可以将原始模型参数的份额与第三乘积的份额相减,得到新的模型参数的份额。具体过程可以参见前面步骤S15中的相关描述,在此不再赘述。
在本实施例中,第二数据方可以利用秘密分享算法,在不泄漏自身所拥有的数 据的前提下,与合作方协作确定数据处理模型的模型参数,得到新的模型参数的份额。
基于同样的发明构思,本说明书还提供一种模型参数确定装置的实施例。请参阅图5。该实施例可以应用于第一数据方,可以包括以下单元。
第一秘密分享单元41,用于根据特征数据和激励函数取值的份额与合作方秘密分享海森矩阵,得到海森矩阵的份额;
第二秘密分享单元43,用于根据海森矩阵的份额与合作方秘密分享第一逆矩阵,得到第一逆矩阵的份额,所述第一逆矩阵为海森矩阵的逆矩阵;
第三秘密分享单元45,用于根据原始模型参数的份额、第一逆矩阵的份额和损失函数梯度的份额与合作方秘密分享新的模型参数,得到新的模型参数的份额。
基于同样的发明构思,本说明书还提供一种模型参数确定装置的实施例。请参阅图6。该实施例可以应用于第二数据方,可以包括以下单元。
第一秘密分享单元51,用于根据激励函数取值的份额与合作方秘密分享海森矩阵,得到海森矩阵的份额;
第二秘密分享单元53,用于根据海森矩阵的份额与合作方秘密分享第一逆矩阵,得到第一逆矩阵的份额,所述第一逆矩阵为海森矩阵的逆矩阵;
第三秘密分享单元55,用于根据原始模型参数的份额、第一逆矩阵的份额和损失函数梯度的份额与合作方秘密分享新的模型参数,得到新的模型参数的份额。
下面介绍本说明书电子设备的一个实施例。图7是该实施例中一种电子设备的硬件结构示意图。如图7所示,所述电子设备可以包括一个或多个(图中仅示出一个)处理器、存储器和传输模块。当然,本领域普通技术人员可以理解,图7所示的硬件结构仅为示意,其并不对上述电子设备的硬件结构造成限定。在实际中所述电子设备还可以包括比图7所示更多或者更少的组件单元;或者,具有与图7所示不同的配置。
所述存储器可以包括高速随机存储器;或者,还可以包括非易失性存储器,例如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。当然,所述存储器还可以包括远程设置的网络存储器。所述远程设置的网络存储器可以通过诸如互联网、企业内部网、局域网、移动通信网等网络连接至所述电子设备。所述存储器可以用于存储应用软件的程序指令或模块,例如本说明书图3所对应实施例的程序指令或模块;和/或,本说明书图4所对应实施例的程序指令或模块。
所述处理器可以按任何适当的方式实现。例如,所述处理器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式等等。所述处理器可以读取并执行所述存储器中的程序指令或模块。
所述传输模块可以用于经由网络进行数据传输,例如经由诸如互联网、企业内部网、局域网、移动通信网等网络进行数据传输。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其它实施例的不同之处。尤其,对于装置实施例和电子设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。另外,可以理解的是,本领域技术人员在阅读本说明书文件之后,可以无需创造性劳动想到将本说明书列举的部分或全部实施例进行任意组合,这些组合也在本说明书公开和保护的范围内。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable Gate Array,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware Description Language)等,目前最普遍使用的是VHDL(Very-High-Speed Integrated Circuit Hardware Description  Language)与Verilog2。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本说明书可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本说明书各个实施例或者实施例的某些部分所述的方法。
本说明书可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
虽然通过实施例描绘了本说明书,本领域普通技术人员知道,本说明书有许多变形和变化而不脱离本说明书的精神,希望所附的权利要求包括这些变形和变化而不脱离本说明书的精神。

Claims (20)

  1. 一种模型参数确定方法,应用于第一数据方,包括:
    根据特征数据和激励函数取值的份额与合作方秘密分享海森矩阵,得到海森矩阵的份额;
    根据海森矩阵的份额与合作方秘密分享第一逆矩阵,得到第一逆矩阵的份额,所述第一逆矩阵为海森矩阵的逆矩阵;
    根据原始模型参数的份额、第一逆矩阵的份额和损失函数梯度的份额与合作方秘密分享新的模型参数,得到新的模型参数的份额。
  2. 如权利要求1所述的方法,所述激励函数取值的份额通过以下步骤获得:
    根据第一乘积的份额与合作方秘密分享多项式的取值,得到多项式取值的份额作为激励函数取值的份额,所述第一乘积为原始模型参数和特征数据之间的乘积,所述多项式用于拟合所述激励函数。
  3. 如权利要求2所述的方法,所述第一乘积的份额通过以下步骤获得:
    根据特征数据和原始模型参数的份额与合作方秘密分享第一乘积,得到第一乘积的份额。
  4. 如权利要求2所述的方法,所述损失函数梯度的份额通过以下步骤获得:
    根据特征数据和激励函数取值的份额与合作方秘密分享损失函数的梯度,得到损失函数梯度的份额。
  5. 如权利要求1所述的方法,所述根据特征数据和激励函数取值的份额与合作方秘密分享海森矩阵,得到海森矩阵的份额,包括:
    根据激励函数取值的份额与合作方秘密分享对角矩阵,得到对角矩阵的份额;
    根据特征数据和对角矩阵的份额与合作方秘密分享海森矩阵,得到海森矩阵的份额。
  6. 如权利要求1所述的方法,所述根据海森矩阵的份额与合作方秘密分享第一逆矩阵,得到第一逆矩阵的份额,包括:
    根据随机数矩阵的份额和海森矩阵的份额与合作方秘密分享第二乘积,得到第二乘积的份额,所述第二乘积为随机数矩阵和海森矩阵之间的乘积;
    向合作方发送第二乘积的份额;
    接收合作方反馈的第二逆矩阵,所述第二逆矩阵为所述第二乘积的逆矩阵;
    将第二逆矩阵与随机数矩阵的份额相乘,得到第一逆矩阵的份额。
  7. 如权利要求1所述的方法,所述根据海森矩阵的份额与合作方秘密分享第一逆矩阵,得到第一逆矩阵的份额,包括:
    根据随机数矩阵的份额和海森矩阵的份额与合作方秘密分享第二乘积,得到第二乘积的第一份额,所述第二乘积为随机数矩阵和海森矩阵之间的乘积;
    接收合作方发来的第二乘积的第二份额;
    根据第二乘积的第一份额和第二乘积的第二份额确定第二逆矩阵,所述第二逆矩阵为所述第二乘积的逆矩阵;
    将第二逆矩阵与随机数矩阵的份额相乘,得到第一逆矩阵的份额。
  8. 如权利要求1所述的方法,所述根据原始模型参数的份额、第一逆矩阵的份额和损失函数梯度的份额与合作方秘密分享新的模型参数,得到新的模型参数的份额,包括:
    根据第一逆矩阵的份额和损失函数梯度的份额与合作方秘密分享第三乘积,得到第三乘积的份额,所述第三乘积为第一逆矩阵和损失函数梯度之间的乘积;
    将原始模型参数的份额与第三乘积的份额相减,得到新的模型参数的份额。
  9. 一种模型参数确定装置,应用于第一数据方,包括:
    第一秘密分享单元,用于根据特征数据和激励函数取值的份额与合作方秘密分享海森矩阵,得到海森矩阵的份额;
    第二秘密分享单元,用于根据海森矩阵的份额与合作方秘密分享第一逆矩阵,得到第一逆矩阵的份额,所述第一逆矩阵为海森矩阵的逆矩阵;
    第三秘密分享单元,用于根据原始模型参数的份额、第一逆矩阵的份额和损失函数梯度的份额与合作方秘密分享新的模型参数,得到新的模型参数的份额。
  10. 一种电子设备,包括:
    存储器,用于存储计算机指令;
    处理器,用于执行所述计算机指令以实现如权利要求1-8中任一项所述的方法步骤。
  11. 一种模型参数确定方法,应用于第二数据方,包括:
    根据激励函数取值的份额与合作方秘密分享海森矩阵,得到海森矩阵的份额;
    根据海森矩阵的份额与合作方秘密分享第一逆矩阵,得到第一逆矩阵的份额,所述第一逆矩阵为海森矩阵的逆矩阵;
    根据原始模型参数的份额、第一逆矩阵的份额和损失函数梯度的份额与合作方秘密分享新的模型参数,得到新的模型参数的份额。
  12. 如权利要求11所述的方法,所述激励函数取值的份额通过以下步骤获得:
    根据第一乘积的份额与合作方秘密分享多项式的取值,得到多项式取值的份额作为激励函数取值的份额,所述第一乘积为原始模型参数和特征数据之间的乘积,所述多项 式用于拟合所述激励函数。
  13. 如权利要求12所述的方法,所述第一乘积的份额通过以下步骤获得:
    根据原始模型参数的份额与合作方秘密分享第一乘积,得到第一乘积的份额。
  14. 如权利要求12所述的方法,所述损失函数梯度的份额通过以下步骤获得:
    根据标签和激励函数取值的份额与合作方秘密分享损失函数的梯度,得到损失函数梯度的份额。
  15. 如权利要求11所述的方法,所述根据激励函数取值的份额与合作方秘密分享海森矩阵,得到海森矩阵的份额,包括:
    根据激励函数取值的份额与合作方秘密分享对角矩阵,得到对角矩阵的份额;
    根据对角矩阵的份额与合作方秘密分享海森矩阵,得到海森矩阵的份额。
  16. 如权利要求11所述的方法,所述根据海森矩阵的份额与合作方秘密分享第一逆矩阵,得到第一逆矩阵的份额,包括:
    根据随机数矩阵的份额和海森矩阵的份额与合作方秘密分享第二乘积,得到第二乘积的份额,所述第二乘积为随机数矩阵和海森矩阵之间的乘积;
    向合作方发送第二乘积的份额;
    接收合作方反馈的第二逆矩阵,所述第二逆矩阵为所述第二乘积的逆矩阵;
    将第二逆矩阵与随机数矩阵的份额相乘,得到第一逆矩阵的份额。
  17. 如权利要求11所述的方法,所述根据海森矩阵的份额与合作方秘密分享第一逆矩阵,得到第一逆矩阵的份额,包括:
    根据随机数矩阵的份额和海森矩阵的份额与合作方秘密分享第二乘积,得到第二乘积的第一份额,所述第二乘积为随机数矩阵和海森矩阵之间的乘积;
    接收合作方发来的第二乘积的第二份额;
    根据第二乘积的第一份额和第二乘积的第二份额确定第二逆矩阵,所述第二逆矩阵为所述第二乘积的逆矩阵;
    将第二逆矩阵与随机数矩阵的份额相乘,得到第一逆矩阵的份额。
  18. 如权利要求11所述的方法,所述根据原始模型参数的份额、第一逆矩阵的份额和损失函数梯度的份额与合作方秘密分享新的模型参数,得到新的模型参数的份额,包括:
    根据第一逆矩阵的份额和损失函数梯度的份额与合作方秘密分享第三乘积,得到第三乘积的份额,所述第三乘积为第一逆矩阵和损失函数梯度之间的乘积;
    将原始模型参数的份额与第三乘积的份额相减,得到新的模型参数的份额。
  19. 一种模型参数确定装置,应用于第二数据方,包括:
    第一秘密分享单元,用于根据激励函数取值的份额与合作方秘密分享海森矩阵,得到海森矩阵的份额;
    第二秘密分享单元,用于根据海森矩阵的份额与合作方秘密分享第一逆矩阵,得到第一逆矩阵的份额,所述第一逆矩阵为海森矩阵的逆矩阵;
    第三秘密分享单元,用于根据原始模型参数的份额、第一逆矩阵的份额和损失函数梯度的份额与合作方秘密分享新的模型参数,得到新的模型参数的份额。
  20. 一种电子设备,包括:
    存储器,用于存储计算机指令;
    处理器,用于执行所述计算机指令以实现如权利要求11-18中任一项所述的方法步骤。
PCT/CN2020/071432 2019-08-09 2020-01-10 模型参数确定方法、装置和电子设备 Ceased WO2021027254A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US16/792,031 US10936960B1 (en) 2019-08-09 2020-02-14 Determining model parameters using secret sharing
US17/188,837 US11113613B2 (en) 2019-08-09 2021-03-01 Determining model parameters using secret sharing

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910734775.4 2019-08-09
CN201910734775.4A CN110555315B (zh) 2019-08-09 2019-08-09 基于秘密分享算法的模型参数更新方法、装置和电子设备

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/792,031 Continuation US10936960B1 (en) 2019-08-09 2020-02-14 Determining model parameters using secret sharing

Publications (1)

Publication Number Publication Date
WO2021027254A1 true WO2021027254A1 (zh) 2021-02-18

Family

ID=68737249

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/071432 Ceased WO2021027254A1 (zh) 2019-08-09 2020-01-10 模型参数确定方法、装置和电子设备

Country Status (3)

Country Link
CN (1) CN110555315B (zh)
TW (1) TWI761778B (zh)
WO (1) WO2021027254A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113407987A (zh) * 2021-05-24 2021-09-17 支付宝(杭州)信息技术有限公司 保护隐私的确定业务数据特征有效值的方法及装置
US11995555B1 (en) * 2019-12-17 2024-05-28 Perceive Corporation Training a neural network with quantized weights
US12045725B1 (en) 2018-12-05 2024-07-23 Perceive Corporation Batch normalization for replicated layers of neural network
US12093816B1 (en) 2020-07-07 2024-09-17 Perceive Corporation Initialization of values for training a neural network with quantized weights
US12136039B1 (en) 2018-12-05 2024-11-05 Perceive Corporation Optimizing global sparsity for neural network

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110569228B (zh) * 2019-08-09 2020-08-04 阿里巴巴集团控股有限公司 模型参数确定方法、装置和电子设备
WO2021027598A1 (zh) * 2019-08-09 2021-02-18 创新先进技术有限公司 模型参数确定方法、装置和电子设备
US10803184B2 (en) 2019-08-09 2020-10-13 Alibaba Group Holding Limited Generation of a model parameter
US10936960B1 (en) 2019-08-09 2021-03-02 Advanced New Technologies Co., Ltd. Determining model parameters using secret sharing
CN110555315B (zh) * 2019-08-09 2021-04-09 创新先进技术有限公司 基于秘密分享算法的模型参数更新方法、装置和电子设备
CN111737757B (zh) * 2020-07-31 2020-11-17 支付宝(杭州)信息技术有限公司 针对隐私数据进行安全运算的方法和装置

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030112969A1 (en) * 2001-10-24 2003-06-19 International Business Machines Corporation Method for reducing a value modulo a shared secret
CN101882992A (zh) * 2010-06-21 2010-11-10 中国农业大学 门限秘密信息分配、还原方法及装置
CN109977694A (zh) * 2019-03-11 2019-07-05 暨南大学 一种基于协作深度学习的数据共享方法
CN110472439A (zh) * 2019-08-09 2019-11-19 阿里巴巴集团控股有限公司 模型参数确定方法、装置和电子设备
CN110555315A (zh) * 2019-08-09 2019-12-10 阿里巴巴集团控股有限公司 模型参数确定方法、装置和电子设备
CN110555525A (zh) * 2019-08-09 2019-12-10 阿里巴巴集团控股有限公司 模型参数确定方法、装置和电子设备
CN110569228A (zh) * 2019-08-09 2019-12-13 阿里巴巴集团控股有限公司 模型参数确定方法、装置和电子设备
CN110569227A (zh) * 2019-08-09 2019-12-13 阿里巴巴集团控股有限公司 模型参数确定方法、装置和电子设备
CN110580410A (zh) * 2019-08-09 2019-12-17 阿里巴巴集团控股有限公司 模型参数确定方法、装置和电子设备
CN110580409A (zh) * 2019-08-09 2019-12-17 阿里巴巴集团控股有限公司 模型参数确定方法、装置和电子设备

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101425902A (zh) * 2008-11-12 2009-05-06 电子科技大学 一个具有前向安全的门限数字签名方法与系统
JP5957120B1 (ja) * 2015-05-12 2016-07-27 日本電信電話株式会社 秘密分散方法、秘密分散システム、分散装置、およびプログラム
US9948460B2 (en) * 2015-08-28 2018-04-17 City University Of Hong Kong Multivariate cryptography based on clipped hopfield neural network
US12190231B2 (en) * 2016-10-19 2025-01-07 Samsung Electronics Co., Ltd Method and apparatus for neural network quantization
CN107784180B (zh) * 2017-11-13 2020-08-18 华南理工大学 一种时变凸二次规划求解器设计方法

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030112969A1 (en) * 2001-10-24 2003-06-19 International Business Machines Corporation Method for reducing a value modulo a shared secret
CN101882992A (zh) * 2010-06-21 2010-11-10 中国农业大学 门限秘密信息分配、还原方法及装置
CN109977694A (zh) * 2019-03-11 2019-07-05 暨南大学 一种基于协作深度学习的数据共享方法
CN110472439A (zh) * 2019-08-09 2019-11-19 阿里巴巴集团控股有限公司 模型参数确定方法、装置和电子设备
CN110555315A (zh) * 2019-08-09 2019-12-10 阿里巴巴集团控股有限公司 模型参数确定方法、装置和电子设备
CN110555525A (zh) * 2019-08-09 2019-12-10 阿里巴巴集团控股有限公司 模型参数确定方法、装置和电子设备
CN110569228A (zh) * 2019-08-09 2019-12-13 阿里巴巴集团控股有限公司 模型参数确定方法、装置和电子设备
CN110569227A (zh) * 2019-08-09 2019-12-13 阿里巴巴集团控股有限公司 模型参数确定方法、装置和电子设备
CN110580410A (zh) * 2019-08-09 2019-12-17 阿里巴巴集团控股有限公司 模型参数确定方法、装置和电子设备
CN110580409A (zh) * 2019-08-09 2019-12-17 阿里巴巴集团控股有限公司 模型参数确定方法、装置和电子设备

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12045725B1 (en) 2018-12-05 2024-07-23 Perceive Corporation Batch normalization for replicated layers of neural network
US12136039B1 (en) 2018-12-05 2024-11-05 Perceive Corporation Optimizing global sparsity for neural network
US11995555B1 (en) * 2019-12-17 2024-05-28 Perceive Corporation Training a neural network with quantized weights
US12093816B1 (en) 2020-07-07 2024-09-17 Perceive Corporation Initialization of values for training a neural network with quantized weights
CN113407987A (zh) * 2021-05-24 2021-09-17 支付宝(杭州)信息技术有限公司 保护隐私的确定业务数据特征有效值的方法及装置
CN113407987B (zh) * 2021-05-24 2023-10-20 支付宝(杭州)信息技术有限公司 保护隐私的确定业务数据特征有效值的方法及装置

Also Published As

Publication number Publication date
CN110555315B (zh) 2021-04-09
TW202107313A (zh) 2021-02-16
TWI761778B (zh) 2022-04-21
CN110555315A (zh) 2019-12-10

Similar Documents

Publication Publication Date Title
TWI761778B (zh) 模型參數確定方法、裝置和電子設備
CN110569228B (zh) 模型参数确定方法、装置和电子设备
CN110569227B (zh) 模型参数确定方法、装置和电子设备
US10936960B1 (en) Determining model parameters using secret sharing
CN110555525B (zh) 模型参数确定方法、装置和电子设备
TWI740375B (zh) 資料交互方法、裝置和電子設備
CN110472439A (zh) 模型参数确定方法、装置和电子设备
CN110580410A (zh) 模型参数确定方法、装置和电子设备
CN110580409A (zh) 模型参数确定方法、装置和电子设备
US10803184B2 (en) Generation of a model parameter
CN111967035B (zh) 模型训练方法、装置和电子设备
TWI710981B (zh) 損失函數取值的確定方法、裝置和電子設備
CN112507323A (zh) 基于单向网络的模型训练方法、装置和计算设备
CN112511361B (zh) 模型训练方法、装置和计算设备
WO2021027598A1 (zh) 模型参数确定方法、装置和电子设备
HK40018911A (zh) 模型参数确定方法、装置和电子设备
HK40018718B (zh) 模型参数确定方法、装置和电子设备
HK40018718A (zh) 模型参数确定方法、装置和电子设备
HK40018826B (zh) 模型参数确定方法、装置和电子设备
HK40018826A (zh) 模型参数确定方法、装置和电子设备
HK40018912A (zh) 模型参数确定方法、装置和电子设备
HK40018912B (zh) 模型参数确定方法、装置和电子设备
HK40018139B (zh) 模型参数确定方法、装置和电子设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20852247

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20852247

Country of ref document: EP

Kind code of ref document: A1