WO2020015478A1 - 基于模型的预测方法和装置 - Google Patents

基于模型的预测方法和装置 Download PDF

Info

Publication number
WO2020015478A1
WO2020015478A1 PCT/CN2019/090761 CN2019090761W WO2020015478A1 WO 2020015478 A1 WO2020015478 A1 WO 2020015478A1 CN 2019090761 W CN2019090761 W CN 2019090761W WO 2020015478 A1 WO2020015478 A1 WO 2020015478A1
Authority
WO
WIPO (PCT)
Prior art keywords
model
data
calculation
encryption
result
Prior art date
Application number
PCT/CN2019/090761
Other languages
English (en)
French (fr)
Inventor
林文珍
殷山
刘正
Original Assignee
阿里巴巴集团控股有限公司
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 阿里巴巴集团控股有限公司 filed Critical 阿里巴巴集团控股有限公司
Publication of WO2020015478A1 publication Critical patent/WO2020015478A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Definitions

  • the embodiments of the present specification relate to the field of data processing technology, and more specifically, to a model-based prediction method and device.
  • models are often used to process big data to analyze and discover potential data values.
  • training with test data is usually required to obtain characteristics that can accurately describe the target group or variable.
  • the types or characteristics of data owned by different merchants are often imperfect, and it is difficult to accurately describe the target through a single data.
  • the merchants usually choose a data cooperation method, and combine different data or feature labels to complete the model calculation to achieve a win-win situation.
  • issues such as data security and model security are also involved.
  • the data provider does not want to output its own value data to the data demander and leak private data; on the other hand, the information such as feature tags included in the model is also the merchant's private data, which has important commercial value. Model security issues, resulting in blocked data collaboration.
  • a trusted third party such as a co-creation laboratory, etc.
  • the embodiments of the present specification aim to provide a more effective model-based prediction scheme to solve the deficiencies in the prior art.
  • one aspect of the present specification provides a model-based prediction method, the method is performed on a data demand side, the data demand side includes a pre-trained computing model, and the method includes: Encrypt at least one parameter of the model to generate an encryption model; provide the encryption model to a data provider, wherein the data provider stores first data; and send the data provider about the first data and Receiving a calculation request of the encryption model; receiving a calculation result corresponding to the calculation request from the data provider; and obtaining a plain text prediction result of the calculation model based on the calculation result.
  • the data demander is installed with a data demander calculation engine
  • generating at least one parameter of the calculation model to generate an encryption model includes: Encrypt at least one parameter of the calculation model using the data demand-side calculation engine to generate an encryption model.
  • the data provider is provided with a data provider calculation engine, and receiving a calculation result corresponding to the calculation request from the data provider includes:
  • the data demander calculation engine receives the calculation result from the data provider calculation engine.
  • encrypting at least one parameter of the computing model includes encrypting the at least one parameter by one of the following encryption methods: homomorphic encryption method, obfuscation Circuit approach and differential privacy approach.
  • the calculation model is a logistic regression model or a linear regression model
  • the encryption method is a homomorphic encryption method
  • the calculation result is a homomorphic ciphertext result
  • obtaining the plaintext prediction result of the calculation model based on the calculation result includes: decrypting the homomorphic ciphertext result using a private key corresponding to the calculation model to obtain the plaintext prediction result of the calculation model.
  • the private key is pre-generated locally.
  • the calculation model is a GBDT model
  • the encryption method is an obfuscation circuit method
  • the calculation model is a score card model
  • the encryption method is a differential privacy method
  • the method is executed on a data provider, and the data provider stores first data.
  • the method includes: obtaining an encryption model from a data demander, wherein The data demander includes a pre-trained computing model, and the encryption model is generated by encrypting at least one parameter of the computing model by the data demander; receiving the first data about the first data from the data demander And a calculation request of the encryption model; according to the calculation request, performing calculation based on the first data using the encryption model to obtain a calculation result; and sending the calculation result to the data demander.
  • the encryption model is a first encryption model obtained by a homomorphic encryption method, and according to the calculation request, using the encryption model is based on the encryption model.
  • the calculation of the first data to obtain a calculation result includes: in the first encryption model, performing a homomorphic calculation based on the first data using a public key of the data acquirer obtained in advance to obtain a homomorphic ciphertext As a result, wherein the public key is generated in advance by the data demander for the computing model.
  • the device is implemented on a data demand side.
  • the data demand side includes a pre-trained computing model.
  • the device includes a generating unit configured to: Encrypting at least one parameter of the computing model to generate an encryption model; a providing unit configured to provide the encryption model to a data provider, wherein the data provider stores first data; and a sending unit configured to: Sending a calculation request about the first data and the encryption model to the data provider; a receiving unit configured to receive a calculation result corresponding to the calculation request from the data provider; and an obtaining unit, configuring To obtain a plaintext prediction result of the calculation model based on the calculation result.
  • the data demander is installed with a data demander calculation engine, and the generating unit is further configured to use Encrypt at least one parameter of the computation model to generate an encryption model.
  • the data provider in the model-based prediction device, is provided with a data provider calculation engine, and the receiving unit is further configured to receive the data from the data demand side calculation engine from the data demand side calculation engine.
  • the data provider calculation engine receives the calculation result.
  • the generating unit is further configured to encrypt the at least one parameter by one of the following encryption methods: a homomorphic encryption method, an obfuscation circuit method, and differential privacy. method.
  • the calculation model is a logistic regression model or a linear regression model
  • the encryption method is a homomorphic encryption method
  • the calculation result is a homomorphic ciphertext result
  • obtaining the plaintext prediction result of the calculation model based on the calculation result includes: decrypting the homomorphic ciphertext result using a private key corresponding to the calculation model to obtain the plaintext prediction result of the calculation model.
  • the private key is pre-generated locally.
  • the device is implemented on a data provider.
  • the data provider stores first data.
  • the device includes: an obtaining unit configured to obtain the data from a data demander.
  • An encryption model wherein the data demander includes a pre-trained computing model, and the encryption model is generated by encrypting at least one parameter of the computing model by the data demander; a receiving unit configured to: The data demander receives a calculation request for the first data and the encryption model; a calculation unit is configured to perform calculation based on the first data using the encryption model according to the calculation request to obtain a calculation A result; and a sending unit configured to send the calculation result to the data demander.
  • the encryption model is a first encryption model obtained by a homomorphic encryption method, and according to the calculation request, using the encryption model based on the first Calculating a data to obtain a calculation result includes: in the first encryption model, performing a homomorphic calculation based on the first data using a public key of the data acquirer obtained in advance to obtain a homomorphic ciphertext result , Wherein the public key is generated in advance by the data demander for the computing model.
  • Another aspect of the present specification provides a computing device including a memory and a processor, wherein the memory stores executable code, and when the processor executes the executable code, the model-based prediction method is implemented. .
  • a trusted third party is not required, and the data and model are held by the data partner, which avoids the privacy and security issues where the data and model are brought together, and also reduces mass data transmission. Brings transmission security risks and other problems.
  • This solution is a pure software solution. There are no additional hardware requirements other than the basic server, and no other hardware security holes will be introduced. And the docking cost is not high. Data providers and data demanders only need docker to deploy a specific engine to complete calculations online. In addition, for different model characteristics, different model encryption methods are used to improve the accuracy of the calculation results.
  • FIG. 1 shows a schematic diagram of a system 100 for performing model prediction according to an embodiment of the present specification
  • FIG. 2 shows a flowchart of a model-based prediction method according to an embodiment of the present specification
  • FIG. 3 shows a flowchart of a model-based prediction method according to an embodiment of the present specification
  • FIG. 4 illustrates a model-based prediction apparatus 400 according to an embodiment of the present specification.
  • FIG. 5 illustrates a model-based prediction apparatus 500 according to an embodiment of the present specification.
  • FIG. 1 shows a schematic diagram of a system 100 for performing model prediction according to an embodiment of the present specification.
  • the system 100 includes a data demander 11 and a data provider 12.
  • the data demander 11 is the model owner, which includes the trained computing model.
  • the private data A includes the feature labels and other data of the trained model, and the calculation logic (model / rule) Reflected by the calculation model.
  • the data provider is the data owner.
  • the private data B shown in the figure is the data owned by the data provider. This data can be calculated using the above calculation model.
  • a secure computing engine is installed in the data demander 11 in advance, and a secure computing engine is installed in the data provider 12, for example.
  • the data demander 11 and data provider 12 perform, for example, secure computing and communications in computing through their respective secure computing engines. Specifically, the data demander 11 locally uses the calculation engine to encrypt the computing model, that is, encrypts the private data A, and sends the encrypted encryption model to the data provider 12, and sends the data to the data provider 12. Calculation request for this encryption model and private data B. After receiving the calculation request, the data provider 12 uses the received encryption model in its local calculation engine to perform calculations based on the private data B, and sends the calculation result to the data demander 11 through the calculation engine. The data demander 11 obtains the final plaintext result based on the above calculation result.
  • the system 100 shown in FIG. 1 is only schematic, and the system 100 according to the embodiment of the present specification is not limited to the structure shown in FIG. 1.
  • the data demander 11 and the data provider 12 do not need a secure computing engine, but may include any computing software as long as they can meet the above computing requirements.
  • the data demander 11 may also include data that requires model prediction, that is, the data demander 11 may serve as another data provider at the same time, and the data provider 12 may also own the model, that is, the data provider 12 may serve as another A data demander.
  • FIG. 2 shows a flowchart of a model-based prediction method according to an embodiment of the present specification.
  • the method is performed on a data demander, which includes a pre-trained computing model.
  • the method includes:
  • step S202 an encryption model is generated by encrypting at least one parameter of the calculation model
  • step S204 the encryption model is provided to a data provider, wherein the data provider stores first data
  • step S206 a calculation request regarding the first data and the encryption model is sent to the data provider
  • step S208 receiving a calculation result corresponding to the calculation request from the data provider.
  • step S210 based on the calculation result, a plaintext prediction result of the calculation model is obtained.
  • step S202 an encryption model is generated by encrypting at least one parameter of the calculation model.
  • the calculation model is, for example, a logistic regression model (LR model), and a prediction function of the LR model is shown in formula (1) below:
  • ⁇ and ⁇ are model coefficients and belong to the data demand side.
  • x is an input required for calculation, and belongs to the private data of the data provider, that is, the above-mentioned first data.
  • ⁇ , ⁇ , and x may be single values or vectors. The following description uses ⁇ and x as vectors including multiple values as an example.
  • the data demander In order to reduce the calculation amount, and at the same time to reduce the risk of leakage of model parameters, only homomorphic encryption calculation is performed on the ⁇ parameter in formula (1), so as to obtain an encryption model corresponding to ⁇ x.
  • the data demander generates and stores a public key and a private key for performing the above-mentioned homomorphic encryption, and uses the public key to homomorphically encrypt each value included in ⁇ , thereby obtaining a first encryption vector corresponding to ⁇ . After that, the data demander replaces ⁇ with the first encryption vector to generate an encryption model.
  • the encryption model includes a first encryption vector and a calculation rule corresponding to ⁇ x, that is, a dot product operation rule of a first encryption vector and a second encryption vector (a homomorphic encryption vector corresponding to x).
  • the encryption model is expressed in the form of a configuration file. It can be understood that the encryption model is not limited to the form of a configuration file, but may be in other forms, such as a script, an executable program, and the like.
  • the calculation model is not limited to the LR model, and the encryption method is not limited to the homomorphic encryption method.
  • the calculation model is a linear regression model, and a data demander may similarly use a homomorphic encryption method to generate an encryption model.
  • the calculation model is a GBDT model, and a data demander may generate an encryption model by using an obfuscation circuit method.
  • the calculation model is a score card model, and a data demander may generate an encryption model by using a differential privacy method. The final result of the scorecard model only needs to output classification, and does not need accurate calculation results. So you can use the differential privacy method to blur the model coefficients and add small noise without affecting the overall decision classification.
  • the data demander has a dedicated secure computing engine installed in advance, and the data demander uses the calculation engine to encrypt the parameters to generate an encryption model.
  • the encryption model is provided to a data provider, wherein the data provider stores first data.
  • the encryption model may be pushed to the data provider through a local product console.
  • Providing the encryption model to the data provider is not limited to the foregoing manner.
  • the data demander may also provide the hard disk storing the encryption model to the data provider in the form of hard disk storage.
  • the data provider can deploy the encryption model to use the encryption model for local calculations. For example, you can load a model configuration file into a process and then call the process for model calculations.
  • different deployment methods can be implemented according to different computing environments, which will not be described in detail here.
  • a calculation request regarding the first data and the encryption model is sent to the data provider.
  • the first data ie, x above
  • the calculation request may include the object ID and the model ID of the encrypted model, or the calculation request may include information corresponding to the object ID, such as information such as a mobile phone number and a passport number of the object ID. Therefore, the data provider can obtain the object ID and the encryption model based on the calculation request, and obtain the first data based on the object ID, so that calculation can be performed based on the calculation request.
  • step S208 a calculation result corresponding to the calculation request is received from the data provider.
  • the encryption model is an encryption model corresponding to ⁇ x in formula (1).
  • the data provider After receiving the above calculation request for the first data and the encryption model, the data provider performs a homomorphic calculation based on x in the encryption model using the public key of the data acquirer obtained in advance to obtain a homomorphic secret. As a result, the public key is generated in advance by the data demander for the computing model.
  • This homomorphic ciphertext result is the homomorphic ciphertext result corresponding to ⁇ x.
  • the data provider sends the homomorphic ciphertext result to the data demander.
  • the data demander obtains the homomorphic ciphertext result based on the calculation request from the data provider.
  • the encryption method is an obfuscation circuit method.
  • the encryption parameter in the encryption model is a confusion value of at least one parameter in the GBDT model.
  • the data provider uses the encrypted GBDT model to perform calculations based on the first data, so as to obtain an obfuscated value result.
  • the data provider then sends the obfuscated value result to the data consumer.
  • the data demander obtains the obfuscated value result based on the calculation request from the data provider.
  • the data demander uses a differential privacy method to obscure the model's coefficients without affecting the prediction results of the model. Therefore, the data provider directly inputs the first data x into the encrypted scorecard model, and can obtain the plaintext prediction result of the scorecard model basically accurately. After that, the data provider sends the plaintext prediction result to the data demander.
  • a secure computing engine is pre-deployed on both the first server and the data provider.
  • the calculation result corresponding to the calculation request is received by the secure calculation engine of the data demander from the secure calculation engine of the data provider.
  • the calculation engine may attach the identification of the encryption model to the calculation result and send it to the secure calculation engine of the data demander, so as to ensure the authenticity of the calculation result.
  • step S210 based on the calculation result, a plaintext prediction result of the calculation model is obtained.
  • the data demander uses the private key corresponding to the calculation model generated locally to decrypt the homomorphic ciphertext result, thereby obtaining the same result as the calculation.
  • the result corresponds to the plaintext result.
  • this plaintext result is equivalent to the value obtained by dot product of ⁇ and x directly.
  • the data demander substitutes the plaintext value into formula (1) for calculation, so as to finally obtain the prediction result of the first data of the LR model.
  • the data demander obtains its original value based on the confusion value result, thereby obtaining the plaintext prediction result of the GBDT model on the first data.
  • the data demander may directly use the plaintext prediction result as the plaintext prediction result of the scorecard model.
  • the data demander has a data demander calculation engine installed, and the data provider has a data provider calculation engine installed.
  • the data demander and data provider can deploy the above data demander calculation engine and data provider calculation engine through Docker (an open source application container engine), that is, the data demander calculation engine and data provider calculation engine can be understood as software.
  • the calculation of the data demander is performed in the data demander calculation engine, and the calculation of the data provider is performed in the data provider calculation engine.
  • the data demander's encryption calculation of the model and the decryption calculation of the ciphertext result can be performed by the data demander's calculation engine.
  • the data provider's calculation of the first data based on the encryption model can be performed by the data provider's calculation engine.
  • the data demander calculation engine and the data provider calculation engine also have a communication function.
  • the data demander may send the data provider information about the first data and the encryption model to the data provider through the data demander calculation engine.
  • the data provider may send a calculation result corresponding to the calculation request to the data demander through a data provider calculation engine.
  • FIG. 3 shows a flowchart of a model-based prediction method according to an embodiment of the present specification.
  • the method is executed on a data provider, and the data provider stores first data.
  • the method includes the following steps S302-S308.
  • step S302 an encryption model is obtained from a data demander, wherein the data demander includes a pre-trained computing model, and the encryption model is obtained by encrypting at least one parameter of the computing model by the data demander. generate.
  • the data demander includes a pre-trained computing model
  • the encryption model is obtained by encrypting at least one parameter of the computing model by the data demander. generate.
  • step S304 a calculation request for the first data and the encryption model is received from the data demander.
  • this step reference may be made to the corresponding description of step S206 in FIG. 2 above, and details are not described herein again.
  • step S306 according to the calculation request, calculation is performed based on the first data using the encryption model to obtain a calculation result.
  • step S306 For specific implementation of this step, reference may be made to the corresponding description of step S208 in FIG. 2, and details are not described herein again.
  • step S308 the calculation result is sent to the data demander.
  • this step reference may be made to the corresponding description of step S208 in FIG. 2, and details are not described herein again.
  • the encryption model is a first encryption model obtained by encrypting at least one parameter of the LR model or the linear regression model by using a homomorphic encryption method.
  • performing calculation based on the first data using the encryption model according to the calculation request to obtain a calculation result includes: in the first encryption model, using a public key of the data acquirer obtained in advance based on The first data is homomorphically calculated to obtain a homomorphic ciphertext result, wherein the public key is generated in advance by the data demander for the calculation model.
  • the pre-obtained public key is, for example, sent by the data demander to the data provider in advance, or the data demander provides the data provider with information related to the public key in advance, and the data The provider derives the public key based on this information in advance, etc.
  • FIG. 4 illustrates a model-based prediction apparatus 400 according to an embodiment of the present specification.
  • the device is implemented on a data demand side, which includes a pre-trained computing model.
  • the device includes:
  • the generating unit 41 is configured to generate an encrypted model by encrypting at least one parameter of the calculation model
  • the providing unit 42 is configured to provide the encryption model to a data provider, wherein the data provider stores first data;
  • the sending unit 43 is configured to send a calculation request about the first data and the encryption mode to the data provider;
  • the receiving unit 44 is configured to receive a calculation result corresponding to the calculation request from the data provider.
  • the obtaining unit 45 is configured to obtain a plaintext prediction result of the calculation model based on the calculation result.
  • the data demander has a data demander calculation engine installed, and the generating unit 41 is further configured to use the data demander calculation engine to At least one parameter of the calculation model is encrypted to generate an encryption model.
  • the data provider is provided with a data provider calculation engine, and the receiving unit 44 is further configured to obtain the data from the The data provider calculation engine receives a calculation result corresponding to the calculation request.
  • the generating unit 41 is further configured to encrypt the at least one parameter by one of the following encryption methods: a homomorphic encryption method, an obfuscation circuit method, and a difference Privacy methods.
  • the calculation model is a logistic regression model or a linear regression model
  • the encryption method is a homomorphic encryption method
  • the calculation result is a homomorphic ciphertext result
  • the obtaining unit 45 is configured to: decrypt the homomorphic ciphertext result using a private key corresponding to the computing model to obtain a plaintext prediction result of the computing model, wherein the private key is locally Pre-generated.
  • FIG. 5 illustrates a model-based prediction apparatus 500 according to an embodiment of the present specification.
  • the device is implemented on a data provider, the data provider stores first data, and the device includes:
  • the obtaining unit 51 is configured to obtain an encryption model from a data demander, wherein the data demander includes a pre-trained computing model, and the encryption model passes at least one parameter of the computing model by the data demander Generated by encryption;
  • the receiving unit 52 is configured to receive a calculation request about the first data and the encryption model from the data demander;
  • the calculation unit 53 is configured to perform calculation based on the first data using the encryption model according to the calculation request to obtain a calculation result;
  • the sending unit 54 is configured to send the calculation result to the data demander.
  • the encryption model is a first encryption model obtained by encrypting at least one parameter of an LR model or a linear regression model by a homomorphic encryption method
  • the calculation unit 53 is further configured to: in the first encryption model, perform a homomorphic calculation based on the first data using a public key of the data acquirer obtained in advance to obtain a homomorphic ciphertext result, wherein, The public key is generated in advance by the data demander for the calculation model.
  • the data provider is provided with a data provider calculation engine, wherein the calculation unit 53 is further configured to, based on the data provider calculation engine, based on The calculation request calculates the first data according to the encryption model to obtain a calculation result.
  • a computing device includes a memory and a processor
  • the memory stores executable code
  • the processor executes the executable code, the foregoing model-based prediction method is implemented.
  • a trusted third party is not required, and the data and model are held by the data partner, which avoids the privacy and security issues where the data and model are brought together, and also reduces mass data transmission. Brings transmission security risks and other problems.
  • This solution is a pure software solution. There are no additional hardware requirements other than the basic server, and no other hardware security holes will be introduced. And the docking cost is not high. The data provider and data demander only need docker to deploy a specific calculation engine to complete the calculation online. In addition, for different model characteristics, different model encryption methods are used to improve the accuracy of the calculation results.
  • RAM random access memory
  • ROM read-only memory
  • electrically programmable ROM electrically erasable programmable ROM
  • registers hard disks, removable disks, CD-ROMs, or in technical fields Any other form of storage medium known in the art.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Storage Device Security (AREA)

Abstract

本说明书实施例提供基于模型的预测方法和装置,一种所述方法在数据需求方执行,所述数据需求方包括预先训练好的计算模型,所述方法包括:通过对所述计算模型的至少一个参数进行加密,生成加密模型;将所述加密模型提供给数据提供方,其中,所述数据提供方存储有第一数据;向所述数据提供方发送关于所述第一数据和所述加密模型的计算请求;从所述数据提供方接收与所述计算请求对应的计算结果;以及基于所述计算结果,获取所述计算模型的明文预测结果。

Description

基于模型的预测方法和装置 技术领域
本说明书实施例涉及数据处理技术领域,更具体地,涉及基于模型的预测方法和装置。
背景技术
在数据分析、数据挖掘、经济预测等领域,经常使用模型对大数据进行处理,以分析、发现潜在的数据价值。在实际应用场景中,为了更准确地刻画目标群体或变量,通常需要使用测试数据进行训练,得到可以准确描述目标群体或变量的特征。然而不同的商户拥有的数据类型或特征往往是不健全的,通过单一的数据难以准确地刻画目标。为了得到更好的模型预测结果,通常商户间会选择数据合作的方式,结合不同的数据或特征标签共同完成模型计算,以求共赢。在多方数据合作过程中,又涉及数据安全和模型安全等问题。一方面,数据提供方不想输出自己的价值数据给数据需求方,泄漏私有数据;另一方面,模型中包含的特征标签等信息也是商户的私有数据,具有重要的商业价值,担忧数据合作过程中的模型安全问题,导致数据合作受阻。
针对上述问题,传统的解决方案包括,将数据和模型放置在一个可信第三方(如共创实验室等),进行模型预测。对可信第三方的数据出入进行严格控制,保证信息安全。
因此,需要一种更有效的基于模型的预测方案。
发明内容
本说明书实施例旨在提供一种更有效的基于模型的预测方案,以解决现有技术中的不足。
为实现上述目的,本说明书一个方面提供一种基于模型的预测方法,所述方法在数据需求方执行,所述数据需求方包括预先训练好的计算模型,所述方法包括:通过对所述计算模型的至少一个参数进行加密,生成加密模型;将所述加密模型提供给数据提供方,其中,所述数据提供方存储有第一数据;向所述数据提供方发送关于所述第一数据和所述加密模型的计算请求;从所述数据提供方接收与所述计算请求对应的计算结果;以及基于所述计算结果,获取所述计算模型的明文预测结果。
在一个实施例中,在所述基于模型的预测方法中,所述数据需求方安装有数据需求方计算引擎,其中,通过对所述计算模型的至少一个参数进行加密,生成加密模型包括,通过使用所述数据需求方计算引擎对所述计算模型的至少一个参数进行加密,生成加密模型。
在一个实施例中,在所述基于模型的预测方法中,所述数据提供方安装有数据提供方计算引擎,其中,从所述数据提供方接收与所述计算请求对应的计算结果包括,通过所述数据需求方计算引擎从所述数据提供方计算引擎接收所述计算结果。
在一个实施例中,在所述基于模型的预测方法中,对所述计算模型的至少一个参数进行加密包括,通过以下一种加密方法对所述至少一个参数进行加密:同态加密方法、混淆电路方法以及差分隐私方法。
在一个实施例中,在所述基于模型的预测方法中,所述计算模型为逻辑回归模型或线性回归模型,所述加密方法为同态加密方法,所述计算结果为同态密文结果,其中,基于所述计算结果,获取所述计算模型的明文预测结果包括:使用与所述计算模型对应的私钥对所述同态密文结果进行解密,以获取所述计算模型的明文预测结果,其中,所述私钥在本地预先生成。
在一个实施例中,在所述基于模型的预测方法中,所述计算模型为GBDT模型,所述加密方法为混淆电路方法。
在一个实施例中,在所述基于模型的预测方法中,所述计算模型为评分卡模型,所述加密方法为差分隐私方法。
本说明书另一方面提供一种基于模型的预测方法,所述方法在数据提供方执行,所述数据提供方存储有第一数据,所述方法包括:从数据需求方获取加密模型,其中,所述数据需求方包括预先训练好的计算模型,所述加密模型通过由所述数据需求方对所述计算模型的至少一个参数进行加密而生成;从所述数据需求方接收关于所述第一数据和所述加密模型的计算请求;根据所述计算请求,使用所述加密模型基于所述第一数据进行计算,以获取计算结果;以及将所述计算结果发送给所述数据需求方。
在一个实施例中,在所述基于模型的预测方法中,所述加密模型为通过同态加密方法所获取的第一加密模型,其中,根据所述计算请求,使用所述加密模型基于所述第一数据进行计算,以获取计算结果包括:在所述第一加密模型中,使用预先获取的所述数据需求方的公钥基于所述第一数据进行同态计算,以获取同态密文结果,其中,所述公 钥由所述数据需求方针对所述计算模型预先生成。
本说明书另一方面提供一种基于模型的预测装置,所述装置在数据需求方实施,所述数据需求方包括预先训练好的计算模型,所述装置包括:生成单元,配置为,通过对所述计算模型的至少一个参数进行加密,生成加密模型;提供单元,配置为,将所述加密模型提供给数据提供方,其中,所述数据提供方存储有第一数据;发送单元,配置为,向所述数据提供方发送关于所述第一数据和所述加密模型的计算请求;接收单元,配置为,从所述数据提供方接收与所述计算请求对应的计算结果;以及获取单元,配置为,基于所述计算结果,获取所述计算模型的明文预测结果。
在一个实施例中,在所述基于模型的预测装置中,所述数据需求方安装有数据需求方计算引擎,其中,所述生成单元还配置为,通过使用所述数据需求方计算引擎对所述计算模型的至少一个参数进行加密,生成加密模型。
在一个实施例中,在所述基于模型的预测装置中,所述数据提供方安装有数据提供方计算引擎,其中,所述接收单元还配置为,通过所述数据需求方计算引擎从所述数据提供方计算引擎接收所述计算结果。
在一个实施例中,在所述基于模型的预测装置中,所述生成单元还配置为,通过以下一种加密方法对所述至少一个参数进行加密:同态加密方法、混淆电路方法以及差分隐私方法。
在一个实施例中,在所述基于模型的预测装置中,所述计算模型为逻辑回归模型或线性回归模型,所述加密方法为同态加密方法,所述计算结果为同态密文结果,其中,基于所述计算结果,获取所述计算模型的明文预测结果包括:使用与所述计算模型对应的私钥对所述同态密文结果进行解密,以获取所述计算模型的明文预测结果,其中,所述私钥在本地预先生成。
本说明书另一方面提供一种基于模型的预测装置,所述装置在数据提供方实施,所述数据提供方存储有第一数据,所述装置包括:获取单元,配置为,从数据需求方获取加密模型,其中,所述数据需求方包括预先训练好的计算模型,所述加密模型通过由所述数据需求方对所述计算模型的至少一个参数进行加密而生成;接收单元,配置为,从所述数据需求方接收关于所述第一数据和所述加密模型的计算请求;计算单元,配置为,根据所述计算请求,使用所述加密模型基于所述第一数据进行计算,以获取计算结果;以及发送单元,配置为,将所述计算结果发送给所述数据需求方。
在一个实施例中,在所述基于模型的预测装置中,所述加密模型为通过同态加密方法获取的第一加密模型,其中,根据所述计算请求,使用所述加密模型基于所述第一数据进行计算,以获取计算结果包括:在所述第一加密模型中,使用预先获取的所述数据需求方的公钥基于所述第一数据进行同态计算,以获取同态密文结果,其中,所述公钥由所述数据需求方针对所述计算模型预先生成。
本说明书另一方面提供一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现上述基于模型的预测方法。
通过根据本说明书实施例的模型预测方案,不需要可信的第三方,数据和模型由数据合作方各自持有,规避了数据和模型集中在一起的隐私安全问题,也减少了大批量数据传输带来的传输安全隐患等问题。该方案为纯软件方案,除基本的服务器等,没有其他额外的硬件要求,不会引入其他硬件安全漏洞。并且对接成本不高。数据提供方和数据需求方只需要docker部署特定引擎,即可在线完成计算。另外,针对不同的模型特性,使用不同的模型加密方式,提高了计算结果的准确度。
附图说明
通过结合附图描述本说明书实施例,可以使得本说明书实施例更加清楚:
图1示出了根据本说明书实施例的执行模型预测的系统100的示意图;
图2示出了根据本说明书实施例的一种基于模型的预测方法的流程图;
图3示出根据本说明书实施例的一种基于模型的预测方法的流程图;
图4示出根据本说明书实施例的一种基于模型的预测装置400;以及
图5示出根据本说明书实施例的一种基于模型的预测装置500。
具体实施方式
下面将结合附图描述本说明书实施例。
图1示出了根据本说明书实施例的执行模型预测的系统100的示意图。如图1所示,系统100包括数据需求方11和数据提供方12。数据需求方11为模型拥有方,其包括训练好的计算模型,如图中所示,在数据需求方11,私有数据A包括训练好的模型的特 征标签等数据,计算逻辑(模型/规则)通过所述计算模型体现。数据提供方为数据拥有方,图中所示的私有数据B即为数据提供方拥有的数据,该数据可使用上述计算模型进行计算。如图中所示,在数据需求方11预先安装有例如安全计算引擎,在所述数据提供方12安装有例如安全计算引擎。所述数据需求方11和数据提供方12通过其各自的安全计算引擎执行例如安全计算和计算中的通信。具体是,数据需求方11在本地使用所述计算引擎对计算模型进行加密,也即对私有数据A进行加密,并将加密后的加密模型发送给数据提供方12,并向数据提供方12发送关于该加密模型和私有数据B的计算请求。数据提供方12在接收到计算请求之后,在其本地的计算引擎中使用接收的加密模型基于私有数据B进行计算,并通过计算引擎将计算结果发送给数据需求方11。数据需求方11基于上述计算结果获取最终的明文结果。
图1所示的系统100只是示意性的,根据本说明书实施例的系统100不限于图1所示的结构。例如,在数据需求方11和数据提供方12不必需安全计算引擎,而是可以包括任何计算软件,只要其能满足上述计算需求即可。另外,数据需求方11也可以包括需要进行模型预测的数据,即,数据需求方11可以同时作为另一个数据提供方,数据提供方12也可以拥有模型,即,数据提供方12可以同时作为另一个数据需求方。
图2示出了根据本说明书实施例的一种基于模型的预测方法的流程图。所述方法在数据需求方执行,所述数据需求方包括预先训练好的计算模型。所述方法包括:
在步骤S202,通过对所述计算模型的至少一个参数进行加密,生成加密模型;
在步骤S204,将所述加密模型提供给数据提供方,其中,所述数据提供方存储有第一数据;
在步骤S206,向所述数据提供方发送关于所述第一数据和所述加密模型的计算请求;
在步骤S208,从所述数据提供方接收与所述计算请求对应的计算结果;以及
在步骤S210,基于所述计算结果,获取所述计算模型的明文预测结果。
首先,在步骤S202,通过对所述计算模型的至少一个参数进行加密,生成加密模型。
在一个实施例中,所述计算模型例如是逻辑回归模型(LR模型),LR模型的预测函数如下文的公式(1)所示:
Figure PCTCN2019090761-appb-000001
其中ω、λ为模型系数,属于数据需求方。x为计算所需的输入,属于数据提供方的私有数据,即上述第一数据。这里ω、λ、x可以是单个数值,也可以是向量,下文中以ω和x都为包括多个数值的向量为例进行说明。
为了减少计算量,同时为了减少模型参数的泄漏风险,只对公式(1)中的ω参数进行同态加密计算,从而获取与ωx对应的加密模型。首先,数据需求方生成并存储用于进行上述同态加密的公钥和私钥,并使用公钥对ω中包括的各数值分别进行同态加密,从而获取与ω对应的第一加密向量。之后,数据需求方将ω替换成第一加密向量,生成加密模型。所述加密模型中包括第一加密向量、以及与ωx对应的计算规则,即将第一加密向量与第二加密向量(与x对应的同态加密向量)进行点积的运算规则。这里,加密模型以配置文件的形式表示,可以理解,加密模型不限于配置文件的形式,而可以为其它形式,例如脚本、可执行程序等。
所述计算模型不限于LR模型,所述加密方法也不限于同态加密方法。例如,在一个实施例中,所述计算模型为线性回归模型,数据需求方可同样地使用同态加密方法生成加密模型。在一个实施例中,所述计算模型为GBDT模型,数据需求方可通过混淆电路方法生成加密模型。在一个实施例中,所述计算模型为评分卡模型,数据需求方可通过差分隐私方法生成加密模型。评分卡模型最终结果只需输出分类,不需要精确的计算结果。从而可以使用差分隐私方法模糊化模型系数,加入微小噪声,而不会影响整体的决策分类。
在一个实施例中,如图1中所示,数据需求方预先安装有专用的安全计算引擎,数据需求方通过该计算引擎进行对所述参数的加密,以生成加密模型。
在步骤S204,将所述加密模型提供给数据提供方,其中,所述数据提供方存储有第一数据。数据需求方在生成所述加密模型之后,例如可通过本地的产品控制台将所述加密模型推送给数据提供方。将所述加密模型提供给数据提供方不限于上述方式,例如,数据需求方还可以通过硬盘存储的形式将存储有加密模型的硬盘提供给数据提供方。数据提供方接收所述加密模型之后,可在数据提供方部署该加密模型,以使用该加密模型进行本地的计算。例如,可将模型配置文件加载到一个进程中,然后通过调用该进程进行模型计算。这里,本领域技术人员可以理解,依据不同的计算环境,可以实施不同的部署方法,在此不进行详细说明。
在步骤S206,向所述数据提供方发送关于所述第一数据和所述加密模型的计算请求。这里,第一数据(即上文中的x)例如为特定对象(对象ID)的特征向量数据。所述计 算请求中可包括所述对象ID和所述加密模型的模型ID,或者,所述计算请求中可包括与所述对象ID对应的信息,例如对象ID的手机号、护照号等信息。从而数据提供方基于该计算请求,可获取所述对象ID和所述加密模型,并基于所述对象ID获取所述第一数据,从而可基于该计算请求进行计算。
在步骤S208,从所述数据提供方接收与所述计算请求对应的计算结果。
例如,在上述计算模型为LR模型的实施例中,所述加密模型是与公式(1)中的ωx对应的加密模型。数据提供方在接收上述关于第一数据和所述加密模型的计算请求之后,在该加密模型中,使用预先获取的所述数据需求方的公钥基于x进行同态计算,以获取同态密文结果,其中,所述公钥由所述数据需求方针对所述计算模型预先生成。该同态密文结果即与ωx对应的同态密文结果。之后,数据提供方将所述同态密文结果发送给所述数据需求方。从而所述数据需求方从数据提供方获取基于所述计算请求的同态密文结果。
在上述计算模型为GBDT模型的实施例中,加密方法为混淆电路方法。所述加密模型中的加密参数为所述GBDT模型中的至少一个参数的混淆值。所述数据提供方使用所述加密的GBDT模型基于所述第一数据进行计算,从而可获取混淆值结果。之后,数据提供方将该混淆值结果发送给数据需求方。从而,数据需求方从数据提供方获取基于所述计算请求的混淆值结果。
在上述计算模型为评分卡模型中,数据需求方通过差分隐私方法模糊该模型的系数,同时不影响模型的预测结果。从而,数据提供方直接将第一数据x输入该经过加密的评分卡模型,可基本准确地获取该评分卡模型的明文预测结果。之后,数据提供方将该明文预测结果发送给所述数据需求方。
在一个实施例中,如图1所示,在第一服务器和数据提供方都预先部署有安全计算引擎。在该情况中,由数据需求方的安全计算引擎从数据提供方的安全计算引擎接收与所述计算请求对应的计算结果。该计算引擎在计算出加密模型的计算结果之后,可对该计算结果附上加密模型的标识,并发送给所述数据需求方的安全计算引擎,从而可确保该计算结果的真实性。
在步骤S210,基于所述计算结果,获取所述计算模型的明文预测结果。
在所述计算结果为同态密文结果的实施例中,数据需求方使用上述在本地生成的与所述计算模型对应的私钥对所述同态密文结果进行解密,从而获取与该计算结果对应的 明文结果。根据同态加密原理,该明文结果等同于将ω和x直接点积所获得的值。在获得ωx的点积的明文值之后,数据需求方将该明文值代入公式(1)中进行计算,从而可最终获取上述LR模型对第一数据的预测结果。
在所述计算结果为混淆值结果的实施例中,数据需求方基于该混淆值结果获取其原始值,从而获取上述GBDT模型对第一数据的明文预测结果。
在所述计算结果为加密评分卡模型的明文预测结果的情况中,根据差分隐私加密原理,数据需求方可直接将该明文预测结果作为所述评分卡模型的明文预测结果。
在一个实施例中,所述数据需求方安装有数据需求方计算引擎,所述数据提供方安装有数据提供方计算引擎。例如数据需求方和数据提供方可分别通过Docker(一种开源的应用容器引擎)部署上述数据需求方计算引擎和数据提供方计算引擎,即数据需求方计算引擎和数据提供方计算引擎可理解为软件。其中所述数据需求方的计算在所述数据需求方计算引擎内进行,所述数据提供方的计算在所述数据提供方计算引擎内进行。例如,数据需求方对模型的加密计算、对密文结果的解密计算可通过数据需求方计算引擎进行,数据提供方基于所述加密模型对第一数据的计算可通过数据提供方计算引擎进行。另外,上述数据需求方计算引擎和数据提供方计算引擎还具备通信功能,例如,数据需求方可通过数据需求方计算引擎向所述数据提供方发送关于所述第一数据和所述加密模型的计算请求,数据提供方可通过数据提供方计算引擎向所述数据需求方发送与所述计算请求对应的计算结果。
图3示出根据本说明书实施例的一种基于模型的预测方法的流程图。所述方法在数据提供方执行,所述数据提供方存储有第一数据。所述方法包括以下步骤S302-S308。
在步骤S302,从数据需求方获取加密模型,其中,所述数据需求方包括预先训练好的计算模型,所述加密模型通过由所述数据需求方对所述计算模型的至少一个参数进行加密而生成。该步骤的具体实施可参考上文对图2中步骤S202和步骤S204的相应描述,在此不再赘述。
在步骤S304,从所述数据需求方接收关于所述第一数据和所述加密模型的计算请求。该步骤的具体实施可参考上文对图2中步骤S206的相应描述,在此不再赘述。
在步骤S306,根据所述计算请求,使用所述加密模型基于所述第一数据进行计算,以获取计算结果。该步骤的具体实施可参考上文对图2中步骤S208的相应描述,在此不再赘述。
在步骤S308,将所述计算结果发送给所述数据需求方。该步骤的具体实施可参考上文对图2中步骤S208的相应描述,在此不再赘述。
在一个实施例中,如上文对图2中步骤S208的相应描述,所述加密模型为通过同态加密方法对上述LR模型或线性回归模型的至少一个参数进行加密所获取的第一加密模型。其中,根据所述计算请求,使用所述加密模型基于所述第一数据进行计算,以获取计算结果包括:在所述第一加密模型中,使用预先获取的所述数据需求方的公钥基于所述第一数据进行同态计算,以获取同态密文结果,其中,所述公钥由所述数据需求方针对所述计算模型预先生成。所述预先获取的公钥例如是由所述数据需求方预先发送给所述数据提供方的,或者,所述数据需求方预先向数据提供方提供与所述公钥相关的信息,所述数据提供方预先基于该信息推导出述公钥,等等
图4示出根据本说明书实施例的一种基于模型的预测装置400。所述装置在数据需求方实施,所述数据需求方包括预先训练好的计算模型。所述装置包括:
生成单元41,配置为,通过对所述计算模型的至少一个参数进行加密,生成加密模型;
提供单元42,配置为,将所述加密模型提供给数据提供方,其中,所述数据提供方存储有第一数据;
发送单元43,配置为,向所述数据提供方发送关于所述第一数据和所述加密模的计算请求;
接收单元44,配置为,从所述数据提供方接收与所述计算请求对应的计算结果;以及
获取单元45,配置为,基于所述计算结果,获取所述计算模型的明文预测结果。
在一个实施例中,在所述基于模型的预测装置中,所述数据需求方安装有数据需求方计算引擎,其中,所述生成单元41还配置为,通过使用所述数据需求方计算引擎对所述计算模型的至少一个参数进行加密,生成加密模型。
在一个实施例中,在所述基于模型的预测装置中,所述数据提供方安装有数据提供方计算引擎,其中,所述接收单元44还配置为,通过所述数据需求方计算引擎从所述数据提供方计算引擎接收与所述计算请求对应的计算结果。
在一个实施例中,在所述基于模型的预测装置中,所述生成单元41还配置为,通过 以下一种加密方法对所述至少一个参数进行加密:同态加密方法、混淆电路方法以及差分隐私方法。
在一个实施例中,在所述基于模型的预测装置中,所述计算模型为逻辑回归模型或线性回归模型,所述加密方法为同态加密方法,所述计算结果为同态密文结果,其中,所述获取单元45配置为:使用与所述计算模型对应的私钥对所述同态密文结果进行解密,以获取所述计算模型的明文预测结果,其中,所述私钥在本地预先生成。
图5示出根据本说明书实施例的一种基于模型的预测装置500。所述装置在数据提供方实施,所述数据提供方存储有第一数据,所述装置包括:
获取单元51,配置为,从数据需求方获取加密模型,其中,所述数据需求方包括预先训练好的计算模型,所述加密模型通过由所述数据需求方对所述计算模型的至少一个参数进行加密而生成;
接收单元52,配置为,从所述数据需求方接收关于所述第一数据和所述加密模型的计算请求;
计算单元53,配置为,根据所述计算请求,使用所述加密模型基于所述第一数据进行计算,以获取计算结果;以及
发送单元54,配置为,将所述计算结果发送给所述数据需求方。
在一个实施例中,在所述基于模型的预测装置中,所述加密模型为通过同态加密方法对LR模型或线性回归模型的至少一个参数进行加密所获取的第一加密模型,其中,所述计算单元53还配置为:在所述第一加密模型中,使用预先获取的所述数据需求方的公钥基于所述第一数据进行同态计算,以获取同态密文结果,其中,所述公钥由所述数据需求方针对所述计算模型预先生成。
在一个实施例中,在所述基于模型的预测装置中,所述数据提供方安装有数据提供方计算引擎,其中,所述计算单元53还配置为,通过所述数据提供方计算引擎,基于所述计算请求,根据所述加密模型对所述第一数据进行计算,以获取计算结果。
本说明书另一方面如果一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现上述基于模型的预测方法。
通过根据本说明书实施例的模型预测方案,不需要可信的第三方,数据和模型由数 据合作方各自持有,规避了数据和模型集中在一起的隐私安全问题,也减少了大批量数据传输带来的传输安全隐患等问题。该方案为纯软件方案,除基本的服务器等,没有其他额外的硬件要求,不会引入其他硬件安全漏洞。并且对接成本不高。数据提供方和数据需求方只需要docker部署特定计算引擎,即可在线完成计算。另外,针对不同的模型特性,使用不同的模型加密方式,提高了计算结果的准确度。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本领域普通技术人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执轨道,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执轨道的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (19)

  1. 一种基于模型的预测方法,所述方法在数据需求方执行,所述数据需求方包括预先训练好的计算模型,所述方法包括:
    通过对所述计算模型的至少一个参数进行加密,生成加密模型;
    将所述加密模型提供给数据提供方,其中,所述数据提供方存储有第一数据;
    向所述数据提供方发送关于所述第一数据和所述加密模型的计算请求;
    从所述数据提供方接收与所述计算请求对应的计算结果;以及
    基于所述计算结果,获取所述计算模型的明文预测结果。
  2. 根据权利要求1所述的基于模型的预测方法,其中,所述数据需求方安装有数据需求方计算引擎,其中,通过对所述计算模型的至少一个参数进行加密,生成加密模型包括,通过使用所述数据需求方计算引擎对所述计算模型的至少一个参数进行加密,生成加密模型。
  3. 根据权利要求2所述的基于模型的预测方法,其中,所述数据提供方安装有数据提供方计算引擎,其中,从所述数据提供方接收与所述计算请求对应的计算结果包括,通过所述数据需求方计算引擎从所述数据提供方计算引擎接收所述计算结果。
  4. 根据权利要求1所述的基于模型的预测方法,其中,对所述计算模型的至少一个参数进行加密包括,通过以下一种加密方法对所述至少一个参数进行加密:同态加密方法、混淆电路方法以及差分隐私方法。
  5. 根据权利要求4所述的基于模型的预测方法,其中所述计算模型为逻辑回归模型或线性回归模型,所述加密方法为同态加密方法,所述计算结果为同态密文结果,
    其中,基于所述计算结果,获取所述计算模型的明文预测结果包括:
    使用与所述计算模型对应的私钥对所述同态密文结果进行解密,以获取所述计算模型的明文预测结果,其中,所述私钥在本地预先生成。
  6. 根据权利要求4所述的基于模型的预测方法,其中所述计算模型为GBDT模型,所述加密方法为混淆电路方法。
  7. 根据权利要求4所述的基于模型的预测方法,其中所述计算模型为评分卡模型,所述加密方法为差分隐私方法。
  8. 一种基于模型的预测方法,所述方法在数据提供方执行,所述数据提供方存储有第一数据,所述方法包括:
    从数据需求方获取加密模型,其中,所述数据需求方包括预先训练好的计算模型,所述加密模型通过由所述数据需求方对所述计算模型的至少一个参数进行加密而生成;
    从所述数据需求方接收关于所述第一数据和所述加密模型的计算请求;
    根据所述计算请求,使用所述加密模型基于所述第一数据进行计算,以获取计算结果;以及
    将所述计算结果发送给所述数据需求方。
  9. 根据权利要求8所述的基于模型的预测方法,其中,所述加密模型为通过权利要求5所述的方法所获取的第一加密模型,其中,根据所述计算请求,使用所述加密模型基于所述第一数据进行计算,以获取计算结果包括:在所述第一加密模型中,使用预先获取的所述数据需求方的公钥基于所述第一数据进行同态计算,以获取同态密文结果,其中,所述公钥由所述数据需求方针对所述计算模型预先生成。
  10. 一种基于模型的预测装置,所述装置在数据需求方实施,所述数据需求方包括预先训练好的计算模型,所述装置包括:
    生成单元,配置为,通过对所述计算模型的至少一个参数进行加密,生成加密模型;
    提供单元,配置为,将所述加密模型提供给数据提供方,其中,所述数据提供方存储有第一数据;
    发送单元,配置为,向所述数据提供方发送关于所述第一数据和所述加密模型的计算请求;
    接收单元,配置为,从所述数据提供方接收与所述计算请求对应的计算结果;以及
    获取单元,配置为,基于所述计算结果,获取所述计算模型的明文预测结果。
  11. 根据权利要求10所述的基于模型的预测装置,其中,所述数据需求方安装有数据需求方计算引擎,其中,所述生成单元还配置为,通过使用所述数据需求方计算引擎对所述计算模型的至少一个参数进行加密,生成加密模型。
  12. 根据权利要求11所述的基于模型的预测装置,其中,所述数据提供方安装有数据提供方计算引擎,其中,所述接收单元还配置为,通过所述数据需求方计算引擎从所述数据提供方计算引擎接收所述计算结果。
  13. 根据权利要求10所述的基于模型的预测装置,其中,所述生成单元还配置为,通过以下一种加密方法对所述至少一个参数进行加密:同态加密方法、混淆电路方法以及差分隐私方法。
  14. 根据权利要求13所述的基于模型的预测装置,其中所述计算模型为逻辑回归模型或线性回归模型,所述加密方法为同态加密方法,所述计算结果为同态密文结果,
    其中,所述获取单元还配置为:
    使用与所述计算模型对应的私钥对所述同态密文结果进行解密,以获取所述计算模 型的明文预测结果,其中,所述私钥在本地预先生成。
  15. 根据权利要求13所述的基于模型的预测装置,其中所述计算模型为GBDT模型,所述加密方法为混淆电路方法。
  16. 根据权利要求13所述的基于模型的预测装置,其中所述计算模型为评分卡模型,所述加密方法为差分隐私方法。
  17. 一种基于模型的预测装置,所述装置在数据提供方实施,所述数据提供方存储有第一数据,所述装置包括:
    获取单元,配置为,从数据需求方获取加密模型,其中,所述数据需求方包括预先训练好的计算模型,所述加密模型通过由所述数据需求方对所述计算模型的至少一个参数进行加密而生成;
    接收单元,配置为,从所述数据需求方接收关于所述第一数据和所述加密模型的计算请求;
    计算单元,配置为,根据所述计算请求,使用所述加密模型基于所述第一数据进行计算,以获取计算结果;以及
    发送单元,配置为,将所述计算结果发送给所述数据需求方。
  18. 根据权利要求17所述的基于模型的预测装置,其中,所述加密模型为通过权利要求5所述的方法所获取的第一加密模型,其中,所述计算单元还配置为:在所述第一加密模型中,使用预先获取的所述数据需求方的公钥基于所述第一数据进行同态计算,以获取同态密文结果,其中,所述公钥由所述数据需求方针对所述计算模型预先生成。
  19. 一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-9中任一项所述的方法。
PCT/CN2019/090761 2018-07-17 2019-06-11 基于模型的预测方法和装置 WO2020015478A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810785420.3A CN109033854B (zh) 2018-07-17 2018-07-17 基于模型的预测方法和装置
CN201810785420.3 2018-07-17

Publications (1)

Publication Number Publication Date
WO2020015478A1 true WO2020015478A1 (zh) 2020-01-23

Family

ID=64643504

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/090761 WO2020015478A1 (zh) 2018-07-17 2019-06-11 基于模型的预测方法和装置

Country Status (3)

Country Link
CN (1) CN109033854B (zh)
TW (1) TWI733106B (zh)
WO (1) WO2020015478A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112330048A (zh) * 2020-11-18 2021-02-05 中国光大银行股份有限公司 评分卡模型训练方法、装置、存储介质及电子装置
CN112668748A (zh) * 2020-09-16 2021-04-16 华控清交信息科技(北京)有限公司 一种预测方法、装置和电子设备

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109033854B (zh) * 2018-07-17 2020-06-09 阿里巴巴集团控股有限公司 基于模型的预测方法和装置
CN111435452B (zh) * 2019-01-11 2023-11-03 百度在线网络技术(北京)有限公司 模型训练方法、装置、设备和介质
EP3602379B1 (en) * 2019-01-11 2021-03-10 Advanced New Technologies Co., Ltd. A distributed multi-party security model training framework for privacy protection
CN110032893B (zh) * 2019-03-12 2021-09-28 创新先进技术有限公司 基于秘密分享的安全模型预测方法和装置
CN111797126B (zh) * 2019-04-08 2024-04-02 阿里巴巴集团控股有限公司 数据的处理方法、装置及设备
CN110210233B (zh) * 2019-04-19 2024-05-24 平安科技(深圳)有限公司 预测模型的联合构建方法、装置、存储介质及计算机设备
CN110113203B (zh) * 2019-04-30 2021-10-22 创新先进技术有限公司 一种用于加密模型的安全性评估的方法和设备
CN110163008B (zh) * 2019-04-30 2023-03-07 创新先进技术有限公司 一种部署的加密模型的安全性审计的方法和系统
CN110263919A (zh) * 2019-06-20 2019-09-20 福州数据技术研究院有限公司 一种基于医疗健康数据安全的反向传播神经网络训练方法
CN110457912B (zh) * 2019-07-01 2020-08-14 阿里巴巴集团控股有限公司 数据处理方法、装置和电子设备
CN110190946B (zh) * 2019-07-12 2021-09-03 之江实验室 一种基于同态加密的隐私保护多机构数据分类方法
CN110633805B (zh) * 2019-09-26 2024-04-26 深圳前海微众银行股份有限公司 纵向联邦学习系统优化方法、装置、设备及可读存储介质
CN110751330B (zh) * 2019-10-18 2022-07-22 支付宝(杭州)信息技术有限公司 一种基于树模型的预测方法和装置
CN111126628B (zh) * 2019-11-21 2021-03-02 支付宝(杭州)信息技术有限公司 在可信执行环境中训练gbdt模型的方法、装置及设备
CN111125727B (zh) * 2019-12-03 2021-05-14 支付宝(杭州)信息技术有限公司 混淆电路生成方法、预测结果确定方法、装置和电子设备
CN111045688A (zh) * 2019-12-06 2020-04-21 支付宝(杭州)信息技术有限公司 一种模型安全部署和预测的方法和系统
US11228423B2 (en) 2020-01-12 2022-01-18 Advanced New Technologies Co., Ltd. Method and device for security assessment of encryption models
CN111539769A (zh) * 2020-04-27 2020-08-14 支付宝(杭州)信息技术有限公司 基于差分隐私的异常检测模型的训练方法及装置
US20210350264A1 (en) * 2020-05-07 2021-11-11 Baidu Usa Llc Method for obfuscated ai model training for data processing accelerators
CN112231746B (zh) * 2020-09-10 2024-02-02 杭州锘崴信息科技有限公司 联合数据分析方法、装置、系统及计算机可读存储介质
CN114124343B (zh) * 2020-11-16 2023-11-14 神州融安数字科技(北京)有限公司 保护隐私的风险评分信息查询方法、装置、系统及设备
CN117235796B (zh) * 2023-09-27 2024-05-07 宁远县大麦电子商务有限公司 一种电子商务数据的处理方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102436489A (zh) * 2011-11-03 2012-05-02 北京数码大方科技有限公司 三维模型数据的处理方法、装置及系统
CN104780214A (zh) * 2015-04-20 2015-07-15 河海大学常州校区 基于云计算和三维打印的云制造系统及方法
CN109033854A (zh) * 2018-07-17 2018-12-18 阿里巴巴集团控股有限公司 基于模型的预测方法和装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2730048A2 (en) * 2011-07-07 2014-05-14 Verayo, Inc. Cryptographic security using fuzzy credentials for device and server communications
JP6926429B2 (ja) * 2016-09-27 2021-08-25 日本電気株式会社 データ処理装置、データ処理方法、およびプログラム
CN107124276B (zh) * 2017-04-07 2020-07-28 西安电子科技大学 一种安全的数据外包机器学习数据分析方法
CN108228830A (zh) * 2018-01-03 2018-06-29 广东工业大学 一种数据处理系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102436489A (zh) * 2011-11-03 2012-05-02 北京数码大方科技有限公司 三维模型数据的处理方法、装置及系统
CN104780214A (zh) * 2015-04-20 2015-07-15 河海大学常州校区 基于云计算和三维打印的云制造系统及方法
CN109033854A (zh) * 2018-07-17 2018-12-18 阿里巴巴集团控股有限公司 基于模型的预测方法和装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112668748A (zh) * 2020-09-16 2021-04-16 华控清交信息科技(北京)有限公司 一种预测方法、装置和电子设备
CN112668748B (zh) * 2020-09-16 2024-05-10 华控清交信息科技(北京)有限公司 一种预测方法、装置和电子设备
CN112330048A (zh) * 2020-11-18 2021-02-05 中国光大银行股份有限公司 评分卡模型训练方法、装置、存储介质及电子装置

Also Published As

Publication number Publication date
CN109033854B (zh) 2020-06-09
CN109033854A (zh) 2018-12-18
TW202006615A (zh) 2020-02-01
TWI733106B (zh) 2021-07-11

Similar Documents

Publication Publication Date Title
WO2020015478A1 (zh) 基于模型的预测方法和装置
CN111162896B (zh) 双方联合进行数据处理的方法及装置
CN110991655B (zh) 多方联合进行模型数据处理的方法及装置
WO2021114927A1 (zh) 保护隐私安全的多方联合进行特征评估的方法及装置
US11620109B2 (en) Converting a boolean masked value to an arithmetically masked value for cryptographic operations
CN112989368B (zh) 多方联合进行隐私数据处理的方法及装置
US10547444B2 (en) Cloud encryption key broker apparatuses, methods and systems
CN110912713B (zh) 多方联合进行模型数据处理的方法及装置
US20200007328A1 (en) Location aware cryptography
CN110633806A (zh) 纵向联邦学习系统优化方法、装置、设备及可读存储介质
CN111723404A (zh) 联合训练业务模型的方法及装置
CN109687952A (zh) 数据处理方法及其装置、电子装置及存储介质
Erkin et al. Privacy-preserving distributed clustering
CN112199709A (zh) 基于多方的隐私数据联合训练模型的方法和装置
CN111741020B (zh) 基于数据隐私保护的公共数据集确定方法、装置及系统
CN113221153B (zh) 图神经网络训练方法、装置、计算设备及存储介质
US11101981B2 (en) Generating a pseudorandom number based on a portion of shares used in a cryptographic operation
CN116502732B (zh) 基于可信执行环境的联邦学习方法以及系统
Chenli et al. Fairtrade: Efficient atomic exchange-based fair exchange protocol for digital data trading
CN115361196A (zh) 一种基于区块链网络的业务交互方法
Yao et al. Efficient federated learning aggregation protocol using approximate homomorphic encryption
CN114462626A (zh) 联邦模型训练方法、装置、终端设备以及存储介质
CN114547684A (zh) 一种保护隐私数据的多方联合训练树模型的方法及装置
Liu et al. Efficient and privacy-preserving ad conversion for v2x-assisted proximity marketing
CN113645022A (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: 19836983

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: 19836983

Country of ref document: EP

Kind code of ref document: A1