JP6961527B2 - Information processing equipment, learning methods, and programs - Google Patents

Information processing equipment, learning methods, and programs Download PDF

Info

Publication number
JP6961527B2
JP6961527B2 JP2018071117A JP2018071117A JP6961527B2 JP 6961527 B2 JP6961527 B2 JP 6961527B2 JP 2018071117 A JP2018071117 A JP 2018071117A JP 2018071117 A JP2018071117 A JP 2018071117A JP 6961527 B2 JP6961527 B2 JP 6961527B2
Authority
JP
Japan
Prior art keywords
conversion
neural network
input data
input
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018071117A
Other languages
Japanese (ja)
Other versions
JP2019185134A (en
Inventor
和英 福島
清良 披田野
晋作 清本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
KDDI Corp
Original Assignee
KDDI Corp
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 Corp filed Critical KDDI Corp
Priority to JP2018071117A priority Critical patent/JP6961527B2/en
Publication of JP2019185134A publication Critical patent/JP2019185134A/en
Application granted granted Critical
Publication of JP6961527B2 publication Critical patent/JP6961527B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Analysis (AREA)

Description

本発明は情報処理装置、学習方法、及びプログラムに関し、特にニューラルネットワークを用いた機械学習技術に関する。 The present invention relates to an information processing device, a learning method, and a program, and particularly to a machine learning technique using a neural network.

近年、CPU(Central Processing Unit)及びGPU(Graphics Processing Unit)の高速化、メモリの大容量化、及びニューラルネットワークを用いた機械学習技術が急速に進んできている。このため、数十万から百万といったオーダーの学習データを用いる機械学習が可能となり、精度の高い識別技術や分類技術が確立されつつある(非特許文献1参照)。 In recent years, speeding up of CPU (Central Processing Unit) and GPU (Graphics Processing Unit), increasing the capacity of memory, and machine learning technology using a neural network have been rapidly advancing. For this reason, machine learning using learning data on the order of hundreds of thousands to one million has become possible, and highly accurate identification technology and classification technology are being established (see Non-Patent Document 1).

Yangqing Jia, Evan Shelhamer, Jeff Donahue, Sergey Karayev, Jonathan Long, Ross Girshick, Sergio Guadarrama, and Trevor Darrell. Caffe: Convolutional architecture for fast feature embedding. In Proceedings of the 22nd ACM international conference on Multimedia (pp. 675-678). ACM.Yangqing Jia, Evan Shelhamer, Jeff Donahue, Sergey Karayev, Jonathan Long, Ross Girshick, Sergio Guadarrama, and Trevor Darrell. Caffe: Convolutional architecture for fast feature embedding. In Proceedings of the 22nd ACM international conference on Multimedia (pp. 675-678) ). ACM.

大量の学習データに基づく機械学習を実行するためには大量の計算コストがかかる。また、大量の学習データを用意すること、及び用意した学習データを機械学習に用いるためにする前処理にも膨大な労力を要する。学習モデルを生成したモデル作成者は、コストをかけて作成した学習モデルをクラウド上に構築し、通信ネットワークを介して学習モデルをユーザに利用させることで利益を得ることも行われるようになってきている。 A large amount of computational cost is required to perform machine learning based on a large amount of learning data. In addition, a huge amount of labor is required for preparing a large amount of learning data and for preprocessing to use the prepared learning data for machine learning. Model creators who generate learning models are also beginning to make a profit by building a learning model created at a high cost on the cloud and letting users use the learning model via a communication network. ing.

学習モデルの入力データや出力データにプライバシ情報が含まれる場合には、通信ネットワークを介してそのような情報を送受信することになる。これは、プライバシ情報が漏洩する可能性がある。 When the input data and output data of the learning model include privacy information, such information is transmitted and received via the communication network. This can leak privacy information.

本発明はこれらの点に鑑みてなされたものであり、通信ネットワークを介して学習モデルを利用する際の情報漏洩を抑制する技術を提供することを目的とする。 The present invention has been made in view of these points, and an object of the present invention is to provide a technique for suppressing information leakage when using a learning model via a communication network.

本発明の第1の態様は、情報処理装置である。この装置は、目的タスクを検出するための複数の層を備えるニューラルネットワークの各層の重みを生成する情報処理装置である。この装置は、前記ニューラルネットワークに入力する入力データを所定の変換手続きで変換して変換入力データを生成する入力変換部と、前記入力変換部が生成した変換入力データを入力データとして前記ニューラルネットワークの各層の重みを更新する重み更新部と、を備える。前記入力変換部が実行する所定の変換手続きは、変換前の空間における任意の2点間の距離と、変換後の空間における前記2点間の距離とが、定数倍の関係となる変換手続きである。 The first aspect of the present invention is an information processing device. This device is an information processing device that generates weights for each layer of a neural network including a plurality of layers for detecting a target task. This device has an input conversion unit that converts input data input to the neural network by a predetermined conversion procedure to generate conversion input data, and a conversion input data generated by the input conversion unit as input data of the neural network. It includes a weight update unit that updates the weight of each layer. The predetermined conversion procedure executed by the input conversion unit is a conversion procedure in which the distance between arbitrary two points in the space before conversion and the distance between the two points in the space after conversion have a constant multiple relationship. be.

前記情報処理装置は、前記ニューラルネットワークの出力層が出力した出力ベクトルを、当該出力ベクトルが存在する空間における任意の2点間の距離と、変換後の空間における前記2点間の距離とが、定数倍の関係となる変換手続きで、前記出力ベクトルを変換して変換出力ベクトルを生成する出力変換部をさらに備えてもよい。 In the information processing device, the output vector output by the output layer of the neural network has a distance between arbitrary two points in the space where the output vector exists and a distance between the two points in the space after conversion. A conversion procedure that has a constant multiple relationship may further include an output conversion unit that converts the output vector to generate a conversion output vector.

前記目的タスクはカラー画像を対象とする画像認識タスクであってもよく、前記入力変換部は、前記カラー画像の各画素の特徴を特定するための複数の変数を座標軸とする空間において、前記所定の変換手続きを実行してもよい。 The target task may be an image recognition task for a color image, and the input conversion unit may perform the predetermined task in a space whose coordinate axes are a plurality of variables for specifying the characteristics of each pixel of the color image. You may perform the conversion procedure of.

前記所定の変換手続きは、拡大変換、縮小変換、等長変換、及び並行移動変換のいずれか一つの変換、又は2以上の変換の合成変換であってもよい。 The predetermined conversion procedure may be any one conversion of expansion conversion, reduction conversion, equal length conversion, and parallel movement conversion, or a composite conversion of two or more conversions.

本発明の第2の態様も、目的タスクを検出するための複数の層を備えるニューラルネットワークの各層の重みを生成する情報処理装置である。この装置は、目的タスク学習用データを入力データとして前記ニューラルネットワークの各層の重みを更新する重み更新部と、前記ニューラルネットワークの出力層が出力した出力ベクトルを、当該出力ベクトルが存在する空間における任意の2点間の距離と、変換後の空間における前記2点間の距離とが、定数倍の関係となる変換手続きで、前記出力ベクトルを変換して変換出力ベクトルを生成する出力変換部と、を備える。 A second aspect of the present invention is also an information processing device that generates weights for each layer of a neural network including a plurality of layers for detecting a target task. This device uses the target task learning data as input data to update the weights of each layer of the neural network, and the output vector output by the output layer of the neural network can be arbitrarily set in the space where the output vector exists. An output conversion unit that converts the output vector to generate a conversion output vector in a conversion procedure in which the distance between the two points and the distance between the two points in the space after conversion have a constant multiple relationship. To be equipped.

本発明の第3の態様は、目的タスクを検出するための複数の層を備えるニューラルネットワークの各層の重みを生成する情報処理装置のプロセッサが実行する学習方法である。この方法において、前記プロセッサが、前記ニューラルネットワークに入力する入力データを所定の変換手続きで変換して変換入力データを生成するステップと、生成した前記変換入力データを入力データとして前記ニューラルネットワークの各層の重みを更新するステップと、を実行する。前記生成するステップにおける所定の変換手続きは、変換前の空間における任意の2点間の距離と、変換後の空間における前記2点間の距離とが、定数倍の関係となる変換手続きである。 A third aspect of the present invention is a learning method executed by a processor of an information processing apparatus that generates weights for each layer of a neural network including a plurality of layers for detecting a target task. In this method, the processor converts the input data input to the neural network by a predetermined conversion procedure to generate the conversion input data, and the generated conversion input data is used as input data for each layer of the neural network. Perform the steps to update the weights and. The predetermined conversion procedure in the generation step is a conversion procedure in which the distance between arbitrary two points in the space before conversion and the distance between the two points in the space after conversion have a constant multiple relationship.

本発明の第4の態様は、プログラムである。このプログラムは、目的タスクを検出するための複数の層を備えるニューラルネットワークの各層の重みを生成する情報処理装置に、前記ニューラルネットワークに入力する入力データを所定の変換手続きで変換して変換入力データを生成する機能と、生成した前記変換入力データを入力データとして前記ニューラルネットワークの各層の重みを更新する機能と、を実現させる。前記生成する機能における所定の変換手続きは、変換前の空間における任意の2点間の距離と、変換後の空間における前記2点間の距離とが、定数倍の関係となる変換手続きである。 A fourth aspect of the present invention is a program. This program converts the input data input to the neural network into an information processing device that generates weights for each layer of the neural network having a plurality of layers for detecting the target task by a predetermined conversion procedure, and converts the input data. And a function of updating the weight of each layer of the neural network by using the generated conversion input data as input data. The predetermined conversion procedure in the function to be generated is a conversion procedure in which the distance between arbitrary two points in the space before conversion and the distance between the two points in the space after conversion have a constant multiple relationship.

本発明によれば、本発明はこれらの点に鑑みてなされたものであり、通信ネットワークを介して学習モデルを利用する際の情報漏洩を抑制することができる。 According to the present invention, the present invention has been made in view of these points, and it is possible to suppress information leakage when using a learning model via a communication network.

実施の形態に係るニューラルネットワークの構成を模式的に示す図である。It is a figure which shows typically the structure of the neural network which concerns on embodiment. 実施の形態に係る学習モデル実行システムの概要を模式的に示す図である。It is a figure which shows typically the outline of the learning model execution system which concerns on embodiment. 実施の形態に係る情報処理装置の機能構成を模式的に示す図である。It is a figure which shows typically the functional structure of the information processing apparatus which concerns on embodiment. 実施の形態に係る入力変換部及び出力変換部が実施する変換手続きを説明するための図である。It is a figure for demonstrating the conversion procedure carried out by the input conversion unit and the output conversion unit which concerns on embodiment. 実施の形態に係る入力変換部が実施する変換手続きの別の例を説明するための図である。It is a figure for demonstrating another example of the conversion procedure carried out by the input conversion part which concerns on embodiment. 実施の形態に係る情報処理装置が実行する学習処理の流れを説明するためのフローチャートである。It is a flowchart for demonstrating the flow of the learning process executed by the information processing apparatus which concerns on embodiment.

<実施の形態の概要>
図1は、実施の形態に係るニューラルネットワークの構成を模式的に示す図である。また、図2は、実施の形態に係る学習モデル実行システムSの概要を模式的に示す図である。以下、図1及び図2を参照して、実施の形態の概要を述べる。
<Outline of the embodiment>
FIG. 1 is a diagram schematically showing a configuration of a neural network according to an embodiment. Further, FIG. 2 is a diagram schematically showing an outline of the learning model execution system S according to the embodiment. Hereinafter, an outline of the embodiment will be described with reference to FIGS. 1 and 2.

実施の形態に係る情報処理装置が学習モデルを生成するために利用するニューラルネットワークは、全体としては、入力層、中間層、及び出力層を含む一般的な構成である。図1に示すように、実施の形態に係る情報処理装置は、入力層に入力した学習用データが中間層を伝搬し、最終的に出力層が出力したデータ列と、学習用データに対応する正解ラベルとの誤差を損失関数を用いて算出する。情報処理装置は、算出した誤差に基づいて、誤差逆伝搬法を用いて中間層に設定された重みを更新する。 The neural network used by the information processing apparatus according to the embodiment to generate a learning model has a general configuration including an input layer, an intermediate layer, and an output layer as a whole. As shown in FIG. 1, in the information processing apparatus according to the embodiment, the learning data input to the input layer propagates through the intermediate layer, and finally corresponds to the data string output by the output layer and the learning data. The error from the correct label is calculated using the loss function. The information processing apparatus updates the weight set in the intermediate layer by using the error back propagation method based on the calculated error.

ここで、実施の形態に係る情報処理装置は、学習用データを入力層に入力する前に所定の変換手続きで学習用データを変換する「入力変換」と、出力層が出力したデータを所定の変換手続きで変換する「出力変換」との、少なくともいずれか一方の変換を実施する。 Here, the information processing apparatus according to the embodiment has an "input conversion" that converts the learning data by a predetermined conversion procedure before inputting the learning data to the input layer, and a predetermined data output by the output layer. At least one of the "output conversion" to be converted by the conversion procedure is performed.

なお、図1は、情報処理装置が入力変換と出力変換とのいずれの変換も実施している場合の例を示している。詳細は後述するが、可読可能な情報を情報処理装置が入力変換すると、変換後の情報は可読が困難な情報となる。出力変換も同様である。また、学習データを入力変換してもニューラルネットワークの学習に影響がないように、入力変換は設計されている。 Note that FIG. 1 shows an example in which the information processing apparatus performs both input conversion and output conversion. Details will be described later, but when the information processing apparatus inputs and converts readable information, the converted information becomes difficult to read. The same applies to output conversion. In addition, the input conversion is designed so that the input conversion of the training data does not affect the learning of the neural network.

図2に示すように、実施の形態に係る学習モデル実行システムSは、通信ネットワークNを介して互いに通信可能な態様で接続する情報処理装置1とユーザ端末2とを含む。ユーザ端末2は、情報処理装置1から入力API(Application Program Interface)と出力APIとの提供を受けている。ユーザ端末2は、入力APIを利用することにより、通信ネットワークNを介して処理対象とするデータを情報処理装置1に送信することができる。また、ユーザ端末2は、出力APIを利用することにより、通信ネットワークNを介して情報処理装置1から学習モデルの実行結果を受信することができる。 As shown in FIG. 2, the learning model execution system S according to the embodiment includes an information processing device 1 and a user terminal 2 that are connected to each other via a communication network N in a manner in which they can communicate with each other. The user terminal 2 receives an input API (Application Program Interface) and an output API from the information processing device 1. By using the input API, the user terminal 2 can transmit the data to be processed to the information processing device 1 via the communication network N. Further, the user terminal 2 can receive the execution result of the learning model from the information processing device 1 via the communication network N by using the output API.

入力APIは、情報処理装置1が学習モデルを生成する際に実施した入力変換と同じ変換を処理対象データに施し、変換後の処理対象データを通信ネットワークNを介して情報処理装置1に送信する。変換後の処理対象データは可読ではないため、通信ネットワークNを介して情報処理装置1に送信中にデータが漏洩したとしても、データから情報が読み出されることを抑制できる。 The input API applies the same conversion as the input conversion performed when the information processing device 1 generates the learning model to the processing target data, and transmits the converted processing target data to the information processing device 1 via the communication network N. .. Since the data to be processed after conversion is not readable, it is possible to suppress the reading of information from the data even if the data is leaked during transmission to the information processing device 1 via the communication network N.

また、出力APIは、情報処理装置1が出力変換を施した後に学習モデルの出力結果をユーザ端末2に送信する場合には、取得した出力結果に対して出力変換の逆変換を施す。これにより、ユーザ端末2は、可読が困難な状態で通信された出力結果を可読な情報に戻すことができる。 Further, when the output result of the learning model is transmitted to the user terminal 2 after the information processing apparatus 1 performs the output conversion, the output API performs the inverse conversion of the output conversion on the acquired output result. As a result, the user terminal 2 can return the output result communicated in a state where it is difficult to read to readable information.

このように、実施の形態に係る情報処理装置1が生成する学習モデルは、通信ネットワークを介して学習モデルを利用する際の情報漏洩を抑制することができる。さらに、入力変換を施す入力APIを持たない第三者が、何らかの手段で処理対象データをオンラインの学習モデルに入力したとしても、正しい処理結果を得ることができない。これにより、実施の形態に係る情報処理装置1が生成する学習モデルは、学習モデルの不正な利用も抑制することができる。 As described above, the learning model generated by the information processing apparatus 1 according to the embodiment can suppress information leakage when the learning model is used via the communication network. Further, even if a third party who does not have an input API for input conversion inputs the data to be processed into the online learning model by some means, the correct processing result cannot be obtained. As a result, the learning model generated by the information processing apparatus 1 according to the embodiment can suppress unauthorized use of the learning model.

<実施の形態に係る情報処理装置1の機能構成>
図3は、実施の形態に係る情報処理装置1の機能構成を模式的に示す図である。情報処理装置1は目的タスクを検出するための複数の層を備えるニューラルネットワークの各層の重みを生成する装置であり、記憶部10と制御部11とを備える。
<Functional configuration of the information processing device 1 according to the embodiment>
FIG. 3 is a diagram schematically showing a functional configuration of the information processing device 1 according to the embodiment. The information processing device 1 is a device that generates weights for each layer of a neural network including a plurality of layers for detecting a target task, and includes a storage unit 10 and a control unit 11.

記憶部10は、情報処理装置1を実現するコンピュータのBIOS(Basic Input Output System)等を格納するROM(Read Only Memory)や情報処理装置1の作業領域となるRAM(Random Access Memory)、OS(Operating System)やアプリケーションプログラム、当該アプリケーションプログラムの実行時に参照される種々の情報を格納するHDD(Hard Disk Drive)やSSD(Solid State Drive)等の大容量記憶装置である。 The storage unit 10 includes a ROM (Read Only Memory) for storing the BIOS (Basic Input Output System) of the computer that realizes the information processing device 1, a RAM (Random Access Memory) that serves as a work area for the information processing device 1, and an OS (OS). An operating system), an application program, and a large-capacity storage device such as an HDD (Hard Disk Drive) or SSD (Solid State Drive) that stores various information referred to when the application program is executed.

制御部11は、情報処理装置1のCPUやGPU等のプロセッサであり、記憶部10に記憶されたプログラムを実行することによって入力変換部110、重み更新部111、出力変換部112として機能する。 The control unit 11 is a processor such as a CPU or GPU of the information processing device 1, and functions as an input conversion unit 110, a weight update unit 111, and an output conversion unit 112 by executing a program stored in the storage unit 10.

なお、図3は、情報処理装置1が単一の装置で構成されている場合の例を示している。しかしながら、情報処理装置1は、例えばクラウドコンピューティングシステムのように複数のプロセッサやメモリ等の計算リソースによって実現されてもよい。この場合、制御部11を構成する各部は、複数の異なるプロセッサの中の少なくともいずれかのプロセッサがプログラムを実行することによって実現される。 Note that FIG. 3 shows an example in which the information processing device 1 is composed of a single device. However, the information processing device 1 may be realized by computing resources such as a plurality of processors and memories, such as a cloud computing system. In this case, each unit constituting the control unit 11 is realized by executing a program by at least one of a plurality of different processors.

入力変換部110は、ニューラルネットワークに入力する入力データを所定の変換手続きで変換して変換入力データを生成する。具体的には、入力変換部110が実行する変換手続きは、変換前の空間における任意の2点間の距離と、変換後の空間において対応する2点間の距離とが、定数倍(0倍を除く)の関係となる変換手続きである。 The input conversion unit 110 converts the input data to be input to the neural network by a predetermined conversion procedure to generate the conversion input data. Specifically, in the conversion procedure executed by the input conversion unit 110, the distance between arbitrary two points in the space before conversion and the distance between the corresponding two points in the space after conversion are constant times (0 times). It is a conversion procedure that is related to).

図4は、実施の形態に係る入力変換部110及び出力変換部112が実施する変換手続きを説明するための図である。図4において、入力データIは図1に示す入力データを示している。入力データIはベクトルで表現することができ、図4に示す例では、N1からNnまでのn個の要素で構成されているn次元ベクトルである。 FIG. 4 is a diagram for explaining a conversion procedure carried out by the input conversion unit 110 and the output conversion unit 112 according to the embodiment. In FIG. 4, the input data I shows the input data shown in FIG. The input data I can be represented by a vector, and in the example shown in FIG. 4, it is an n-dimensional vector composed of n elements from N1 to Nn.

任意のn次元ベクトルは、m(1≦m≦n)番目の要素が1で、他の要素が0であるn個の規定ベクトルを軸とするn次元直交座標系における1点として表現することができる。図4において、N1軸の規定ベクトルは(1,0,・・・,0)であり、N2軸の規定ベクトルは(0,1,0,・・・,0)である。以下同様である。 An arbitrary n-dimensional vector shall be expressed as one point in an n-dimensional Cartesian coordinate system centered on n defined vectors in which the m (1 ≦ m ≦ n) th element is 1 and the other elements are 0. Can be done. In FIG. 4, the defined vector of the N1 axis is (1,0, ..., 0), and the defined vector of the N2 axis is (0,1,0, ..., 0). The same applies hereinafter.

n次元直交座標系の原点をOとし、n次元空間における異なる2点をそれぞれ点A及び点Bとする。また、入力変換部110による変換後の点A及び点Bをそれぞれ点A’及び点B’とする。n次元空間における点Aと点Bとの距離をD(A,B)とすると、入力変換部110及び出力変換部112が実施する変換手続きは、任意の点A及び点Bについて、kを0以外の実数としたとき、以下の式(1)が成り立つ。
D(A,B)=kD(A’,B’) (1)
Let O be the origin of the n-dimensional Cartesian coordinate system, and let two different points in the n-dimensional space be points A and B, respectively. Further, the points A and B after conversion by the input conversion unit 110 are designated as points A'and B', respectively. Assuming that the distance between the point A and the point B in the n-dimensional space is D (A, B), the conversion procedure carried out by the input conversion unit 110 and the output conversion unit 112 sets k to 0 for any point A and point B. When a real number other than is used, the following equation (1) holds.
D (A, B) = kD (A', B') (1)

このような変換手続きの例は、拡大変換、縮小変換、等長変換(回転又は反転)、及び並行移動変換のいずれか一つの変換、又は2以上の変換の合成変換である。 An example of such a conversion procedure is a conversion of any one of expansion conversion, reduction conversion, equal length conversion (rotation or inversion), and parallel movement conversion, or a composite conversion of two or more conversions.

図4において、線分OAの長さD(O,A)をa、線分OBの長さD(O,B)をb、線分ABの長さD(A,B)をcとする。同様に、線分OA’の長さD(O,A’)をa’、線分OB’の長さD(O,B’)をb’、線分A’B’の長さD(A’,B’)をc’とする。また、角AOBをθ、角A’OB’をθ’とする。このとき、余弦定理より、以下の式(2)及び式(3)が成り立つ。 In FIG. 4, the length D (O, A) of the line segment OA is a, the length D (O, B) of the line segment OB is b, and the length D (A, B) of the line segment AB is c. .. Similarly, the length D (O, A') of the line segment OA'is a', the length D (O, B') of the line segment OB' is b', and the length D of the line segment A'B'( Let A', B') be c'. Further, the angle AOB is θ, and the angle A'OB'is θ'. At this time, from the law of cosines, the following equations (2) and (3) hold.

cosθ=(a+b−c)/(2ab) (2)
cosθ’=(a’+b’−c’)/(2a’b’) (3)
が成り立つ。
cosθ = (a 2 + b 2- c 2 ) / (2ab) (2)
cosθ '= (a' 2 + b '2 -c' 2) / (2a'b ') (3)
Is established.

入力変換部110及び出力変換部112が実施する変換手続きでは、n次元空間における任意の2点について式(1)が成り立つので、a’=ka、b’=kb、c’=kcが成り立つ。これらを式(3)に代入すると、以下の式(4)を得る。 In the conversion procedure carried out by the input conversion unit 110 and the output conversion unit 112, the equation (1) holds for any two points in the n-dimensional space, so that a'= ka, b'= kb, and c'= kc hold. Substituting these into equation (3) gives the following equation (4).

cosθ’=((ka)+(kb)−(kc))/(2kakb)
=(a+b−c)/(2ab)
=cosθ (4)
cosθ'= ((ka) 2 + (kb) 2- (kc) 2 ) / (2kakb)
= (A 2 + b 2- c 2 ) / (2ab)
= Cosθ (4)

式(4)は、入力変換部110及び出力変換部112が実施する変換手続きでは角度が保存されることを示している。ここで、重み更新部111は、入力変換部110が生成した変換入力データを入力データとして、既知の誤差逆伝搬法を用いてニューラルネットワークの各層の重みを更新する。 Equation (4) indicates that the angle is preserved in the conversion procedure performed by the input conversion unit 110 and the output conversion unit 112. Here, the weight updating unit 111 updates the weights of each layer of the neural network by using the conversion input data generated by the input conversion unit 110 as input data and using a known error back propagation method.

既知の技術のため詳細は省略するが、誤差逆伝搬法は、n次元空間における損失関数の勾配に基づいて、その損失関数の極値を求める問題に属する。損失関数の勾配は、いわばn次元空間における損失関数の「傾き角」を示している。誤差逆伝搬法は、損失関数の「傾き角」が大きい方向を選んでn次元空間における損失関数の「坂道」を進み、極値に到達するように設計されたアルゴリズムともいえる。 Although details are omitted because it is a known technique, the error back propagation method belongs to the problem of finding the extremum of the loss function based on the gradient of the loss function in the n-dimensional space. The gradient of the loss function indicates, so to speak, the "tilt angle" of the loss function in the n-dimensional space. The error back propagation method can be said to be an algorithm designed to reach the extreme value by selecting the direction in which the "tilt angle" of the loss function is large and advancing the "hill" of the loss function in the n-dimensional space.

式(4)に示すように、実施の形態に係る入力変換部110及び出力変換部112が実施する変換手続きでは角度が保存される。これは、入力変換部110及び出力変換部112が実施する変換手続きによっても、損失関数の「傾き角」が変化しないことを意味する。したがって、実施の形態に係る入力変換部110が実施する変換手続きを入力データに施しても、重み更新部111は、変換手続きが施されない場合と同様に学習することができる。 As shown in the equation (4), the angle is preserved in the conversion procedure carried out by the input conversion unit 110 and the output conversion unit 112 according to the embodiment. This means that the "tilt angle" of the loss function does not change even with the conversion procedure performed by the input conversion unit 110 and the output conversion unit 112. Therefore, even if the conversion procedure performed by the input conversion unit 110 according to the embodiment is applied to the input data, the weight update unit 111 can learn in the same manner as when the conversion procedure is not performed.

また、実施の形態に係る出力変換部112が出力データに変換手続きを施しても、変換自体によって出力データの形が歪められないことが保証される。したがって、出力変換部112は、ニューラルネットワークの出力層が出力した出力ベクトルを、その出力ベクトルが存在する空間における任意の2点間の距離と、変換後の空間における2点間の距離とが定数倍の関係となる変換手続きで、出力ベクトルを変換して変換出力ベクトルを生成してもよい。これにより、万が一出力結果が通信ネットワークNにおいて第三者に傍受されたとしても、出力APIを保持していない第三者が変換出力ベクトルから情報を抜き出すことを抑制できる。 Further, even if the output conversion unit 112 according to the embodiment performs a conversion procedure on the output data, it is guaranteed that the shape of the output data is not distorted by the conversion itself. Therefore, the output conversion unit 112 sets the output vector output by the output layer of the neural network as a constant between an arbitrary two points in the space where the output vector exists and a distance between the two points in the converted space. The output vector may be converted to generate a converted output vector by a conversion procedure having a double relationship. As a result, even if the output result is intercepted by a third party in the communication network N, it is possible to prevent a third party who does not have the output API from extracting information from the converted output vector.

図5(a)−(b)は、実施の形態に係る入力変換部110が実施する変換手続きの別の例を説明するための図である。具体的には、図5(a)はカラー画像の画素の構造を模式的に示す図であり、図5(b)は色空間における変換手続きを模式的に示す図である。 5 (a)-(b) is a diagram for explaining another example of the conversion procedure carried out by the input conversion unit 110 according to the embodiment. Specifically, FIG. 5A is a diagram schematically showing a pixel structure of a color image, and FIG. 5B is a diagram schematically showing a conversion procedure in a color space.

図5(a)に示すように、デジタルカラー画像の多くは赤(R)、緑(G)、及び青(B)の三色で一画素が構成されている。図示はしないが、この他にも例えばYCbCr等の式差信号を用いて表現されている場合でも、一画素は複数の信号成分を示す複数の変数から構成されている。 As shown in FIG. 5A, most digital color images are composed of one pixel in three colors of red (R), green (G), and blue (B). Although not shown, one pixel is composed of a plurality of variables indicating a plurality of signal components even when the expression difference signal such as YCbCr is used.

例えば、カラー画像の各画素がRGB三色の組み合わせで表現されているとする。この場合、カラー画像の各画素は、R、G、及びBの各色を座標軸とする3次元空間内の一点として表現される。例えば、R、G、及びBの各色の輝度値がそれぞれ64、128、192である画素は、R、G、及びBの各色を座標軸とする3次元空間内の点(64,128,192)に対応する。 For example, it is assumed that each pixel of a color image is represented by a combination of three RGB colors. In this case, each pixel of the color image is represented as a point in the three-dimensional space whose coordinate axes are the colors R, G, and B. For example, a pixel whose luminance values of the R, G, and B colors are 64, 128, and 192, respectively, is a point (64, 128, 192) in a three-dimensional space whose coordinate axes are the R, G, and B colors. Corresponds to.

図5(b)に示すように、入力変換部110は、目的タスクがカラー画像を対象とする画像認識タスクである場合、カラー画像の各画素の特徴を特定するための複数の変数を座標軸とする空間において、上述した変換手続きを実行してもよい。これにより、変換後の画像は変換前の画像と比較すると色相、彩度、及び輝度のバランスが崩れるので、入力変換部110は入力データの可読性を低下させることができる。 As shown in FIG. 5B, when the target task is an image recognition task for a color image, the input conversion unit 110 uses a plurality of variables for specifying the characteristics of each pixel of the color image as coordinate axes. The conversion procedure described above may be executed in the space where the above is performed. As a result, the image after conversion loses the balance of hue, saturation, and brightness as compared with the image before conversion, so that the input conversion unit 110 can reduce the readability of the input data.

<情報処理装置1が実行する学習方法の処理フロー>
図6は、実施の形態に係る情報処理装置1が実行する学習処理の流れを説明するためのフローチャートである。本フローチャートにおける処理は、例えば情報処理装置1が起動したときに開始する。
<Processing flow of learning method executed by information processing device 1>
FIG. 6 is a flowchart for explaining the flow of the learning process executed by the information processing apparatus 1 according to the embodiment. The process in this flowchart starts, for example, when the information processing device 1 is activated.

入力変換部110は、目的タスクを検出するための複数の層を備えるニューラルネットワークの各層の重みを生成するための学習に用いる入力データを取得する(S2)。入力変換部110は、取得した入力データを所定の手続きで変換する(S4)。なお、入力変換部110が実行する所定の変換手続きは、変換前の空間における任意の2点間の距離と、変換後の空間における2点間の距離とが、定数倍の関係となる変換手続きである。 The input conversion unit 110 acquires input data used for learning to generate weights for each layer of a neural network including a plurality of layers for detecting a target task (S2). The input conversion unit 110 converts the acquired input data by a predetermined procedure (S4). The predetermined conversion procedure executed by the input conversion unit 110 is a conversion procedure in which the distance between arbitrary two points in the space before conversion and the distance between two points in the space after conversion have a constant multiple relationship. Is.

重み更新部111は、入力変換部110が生成した変換入力データを入力データとしてニューラルネットワークの各層の重みを更新する(S6)。入力変換部110は、ニューラルネットワークの出力層の出力と、正解ラベルとに基づいて損失関数を用いて算出した誤差が、更新終了の条件を満たすまでの間(S8のNo)、重みの更新を継続する。 The weight update unit 111 updates the weights of each layer of the neural network using the conversion input data generated by the input conversion unit 110 as input data (S6). The input conversion unit 110 updates the weight until the error calculated by using the loss function based on the output of the output layer of the neural network and the correct label satisfies the condition of the update end (No in S8). continue.

ニューラルネットワークの出力層の出力と、正解ラベルとに基づいて損失関数を用いて算出した誤差が、更新終了の条件を満たすと(S8のYes)、重み更新部111はニューラルネットワークの各層の重みから構成されるモデルパラメータと、通信ネットワークNを介してニューラルネットワークにアクセスするための入力API及び出力APIとを、モデルパラメータのユーザに提供する(S10)。 When the error calculated by using the loss function based on the output of the output layer of the neural network and the correct answer label satisfies the condition of the end of update (Yes in S8), the weight update unit 111 starts from the weight of each layer of the neural network. The configured model parameters and the input API and the output API for accessing the neural network via the communication network N are provided to the user of the model parameters (S10).

入力変換部110がモデルパラメータと各種APIとをユーザに提供すると、本フローチャートにおける処理は終了する。 When the input conversion unit 110 provides the model parameters and various APIs to the user, the process in this flowchart ends.

<実施の形態に係る情報処理装置1が奏する効果>
以上説明したように、実施の形態に係る情報処理装置1によれば、通信ネットワークNを介して学習モデルを利用する際の情報漏洩を抑制することができる。
<Effects of the information processing device 1 according to the embodiment>
As described above, according to the information processing device 1 according to the embodiment, it is possible to suppress information leakage when the learning model is used via the communication network N.

以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されず、その要旨の範囲内で種々の変形及び変更が可能である。例えば、装置の分散・統合の具体的な実施の形態は、以上の実施の形態に限られず、その全部又は一部について、任意の単位で機能的又は物理的に分散・統合して構成することができる。また、複数の実施の形態の任意の組み合わせによって生じる新たな実施の形態も、本発明の実施の形態に含まれる。組み合わせによって生じる新たな実施の形態の効果は、もとの実施の形態の効果を合わせ持つ。 Although the present invention has been described above using the embodiments, the technical scope of the present invention is not limited to the scope described in the above embodiments, and various modifications and changes can be made within the scope of the gist thereof. be. For example, the specific embodiment of the distribution / integration of the device is not limited to the above embodiment, and all or a part thereof may be functionally or physically distributed / integrated in any unit. Can be done. Also included in the embodiments of the present invention are new embodiments resulting from any combination of the plurality of embodiments. The effect of the new embodiment produced by the combination has the effect of the original embodiment together.

<変形例>
上記では、入力変換部110がニューラルネットワークに入力する入力データを所定の変換手続きで変換する場合について主に説明した。しかしながら、入力データは秘匿すべき情報ではなく、出力結果が秘匿すべき情報である場合には、入力変換部110は入力変換せずに出力変換部112が出力変換のみをするようにしてもよい。
<Modification example>
In the above, the case where the input conversion unit 110 converts the input data input to the neural network by a predetermined conversion procedure has been mainly described. However, if the input data is not information to be kept secret and the output result is information to be kept secret, the input conversion unit 110 may not perform the input conversion but the output conversion unit 112 may only perform the output conversion. ..

一般に、ニューラルネットワークに入力する入力データと比較すると、ニューラルネットワークから出力される出力データのサイズは小さので、入力データの変換を省略することで計算コストの抑制、学習の高速化を期待できる点で効果がある。 Generally, the size of the output data output from the neural network is smaller than the input data input to the neural network. Therefore, by omitting the conversion of the input data, the calculation cost can be suppressed and the learning speed can be expected. effective.

1・・・情報処理装置
10・・・記憶部
11・・・制御部
110・・・入力変換部
111・・・重み更新部
112・・・出力変換部
2・・・ユーザ端末
N・・・通信ネットワーク
S・・・学習モデル実行システム

1 ... Information processing device 10 ... Storage unit 11 ... Control unit 110 ... Input conversion unit 111 ... Weight update unit 112 ... Output conversion unit 2 ... User terminal N ... Communication network S: Learning model execution system

Claims (7)

数の層を備えるニューラルネットワークの各層の重みを生成する情報処理装置であって、
前記ニューラルネットワークに入力する入力データを所定の変換手続きで変換して変換入力データを生成する入力変換部と、
前記入力変換部が生成した変換入力データを入力データとして前記ニューラルネットワークの各層の重みを更新する重み更新部と、を備え、
前記入力変換部が実行する所定の変換手続きは、前記入力データを構成する要素を並べたベクトルを規定する空間において、変換前の前記空間における任意の2点間の距離と、変換後の前記空間における前記2点間の距離とが、定数倍の関係となる変換手続きである、
情報処理装置。
An information processing apparatus for generating a weight of each layer of the neural network comprising a layer of multiple,
An input conversion unit that converts the input data input to the neural network by a predetermined conversion procedure to generate the conversion input data, and
A weight update unit that updates the weights of each layer of the neural network using the conversion input data generated by the input conversion unit as input data is provided.
Predetermined conversion procedure by the input conversion unit executes, in a space defining a vector obtained by arranging the elements constituting the input data, the distance between any two points in the space before the conversion, the space after the conversion Is a conversion procedure in which the distance between the two points in the above is a constant multiple relationship.
Information processing device.
前記ニューラルネットワークの出力層が出力した出力ベクトルを、当該出力ベクトルが存在する空間における任意の2点間の距離と、変換後の空間における前記2点間の距離とが、定数倍の関係となる変換手続きで、前記出力ベクトルを変換して変換出力ベクトルを生成する出力変換部をさらに備える、
請求項1に記載の情報処理装置。
The output vector output by the output layer of the neural network has a constant multiple relationship between the distance between any two points in the space where the output vector exists and the distance between the two points in the space after conversion. A conversion procedure further includes an output conversion unit that converts the output vector to generate a conversion output vector.
The information processing device according to claim 1.
前記ニューラルネットワークはカラー画像を対象とする画像認識タスクとし
前記入力変換部は、前記カラー画像の各画素の特徴を特定するための複数の変数を座標軸とする空間において、前記所定の変換手続きを実行する、
請求項1又は2に記載の情報処理装置。
The neural network is a task image recognition targeting a color image,
The input conversion unit executes the predetermined conversion procedure in a space whose coordinate axes are a plurality of variables for specifying the characteristics of each pixel of the color image.
The information processing device according to claim 1 or 2.
前記所定の変換手続きは、拡大変換、縮小変換、等長変換、及び並行移動変換のいずれか一つの変換、又は2以上の変換の合成変換である、
請求項1又は3のいずれか1項に記載の情報処理装置。
The predetermined conversion procedure is any one conversion of expansion conversion, reduction conversion, equal length conversion, and parallel movement conversion, or a composite conversion of two or more conversions.
The information processing device according to any one of claims 1 or 3.
数の層を備えるニューラルネットワークの各層の重みを生成する情報処理装置であって、
習用データを入力データとして前記ニューラルネットワークの各層の重みを更新する重み更新部と、
前記ニューラルネットワークの出力層が出力した出力ベクトルを、当該出力ベクトルを規定する空間における任意の2点間の距離と、変換後の空間における前記2点間の距離とが、定数倍の関係となる変換手続きで、前記出力ベクトルを変換して変換出力ベクトルを生成する出力変換部と、
を備える情報処理装置。
An information processing apparatus for generating a weight of each layer of the neural network comprising a layer of multiple,
A weight updating section for updating the weight of each layer of the neural network the academic習用data as input data,
The output vector output by the output layer of the neural network has a constant multiple relationship between the distance between any two points in the space that defines the output vector and the distance between the two points in the space after conversion. In the conversion procedure, the output conversion unit that converts the output vector and generates the conversion output vector,
Information processing device equipped with.
数の層を備えるニューラルネットワークの各層の重みを生成する情報処理装置のプロセッサが実行する学習方法であって、前記プロセッサが、
前記ニューラルネットワークに入力する入力データを所定の変換手続きで変換して変換入力データを生成するステップと、
生成した前記変換入力データを入力データとして前記ニューラルネットワークの各層の重みを更新するステップと、を実行し、
前記生成するステップにおける所定の変換手続きは、前記入力データを構成する要素を並べたベクトルを規定する空間において、変換前の前記空間における任意の2点間の距離と、変換後の前記空間における前記2点間の距離とが、定数倍の関係となる変換手続きである、
学習方法。
A learning method processors of an information processing apparatus for generating a weight of each layer of the neural network comprising a layer of multiple runs, the processor,
A step of converting the input data to be input to the neural network by a predetermined conversion procedure to generate the converted input data, and
The step of updating the weight of each layer of the neural network using the generated conversion input data as input data is executed.
Predetermined conversion procedure in the step of generating, in a space defining a vector obtained by arranging the elements constituting the input data, the distance between any two points in the space before the conversion, the in the space after the conversion The conversion procedure in which the distance between two points has a constant multiple relationship,
Learning method.
複数の層を備えるニューラルネットワークの各層の重みを生成する情報処理装置に、
記ニューラルネットワークに入力する入力データを所定の変換手続きで変換して変換入力データを生成する機能と、
生成した前記変換入力データを入力データとして前記ニューラルネットワークの各層の重みを更新する機能と、を実現させ、
前記生成する機能における所定の変換手続きは、前記入力データを構成する要素を並べたベクトルを規定する空間において、変換前の前記空間における任意の2点間の距離と、変換後の前記空間における前記2点間の距離とが、定数倍の関係となる変換手続きである、
プログラム。
For information processing devices that generate weights for each layer of a neural network with multiple layers
And generating a converted input data is converted to a predetermined conversion procedure input data to be input before Symbol neural network,
A function of updating the weight of each layer of the neural network using the generated conversion input data as input data is realized.
Predetermined conversion procedure in function of said generated in the space to define a vector obtained by arranging the elements constituting the input data, the distance between any two points in the space before the conversion, the in the space after the conversion The conversion procedure in which the distance between two points has a constant multiple relationship,
program.
JP2018071117A 2018-04-02 2018-04-02 Information processing equipment, learning methods, and programs Active JP6961527B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018071117A JP6961527B2 (en) 2018-04-02 2018-04-02 Information processing equipment, learning methods, and programs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018071117A JP6961527B2 (en) 2018-04-02 2018-04-02 Information processing equipment, learning methods, and programs

Publications (2)

Publication Number Publication Date
JP2019185134A JP2019185134A (en) 2019-10-24
JP6961527B2 true JP6961527B2 (en) 2021-11-05

Family

ID=68341163

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018071117A Active JP6961527B2 (en) 2018-04-02 2018-04-02 Information processing equipment, learning methods, and programs

Country Status (1)

Country Link
JP (1) JP6961527B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102384588B1 (en) * 2020-11-03 2022-04-08 오픈엣지테크놀로지 주식회사 Method for operating a neural network and for producing weights for the neural network
CN114065608B (en) * 2021-10-21 2023-09-22 深圳市卓立智能制造有限公司 Output power stable control method and system for reciprocating electromagnetic pump and electronic equipment

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007072964A (en) * 2005-09-09 2007-03-22 Ishihara Sangyo:Kk Bed-leaving prediction automatic sensing and notification method, and its automatic sensing and notification system
JP4867601B2 (en) * 2006-11-20 2012-02-01 株式会社日立製作所 User authentication method and user authentication system using biometric feature conversion device
JP6539901B2 (en) * 2015-03-09 2019-07-10 学校法人法政大学 PLANT DISEASE DIAGNOSTIC SYSTEM, PLANT DISEASE DIAGNOSTIC METHOD, AND PROGRAM

Also Published As

Publication number Publication date
JP2019185134A (en) 2019-10-24

Similar Documents

Publication Publication Date Title
CN109377544B (en) Human face three-dimensional image generation method and device and readable medium
CN110460600B (en) Joint deep learning method capable of resisting generation of counterattack network attacks
JP7490004B2 (en) Image Colorization Using Machine Learning
US11295208B2 (en) Robust gradient weight compression schemes for deep learning applications
CN113408743B (en) Method and device for generating federal model, electronic equipment and storage medium
CN110751291B (en) Method and device for realizing multi-party combined training neural network of security defense
US20220084163A1 (en) Target image generation method and apparatus, server, and storage medium
CN111275784B (en) Method and device for generating image
WO2021169740A1 (en) Image restoration method and apparatus, computer device, and storage medium
US20220092185A1 (en) Trusted execution environment-based model training methods and apparatuses
JP6961527B2 (en) Information processing equipment, learning methods, and programs
WO2021055046A1 (en) Privacy enhanced machine learning
US11829468B2 (en) Neural network confidentiality
JP6802819B2 (en) Learning devices, information processing systems, learning methods, and programs
CN113298931B (en) Reconstruction method and device of object model, terminal equipment and storage medium
JP6901423B2 (en) Information processing equipment, information processing terminals, and programs
KR20200072586A (en) Deep learning-based image on personal information image processing apparatus and method therefor
CN111915676B (en) Image generation method, device, computer equipment and storage medium
CN113052962A (en) Model training method, information output method, device, equipment and storage medium
US20240111894A1 (en) Generative machine learning models for privacy preserving synthetic data generation using diffusion
CN111582284A (en) Privacy protection method and device for image recognition and electronic equipment
CN115953524A (en) Data processing method and device, computer equipment and storage medium
KR102468718B1 (en) Method and device for providing 3d digital twin space using deep neural network
JP2020003879A (en) Information processing device, information processing method, watermark detection device, watermark detection method, and program
CN113223128B (en) Method and apparatus for generating image

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200529

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210706

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210823

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20211005

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211013

R150 Certificate of patent or registration of utility model

Ref document number: 6961527

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150