WO2018131405A1 - 情報処理装置、方法及びコンピュータ可読記憶媒体 - Google Patents

情報処理装置、方法及びコンピュータ可読記憶媒体 Download PDF

Info

Publication number
WO2018131405A1
WO2018131405A1 PCT/JP2017/045656 JP2017045656W WO2018131405A1 WO 2018131405 A1 WO2018131405 A1 WO 2018131405A1 JP 2017045656 W JP2017045656 W JP 2017045656W WO 2018131405 A1 WO2018131405 A1 WO 2018131405A1
Authority
WO
WIPO (PCT)
Prior art keywords
neural network
weight
gradient
input values
information processing
Prior art date
Application number
PCT/JP2017/045656
Other languages
English (en)
French (fr)
Inventor
祐介 内田
茂之 酒澤
Original Assignee
Kddi株式会社
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 Kddi株式会社 filed Critical Kddi株式会社
Priority to JP2018561888A priority Critical patent/JP6727340B2/ja
Priority to CN201780082089.2A priority patent/CN110168576B/zh
Priority to EP17891383.6A priority patent/EP3570222B1/en
Publication of WO2018131405A1 publication Critical patent/WO2018131405A1/ja
Priority to US16/424,840 priority patent/US11521043B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/16Program or content traceability, e.g. by watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0065Extraction of an embedded watermark; Reliable detection

Definitions

  • the present invention relates to a technique for embedding watermark information in a neural network.
  • a neural network is a mathematical model that aims to express characteristics in the brain of a living body by computer simulation. This refers to all models in which an artificial neuron (unit) that forms a network by synaptic connections changes the strength of synaptic connections through learning and has problem-solving ability.
  • Patent Documents 1 to 3 and Non-Patent Documents 1 to 3 disclose techniques for optimizing the structure of a neural network.
  • Patent Document 2 discloses a technique for efficiently setting the weight of a large-scale convolutional neural network.
  • patent document 3 is disclosing the technique which detects an acoustic event using a neural network.
  • Non-Patent Documents 1 and 2 disclose convolutional neural networks suitable for image recognition.
  • Non-Patent Document 3 discloses a technique for estimating the part of speech of a word using a neural network.
  • Non-Patent Document 2 states that learning for two to three weeks is required using four GPUs (Graphics Processing Unit). For this reason, Non-Patent Documents 4 and 5 do not learn the model parameters inside the neural network, but divert part of the model parameters that have been learned in advance, or re-learn the model parameters as initial values. Is disclosed.
  • the main purpose is to increase the efficiency of research, and the learned model parameters may be distributed in a license form that can be used by research institutions.
  • model parameters of the usage target are corrected and relearning is performed using the model parameters of the usage target as initial values, neither the model structure nor the model parameters match the original. is there.
  • Non-Patent Documents 6 and 7 propose a technique that uses a neural network to embed watermark information in moving image data.
  • the inventors of the present application thought that watermark information could be embedded in the model parameters of the neural network. That is, even if a part of the model parameter is re-learned, if the watermark information can be detected from the model parameter, it may be possible to detect the model parameter that is illegally used. I thought.
  • the present invention provides a technique for embedding watermark information in a neural network.
  • an information processing method is an information processing method for embedding a watermark bit in a weight of a first neural network, and a plurality of input values obtained from a plurality of weights of the first neural network.
  • watermark information can be embedded in a neural network.
  • FIG. 1 is a general functional configuration diagram of a neural network.
  • the neural network Although there are various configurations as a neural network, it is basically expressed by superposition (or graph structure) of a plurality of types of layers.
  • the neural network receives teacher data in which input data and correct labels are associated with each other. Then, the neural network learns model parameters so that the final output result for the input data matches the correct answer label (approximate the output for the input according to the task).
  • a forward propagation neural network is composed of three layers, an input layer (input layer), a hidden layer (hidden layer), and an output layer (output layer). Propagating in one direction from the output layer to the output layer.
  • the hidden layer can be composed of a plurality of layers. Each layer has a plurality of units (neurons), and a parameter called “weight” is associated with each input from the unit in the front layer to the unit in the rear layer. Learning is to calculate an appropriate “weight”.
  • Fig. 1 shows a convolutional neural network (Convolutional Neural Network, CNN).
  • the convolutional neural network includes an input layer, a convolutional layer, a pooling layer, a full-connected layer, and an output layer.
  • Learning means to update the weight of each layer optimally using the error between the output data from the output layer for the input data and the correct answer label for the input data.
  • a “loss function” is defined. Errors are propagated one after another from the output layer side to the input layer side by the “error back propagation method”, whereby the weight of each layer is updated little by little. Finally, a convergence calculation is performed to adjust the weight of each layer to an appropriate value so as to reduce the error.
  • FIG. 2 is an explanatory diagram showing the convolution relationship between the input data and the feature map.
  • FIG. 2 The process in FIG. 2 is performed by a convolution layer and a fully connected layer.
  • one feature map is generated by using one weight filter for input data.
  • the sizes of the input data, the weight filter, and the feature map are as follows.
  • Input data 32 x 32 x 3 elements
  • Weight filter 5 x 5 x 3 elements (weight)
  • Feature map 28 x 28 elements
  • N weighting filters are prepared, which are model parameters. That is, in this example, the model parameter means N weighting filters. However, the bias term is not considered here.
  • FIG. 3 is an explanatory diagram showing generation of a feature map using a weight filter.
  • one weight filter having 5 ⁇ 5 ⁇ 3 weights is assigned to the input data, and a value obtained by integrating the product of the position values corresponding to the input data and the weight filter is obtained as a feature map.
  • the value of one element of the same weight filter is moved with respect to the input data to generate one feature map.
  • the number of elements to be moved (movement amount) is referred to as “stride”.
  • a zero-padding region in which element 0 is filled can be provided at the peripheral edge (edge) of the input data.
  • the same number of weight filters can be applied to the edge elements of the input data.
  • FIG. 4 is an explanatory diagram showing the relationship between N weight filters and N-stage feature maps.
  • the weight filter is composed of N pieces. According to FIG. 2 and FIG. 3, one feature map is generated by one weight filter. Therefore, as shown in FIG. 4, an N-stage feature map is generated by N weighting filters.
  • FIG. 5 is an explanatory diagram of an information processing method in the information processing apparatus according to the present embodiment.
  • watermark bits more specifically, the number of watermark bits and the value of each bit (0 or 1) are defined in advance.
  • the number of watermark bits is B.
  • the information processing apparatus holds information for configuring the first neural network for the target task and the second neural network.
  • the target task refers to a task based on its usage in a neural network based on, for example, image recognition, voice recognition, or natural language processing.
  • the second neural network is a neural network for extracting a watermark bit from a value based on the weight (model parameter) of the first neural network.
  • a watermark bit extracted (output) by the second neural network is referred to as an extracted watermark bit in order to distinguish a watermark bit extracted by the second neural network from a predefined watermark bit.
  • a loss function for evaluating the error between the extracted watermark bit and the watermark bit is also defined for the second neural network.
  • the configuration of the second neural network and each parameter will be described later, but the value of the parameter (weight) is fixed at a predetermined value. That is, the second neural network is also a fixed function that receives a value based on the weight of the first neural network as an input and outputs the same number of extracted watermark bits as the watermark bits.
  • a gradient is obtained by the error back propagation method, and each weight is repeatedly updated based on the corresponding gradient.
  • input data is input to the first neural network, and the first gradient ⁇ E is obtained for each weight of the first neural network based on the correct answer label for the input data.
  • the average weight obtained from each weight of the first neural network is input to the second neural network, and the extracted watermark bits are output.
  • the second gradient ⁇ AE is obtained by the error back propagation method for each of the inputted average weights.
  • not the input data but the gradient for the weight that is a variable is obtained.
  • the parameters (weights) of the second neural network are fixed values, and in the present embodiment, contrary to normal, are input data, and the first neural network A second gradient for each average weight calculated from the weights is determined.
  • the average weight obtained from the weight of the first neural network is the parameter (weight) of the second neural network, and a fixed value determined in advance is used as the input data to the second neural network. Is equivalent to updating.
  • the second gradient obtained for each average weight, which is input data of the second neural network is added to the first gradient obtained for each weight of the first neural network, and each of the first neural network is obtained.
  • the weight is adjusted based on the gradient after addition.
  • FIG. 6 is an explanatory diagram showing processing steps of the information processing method.
  • a value based on the “weight” of the first neural network is input to the second neural network.
  • an average weight filter is obtained from N weight filters, and each weight of the average weight filter is used as an input to the second neural network.
  • the reason why the average weight filter is used as the input to the second neural network is that the modification of changing the order of the N weight filters to be applied to the input data is taken into consideration. Even if the order of the N weighting filters is changed, an essentially equivalent neural network is configured. Therefore, even if the watermark information can be embedded in each weight filter, the watermark information is easily destroyed by changing the order in which the weight filters are applied. Therefore, according to the present invention, an “average weight filter” obtained by averaging the weights of the N weight filters is generated and used as the input of the second neural network.
  • each weight of the average weight filter is regarded as a variable, and the second gradient ⁇ AE is obtained for each weight of the average weight filter by the error back propagation method.
  • required about the weight Pwhc of an average weight filter is described with (DELTA) AE whc .
  • the first neural network outputs output data, which is compared with the teacher label.
  • the first gradient ⁇ E is generated for each weight by the error back propagation method.
  • required about the weight Fnwhc is described with (DELTA) Enwhc .
  • the weight F nwhc of the first neural network is updated based on the sum of the gradient ⁇ E nwhc and ⁇ AE whc , or the value obtained by multiplying ⁇ AE whc by a predetermined coefficient and the gradient ⁇ E nwhc. .
  • the predetermined coefficient multiplied by ⁇ AE whc can be 1 / N.
  • the weight of the first neural network is updated based on the sum of the first gradient obtained for the weight and the second gradient obtained for the input of the second neural network obtained from the weight.
  • watermark information can be embedded in the weight filter of the first neural network.
  • FIG. 7 shows an example of the second neural network according to the present embodiment.
  • FIG. 7 shows the layer structure of the second neural network.
  • FIG. 7 shows an example in which the second neural network is composed of a single layer or a multilayer perceptron.
  • each weight of the second neural network is determined in advance and is fixed at the determined value. In this way, the second neural network performs a predetermined calculation on the input data (weight of the average weight filter).
  • the loss function is used to regularize the parameters of the convolution layer and the fully connected layer to prevent over-learning (see, for example, Non-Patent Documents 9 and 10).
  • a loss function is defined in order to embed watermark information in parameters of the average weight filter, and the essential purpose is completely different.
  • various embodiments can be applied to the loss function depending on the information embedding method.
  • Perceptron refers to a model that outputs one of two values (0 or 1) using an activation function from a value weighted to an input value z.
  • the activation function mimics the movement that the brain synapse fires when it exceeds a certain threshold.
  • a sigmoid function for example, a linear combination function, a hard sigmoid function, a tanh function (hyperbolic tangent function), a soft sine function, a soft plus function, or a ReLU (Rectified Linear Unit) may be used. .
  • the single-layer or multi-layer perceptron based on the second neural network may be any of the following four embodiments, for example.
  • a single or multi-layer perceptron based on the second neural network uses a sigmoid function as the activation function for the final output.
  • the error is also calculated by binary cross-entropy as a loss function.
  • the sigmoid function has an entire real number (- ⁇ to + ⁇ ) as an input value z and a range from 0 to 1 as an output value y.
  • y 1 / (1 + e ⁇ z )
  • Binary cross entropy means that for two patterns, when one probability is p, the other is 1-p. That is, it is an orthogonalized version generated according to a specific probability distribution.
  • the loss function of the second neural network is - ⁇ T b logO b + (1-t b ) log (1-O b ) ⁇ It can be. here, O b : bth extracted watermark bit (b is 1 to B) t b : b-th watermark bit (b is 1 to B)
  • a loss function may be defined in the same way as in the case of classifying into binary values for a normal classification task. Further, in general, it is possible to embed nonlinearly by adding an intermediate layer to the entire coupling layer to form a multilayer perceptron.
  • the one-layer or multi-layer perceptron based on the second neural network calculates the final output by using the same number of weights as the watermark bits as the input of the activation function from the respective weights of the average weight as the input. May be.
  • the one-layer or multi-layer perceptron based on the second neural network extracts the same number of pairs as the number of bits of the watermark information from each weight of the average weight to be input, and uses the difference of each pair as an input of the activation function. It may be used to calculate the final output.
  • the predetermined fixed weight of the single-layer or multi-layer perceptron based on the second neural network may be generated by a specific probability distribution.
  • the specific probability distribution is a uniform distribution or a normal distribution.
  • the predetermined fixed weight of the multilayer perceptron may be obtained by orthogonalizing the one generated according to a specific probability distribution.
  • the second neural network can also have B weight vectors X 1 to X B as fixed weights determined in advance.
  • the vectors X 1 to X B each have W ⁇ H ⁇ C fixed values as elements.
  • the second neural network sets W ⁇ H ⁇ C weights as input data as a vector I, and calculates an inner product of the vector X b (b is an integer of 1 to B) and the vector I as an extraction watermark bit O b Can be obtained as
  • the weight vectors X 1 to X B can be generated, for example, from random numbers according to some probability distribution (for example, a normal distribution with an average 0 variance of 1).
  • weight vectors X 1 to X B may be set to be orthonormal bases. This can be realized, for example, by generating a weight vector X from a normal distribution with a mean 0 variance of 1, and orthogonalizing it with the Gramschmitt orthogonalization method or the like.
  • the weight vector X B is randomly selected from W ⁇ H ⁇ C weights of the average weight filter, and the selected weight is set to the watermark bit and 1 respectively. : 1 may be associated.
  • the selected weight becomes the input of the activation function, and the output of the activation function is compared with the corresponding watermark bit.
  • the weight vector X selects B pairs randomly from the W ⁇ H ⁇ C weights of the average weight filter, and each of the selected pairs is a watermark bit. And 1: 1.
  • the difference between the two weights of the pair then becomes the input of the activation function, and the output of the activation function is compared with the corresponding watermark bit.
  • FIG. 9 is an explanatory diagram showing extraction of watermark information from the average weight filter.
  • watermark information is extracted from N weight filters by the following steps.
  • S21 First, an average weight filter is calculated from the N weight filters.
  • S22 each weight of the average weight filter is input to the second neural network.
  • the second neural network outputs the extracted watermark bits.
  • “1” is output if the output is a predetermined threshold (for example, 0.5) or more, and “0” is output otherwise.
  • the watermark bit may be extracted.
  • the comparison between the extracted watermark bit and the watermark bit compares the corresponding bit strings, and if the hamming distance is equal to or less than a predetermined threshold, it can be determined that the extracted watermark bit matches the watermark bit.
  • FIG. 10 is an explanatory diagram showing learning of an output result of an existing neural network as teacher data.
  • FIG. 5 shows that watermark information is newly embedded when learning model parameters (weights), whereas FIG. 10 shows that by re-learning using already learned model parameters as initial values. It represents embedding watermark information.
  • the first neural network sets a model parameter that has already been learned in an existing neural network (weight filter) as an initial value, and then learns the model parameter.
  • weight filter a model parameter that has already been learned in an existing neural network
  • some identical data is input to both the existing neural network and the first neural network.
  • the first neural network outputs data using already learned model parameters (weight filter).
  • the first neural network learns to minimize the loss function using the data output from the already learned neural network as the “correct answer label” of the teacher data.
  • the watermark information is embedded in the model parameter for the convolutional layer. Even in the fully coupled layer, it can be considered that there are N weight filters having a parameter of the number of output dimensions of the front layer (excluding the bias term). This weight filter is averaged in the same manner as the convolution layer, and an average weight filter of the number of output dimensions of the front layer can be calculated. Similarly to embedding in the convolutional layer, watermark information can be embedded in the same way by constructing one or more fully connected layers having B outputs.
  • FIG. 11 is a configuration diagram of the information processing apparatus according to the present embodiment.
  • the holding unit 10 holds information indicating the configurations of the first neural network and the second neural network.
  • the average weight filter calculation unit 30 calculates an average weight filter that is input data to the second neural network from the weight filter of the first neural network held by the holding unit 10.
  • the extracted watermark bit calculation unit 40 obtains an extracted watermark bit based on the average weight filter calculated by the average weight filter calculation unit 30 and information indicating the configuration of the second neural network held by the holding unit 10.
  • the gradient calculation unit 50 obtains a second gradient for each weight of the average weight filter based on the extracted watermark bit obtained by the extracted watermark bit calculation unit 40, the watermark bit, and the loss function of the second neural network.
  • the learning unit 20 learns the first neural network held by the holding unit 10. Specifically, the first gradient is obtained for each weight of each weight filter based on the teacher data group, as in the learning of a normal neural network. A certain weight is updated based on the sum of the first gradient obtained for the weight and the second gradient obtained by the gradient calculation unit 50 for the weight of the average weight filter calculated by the weight.
  • watermark information can be embedded in a neural network.
  • the present invention can be implemented as a program that causes a computer to function as the information processing apparatus or cause the computer to execute the information processing method by being executed by one or more processors of the computer. .
  • These programs are stored in a computer-readable storage medium or distributed via a network.
  • the present invention it is possible to embed watermark information that can detect a modification of a model parameter at the time of learning for a model parameter used in a convolutional neural network for deep learning.
  • the watermark information can be embedded by appropriately setting a loss function relating to the parameter at the time of learning.

Abstract

第1のニューラルネットワークの重みに透かしビットを埋め込むための情報処理方法は、前記第1のニューラルネットワークの複数の重みから求めた複数の入力値を、第2のニューラルネットワークへ入力し、前記第2のニューラルネットワークの出力を得ることと、前記第2のニューラルネットワークの出力と前記透かしビットとの誤差に基づき、前記複数の入力値それぞれの第2勾配を求めることと、誤差逆伝播法に基づき求めた前記第1のニューラルネットワークの重みの第1勾配と、前記第2勾配とを加算した値に基づき、当該重みを更新することと、を含んでいる。

Description

情報処理装置、方法及びコンピュータ可読記憶媒体
 本発明は、ニューラルネットワーク(Neural Network)に透かし情報を埋め込む技術に関する。
 近年、画像認識や音声認識、自然言語処理の分野について、ニューラルネットワークが注目されている。ニューラルネットワークとは、生体の脳における特性を計算機上のシミュレーションによって表現することを目指した数学モデルをいう。シナプスの結合によってネットワークを形成した人工ニューロン(ユニット)が、学習によってシナプスの結合強度を変化させ、問題解決能力を持つようなモデル全般をいう。
 特許文献1~3及び非特許文献1~3は、ニューラルネットワークの構造を最適化する技術を開示している。また、特許文献2は、大規模な畳み込みニューラルネットワークの重みを効率的に設定する技術を開示している。更に、特許文献3は、ニューラルネットワークを用いて、音響イベントを検出する技術を開示している。更に、非特許文献1及び2は、画像認識に適した畳み込みニューラルネットワークを開示している。更に、非特許文献3は、ニューラルネットワークを用いて、単語の品詞を推定する技術を開示している。
 大規模なニューラルネットワークのモデルパラメータは、大規模なデータセットに対して、長時間の学習が必要となる。例えば、非特許文献2は、4つのGPU(Graphics Processing Unit)を用いて2~3週間の学習が必要であるとしている。このため、非特許文献4及び5は、ニューラルネットワーク内部のモデルパラメータを学習することなく、予め学習済みのモデルパラメータの一部を流用したり、そのモデルパラメータを初期値として再学習したりすることを開示している。
特開2015-11510号公報 特開2015-52832号公報 特開2015-57630号公報
A. Krizhevsky, I. Sutskever and G. E. Hinton, "ImageNet Classification with Deep Convolutional Neural Networks," NIPS'12. K. Simonyan and A. Zisserman, "Very Deep Convolutional Networks for Large-Scale Image Recognition," ICLR'15. X. Ma and E. Hovy, "End-to-end Sequence Labeling via Bi-directional LSTM-CNNs-CRF," ACL'16. S. Ren, K. He, R. Girshick, and J. Sun, "Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks," NIPS'15. W. Liu, et al., "SSD: Single Shot MultiBox Detector," ECCV'16. P.-T. Yu, H.-H. Tsai, and J.-S. Lin, "Digital watermarking based on neural networks for color images," in Signal Processing, vol. 81, no. 3,2001. M. Elarbi, C. B. Amar, and H. Nicolas, "Video Watermarking Based on Neural Networks," in Proc. of ICME, 2006. Fei-Fei Li & Andrej Karpathy & Justin Johnson、Lecture 7、Convolutional Neural Networks、27 Jan 2016、[online]、[平成29年1月4日検索]、インターネット<URL:http://cs231n.stanford.edu/slides/winter1516_lecture7.pdf> 正則化、[online]、[平成29年1月5日検索]、インターネット<URL:https://ja.wikipedia.org/wiki/%E6%AD%A3%E5%89%87%E5%8C%96> A. Krogh and J. A. Hertz, "A Simple Weight Decay Can Improve Generalization," in Proc. of NIPS, 1992.
 前述したように、大規模なニューラルネットワークを用いて、全てのモデルパラメータを最初から学習する場合、大量の計算コストや労力が必要となる。そのため、例えば研究の効率化を主な目的とし、研究機関によって、学習済みのモデルパラメータが、流用可能なライセンス形態で、配布される場合もある。
 しかしながら、商用サービスにおいては、学習済みのモデルパラメータ自体が、そのサービスにおけるコアな技術であり、一般には流用を禁止するケースが多い。
 例えば画像等の不正利用であれば、目視による発見が容易である。しかしながら、モデルパラメータの不正利用を目視により発見することは容易ではない。これは、利用対象のモデルパラメータの一部が修正された上で、利用対象のモデルパラメータを初期値として再学習が行われると、モデル構造及びモデルパラメータのどちらもオリジナルとは一致しなくなるからである。
 非特許文献6、7は、動画像データに透かし情報を埋め込むために、ニューラルネットワークを用いる技術を提案している。これに対し、本願の発明者らは、ニューラルネットワークのモデルパラメータ自体に、透かし情報を埋め込むことはできないか、と考えた。即ち、一部が改変されたモデルパラメータを用いて再学習されたとしても、そのモデルパラメータから透かし情報を検出することができれば、不正利用となるモデルパラメータを検出することができるのではないか、と考えた。
 そこで、本発明は、ニューラルネットワークに透かし情報を埋め込む技術を提供する。
 本発明の一態様によると、情報処理方法は、第1ニューラルネットワークの重みに透かしビットを埋め込むための情報処理方法であって、前記第1のニューラルネットワークの複数の重みから求めた複数の入力値を、第2のニューラルネットワークへ入力し、前記第2のニューラルネットワークの出力を得ることと、前記第2のニューラルネットワークの出力と前記透かしビットとの誤差に基づき、前記複数の入力値それぞれの第2勾配を求めることと、誤差逆伝播法に基づき求めた前記第1のニューラルネットワークの重みの第1勾配と、前記第2勾配と、を加算した値に基づき、当該重みを更新することと、を含む。
 本発明によれば、ニューラルネットワークに透かし情報を埋め込むことができる。
 本発明のその他の特徴及び利点は、添付図面を参照とした以下の説明により明らかになるであろう。なお、添付図面においては、同じ若しくは同様の構成には、同じ参照番号を付す。
ニューラルネットワークの一般的な機能構成図である。 入力データと特徴マップとの畳み込みの関係を表す説明図である。 重みフィルタを用いた特徴マップの生成を表す説明図である。 N個の重みフィルタとN段の特徴マップとの関係を表す説明図である。 一実施形態による情報処理装置における情報処理方法の説明図である。 一実施形態による情報処理方法における処理ステップを表す説明図である。 一実施形態による第2のニューラルネットワークの構成図である。 一実施形態による平均重みフィルタの各重みと、各透かしビットとの対応を表す説明図である。 一実施形態による平均重みフィルタの各重みと、各透かしビットとの対応を表す説明図である。 一実施形態の第2のニューラルネットワークによる、他のニューラルネットワークの重みフィルタからの透かし情報の抽出を表す説明図である。 一実施形態による既存のニューラルネットワークの出力結果を教師データとして学習することを表す説明図である。 一実施形態による情報処理装置の構成図である。
 以下、本発明の実施の形態について、図面を用いて詳細に説明する。
 図1は、ニューラルネットワークの一般的な機能構成図である。
 ニューラルネットワークとしては、様々な構成があるが、基本的には複数種類の層の重ね合わせ(又はグラフ構造)で表現される。ニューラルネットワークには、入力データと正解ラベルとが対応付けられた教師データが入力される。そして、ニューラルネットワークは、入力データに対する最終的な出力結果が、その正解ラベルと一致するように、モデルパラメータを学習する(タスクに応じて入力に対する出力を近似させる)。
 図1によれば、順伝播型ニューラルネットワークは、入力層(input layer)と、隠れ層(hidden layer)と、出力層(output layer)との3つの層から構成され、入力データは、入力層から出力層へ向けて一方向に伝播する。隠れ層は、複数の層から構成することができる。各層は、複数のユニット(ニューロン)を持ち、前方層のユニットから後方層のユニットの入力それぞれには、「重み(weight)」と呼ばれるパラメータが対応付けられる。学習とは、適切な「重み」を算出することにある。
 図1には、畳み込みニューラルネットワーク(Convolutional Neural Network, CNN)が表されている。畳み込みニューラルネットワークは、入力層と、畳み込み層(convolutional layer)と、プーリング層(pooling layer)と、全結合層(full-connected layer)と、出力層とから構成される。
 学習とは、入力データに対する出力層からの出力データと、当該入力データに対する正解ラベルとの誤差を用いて、各層の重みを最適に更新することをいう。その誤差を算出するために、「損失関数」(loss function)が定義される。誤差は、「誤差逆伝播法」によって、出力層側から入力層側へ向けて次々に伝播され、これにより各層の重みを少しずつ更新していく。最終的に、誤差が小さくなるように、各層の重みを適切な値に調整する収束計算を実行する。
 図2は、入力データと特徴マップとの畳み込みの関係を表す説明図である。
 図2における処理は、畳み込み層及び全結合層によって実行される。図2によれば、入力データに対して、1個の重みフィルタを使用することで1つの特徴マップを生成している。なお、本実施形態において、入力データ、重みフィルタ及び特徴マップのサイズは以下の通りである。
   入力データ :32×32×3個の要素
   重みフィルタ:5×5×3個の要素(重み)
   特徴マップ :28×28個の要素
 なお、重みフィルタは、N個分用意され、これがモデルパラメータとなる。即ち、本例において、モデルパラメータとは、N個の重みフィルタを意味する。但し、ここでは、バイアス項は考慮しないものとする。
 図3は、重みフィルタを用いた特徴マップの生成を表す説明図である。
 図3によれば、5×5×3個の重みを有する1個の重みフィルタを、入力データに充てて、入力データと重みフィルタの対応する位置の値の積を積算した値を、特徴マップの1個の要素の値とする。そして、同じ重みフィルタを、入力データに対して移動させて、1枚の特徴マップを生成する。ここで、移動させる要素の数(移動量)を「ストライド(stride)」と称す。入力データの周囲の縁(ふち)には、要素0を埋めたゼロパディング(zero-padding)の領域を設けることができる。これによって、入力データの縁の要素にも、同数の重みフィルタをあてることができる。
 図4は、N個の重みフィルタとN段の特徴マップとの関係を表す説明図である。
 重みフィルタは、N個から構成される。図2及び図3によれば、1個の重みフィルタによって1枚の特徴マップが生成される。したがって、図4に示す様に、N個の重みフィルタによって、N段の特徴マップが生成される。
 図5は、本実施形態による情報処理装置における情報処理方法の説明図である。
 本実施形態においては、透かしビット、より詳しくは、透かしビットの数及び各ビットの値(0又は1)を予め定義する。以下の説明においては、透かしビットの数をBとする。図5に示す様に、情報処理装置は、目的タスク用の第1のニューラルネットワークと、第2のニューラルネットワークとを構成するための情報をそれぞれ保持している。目的タスクとは、例えば画像認識や音声認識、自然言語処理に基づくニューラルネットワークにおけるその利用用途に基づくタスクをいう。第2のニューラルネットワークは、第1のニューラルネットワークの重み(モデルパラメータ)に基づく値から透かしビットを抽出するためのニューラルネットワークである。なお、以下の説明において、第2のニューラルネットワークが抽出した透かしビットを、予め定義した透かしビットと区別するため、第2のニューラルネットワークが抽出(出力)した透かしビットを抽出透かしビットと呼ぶものとする。第2のニューラルネットワークに対しても、抽出透かしビットと、透かしビットとの誤差を評価するための損失関数が定義される。なお、第2のニューラルネットワークの構成及び各パラメータについては後述するが、そのパラメータ(重み)の値は予め決定した値で固定される。つまり、第2のニューラルネットワークは、第1のニューラルネットワークの重みに基づく値を入力とし、透かしビットと同じ数の抽出透かしビットを出力する固定的な関数でもある。
 通常のニューラルネットワークの学習においては、各重みそれぞれについて、誤差逆伝播法により勾配を求め、各重みを対応する勾配に基づき更新することを繰り返す。本実施形態でも、第1のニューラルネットワークに入力データを入力し、その入力データに対する正解ラベルに基づき、第1のニューラルネットワークの各重みそれぞれについて第1の勾配ΔEを求める。また、このとき、第1のニューラルネットワークの各重みから求めた平均重みを第2のニューラルネットワークに入力して抽出透かしビットを出力させる。そして抽出透かしビットと透かしビットとの誤差に基づき、入力された平均重みそれぞれについて誤差逆伝播法により第2の勾配ΔAEを求める。なお、通常のニューラルネットワークでは、入力データではなく、変数である重みについての勾配を求める。しかしながら、上述したように、本実施形態において第2のニューラルネットワークのパラメータ(重み)は、固定値であり、本実施形態では、通常とは逆に、入力データであり、第1のニューラルネットワークの重みから計算される平均重みそれぞれについての第2の勾配を求める。これは、第1のニューラルネットワークの重みから求められる平均重みが、第2のニューラルネットワークのパラメータ(重み)であり、あらかじめ決定した固定的な値が、第2のニューラルネットワークへの入力データとして重みを更新しているのと等価である。そして、第1のニューラルネットワークの各重みについて求めた第1の勾配に、第2のニューラルネットワークの入力データである各平均重みについて求めた第2の勾配を加算し、第1のニューラルネットワークの各重みについては加算後の勾配に基づき調整を行う。以下、図6により、情報処理装置における情報処理方法について詳細に説明する。
 図6は、情報処理方法の処理ステップを表す説明図である。
 (S11)最初に、第1のニューラルネットワークの「重み」に基づく値を、第2のニューラルネットワークへ入力する。本実施形態では、N個の重みフィルタから平均重みフィルタを求め、平均重みフィルタの各重みを第2のニューラルネットワークへの入力とする。平均重みフィルタの各位置の重みは、N個の重みフィルタそれぞれの対応する位置の重みの平均値である。例えば、第1のニューラルネットワークの1つの「重みフィルタ」のサイズが、図2に示す様にM=5×5×3であると、平均重みフィルタは、図6に示す様に5×5×3の重みを有し、この合計75個の値が第2のニューラルネットワークに入力される。具体的には、第1のニューラルネットワークのn番目のフィルタ(nは1からNの整数)の位置w×h×cの重みをFnwhcと表記し、平均重みフィルタの位置w×h×cの重みをPwhcと表記すると、
whc=Σn=1 nwhc/N
である。
 ここで、平均重みフィルタを第2のニューラルネットワークへの入力とする理由は、N個の重みフィルタに対して、入力データに充てる順序を入れ替える改変を考慮したからである。N個の重みフィルタの順序を入れ替えたとしても、本質的には同等のニューラルネットワークが構成される。したがって、個々の重みフィルタに透かし情報を埋め込むことができたとしても、重みフィルタを充てる順序を入れ替えることによって、簡単に透かし情報が破壊されてしまう。そのために、本発明によれば、N個の重みフィルタの重みを平均した「平均重みフィルタ」を生成し、第2のニューラルネットワークの入力としている。
 (S12)第2のニューラルネットワークは、平均重みフィルタの各重みが入力されると、抽出透かしビットを出力し、これは、透かしビットと比較される。そして、本実施形態では、平均重みフィルタの各重みを変数とみなして誤差逆伝播法により、平均重みフィルタの各重みについて、第2の勾配ΔAEを求める。以下では、平均重みフィルタの重みPwhcについて求められる第2の勾配を、ΔAEwhcと表記する。第1のニューラルネットワークは、入力データが入力されると出力データを出力し、これは教師ラベルと比較される。そして、第1のニューラルネットワークについては、通常通り、誤差逆伝播法により、各重みについて第1の勾配ΔEが生成される。以下では、重みFnwhcについて求められる第1の勾配をΔEnwhcと表記する。
 (S13)そして、第1のニューラルネットワークの重みFnwhcは、勾配ΔEnwhcとΔAEwhcとの和、又は、ΔAEwhcに所定の係数を乗じた値と勾配ΔEnwhcとの和に基づき更新される。例えば、第1のニューラルネットワークのフィルタ数がNであるため、ΔAEwhcに乗ずる所定の係数は、1/Nとすることができる。この様に、第1のニューラルネットワークの重みは、当該重みについて求めた第1の勾配と、当該重みから求めた第2のニューラルネットワークの入力について求めた第2の勾配との和に基づき更新される。
 この様に、第1のニューラルネットワークの学習において、第1のニューラルネットワークの誤差を最小化すると同時に、第2のニューラルネットワークの誤差も最小化する。図6の処理を繰り返すことで、第1のニューラルネットワークの重みフィルタに透かし情報を埋め込むことができる。
 図7は、本実施形態による第2のニューラルネットワークの一例を示している。
 図7は、第2のニューラルネットワークの層構成を表している。図7は、第2のニューラルネットワークを、1層又は多層パーセプトロンで構成した例を示している。なお、この構成においては、上述した様に、第2のニューラルネットワークの各重みは予め決定され、決定された値で固定される。この様に、第2のニューラルネットワークは、入力データ(平均重みフィルタの重み)に対して所定の演算を行うものである。
 一般に、損失関数は、畳み込み層及び全結合層のパラメータに対して、正則化を施し、過学習を防ぐために用いられる(例えば非特許文献9及び10参照)。これに対し、第2のニューラルネットワークでは、透かし情報を平均重みフィルタのパラメータに埋め込むために損失関数を定義しており、本質的な目的が全く異なっている。勿論、損失関数については、情報の埋め込み方法に応じて様々な実施形態を適用することができる。
 「パーセプトロン」とは、入力値zに重み付けした値から、活性化関数を用いて、2値(0又は1)の一方を出力するモデルをいう。活性化関数は、脳のシナプスが、ある閾値を超えると発火するという動きを模倣したものである。活性化関数としては、例えば、シグモイド関数、線形結合関数、ハードシグモイド関数、tanh関数(hyperbolic tangent function)、ソフトサイン関数、ソフトプラス関数、ReLU(Rectified Linear Unit)を用いたものであってもよい。
 第2のニューラルネットワークに基づく1層又は多層パーセプトロンは、例えば以下のような4つの実施形態のいずれであっても良い。
 <第1の実施形態>
 第2のニューラルネットワークに基づく1層又は多層パーセプトロンは、最終出力のための活性化関数としてシグモイド関数(sigmoid function)を用いる。また、誤差は、損失関数としてのバイナリ交差エントロピー(binary cross-entropy)によって計算する。シグモイド関数とは、入力値zとして実数全体(-∞~+∞)を値域とし、出力値yとして0~1を値域とする。
   y=1/(1+e-z)
 バイナリ交差エントロピーとは、2つのパターンについて、一方の確率がpのとき、他方の確率は1-pとなる。即ち、特定の確率分布に従って生成されたものを直交化したものである。すなわち、第2のニューラルネットワークの損失関数は、
-{tlogO+(1-t)log(1-O)}
とすることができる。ここで、
     O:bビット目の抽出透かしビット(bは1~B)
     t:bビット目の透かしビット(bは1~B)
 即ち、通常のクラス分類タスクについて、2値に分類する場合と同様に損失関数を定義すればよい。更に、一般的には、全結合層に中間層を追加し、多層パーセプトロンを構成することによって、非線形に埋め込むこともできる。
 <第2の実施形態>
 第2のニューラルネットワークに基づく1層又は多層パーセプトロンは、入力となる平均重みの各重みから透かしビットと同じ個数の重みをそれぞれ、活性化関数の入力として用いて、最終出力を計算するものであってもよい。
 <第3の実施形態>
 第2のニューラルネットワークに基づく1層又は多層パーセプトロンは、入力となる平均重みの各重みから、透かし情報のビット数と同じ個数のペアを取り出し、各ペアの差分をそれぞれ、活性化関数の入力として用いて、最終出力を計算するものであってもよい。
 <第4の実施形態>
 第2のニューラルネットワークに基づく1層又は多層パーセプトロンのあらかじめ決定される固定的な重みは、特定の確率分布によって生成されたものであってもよい。特定の確率分布とは、一様分布又は正規分布である。また、多層パーセプトロンのあらかじめ決定される固定的な重みは、特定の確率分布に従って生成されたものを直交化したものであってもよい。
 また、第2のニューラルネットワークは、B個の重みベクトルX~Xを、あらかじめ決定された固定的な重みとして有するものとすることもできる。ここで、ベクトルX~Xは、それぞれ、W×H×C個の固定値を要素として有する。そして、第2のニューラルネットワークは、入力データであるW×H×C個の重みをベクトルIとし、ベクトルX(bは1~Bの整数)とベクトルIの内積を、抽出透かしビットOとして求めることができる。重みベクトルX~Xは、例えば、何かしらの確率分布(例えば平均0分散1の正規分布)に従う乱数から生成することができる。
 また、重みベクトルX~Xは、正規直交基底となるように設定したものであってもよい。これは、例えば、平均0分散1の正規分布から重みベクトルXを生成し、それをグラムシュミットの直交化法等で直交化することによって実現できる。
 更に単純には、図8Aに示す様に、重みベクトルXは、平均重みフィルタのW×H×C個の重みから、ランダムにB個を選択し、選択した重みを、それぞれ、透かしビットと1:1に対応付けるものであっても良い。選択した重みは、活性化関数の入力となり、活性化関数の出力が対応する透かしビットと比較される。更に、図8Bに示す様に、重みベクトルXは、平均重みフィルタのW×H×C個の重みから、B個のペア(組)をランダムに選択し、選択したペアを、それぞれ、透かしビットと1:1に対応付けるものであっても良い。そして、ペアの2つの重みの差が活性化関数の入力となり、活性化関数の出力が対応する透かしビットと比較される。
 図9は、平均重みフィルタからの透かし情報の抽出を表す説明図である。図9によれば、N個の重みフィルタから、以下のステップによって、透かし情報を抽出する。(S21)最初に、N個の重みフィルタから平均重みフィルタを算出する。(S22)そして、第2のニューラルネットワークに平均重みフィルタの各重みを入力する。これにより、第2のニューラルネットワークは、抽出透かしビットを出力する。ここで、第2のニューラルネットワークが、1層又は多層パーセプトロンである場合、その出力が所定閾値(例えば0.5)以上であれば"1"を出力し、それ以外であれば"0"を出力することによって、透かしビットを抽出するものであってもよい。
 抽出透かしビットと、透かしビットとの比較は、対応するビット列を比較し、それらのハミング距離が所定閾値以下であれば、抽出透かしビットは、透かしビットと一致する判定することができる。
 図10は、既存のニューラルネットワークの出力結果を教師データとして学習することを表す説明図である。
 図5は、新規に、モデルパラメータ(重み)を学習する際に透かし情報を埋め込むことを表しているのに対し、図10は、既に学習済みのモデルパラメータを初期値として用いて、再学習によって透かし情報を埋め込むことを表している。
 既に学習済みのモデルパラメータを用いる場合、教師データとしての正解ラベルを利用できないことも当然に想定される。その場合、本発明によれば、教師データ無しに、既に学習済みの重みフィルタに透かし情報を埋め込むこともできる。
 図10によれば、図5と比較して、教師データとしての出力データを得るために、目的タスク用に、既存のニューラルネットワーク及び第1のニューラルネットワークの2つを有する。第1のニューラルネットワークは、既存のニューラルネットワークで既に学習済みのモデルパラメータを(重みフィルタ)を初期値として設定した後、モデルパラメータの学習を実行する。ここでは、既存のニューラルネットワーク及び第1のニューラルネットワークの両方に、何らかの同一のデータが入力される。これに対し、第1のニューラルネットワークは、既に学習済みのモデルパラメータ(重みフィルタ)を用いて、データを出力する。第1のニューラルネットワークは、既に学習済みの既存のニューラルネットワークから出力されたデータを教師データの「正解ラベル」として、損失関数を最小化するように学習する。
 前述では、畳み込み層に対するモデルパラメータに、透かし情報を埋め込むことについて説明した。尚、全結合層であっても、前方層の出力次元数のパラメータを持つ重みフィルタがN個あるものと考えることができる(バイアス項を除く)。この重みフィルタを畳み込み層と同様に平均化し、前方層の出力次元数の平均重みフィルタを算出することができる。畳み込み層への埋め込みと同様に、B個の出力を持つ1つ以上の全結合層を構築することで、全く同じく、透かし情報を埋め込むことができる。
 図11は、本実施形態による情報処理装置の構成図である。保持部10は、第1のニューラルネットワーク及び第2のニューラルネットワークの構成を示す情報を保持している。平均重みフィルタ計算部30は、保持部10が保持する第1のニューラルネットワークの重みフィルタから、第2のニューラルネットワークへの入力データである平均重みフィルタを計算する。抽出透かしビット計算部40は、平均重みフィルタ計算部30が計算した平均重みフィルタと、保持部10が保持する第2のニューラルネットワークの構成を示す情報に基づき、抽出透かしビットを求める。勾配計算部50は、抽出透かしビット計算部40が求めた抽出透かしビットと、透かしビットと、第2のニューラルネットワークの損失関関数に基づき、平均重みフィルタの各重みについて第2の勾配を求める。学習部20は、保持部10が保持する第1のニューラルネットワークの学習を行う。具体的には、通常のニューラルネットワークの学習と同様に、教師データ群に基づき、各重みフィルタの各重みについて、第1の勾配を求める。そして、ある重みについては、当該重みについて求めた第1の勾配と、当該重みにより算出された平均重みフィルタの重みについて勾配計算部50が求めた第2の勾配との和に基づき、更新する。
 以上、詳細に説明したように、本発明によると、ニューラルネットワークに透かし情報を埋め込むことができる。なお、本発明は、コンピュータの1つ以上のプロセッサで実行されることで、当該コンピュータを上記情報処理装置として機能させる、或いは、当該コンピュータに上記情報処理方法を実行させるプログラムとして実現することもできる。これら、プログラムは、コンピュータ可読記憶媒体に格納されて、或いは、ネットワーク経由で配布される。
 本発明によれば、深層学習の畳み込みニューラルネットワークで用いられるモデルパラメータについて、その学習時に、モデルパラメータの改変を検出できる透かし情報を埋め込むことができる。特に、悪意の第三者によって改変(例えば重みフィルタの順序を入れ替える等)がなされたとしても、学習時におけるパラメータに関する損失関数を適切に設定することによって、透かし情報を埋め込むことができる。透かし情報が埋め込まれたモデルパラメータを作成することによって、著作者に無断で行われる流用配布や不正利用を検出することができる。
 本発明は上記実施の形態に制限されるものではなく、本発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、本発明の範囲を公にするために、以下の請求項を添付する。
 本願は、2017年1月12日提出の日本国特許出願特願2017-003041を基礎として優先権を主張するものであり、その記載内容の全てを、ここに援用する。

Claims (8)

  1.  第1のニューラルネットワークの重みに透かしビットを埋め込むための情報処理方法であって、
     前記第1のニューラルネットワークの複数の重みから求めた複数の入力値を、第2のニューラルネットワークへ入力し、前記第2のニューラルネットワークの出力を得ることと、
     前記第2のニューラルネットワークの出力と前記透かしビットとの誤差に基づき、前記複数の入力値それぞれの第2勾配を求めることと、
     誤差逆伝播法に基づき求めた前記第1のニューラルネットワークの重みの第1勾配と、前記第2勾配とを加算した値に基づき、当該重みを更新することと、
    を含む、情報処理方法。
  2.  前記第1のニューラルネットワークは、畳み込みに使用する複数の重みを有する重みフィルタをN個有し、
     前記複数の入力値は、N個の重みフィルタの同じ位置の重みの平均値である、請求項1に記載の情報処理方法。
  3.  前記第1のニューラルネットワークの前記重みフィルタの第1位置の重みは、当該重みについての前記第1勾配と、前記複数の入力値のうち、前記N個の重みフィルタの前記第1位値の重みの平均値である第1入力値についての前記第2勾配とを加算した値に基づき更新される、請求項2に記載の情報処理方法。
  4.  前記第2のニューラルネットワークは、前記複数の入力値に所定の演算を行った結果を出力する、請求項1から3のいずれか1項に記載の情報処理方法。
  5.  前記第2のニューラルネットワークは、前記複数の入力値から前記透かしビットと同じ数の入力値を選択し、選択した入力値それぞれを活性化関数の入力として出力を計算する、請求項4に記載の情報処理方法。
  6.  前記第2のニューラルネットワークは、前記複数の入力値から前記透かしビットと同じ数の入力値の組を選択し、選択した各組の入力値の差分それぞれを活性化関数の入力とし出力を計算する、請求項4に記載の情報処理方法。
  7.  第1のニューラルネットワークと第2のニューラルネットワークとを使用して前記第1のニューラルネットワークの重みに透かしビットを埋め込むための情報処理装置であって、
     前記第1のニューラルネットワークの複数の重みから複数の入力値を求める算出手段と、
     前記複数の入力値を前記第2のニューラルネットワークへ入力し、前記第2のニューラルネットワークの出力を得る出力算出手段と、
     前記第2のニューラルネットワークの出力と前記透かしビットとの誤差に基づき、前記複数の入力値それぞれの第2勾配を求める勾配算出手段と、
     前記第1のニューラルネットワークの学習を行う学習手段と、
    を備えており、
     前記学習手段は、誤差逆伝播法に基づき求めた前記第1のニューラルネットワークの重みの第1勾配と、前記第2勾配とを加算した値に基づき、当該重みを更新する、情報処理装置。
  8.  プログラムを格納したコンピュータ可読記憶媒体であって、
     前記プログラムは、コンピュータの1つ以上のプロセッサで実行されると、前記コンピュータに、
     第1のニューラルネットワークの複数の重みから求めた複数の入力値を、第2のニューラルネットワークへ入力し、前記第2のニューラルネットワークの出力を得ることと、
     前記第2のニューラルネットワークの出力と前記透かしビットとの誤差に基づき、前記複数の入力値それぞれの第2勾配を求めることと、
     誤差逆伝播法に基づき求めた前記第1のニューラルネットワークの重みの第1勾配と、前記第2勾配とを加算した値に基づき、当該重みを更新することと、
    を実行させる、コンピュータ可読記憶媒体。
PCT/JP2017/045656 2017-01-12 2017-12-20 情報処理装置、方法及びコンピュータ可読記憶媒体 WO2018131405A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2018561888A JP6727340B2 (ja) 2017-01-12 2017-12-20 情報処理装置、方法及びコンピュータ可読記憶媒体
CN201780082089.2A CN110168576B (zh) 2017-01-12 2017-12-20 信息处理设备、方法和计算机可读存储介质
EP17891383.6A EP3570222B1 (en) 2017-01-12 2017-12-20 Information processing device and method, and computer readable storage medium
US16/424,840 US11521043B2 (en) 2017-01-12 2019-05-29 Information processing apparatus for embedding watermark information, method, and computer readable storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017-003041 2017-01-12
JP2017003041 2017-01-12

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/424,840 Continuation US11521043B2 (en) 2017-01-12 2019-05-29 Information processing apparatus for embedding watermark information, method, and computer readable storage medium

Publications (1)

Publication Number Publication Date
WO2018131405A1 true WO2018131405A1 (ja) 2018-07-19

Family

ID=62839839

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/045656 WO2018131405A1 (ja) 2017-01-12 2017-12-20 情報処理装置、方法及びコンピュータ可読記憶媒体

Country Status (5)

Country Link
US (1) US11521043B2 (ja)
EP (1) EP3570222B1 (ja)
JP (1) JP6727340B2 (ja)
CN (1) CN110168576B (ja)
WO (1) WO2018131405A1 (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110349071A (zh) * 2019-06-13 2019-10-18 西安理工大学 一种基于稠密网络对图像进行水印提取的方法
CN110569353A (zh) * 2019-07-03 2019-12-13 重庆大学 一种基于注意力机制的Bi-LSTM的标签推荐方法
WO2020032420A1 (en) * 2018-08-10 2020-02-13 Deeping Source Inc. Method for training and testing data embedding network to generate marked data by integrating original data with mark data, and training device and testing device using the same
JP2020052814A (ja) * 2018-09-27 2020-04-02 Kddi株式会社 ニューラルネットワーク、学習装置、学習方法、およびプログラム
JP2020052813A (ja) * 2018-09-27 2020-04-02 Kddi株式会社 ニューラルネットワーク、情報付加装置、学習方法、情報付加方法、およびプログラム
JP2020052569A (ja) * 2018-09-25 2020-04-02 Kddi株式会社 情報処理装置、情報処理方法、及びプログラム
JP2020149342A (ja) * 2019-03-13 2020-09-17 Kddi株式会社 付加情報埋込装置、付加情報検出装置、付加情報埋込方法、及びプログラム
CN111800265A (zh) * 2020-07-07 2020-10-20 上海大学 一种基于隐私保护的材料逆向设计方法及系统
US11521043B2 (en) 2017-01-12 2022-12-06 Kddi Corporation Information processing apparatus for embedding watermark information, method, and computer readable storage medium

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11521121B2 (en) * 2019-09-12 2022-12-06 Adobe Inc. Encoding machine-learning models and determining ownership of machine-learning models
US11443243B2 (en) 2019-10-10 2022-09-13 Baidu Usa Llc Method and system for artificial intelligence model training using a watermark-enabled kernel for a data processing accelerator
US11537689B2 (en) 2019-10-10 2022-12-27 Baidu Usa Llc Method and system for signing an artificial intelligence watermark using a kernel
US11645116B2 (en) * 2019-10-10 2023-05-09 Baidu Usa Llc Method and system for making an artificial intelligence inference using a watermark-enabled kernel for a data processing accelerator
US11709712B2 (en) * 2019-10-10 2023-07-25 Baidu Usa Llc Method and system for artificial intelligence model training using a watermark-enabled kernel for a data processing accelerator
US11775347B2 (en) * 2019-10-10 2023-10-03 Baidu Usa Llc Method for implanting a watermark in a trained artificial intelligence model for a data processing accelerator
US11740940B2 (en) * 2019-10-10 2023-08-29 Baidu Usa Llc Method and system for making an artifical intelligence inference using a watermark-inherited kernel for a data processing accelerator
US11645586B2 (en) * 2019-10-10 2023-05-09 Baidu Usa Llc Watermark unit for a data processing accelerator
CN112750064A (zh) * 2019-10-29 2021-05-04 阿里巴巴集团控股有限公司 一种水印信息嵌入方法以及装置
KR20210076691A (ko) * 2019-12-16 2021-06-24 삼성전자주식회사 프레임워크 간 뉴럴 네트워크의 학습을 검증하는 방법 및 장치
US11592828B2 (en) * 2020-01-16 2023-02-28 Nvidia Corporation Using neural networks to perform fault detection in autonomous driving applications
US11501136B2 (en) * 2020-05-29 2022-11-15 Paypal, Inc. Watermark as honeypot for adversarial defense
CN113222800B (zh) * 2021-04-12 2023-07-07 国网江苏省电力有限公司营销服务中心 一种基于深度学习的鲁棒图像水印嵌入与提取方法及系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5966703A (ja) * 1982-10-08 1984-04-16 Fanuc Ltd 数値制御装置の加工制御情報保護方式
JP2013025356A (ja) * 2011-07-15 2013-02-04 Hitachi Solutions Ltd プログラムの流用検出方法
JP2014026389A (ja) * 2012-07-25 2014-02-06 Denso Corp モデル比較装置、識別子生成装置、モデル作成装置、モデル比較ツール、識別子生成ツール、及び、モデル作成ツール
JP2015011510A (ja) 2013-06-28 2015-01-19 株式会社デンソーアイティーラボラトリ ニューラルネットワーク最適化方法、ニューラルネットワーク最適化装置及びプログラム
JP2015052832A (ja) 2013-09-05 2015-03-19 国立大学法人 東京大学 重み設定装置および方法
JP2015057630A (ja) 2013-08-13 2015-03-26 日本電信電話株式会社 音響イベント識別モデル学習装置、音響イベント検出装置、音響イベント識別モデル学習方法、音響イベント検出方法及びプログラム
JP2017003041A (ja) 2015-06-12 2017-01-05 日立オートモティブシステムズ株式会社 油圧制御弁及び内燃機関のバルブタイミング制御装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9594983B2 (en) * 2013-08-02 2017-03-14 Digimarc Corporation Learning systems and methods
WO2016043734A1 (en) * 2014-09-17 2016-03-24 Hewlett Packard Enterprise Development Lp Neural network verification
CN104361548B (zh) * 2014-10-28 2017-10-20 河南师范大学 基于bp神经网络数字图像压缩的图像水印嵌入与提取方法
US9633306B2 (en) * 2015-05-07 2017-04-25 Siemens Healthcare Gmbh Method and system for approximating deep neural networks for anatomical object detection
CN105389770B (zh) * 2015-11-09 2018-10-26 河南师范大学 基于bp和rbf神经网络的图像水印嵌入、提取方法与装置
US10755172B2 (en) * 2016-06-22 2020-08-25 Massachusetts Institute Of Technology Secure training of multi-party deep neural network
JP6727340B2 (ja) 2017-01-12 2020-07-22 Kddi株式会社 情報処理装置、方法及びコンピュータ可読記憶媒体

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5966703A (ja) * 1982-10-08 1984-04-16 Fanuc Ltd 数値制御装置の加工制御情報保護方式
JP2013025356A (ja) * 2011-07-15 2013-02-04 Hitachi Solutions Ltd プログラムの流用検出方法
JP2014026389A (ja) * 2012-07-25 2014-02-06 Denso Corp モデル比較装置、識別子生成装置、モデル作成装置、モデル比較ツール、識別子生成ツール、及び、モデル作成ツール
JP2015011510A (ja) 2013-06-28 2015-01-19 株式会社デンソーアイティーラボラトリ ニューラルネットワーク最適化方法、ニューラルネットワーク最適化装置及びプログラム
JP2015057630A (ja) 2013-08-13 2015-03-26 日本電信電話株式会社 音響イベント識別モデル学習装置、音響イベント検出装置、音響イベント識別モデル学習方法、音響イベント検出方法及びプログラム
JP2015052832A (ja) 2013-09-05 2015-03-19 国立大学法人 東京大学 重み設定装置および方法
JP2017003041A (ja) 2015-06-12 2017-01-05 日立オートモティブシステムズ株式会社 油圧制御弁及び内燃機関のバルブタイミング制御装置

Non-Patent Citations (10)

* Cited by examiner, † Cited by third party
Title
A. KRIZHEVSKYI. SUTSKEVERG. E. HINTON: "ImageNet Classification with Deep Convolutional Neural Networks", NIPS'12
A. KROGHJ. A. HERTZ: "A Simple Weight Decay Can Improve Generalization", PROC. OF NIPS, 1992
FEI-FEI LIANDREJ KARPATHYJUSTIN JOHNSON, CONVOLUTIONAL NEURAL NETWORKS, 27 January 2016 (2016-01-27), Retrieved from the Internet <URL:http://cs231n.stanford.edu/slides/winter1516_lecture7.pdf>
K. SIMONYANA. ZISSERMAN: "Very Deep Convolutional Networks for Large-Scale Image Recognition", ICLR'15
M. ELARBIC. B. AMARH. NICOLAS: "Video Watermarking Based on Neural Networks", PROC. OF ICME, 2006
P.-T. YUH.-H. TSAIJ.-S. LIN: "Digital watermarking based on neural networks for color images", SIGNAL PROCESSING, vol. 81, no. 3, 2001, XP004230565, DOI: doi:10.1016/S0165-1684(00)00239-5
S. RENK. HER. GIRSHICKJ. SUN: "Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks", NIPS'15
See also references of EP3570222A4
W. LIU ET AL.: "SSD: Single Shot MultiBox Detector", ECCV'16
X. MAE. HOVY: "End-to-end Sequence Labeling via Bi-directional LSTM-CNNs-CRF", ACL'16

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11521043B2 (en) 2017-01-12 2022-12-06 Kddi Corporation Information processing apparatus for embedding watermark information, method, and computer readable storage medium
WO2020032420A1 (en) * 2018-08-10 2020-02-13 Deeping Source Inc. Method for training and testing data embedding network to generate marked data by integrating original data with mark data, and training device and testing device using the same
CN112313645A (zh) * 2018-08-10 2021-02-02 深度来源公司 通过合成原始数据和标记数据来生成已标记数据的数据嵌入网络的学习方法和测试方法以及用其的学习装置和测试装置
JP2020052569A (ja) * 2018-09-25 2020-04-02 Kddi株式会社 情報処理装置、情報処理方法、及びプログラム
JP2020052814A (ja) * 2018-09-27 2020-04-02 Kddi株式会社 ニューラルネットワーク、学習装置、学習方法、およびプログラム
JP2020052813A (ja) * 2018-09-27 2020-04-02 Kddi株式会社 ニューラルネットワーク、情報付加装置、学習方法、情報付加方法、およびプログラム
JP2020149342A (ja) * 2019-03-13 2020-09-17 Kddi株式会社 付加情報埋込装置、付加情報検出装置、付加情報埋込方法、及びプログラム
JP7028819B2 (ja) 2019-03-13 2022-03-02 Kddi株式会社 付加情報埋込装置、付加情報検出装置、付加情報埋込方法、及びプログラム
CN110349071A (zh) * 2019-06-13 2019-10-18 西安理工大学 一种基于稠密网络对图像进行水印提取的方法
CN110569353A (zh) * 2019-07-03 2019-12-13 重庆大学 一种基于注意力机制的Bi-LSTM的标签推荐方法
CN110569353B (zh) * 2019-07-03 2023-04-07 重庆大学 一种基于注意力机制的Bi-LSTM的标签推荐方法
CN111800265A (zh) * 2020-07-07 2020-10-20 上海大学 一种基于隐私保护的材料逆向设计方法及系统

Also Published As

Publication number Publication date
US11521043B2 (en) 2022-12-06
CN110168576B (zh) 2023-06-02
JP6727340B2 (ja) 2020-07-22
CN110168576A (zh) 2019-08-23
EP3570222A4 (en) 2020-02-05
US20190294955A1 (en) 2019-09-26
JPWO2018131405A1 (ja) 2019-07-25
EP3570222B1 (en) 2023-02-08
EP3570222A1 (en) 2019-11-20

Similar Documents

Publication Publication Date Title
JP6727340B2 (ja) 情報処理装置、方法及びコンピュータ可読記憶媒体
JP6708755B2 (ja) 情報処理方法、情報処理装置及びコンピュータ可読記憶媒体
KR102492318B1 (ko) 모델 학습 방법 및 장치, 및 데이터 인식 방법
CA2941352C (en) Neural network and method of neural network training
CN109754078A (zh) 用于优化神经网络的方法
CN116635866A (zh) 用于挖掘少数类数据样本以训练神经网络的方法和系统
CN106575377A (zh) 共同特征上的分类器更新
TW201541372A (zh) 使用尖峰發放神經元的人工神經網路和感知器學習
KR102031982B1 (ko) 언레이블드 데이터의 재학습 여부 결정을 이용한 압력분포 정보의 자세 분류 장치
CN112580728B (zh) 一种基于强化学习的动态链路预测模型鲁棒性增强方法
KR20200003444A (ko) 영상 모델 구축 장치 및 방법
Tian et al. Genetic algorithm based deep learning model selection for visual data classification
KR20210060146A (ko) 딥 뉴럴 네트워크 모델을 이용한 데이터 처리 방법 및 장치, 딥 뉴럴 네트워크 모델을 학습시키는 학습 방법 및 장치
US11354535B2 (en) Device and method with sensor-specific image recognition
Lee et al. Ensemble of binary tree structured deep convolutional network for image classification
Kumar et al. Neural networks and fuzzy logic
Barman et al. To predict possible profit/loss of a movie to be launched using MLP with back-propagation learning
KR102116054B1 (ko) 심층 신경망 기반의 음성인식 시스템
KR101210380B1 (ko) 유한 상태 자동기계를 동정화하기에 알맞은 새로운 회귀 신경망
Alrawashdeh et al. Optimizing Deep Learning Based Intrusion Detection Systems Defense Against White-Box and Backdoor Adversarial Attacks Through a Genetic Algorithm
Olanrewaju et al. Computational intelligence: It’s application in digital watermarking
KR20190125694A (ko) 학습 및 추론 장치 및 그 방법
Cuijpers et al. Generalisation of action sequences in RNNPB networks with mirror properties
Fakhari et al. An image restoration architecture using abstract features and generative models
CN113034472B (zh) 一种基于梯度网络架构搜索的空域隐写分析方法及系统

Legal Events

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

Ref document number: 17891383

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2018561888

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2017891383

Country of ref document: EP

Effective date: 20190812