WO2020246010A1 - 画像認識システム、画像認識サーバ、及び画像認識方法 - Google Patents

画像認識システム、画像認識サーバ、及び画像認識方法 Download PDF

Info

Publication number
WO2020246010A1
WO2020246010A1 PCT/JP2019/022641 JP2019022641W WO2020246010A1 WO 2020246010 A1 WO2020246010 A1 WO 2020246010A1 JP 2019022641 W JP2019022641 W JP 2019022641W WO 2020246010 A1 WO2020246010 A1 WO 2020246010A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
encryption
image recognition
dictionary
encrypted
Prior art date
Application number
PCT/JP2019/022641
Other languages
English (en)
French (fr)
Inventor
孝之 仲地
イト オウ
Original Assignee
日本電信電話株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to JP2021524626A priority Critical patent/JPWO2020246010A1/ja
Priority to US17/596,071 priority patent/US20220343691A1/en
Priority to PCT/JP2019/022641 priority patent/WO2020246010A1/ja
Publication of WO2020246010A1 publication Critical patent/WO2020246010A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/50Maintenance of biometric data or enrolment thereof
    • G06V40/53Measures to keep reference information secret, e.g. cancellable biometrics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • G06F18/2136Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on sparsity criteria, e.g. with an overcomplete basis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/772Determining representative reference patterns, e.g. averaging or distorting patterns; Generating dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/94Hardware or software architectures specially adapted for image or video understanding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/172Classification, e.g. identification
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system

Definitions

  • the present disclosure relates to an image recognition system, an image recognition server, and an image recognition method for image recognition using edge cloud computing.
  • Non-Patent Document 1 employs the K-SVD algorithm for learning feature dictionaries, applies orthogonal matching tracking (OMP) to find sparse representations of test images, and supports vector machines for face recognition.
  • OMP orthogonal matching tracking
  • Deep learning Another technique commonly used for face recognition is deep learning, which has proven to be effective in extracting deep hierarchical features.
  • ConvNets deep learning
  • deep learning requires a huge amount of calculation and a huge amount of learning data for learning.
  • Edge computing and cloud computing are promising technologies that provide cloud computing capabilities at the edge closer to mobile users while reducing the edge-to-cloud traffic bottleneck in core and backhaul networks. ..
  • This edge cloud computing can not only cope with the increase in computing load, but also provide various services by collecting data from mobile devices. For example, in the case of face recognition described above, by using edge cloud computing, it is possible to offload part of the calculation task to the edge and cloud to improve the calculation efficiency of face recognition (reduce the calculation load). it can.
  • edge cloud computing in face recognition has the following problems. (1) Since data is leaked due to human error or accident, it is necessary to enhance security such as privacy protection. (2) Diversity utilization (improvement of recognition accuracy) by multi-device has not been achieved.
  • an object of the present invention is to provide an image recognition system, an image recognition server, and an image recognition method having a new framework capable of utilizing diversity by a multi-device with high security in order to solve the above problems. And.
  • the image recognition system secures end-to-end security by using a random unitary matrix, and recognizes accuracy by ensemble learning the results of each device (user terminal). Was decided to increase.
  • the image recognition system is An image recognition system including N terminals (N is an integer of 2 or more), M transfer servers (M is an integer of 1 or more), and an image recognition server.
  • the dictionary matrix D which is an M ⁇ K matrix in which the image classes j and k (k ⁇ j) that identify i are the terminal numbers and the image y i j has K bases (K> M) as elements.
  • the terminal The test image is encrypted with the random unitary matrix Qp generated by using the key p to generate an encryption test image, and the encryption test image is transferred to the designated transfer server.
  • the transfer server The encryption test image is downsampled, converted into a one-dimensional encrypted image vector, and the encrypted image vector is transferred to the image recognition server.
  • the image recognition server Using a plurality of encryption dictionaries obtained by encrypting a plurality of dictionaries generated using different training images with the random unitary matrix Qp, the optimization problem represented by the number C1 is tracked by orthogonal matching for each encryption dictionary.
  • the class of the encrypted image vector is estimated for each encryption dictionary by solving by the method, and ensemble learning is performed for the class estimated for each encryption dictionary to determine one class of the encrypted image vector. It is characterized by doing.
  • the image recognition server is An encrypted test image obtained by encrypting a test image with a random unitary matrix Qp generated using the key p is downsampled, and further generated using an encrypted image vector converted into one dimension and a different training image.
  • An input unit in which a plurality of encrypted dictionaries obtained by encrypting a plurality of dictionaries with the random unitary matrix Qp are input.
  • the optimization problem represented by the number C1 was solved for each encryption dictionary by the orthogonal matching tracking method, the class of the encrypted image vector was estimated for each encryption dictionary, and the estimation was estimated for each encryption dictionary.
  • a determination unit that performs ensemble learning on the class and determines one class of the encrypted image vector. To be equipped.
  • the image recognition method according to the present invention is There is an image recognition method performed by an image recognition system equipped with N terminals (N is an integer of 2 or more), M transfer servers (M is an integer of 1 or more), and an image recognition server.
  • the dictionary matrix D which is an M ⁇ K matrix in which the image classes j and k (k ⁇ j) that identify i are the terminal numbers and the image y i j has K bases (K> M) as elements.
  • the test image is encrypted with the random unitary matrix Qp generated by using the key p to generate an encryption test image, and the encryption test image is transferred to the designated transfer server.
  • the transfer server downsamples the encryption test image, converts it into a one-dimensional encrypted image vector, and transfers the encrypted image vector to the image recognition server.
  • the image recognition server uses a plurality of encryption dictionaries obtained by encrypting a plurality of dictionaries generated using different training images with the random unitary matrix Qp, and the optimum number C1 is represented for each encryption dictionary.
  • the encryption problem is solved by an orthogonal matching tracking method, the class of the encrypted image vector is estimated for each encryption dictionary, and ensemble learning is performed for the class estimated for each encryption dictionary to perform the encrypted image vector. It is characterized in that one class of is determined.
  • This image recognition system is equipped with a low-calculation encryption algorithm based on random unitary transformation, and enhances security by working in the encrypted area from the dictionary creation stage to the recognition stage. Further, since this image recognition system does not use a complicated method such as K-SVD in the dictionary creation stage and performs machine learning only with the encrypted training image, the dictionary can be easily created. Furthermore, this image recognition system achieves high recognition performance by integrating the recognition results based on the dictionary of each device through ensemble learning.
  • the present invention can provide an image recognition system, an image recognition server, and an image recognition method having a new framework that has high security and can utilize diversity by a multi-device.
  • the present invention can provide an image recognition system, an image recognition server, and an image recognition method having a new framework that has high security and can utilize diversity by multiple devices.
  • Sparse coding is a linear system represented by a weighted linear sum of a small number of basis vectors. It is a figure explaining the advance preparation performed by the secret calculation method of sparse coding which concerns on this invention.
  • the local processing unit learns the dictionary and keeps it secret. It is a figure explaining the secret calculation method of the sparse coding which concerns on this invention.
  • This method is a sparse coding concealment calculation method that can be directly used by many widely used application software assuming use in the edge / cloud, and also considers the protection of user privacy.
  • the explanation will be given in the following order.
  • an M-dimensional observation signal vector Is represented by a linear combination of K bases.
  • Is a dictionary matrix M ⁇ K to base d i a (1 ⁇ i ⁇ K) element is a column vector
  • K represents the number of bases used for the linear combination of the equation (1).
  • the dictionary matrix D is given in advance or is adaptively estimated by learning based on the observed data.
  • the l 1 norm regularization problem can be expressed as a linear programming problem.
  • sparse coding can be divided into two categories: “dictionary design problem (D design)” and “selection of sparse coefficient (x)”.
  • dictionary matrix In the problem of dictionary design, there are two methods for the dictionary matrix, one is to prepare the basis in advance such as discrete cosine transform, Fourier transform, wavelet transform or curvelet transform, and the method is to learn the basis from the signal.
  • Typical methods of dictionary learning for sparse coding are MOD (Metaphod of Optimal Direction) and K-SVD (K-Singular Value Decomposition).
  • MOD uses the pseudo-inverse matrix to minimize the squared error between y and Dx.
  • K-SVD was positioned as a generalization of the k-means method, and was proposed as an iterative algorithm faster than MOD.
  • Orthogonal matching tracking method OMP
  • iterative reweighted least squares method Iterative. Relighted Last Squares: IRLS
  • sparse coefficient selection algorithms are well known as sparse coefficient selection algorithms.
  • the local processing unit 11 prepares the dictionary matrix D in advance or learns and generates it by using the K-SVD method or the like. After that, the dictionary matrix D is hidden. Is converted to and transmitted to the edge / cloud processing unit 12.
  • the secret dictionary matrix may be described as "D ⁇ ". That is, in the advance preparation, and concealed by using a random unitary matrix Q P concealment dictionary is M ⁇ M matrix generated by the key p dictionaries matrix D local processing unit 11 is learned in advance from a given or observed signal Perform the dictionary matrix conversion procedure of converting to the matrix D ⁇ and saving.
  • the observation signal y is first concealed by the local processing unit 11. Convert to and transmit to the cloud.
  • it may be described as a secret observation signal "y ⁇ ". That is, in the execution of the security operation of sparse coding, performs observation signal conversion procedure for converting the local processing unit 11 is observed signal vector y concealed using the random unitary matrix Q P to confidential observed signal y ⁇ .
  • the edge / cloud processing unit 12 executes an OMP algorithm using the secret dictionary matrix D ⁇ and the secret observation signal y ⁇ transferred in advance to estimate the sparse coefficient.
  • the edge / cloud processing unit 12 orthogonally matches the optimization problem represented by the coefficient C1 using the concealment observation signal y ⁇ and the concealment dictionary matrix D ⁇ stored.
  • a calculation procedure is performed to solve the problem by a tracking method and calculate a sparse coefficient x ⁇ that approximates the sparse coefficient x.
  • edge / cloud processing unit 12 may perform post processing.
  • Post processing is processing required for each application such as media signal processing such as image / acoustic signal, analysis of biological signals such as electroencephalogram / cerebral blood flow / fMRI, and machine learning using the estimated sparse coefficient.
  • the present invention proposes a concealment operation of the orthogonal matching tracking method (OMP), which is widely used as a selection algorithm for sparse coefficients.
  • the orthogonal matching tracking method is an algorithm that finds "support", that is, a non-zero coefficient index set S from the index set of coefficients used for approximating the observed signal. Initially, the support is an empty set, and new bases are added to the support set one by one so as to minimize the residual when the observation signal y is approximated by a linear combination of the bases, and included in the support. It stops when the residual when the signal is approximated only by the basis is less than ⁇ . It is a greedy method that sequentially selects the basis that contributes to the reduction of the residuals, and although the optimality of the solution is not guaranteed, it is known to give an excellent approximation in many cases.
  • FIG. 6 is a diagram illustrating an arithmetic algorithm of the orthogonal matching tracking method.
  • This calculation algorithm includes an initialization step S01 and a main loop (steps S02 to S07).
  • Step S01 Initialize each parameter.
  • k will be described.
  • the sparse coding to approximate the observed signal y as in Equation (1) by a linear combination of basis d i.
  • the variable representing the number of bases at that time is "k".
  • Step S02 Let k be k + 1.
  • Step S03 calculating an error when you add a k-th base d i to support S.
  • Step S04 Update support S.
  • Step S05 Search for the best solution x- k in support S.
  • Step S06 Update the residual r.
  • Step S07 It is confirmed whether the updated residual r is within the target value ⁇ . If the updated residual r is within the target value, the result searched in step S05 is used as the solution.
  • L is the number of signals (number of samples).
  • z corresponds to time
  • L z can be defined as an index for each image, and L image signals from f 1 to f L are obtained.
  • one image may be divided into small blocks, and an index may be assigned to each small block.
  • Step S02 Let k be k + 1.
  • Step S03 calculating an error when you add a k-th base d i to support S.
  • the dictionary matrix D and the residual r k-1 are replaced with the concealed D ⁇ and r ⁇ k-1 in the equation (5A), and the relational expression of the equations (16) and (17) is used, the approximation error is obtained. Is expressed by the following equation. Because the norm is invariant due to the nature of the random unitary matrix described above. , Because it is a dot product preservation Is established. Therefore, the equation (19) can be rewritten as follows. Equation (20) is equal to Equation (5A). That is, the approximation error ⁇ ⁇ (i) calculated using the concealed signals y ⁇ and D ⁇ is equal to the approximation error ⁇ (i) calculated using the original signals (y and D).
  • Equation (24) is equal to Equation (7). That is, the best solution x ⁇ k in the support obtained by using the concealed signals y ⁇ and D ⁇ is equal to the best solution x ⁇ k when the original signals (y and D) are used.
  • Step S06 Update the residual r ⁇ .
  • Replacing equation (8) with a secret signal gives the following equation.
  • the formula (25) may be using the error r k in the case of using the original signal expressed as follows.
  • Step S07 Check if the updated residual r ⁇ is within the target value ⁇ . It ends when equation (25-2) is satisfied, but due to the nature of equation (25-1) and norm invariance, Is established. That is, the stop condition for the secret signals y ⁇ and D ⁇ is equal to the stop condition for the original signals (y and D).
  • FIGS. 4 and 5 are specific configuration diagrams illustrating a sparse coding concealment calculation system.
  • the sparse coding concealment calculation system is composed of a local processing unit 11 and an edge / cloud processing unit 12.
  • FIG. 4 is a diagram at the time of the dictionary matrix conversion procedure described above.
  • the local processing unit 11 includes a dictionary learning unit 21, a random unitary transformation unit 22, a cache unit 23, and a transmission unit 24.
  • the dictionary learning unit 21 receives the observation signal y for learning and learns it by using the K-SVD method or the like to generate the dictionary matrix D. If the dictionary matrix D is given in advance, the dictionary learning unit 21 is unnecessary.
  • Random unitary transformation unit 22 is concealed into a confidentiality dictionary matrix D ⁇ using a random unitary matrix Q P is a M ⁇ M matrix generated by the key p dictionaries matrix D.
  • the cache unit 23 temporarily stores the secret dictionary matrix D ⁇ generated by the random unitary transformation unit 22.
  • the transmission unit 24 transmits the secret dictionary matrix D ⁇ to the edge / cloud processing unit 12.
  • the edge / cloud processing unit 12 includes a receiving unit 25 and a database unit 26.
  • the transmission unit 25 receives the secret dictionary matrix D ⁇ transmitted from the local processing unit 11.
  • the database unit 26 stores the secret dictionary matrix D ⁇ .
  • FIG. 5 is a diagram during the above-mentioned observation signal conversion procedure and calculation procedure.
  • the dictionary learning unit 21 is not required in the local processing unit 11.
  • Random unitary transformation unit 22 the observed signal vector y and concealed by using the random unitary matrix Q P into a confidential observed signal y ⁇ .
  • the cache unit 23 temporarily stores the secret observation signal y ⁇ generated by the random unitary transformation unit 22.
  • the transmission unit 24 transmits the secret observation signal y ⁇ to the edge / cloud processing unit 12.
  • the edge / cloud processing unit 12 includes a main loop unit 13, an initialization unit 31, and a sparse coefficient output unit 37, in addition to the receiving unit 25 and the database unit 26.
  • the transmission unit 25 receives the secret observation signal y ⁇ transmitted from the local processing unit 11.
  • the transmission unit 25 receives the concealment observation signal y ⁇ for the first time, it transfers it to the initialization unit 31 and causes step S01 of the concealment calculation algorithm in the orthogonal matching tracking method of FIG. After that, the transmission unit 25 transfers the received secret observation signal y ⁇ to the main loop unit 13.
  • the main loop unit 13 calculates the sparse coefficient x ⁇ using the secret observation signal y ⁇ and the secret dictionary matrix D ⁇ stored by the database unit 26.
  • the main loop unit 13 includes an approximation error calculation unit 32, a support update unit 33, a best solution search unit 34, a residual update unit 35, and a calculation stop unit 36.
  • the approximation error calculation unit 32 includes a secret dictionary matrix D ⁇ stored by the database unit 26, a secret observation signal y ⁇ (initialized residual), an initial solution x 0 , and an initial support S 0 of the solution, or secret observation.
  • the approximation error ⁇ ⁇ (i) is calculated using the signal y ⁇ , the solution x k-1 calculated immediately before, the residual r ⁇ k-1 , and the solution support Sk-1 (step S03 in FIG. 6). ).
  • the support update unit 33 updates the support S using the approximation error ⁇ ⁇ (i) calculated by the approximation error calculation unit 32 (step S04 in FIG. 6).
  • the best solution search unit 34 searches for the best solution x ⁇ k in the support S using the support S updated by the support update unit 33 and the secret dictionary matrix D ⁇ stored in the database unit 26 (step S05 in FIG. 6). ).
  • the residual update unit 35 updates the residual r ⁇ k using the best solution x ⁇ k searched by the best solution search unit 34 and the secret dictionary matrix D ⁇ stored by the database unit 26 (step S06 in FIG. 6). ..
  • the calculation stop unit 36 determines whether or not the residual r ⁇ k updated by the residual update unit 35 is within the target value ⁇ , and if so, the best solution x ⁇ searched by the best solution search unit 34.
  • the k is output to the sparse coefficient output unit 37. On the other hand, if it does not fit, the calculation stop unit 36 passes the residual r ⁇ k and the best solution x ⁇ k to the approximation error calculation unit 32, and repeats the calculation again.
  • the sparse coding concealment calculation method described in the present embodiment includes a concealed observation signal y ⁇ in which the observation signal y is concealed by the random unitary matrix Qp and a concealed dictionary matrix D ⁇ in which the dictionary matrix D is concealed by the Qp.
  • This is a method of calculating an approximate value of the sparse coefficient x by solving the optimization problem by the orthogonal matching tracking method OMP.
  • the secret calculation method of sparse coding described in the present embodiment can execute sparse coding using edge / cloud computational resources while protecting privacy.
  • the sparse coding concealment calculation method described in the present embodiment can estimate the sparse coefficient in a state where the observation signal and the dictionary matrix are concealed for privacy protection, and can be used in a widespread application.
  • the present embodiment is an image recognition system in which the sparse coding concealment calculation method described in the first embodiment is applied to image recognition, particularly face image recognition for identifying a person's face.
  • a face image recognition technique for classifying a face image using sparse coding is disclosed in, for example, Non-Patent Document 2.
  • 7 to 9 are views for explaining the face image recognition technique disclosed in Non-Patent Document 2.
  • the formula shown in FIG. 9A is a calculation formula for classifying the test sample Y (“y” in the formula).
  • a reproduction error with the test sample Y is calculated using a class i dictionary (FIG. 9 (B)).
  • Test samples that do not fit the dictionary will have larger playback errors. Therefore, the reproduction error between the test sample Y and all the classes i is calculated, and the test sample Y is classified into the class having the smallest reproduction error (the sparse coding class closest to the calculated reproduction error).
  • FIG. 10 is a diagram illustrating the image recognition system 301 of the present embodiment.
  • the image recognition system 301 is an image recognition system including N terminals 111 (N is an integer of 2 or more), M transfer servers 112 (M is an integer of 1 or more), and an image recognition server 113.
  • the dictionary matrix D which is an M ⁇ K matrix in which the image classes j and k (k ⁇ j) that identify i are the numbers of the terminals 111 and the images y i j are K bases (K> M) as elements.
  • Terminal 111 The test image is encrypted by the random unitary matrix Qp generated by using the key p to generate an encryption test image, and the encryption test image is transferred to one designated transfer server 112.
  • the transfer server 112 The encryption test image is downsampled, converted into a one-dimensional encrypted image vector, and the encrypted image vector is transferred to the image recognition server 113.
  • the image recognition server 113 Using a plurality of encryption dictionaries obtained by encrypting a plurality of dictionaries generated using different training images with the random unitary matrix Qp, the optimization problem represented by the number C1 is tracked by orthogonal matching for each encryption dictionary.
  • the class of the encrypted image vector is estimated for each encryption dictionary by solving by the method, and ensemble learning is performed for the class estimated for each encryption dictionary to determine one class of the encrypted image vector. It is characterized by doing.
  • the "terminal” may be referred to as a "device”
  • the "transfer server” may be referred to as an "edge server”
  • the "image recognition server” may be referred to as a "cloud”.
  • N mobile devices 111 are connected to one remote cloud server 113 via M edge servers 112.
  • the mobile device 111 executes an application including face recognition such as an interactive game or a virtual reality application.
  • Each mobile device j has Bi j training samples for class i of the L class of persons represented by “L” (see Non-Patent Document 2).
  • Each edge server 112 is a lightweight compute located at a wireless access point.
  • the remote cloud 113 has a more powerful processor and uses a backbone network to connect to the edge server 112.
  • the mobile device 111 In computing using the edge and the cloud, the mobile device 111 offloads its computational task to the adjacent edge server 112 via a wireless channel.
  • the edge server 112 along with the cloud server 113, performs computational tasks on behalf of the mobile device 111.
  • A. Sparse representation of facial images Face recognition is the use of labeled training samples (face images of L people) from L different classes to determine which class the new test sample belongs to.
  • the subspace model defined in Non-Patent Document 2 as follows is adopted.
  • [Definition 1] (Face subspace model)
  • the training sample B i j is a stack of b column vectors d (i, n) j (to be exact, in the device j of class i (i-th person), the weighted linear sum of b column vectors. ) Can be expressed.
  • the dictionary Di j can be formulated by the number 2-0.
  • test samples from the same class y i j which can be represented by the number 2-1 are in subspaces in the range of approximately B i j .
  • X i j is the weight of each element.
  • the "subspace” is a space represented by a linear weight sum of the dictionary D i j expressed by the equation (2-0) and the corresponding coefficient X i j .
  • the "subspace” is the space defined by equation (1) that represents the device j of the class of i (the i-th person).
  • the dictionary D j of the device j is defined as follows. By definition 1, it is possible to sparsely represented on any test image y is also a dictionary D j.
  • X j is a sparse coefficient.
  • the test sample y j can be approximated by the number 2-4c and the y j can be classified according to the optimization problem of the number 2-5.
  • r l i (y j ) represents an approximation error peculiar to each class.
  • Non-Patent Document 2 shows that such a method is effective in face recognition. However, this classification is based solely on the device-specific dictionary and is therefore vulnerable to noise and modeling errors.
  • an object of the present invention is to construct a framework for minimizing playback error by utilizing multi-device diversity while ensuring security in edge and cloud systems. And it can be formally formulated as follows.
  • the first-stage expression is a framework for minimizing the reproduction error
  • the second-stage and third-stage expressions are for ensuring security (encryption)
  • the fourth-stage expression is for the plaintext area. It means that there is no calculation accuracy in the encrypted area.
  • Random unitary transformation is a promising method to enable algorithms that operate in cryptographic regions, as well as to protect the privacy of systems. This has proven to be effective for biometric template protection and network BMI coding (see, eg, Non-Patent Document 3).
  • Any vector v ⁇ R m ⁇ l encrypted by the random unitary matrix Qp ⁇ C m ⁇ m with the secret key p can be expressed as follows.
  • [ ⁇ ] * represents the Hermitian transposed matrix
  • I represents the identity matrix.
  • Gram-Schmidt orthogonalization can be used to generate Qp.
  • the encrypted vector has the following three characteristics.
  • the dictionary is encrypted by the equation 2-2 as follows.
  • Formulate an optimization problem in the cryptographic area to obtain a secure sparse representation.
  • the solution having 2-14 X ⁇ (j, k) the solution X (j, k) when not subjected to encryption and the same.
  • Equation 2-14a The result of solving Equation 2-6 (Equation 2-14a) is the same as the result of solving Equation 2-15 (Equation 2-14b). Proof: Observing that (Equation 2-14a) is usually small gives Eq. 2-16. From the nature of unitary transformation To get. Therefore, the number 2-16 can be converted as follows. This is the same as the number 2-14b.
  • FIG. 12 is a diagram comparing the performance of face recognition with and without encryption.
  • the horizontal axis is the number of devices, and the vertical axis is the recognition accuracy (the closer it is to 1, the more accurate it is). In this way, it was confirmed that there is no difference in face recognition performance between the case where encryption is performed and the case where encryption is not performed. Therefore, by adopting unitary random conversion, it can be concluded that the algorithm of the present invention operates in the encrypted area without degrading the performance.
  • Ensemble learning framework is learning that improves the predictive ability for unlearned data by fusing what was trained using individual member classifiers. ..
  • ensemble learning among the classes estimated using each of the plurality of encryption dictionaries D ⁇ j , the class with the largest number of estimated classes is determined as the final class (majority vote). You may do so. Also, determine the y ⁇ k of the reproduction error (number 2-18) by solving number 2-6 optimization problem for each of a plurality of encryption dictionary D ⁇ j, each of the plurality of encrypted dictionary D ⁇ j Of the classes estimated using the method, the class when the value of Equation 2-6 is the smallest may be determined as the final class.
  • the ensemble learning framework includes algorithm 1 of FIG. 13 composed of stages of dictionary learning and recognition.
  • n in the training image d (i, n) j has the following meaning.
  • b i j number of column vectors of the training image When represented by, d (i, n) j refers to any training image in it.
  • the dictionary learning stage is composed of three steps as shown in FIGS. 14 and 15. First, each device j encrypts all the training samples and transfers them to the defined edge server 112. Then, reduction and downsampling encrypted training samples, encrypted dictionary D ⁇ j, ⁇ j ⁇ N is formulated by the number 2-13. Finally, the encryption dictionary D ⁇ j is transferred to the cloud server. In addition, the number 2-13 shows the relationship between the encryption dictionary and the plaintext dictionary, and actually, as shown in FIG. 14, the encryption dictionary is created only from the encryption training sample. For example, in FIG. 7, a person is represented by a linear weight sum of three images, and an encryption training sample is obtained by encrypting each of these three images.
  • each element of the encryption dictionary is composed of the encryption training sample (d1, d2, d3) itself (the sequence of the elements of each person is arranged to form an encryption dictionary).
  • Cryptographic dictionaries have a smaller data size than training samples. Training images are not sent directly to the cloud, reducing the network bandwidth required between the edge server and the cloud.
  • [Recognition stage] 16 and 17 are diagrams illustrating the stage of recognition.
  • the cloud server 113 includes a plurality of member classifiers (121-1 to 121-N) and a determination device 122. Further, the cloud server 113 holds a plurality of encryption dictionaries (D ⁇ 1 to D ⁇ N ).
  • the device k encrypts the test image and sends it to the designated edge server 112.
  • the edge server 112 downsamples and reduces the encryption test image, and further creates a one-dimensional encryption test vector y ⁇ k .
  • the edge server 112 transmits the encryption test vector y ⁇ k to the cloud server 113.
  • Each encrypted dictionary then functions as a member classifier for the ensemble learning framework.
  • the member classifier 121-j solves the number 2-14 and calculates the sparse representation X ⁇ (j, k) .
  • the member classifier 121-j classifies the class of the encryption test vector by solving the number 2-5 (or number 2-17) using OMP, and calculates the reproduction error (number 2-14a). To do.
  • the classification result and the reproduction error are passed to the determination device 122.
  • the determination device 122 combines the results of the member classifiers (ensemble learning) by solving the number 2-6 for the classification results from each member classifier and the reproduction error, and makes the class with the smallest reproduction error. decide.
  • Example 1 shows simulation results comparing the image recognition method described in the embodiment with another image identification method.
  • Comparative Example 1 is a method of designing a dictionary using all training images (LD: Large Patentary)
  • Comparative Example 2 is a method of determining classification by majority voting in ensemble learning (LD). Vote)
  • Comparative Example 3 is the method (SRC) described in Non-Patent Document 2.
  • FIG. 18 is a diagram comparing the recognition accuracy with respect to the number of devices
  • FIG. 19 is a diagram comparing the recognition accuracy with respect to the number of training samples.
  • the image recognition method described in the embodiment has higher recognition performance than other image identification methods.
  • FIG. 20 shows the result of simulating the accuracy of recognition.
  • “Cloud” in FIG. 20 is the image recognition method described in the embodiment.
  • “Devices 1 to 5” in FIG. 20 are recognition accuracy when a dictionary composed of only each device is used. From FIG. 20, it can be seen that the image recognition method described in the embodiment has higher recognition performance than the method using a dictionary composed only of each device. Further, the image recognition method described in the embodiment has higher face image recognition performance than the case where a dictionary is created using all the training samples (LD). This can be said to be the effect of ensemble learning.
  • LD training samples
  • FIG. 21 shows the result of simulating the accuracy of recognition.
  • the image recognition method described in the embodiment is compared with other image identification methods for the number of training samples required to obtain the desired recognition accuracy. It can be said that the smaller the number of training samples required, the higher the accuracy of recognition.
  • Comparative Example 1 is a dictionary learning method by deep learning (SPCNET)
  • Comparative Example 2 is a dictionary learning method by LC-KSVD. From FIG. 21, the image recognition method described in the embodiment has higher recognition performance than other image identification methods even when the learning data is small, and shows almost the same recognition performance even when the learning data is large.
  • FIG. 22 is a result of comparing the image recognition method described in the embodiment with respect to the calculation amount and another image identification method.
  • Comparative Example 1 is a dictionary learning method by deep learning (SPCNET)
  • Comparative Example 2 is a dictionary learning method by LC-KSVD. From FIG. 22, the image recognition method described in the embodiment has a shorter calculation time for both the dictionary learning calculation and the test image recognition calculation than the other image identification methods.
  • the image recognition system according to the present invention maximizes the advantages of edge and cloud computing by utilizing multi-device diversity. In order to improve the face recognition performance, it was decided to improve the recognition performance by combining the results based on the dictionary from each device. In addition, it is very important to prevent privacy leakage, especially when enabling sharing of calculation results by the cloud.
  • the image recognition system according to the present invention is equipped with a framework for face recognition of edges and clouds based on sparse expression in consideration of privacy.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Bioethics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)

Abstract

本発明は、セキュリティが高く、且つマルチデバイスによるダイバーシチを活用できる新たなフレームワークを有する画像認識システム、画像認識サーバ、及び画像認識方法を提供することを目的とする。本発明に係る画像認識システムは、ランダムユニタリ変換に基づく低演算な暗号化アルゴリズムを搭載しており、セキュリティを高めている。また、本画像認識システムは、アンサンブル学習を通して各デバイスの辞書に基づく認識結果を統合することで高い認識性能を達成する。

Description

画像認識システム、画像認識サーバ、及び画像認識方法
 本開示は、エッジクラウドコンピューティングを利用した画像認識のための画像認識システム、画像認識サーバ、及び画像認識方法に関する。
 顔認識は理論とその実用的重要性の両方により、仮想現実アプリケーションやIoTネットワークなど広範囲の領域において、長い間活発な研究が行われている。人間の視覚システムのスパース性メカニズムから着想を得て、スパース表現に基づく分類アルゴリズムは大きな注目を集めている。例えば、非特許文献1は、特徴辞書を学習するためK-SVDアルゴリズムを採用し、テスト画像のスパース表現を見つけるために直交マッチング追跡法(OMP)を適用し、顔認識のためにサポートベクトルマシン(SVM)を使用することが開示される。
 顔認識のために一般的に採用されているもう一つの技術はディープラーニングであり、これは深い階層的特徴を抽出するのに有効であることが証明されている。例えば、視覚特徴を抽出するためにディープラーニングの一つConvNetsを採用し、顔認識の性能を向上させることができる。しかしながらディープラーニングは学習のために膨大な演算と膨大な学習データを必要とする。
 一方、エッジコンピューティングとクラウドコンピューティングは、コアネットワークとバックホールネットワークにおけるエッジとクラウド間のトラヒックボトルネックを低減しながら、モバイルユーザに近接するエッジでクラウドコンピューティング能力を提供する有望な技術である。このエッジクラウドコンピューティングは、演算負荷の増加に対応するだけでなく、モバイルデバイスからデータを収集することで、多様なサービスを提供することができる。例えば、上記の顔認識であれば、エッジクラウドコンピューティングを利用することで、計算タスクの一部をエッジおよびクラウドにオフロードし、顔認識の計算効率を改善(演算負荷を軽減)することができる。
Y. Xu, Z. Li, J. Yang, and D. Zhang, "A survey of dictionary learningalgorithms for face recognition," IEEE Access, vol. 5, pp. 8502-8514,Apr. 2017. J. Wright, A. Yang, A. Ganesh, S. Sastry, and Y. Ma, "Robust face recognition via sparse representation," IEEE Trans. Pattern Anal. Machine Intell., vol. 31, no. 2, pp. 210-227, Feb. 2009. T. Nakachi, H. Ishihara, and H. Kiya, "Privacy-preserving network BMI decoding of covert spatial attention," Proc. of IEEE ICSPCS 2018, pp. 1-8, Dec. 2018.
 しかし、顔認識においてエッジクラウドコンピューティングを利用することは、次のような課題が存在している。
(1)人的ミスやアクシンデントでデータが流出するため、プライバシー保護などのセキュリティを高める必要がある。
(2)マルチデバイスによるダイバーシチの活用(認識精度の向上)ができていない。
 そこで、本発明は、前記課題を解決するために、セキュリティが高く、且つマルチデバイスによるダイバーシチを活用できる新たなフレームワークを有する画像認識システム、画像認識サーバ、及び画像認識方法を提供することを目的とする。
 上記目的を達成するために、本発明に係る画像認識システムは、ランダムユニタリ行列を用いることで、エンドツーエンドでセキュリティを確保し、各デバイス(ユーザ端末)の結果をアンサンブル学習することで認識精度を高めることとした。
 具体的には、本発明に係る画像認識システムは、
 N台の端末(Nは2以上の整数)、M台の転送サーバ(Mは1以上の整数)、及び画像認識サーバを備える画像認識システムであって、
 iを識別する画像のクラス、j及びk(k∈j)を前記端末の番号とし、画像y がK個(K>M)の基底を要素とするM×K行列である辞書行列D とK次元のベクトルであるスパース係数X を用いて、y =D ・X と表せるとき、
 前記端末は、
 鍵pを用いて生成されるランダムユニタリ行列Qpでテスト画像を暗号化して暗号化テスト画像を生成し、前記暗号化テスト画像を指定されている1台の前記転送サーバへ転送し、
 前記転送サーバは、
 前記暗号化テスト画像をダウンサンプリングするとともに1次元の暗号化画像ベクトルへ変換し、前記暗号化画像ベクトルを前記画像認識サーバへ転送し、
 前記画像認識サーバは、
 異なるトレーニング画像を用いて生成された複数の辞書を前記ランダムユニタリ行列Qpで暗号化した複数の暗号化辞書を用い、前記暗号化辞書毎に前記数C1で表される最適化問題を直交マッチング追跡法で解いて前記暗号化画像ベクトルのクラスを前記暗号化辞書毎に推定し、前記暗号化辞書毎に推定した前記クラスに対してアンサンブル学習を行って前記暗号化画像ベクトルのクラスを1つ判定する
ことを特徴とする。
Figure JPOXMLDOC01-appb-M000004
 また、本発明に係る画像認識サーバは、
 鍵pを用いて生成されるランダムユニタリ行列Qpでテスト画像を暗号化した暗号化テスト画像がダウンサンプリングされ、さらに1次元に変換された暗号化画像ベクトル、及び、異なるトレーニング画像を用いて生成された複数の辞書を前記ランダムユニタリ行列Qpで暗号化した複数の暗号化辞書が入力される入力部と、
 前記暗号化辞書毎に前記数C1で表される最適化問題を直交マッチング追跡法で解いて、前記暗号化画像ベクトルのクラスを前記暗号化辞書毎に推定し、前記暗号化辞書毎に推定した前記クラスに対してアンサンブル学習を行って前記暗号化画像ベクトルのクラスを1つ判定する判定部と、
を備える。
 また、本発明に係る画像認識方法は、
 N台の端末(Nは2以上の整数)、M台の転送サーバ(Mは1以上の整数)、及び画像認識サーバを備える画像認識システムで行う画像認識方法あって、
 iを識別する画像のクラス、j及びk(k∈j)を前記端末の番号とし、画像y がK個(K>M)の基底を要素とするM×K行列である辞書行列D とK次元のベクトルであるスパース係数X を用いて、y =D ・X と表せるとき、
 前記端末で、鍵pを用いて生成されるランダムユニタリ行列Qpでテスト画像を暗号化して暗号化テスト画像を生成し、前記暗号化テスト画像を指定されている1台の前記転送サーバへ転送し、
 前記転送サーバで、前記暗号化テスト画像をダウンサンプリングするとともに1次元の暗号化画像ベクトルへ変換し、前記暗号化画像ベクトルを前記画像認識サーバへ転送し、
 前記画像認識サーバで、異なるトレーニング画像を用いて生成された複数の辞書を前記ランダムユニタリ行列Qpで暗号化した複数の暗号化辞書を用い、前記暗号化辞書毎に前記数C1で表される最適化問題を直交マッチング追跡法で解いて前記暗号化画像ベクトルのクラスを前記暗号化辞書毎に推定し、前記暗号化辞書毎に推定した前記クラスに対してアンサンブル学習を行って前記暗号化画像ベクトルのクラスを1つ判定する
ことを特徴とする。
 本画像認識システムは、ランダムユニタリ変換に基づく低演算な暗号化アルゴリズムを搭載しており、辞書作成ステージから認識ステージに至るまで全て暗号化領域で作業することでセキュリティを高めている。また、本画像認識システムは、辞書作成ステージにおいてK-SVDのような複雑な方法を使わず、暗号化された訓練画像だけで機械学習するので、簡単に辞書を作成できる。さらに、本画像認識システムは、アンサンブル学習を通して各デバイスの辞書に基づく認識結果を統合することで高い認識性能を達成する。
 従って、本発明は、セキュリティが高く、且つマルチデバイスによるダイバーシチを活用できる新たなフレームワークを有する画像認識システム、画像認識サーバ、及び画像認識方法を提供することができる。
 本発明は、セキュリティが高く、且つマルチデバイスによるダイバーシチを活用できる新たなフレームワークを有する画像認識システム、画像認識サーバ、及び画像認識方法を提供することができる。
スパースコーディングを説明する図である。スパースコーディングは、少数の基底ベクトルの重み付き線形和で表現する線形システムである。 本発明に係るスパースコーディングの秘匿演算方法で行う事前準備を説明する図である。ローカル処理部で辞書学習とその秘匿を行う。 本発明に係るスパースコーディングの秘匿演算方法を説明する図である。エッジ/クラウド部でスパースコーディングの秘匿演算を行う。 本発明に係るスパースコーディングの秘匿演算装置を説明する図である。 本発明に係るスパースコーディングの秘匿演算装置を説明する図である。 本発明に係るスパースコーディングの秘匿演算方法を説明するフローチャートである。 画像認識技術を説明する図である。 画像認識技術を説明する図である。 画像認識技術を説明する図である。 本発明に係る画像認識システムを説明する図である。 本発明に係る画像認識システムが行う画像の暗号化を説明する図である。 暗号化を行った場合と行わない場合の顔認識の性能を比較する図である。 本発明に係る画像認識システムが行う画像認識の動作を説明する図である。 本発明に係る画像認識システムが行う辞書学習を説明する図である。 本発明に係る画像認識システムが行う辞書学習を説明する図である。 本発明に係る画像認識システムが行う画像認識動作を説明する図である。 本発明に係る画像認識システムが行う画像認識動作を説明する図である。 本発明に係る画像認識システムの効果を説明する図である。 本発明に係る画像認識システムの効果を説明する図である。 本発明に係る画像認識システムの効果を説明する図である。 本発明に係る画像認識システムの効果を説明する図である。 本発明に係る画像認識システムの効果を説明する図である。
 添付の図面を参照して本発明の実施形態を説明する。以下に説明する実施形態は本発明の実施例であり、本発明は、以下の実施形態に制限されるものではない。なお、本明細書及び図面において符号が同じ構成要素は、相互に同一のものを示すものとする。
(実施形態1)
 本実施形態は、プライバシー保護を目的として、スパースコーディングの秘匿演算の方法ならびに装置について説明する。
 本方法は、エッジ/クラウドでの利用を想定し広く普及した多くのアプリケーションソフトウェアが直接利用可能で、かつユーザーのプライバシーの保護を考慮したスパースコーディングの秘匿演算法である。以下の順で説明していく。
(1)スパースコーディングの定式化
(2)スパースコーディングの秘匿演算をエッジ/クラウドで実行する際のシステム構成
(3)係数選択のアルゴリズムとして広く用いられている直交マッチング追跡法(Orthogonal Matching Pursuit:OMP)の秘匿演算法
1.スパースコーディングの定式化
 スパースコーディングでは、図1に示すように、M次元の観測信号ベクトル
Figure JPOXMLDOC01-appb-M000005
が、K個の基底の線形結合で表せると仮定する。
Figure JPOXMLDOC01-appb-M000006
ただし、
Figure JPOXMLDOC01-appb-M000007
は列ベクトルである基底d(1≦i≦K)を要素とするM×Kの辞書行列であり、
Figure JPOXMLDOC01-appb-M000008
はスパース係数である。なお、「K」は式(1)の線形結合に用いる基底の個数を表している。
 スパース係数は少数の係数のみが非ゼロの値を取り、残りの大部分の係数はゼロの値を取る。このように、非ゼロ要素が全体に対して少数である状態をスパース(Sparse:疎)と呼ぶ。辞書行列Dは事前に与えられるか、または観測データに基づき学習により適応的に推定される。
 一般的にK>M(基底の数が、観測信号の次元よりも大きい)であり、過完備な辞書行列を用いる。信号の次元より多い基底による表現y=Dxではxの一意性を保証することができないため、通常は観測信号yの表現に利用される基底をDのうちの一部に制限する。つまり、
Figure JPOXMLDOC01-appb-M000009
でxのlノルム、すなわちベクトルxの非ゼロ成分の数を表すとして、スパースコーディングは典型的には最適化問題
Figure JPOXMLDOC01-appb-M000010
として定式化される。
 しかしながら、この問題は全ての基底の組み合わせを試さないと最適解が得られない組合せ最適化問題であり、NP困難であることが知られている。そこで、lノルムへの緩和問題
Figure JPOXMLDOC01-appb-M000011
を考えることが多い。このlノルム正則化問題は線型計画問題として表現することが可能である。
 なお、スパースコーディングは「辞書設計の問題(Dの設計)」と「スパース係数の選択(x)」の2つに分けて考えることができる。
 辞書設計の問題では、辞書行列は離散コサイン変換やフーリエ変換、ウェーブレット変換あるいはカーブレット変換のように予め基底を用意しておく方法と、信号から基底を学習する方法がある。スパースコーディングのための辞書学習の代表的な手法がMOD(Method of Optimal Direction)とK-SVD(K-Singular Value Decomposition)である。MODはyとDxの間の二乗誤差の最小化に疑似逆行列を使用する。K-SVDはk-means法を一般化したものと位置づけられ、MODより高速な反復的アルゴリズムとして提案された。
 スパース係数の選択アルゴリズムとして直交マッチング追跡法(OMP)と反復再重み付け最小二乗法(Iterative. Reweighted Least Squares:IRLS)はよく知られている。
2.スパースコーディングの秘匿演算のシステム構成
 エッジ/クラウド処理部12でスパースコーディングの秘匿演算を行うアーキテクチャを図2ならびに図3に示す。
 図2の事前準備では、ローカル処理部11において辞書行列Dを予め用意またはK-SVD法などを用い学習して生成する。その後、辞書行列Dを秘匿辞書行列
Figure JPOXMLDOC01-appb-M000012
へ変換しエッジ/クラウド処理部12へ伝送する。なお、本明細書では秘匿辞書行列を「D^」と記載することがある。
 つまり、事前準備では、ローカル処理部11が予め与えられた又は観測信号から学習した辞書行列Dを鍵pによって生成されるM×M行列であるランダムユニタリ行列Qを用いて秘匿化して秘匿辞書行列D^に変換して保存する辞書行列変換手順を行う。
 図3のスパースコーディングの秘匿演算の実行では、最初にローカル処理部11において観測信号yを秘匿観測信号
Figure JPOXMLDOC01-appb-M000013
へ変換しクラウドへ伝送する。なお、本明細書では秘匿観測信号「y^」と記載することがある。
 つまり、スパースコーディングの秘匿演算の実行では、ローカル処理部11が観測信号ベクトルyを前記ランダムユニタリ行列Qを用いて秘匿化して秘匿観測信号y^に変換する観測信号変換手順を行う。
 次に、エッジ/クラウド処理部12で、事前に転送された秘匿辞書行列D^と秘匿観測信号y^を用いてOMPのアルゴリズムを実行してスパース係数が推定される。つまり、スパースコーディングの秘匿演算の実行では、エッジ/クラウド処理部12が前記秘匿観測信号y^と保存されている前記秘匿辞書行列D^を用いて数C1で表される最適化問題を直交マッチング追跡法によって解き、前記スパース係数xに近似するスパース係数x^を計算する演算手順を行う。
 なお、エッジ/クラウド処理部12ではポスト処理を行ってもよい。ポスト処理は、推定したスパース係数を用いて、画像・音響信号などのメディア信号処理、脳波・脳血流・fMRIなどの生体信号の解析、機械学習などアプリケーションごとに必要な処理である。
3.直交マッチング追跡法(OMP)の秘匿演算法
〔直交マッチング追跡法(OMP)〕
 観測信号yと辞書Dが与えられた時、yをDxで近似するような係数xを求める問題を(狭義の)スパースコーディング問題と呼ぶ。ここでは式(2)の最適化問題を再構成誤差を一定の閾値以下に抑えた上でできるだけ少ない数の基底の線型結合で信号を近似する問題
Figure JPOXMLDOC01-appb-M000014
として考える。ここで、εは辞書行列Dとスパース係数xの積とサンプル信号yとの誤差の目標値である。
 この問題に対する解法として、貪欲法に基づく方法やlノルム制約をlノルム制約で緩和した上で解く方法など、数多くのアルゴリズムが提案されている。
 本発明では、スパース係数の選択アルゴリズムとして、広く用いられている直交マッチング追跡法(OMP)の秘匿演算について提案する。直交マッチング追跡法は、観測信号の近似に利用する係数の添字集合の中から「サポート」、すなわち非ゼロ係数の添字集合Sを見つけ出すアルゴリズムである。初めはサポートは空集合であるとして、観測信号yを基底の線型結合で近似した時の残差を最小にするように新たな基底をサポート集合に一つ一つ追加していき、サポートに含まれる基底のみで信号を近似した時の残差がε以下になったら停止する。残差の低減に寄与する基底を順次選択していく貪欲法であり、解の最適性は保証されないが、多くの場合優れた近似を与えることが知られている。
 図6は、直交マッチング追跡法の演算アルゴリズムを説明する図である。本演算アルゴリズムは、初期化ステップS01とメインループ(ステップS02~S07)からなる。
(ステップS01)
 各パラメータを初期化する。
Figure JPOXMLDOC01-appb-M000015
 ここで、kについて説明する。スパースコーディングでは、式(1)のように観測信号yを基底dの線形結合で近似する。OMPアルゴリズムでは、K個の基底d(i=1,2,..,K)の中から、最もよく近似できる基底から順次サポートSに追加していく。その時の基底の個数を表す変数が「k」である。
 例えば、k=1は一つの基底を使って観測信号yを表すことを意味し、そのときのdはdの場合、あるいはそれ以外のdの場合などもある。また、k=2のときは2つの基底を使って観測信号yを表すことを意味し、そのときのdはdとdの場合、あるいはそれ以外のdとdの場合などもある。
 ステップS01は初期化なので、k=0、スパース係数xをゼロベクトル、残差rを観測信号y、サポートSを空集合とする。
(ステップS02)
 kをk+1とする。
(ステップS03)
 k個目の基底dをサポートSに追加した時の誤差を算出する。
Figure JPOXMLDOC01-appb-M000016
(ステップS04)
 サポートSを更新する。
Figure JPOXMLDOC01-appb-M000017
(ステップS05)
 サポートS内での最良解x-kを探索する。
Figure JPOXMLDOC01-appb-M000018
(ステップS06)
 残差rを更新する。
Figure JPOXMLDOC01-appb-M000019
(ステップS07)
 更新した残差rが目標値ε内であるかを確認する。
Figure JPOXMLDOC01-appb-M000020
 更新した残差rが目標値内であれば、ステップS05で探索した結果を解とする。
 引き続く解析を容易にするために、ここで基底ベクトルd
Figure JPOXMLDOC01-appb-M000021
で定義する。但しδ
Figure JPOXMLDOC01-appb-M000022
のi番目の要素が1でそれ以外の要素はゼロの列ベクトルである。δを用いて、式(5)の近似誤差を以下のように表現する。
Figure JPOXMLDOC01-appb-M000023
 本発明のランダムユニタリ行列に基づいた直交マッチング追跡法(OMP)の秘匿演算について説明する前に、ランダムユニタリ行列を説明する。
〔ランダムユニタリ行列〕
 ランダムユニタリ行列に基づいた秘匿演算の基本性質について述べる。先行研究において、キャンセラブルバイオメトリクスのための一方法として、ランダムユニタリ変換に基づくテンプレート保護法が研究されている。一般的にランダムユニタリ行列に基づく秘匿演算では、鍵pによって生成されるランダムユニタリ行列Qを用いた変換T(・)により、N次元の信号f(z=1、・・・、L)がN次元の秘匿信号
Figure JPOXMLDOC01-appb-M000024
へ変換される。なお、本明細書では秘匿信号「f^」と記載することがある。
但し、QはN×N行列
Figure JPOXMLDOC01-appb-M000025
であり、
Figure JPOXMLDOC01-appb-M000026
を満たす。ここで[・]はエルミート転置、Iは単位行列を表す。Nは任意の自然数であるが、本実施形態ではN=Mである。また、「L」は信号数(サンプル数)である。例えば、音声信号の場合にはzは時刻に相当し、信号f(要素数はN個)は時刻z=1~LまでのL個のサンプル信号となる(N個の要素を持つ信号fが、L個存在する。)。また、画像の場合には、例えばzは画像ごとのインデックスと定義でき、fからfまでのL個の画像信号となる。また、1枚の画像を小ブロックに分けて、それぞれの小ブロックごとにインデックスを割り当ててもよい。
 ランダムユニタリ行列Qの生成は、グラムシュミットの直交化を用いる方法や、複数のユニタリ行列を組み合わせることでQを生成する方法が検証されている。2つの観測信号fとfをベクトルaとbと考えると、ランダムユニタリ行列Qで変換したベクトルa^とb^との間に次の関係が成り立つ。
特徴1:ユークリッド距離の保存
Figure JPOXMLDOC01-appb-M000027
特徴2:内積の保存
Figure JPOXMLDOC01-appb-M000028
特徴3:相関係数の保存
Figure JPOXMLDOC01-appb-M000029
特徴4:ノルム不変
Figure JPOXMLDOC01-appb-M000030
〔直交マッチング追跡法(OMP)の秘匿演算〕
 本実施形態のスパースコーディングの秘匿演算では、次式のように秘匿された観測信号y^ならびに辞書行列D^を生成する。
Figure JPOXMLDOC01-appb-M000031
Figure JPOXMLDOC01-appb-M000032
 y^とD^が与えられたとき、式(4)に代わり、次式の最適化問題を考える。
Figure JPOXMLDOC01-appb-M000033
上式を直交マッチング追跡法によって解き、スパース係数
Figure JPOXMLDOC01-appb-M000034
を得る。なお、本明細書では式(18-1)のスパース係数を「x^」と記載することがある。
 ここで、スパース係数x^が、観測信号yと辞書行列Dを秘匿しない場合に得られたスパース係数xと等しくなることを証明する。直交マッチング追跡法の秘匿演算アルゴリズムは、図6の通りである。
(ステップS01)
 各パラメータを初期化する。
Figure JPOXMLDOC01-appb-M000035
 ステップS01は初期化なので、k=0、スパース係数xをゼロベクトル、残差r^を秘匿された観測信号y^、サポートSを空集合とする。
(ステップS02)
 kをk+1とする。
(ステップS03)
 k個目の基底dをサポートSに追加した時の誤差を算出する。ここで、式(5A)で辞書行列Dと残差rk-1を秘匿したD^とr^k-1で置き換え、式(16)と式(17)の関係式を用いると、近似誤差は次式で表される。
Figure JPOXMLDOC01-appb-M000036
 前述したランダムユニタリ行列の性質より、ノルム不変であるから
Figure JPOXMLDOC01-appb-M000037
、内積保存であるから
Figure JPOXMLDOC01-appb-M000038
Figure JPOXMLDOC01-appb-M000039
が成立する。
 このため、式(19)は次のように書き換えることができる。
Figure JPOXMLDOC01-appb-M000040
 式(20)は、式(5A)と等しい。つまり、秘匿信号y^やD^を用いて計算される近似誤差ε^(i)は原信号(y及びD)を用いて計算される近似誤差ε(i)と等しくなる。
(ステップS04)
 サポートSを更新する。ε^(i)=ε(i)より、次式が成立する。
Figure JPOXMLDOC01-appb-M000041
(ステップS05)
 サポートS内での最良解x^を探索する。
Figure JPOXMLDOC01-appb-M000042
Figure JPOXMLDOC01-appb-M000043
 式(22)内の式(22-1)に関する最小化
Figure JPOXMLDOC01-appb-M000044
を解くことにより、次式が得られる。
Figure JPOXMLDOC01-appb-M000045
 式(14)の内積の保存の関係より
Figure JPOXMLDOC01-appb-M000046
が成立することから、式(23)は次式のように書き換えることができる。
Figure JPOXMLDOC01-appb-M000047
 式(24)は式(7)と等しい。つまり、秘匿信号y^やD^を用いて得られるサポート内での最良解x^は原信号(y及びD)を用いた場合の最良解x-kと等しくなる。
(ステップS06)
 残差r^を更新する。式(8)を秘匿信号に置き換えると次式となる。
Figure JPOXMLDOC01-appb-M000048
 式(16)及び式(17)の定義式及びサポート内での最良解x^=x-kより、次式が得られる。
Figure JPOXMLDOC01-appb-M000049
 ここで、式(8)が成立することから、式(25)は原信号を用いた場合の誤差rを用いて次式のように表すことができる。
Figure JPOXMLDOC01-appb-M000050
(ステップS07)
 更新した残差r^が目標値ε内であるかを確認する。
Figure JPOXMLDOC01-appb-M000051
 式(25-2)を満たすとき終了となるが、式(25-1)及びノルム不変の性質より、
Figure JPOXMLDOC01-appb-M000052
が成立する。つまり、秘匿信号y^やD^での停止条件は原信号(y及びD)での停止条件と等しくなる。
 以上より、秘匿信号を用いて計算されるスパース係数x^は、原信号を用いて計算されるスパース係数xと等しいことが証明された。
4.スパースコーディングの秘匿演算のシステムの具体的構成
 図4及び図5は、スパースコーディングの秘匿演算のシステムを説明する具体的構成図である。スパースコーディングの秘匿演算のシステムは、ローカル処理部11とエッジ/クラウド処理部12で構成される。
 図4は、前述した辞書行列変換手順時の図である。
 ローカル処理部11は、辞書学習部21、ランダムユニタリ変換部22、キャッシュ部23、送信部24を備える。辞書学習部21は、学習用の観測信号yを受信し、K-SVD法などを用い学習して辞書行列Dを生成する。なお、辞書行列Dが予め与えられている場合は、辞書学習部21は不要である。ランダムユニタリ変換部22は、辞書行列Dを鍵pによって生成されるM×M行列であるランダムユニタリ行列Qを用いて秘匿化して秘匿辞書行列D^に変換する。キャッシュ部23は、ランダムユニタリ変換部22で生成された秘匿辞書行列D^を一時保管する。送信部24は、当該秘匿辞書行列D^をエッジ/クラウド処理部12へ送信する。
 エッジ/クラウド処理部12は、受信部25及びデータベース部26を備える。送信部25は、ローカル処理部11から送信されてきた秘匿辞書行列D^を受信する。データベース部26は、当該秘匿辞書行列D^を保存する。
 図5は、前述した観測信号変換手順及び演算手順時の図である。
 これらの手順では、ローカル処理部11において辞書学習部21は不要である。ランダムユニタリ変換部22は、観測信号ベクトルyを前記ランダムユニタリ行列Qを用いて秘匿化して秘匿観測信号y^に変換する。キャッシュ部23は、ランダムユニタリ変換部22で生成された秘匿観測信号y^を一時保管する。送信部24は、当該秘匿観測信号y^をエッジ/クラウド処理部12へ送信する。
 エッジ/クラウド処理部12は、受信部25及びデータベース部26の他に、メインループ部13、初期化部31、及びスパース係数出力部37を備える。送信部25は、ローカル処理部11から送信されてきた秘匿観測信号y^を受信する。送信部25は、初めて秘匿観測信号y^を受信したときに、初期化部31へ転送し、図6の直交マッチング追跡法において秘匿演算アルゴリズムのステップS01をさせる。以降送信部25は、受信した秘匿観測信号y^をメインループ部13へ転送する。
 メインループ部13は、秘匿観測信号y^とデータベース部26が保存する秘匿辞書行列D^を用いて、スパース係数x^を演算する。メインループ部13は、近似誤差算出部32、サポート更新部33、最良解探索部34、残差更新部35及び演算停止部36を有する。
 近似誤差算出部32は、データベース部26が保存する秘匿辞書行列D^と、秘匿観測信号y^(初期化された残差)、初期解x、及び解の初期サポートS、もしくは秘匿観測信号y^、直前に演算された解xk-1、残差r^k-1、解のサポートSk-1を用いて、近似誤差ε^(i)を演算する(図6のステップS03)。サポート更新部33は、近似誤差算出部32が演算した近似誤差ε^(i)を用いてサポートSを更新する(図6のステップS04)。
 最良解探索部34は、サポート更新部33が更新したサポートSとデータベース部26が保存する秘匿辞書行列D^を用いてサポートS内での最良解x^を探索する(図6のステップS05)。残差更新部35は、最良解探索部34が探索した最良解x^とデータベース部26が保存する秘匿辞書行列D^を用いて残差r^を更新する(図6のステップS06)。演算停止部36は、残差更新部35が更新した残差r^が目標値εに収まっているか否かを判断し、収まっていれば、最良解探索部34が探索した最良解x^をスパース係数出力部37に出力させる。一方、収まっていなければ、演算停止部36は、残差r^及び最良解x^を近似誤差算出部32に引き渡し、再度演算を繰り返させる。
 つまり、本実施形態で説明したスパースコーディングの秘匿演算方法は、観測信号yをランダムユニタリ行列Qpで秘匿化した秘匿観測信号y^と、辞書行列DをQpで秘匿化した秘匿辞書行列D^とを用い、直交マッチング追跡法OMPにより最適化問題を解くことで、スパース係数xの近似値を計算する方法である。
5.本秘匿演算方法の効果
 本実施形態で説明したスパースコーディングの秘匿演算方法は、プライバシーを保護しつつエッジ/クラウドの計算資源を利用したスパースコーディングの実行が可能である。本実施形態で説明したスパースコーディングの秘匿演算方法は、プライバシー保護のため観測信号と辞書行列を秘匿した状態でスパース係数を推定でき、かつ普及したアプリケーションでの利用が可能である。
(実施形態2)
 本実施形態は、実施形態1で説明したスパースコーディングの秘匿演算方法を画像認識、特に人物の顔を特定する顔画像認識に適用した画像認識システムである。
 スパースコーディングを用いて顔画像のクラス分類を行う顔画像認識技術は、例えば、非特許文献2に開示されている。図7~図9は、非特許文献2に開示されている顔画像認識技術を説明する図である。図7に説明するように、同じクラス(人物)について、照明や顔の向きなどが異なる低次元(解像度が低い)の複数の画像がある。任意の一枚の画像は、同じクラス(人物)のその他の複数画像の重ね合わせによって表現される。例えば、図8のように、辞書Dが9個の列ベクトルの基底di(i=1~9)を要素とする行列(3クラスで各クラス3つのサンプル画像である)、Xをスパース係数とすると、任意の1クラスに属するテストサンプル(観測信号ベクトル)Yを
Y=DX
で表現できる。
 図9(A)に示す式はテストサンプルY(数式では“y”)をクラス分類するときの計算式である。まず、クラスiの辞書を利用して、テストサンプルYとの再生誤差を計算する(図9(B))。辞書に適合しないテストサンプルは、より大きな再生誤差が発生する。このため、テストサンプルYと全てのクラスiとの再生誤差を計算して、もっとも再生誤差が小さいクラス(計算した再生誤差に最も近いスパースコーディングのクラス)に、テストサンプルYを分類する。
[1]システムモデル
 本節ではまずエッジとクラウドを用いたシステムのアーキテクチャについて説明する。図10は、本実施形態の画像認識システム301を説明する図である。画像認識システム301は、N台の端末111(Nは2以上の整数)、M台の転送サーバ112(Mは1以上の整数)、及び画像認識サーバ113を備える画像認識システムである。
 iを識別する画像のクラス、j及びk(k∈j)を端末111の番号とし、画像y がK個(K>M)の基底を要素とするM×K行列である辞書行列D とK次元のベクトルであるスパース係数X を用いて、y =D ・X と表せるとする。
 端末111は、
 鍵pを用いて生成されるランダムユニタリ行列Qpでテスト画像を暗号化して暗号化テスト画像を生成し、前記暗号化テスト画像を指定されている1台の転送サーバ112へ転送する。
 転送サーバ112は、
 前記暗号化テスト画像をダウンサンプリングするとともに1次元の暗号化画像ベクトルへ変換し、前記暗号化画像ベクトルを画像認識サーバ113へ転送する。
 画像認識サーバ113は、
 異なるトレーニング画像を用いて生成された複数の辞書を前記ランダムユニタリ行列Qpで暗号化した複数の暗号化辞書を用い、前記暗号化辞書毎に前記数C1で表される最適化問題を直交マッチング追跡法で解いて前記暗号化画像ベクトルのクラスを前記暗号化辞書毎に推定し、前記暗号化辞書毎に推定した前記クラスに対してアンサンブル学習を行って前記暗号化画像ベクトルのクラスを1つ判定する
ことを特徴とする。
Figure JPOXMLDOC01-appb-M000053
 まず、スパース表現に基づく顔認識のための方法について述べ、プライバシー制約のもと(暗号化を施した状態)での最適化問題の定式化を行う。なお、以下の説明では、「端末」を「デバイス」、「転送サーバ」を「エッジサーバ」、「画像認識サーバ」を「クラウド」と記載することがある。
A.エッジおよびクラウドシステム
 システム301では、N個のモバイルデバイス111が、M個のエッジサーバ112を介して、1個のリモートクラウドサーバ113に接続されている。モバイルデバイス111は、インタラクティブゲームや仮想現実アプリケーションのような顔認識を含むアプリケーションを実行する。
 各モバイル機器jは、“L”で示されるL個のクラスの人物のうちクラスiのためのB 個のトレーニングサンプルを有する(非特許文献2を参照。)。各エッジサーバ112は無線アクセスポイントに配置された軽量コンピューティングである。一方、リモートクラウド113はより強力なプロセッサを搭載し、バックボーンネットワークを使用してエッジサーバ112と接続する。
 エッジとクラウドを利用したコンピューティングでは、モバイルデバイス111は、ワイヤレスチャネルを介して近接しているエッジサーバ112にその計算タスクをオフロードする。クラウドサーバ113とともにエッジサーバ112がモバイルデバイス111の代わりに計算タスクを実行する。
B.顔画像のスパース表現
 顔認識は、L個の異なるクラスからのラベル付きトレーニングサンプル(L人の顔画像)を用いて、新しいテストサンプルが属するクラスを決定することである。本実施形態では、非特許文献2に以下のように定義されている部分空間モデルを採用する。
〔定義1〕(顔部分空間モデル)
Figure JPOXMLDOC01-appb-M000054
とする。
 トレーニングサンプルB は、b個の列ベクトルd(i,n) の積み重ね(正確には、iのクラス(i番目の人)のデバイスjでは、b個の列ベクトルの重み付き線形和)として表すことができる。辞書D は数2-0で定式化することができる。数2-1で表せる、同じクラスy からのいずれのテストサンプルも、ほぼB の範囲のサブスペースにある。
Figure JPOXMLDOC01-appb-M000055
ここで、X は各要素のウエイトである。

-定義1終わり-

 なお、「サブスペース」とは、式(2-0)で表現される辞書D と対応する係数X との線形重み和で表される空間である。換言すると、「サブスペース」とは、iのクラス(i番目の人)のデバイスjを表現する、式(1)で定義される空間のことである。
 デバイスjの辞書Dは次のように定義される。
Figure JPOXMLDOC01-appb-M000056
定義1によれば、どのテスト画像yも辞書D上にまばらに表すことができる。
Figure JPOXMLDOC01-appb-M000057
ここで、Xはスパース係数である。
Figure JPOXMLDOC01-appb-M000058
 もし、数2-3aであり、Dが過完備な行列である場合、式(2-3)において、解は一意に求めることができない。この問題は以下のl最小化問題を解くことで解決できる。
Figure JPOXMLDOC01-appb-M000059
 ここで、εはsparsity制約(誤差の目標値)を表す。上記の最適化問題は、直交マッチング追跡法(OMP)を用いて効率的に解くことができる。
C.問題の定式化
 サンプルデータy,j∈Nが与えられたときに、数2-4でスパース係数X^を計算する。理想的には、X^の要素が非ゼロの場合は、1つのクラスの辞書D列に関連付けられる。たとえば、
Figure JPOXMLDOC01-appb-M000060
と指定すると、yをクラスiに代入できる。しかし、ノイズとモデリングエラーのため、他のクラスに関連付けられた非ゼロの小さなエントリが存在する。この問題に対処するために、
Figure JPOXMLDOC01-appb-M000061
を定義する。この非ゼロの項目は、Xの項目に対応するだけでなく、l番目のクラスにのみ関連する。l番目のクラスに対応する係数だけを使って、テストサンプルyを数2-4cで近似し、数2-5の最適化問題に従ってyを分類することができる。
Figure JPOXMLDOC01-appb-M000062
Figure JPOXMLDOC01-appb-M000063
ここで、r (y)は、各クラス固有の近似誤差を表す。
 このような方式は顔認識において有効であることが非特許文献2に示されている。しかし、このクラス分類はデバイス毎の辞書のみに基づいて行われるため、ノイズおよびモデリングエラーに対して脆弱である。
 本発明の目的は、上述のように、エッジおよびクラウドシステムにおいて、セキュリティを保証する一方で、マルチデバイスダイバーシチを利用することによって再生誤差を最小化するためのフレームワークを構築することである。そして、それは形式的に以下のように定式化できる。
Figure JPOXMLDOC01-appb-M000064

 数2-6において、一段目の式は、再生誤差の最小化を図るフレームワーク、二段目と三段目の式は、セキュリティ(暗号化)の確保、四段目の式は、平文領域と暗号化領域で演算の精度さが無いことを意味する。
[2]安全なスパース表現
 本節では、顔認識のためのエッジおよびクラウドを用いたセキュリティを確保したスパース表現のためのフレームワークを説明する。式(6)のプライバシー保護の制約を満足するランダムユニタリ変換を紹介し、3つの重要な性質について述べる。その性質に基づいて顔認識の結果がランダムユニタリ変換で影響を受けないことを説明する。そして、マルチデバイスダイバーシチを利用するための、アンサンブル学習のフレームワークを説明する。スパース表現および関連する再生誤差は、クラウドの各辞書に従って計算され、それはメンバ分類器として機能する。これらのメンバ分類器は、クラス判定の精度を向上させるために、式(6)を解き、その結果を判定器に通知する。
A.ランダムユニタリ変換
 システムのプライバシー保護だけでなく、暗号領域で動作するアルゴリズムを可能にするために、ランダムユニタリ変換は一つの有望な方法である。これはバイオメトリックテンプレート保護とネットワークBMI符号化に有効であることが証明されている(例えば、非特許文献3を参照。)。
 秘密鍵pを有するランダムユニタリ行列Qp∈Cm×mによって暗号化された任意のベクトルv∈Rm×lは以下のように表すことができる。
Figure JPOXMLDOC01-appb-M000065
Figure JPOXMLDOC01-appb-M000066
ここで、[・]はエルミート転置行列、Iは単位行列を表す。Qpの生成にはグラムシュミット直交化を用いることができる。暗号化されたベクトルには、次のような3つの特性がある。
・ユークリッド距離の保存
Figure JPOXMLDOC01-appb-M000067
・ノルム不変
Figure JPOXMLDOC01-appb-M000068
・内積の保存
Figure JPOXMLDOC01-appb-M000069
B.安全なスパース表現と認識
 ランダムユニタリ変換を用いることで、トレーニングサンプル
Figure JPOXMLDOC01-appb-M000070
とテスト用のサンプル
Figure JPOXMLDOC01-appb-M000071
は、次式のように暗号化される。
Figure JPOXMLDOC01-appb-M000072
 数12は、図11のように画像を暗号化することを意味する。
 さらに、数2-2によって辞書は次式のように暗号化される。
Figure JPOXMLDOC01-appb-M000073
 安全なスパース表現を得るために、暗号化領域での最適化問題を定式化する。
Figure JPOXMLDOC01-appb-M000074
なお、数2-14の解X^(j、k)は、暗号化を施さない場合の解X(j、k)と同じになる。
 ここで、次の定理において、顔認識の結果が暗号化の有無で影響されないことを証明する。
〔定理1〕数2-6を解くことによる結果(数2-14a)は、数2-15を解くことによる結果(数2-14b)と同じである。
Figure JPOXMLDOC01-appb-M000075
Figure JPOXMLDOC01-appb-M000076
Figure JPOXMLDOC01-appb-M000077
証明:(数2-14a)が通常小さいことを観測すると、数2-16が得られる。
Figure JPOXMLDOC01-appb-M000078
 ユニタリ変換の性質から
Figure JPOXMLDOC01-appb-M000079
を得る。従って、数2-16は次のように変換できる。
Figure JPOXMLDOC01-appb-M000080
これは、数2-14bと同じである。
 図12は、暗号化を行った場合と行わない場合の顔認識の性能を比較する図である。横軸はデバイスの数、縦軸は認識の正確性(1に近いほど正確)である。このように、暗号化を行った場合と行わない場合で、顔認識の性能に差がないことを確認できた。したがって、ユニタリランダム変換を採用することによって、本発明のアルゴリズムは、性能を低下させることなく暗号化領域で動作するという結論を得られる。
C.アンサンブル学習フレームワーク
 ここで、「アンサンブル学習」とは、個々に別々のメンバ分類器を用いて学習させたものを融合させることで、未学習のデータに対しての予測能力を向上させる学習である。アンサンブル学習の具体例としては、複数の暗号化辞書D^のそれぞれを用いて推定したクラスのうち、同じクラスと推定されたものが最も多いクラスを最終的なクラスとして判定(多数決投票)するようにしてもよい。また、複数の暗号化辞書D^のそれぞれについて数2-6の最適化問題を解いてy^の再生誤差(数2-18)を求め、複数の暗号化辞書D^のそれぞれを用いて推定したクラスのうち、数2-6の値が最も小さくなるときのクラスを最終的なクラスとして判定するようにしてもよい。
Figure JPOXMLDOC01-appb-M000081
 アンサンブル学習フレームワークは、辞書学習と認識のステージから構成される図13のアルゴリズム1を備える。当該アルゴリズム1のステップ2において、トレーニングイメージd(i,n) のnは次の意味である。iのクラス(i番目の人)のデバイスjのトレーニングイメージは、b 個の列ベクトルの重み付き線形和で表現されており、nはそのときの列ベクトルの任意の要素を表す(n=1,2,・・・,b )。具体的には、トレーニングイメージをb 個の列ベクトル
Figure JPOXMLDOC01-appb-M000082
で表すとき、d(i,n) はその中の任意のトレーニングイメージを指す。
[辞書学習のステージ]
 辞書学習のステージは、図14及び図15に示すように3ステップで構成されている。まず、それぞれデバイスjは、全てのトレーニングサンプルを暗号化し、定められたエッジサーバ112へ転送する。次に、暗号化トレーニングサンプルをダウンサンプリングして縮小化し、暗号化辞書D^,∀∈Nは数2-13で定式化される。最後に暗号化辞書D^はクラウドサーバへ転送される。なお、数2-13は暗号化辞書と平文の辞書との関係を示したもので、実際には図14のように暗号化トレーニングサンプルのみから暗号化辞書を作成する。例えば、図7では、ある人物が3つの画像の線形重み和で表されており、これら3つの画像をそれぞれ暗号化したものが暗号化トレーニングサンプルである。そして、暗号化辞書の各要素は、暗号化トレーニングサンプル(d1、d2、d3)そのもので構成される(各人物の要素の列を並べると暗号化辞書となる。)。
 暗号化辞書はトレーニングサンプルよりもデータサイズが小さい。トレーニング画像はクラウドに直接送信されないため、エッジサーバとクラウド間に必要なネットワーク帯域幅を低減できる。
[認識のステージ]
 図16及び図17は認識のステージを説明する図である。クラウドサーバ113は、複数のメンバ分類器(121-1~121-N)、及び判定器122を備える。さらに、クラウドサーバ113は、複数の暗号化辞書(D^~D^N)を保持する。
 まず、デバイスkがテスト画像を暗号化して指定エッジサーバ112に送信する。次に、エッジサーバ112は、暗号化テスト画像をダウンサンプリングして縮小化し、さらに1次元の暗号化テストベクトルy^を作成する。エッジサーバ112は、当該暗号化テストベクトルy^をクラウドサーバ113に送信する。
 そして、暗号化された各辞書は、アンサンブル学習フレームワークのメンバー分類器として機能する。クラウドサーバ113は、暗号化テストベクトルy^を受信すると、メンバ分類器121-j(j∈N)が数2-14を解き、スパース表現X^(j、k)を計算する。さらに、メンバ分類器121-jは、OMPを使用して数2-5(もしくは数2-17)を解くことで暗号化テストベクトルのクラスを分類し、再生誤差(数2-14a)を計算する。分類結果と再生誤差は判定器122へ渡される。最後に、判定器122が、それぞれのメンバ分類器からの分類結果と再生誤差について数2-6を解くことによってメンバ分類器の結果を結合(アンサンブル学習)して、最も再生誤差が小さいクラスに決定する。
(実施例1)
 実施形態で説明した画像認識方法と他の画像識別方法とを比較したシミュレーション結果を図18と図19に示す。他の画像識別方法は、比較例1がすべての訓練画像を利用して辞書を設計する方法(LD:Large Dictionary)、比較例2がアンサンブル学習において、多数決の投票でクラス分けを決定する方法(Vote)、比較例3が非特許文献2に記載される方法(SRC)である。図18は、デバイス数に対する認識の正確性を比較した図、図19はトレーニングサンプル数に対する認識の正確性を比較した図である。いずれの図においても、実施形態で説明した画像認識方法は他の画像識別方法よりも高い認識性能を有している。
(実施例2)
 図20は、認識の正確性をシミュレーションした結果である。図20の“Cloud”が実施形態で説明した画像認識方法である。図20の“デバイス1から5”はそれぞれのデバイスのみで構成した辞書を用いた場合の認識の正確性である。図20より、実施形態で説明した画像認識方法は各デバイスのみ構成される辞書を用いた方法よりも認識性能が高いことがわかる。さらに、実施形態で説明した画像認識方法はすべてのトレーニングサンプルを利用して辞書を作成した場合(LD)よりも顔画像の認識性能が高い。これはアンサンブル学習の効果といえる。
(実施例3)
 図21は、認識の正確性をシミュレーションした結果である。所望の認識の正確性を得るために要求されるトレーニングサンプル数について実施形態で説明した画像認識方法と他の画像識別方法とを比較している。要求されるトレーニングサンプル数が少ない方が認識の正確性の高い方法といえる。他の画像識別方法は、比較例1がディープラーニング(SPCNET)による辞書学習方法であり、比較例2がLC-KSVDによる辞書学習方法である。図21より、実施形態で説明した画像認識方法は、他の画像識別方法より、学習データが少ない時でも認識性能が高く、学習データが多い場合でもほぼ同等の認識性能を示している。
(実施例4)
 図22は、演算量について実施形態で説明した画像認識方法と他の画像識別方法とを比較した結果である。他の画像識別方法は、比較例1がディープラーニング(SPCNET)による辞書学習方法であり、比較例2がLC-KSVDによる辞書学習方法である。図22より、実施形態で説明した画像認識方法は、他の画像識別方法より、辞書学習時の演算もテスト画像認識時の演算も演算時間が短い。
[付記]
 本発明に係る画像認識システムは、マルチデバイスによるダイバーシチを活用することで、エッジとクラウドコンピューティングの利点を最大限に活用する。顔認識の性能を改善するために、各デバイスからの辞書に基づく結果を組み合わせることによって、認識性能を向上せることとした。
 また、特にクラウドによる計算結果の共有を可能にする場合、プライバシー漏洩を防止することは非常に重要である。本発明に係る画像認識システムは、プライバシーを考慮したスパース表現に基づくエッジ及びクラウドを顔認識のためのフレームワークを搭載している。
(1)ランダムユニタリ変換によってプライバシーを保護すること
 プライバシーを保護する一つの方法として、データを暗号化したたま計算する方法、いわゆる秘密計算が盛んに研究されている。秘密計算は一般にマルチパーティプロトコルや準同型暗号に基づき実行される。しかし、除算の困難性、計算効率及び計算精度などに課題があり、ソーティング処理や幾つかの統計解析に限定されるなど、十分な普及には至っていない。この問題に対処するために、ランダムユニタリ変換に基づく低演算な暗号化アルゴリズムがある。本実施形態で、このような暗号化が顔認識の結果に影響しないことを理論とシミュレーションの両方で証明した。
(2)アンサンブル学習によるマルチデバイスダイバーシチを活用すること
 辞書ベースの顔認識アルゴリズムの性能は、トレーニングサンプル数に大きく依存する。その場合、帯域幅とストレージのコストによりクラウドで全てのトレーニングサンプルを集めることは困難である。本実施形態では、クラウドによって提供されるダーバーシティを用いて、各デバイスから生成される辞書に基づく認識結果のみをアンサンブル学習を通して統合することとした。そして、シミュレーション結果を通して認識率が高くロバスト(雑音に強い)であることを証明した。
11:ローカル処理部
12:エッジ/クラウド処理部
13:メインループ部
21:辞書学習部
22:ランダムユニタリ変換部
23:キャッシュ部
24:送信部
25:受信部
26:データベース部
31:初期化部
32:近似誤差算出部
33:サポート更新部
34:最良解探索部
35:残差更新部
36:演算停止部
37:スパース係数出力部
111:端末(デバイス)
112:転送サーバ(エッジサーバ)
113:画像認識サーバ(クラウドサーバ)
121:メンバ分類器
122:判別器
301:画像認識システム

Claims (3)

  1.  N台の端末(Nは2以上の整数)、M台の転送サーバ(Mは1以上の整数)、及び画像認識サーバを備える画像認識システムであって、
     iを識別する画像のクラス、j及びk(k∈j)を前記端末の番号とし、画像y がK個(K>M)の基底を要素とするM×K行列である辞書行列D とK次元のベクトルであるスパース係数X を用いて、y =D ・X と表せるとき、
     前記端末は、
     鍵pを用いて生成されるランダムユニタリ行列Qpでテスト画像を暗号化して暗号化テスト画像を生成し、前記暗号化テスト画像を指定されている1台の前記転送サーバへ転送し、
     前記転送サーバは、
     前記暗号化テスト画像をダウンサンプリングするとともに1次元の暗号化画像ベクトルへ変換し、前記暗号化画像ベクトルを前記画像認識サーバへ転送し、
     前記画像認識サーバは、
     異なるトレーニング画像を用いて生成された複数の辞書を前記ランダムユニタリ行列Qpで暗号化した複数の暗号化辞書を用い、前記暗号化辞書毎に数C1で表される最適化問題を直交マッチング追跡法で解いて前記暗号化画像ベクトルのクラスを前記暗号化辞書毎に推定し、前記暗号化辞書毎に推定した前記クラスに対してアンサンブル学習を行って前記暗号化画像ベクトルのクラスを1つ判定する
    ことを特徴とする画像認識システム。
    Figure JPOXMLDOC01-appb-M000001
  2.  鍵pを用いて生成されるランダムユニタリ行列Qpでテスト画像を暗号化した暗号化テスト画像がダウンサンプリングされ、さらに1次元に変換された暗号化画像ベクトル、及び、異なるトレーニング画像を用いて生成された複数の辞書を前記ランダムユニタリ行列Qpで暗号化した複数の暗号化辞書が入力される入力部と、
     前記暗号化辞書毎に数C1で表される最適化問題を直交マッチング追跡法で解いて、前記暗号化画像ベクトルのクラスを前記暗号化辞書毎に推定し、前記暗号化辞書毎に推定した前記クラスに対してアンサンブル学習を行って前記暗号化画像ベクトルのクラスを1つ判定する判定部と、
    を備える画像認識サーバ。
    Figure JPOXMLDOC01-appb-M000002
  3.  N台の端末(Nは2以上の整数)、M台の転送サーバ(Mは1以上の整数)、及び画像認識サーバを備える画像認識システムで行う画像認識方法あって、
     iを識別する画像のクラス、j及びk(k∈j)を前記端末の番号とし、画像y がK個(K>M)の基底を要素とするM×K行列である辞書行列D とK次元のベクトルであるスパース係数X を用いて、y =D ・X と表せるとき、
     前記端末で、鍵pを用いて生成されるランダムユニタリ行列Qpでテスト画像を暗号化して暗号化テスト画像を生成し、前記暗号化テスト画像を指定されている1台の前記転送サーバへ転送し、
     前記転送サーバで、前記暗号化テスト画像をダウンサンプリングするとともに1次元の暗号化画像ベクトルへ変換し、前記暗号化画像ベクトルを前記画像認識サーバへ転送し、
     前記画像認識サーバで、異なるトレーニング画像を用いて生成された複数の辞書を前記ランダムユニタリ行列Qpで暗号化した複数の暗号化辞書を用い、前記暗号化辞書毎に数C1で表される最適化問題を直交マッチング追跡法で解いて前記暗号化画像ベクトルのクラスを前記暗号化辞書毎に推定し、前記暗号化辞書毎に推定した前記クラスに対してアンサンブル学習を行って前記暗号化画像ベクトルのクラスを1つ判定する
    ことを特徴とする画像認識方法。
    Figure JPOXMLDOC01-appb-M000003
PCT/JP2019/022641 2019-06-06 2019-06-06 画像認識システム、画像認識サーバ、及び画像認識方法 WO2020246010A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2021524626A JPWO2020246010A1 (ja) 2019-06-06 2019-06-06
US17/596,071 US20220343691A1 (en) 2019-06-06 2019-06-06 Image recognition system, image recognition server, and image recognition
PCT/JP2019/022641 WO2020246010A1 (ja) 2019-06-06 2019-06-06 画像認識システム、画像認識サーバ、及び画像認識方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/022641 WO2020246010A1 (ja) 2019-06-06 2019-06-06 画像認識システム、画像認識サーバ、及び画像認識方法

Publications (1)

Publication Number Publication Date
WO2020246010A1 true WO2020246010A1 (ja) 2020-12-10

Family

ID=73653095

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/022641 WO2020246010A1 (ja) 2019-06-06 2019-06-06 画像認識システム、画像認識サーバ、及び画像認識方法

Country Status (3)

Country Link
US (1) US20220343691A1 (ja)
JP (1) JPWO2020246010A1 (ja)
WO (1) WO2020246010A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112580011A (zh) * 2020-12-25 2021-03-30 华南理工大学 一种面向生物特征隐私保护的人像加解密系统
CN113223101A (zh) * 2021-05-28 2021-08-06 支付宝(杭州)信息技术有限公司 基于隐私保护的图像处理方法、装置及设备

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116467102B (zh) * 2023-05-12 2023-11-14 杭州天卓网络有限公司 一种基于边缘算法的故障检测方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005044330A (ja) * 2003-07-24 2005-02-17 Univ Of California San Diego 弱仮説生成装置及び方法、学習装置及び方法、検出装置及び方法、表情学習装置及び方法、表情認識装置及び方法、並びにロボット装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7072774B2 (ja) * 2018-05-30 2022-05-23 日本電信電話株式会社 スパースコーディングの秘匿演算方法、秘匿演算装置及びプログラム
CN112368708B (zh) * 2018-07-02 2024-04-30 斯托瓦斯医学研究所 使用伪图像的面部图像识别

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005044330A (ja) * 2003-07-24 2005-02-17 Univ Of California San Diego 弱仮説生成装置及び方法、学習装置及び方法、検出装置及び方法、表情学習装置及び方法、表情認識装置及び方法、並びにロボット装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
NAKACHI, TAKAYUKI ET AL.: "Secure Computation of Sparse Coding for Privacy Protection", TECHNICAL REPORTS OF THE SPECIAL INTEREST GROUPS OF AUDIO VISUAL AND MULTIMEDIA INFORMATION PROCESSING (IPSJ-AVM, vol. 2018 -AV, no. 2, 31 May 2018 (2018-05-31), pages 1 - 6 *
NAKAMURA, IBUKI ET AL.: "A Generation Scheme of Protected Templates Based on Orthogonal Transforms for Biometrics", TECHNICAL REPORTS OF THE SPECIAL INTEREST GROUPS OF AUDIO VISUAL AND MULTIMEDIA INFORMATION PROCESSING (IPSJ-AVM, vol. 2014 -AV, no. 2, 4 September 2014 (2014-09-04), pages 1 - 6 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112580011A (zh) * 2020-12-25 2021-03-30 华南理工大学 一种面向生物特征隐私保护的人像加解密系统
CN112580011B (zh) * 2020-12-25 2022-05-24 华南理工大学 一种面向生物特征隐私保护的人像加解密系统
CN113223101A (zh) * 2021-05-28 2021-08-06 支付宝(杭州)信息技术有限公司 基于隐私保护的图像处理方法、装置及设备
CN113223101B (zh) * 2021-05-28 2022-12-09 支付宝(杭州)信息技术有限公司 基于隐私保护的图像处理方法、装置及设备

Also Published As

Publication number Publication date
US20220343691A1 (en) 2022-10-27
JPWO2020246010A1 (ja) 2020-12-10

Similar Documents

Publication Publication Date Title
KR102536354B1 (ko) 바이오메트릭 식별을 위한 시스템 및 방법
Burges Geometric methods for feature extraction and dimensional reduction-a guided tour
Majumdar et al. Robust classifiers for data reduced via random projections
Yu General C-means clustering model
Barnes et al. rTop-k: A statistical estimation approach to distributed SGD
WO2020246010A1 (ja) 画像認識システム、画像認識サーバ、及び画像認識方法
WO2022015948A1 (en) Privacy-preserving fuzzy query system and method
Basati et al. APAE: an IoT intrusion detection system using asymmetric parallel auto-encoder
Fagbohungbe et al. Efficient privacy preserving edge intelligent computing framework for image classification in IoT
Wang et al. A privacy-preserving learning framework for face recognition in edge and cloud networks
Dong et al. Privacy-preserving distributed machine learning based on secret sharing
US11949770B2 (en) Method and system for confidential classification of data
Li et al. Incoherent dictionary learning with log-regularizer based on proximal operators
Fontenla‐Romero et al. DSVD‐autoencoder: a scalable distributed privacy‐preserving method for one‐class classification
Moradi et al. A real-time biometric encryption scheme based on fuzzy logic for IoT
Xiao et al. Dauntless: Data augmentation and uniform transformation for learning with scalability and security
Gao et al. Privacy-preserving face recognition with multi-edge assistance for intelligent security systems
JP7072774B2 (ja) スパースコーディングの秘匿演算方法、秘匿演算装置及びプログラム
Maekawa et al. Privacy-preserving SVM computing by using random unitary transformation
Nakachi et al. Secure dictionary learning for sparse representation
US10922379B2 (en) Method for processing electronic data
Wang et al. ezDPS: An efficient and zero-knowledge machine learning inference pipeline
Grasselli et al. Elements of Quantum Information Theory
Wang et al. Edge and cloud-aided secure sparse representation for face recognition
Liang et al. Low-complexity privacy preserving scheme based on compressed sensing and non-negative matrix factorization for image data

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021524626

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19931631

Country of ref document: EP

Kind code of ref document: A1