Disclosure of Invention
In view of this, the present application proposes a training method of a face recognition model, which includes:
performing multi-layer neural network training based on the public face data set, and training at least one base layer;
extracting image transformation parameters from the at least one base layer;
performing irreversible blurring processing on the non-public face data set according to the extracted image transformation parameters;
uploading the non-public face data set after the blurring processing to a server, and completing the training of the residual base layer of the multi-layer neural network by the server.
Optionally, the multi-layer neural network comprises a multi-layer convolutional neural network.
Optionally, the server side includes a cloud computing platform.
Optionally, the extracting the image transformation parameters from the at least one network layer includes:
extracting a feature map in the at least one network layer;
and outputting the extracted characteristic mapping chart as an image transformation parameter.
Optionally, the performing irreversible blurring processing on the non-public face data set according to the extracted image transformation parameters includes:
and carrying out convolution calculation on the image transformation parameters serving as convolution kernels and the non-public face data set so as to carry out irreversible blurring processing on the non-public face data set.
The application also provides a training device of face recognition model, the device includes:
the training module is used for carrying out multi-layer neural network training based on the public face data set and training at least one base layer;
an extraction module for extracting image transformation parameters from the at least one base layer;
the processing module is used for carrying out irreversible blurring processing on the non-public face data set according to the extracted image transformation parameters;
and the uploading module is used for uploading the non-public face data set after the blurring processing to a server, and the server finishes the training of the residual base layer of the multi-layer neural network.
Optionally, the multi-layer neural network comprises a multi-layer convolutional neural network; the server side comprises a cloud computing platform.
Optionally, the extracting module is specifically configured to:
extracting a feature map in the at least one network layer;
and outputting the extracted characteristic mapping chart as an image transformation parameter.
Optionally, the processing module is specifically configured to:
and carrying out convolution calculation on the image transformation parameters serving as convolution kernels and the non-public face data set so as to carry out irreversible blurring processing on the non-public face data set.
The application also provides a training device of face recognition model, including:
a processor; a memory for storing the processor-executable instructions;
wherein the processor is configured to:
performing multi-layer neural network training based on the public face data set, and training at least one base layer;
extracting image transformation parameters from the at least one base layer;
performing irreversible blurring processing on the non-public face data set according to the extracted image transformation parameters;
uploading the non-public face data set after the blurring processing to a server, and completing the training of the residual base layer of the multi-layer neural network by the server.
According to the method, the device and the system, multi-layer neural network training is conducted based on the public face data set, at least one base layer is trained, then image transformation parameters are extracted from the trained at least one base layer to conduct irreversible blurring processing on the non-public face data set, the non-public face data set after blurring processing is uploaded to a server, and the training of the remaining base layer is completed by the server. Because the blurring processing of the non-public face data is irreversible and the user naked eyes of the face data after the blurring processing cannot distinguish the face data, the risk of disclosure is eliminated in the process of uploading the non-public face data.
Detailed Description
Reference will now be made in detail to exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, the same numbers in different drawings refer to the same or similar elements, unless otherwise indicated. The implementations described in the following exemplary examples are not representative of all implementations consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with some aspects of the present application as detailed in the accompanying claims.
In the prior art, aiming at the problem that privacy leakage may exist in the image transmission process, the current solution is mainly based on the following two types:
firstly, encrypting a face image to be uploaded by using a secret key, and then transmitting the encrypted face image as public information; and after receiving the uploaded encrypted image, the cloud computing platform decrypts the encrypted image to obtain an original face image, and trains a face recognition model.
In the above scheme, once the key used in encrypting the face image is broken or revealed, the problem of privacy disclosure still occurs.
Secondly, a privacy area is defined on the face image to be uploaded, partial blurring is carried out on the privacy area, then the privacy area after blurring is subtracted by the privacy area to obtain a difference privacy image, and the difference privacy area is encrypted by using a secret key.
In the above scheme, once the key used in encrypting the difference privacy area is cracked or revealed, an unauthorized user can acquire the difference privacy image, and still the privacy disclosure is caused.
In view of this, the application proposes a training method of a face recognition model, by performing multi-layer neural network training on a public face data set, training at least one base layer, extracting image transformation parameters from the trained at least one base layer, performing irreversible blurring processing on a non-public face data set, uploading the non-public face data set after blurring processing to a cloud computing platform, and completing training of the remaining base layers by the cloud computing platform. Because the blurring processing of the non-public face data is irreversible and the user naked eyes of the face data after the blurring processing cannot distinguish the face data, the risk of disclosure is eliminated in the process of uploading the non-public face data.
The following describes the present application through specific embodiments and in connection with specific application scenarios.
Referring to fig. 1, fig. 1 is a training method of a face recognition model according to an embodiment of the present application, where an execution subject of the method may be a first server; of course, the execution subject of the method in implementation can also be various computers providing computing resources; the method comprises the following steps:
step 101, training a multi-layer neural network based on a public face data set, and training at least one base layer;
step 102, extracting image transformation parameters from the at least one base layer;
step 103, carrying out irreversible blurring processing on the non-public face data set according to the extracted image transformation parameters;
step 104, uploading the non-public face data set after the blurring processing to a server, and completing the training of the residual base layer of the multi-layer neural network by the server.
In this embodiment, the first server may be a server storing a non-public face data set of the user, the server may be a cloud computing platform with a strong computing capability, or the server may be a second server that is physically independent of the first server and is used for training a face recognition model.
The technical scheme of the application is described in detail below by taking the server side as a cloud computing platform as an example.
In practical applications, in order to take advantage of the powerful computing power of the cloud computing platform, training of the face recognition model may generally be performed by the cloud computing platform. The cloud computing platform can take the face data set uploaded by the first server as a training sample, and then output a face recognition model after multi-layer neural network training based on a large number of training samples. However, the large number of training samples employed by the cloud computing platform in performing multi-layer neural network training typically includes a large number of non-public face data sets uploaded by the first server; because the non-public face data set generally relates to user privacy, in order to avoid the risk of privacy disclosure possibly faced in the uploading process as far as possible, the first server can perform irreversible blurring processing on the non-public face data set locally when uploading the non-public face data set to the cloud computing platform.
When the first server performs blurring processing on the non-public face data set, multi-layer neural network training can be performed locally based on a large number of pre-acquired public face data sets, at least one base layer is trained, and then image transformation parameters are extracted from the base layer to perform blurring processing on the non-public face data set to be uploaded. Wherein the disclosed face data set refers to a face image data set which can be obtained from the internet or other public resources for free, and the data sets are generally already obtained with the public authorization of the user, because the risk of privacy leakage does not exist.
In this embodiment, the multi-layer neural network may be a multi-layer convolutional neural network, and in the basic architecture of the multi-layer convolutional neural network, the multi-layer convolutional neural network generally includes a plurality of 4-5 base layers, each base layer includes a plurality of Feature maps (Feature maps), and each Feature Map extracts a Feature of an input face image through one convolutional filter. Among all the base layers of the multi-layer convolutional neural network, a feature extraction layer C layer and a feature mapping layer S layer are generally included, for example, please refer to fig. 2, fig. 2 is a basic architecture of a multi-layer convolutional neural network of 4 base layers shown in this embodiment, including 4 base layers of C1, S1, C2, S2, and so on. The C1 and C2 layers are feature extraction layers, and the S1 and S2 layers are feature mapping layers. The feature extraction layer may also be referred to as a convolution layer, and is used for performing convolution calculation on input image data; each Feature extraction layer is followed by a Feature mapping layer and is used for sampling and calculating the Feature Map generated after convolution calculation in the Feature extraction layer.
When the first server performs blurring processing on the non-public face data set, multi-layer convolutional neural network training can be performed on a large number of pre-collected public face data sets according to the architecture shown in fig. 2, at least one base layer is trained, and then the Feature Map in the base layer is extracted as an image transformation parameter to perform blurring processing on the non-public face data set.
The number of base layers trained by the first server on the public face data locally should be smaller than the maximum number of base layers trained by the multi-layer convolutional neural network, and the rest of base layers are completed after the cloud computing platform continues training.
With continued reference to fig. 2, in one example shown in this embodiment, the first server may train out the first two layers of the multi-layer convolutional neural network, namely, the C1 layer and the S2 layer, locally based on the public face data set. Of course, in practical application, the first server may train the C1 layer of the multi-layer convolutional neural network locally only, and the cloud computing platform completes the training of the S1, C2 and S2 layers; or the first server may train out C1, S1 and C2 of the multi-layer convolutional neural network locally, and the training of the S2 layer is completed by the cloud computing platform, which is not particularly limited in this embodiment.
Specifically, the first server may first perform convolution calculation on the input public face data set and 3 convolution filters, and then generate 3 Feature maps on the C1 layer; and the S2 layer samples and calculates the Feature maps in the C1 layer to obtain 3S 2 layer Feature maps. The number of the convolution filters may be set according to actual requirements, and is not particularly limited in this embodiment; detailed training procedures for C1 and S2, those skilled in the art will refer to the description in the prior art, and detailed description will not be given in this embodiment.
After the training of the C1 layer and the S2 layer is completed, feature maps in the C1 layer and the S2 layer can be extracted and output as image transformation parameters, and the non-public face data set can be subjected to blurring processing according to the image transformation parameters.
After the first server trains the first two layers of the multi-layer convolutional neural network, the image transformation parameters are successfully output, and the non-public face data set can be subjected to blurring processing according to the output image transformation parameters.
When the first server performs blurring processing on the non-public face data set, the first server can complete blurring operation on the non-public face data set by taking the output image transformation parameters as convolution kernels and performing convolution calculation on the non-public face data set. The convolution operation is an irreversible process, so that the face image subjected to the blurring processing by convolution calculation cannot be recovered and cannot be distinguished by naked eyes.
For the non-public face data after the blurring operation, the first server can be uploaded to the cloud computing platform, and the risk of privacy disclosure cannot exist in the uploading process because the uploaded non-public face data is subjected to blurring processing and the blurring processing is irreversible.
After receiving the non-public face data uploaded by the first server, the cloud computing platform can still train the received non-public face data after the blurring process as a base layer to finish the training of the remaining C2 and S2 layers and finally train the face recognition model, wherein the image transformation parameters adopted by the first server when the non-public face data is subjected to the blurring process are extracted from the first two base layers of the multi-layer convolutional neural network trained by the first server. Wherein the training process of the C2 and S2 layers is the same as the training process of the C1 and S1 layers, and the detailed training process can be described in the prior art by those skilled in the art, and will not be described in detail in this embodiment
Of course, when the cloud computing platform performs the multi-layer convolutional neural network, the received non-public face data subjected to the blurring processing can be used as input data, and training of the multi-layer convolutional neural network can be performed again locally. For example, the cloud computing platform may retrain the training C1, S1, C2, and S2 layers of the multi-layer convolutional neural network locally using the received non-public face data as input data, which is not particularly limited in this embodiment.
In the above description, the technical solution of the present application is described in detail by taking the multi-layer neural network as an example of the multi-layer convolutional neural network, however, in specific implementation, the multi-layer neural network may also be other types of multi-layer neural networks, such as a BP (Back Propagation) neural network, and in this embodiment, only the multi-layer neural network is described by taking the multi-layer convolutional neural network as an example, which is not intended to limit the present invention.
As can be seen from the above description, the present application performs multi-layer neural network training on a public face data set, trains at least one base layer, extracts image transformation parameters from the trained at least one base layer, performs irreversible blurring processing on a non-public face data set, and uploads the non-public face data set after blurring processing to a server, where the server completes training of the remaining base layers. Because the blurring processing of the non-public face data is irreversible and the user naked eyes of the face data after the blurring processing cannot distinguish the face data, the risk of disclosure is eliminated in the process of uploading the non-public face data.
In addition, because the image transformation parameters adopted when the non-public face data set is subjected to the blurring processing are extracted from at least one base layer trained by the trained multi-layer neural network, the non-public face data set after the blurring processing can still be used as one base layer to be continuously trained by a server side during the multi-layer neural network training.
Corresponding to the method embodiments described above, the present application also provides embodiments of the apparatus.
Referring to fig. 3, the present application proposes a training device 30 for a face recognition model, which is applied to a server. Referring to fig. 4, the hardware architecture of the server as the training device 30 for carrying the face recognition model generally includes a CPU, a memory, a nonvolatile memory, a network interface, an internal bus, and the like; taking a software implementation as an example, the training device 30 of the face recognition model may be generally understood as a computer program loaded in a memory, and the device 30 includes:
the training module 301 is configured to perform multi-layer neural network training based on the public face data set, and train out at least one base layer;
an extraction module 302, configured to extract image transformation parameters from the at least one base layer;
the processing module 303 is configured to perform irreversible blurring processing on the non-public face data set according to the extracted image transformation parameter;
and the uploading module 304 is configured to upload the non-public face data set after the blurring process to a server, where the server completes training of the residual base layer of the multi-layer neural network.
In this embodiment, the multi-layer neural network is a multi-layer convolutional neural network; the server side is a cloud computing platform.
In this embodiment, the extracting module 302 is specifically configured to:
extracting a feature map in the at least one network layer;
and outputting the extracted characteristic mapping chart as an image transformation parameter.
In this embodiment, the processing module 303 is specifically configured to:
and carrying out convolution calculation on the image transformation parameters serving as convolution kernels and the non-public face data set so as to carry out irreversible blurring processing on the non-public face data set.
The application also provides an embodiment of the training device of the face recognition model.
The device comprises:
a processor; a memory for storing the processor-executable instructions;
further, the apparatus may also include input/output interfaces, network interfaces, various hardware, and the like.
Wherein the processor is configured to:
performing multi-layer neural network training based on the public face data set, and training at least one base layer;
extracting image transformation parameters from the at least one base layer;
performing irreversible blurring processing on the non-public face data set according to the extracted image transformation parameters;
uploading the non-public face data set after the blurring processing to a server, and completing the training of the residual base layer of the multi-layer neural network by the server.
Other embodiments of the present application will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of the application following, in general, the principles of the application and including such departures from the present disclosure as come within known or customary practice within the art to which the application pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the application being indicated by the following claims.
It is to be understood that the present application is not limited to the precise arrangements and instrumentalities shown in the drawings, which have been described above, and that various modifications and changes may be effected without departing from the scope thereof. The scope of the application is limited only by the appended claims.
The foregoing description of the preferred embodiments of the present invention is not intended to limit the invention to the precise form disclosed, and any modifications, equivalents, improvements and alternatives falling within the spirit and principles of the present invention are intended to be included within the scope of the present invention.