WO2024036809A1 - 一种生物特征提取方法及装置 - Google Patents

一种生物特征提取方法及装置 Download PDF

Info

Publication number
WO2024036809A1
WO2024036809A1 PCT/CN2022/135416 CN2022135416W WO2024036809A1 WO 2024036809 A1 WO2024036809 A1 WO 2024036809A1 CN 2022135416 W CN2022135416 W CN 2022135416W WO 2024036809 A1 WO2024036809 A1 WO 2024036809A1
Authority
WO
WIPO (PCT)
Prior art keywords
feature
module
convolution
activation
fragment
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/CN2022/135416
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.)
China Unionpay Co Ltd
Original Assignee
China Unionpay 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 China Unionpay Co Ltd filed Critical China Unionpay Co Ltd
Priority to US19/101,811 priority Critical patent/US20260051197A1/en
Publication of WO2024036809A1 publication Critical patent/WO2024036809A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration using local operators
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/12Fingerprints or palmprints
    • G06V40/1347Preprocessing; Feature extraction
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/18Eye characteristics, e.g. of the iris
    • G06V40/193Preprocessing; Feature extraction

Definitions

  • the embodiments of the present application relate to the field of artificial intelligence technology, and in particular, to a biological feature extraction method and device.
  • the terminal obtains registered biometric information, then performs feature extraction on the registered biometric information to obtain a biometric vector, and then saves the biometric vector and the corresponding registered identity information in in the database.
  • the terminal collects the biometric data to be recognized and extracts the corresponding biometric vector to be recognized. Then, the biometric vector to be identified is compared with each stored biometric vector to obtain the registered identity information corresponding to the matching biometric vector.
  • the biometric vector is calculated by a single device and stored in a single environment. There is a risk of leakage of the biometric vector, thus affecting the security of the data.
  • Embodiments of the present application provide a biometric feature extraction method and device to avoid leakage of biometric feature vectors and improve data security.
  • embodiments of the present application provide a biometric feature extraction method, which is applied to each node in the multi-party secure computing system.
  • the method includes:
  • the locally deployed first feature extraction model fragment and the second feature extraction model fragment deployed in at least one other node jointly perform feature extraction on the biological information fragment to obtain the corresponding biological feature vector fragment, where, The first feature extraction model fragment and at least one second feature extraction model fragment are obtained by fragmenting the biological feature extraction model.
  • the first feature extraction model slice includes a first convolution module, a first activation module, a first pooling module and a first fully connected module;
  • the first feature extraction model fragment deployed locally and the second feature extraction model fragment deployed in at least one other node jointly perform feature extraction on the biological information fragment to obtain the corresponding biological feature vector fragment include:
  • the first convolution module obtain the first convolution feature slice corresponding to the biological information slice;
  • the first pooled feature fragment is processed to obtain the biological feature vector fragment, wherein the first pooled feature fragment is based on the multiple pooled feature fragments. It is determined by the undistributed pooled feature shards in the slice and the received pooled feature shards distributed by other nodes.
  • the first feature extraction model shard also includes a first interaction module
  • the method further includes:
  • At least one pooled feature fragment among the plurality of pooled feature fragments is distributed to the at least one other node accordingly.
  • the first feature extraction model slice also includes a first random mask module
  • the first activation module and the first pooling module are combined with the second activation module and the second pooling module in at least one second feature extraction model slice to analyze the first convolutional feature points. Perform activation processing and pooling processing on the slice to obtain the first pooling processing result, including:
  • a mask recovery operation is performed on the first convolution feature slice to obtain the first convolution feature recovery result
  • a mask recovery operation is performed on the first activation feature fragment to obtain a first activation feature recovery result, wherein, The first activation feature fragment is determined based on undistributed activation feature fragments among the plurality of activation feature fragments and received activation feature fragments distributed by other nodes;
  • the first pooling module performs pooling processing on the first activation feature recovery result to obtain a first pooling processing result.
  • the first feature extraction model shard also includes a first interaction module
  • the method further includes:
  • At least one activated feature fragment among the plurality of activated feature fragments is distributed to the at least one other node accordingly.
  • a mask recovery operation is performed on the first convolution feature slice to obtain
  • the first convolution feature recovery results include:
  • a mask recovery operation is performed on the first convolution feature slice based on the obtained partial feature values to obtain a first convolution feature recovery result, wherein the first convolution feature
  • the restoration result is in a complementary relationship with the second convolution feature restoration result obtained by slicing the at least one second feature extraction model.
  • the first activation feature fragment among the plurality of activation feature fragments is Perform a mask recovery operation to obtain the first activation feature recovery results, including:
  • a mask recovery operation is performed on the first activation feature fragment based on the obtained partial feature values to obtain a first activation feature recovery result, wherein the first activation feature recovery result is the same as
  • the second activation feature recovery result obtained by slicing the at least one second feature extraction model is a complementary relationship.
  • the second feature extraction model slice includes a second convolution module
  • Obtaining the first convolution feature slice corresponding to the biological information slice through the first convolution module includes:
  • the biological information slices are jointly convolved to obtain the first Convolutional feature sharding.
  • the second feature extraction model slice includes a second convolution module
  • Obtaining the first convolution feature slice corresponding to the biological information slice through the first convolution module includes:
  • the biological information slices are convolved through the plaintext convolution kernel in the first convolution module to obtain the first convolution feature slices, where the The plaintext convolution kernel is the same as the plaintext convolution kernel in the second convolution module.
  • embodiments of the present application provide a biometric extraction device, which is applied to each node in the multi-party secure computing system, including:
  • a receiving unit configured to receive the biological information fragments sent by the terminal device, wherein the biological information fragments are obtained by the terminal device after fragmenting the acquired target biological information;
  • a processing unit configured to jointly perform feature extraction on the biological information fragments through a locally deployed first feature extraction model fragment and a second feature extraction model fragment deployed in at least one other node, and obtain a corresponding biological feature vector. Fragmentation, wherein the first feature extraction model fragmentation and at least one second feature extraction model fragmentation are obtained by fragmenting the biological feature extraction model.
  • the first feature extraction model slice includes a first convolution module, a first activation module, a first pooling module and a first fully connected module;
  • the processing unit is specifically used for:
  • the first convolution module obtain the first convolution feature slice corresponding to the biological information slice;
  • the first pooled feature fragment is processed to obtain the biological feature vector fragment, wherein the first pooled feature fragment is based on the multiple pooled feature fragments. It is determined by the undistributed pooled feature shards in the slice and the received pooled feature shards distributed by other nodes.
  • the first feature extraction model fragment also includes a first interaction module
  • the sending unit is specifically used for:
  • the first pooling processing result is fragmented and multiple pooled feature fragments are obtained, at least one pooled feature fragment among the multiple pooled feature fragments is obtained through the first interactive module.
  • the slices are distributed accordingly to the at least one other node.
  • the first feature extraction model slice also includes a first random mask module
  • the processing unit is specifically used for:
  • a mask recovery operation is performed on the first convolution feature slice to obtain the first convolution feature recovery result
  • a mask recovery operation is performed on the first activation feature fragment to obtain a first activation feature recovery result, wherein, The first activation feature fragment is determined based on undistributed activation feature fragments among the plurality of activation feature fragments and received activation feature fragments distributed by other nodes;
  • the first pooling module performs pooling processing on the first activation feature recovery result to obtain a first pooling processing result.
  • the first feature extraction model fragment also includes a first interaction module
  • the sending unit is specifically used for:
  • the first activation processing result is fragmented and a plurality of activation feature fragments are obtained, at least one activation feature fragment among the plurality of activation feature fragments is distributed correspondingly to the at least one other node.
  • processing unit is specifically used for:
  • a mask recovery operation is performed on the first convolution feature slice based on the obtained partial feature values to obtain a first convolution feature recovery result, wherein the first convolution feature
  • the restoration result is in a complementary relationship with the second convolution feature restoration result obtained by slicing the at least one second feature extraction model.
  • processing unit is specifically used for:
  • a mask recovery operation is performed on the first activation feature fragment based on the obtained partial feature values to obtain a first activation feature recovery result, wherein the first activation feature recovery result is the same as
  • the second activation feature recovery result obtained by slicing the at least one second feature extraction model is a complementary relationship.
  • the second feature extraction model slice includes a second convolution module
  • the processing unit is specifically used for:
  • the biological information slices are jointly convolved to obtain the first Convolutional feature sharding.
  • the second feature extraction model slice includes a second convolution module
  • the processing unit is specifically used for:
  • the biological information slices are convolved through the plaintext convolution kernel in the first convolution module to obtain the first convolution feature slices, where the The plaintext convolution kernel is the same as the plaintext convolution kernel in the second convolution module.
  • embodiments of the present application provide a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor.
  • the processor executes the program, the above biometric extraction method is implemented. A step of.
  • embodiments of the present application provide a computer-readable storage medium that stores a computer program that can be executed by a computer device.
  • the program When the program is run on the computer device, it causes the computer device to execute the above biometric extraction method. A step of.
  • inventions of the present application provide a computer program product.
  • the computer program product includes a computer program stored on a computer-readable storage medium.
  • the computer program includes program instructions. When the program instructions are executed by a computer device When, the computer device is caused to execute the steps of the above biometric feature extraction method.
  • multiple feature extraction model shards are obtained by fragmenting the biological feature extraction model, and the multiple feature extraction model shards are deployed in different nodes respectively, ensuring that the model parameters are not leaked. .
  • the target biological information is first fragmented to obtain multiple biological information fragments, and then the multiple biological information fragments are distributed to different nodes.
  • Each node is based on the locally deployed
  • the feature extraction model shards and the feature extraction model shards deployed by other nodes jointly extract features from the biological information shards and obtain the biometric feature vector shards, so that each node needs to combine with other nodes to perform biometric feature extraction, and each node Only part of the biometric feature vectors are obtained, which avoids the problem that the entire biometric feature vector is calculated by a single device and stored in a single environment, thus improving the security of biometric feature extraction.
  • the embodiments of this application provide a universal computing solution that can be applied to any type of feature extraction models and scenarios and has strong versatility.
  • Figure 1 is a schematic structural diagram of a system architecture provided by an embodiment of the present application.
  • Figure 2 is a schematic flow chart of a biometric feature extraction method provided by an embodiment of the present application.
  • Figure 3 is a schematic flow chart of a data preprocessing method provided by an embodiment of the present application.
  • Figure 4 is a schematic flow chart of a model parameter fragmentation processing method provided by an embodiment of the present application.
  • Figure 5 is a schematic structural diagram of a multi-party secure computing system provided by an embodiment of the present application.
  • Figure 6 is a schematic flow chart of a biometric feature extraction method provided by an embodiment of the present application.
  • Figure 7 is a schematic flow chart of a convolution processing method provided by an embodiment of the present application.
  • Figure 8 is a schematic flow chart of another convolution processing method provided by an embodiment of the present application.
  • FIG. 9 is a schematic flowchart of an activation processing method provided by an embodiment of the present application.
  • Figure 10 is a schematic flow chart of a pooling processing method provided by an embodiment of the present application.
  • Figure 11 is a schematic flow chart of a biometric feature extraction method provided by an embodiment of the present application.
  • Figure 12 is a schematic structural diagram of a biometric extraction device provided by an embodiment of the present application.
  • Figure 13 is a schematic structural diagram of a computer device provided by an embodiment of the present application.
  • the system architecture includes a terminal device 101 and a multi-party secure computing system 102.
  • the multi-party secure computing system 102 includes multiple nodes, and the multiple nodes include nodes. 102 ⁇ 1, nodes 102 ⁇ 2, ..., nodes 102 ⁇ N, where N is an integer greater than 0.
  • the terminal device 101 is pre-installed with target applications that require biometric information recognition, such as payment applications, instant messaging applications, video applications, shopping applications, etc. Each terminal device has the function of collecting biological information.
  • the biological information includes but is not limited to facial information, fingerprint information, and iris information.
  • the terminal device 101 may be a smartphone, a tablet computer, a notebook computer, a desktop computer, a smart home appliance, a smart voice interaction device, a smart vehicle-mounted device, etc., but is not limited thereto.
  • At least one node among the multiple nodes is a backend server of the target application, and other nodes are nodes that cooperate in biometric feature extraction and biometric information recognition.
  • a node can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers. It can also provide cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, and middleware. Cloud servers that provide basic cloud computing services such as software services, domain name services, security services, Content Delivery Network (CDN), and big data and artificial intelligence platforms.
  • the terminal device and the corresponding node can be connected directly or indirectly through wired or wireless communication methods, and any two nodes can be connected directly or indirectly through wired or wireless communication methods, which is not limited in this application.
  • biometric extraction method in the embodiment of the present application can be applied to payment scenarios, login scenarios, identity verification scenarios, etc.
  • facial information, fingerprint information, iris information and other related biological information data are involved.
  • the embodiments in the present application are applied to specific products or technologies, it is necessary to obtain The user gives permission or consent, and the collection, use and processing of relevant data need to comply with relevant laws, regulations and standards of relevant countries and regions.
  • the embodiment of the present application provides a process of a biometric extraction method, as shown in Figure 2.
  • the process of the method is executed by a computer device, and the computer device can be as shown in Figure 1 node, including the following steps:
  • Step S201 Receive the biometric information fragments sent by the terminal device.
  • biological information fragmentation is obtained by fragmenting the acquired target biological information by the terminal device.
  • the target biometric information includes but is not limited to face images, fingerprint images, and iris images; the target biometric information corresponds to a biometric identifier, which can be a name, a unique number, etc., such as a user ID.
  • each obtained biological information fragment also corresponds to the biological identifier.
  • the terminal device after collecting the original biological information, pre-processes the original biological information to obtain the target biological information. Specifically, after normalizing the original biological information, the original biological information is converted into a three-dimensional matrix to obtain the target biological information.
  • the terminal device collects the original face image, it first normalizes the pixel value of the original face image to a floating point number between 0 and 1. Then the size of the original face image is adjusted to (224, 224). The original face image is then converted into a three-dimensional matrix to obtain the target biological information.
  • biological information slice 1 Define a random three-dimensional matrix with the same size as the target biological information as biological information slice 1. Subtract the three-dimensional matrix corresponding to the target biological information from biological information slice A to obtain biological information slice 2. Both biological information fragment 1 and biological information fragment 2 are three-dimensional matrices.
  • the embodiments of the present application are not limited to dividing the target biological information into two biological information fragments.
  • the target biological information can also be divided into other numbers (3, 4, etc.) of biological information fragments. Therefore, this application does not make specific limitations.
  • Step S202 Jointly perform feature extraction on the biological information fragments through the locally deployed first feature extraction model fragment and the second feature extraction model fragment deployed in at least one other node to obtain corresponding biological feature vector fragments.
  • the first feature extraction model fragment and at least one second feature extraction model fragment are obtained by fragmenting the biological characteristic extraction model, wherein the biological characteristic extraction model may be obtained from a multi-party secure computing system.
  • Any node can be pre-trained, or it can be pre-trained by a terminal device or other device.
  • the training process of the biometric extraction model is specifically as follows:
  • Sample preparation stage First collect a collection of original face images for model training, and normalize the pixel value of each original face image to a floating point number between 0 and 1. This operation is beneficial to the convergence of model training. Then perform data augmentation on the original face image set, such as random horizontal flipping, miscut transformation, etc. This operation is helpful to improve the generalization ability of the training model. Then adjust the size of each original face image to (224, 224) to obtain a sample image set.
  • Model training stage Use a small batch of sample images to perform iterative stochastic gradient descent training on the biometric extraction model to be trained, where the learning rate is 0.1, the momentum is 0.9, and the loss function is a multi-category cross loss function.
  • a small batch of sample images is selected from the sample image collection, and then the small batch of sample images are shuffled and then the biometric extraction model to be trained is input.
  • the biometric feature extraction model to be trained processes small batches of sample images to obtain feature extraction results. Then based on the feature extraction results and loss function, the loss value of this iterative process is determined. The loss value is used to adjust the parameters of the biometric extraction model to be trained, and after the parameter adjustment, enter the next iteration process.
  • the trained biometric extraction model corresponds to a model file, and the model file ends with "xxx. h5" format, the file content includes the entire structure of the model and the weight parameter values of each layer of the model.
  • fragmenting the biometric extraction model essentially refers to fragmenting the model parameters of the biometric extraction model.
  • the model parameters of the biometric extraction model can be represented by a multi-dimensional matrix.
  • the model parameters of the biometric extraction model are fragmented to obtain multiple model parameter fragment files, and then each model parameter fragment file is distributed to a node.
  • the node saves the model parameter shard file and deploys the corresponding feature extraction model shard based on the model parameter shard file.
  • the model parameter loader in the node reads the locally saved model parameter fragment file, and then loads the model parameter fragments in the model parameter fragment file to the model runner.
  • the model runner jointly performs feature extraction on biological information fragments through local operations and interaction with other nodes to obtain corresponding biological feature vector fragments.
  • the equipment set for model training includes a model training module and a fragmentation module.
  • the model training module obtains model parameters x, which are represented by a multidimensional matrix. Fragment the model parameters x through the fragmentation module get and Among them, A represents the arithmetic fragment type (Arithmetic), which is a real value; i represents the index number of the fragment; Represents arithmetic type fragmentation of model parameters x; Represents the first model parameter fragmentation, Represents the second model parameter sharding. and x is a multidimensional matrix with the same size (shape), and Added together, the model parameters x can be obtained. In the process of fragmentation, is generated using random numbers, and then subtracted from the model parameter x get
  • model parameter fragments are usually calculated moduloly, specifically to meet the following formula (1):
  • the first model parameter fragment is sent to node 1, and node 1 saves the first model parameter fragment in the mysql database.
  • multiple feature extraction model shards are obtained by fragmenting the biological feature extraction model, and the multiple feature extraction model shards are deployed in different nodes respectively, ensuring that the model parameters are not leaked. .
  • the target biological information is first fragmented to obtain multiple biological information fragments, and then the multiple biological information fragments are distributed to different nodes.
  • Each node is based on the locally deployed
  • the feature extraction model shards and the feature extraction model shards deployed by other nodes jointly extract features from the biological information shards and obtain the biometric feature vector shards, so that each node needs to combine with other nodes to perform biometric feature extraction, and each node Only part of the biometric feature vectors are obtained, which avoids the problem that the entire biometric feature vector is calculated by a single device and stored in a single environment, thus improving the security of biometric feature extraction.
  • the embodiments of this application provide a universal computing solution that can be applied to any type of feature extraction models and scenarios and has strong versatility.
  • the first feature extraction model slice includes a first convolution module, a first activation module, a first pooling module and a first fully connected module.
  • a first random mask module is added to each module that uses mask technology for feature extraction, or a general first random mask module can be added to the first feature extraction model shard. In this regard, this application No specific restrictions are made.
  • the second feature extraction model slice includes a second convolution module, a second activation module, a second pooling module and a second fully connected module.
  • a second random mask module is added to each module that uses mask technology for feature extraction, or a general second random mask module can be added to the second feature extraction model sharding. In this regard, this application No specific restrictions are made.
  • the multi-party secure computing system includes node 1 and node 2, where node 1 includes a first feature extraction model slice, and the first feature extraction model slice includes a first convolution module,
  • the first activation module, the first pooling module and the first fully connected module each include a first interaction module, and the first activation module and the first pooling module also include a first random mask module.
  • Node 2 includes a second feature extraction model slice.
  • the second feature extraction model slice includes a second convolution module, a second activation module, a second pooling module and a second fully connected module.
  • Each module includes a second The interaction module, the second activation module and the second pooling module also include a second random mask module.
  • the process of jointly performing feature extraction on biological information fragments through a locally deployed first feature extraction model fragment and a second feature extraction model fragment deployed in at least one other node is as shown in Figure 6. Includes the following steps:
  • Step S601 Obtain the first convolution feature slice corresponding to the biological information slice through the first convolution module.
  • the plaintext convolution kernel in the biometric extraction model is divided into multiple fragmented convolution kernels, and each fragmented convolution kernel is located in a convolution kernel. module. Therefore, when performing feature extraction, the biological information slices are jointly convolved through the fragmented convolution kernel in the first convolution module and at least one fragmented convolution kernel in the second convolution module to obtain The first convolutional feature slice.
  • the first convolution module and the second convolution module interact through the first interaction module and the second interaction module to implement joint convolution processing and obtain the first convolution feature slice.
  • the plaintext convolution kernel in the biometric extraction model is divided into fragmented convolution kernel 1 and fragmented convolution kernel 2, where , the fragmented convolution kernel 1 is located in the first convolution module, and the fragmented convolution kernel 2 is located in the second convolution module.
  • Product processing is performed to obtain the first convolutional feature slice.
  • the second convolution module interacts with the first convolution module and combines the fragmented convolution kernel 1 and the fragmented convolution kernel 2 to convolve the biological information slice 2.
  • Product processing is performed to obtain the second convolution feature slice.
  • both the first convolution module and the second convolution module include the plaintext convolution kernel in the biometric extraction model, that is, the plaintext convolution kernel in the first convolution module and the second convolution The plaintext convolution kernels in the module are the same. Then, the biological information slices are convolved through the plaintext convolution kernel in the first convolution module to obtain the first convolution feature slices.
  • both the first convolution module and the second convolution module include the plaintext convolution kernel in the biological feature extraction model.
  • Input the biological information slice 1 into the first convolution module, and the first convolution module performs convolution processing on the biological information slice 1 through the plaintext convolution kernel to obtain the first convolution feature slice.
  • Input the biological information slice 2 into the second convolution module, and the second convolution module performs convolution processing on the biological information slice 2 through the plaintext convolution kernel to obtain the second convolution feature slice.
  • Step S602 combine the first activation module and the first pooling module, and the second activation module and the second pooling module in at least one second feature extraction model slice to perform activation processing on the first convolution feature slice and Pooling processing is performed to obtain the first pooling processing result.
  • nonlinear activation processing is performed on the first convolution feature slice through an activation function, where the activation function can be a Sigmoid function, a TanH function, a ReLU function, etc.
  • Pooling processing includes average pooling processing, maximum pooling processing, etc.
  • a mask recovery operation is performed on the first convolution feature slice to obtain the first convolution Feature recovery results.
  • the second convolution feature slice is output by the second convolution module.
  • the first interactive module some feature values in each second convolution feature slice are obtained, where some feature values in the second convolution feature slice are randomly selected from the second convolution feature slice.
  • a mask recovery operation is performed on the first convolution feature slice based on the obtained partial feature values to obtain a first convolution feature recovery result, wherein the first convolution feature recovery result is consistent with at least one
  • the second convolution feature recovery result obtained by slicing the second feature extraction model is a complementary relationship.
  • the obtained partial feature values are used to perform a mask recovery operation on the feature values at corresponding positions of the first convolution feature slice, and the plaintext feature values at the corresponding positions are obtained (which can also be called restored feature values).
  • the unrecovered features in the first convolutional feature slice are represented by 0 and are regarded as masks.
  • Other nodes also perform the mask recovery operation to obtain the second convolution feature recovery result.
  • the position of the plaintext feature value in the second convolution feature recovery result is different from the position of the plaintext feature value in the first convolution feature recovery result, and
  • the first convolution feature recovery result and at least one second convolution feature recovery result have a complementary relationship, that is, the first convolution feature recovery result and the at least one second convolution feature recovery result can be combined to obtain plaintext state convolution features.
  • the first activation module performs activation processing on the first convolution feature recovery result to obtain the first activation processing result, and performs fragmentation processing on the first activation processing result to obtain multiple activation feature slices.
  • At least one activated feature fragment of the plurality of activated feature fragments is distributed to at least one other node accordingly.
  • an activation feature fragment distributed by at least one other node is received, and then the first activation feature fragment is determined based on the undistributed activation feature fragment and the received activation feature fragment distributed by at least one other node. .
  • the first convolution module outputs the first convolution feature slice to the first activation module, and the first activation module obtains it from the second activation module through the first interaction module. Part of the feature values in the second convolutional feature slice.
  • a mask recovery operation is performed on the first convolution feature slice based on the obtained partial feature values to obtain the first convolution feature recovery result, where the 4x4 corresponding to the first convolution feature recovery result is In the matrix, the eigenvalues of P 11 , P 13 , P 22 , P 23 , P 31 , P 32 , P 34 , and P 43 are recovery eigenvalues.
  • the eigenvalues of P 12 , P 14 , P 21 , P 24 , P 33 , P 41 , P 42 , and P 44 are all 0 and are regarded as masks, where P 11 represents the first row and first column in the matrix, and others And so on.
  • the first activation module performs activation processing on the first convolution feature recovery result to obtain the first activation processing result, and performs fragmentation processing on the first activation processing result to obtain two activation feature slices, namely activation feature slices. 1 and activate feature fragment 2, distribute activated feature fragment 1 to node 2.
  • the second convolution module outputs the second convolution feature slice to the second activation module, and the second activation module obtains part of the first convolution feature slice from the first activation module through the second interaction module.
  • Eigenvalues Through the second random mask module, a mask recovery operation is performed on the second convolution feature slice based on the obtained partial feature values to obtain the second convolution feature recovery result, where the 4x4 corresponding to the second convolution feature recovery result is In the matrix, the eigenvalues of Q 11 , Q 13 , Q 22 , Q 23 , Q 31 , Q 32 , Q 34 , and Q 43 are all 0 and are regarded as masks.
  • the eigenvalues of Q 12 , Q 14 , Q 21 , Q 24 , Q 33 , Q 41 , Q 42 , and Q 44 are the recovered eigenvalues, where Q 11 represents the first row and first column in the matrix, and so on.
  • the first convolution feature recovery result and the second convolution feature recovery result are strictly complementary.
  • the first convolution feature recovery result is activated through the second activation module to obtain the second activation processing result, and the second activation processing result is fragmented to obtain two activation feature slices, namely activation feature slices. 3 and activate feature sharding 4. Distribute activation feature shard 4 to node 1.
  • Node 1 combines the activation feature fragment 1 and the received activation feature fragment 4 to obtain the first activation feature fragment, and inputs the first activation feature fragment into the first pooling module.
  • Node 2 combines the activated feature fragment 3 and the received activated feature fragment 2 to obtain a second activated feature fragment, and inputs the second activated feature fragment into the second pooling module.
  • the plain-ciphertext mixed operation is performed based on the mask in the activation module, which ensures that the activation module in each node can only restore part of the feature value, avoiding a single device to obtain a complete feature vector, thereby improving feature extraction. Data security during the process.
  • a mask recovery operation is performed on the first activation feature fragment to obtain the first activation feature recovery result. Then, the first activation feature recovery result is pooled through the first pooling module to obtain the first pooling result.
  • first interaction module partial feature values in each second activation feature fragment are obtained; through the first random mask module, a mask recovery operation is performed on the first activation feature fragment based on the obtained partial feature values. , obtaining a first activation feature recovery result, wherein the first activation feature recovery result is in a complementary relationship with the second activation feature recovery result obtained by slicing at least one second feature extraction model.
  • the obtained partial feature values to perform a mask recovery operation on the feature values at the corresponding positions of the first activated feature fragment, and obtain the plaintext feature values at the corresponding positions (which can also be called restored feature values).
  • the unrecovered features in the first activated feature fragment are represented by 0 and regarded as masks.
  • Other nodes also perform the mask recovery operation to obtain the second activation feature recovery result.
  • the position of the plaintext feature value in the second activation feature recovery result is different from the position of the plaintext feature value in the first activation feature recovery result, and the first activation feature recovery result is different.
  • the feature recovery result and the at least one second activation feature recovery result have a complementary relationship, that is, the combination of the first activation feature recovery result and the at least one second activation feature recovery result can obtain the activation feature of the plaintext state.
  • the first pooling module performs pooling processing on the first activation feature recovery result to obtain the first pooling processing result.
  • Step S603 perform fragmentation processing on the first pooling processing result to obtain multiple pooling feature fragments.
  • At least one pooled feature fragment among the plurality of pooled feature fragments is distributed to at least one other node accordingly.
  • the pooled feature fragment distributed by at least one other node is received, and then the first pool is determined based on the undistributed pooled feature fragment and the received pooled feature fragment distributed by at least one other node.
  • Feature sharding
  • the first pooling module obtains some feature values in the second activation feature fragment from the second pooling module through the first interaction module.
  • a mask recovery operation is performed on the first activation feature fragment based on the obtained partial feature values to obtain the first activation feature recovery result, where, in the 4x4 matrix corresponding to the first activation feature recovery result,
  • the eigenvalues of P 11 , P 13 , P 22 , P 23 , P 31 , P 32 , P 34 , and P 43 are recovery eigenvalues.
  • the eigenvalues of P 12 , P 14 , P 21 , P 24 , P 33 , P 41 , P 42 , and P 44 are all 0 and are regarded as masks.
  • the first pooling module performs maximum pooling processing on the first activation feature recovery result to obtain the first pooling processing result, and fragments the first pooling processing result to obtain two pooled feature fragments, respectively Pooled feature shard 1 and pooled feature shard 2. Distribute pooled feature shard 1 to node 2.
  • the second pooling module obtains some feature values in the first activation feature fragment from the first pooling module through the second interaction module.
  • a mask recovery operation is performed on the second activation feature fragment based on the obtained partial feature values to obtain the second activation feature recovery result, where, in the 4x4 matrix corresponding to the second activation feature recovery result,
  • the eigenvalues of Q 11 , Q 13 , Q 22 , Q 23 , Q 31 , Q 32 , Q 34 , and Q 43 are all 0 and are regarded as masks.
  • the eigenvalues of Q 12 , Q 14 , Q 21 , Q 24 , Q 33 , Q 41 , Q 42 , and Q 44 are recovery eigenvalues.
  • the second pooling module performs maximum pooling processing on the second activation feature recovery result to obtain the second pooling processing result, and fragments the second pooling processing result to obtain two pooled feature fragments, respectively Pooled feature shard 3 and pooled feature shard 4. Distribute pooled feature shard 4 to node 2.
  • Node 1 combines the pooled feature fragment 1 and the received pooled feature fragment 4 to obtain the first pooled feature fragment, and inputs the first pooled feature fragment into the first fully connected module.
  • Node 2 combines the pooled feature fragment 3 and the received pooled feature fragment 2 to obtain the second pooled feature fragment, and inputs the second pooled feature fragment into the second fully connected module.
  • Step S604 Process the first pooled feature slices through the first fully connected module to obtain biometric feature vector slices.
  • a vector inner product operation is performed on the first pooled feature fragment based on the weight parameter to obtain the biometric feature vector fragment.
  • the plain-ciphertext mixed operation is performed based on the mask in the pooling module, which ensures that the pooling module in each node can only recover part of the feature values, preventing a single device from obtaining a complete feature vector, thereby improving Data security during feature extraction.
  • the biometric vector fragments corresponding to the biometric information fragments are saved, and the biometric vector fragments are used for biometric information recognition.
  • the terminal device collects the biological information to be identified, and then fragments the biological information to be identified to obtain multiple pieces of information to be identified. Send multiple pieces of information to be identified to multiple nodes. Each node uses the biometric extraction method described above to obtain a feature vector fragment to be identified corresponding to the information fragment to be identified.
  • each node calculates the similarity between the feature vector fragment to be recognized and each saved biometric feature vector fragment, and selects the biometric feature vector with the greatest similarity and the corresponding maximum similarity.
  • One node among multiple nodes aggregates the maximum similarity obtained by all nodes to obtain the target similarity. If the target similarity is greater than the preset threshold, it is determined that the biometric information recognition result of the biometric information to be recognized is recognition pass; otherwise, it is determined that the biometric information recognition result of the biometric information to be recognized is recognition failure; and then the biometric information recognition result is sent to the terminal. equipment.
  • the feature vector fragment to be recognized corresponds to a biometric identifier
  • each node selects a corresponding target feature vector fragment from multiple saved biometric feature vector fragments based on the biometric identifier. Then calculate the fragment similarity between the feature vector fragments to be identified and the target feature vector fragments.
  • One node among multiple nodes aggregates the fragment similarities obtained by all nodes to obtain the target similarity. If the target similarity is greater than the preset threshold, it is determined that the biometric information recognition result of the biometric information to be recognized is recognition pass; otherwise, it is determined that the biometric information recognition result of the biometric information to be recognized is recognition failure; and then the biometric information recognition result is sent to the terminal. equipment.
  • biometric information identification methods can be applied to payment scenarios, login scenarios, verification scenarios, etc.
  • multiple feature extraction model shards are obtained by fragmenting the biological feature extraction model, and the multiple feature extraction model shards are deployed in different nodes respectively, ensuring that the model parameters are not leaked. .
  • Feature extraction is performed on biological information fragments through multiple feature extraction model fragments to obtain biological feature vector fragments.
  • multiple biometric vector fragments are combined for biometric information recognition, which avoids using a single device for feature extraction and biometric information recognition, thereby improving the security of biometric feature extraction.
  • a biometric extraction method provided by the embodiments of the present application is introduced below in conjunction with specific implementation scenarios.
  • the process of this method can be executed by a terminal device and a multi-party secure computing system, where the multi-party secure computing system Including node 1 and node 2, including the following steps, as shown in Figure 11:
  • Step S1101 The terminal device collects original face images.
  • Step S1102 The terminal device converts the original face image into a three-dimensional matrix D.
  • Step S1103 Determine whether there is a human face. If so, execute step S1104; otherwise, execute step S1111.
  • Step S1104 The terminal device performs fragmentation processing on the three-dimensional matrix D to obtain image slices S_0 and image slices S_1.
  • Step S1105 Node 1 loads image fragment S_0.
  • Step S1106 Node 1 uses the feature extraction operator deployed locally and the feature extraction operator deployed in node 2 to extract features from the image slice S_0.
  • Node 1 and node 2 perform interactive calculations to jointly deploy the feature extraction operator deployed locally and the feature extraction operator deployed in node 2 to extract features from the image slice S_0.
  • Step S1107 Node 1 outputs feature vector fragment FS_0.
  • Step S1108 Node 2 loads image fragment S_1.
  • Step S1109 Node 2 uses the locally deployed feature extraction operator and the feature extraction operator deployed in node 1 to extract features from the image slice S_1.
  • Step S1110 Node 2 outputs feature vector fragment FS_1.
  • Step S1111 The terminal device reports an error indicating that there is no face information.
  • multiple feature extraction model shards are obtained by fragmenting the biological feature extraction model, and the multiple feature extraction model shards are deployed in different nodes respectively, ensuring that the model parameters are not leaked. .
  • the target biological information is first fragmented to obtain multiple biological information fragments, and then the multiple biological information fragments are distributed to different nodes.
  • Each node is based on the locally deployed
  • the feature extraction model shards and the feature extraction model shards deployed by other nodes jointly extract features from the biological information shards and obtain the biometric feature vector shards, so that each node needs to combine with other nodes to perform biometric feature extraction, and each node Only part of the biometric feature vectors are obtained, which avoids the problem that the entire biometric feature vector is calculated by a single device and stored in a single environment, thus improving the security of biometric feature extraction.
  • the embodiments of this application provide a universal computing solution that can be applied to any type of feature extraction models and scenarios and has strong versatility.
  • the embodiment of the present application provides a schematic structural diagram of a biometric extraction device, which is applied to each node in the multi-party secure computing system.
  • the device 1200 includes:
  • the receiving unit 1201 is configured to receive the biological information fragments sent by the terminal device, wherein the biological information fragments are obtained by the terminal device after fragmenting the acquired target biological information;
  • the processing unit 1202 is configured to jointly perform feature extraction on the biological information fragments through the locally deployed first feature extraction model fragment and the second feature extraction model fragment deployed in at least one other node, and obtain corresponding biological characteristics.
  • Vector fragmentation wherein the first feature extraction model fragment and at least one second feature extraction model fragment are obtained by fragmenting the biological feature extraction model.
  • the first feature extraction model slice includes a first convolution module, a first activation module, a first pooling module and a first fully connected module;
  • the processing unit 1202 is specifically used to:
  • the first convolution module obtain the first convolution feature slice corresponding to the biological information slice;
  • the first pooled feature fragment is processed to obtain the biological feature vector fragment, wherein the first pooled feature fragment is based on the multiple pooled feature fragments. It is determined by the undistributed pooled feature shards in the slice and the received pooled feature shards distributed by other nodes.
  • the first feature extraction model fragment also includes a first interaction module
  • the sending unit 1203 is specifically used for:
  • the first pooling processing result is fragmented and multiple pooled feature fragments are obtained, at least one pooled feature fragment among the multiple pooled feature fragments is obtained through the first interactive module.
  • the slices are distributed accordingly to the at least one other node.
  • the first feature extraction model slice also includes a first random mask module
  • the processing unit 1202 is specifically used to:
  • a mask recovery operation is performed on the first convolution feature slice to obtain the first convolution feature recovery result
  • a mask recovery operation is performed on the first activation feature fragment to obtain a first activation feature recovery result, wherein, The first activation feature fragment is determined based on undistributed activation feature fragments among the plurality of activation feature fragments and received activation feature fragments distributed by other nodes;
  • the first pooling module performs pooling processing on the first activation feature recovery result to obtain a first pooling processing result.
  • the first feature extraction model fragment also includes a first interaction module
  • the sending unit 1203 is specifically used for:
  • the first activation processing result is fragmented and a plurality of activation feature fragments are obtained, at least one activation feature fragment among the plurality of activation feature fragments is distributed correspondingly to the at least one other node.
  • processing unit 1202 is specifically used to:
  • a mask recovery operation is performed on the first convolution feature slice based on the obtained partial feature values to obtain a first convolution feature recovery result, wherein the first convolution feature
  • the restoration result is in a complementary relationship with the second convolution feature restoration result obtained by slicing the at least one second feature extraction model.
  • processing unit 1202 is specifically used to:
  • a mask recovery operation is performed on the first activation feature fragment based on the obtained partial feature values to obtain a first activation feature recovery result, wherein the first activation feature recovery result is the same as
  • the second activation feature recovery result obtained by slicing the at least one second feature extraction model is a complementary relationship.
  • the second feature extraction model slice includes a second convolution module
  • the processing unit 1202 is specifically used to:
  • the biological information slices are jointly convolved to obtain the first Convolutional feature sharding.
  • the second feature extraction model slice includes a second convolution module
  • the processing unit 1202 is specifically used to:
  • the biological information slices are convolved through the plaintext convolution kernel in the first convolution module to obtain the first convolution feature slices, where the The plaintext convolution kernel is the same as the plaintext convolution kernel in the second convolution module.
  • multiple feature extraction model shards are obtained by fragmenting the biological feature extraction model, and the multiple feature extraction model shards are deployed in different nodes respectively, ensuring that the model parameters are not leaked. .
  • the target biological information is first fragmented to obtain multiple biological information fragments, and then the multiple biological information fragments are distributed to different nodes.
  • Each node is based on the locally deployed
  • the feature extraction model shards and the feature extraction model shards deployed by other nodes jointly extract features from the biological information shards and obtain the biometric feature vector shards, so that each node needs to combine with other nodes to perform biometric feature extraction, and each node Only part of the biometric feature vectors are obtained, which avoids the problem that the entire biometric feature vector is calculated by a single device and stored in a single environment, thus improving the security of biometric feature extraction.
  • the embodiments of this application provide a universal computing solution that can be applied to any type of feature extraction models and scenarios and has strong versatility.
  • the computer device may be the node shown in Figure 1. As shown in Figure 13, it includes at least one processor 1301, and a computer connected to the at least one processor. Memory 1302. In the embodiment of this application, the specific connection medium between the processor 1301 and the memory 1302 is not limited. In Figure 13, the processor 1301 and the memory 1302 are connected through a bus as an example. The bus can be divided into address bus, data bus, control bus, etc.
  • the memory 1302 stores instructions that can be executed by at least one processor 1301. By executing the instructions stored in the memory 1302, at least one processor 1301 can perform the steps of the above-mentioned biometric extraction method.
  • the processor 1301 is the control center of the computer equipment. It can use various interfaces and lines to connect various parts of the computer equipment, and implement biological processes by running or executing instructions stored in the memory 1302 and calling data stored in the memory 1302. Feature extraction.
  • the processor 1301 may include one or more processing units.
  • the processor 1301 may integrate an application processor and a modem processor.
  • the application processor mainly processes the operating system, user interface, application programs, etc., and the modem processor
  • the debug processor mainly handles wireless communications. It can be understood that the above modem processor may not be integrated into the processor 1301.
  • the processor 1301 and the memory 1302 can be implemented on the same chip, and in some embodiments, they can also be implemented on separate chips.
  • the processor 1301 may be a general-purpose processor, such as a central processing unit (CPU), a digital signal processor, an Application Specific Integrated Circuit (ASIC), a field programmable gate array or other programmable logic devices, discrete gates or transistors.
  • Logic devices and discrete hardware components can implement or execute the methods, steps and logical block diagrams disclosed in the embodiments of this application.
  • a general-purpose processor may be a microprocessor or any conventional processor, etc. The steps of the methods disclosed in conjunction with the embodiments of the present application can be directly implemented by a hardware processor for execution, or can be executed by a combination of hardware and software modules in the processor.
  • the memory 1302 can be used to store non-volatile software programs, non-volatile computer executable programs and modules.
  • the memory 1302 may include at least one type of storage medium, for example, may include flash memory, hard disk, multimedia card, card-type memory, random access memory (Random Access Memory, RAM), static random access memory (Static Random Access Memory, SRAM), Programmable Read Only Memory (PROM), Read Only Memory (ROM), Electrically Erasable Programmable Read-Only Memory (EEPROM), Magnetic Memory, Disk , CD, etc.
  • Memory 1302 is, but is not limited to, any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer device.
  • the memory 1302 in the embodiment of the present application can also be a circuit or any other device capable of realizing a storage function, used to store program instructions and/or data.
  • embodiments of the present application provide a computer-readable storage medium that stores a computer program that can be executed by a computer device.
  • the program When the program is run on the computer device, it causes the computer device to execute the steps of the above biometric extraction method. .
  • the computer program product includes a computer program stored on a computer-readable storage medium.
  • the computer program includes program instructions.
  • the program instructions When the program instructions are processed by a computer, When the device is executed, the computer device is caused to execute the steps of the above biometric feature extraction method.
  • embodiments of the present invention may be provided as methods, or computer program products.
  • the invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects.
  • the invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) having computer-usable program code embodied therein.
  • These computer program instructions may also be stored in a computer-readable memory that causes a computer device or other programmable data processing apparatus to operate in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction means,
  • the instruction means implements the functions specified in a process or processes of the flowchart and/or a block or blocks of the block diagram.
  • These computer program instructions may also be loaded onto a computer device or other programmable data processing device, such that a series of operating steps are performed on the computer device or other programmable device to produce processing implemented by the computer device, thereby causing the computer device or other programmable data processing device to perform a process on the computer device or other programmable data processing device.
  • the instructions executed on the device provide steps for implementing the functions specified in the process or processes of the flow diagrams and/or the block or blocks of the block diagrams.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Ophthalmology & Optometry (AREA)
  • Collating Specific Patterns (AREA)
  • Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请实施例提供了一种生物特征提取方法及装置,涉及人工智能技术领域,通过对生物特征提取模型进行碎片化处理,获得多个特征提取模型分片,并将多个特征提取模型分片分别部署在不同的节点中,保证了模型参数不被泄露。其次,对目标生物信息进行碎片化处理,获得多个生物信息分片,然后将多个生物信息分片分发至不同的节点中,每个节点基于本地部署的特征提取模型分片与其他节点部署的特征提取模型分片联合对生物信息分片进行特征提取,获得生物特征向量分片,避免了整个生物特征向量由单一设备计算获得,并存储于单一的环境中的问题,从而提高生物特征提取的安全性。另外,本申请为通用的计算方案,可适用于多种场景,通用性强。

Description

一种生物特征提取方法及装置
相关申请的交叉引用
本申请要求在2022年08月16日提交中国专利局、申请号为202210978590.X、申请名称为“一种生物特征提取方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请实施例涉及人工智能技术领域,尤其涉及一种生物特征提取方法及装置。
背景技术
在生物信息识别场景(比如人脸识别场景)中,终端获取注册生物特征信息,然后对注册生物特征信息进行特征提取,获得生物特征向量,之后再将生物特征向量与对应的注册身份信息保存在数据库中。在识别比对时,终端采集待识别生物特征数据,并提取相应的待识别生物特征向量。然后将待识别生物特征向量与存储的各个生物特征向量进行比对,获得匹配的生物特征向量对应的注册身份信息。
然而,在上述方案中,生物特征向量由单一设备计算获得,并存储于单一的环境中,存在生物特征向量泄漏的风险,从而影响数据的安全性。
发明内容
本申请实施例提供了一种生物特征提取方法及装置,避免生物特征向量泄漏,提高数据的安全性。
一方面,本申请实施例提供了一种生物特征提取方法,应用于多方安全计算系统中的每个节点,该方法包括:
接收终端设备发送的生物信息分片,其中,所述生物信息分片是所述终端设备对获取的目标生物信息进行碎片化处理后获得的;
通过本地部署的第一特征提取模型分片和至少一个其他节点中部署的第二特征提取模型分片,联合对所述生物信息分片进行特征提取,获得相应的生物特征向量分片,其中,所述第一特征提取模型分片和至少一个第二特征提取模型分片,是通过对生物特征提取模型进行碎片化处理后获得的。
可选地,所述第一特征提取模型分片包括第一卷积模块、第一激活模块、第一池化模块和第一全连接模块;
所述通过本地部署的第一特征提取模型分片和至少一个其他节点中部署的第二特征提取模型分片,联合对所述生物信息分片进行特征提取,获得相应的生物特征向量分片,包括:
通过所述第一卷积模块,获得所述生物信息分片对应的第一卷积特征分片;
联合所述第一激活模块和所述第一池化模块,以及至少一个第二特征提取模型分片中的第二激活模块和第二池化模块,对所述第一卷积特征分片进行激活处理和池化处理,获得第一池化处理结果;以及将所述第一池化处理结果进行碎片化处理,获得多个池化特征分片;
通过所述第一全连接模块,对第一池化特征分片进行处理,获得所述生物特征向量分片,其中,所述第一池化特征分片是基于所述多个池化特征分片中未分发的池化特征分片以及接收的其他节点分发的池化特征分片确定的。
可选地,所述第一特征提取模型分片还包括第一交互模块;
所述将所述第一池化处理结果进行碎片化处理,获得多个池化特征分片之后,还包括:
通过所述第一交互模块,将所述多个池化特征分片中的至少一个池化特征分片相应分发给所述至少一个其他节点。
可选地,所述第一特征提取模型分片还包括第一随机掩码模块;
所述联合所述第一激活模块和所述第一池化模块,以及至少一个第二特征提取模型分片中的第二激活模块和第二池化模块,对所述第一卷积特征分片进行激活处理和池化处理,获得第一池化处理结果,包括:
通过所述第一随机掩码模块,基于输入至少一个第二激活模块的第二卷积特征分片,对所述第一卷积特征分片进行掩码恢复操作,获得第一卷积特征恢复结果;
通过所述第一激活模块对所述第一卷积特征恢复结果进行激活处理,获得第一激活处理结果,并将所述第一激活处理结果进行碎片化处理,获得多个激活特征分片;
通过所述第一随机掩码模块,基于输入至少一个第二池化模块的第二激活特征分片,对第一激活特征分片进行掩码恢复操作,获得第一激活特征恢复结果,其中,所述第一激活特征分片是基于所述多个激活特征分片中未分发的激活特征分片以及接收的其他节点分发的激活特征分片确定的;
通过所述第一池化模块对所述第一激活特征恢复结果进行池化处理,获得第一池化处理结果。
可选地,所述第一特征提取模型分片还包括第一交互模块;
所述将所述第一激活处理结果进行碎片化处理,获得多个激活特征分片之后,还包括:
通过所述第一交互模块,将所述多个激活特征分片中的至少一个激活特征分片相应分发给所述至少一个其他节点。
可选地,所述通过所述第一随机掩码模块,基于输入至少一个第二激活模块的第二卷积特征分片,对所述第一卷积特征分片进行掩码恢复操作,获得第一卷积特征恢复结果,包括:
通过所述第一交互模块,获取每个第二卷积特征分片中的部分特征值;
通过所述第一随机掩码模块,基于获得的部分特征值对所述第一卷积特征分片进行掩码恢复操作,获得第一卷积特征恢复结果,其中,所述第一卷积特征恢复结果与所述至少一个第二特征提取模型分片获得的第二卷积特征恢复结果为互补关系。
可选地,所述通过所述第一随机掩码模块,基于输入至少一个第二池化模块的第二激活特征分片,对所述多个激活特征分片中的第一激活特征分片进行掩码恢复操作,获得第一激活特征恢复结果,包括:
通过所述第一交互模块,获取每个第二激活特征分片中的部分特征值;
通过所述第一随机掩码模块,基于获得的部分特征值对所述第一激活特征分片进行掩码恢复操作,获得第一激活特征恢复结果,其中,所述第一激活特征恢复结果与所述至少一个第二特征提取模型分片获得的第二激活特征恢复结果为互补关系。
可选地,所述第二特征提取模型分片包括第二卷积模块;
所述通过所述第一卷积模块,获得所述生物信息分片对应的第一卷积特征分片,包括:
通过所述第一卷积模块中的碎片态卷积核,以及至少一个第二卷积模块中的碎片态卷积核,联合对所述生物信息分片进行卷积处理,获得所述第一卷积特征分片。
可选地,所述第二特征提取模型分片包括第二卷积模块;
所述通过所述第一卷积模块,获得所述生物信息分片对应的第一卷积特征分片,包括:
通过所述第一卷积模块中的明文态卷积核,对所述生物信息分片进行卷积处理,获得所述第一卷积特征分片,其中,所述第一卷积模块中的明文态卷积核与所述第二卷积模块中的明文态卷积核相同。
一方面,本申请实施例提供了一种生物特征提取装置,应用于多方安全计算系统中的每个节点,包括:
接收单元,用于接收终端设备发送的生物信息分片,其中,所述生物信息分片是所述终端设备对获取的目标生物信息进行碎片化处理后获得的;
处理单元,用于通过本地部署的第一特征提取模型分片和至少一个其他节点中部署的第二特征提取模型分片,联合对所述生物信息分片进行特征提取,获得相应的生物特征向量分片,其中,所述第一特征提取模型分片和至少一个第二特征提取模型分片,是通过对生物特征提取模型进行碎片化处理后获得的。
可选地,所述第一特征提取模型分片包括第一卷积模块、第一激活模块、第一池化模块和第一全连接模块;
所述处理单元具体用于:
通过所述第一卷积模块,获得所述生物信息分片对应的第一卷积特征分片;
联合所述第一激活模块和所述第一池化模块,以及至少一个第二特征提取模型分片中的第二激活模块和第二池化模块,对所述第一卷积特征分片进行激活处理和池化处理,获得第一池化处理结果;以及将所述第一池化处理结果进行碎片化处理,获得多个池化特征分片;
通过所述第一全连接模块,对第一池化特征分片进行处理,获得所述生物特征向量分片,其中,所述第一池化特征分片是基于所述多个池化特征分片中未分发的池化特征分片以及接收的其他节点分发的池化特征分片确定的。
可选地,还包括发送单元,所述第一特征提取模型分片还包括第一交互模块;
所述发送单元具体用于:
将所述第一池化处理结果进行碎片化处理,获得多个池化特征分片之后,通过所述第一交互模块,将所述多个池化特征分片中的至少一个池化特征分片相应分发给所述至少一个其他节点。
可选地,所述第一特征提取模型分片还包括第一随机掩码模块;
所述处理单元具体用于:
通过所述第一随机掩码模块,基于输入至少一个第二激活模块的第二卷积特征分片,对所述第一卷积特征分片进行掩码恢复操作,获得第一卷积特征恢复结果;
通过所述第一激活模块对所述第一卷积特征恢复结果进行激活处理,获得第一激活处理结果,并将所述第一激活处理结果进行碎片化处理,获得多个激活特征分片;
通过所述第一随机掩码模块,基于输入至少一个第二池化模块的第二激活特征分片,对第一激活特征分片进行掩码恢复操作,获得第一激活特征恢复结果,其中,所述第一激 活特征分片是基于所述多个激活特征分片中未分发的激活特征分片以及接收的其他节点分发的激活特征分片确定的;
通过所述第一池化模块对所述第一激活特征恢复结果进行池化处理,获得第一池化处理结果。
可选地,还包括发送单元,所述第一特征提取模型分片还包括第一交互模块;
所述发送单元具体用于:
将所述第一激活处理结果进行碎片化处理,获得多个激活特征分片之后,通过所述第一交互模块,将所述多个激活特征分片中的至少一个激活特征分片相应分发给所述至少一个其他节点。
可选地,所述处理单元具体用于:
通过所述第一交互模块,获取每个第二卷积特征分片中的部分特征值;
通过所述第一随机掩码模块,基于获得的部分特征值对所述第一卷积特征分片进行掩码恢复操作,获得第一卷积特征恢复结果,其中,所述第一卷积特征恢复结果与所述至少一个第二特征提取模型分片获得的第二卷积特征恢复结果为互补关系。
可选地,所述处理单元具体用于:
通过所述第一交互模块,获取每个第二激活特征分片中的部分特征值;
通过所述第一随机掩码模块,基于获得的部分特征值对所述第一激活特征分片进行掩码恢复操作,获得第一激活特征恢复结果,其中,所述第一激活特征恢复结果与所述至少一个第二特征提取模型分片获得的第二激活特征恢复结果为互补关系。
可选地,所述第二特征提取模型分片包括第二卷积模块;
所述处理单元具体用于:
通过所述第一卷积模块中的碎片态卷积核,以及至少一个第二卷积模块中的碎片态卷积核,联合对所述生物信息分片进行卷积处理,获得所述第一卷积特征分片。
可选地,所述第二特征提取模型分片包括第二卷积模块;
所述处理单元具体用于:
通过所述第一卷积模块中的明文态卷积核,对所述生物信息分片进行卷积处理,获得所述第一卷积特征分片,其中,所述第一卷积模块中的明文态卷积核与所述第二卷积模块中的明文态卷积核相同。
一方面,本申请实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述生物特征提取方法的步骤。
一方面,本申请实施例提供了一种计算机可读存储介质,其存储有可由计算机设备执行的计算机程序,当所述程序在计算机设备上运行时,使得所述计算机设备执行上述生物特征提取方法的步骤。
一方面,本申请实施例提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机设备执行时,使所述计算机设备执行上述生物特征提取方法的步骤。
本申请实施例中,通过对生物特征提取模型进行碎片化处理,获得多个特征提取模型分片,并将多个特征提取模型分片分别部署在不同的节点中,保证了模型参数不被泄露。在对目标生物信息进行特征提取时,先对目标生物信息进行碎片化处理,获得多个生物信 息分片,然后将多个生物信息分片分发至不同的节点中,每个节点基于本地部署的特征提取模型分片与其他节点部署的特征提取模型分片联合对生物信息分片进行特征提取,获得生物特征向量分片,使得每个节点需要联合其他节点才能进行生物特征提取,且每个节点均只获得部分生物特征向量,避免了整个生物特征向量由单一设备计算获得,并存储于单一的环境中的问题,从而提高生物特征提取的安全性。另外,本申请实施例提供了一种通用的计算方案,可适用于任意类型的特征提取模型和场景,通用性强。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种系统架构的结构示意图;
图2为本申请实施例提供的一种生物特征提取方法的流程示意图;
图3为本申请实施例提供的一种数据预处理方法的流程示意图;
图4为本申请实施例提供的一种模型参数碎片化处理方法的流程示意图;
图5为本申请实施例提供的一种多方安全计算系统的结构示意图;
图6为本申请实施例提供的一种生物特征提取方法的流程示意图;
图7为本申请实施例提供的一种卷积处理方法的流程示意图;
图8为本申请实施例提供的另一种卷积处理方法的流程示意图;
图9为本申请实施例提供的一种激活处理方法的流程示意图;
图10为本申请实施例提供的一种池化处理方法的流程示意图;
图11为本申请实施例提供的一种生物特征提取方法的流程示意图;
图12为本申请实施例提供的一种生物特征提取装置的结构示意图;
图13为本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参考图1,其为本申请实施例适用的一种系统架构的示意图,该系统架构包括终端设备101和多方安全计算系统102,其中,多方安全计算系统102包括多个节点,多个节点包括节点102~1、节点102~2、…、节点102~N,其中,N为大于0的整数。
终端设备101预先安装需要进行生物信息识别的目标应用,比如,支付应用、即时通信应用、视频应用、购物应用等。每个终端设备具备采集生物信息的功能,其中,生物信息包括但不限于人脸信息、指纹信息、虹膜信息。终端设备101可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能家电、智能语音交互设备、智能车载设备等,但并不局限于此。
多个节点中的至少一个节点是目标应用的后台服务器,其他节点为合作进行生物特征提取和生物信息识别的节点。节点可以是独立的物理服务器,也可以是多个物理服务器构 成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备与相应的节点之间可以通过有线或无线通信方式进行直接或间接地连接,任意两个节点之间通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
在实际应用中,本申请实施例中的生物特征提取方法可以应用于支付场景、登陆场景、身份验证场景等。
可以理解的是,在本申请的具体实施方式中,涉及到人脸信息、指纹信息、虹膜信息等相关的生物信息数据,当本申请中的实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
基于图1所示的系统架构图,本申请实施例提供了一种生物特征提取方法的流程,如图2所示,该方法的流程由计算机设备执行,该计算机设备可以是图1所示的节点,包括以下步骤:
步骤S201,接收终端设备发送的生物信息分片。
具体地,生物信息分片是终端设备对获取的目标生物信息进行碎片化处理后获得的。目标生物信息包括但不限于人脸图像、指纹图像和虹膜图像;目标生物信息对应一个生物标识,具体可以是名称、唯一编号等,比如用户ID。相应的,在对目标生物信息进行碎片化处理后,获得的每个生物信息分片也对应该生物标识。
在一些实施例中,终端设备在采集原始生物信息后,对原始生物信息进行预处理,获得目标生物信息。具体地,对原始生物信息进行归一化处理后,将原始生物信息转化为三维矩阵,获得目标生物信息。
以原始生物信息为原始人脸图像举例来说,如图3所示,终端设备采集原始人脸图像之后,先将原始人脸图像的像素值归一化至0~1之间的浮点数。然后将原始人脸图像的尺寸调整为(224,224)。之后再将原始人脸图像转换为三维矩阵,获得目标生物信息。
定义一个与目标生物信息尺寸相同的随机三维矩阵作为生物信息分片1,将目标生物信息对应的三维矩阵与生物信息分片A相减,获得生物信息分片2。生物信息分片1和生物信息分片2均为三维矩阵。
需要说明的是,本申请实施例并不仅限于将目标生物信息划分为两个生物信息分片,也可以将目标生物信息划分为其他数量(3个、4个等)的生物信息分片,对此,本申请不做具体限定。
步骤S202,通过本地部署的第一特征提取模型分片和至少一个其他节点中部署的第二特征提取模型分片,联合对生物信息分片进行特征提取,获得相应的生物特征向量分片。
具体地,第一特征提取模型分片和至少一个第二特征提取模型分片,是通过对生物特征提取模型进行碎片化处理后获得的,其中,生物特征提取模型可以是由多方安全计算系统中任意一个节点预先训练获得的,也可以是由终端设备或其他设备预先训练获得的。
生物特征提取模型的训练过程具体为:
样本准备阶段:先采集用于模型训练的原始人脸图像集合,将每张原始人脸图像的像素值归一化至0~1之间的浮点数,该操作有利于模型训练收敛。然后对原始人脸图像集合进行数据增广,如:随机水平翻转、错切变换等,该操作有利于提高训练模型的泛化能 力。之后再将每张原始人脸图像的尺寸调整为(224,224),获得样本图像集合。
模型训练阶段:以小批次样本图像,对待训练的生物特征提取模型进行迭代的随机梯度下降训练,其中,学习率为0.1,动量为0.9,损失函数为多类别交叉损失函数。在每次迭代过程中,从样本图像集合中选取小批次样本图像,然后将小批次样本图像打乱顺序之后,输入待训练的生物特征提取模型。待训练的生物特征提取模型对小批次样本图像进行处理,获得特征提取结果。然后基于特征提取结果和损失函数,确定本次迭代过程的损失值。采用损失值对待训练的生物特征提取模型进行参数调整,并在参数调整之后,进入下一次迭代过程。当损失值满足预设收敛条件,或者迭代训练次数达到预设阈值,结束训练获得已训练的生物特征提取模型,其中,已训练的生物特征提取模型对应一个model文件,该model文件以“xxx.h5”格式进行保存,文件内容包括模型的整个结构及模型的每一层权重参数值。
在实际应用中,对生物特征提取模型进行碎片化处理,实质上指对生物特征提取模型的模型参数进行碎片化处理,生物特征提取模型的模型参数可以采用多维度矩阵来表示。对生物特征提取模型的模型参数进行碎片化处理,获得多个模型参数分片文件,然后将每个模型参数分片文件分发至一个节点。节点保存模型参数分片文件,并基于模型参数分片文件部署相应的特征提取模型分片。节点在获得生物信息分片之后,节点中的模型参数加载器读取到本地保存的模型参数分片文件,然后将该模型参数分片文件中的模型参数分片加载至模型运行器。模型运行器经过本地运算以及与其他节点交互,联合对生物信息分片进行特征提取,获得相应的生物特征向量分片。
举例来说,如图4所示,设定用于模型训练的设备中包括模型训练模块和碎片化模块。模型训练模块在训练获得的生物特征提取模型之后,获得模型参数x,该模型参数x采用多维矩阵表征。通过碎片化模块对模型参数x进行碎片化
Figure PCTCN2022135416-appb-000001
获得
Figure PCTCN2022135416-appb-000002
Figure PCTCN2022135416-appb-000003
其中,A表示算术碎片类型(Arithmetic),也就是实数值;i表示碎片的索引数;
Figure PCTCN2022135416-appb-000004
表示对模型参数x的算术类型碎片化;
Figure PCTCN2022135416-appb-000005
表示第一模型参数分片,
Figure PCTCN2022135416-appb-000006
表示第二模型参数分片。
Figure PCTCN2022135416-appb-000007
和x为尺寸(shape)相同的多维矩阵,
Figure PCTCN2022135416-appb-000008
Figure PCTCN2022135416-appb-000009
相加,可以获得模型参数x。在碎片化过程中,
Figure PCTCN2022135416-appb-000010
是采用随机数生成的,然后采用模型参数x减去
Figure PCTCN2022135416-appb-000011
获得
Figure PCTCN2022135416-appb-000012
为了保证模型参数分片在数据类型值域范围内,通常会对模型参数分片进行取模计算,具体满足以下公式(1):
Figure PCTCN2022135416-appb-000013
其中,
Figure PCTCN2022135416-appb-000014
Figure PCTCN2022135416-appb-000015
表示2的l次方的实数范围。
在获得第一模型参数分片和第二模型参数分片之后,将第一模型参数分片发送至节点1,节点1将第一模型参数分片保存在mysql数据库中。将第二模型参数分片发送至节点2,节点2将第二模型参数分片保存在mysql数据库中。
本申请实施例中,通过对生物特征提取模型进行碎片化处理,获得多个特征提取模型分片,并将多个特征提取模型分片分别部署在不同的节点中,保证了模型参数不被泄露。在对目标生物信息进行特征提取时,先对目标生物信息进行碎片化处理,获得多个生物信息分片,然后将多个生物信息分片分发至不同的节点中,每个节点基于本地部署的特征提取模型分片与其他节点部署的特征提取模型分片联合对生物信息分片进行特征提取,获得生物特征向量分片,使得每个节点需要联合其他节点才能进行生物特征提取,且每个节点均只获得部分生物特征向量,避免了整个生物特征向量由单一设备计算获得,并存储于单 一的环境中的问题,从而提高生物特征提取的安全性。另外,本申请实施例提供了一种通用的计算方案,可适用于任意类型的特征提取模型和场景,通用性强。
在一些实施例中,第一特征提取模型分片包括第一卷积模块、第一激活模块、第一池化模块和第一全连接模块。其次,可以在第一特征提取模型分片中的每个模块中添加第一交互模块,也可以只在需要与其他节点交互的模块中添加第一交互模块,还可以在第一特征提取模型分片中添加一个通用的第一交互模块。另外,在采用掩码技术进行特征提取的每个模块中添加第一随机掩码模块,也可以在第一特征提取模型分片中添加一个通用的第一随机掩码模块,对此,本申请不做具体限定。
相应地,第二特征提取模型分片包括第二卷积模块、第二激活模块、第二池化模块和第二全连接模块。其次,可以在第二特征提取模型分片中的每个模块中添加第二交互模块,也可以只在需要与其他节点交互的模块中添加第二交互模块,还可以在第二特征提取模型分片中添加一个通用的第二交互模块。另外,在采用掩码技术进行特征提取的每个模块中添加第二随机掩码模块,也可以在第二特征提取模型分片中添加一个通用的第二随机掩码模块,对此,本申请不做具体限定。
举例来说,如图5所示,多方安全计算系统中包括节点1和节点2,其中,节点1包括第一特征提取模型分片,第一特征提取模型分片中包括第一卷积模块、第一激活模块、第一池化模块和第一全连接模块,每个模块中包括第一交互模块,第一激活模块和第一池化模块中还包括第一随机掩码模块。
节点2包括第二特征提取模型分片,第二特征提取模型分片中包括第二卷积模块、第二激活模块、第二池化模块和第二全连接模块,每个模块中包括第二交互模块,第二激活模块和第二池化模块中还包括第二随机掩码模块。
在一些实施例中,通过本地部署的第一特征提取模型分片和至少一个其他节点中部署的第二特征提取模型分片,联合对生物信息分片进行特征提取的过程如图6所示,包括以下步骤:
步骤S601,通过第一卷积模块,获得生物信息分片对应的第一卷积特征分片。
在一些实施例中,对生物特征提取模型进行碎片化处理后,生物特征提取模型中的明文态卷积核被划分为多个碎片态卷积核,每个碎片态卷积核位于一个卷积模块。因此,在进行特征提取时,通过第一卷积模块中的碎片态卷积核,以及至少一个第二卷积模块中的碎片态卷积核,联合对生物信息分片进行卷积处理,获得第一卷积特征分片。
具体地,第一卷积模块和第二卷积模块之间通过第一交互模块和第二交互模块进行交互,实现联合卷积处理,获得第一卷积特征分片。
举例来说,如图7所示,对生物特征提取模型进行碎片化处理后,生物特征提取模型中的明文态卷积核被划分为碎片态卷积核1和碎片态卷积核2,其中,碎片态卷积核1位于第一卷积模块,碎片态卷积核2位于第二卷积模块。
将生物信息分片1输入第一卷积模块,第一卷积模块与第二卷积模块进行交互,联合碎片态卷积核1和碎片态卷积核2,对生物信息分片1进行卷积处理,获得第一卷积特征分片。
将生物信息分片2输入第二卷积模块,第二卷积模块与第一卷积模块进行交互,联合碎片态卷积核1和碎片态卷积核2,对生物信息分片2进行卷积处理,获得第二卷积特征分片。
在一些实施例中,第一卷积模块和第二卷积模块中均包含生物特征提取模型中的明文态卷积核,即第一卷积模块中的明文态卷积核与第二卷积模块中的明文态卷积核相同。那么,通过第一卷积模块中的明文态卷积核,对生物信息分片进行卷积处理,获得第一卷积特征分片。
举例来说,如图8所示,第一卷积模块和第二卷积模块中均包含生物特征提取模型中的明文态卷积核。将生物信息分片1输入第一卷积模块,第一卷积模块通过明文态卷积核,对生物信息分片1进行卷积处理,获得第一卷积特征分片。将生物信息分片2输入第二卷积模块,第二卷积模块通过明文态卷积核,对生物信息分片2进行卷积处理,获得第二卷积特征分片。
步骤S602,联合第一激活模块和第一池化模块,以及至少一个第二特征提取模型分片中的第二激活模块和第二池化模块,对第一卷积特征分片进行激活处理和池化处理,获得第一池化处理结果。
具体地,通过激活函数对第一卷积特征分片进行非线性激活处理,其中,激活函数可以Sigmoid函数、TanH函数、ReLU函数等。池化处理包括平均池化处理、最大池化处理等。
在一些实施例中,通过第一随机掩码模块,基于输入至少一个第二激活模块的第二卷积特征分片,对第一卷积特征分片进行掩码恢复操作,获得第一卷积特征恢复结果。
具体地,第二卷积特征分片是第二卷积模块输出的。通过第一交互模块,获取每个第二卷积特征分片中的部分特征值,其中,第二卷积特征分片中的部分特征值是随机从第二卷积特征分片中选取的。然后通过第一随机掩码模块,基于获得的部分特征值对第一卷积特征分片进行掩码恢复操作,获得第一卷积特征恢复结果,其中,第一卷积特征恢复结果与至少一个第二特征提取模型分片获得的第二卷积特征恢复结果为互补关系。
具体实施中,采用获得的部分特征值对第一卷积特征分片相应位置的特征值进行掩码恢复操作,获得相应位置的明文特征值(也可以称之为恢复特征值)。第一卷积特征分片中的未恢复的特征采用0表示,视作掩码。其他节点同样执行掩码恢复操作,获得第二卷积特征恢复结果,第二卷积特征恢复结果中的明文特征值的位置与第一卷积特征恢复结果中的明文特征值的位置不同,且第一卷积特征恢复结果与至少一个第二卷积特征恢复结果为互补关系,即第一卷积特征恢复结果与至少一个第二卷积特征恢复结果结合可以获得明文态卷积特征。通过第一激活模块对第一卷积特征恢复结果进行激活处理,获得第一激活处理结果,并将第一激活处理结果进行碎片化处理,获得多个激活特征分片。
在一些实施例中,通过第一交互模块,将多个激活特征分片的至少一个激活特征分片相应分发给至少一个其他节点。同样地,通过第一交互模块,接收至少一个其他节点分发的激活特征分片,然后基于未分发的激活特征分片以及接收的至少一个其他节点分发的激活特征分片确定第一激活特征分片。
举例来说,如图9所示,针对节点1,第一卷积模块输出第一卷积特征分片至第一激活模块,第一激活模块通过第一交互模块,从第二激活模块中获取第二卷积特征分片中的部分特征值。通过第一随机掩码模块,基于获得的部分特征值对第一卷积特征分片进行掩码恢复操作,获得第一卷积特征恢复结果,其中,在第一卷积特征恢复结果对应的4x4矩阵中,P 11、P 13、P 22、P 23、P 31、P 32、P 34、P 43的特征值为恢复特征值。P 12、P 14、P 21、P 24、P 33、P 41、P 42、P 44的特征值均为0,视作掩码,其中,P 11表示矩阵中第一行第一列, 其他依次类推。通过第一激活模块对第一卷积特征恢复结果进行激活处理,获得第一激活处理结果,并将第一激活处理结果进行碎片化处理,获得两个激活特征分片,分别为激活特征分片1和激活特征分片2,将激活特征分片1分发给节点2。
针对节点2,第二卷积模块输出第二卷积特征分片至第二激活模块,第二激活模块通过第二交互模块,从第一激活模块中获取第一卷积特征分片中的部分特征值。通过第二随机掩码模块,基于获得的部分特征值对第二卷积特征分片进行掩码恢复操作,获得第二卷积特征恢复结果,其中,在第二卷积特征恢复结果对应的4x4矩阵中,Q 11、Q 13、Q 22、Q 23、Q 31、Q 32、Q 34、Q 43的特征值均为0,视作掩码。Q 12、Q 14、Q 21、Q 24、Q 33、Q 41、Q 42、Q 44的特征值为恢复特征值,其中,Q 11表示矩阵中第一行第一列,其他依次类推。第一卷积特征恢复结果和第二卷积特征恢复结果严格互补。
通过第二激活模块对第一卷积特征恢复结果进行激活处理,获得第二激活处理结果,并将第二激活处理结果进行碎片化处理,获得两个激活特征分片,分别为激活特征分片3和激活特征分片4。将激活特征分片4分发给节点1。
节点1将激活特征分片1和接收的激活特征分片4组合获得第一激活特征分片,并将第一激活特征分片输入第一池化模块。节点2将激活特征分片3和接收的激活特征分片2组合获得第二激活特征分片,并将第二激活特征分片输入第二池化模块。
本申请实施例中,在激活模块中基于掩码进行明密文混合运算,保证了每个节点中的激活模块只能恢复部分特征值,避免了单一设备获得完整的特征向量,从而提高特征提取过程中数据的安全性。
在一些实施例中,通过第一随机掩码模块,基于输入至少一个第二池化模块的第二激活特征分片,对第一激活特征分片进行掩码恢复操作,获得第一激活特征恢复结果。然后通过第一池化模块对第一激活特征恢复结果进行池化处理,获得第一池化处理结果。
具体地,通过第一交互模块,获取每个第二激活特征分片中的部分特征值;通过第一随机掩码模块,基于获得的部分特征值对第一激活特征分片进行掩码恢复操作,获得第一激活特征恢复结果,其中,第一激活特征恢复结果与至少一个第二特征提取模型分片获得的第二激活特征恢复结果为互补关系。
采用获得的部分特征值对第一激活特征分片相应位置的特征值进行掩码恢复操作,获得相应位置的明文特征值(也可以称之为恢复特征值)。第一激活特征分片中的未恢复的特征采用0表示,视作掩码。其他节点同样执行掩码恢复操作,获得第二激活特征恢复结果,第二激活特征恢复结果中的明文特征值的位置与第一激活特征恢复结果中的明文特征值的位置不同,且第一激活特征恢复结果与至少一个第二激活特征恢复结果为互补关系,即第一激活特征恢复结果与至少一个第二激活特征恢复结果结合可以获得明文态的激活特征。通过第一池化模块对第一激活特征恢复结果进行池化处理,获得第一池化处理结果。
步骤S603,将第一池化处理结果进行碎片化处理,获得多个池化特征分片。
通过第一交互模块,将多个池化特征分片中的至少一个池化特征分片相应分发给至少一个其他节点。同样地,通过第一交互模块,接收至少一个其他节点分发的池化特征分片,然后基于未分发的池化特征分片以及接收的至少一个其他节点分发的池化特征分片确定第一池化特征分片。
举例来说,如图10所示,针对节点1,第一池化模块通过第一交互模块,从第二池化模块中获取第二激活特征分片中的部分特征值。通过第一随机掩码模块,基于获得的部 分特征值对第一激活特征分片进行掩码恢复操作,获得第一激活特征恢复结果,其中,在第一激活特征恢复结果对应的4x4矩阵中,P 11、P 13、P 22、P 23、P 31、P 32、P 34、P 43的特征值为恢复特征值。P 12、P 14、P 21、P 24、P 33、P 41、P 42、P 44的特征值均为0,视作掩码。第一池化模块对第一激活特征恢复结果进行最大池化处理,获得第一池化处理结果,并将第一池化处理结果进行碎片化处理,获得两个池化特征分片,分别为池化特征分片1和池化特征分片2。将池化特征分片1分发给节点2。
针对节点2,第二池化模块通过第二交互模块,从第一池化模块中获取第一激活特征分片中的部分特征值。通过第二随机掩码模块,基于获得的部分特征值对第二激活特征分片进行掩码恢复操作,获得第二激活特征恢复结果,其中,在第二激活特征恢复结果对应的4x4矩阵中,Q 11、Q 13、Q 22、Q 23、Q 31、Q 32、Q 34、Q 43的特征值均为0,视作掩码。Q 12、Q 14、Q 21、Q 24、Q 33、Q 41、Q 42、Q 44的特征值为恢复特征值。第二池化模块对第二激活特征恢复结果进行最大池化处理,获得第二池化处理结果,并将第二池化处理结果进行碎片化处理,获得两个池化特征分片,分别为池化特征分片3和池化特征分片4。将池化特征分片4分发给节点2。
节点1将池化特征分片1和接收的池化特征分片4组合获得第一池化特征分片,并将第一池化特征分片输入第一全连接模块。节点2将池化特征分片3和接收的池化特征分片2组合获得第二池化特征分片,并将第二池化特征分片输入第二全连接模块。
步骤S604,通过第一全连接模块,对第一池化特征分片进行处理,获得生物特征向量分片。
具体地,通过第一全连接模块,基于权重参数对第一池化特征分片进行向量内积运算,获得生物特征向量分片。
本申请实施例中,在池化模块中基于掩码进行明密文混合运算,保证了每个节点中的池化模块只能恢复部分特征值,避免了单一设备获得完整的特征向量,从而提高特征提取过程中数据的安全性。
在一些实施例中,在获得生物信息分片对应的生物特征向量分片之后,保存生物信息分片对应的生物特征向量分片,生物特征向量分片用于生物信息识别。
具体地,终端设备采集待识别生物信息,然后将待识别生物信息进行碎片化处理,获得多个待识别信息分片。将多个待识别信息分片发送至多个节点。每个节点采用前文描述的生物特征提取方法,获得一个待识别信息分片对应的待识别特征向量分片。
一种可能的实施方式,每个节点计算待识别特征向量分片与保存的每个生物特征向量分片之间的相似度,并选取相似度最大的生物特征向量以及相应的最大相似度。多个节点中的一个节点聚合所有节点获得的最大相似度,获得目标相似度。若目标相似度大于预设阈值,则确定待识别生物信息的生物信息识别结果为识别通过,否则,确定待识别生物信息的生物信息识别结果为识别不通过;再将生物信息识别结果发送至终端设备。
另一种可能的实施方式,待识别特征向量分片对应一个生物标识,每个节点基于该生物标识从保存的多个生物特征向量分片中选取相应的目标特征向量分片。然后计算待识别特征向量分片与目标特征向量分片之间的分片相似度。多个节点中的一个节点聚合所有节点获得的分片相似度,获得目标相似度。若目标相似度大于预设阈值,则确定待识别生物信息的生物信息识别结果为识别通过,否则,确定待识别生物信息的生物信息识别结果为识别不通过;再将生物信息识别结果发送至终端设备。
上述生物信息识别方法可以应用于支付场景、登录场景、验证场景等。
本申请实施例中,通过对生物特征提取模型进行碎片化处理,获得多个特征提取模型分片,并将多个特征提取模型分片分别部署在不同的节点中,保证了模型参数不被泄露。通过多个特征提取模型分片对生物信息分片进行特征提取,获得生物特征向量分片。然后结合多个生物特征向量分片进行生物信息识别,避免了采用单一设备进行特征提取以及生物信息识别,从而提高生物特征提取的安全性。
为了更好地解释本申请实施例,下面结合具体实施场景介绍本申请实施例提供的一种生物特征提取方法,该方法的流程可以由终端设备和多方安全计算系统执行,其中,多方安全计算系统包括节点1和节点2,包括以下步骤,如图11所示:
步骤S1101,终端设备采集原始人脸图像。
步骤S1102,终端设备将原始人脸图像转换为三维矩阵D。
步骤S1103,判断是否存在人脸,若是,则执行步骤S1104,否则执行步骤S1111。
步骤S1104,终端设备对三维矩阵D进行碎片化处理,获得图像分片S_0和图像分片S_1。
其中,图像分片S_0和图像分片S_1为尺寸(shape)相同的三维矩阵,且S_0+S_1=D。
步骤S1105,节点1加载图像分片S_0。
步骤S1106,节点1采用本地部署的特征抽取算子和节点2中部署的特征抽取算子,对图像分片S_0进行特征提取。
节点1与节点2之间进行交互计算,实现联合本地部署的特征抽取算子和节点2中部署的特征抽取算子,对图像分片S_0进行特征提取。
步骤S1107,节点1输出特征向量分片FS_0。
步骤S1108,节点2加载图像分片S_1。
步骤S1109,节点2采用本地部署的特征抽取算子和节点1中部署的特征抽取算子,对图像分片S_1进行特征提取。
步骤S1110,节点2输出特征向量分片FS_1。
步骤S1111,终端设备报错提示没有人脸信息。
本申请实施例中,通过对生物特征提取模型进行碎片化处理,获得多个特征提取模型分片,并将多个特征提取模型分片分别部署在不同的节点中,保证了模型参数不被泄露。在对目标生物信息进行特征提取时,先对目标生物信息进行碎片化处理,获得多个生物信息分片,然后将多个生物信息分片分发至不同的节点中,每个节点基于本地部署的特征提取模型分片与其他节点部署的特征提取模型分片联合对生物信息分片进行特征提取,获得生物特征向量分片,使得每个节点需要联合其他节点才能进行生物特征提取,且每个节点均只获得部分生物特征向量,避免了整个生物特征向量由单一设备计算获得,并存储于单一的环境中的问题,从而提高生物特征提取的安全性。另外,本申请实施例提供了一种通用的计算方案,可适用于任意类型的特征提取模型和场景,通用性强。
基于相同的技术构思,本申请实施例提供了一种生物特征提取装置的结构示意图,应用于多方安全计算系统中的每个节点,如图12所示,该装置1200包括:
接收单元1201,用于接收终端设备发送的生物信息分片,其中,所述生物信息分片是所述终端设备对获取的目标生物信息进行碎片化处理后获得的;
处理单元1202,用于通过本地部署的第一特征提取模型分片和至少一个其他节点中 部署的第二特征提取模型分片,联合对所述生物信息分片进行特征提取,获得相应的生物特征向量分片,其中,所述第一特征提取模型分片和至少一个第二特征提取模型分片,是通过对生物特征提取模型进行碎片化处理后获得的。
可选地,所述第一特征提取模型分片包括第一卷积模块、第一激活模块、第一池化模块和第一全连接模块;
所述处理单元1202具体用于:
通过所述第一卷积模块,获得所述生物信息分片对应的第一卷积特征分片;
联合所述第一激活模块和所述第一池化模块,以及至少一个第二特征提取模型分片中的第二激活模块和第二池化模块,对所述第一卷积特征分片进行激活处理和池化处理,获得第一池化处理结果;以及将所述第一池化处理结果进行碎片化处理,获得多个池化特征分片;
通过所述第一全连接模块,对第一池化特征分片进行处理,获得所述生物特征向量分片,其中,所述第一池化特征分片是基于所述多个池化特征分片中未分发的池化特征分片以及接收的其他节点分发的池化特征分片确定的。
可选地,还包括发送单元1203,所述第一特征提取模型分片还包括第一交互模块;
所述发送单元1203具体用于:
将所述第一池化处理结果进行碎片化处理,获得多个池化特征分片之后,通过所述第一交互模块,将所述多个池化特征分片中的至少一个池化特征分片相应分发给所述至少一个其他节点。
可选地,所述第一特征提取模型分片还包括第一随机掩码模块;
所述处理单元1202具体用于:
通过所述第一随机掩码模块,基于输入至少一个第二激活模块的第二卷积特征分片,对所述第一卷积特征分片进行掩码恢复操作,获得第一卷积特征恢复结果;
通过所述第一激活模块对所述第一卷积特征恢复结果进行激活处理,获得第一激活处理结果,并将所述第一激活处理结果进行碎片化处理,获得多个激活特征分片;
通过所述第一随机掩码模块,基于输入至少一个第二池化模块的第二激活特征分片,对第一激活特征分片进行掩码恢复操作,获得第一激活特征恢复结果,其中,所述第一激活特征分片是基于所述多个激活特征分片中未分发的激活特征分片以及接收的其他节点分发的激活特征分片确定的;
通过所述第一池化模块对所述第一激活特征恢复结果进行池化处理,获得第一池化处理结果。
可选地,还包括发送单元1203,所述第一特征提取模型分片还包括第一交互模块;
所述发送单元1203具体用于:
将所述第一激活处理结果进行碎片化处理,获得多个激活特征分片之后,通过所述第一交互模块,将所述多个激活特征分片中的至少一个激活特征分片相应分发给所述至少一个其他节点。
可选地,所述处理单元1202具体用于:
通过所述第一交互模块,获取每个第二卷积特征分片中的部分特征值;
通过所述第一随机掩码模块,基于获得的部分特征值对所述第一卷积特征分片进行掩码恢复操作,获得第一卷积特征恢复结果,其中,所述第一卷积特征恢复结果与所述至少 一个第二特征提取模型分片获得的第二卷积特征恢复结果为互补关系。
可选地,所述处理单元1202具体用于:
通过所述第一交互模块,获取每个第二激活特征分片中的部分特征值;
通过所述第一随机掩码模块,基于获得的部分特征值对所述第一激活特征分片进行掩码恢复操作,获得第一激活特征恢复结果,其中,所述第一激活特征恢复结果与所述至少一个第二特征提取模型分片获得的第二激活特征恢复结果为互补关系。
可选地,所述第二特征提取模型分片包括第二卷积模块;
所述处理单元1202具体用于:
通过所述第一卷积模块中的碎片态卷积核,以及至少一个第二卷积模块中的碎片态卷积核,联合对所述生物信息分片进行卷积处理,获得所述第一卷积特征分片。
可选地,所述第二特征提取模型分片包括第二卷积模块;
所述处理单元1202具体用于:
通过所述第一卷积模块中的明文态卷积核,对所述生物信息分片进行卷积处理,获得所述第一卷积特征分片,其中,所述第一卷积模块中的明文态卷积核与所述第二卷积模块中的明文态卷积核相同。
本申请实施例中,通过对生物特征提取模型进行碎片化处理,获得多个特征提取模型分片,并将多个特征提取模型分片分别部署在不同的节点中,保证了模型参数不被泄露。在对目标生物信息进行特征提取时,先对目标生物信息进行碎片化处理,获得多个生物信息分片,然后将多个生物信息分片分发至不同的节点中,每个节点基于本地部署的特征提取模型分片与其他节点部署的特征提取模型分片联合对生物信息分片进行特征提取,获得生物特征向量分片,使得每个节点需要联合其他节点才能进行生物特征提取,且每个节点均只获得部分生物特征向量,避免了整个生物特征向量由单一设备计算获得,并存储于单一的环境中的问题,从而提高生物特征提取的安全性。另外,本申请实施例提供了一种通用的计算方案,可适用于任意类型的特征提取模型和场景,通用性强。
基于相同的技术构思,本申请实施例提供了一种计算机设备,该计算机设备可以是图1所示的节点,如图13所示,包括至少一个处理器1301,以及与至少一个处理器连接的存储器1302,本申请实施例中不限定处理器1301与存储器1302之间的具体连接介质,图13中处理器1301和存储器1302之间通过总线连接为例。总线可以分为地址总线、数据总线、控制总线等。
在本申请实施例中,存储器1302存储有可被至少一个处理器1301执行的指令,至少一个处理器1301通过执行存储器1302存储的指令,可以执行上述生物特征提取方法的步骤。
其中,处理器1301是计算机设备的控制中心,可以利用各种接口和线路连接计算机设备的各个部分,通过运行或执行存储在存储器1302内的指令以及调用存储在存储器1302内的数据,从而实现生物特征提取。可选的,处理器1301可包括一个或多个处理单元,处理器1301可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1301中。在一些实施例中,处理器1301和存储器1302可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
处理器1301可以是通用处理器,例如中央处理器(CPU)、数字信号处理器、专用集 成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器1302作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器1302可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(Random Access Memory,RAM)、静态随机访问存储器(Static Random Access Memory,SRAM)、可编程只读存储器(Programmable Read Only Memory,PROM)、只读存储器(Read Only Memory,ROM)、带电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性存储器、磁盘、光盘等等。存储器1302是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机设备存取的任何其他介质,但不限于此。本申请实施例中的存储器1302还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
基于同一发明构思,本申请实施例提供了一种计算机可读存储介质,其存储有可由计算机设备执行的计算机程序,当程序在计算机设备上运行时,使得计算机设备执行上述生物特征提取方法的步骤。
基于同一发明构思,本申请实施例提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机设备执行时,使所述计算机设备执行上述生物特征提取方法的步骤。
本领域内的技术人员应明白,本发明的实施例可提供为方法、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机设备或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机设备或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机设备或其他可编程数据处理设备上,使得在计算机设备或其他可编程设备上执行一系列操作步骤以产生计算机设备实现的处理,从而在计算机设备或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程 和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (12)

  1. 一种生物特征提取方法,应用于多方安全计算系统中的每个节点,其特征在于,包括:
    接收终端设备发送的生物信息分片,其中,所述生物信息分片是所述终端设备对获取的目标生物信息进行碎片化处理后获得的;
    通过本地部署的第一特征提取模型分片和至少一个其他节点中部署的第二特征提取模型分片,联合对所述生物信息分片进行特征提取,获得相应的生物特征向量分片,其中,所述第一特征提取模型分片和至少一个第二特征提取模型分片,是通过对生物特征提取模型进行碎片化处理后获得的。
  2. 如权利要求1所述的方法,其特征在于,所述第一特征提取模型分片包括第一卷积模块、第一激活模块、第一池化模块和第一全连接模块;
    所述通过本地部署的第一特征提取模型分片和至少一个其他节点中部署的第二特征提取模型分片,联合对所述生物信息分片进行特征提取,获得相应的生物特征向量分片,包括:
    通过所述第一卷积模块,获得所述生物信息分片对应的第一卷积特征分片;
    联合所述第一激活模块和所述第一池化模块,以及至少一个第二特征提取模型分片中的第二激活模块和第二池化模块,对所述第一卷积特征分片进行激活处理和池化处理,获得第一池化处理结果;以及将所述第一池化处理结果进行碎片化处理,获得多个池化特征分片;
    通过所述第一全连接模块,对第一池化特征分片进行处理,获得所述生物特征向量分片,其中,所述第一池化特征分片是基于所述多个池化特征分片中未分发的池化特征分片以及接收的其他节点分发的池化特征分片确定的。
  3. 如权利要求2所述的方法,其特征在于,所述第一特征提取模型分片还包括第一交互模块;
    所述将所述第一池化处理结果进行碎片化处理,获得多个池化特征分片之后,还包括:
    通过所述第一交互模块,将所述多个池化特征分片中的至少一个池化特征分片相应分发给所述至少一个其他节点。
  4. 如权利要求2所述的方法,其特征在于,所述第一特征提取模型分片还包括第一随机掩码模块;
    所述联合所述第一激活模块和所述第一池化模块,以及至少一个第二特征提取模型分片中的第二激活模块和第二池化模块,对所述第一卷积特征分片进行激活处理和池化处理,获得第一池化处理结果,包括:
    通过所述第一随机掩码模块,基于输入至少一个第二激活模块的第二卷积特征分片,对所述第一卷积特征分片进行掩码恢复操作,获得第一卷积特征恢复结果;
    通过所述第一激活模块对所述第一卷积特征恢复结果进行激活处理,获得第一激活处理结果,并将所述第一激活处理结果进行碎片化处理,获得多个激活特征分片;
    通过所述第一随机掩码模块,基于输入至少一个第二池化模块的第二激活特征分片,对第一激活特征分片进行掩码恢复操作,获得第一激活特征恢复结果,其中,所述第一激活特征分片是基于所述多个激活特征分片中未分发的激活特征分片以及接收的其他节点 分发的激活特征分片确定的;
    通过所述第一池化模块对所述第一激活特征恢复结果进行池化处理,获得第一池化处理结果。
  5. 如权利要求4所述的方法,其特征在于,所述第一特征提取模型分片还包括第一交互模块;
    所述将所述第一激活处理结果进行碎片化处理,获得多个激活特征分片之后,还包括:
    通过所述第一交互模块,将所述多个激活特征分片中的至少一个激活特征分片相应分发给所述至少一个其他节点。
  6. 如权利要求5所述的方法,其特征在于,所述通过所述第一随机掩码模块,基于输入至少一个第二激活模块的第二卷积特征分片,对所述第一卷积特征分片进行掩码恢复操作,获得第一卷积特征恢复结果,包括:
    通过所述第一交互模块,获取每个第二卷积特征分片中的部分特征值;
    通过所述第一随机掩码模块,基于获得的部分特征值对所述第一卷积特征分片进行掩码恢复操作,获得第一卷积特征恢复结果,其中,所述第一卷积特征恢复结果与所述至少一个第二特征提取模型分片获得的第二卷积特征恢复结果为互补关系。
  7. 如权利要求5所述的方法,其特征在于,所述通过所述第一随机掩码模块,基于输入至少一个第二池化模块的第二激活特征分片,对所述多个激活特征分片中的第一激活特征分片进行掩码恢复操作,获得第一激活特征恢复结果,包括:
    通过所述第一交互模块,获取每个第二激活特征分片中的部分特征值;
    通过所述第一随机掩码模块,基于获得的部分特征值对所述第一激活特征分片进行掩码恢复操作,获得第一激活特征恢复结果,其中,所述第一激活特征恢复结果与所述至少一个第二特征提取模型分片获得的第二激活特征恢复结果为互补关系。
  8. 如权利要求2至7任一所述的方法,其特征在于,所述第二特征提取模型分片包括第二卷积模块;
    所述通过所述第一卷积模块,获得所述生物信息分片对应的第一卷积特征分片,包括:
    通过所述第一卷积模块中的碎片态卷积核,以及至少一个第二卷积模块中的碎片态卷积核,联合对所述生物信息分片进行卷积处理,获得所述第一卷积特征分片。
  9. 如权利要求2至7任一所述的方法,其特征在于,所述第二特征提取模型分片包括第二卷积模块;
    所述通过所述第一卷积模块,获得所述生物信息分片对应的第一卷积特征分片,包括:
    通过所述第一卷积模块中的明文态卷积核,对所述生物信息分片进行卷积处理,获得所述第一卷积特征分片,其中,所述第一卷积模块中的明文态卷积核与所述第二卷积模块中的明文态卷积核相同。
  10. 一种生物特征提取装置,应用于多方安全计算系统中的每个节点,其特征在于,包括:
    接收单元,用于接收终端设备发送的生物信息分片,其中,所述生物信息分片是所述终端设备对获取的目标生物信息进行碎片化处理后获得的;
    处理单元,用于通过本地部署的第一特征提取模型分片和至少一个其他节点中部署的第二特征提取模型分片,联合对所述生物信息分片进行特征提取,获得相应的生物特征向量分片,其中,所述第一特征提取模型分片和至少一个第二特征提取模型分片,是通过对 生物特征提取模型进行碎片化处理后获得的。
  11. 一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1~9任一所述方法的步骤。
  12. 一种计算机可读存储介质,其特征在于,其存储有可由计算机设备执行的计算机程序,当所述程序在计算机设备上运行时,使得所述计算机设备执行权利要求1~9任一所述方法的步骤。
PCT/CN2022/135416 2022-08-16 2022-11-30 一种生物特征提取方法及装置 Ceased WO2024036809A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US19/101,811 US20260051197A1 (en) 2022-08-16 2022-11-30 Biological feature extraction method and apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210978590.XA CN115439903A (zh) 2022-08-16 2022-08-16 一种生物特征提取方法及装置
CN202210978590.X 2022-08-16

Publications (1)

Publication Number Publication Date
WO2024036809A1 true WO2024036809A1 (zh) 2024-02-22

Family

ID=84243553

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/135416 Ceased WO2024036809A1 (zh) 2022-08-16 2022-11-30 一种生物特征提取方法及装置

Country Status (4)

Country Link
US (1) US20260051197A1 (zh)
CN (1) CN115439903A (zh)
TW (1) TWI832627B (zh)
WO (1) WO2024036809A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117541804A (zh) * 2023-11-14 2024-02-09 中国银联股份有限公司 模型训练方法、特征提取方法、装置、设备及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110969087A (zh) * 2019-10-31 2020-04-07 浙江省北大信息技术高等研究院 一种步态识别方法及系统
CN112464784A (zh) * 2020-11-25 2021-03-09 西安烽火软件科技有限公司 一种基于混合并行的分布式训练方法
CN113469350A (zh) * 2021-07-07 2021-10-01 武汉魅瞳科技有限公司 一种适于npu的深度卷积神经网络加速方法和系统
CN114511705A (zh) * 2021-10-27 2022-05-17 中国银联股份有限公司 用于多方安全计算系统的生物特征提取方法及设备

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SG11202108072QA (en) * 2019-02-22 2021-09-29 Inpher Inc Arithmetic for secure multi-party computation with modular integers
CN111428881B (zh) * 2020-03-20 2021-12-07 深圳前海微众银行股份有限公司 识别模型的训练方法、装置、设备及可读存储介质
CN111931602B (zh) * 2020-07-22 2023-08-08 北方工业大学 基于注意力机制的多流分段网络人体动作识别方法及系统
CN113098840B (zh) * 2021-02-25 2022-08-16 鹏城实验室 基于加法秘密分享技术的高效安全线性整流函数运算方法
CN113289346B (zh) * 2021-05-21 2024-07-16 网易(杭州)网络有限公司 任务模型训练方法、装置、电子设备及存储介质
CN113761557A (zh) * 2021-09-02 2021-12-07 积至(广州)信息技术有限公司 一种基于全同态加密算法的多方深度学习隐私保护方法
CN113935050B (zh) * 2021-09-26 2024-09-27 平安科技(深圳)有限公司 基于联邦学习的特征提取方法和装置、电子设备、介质
CN114238237B (zh) * 2021-12-21 2025-02-18 中国电信股份有限公司 任务处理方法、装置、电子设备和计算机可读存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110969087A (zh) * 2019-10-31 2020-04-07 浙江省北大信息技术高等研究院 一种步态识别方法及系统
CN112464784A (zh) * 2020-11-25 2021-03-09 西安烽火软件科技有限公司 一种基于混合并行的分布式训练方法
CN113469350A (zh) * 2021-07-07 2021-10-01 武汉魅瞳科技有限公司 一种适于npu的深度卷积神经网络加速方法和系统
CN114511705A (zh) * 2021-10-27 2022-05-17 中国银联股份有限公司 用于多方安全计算系统的生物特征提取方法及设备

Also Published As

Publication number Publication date
TWI832627B (zh) 2024-02-11
TW202409909A (zh) 2024-03-01
US20260051197A1 (en) 2026-02-19
CN115439903A (zh) 2022-12-06

Similar Documents

Publication Publication Date Title
EP3732619B1 (en) Convolutional neural network-based image processing method and image processing apparatus
CN109766925B (zh) 特征融合方法、装置、电子设备及存储介质
CN103814545B (zh) 手机用户身份认证方法
CN109074489B (zh) 指纹识别的方法、指纹识别装置和电子设备
CN114511705B (zh) 用于多方安全计算系统的生物特征提取方法及设备
WO2020098257A1 (zh) 一种图像分类方法、装置及计算机可读存储介质
CN114387656B (zh) 基于人工智能的换脸方法、装置、设备及存储介质
CN117152567B (zh) 特征提取网络的训练方法、分类方法、装置及电子设备
WO2018120723A1 (zh) 视频压缩感知重构方法、系统、电子装置及存储介质
TWI832627B (zh) 一種生物特徵提取方法及裝置
CN118365565A (zh) 图像中眼镜反光消除方法、装置、设备及可读存储介质
WO2021042895A1 (zh) 基于神经网络的验证码识别方法、系统及计算机设备
CN114049491A (zh) 指纹分割模型训练、指纹分割方法、装置、设备及介质
CN114078270B (zh) 基于遮挡环境下人脸身份验证方法、装置、设备和介质
CN114819184B (zh) 稀疏矩阵建模方法、装置、计算机设备及介质
CN114550252B (zh) 一种基于注意力机制的人脸识别方法
HK40077129A (zh) 一种生物特徵提取方法及装置
CN114359710B (zh) 遥感建筑物提取方法和装置
CN116168043A (zh) 图像分割方法、装置、设备及存储介质
CN114283475A (zh) 视频人脸分割方法、装置、计算机设备及存储介质
CN113112410B (zh) 数据增强方法、装置、计算设备、芯片及计算机存储介质
CN114549816A (zh) 文本识别方法、装置、设备及存储介质
CN109933969B (zh) 验证码识别方法、装置、电子设备及可读存储介质
CN113361357A (zh) 图像处理模型训练方法、图像处理方法及装置
CN112465053A (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: 22955578

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 11202500993X

Country of ref document: SG

WWP Wipo information: published in national office

Ref document number: 11202500993X

Country of ref document: SG

122 Ep: pct application non-entry in european phase

Ref document number: 22955578

Country of ref document: EP

Kind code of ref document: A1