JP2018190239A - Deep learning automatic learning system, client device and server device - Google Patents
Deep learning automatic learning system, client device and server device Download PDFInfo
- Publication number
- JP2018190239A JP2018190239A JP2017093205A JP2017093205A JP2018190239A JP 2018190239 A JP2018190239 A JP 2018190239A JP 2017093205 A JP2017093205 A JP 2017093205A JP 2017093205 A JP2017093205 A JP 2017093205A JP 2018190239 A JP2018190239 A JP 2018190239A
- Authority
- JP
- Japan
- Prior art keywords
- learning
- data
- client device
- result data
- unit
- 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.)
- Granted
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
Description
本発明は、深層学習自動学習システム、クライアント装置およびサーバ装置に関し、より詳しくは、クライアント装置からサーバ装置に送信された学習データに基づいて深層学習を行い、最新の学習結果をサーバ装置からクライアント装置にインターネットを通じてセキュアに提供する深層学習自動学習システム、ならびに、当該深層学習自動学習システムが備えるクライアント装置およびサーバ装置に関する。 The present invention relates to a deep learning automatic learning system, a client device, and a server device, and more specifically, performs deep learning based on learning data transmitted from the client device to the server device, and the latest learning result is transmitted from the server device to the client device. The present invention relates to a deep learning automatic learning system provided securely over the Internet, and a client device and a server device provided in the deep learning automatic learning system.
センサー等の外部装置から得られた学習データを用いて深層学習を行うシステムが活発に研究されている。深層学習は、多層構造のニューラルネットワークを用いた機械学習の一種である。深層学習の一手法として、構造適応型深層学習法が知られている(非特許文献1参照)。この構造適応型深層学習法は、DBN(Deep Brief Network)において、最適な隠れニューロン数および層の数を学習中に自動で求めるための手法である。 Systems that perform deep learning using learning data obtained from external devices such as sensors are being actively studied. Deep learning is a kind of machine learning using a neural network having a multilayer structure. A structure adaptive deep learning method is known as a method of deep learning (see Non-Patent Document 1). This structure-adaptive deep learning method is a method for automatically obtaining the optimal number of hidden neurons and the number of layers during learning in a DBN (Deep Brief Network).
なお、特許文献1には、クライアントコンピュータが生成した診断データをベンダーコンピュータシステムにより解析して推奨データを生成し、クライアントに対し推奨データを伝達する方法が記載されている。 Japanese Patent Application Laid-Open No. 2004-228561 describes a method of generating recommended data by analyzing diagnostic data generated by a client computer using a vendor computer system and transmitting the recommended data to the client.
深層学習を利用するための情報処理システムとして、インターネットを介して接続されたクライアント装置とサーバ装置を備えるシステムであって、クライアント装置が学習データをサーバ装置に送信し、当該学習データに基づく深層学習が行われた後、サーバ装置が学習結果をクライアント装置に送信するシステムが考えられる。深層学習を実行する学習用計算機の性能にもよるが、一般的に深層学習は比較的長い時間(例えば数時間程度)を要する。 An information processing system for using deep learning is a system including a client device and a server device connected via the Internet, wherein the client device transmits learning data to the server device, and deep learning based on the learning data After the above is performed, a system in which the server device transmits the learning result to the client device can be considered. Although depending on the performance of a learning computer that performs deep learning, generally deep learning requires a relatively long time (for example, several hours).
しかしながら、深層学習が終了するまでクライアント装置とサーバ装置間の通信(セッション)を保持することは、セッションがタイムアウトするため困難である。また、セッションのタイムアウト時間を深層学習に要する時間より長くすることは、セキュリティ維持の観点から望ましくない。 However, it is difficult to maintain communication (session) between the client device and the server device until the deep learning is completed because the session times out. Also, it is not desirable from the viewpoint of maintaining security to make the session timeout time longer than the time required for deep learning.
そこで、本発明は、クライアント装置とサーバ装置間の通信を深層学習が完了するまで保持する必要がなく、最新の学習結果をサーバ装置からクライアント装置にインターネットを通じてセキュアに提供することができる深層学習自動学習システム、クライアント装置およびサーバ装置を提供することを目的とする。 Therefore, the present invention does not need to hold communication between the client device and the server device until the deep learning is completed, and can automatically provide the latest learning result from the server device to the client device through the Internet. An object is to provide a learning system, a client device, and a server device.
本発明に係る深層学習自動学習システムは、
インターネットを介して接続されたクライアント装置およびサーバ装置を備える深層学習自動学習システムであって、
前記クライアント装置は、
前記クライアント装置の識別情報に基づいて公開鍵および秘密鍵を生成する鍵生成部と、
前記サーバ装置に新規学習データを送信する新規学習データ送信部と、を有し、
前記サーバ装置は、
前記公開鍵を用いて、前記新規学習データに基づく学習結果データを暗号化して、暗号化学習結果データを生成する学習結果データ暗号化部と、
前記公開鍵を用いて、前記学習結果データを識別するためのバージョン管理情報を暗号化して、暗号化学習バージョンデータを生成するバージョン管理情報暗号化部と、
前記クライアント装置に前記暗号化学習バージョンデータをプッシュ通知するプッシュ通知部と、を有し、
前記クライアント装置は、
前記サーバ装置からプッシュ通知された前記暗号化学習バージョンデータを、前記秘密鍵を用いて復号化して、前記バージョン管理情報を取得するバージョン管理情報取得部と、
前記バージョン管理情報に対応する学習結果データを既に取得しているか否かを判定し、取得していない場合は前記サーバ装置に対して前記学習結果データの送信を要求するデータ要求部と、
前記データ要求部の要求に応じて前記サーバ装置から前記クライアント装置に送信された前記暗号化学習結果データを、前記秘密鍵を用いて復号化して、前記学習結果データを取得する学習結果データ取得部と、をさらに有することを特徴とする。
The deep learning automatic learning system according to the present invention is
A deep learning automatic learning system comprising a client device and a server device connected via the Internet,
The client device is
A key generation unit that generates a public key and a secret key based on identification information of the client device;
A new learning data transmission unit for transmitting new learning data to the server device,
The server device
A learning result data encryption unit that encrypts learning result data based on the new learning data and generates encrypted learning result data using the public key;
A version management information encryption unit that encrypts version management information for identifying the learning result data using the public key, and generates encrypted learning version data;
A push notification unit for performing push notification of the encrypted learning version data to the client device,
The client device is
A version management information acquisition unit that acquires the version management information by decrypting the encrypted learning version data that has been pushed from the server device using the secret key;
It is determined whether or not learning result data corresponding to the version management information has already been acquired, and if not acquired, a data request unit that requests the server device to transmit the learning result data;
A learning result data acquisition unit that acquires the learning result data by decrypting the encrypted learning result data transmitted from the server device to the client device in response to a request from the data request unit, using the secret key. And further comprising.
本発明に係るクライアント装置は、
インターネットを介してサーバ装置に接続されたクライアント装置であって、
前記クライアント装置の識別情報に基づいて公開鍵および秘密鍵を生成する鍵生成部と、
前記サーバ装置に新規学習データを送信する新規学習データ送信部と、
前記サーバ装置からプッシュ通知された暗号化学習バージョンデータを、前記秘密鍵を用いて復号化して、学習結果データを識別するためのバージョン管理情報を取得するバージョン管理情報取得部と、
前記バージョン管理情報に対応する学習結果データを既に取得しているか否かを判定し、取得していない場合は前記サーバ装置に対して前記学習結果データの送信を要求するデータ要求部と、
前記データ要求部の要求に応じて前記サーバ装置から前記クライアント装置に送信された暗号化学習結果データを、前記秘密鍵を用いて復号化して、前記学習結果データを取得する学習結果データ取得部と、
を備えることを特徴とする。
A client device according to the present invention provides:
A client device connected to a server device via the Internet,
A key generation unit that generates a public key and a secret key based on identification information of the client device;
A new learning data transmission unit for transmitting new learning data to the server device;
A version management information acquisition unit that obtains version management information for identifying learning result data by decrypting the encrypted learning version data that has been pushed from the server device using the secret key;
It is determined whether or not learning result data corresponding to the version management information has already been acquired, and if not acquired, a data request unit that requests the server device to transmit the learning result data;
A learning result data acquisition unit for acquiring the learning result data by decrypting the encrypted learning result data transmitted from the server device to the client device in response to the request of the data request unit, using the secret key; ,
It is characterized by providing.
本発明に係るサーバ装置は、
インターネットを介してクライアント装置に接続されたサーバ装置であって、
前記クライアント装置から受信した公開鍵を用いて、学習結果データを暗号化して暗号化学習結果データを生成する学習結果データ暗号化部と、
前記公開鍵を用いて、前記学習結果データを識別するためのバージョン管理情報を暗号化して暗号化学習バージョンデータを生成するバージョン管理情報暗号化部と、
前記クライアント装置に前記暗号化学習バージョンデータをプッシュ通知するプッシュ通知部と、
を備えることを特徴とする。
The server device according to the present invention includes:
A server device connected to a client device via the Internet,
A learning result data encryption unit that encrypts learning result data and generates encrypted learning result data using a public key received from the client device;
A version management information encryption unit that encrypts version management information for identifying the learning result data and generates encrypted learning version data using the public key;
A push notification unit for pushing notification of the encrypted learning version data to the client device;
It is characterized by providing.
本発明に係る深層学習自動学習システムでは、サーバ装置は、学習結果データを識別するためのバージョン管理情報を暗号化した暗号化学習バージョンデータをクライアント装置にプッシュ通知することにより深層学習が終了したことを通知し、クライアント装置に新しい学習結果データをダウンロードすることを促す。プッシュ通知を受信したクライアント装置は、バージョン管理情報に対応する学習結果データを既に取得しているか否かを判定し、取得していない場合、サーバ装置に対して学習結果データの送信を要求する。要求を受けたサーバ装置は、学習結果データを暗号化した暗号化学習結果データをクライアント装置に送信する。このようにすることで、クライアント装置は、サーバ装置との通信を深層学習が完了するまで保持することなく、最新の学習結果データを取得することができる。 In the deep learning automatic learning system according to the present invention, the server device has completed deep learning by pushing notification of encrypted learning version data obtained by encrypting version management information for identifying learning result data to the client device. And urges the client device to download new learning result data. The client device that has received the push notification determines whether or not learning result data corresponding to the version management information has already been acquired. If not, the client device requests the server device to transmit learning result data. The server device that has received the request transmits encrypted learning result data obtained by encrypting the learning result data to the client device. By doing in this way, the client apparatus can acquire the latest learning result data without holding the communication with the server apparatus until the deep learning is completed.
さらに、本発明に係る深層学習自動学習システムでは、バージョン管理情報および学習結果データは、公開鍵を用いて暗号化されてからクライアント装置に送信されるため、サーバ装置からクライアント装置にデータをセキュアに配信することができる。 Furthermore, in the deep learning automatic learning system according to the present invention, the version management information and the learning result data are encrypted using the public key and then transmitted to the client device, so the data is securely transmitted from the server device to the client device. Can be delivered.
よって、本発明によれば、クライアント装置とサーバ装置間の通信を深層学習が完了するまで保持する必要がなく、最新の学習結果をサーバ装置からクライアント装置にインターネットを通じてセキュアに提供することができる。 Therefore, according to the present invention, it is not necessary to hold communication between the client device and the server device until deep learning is completed, and the latest learning result can be securely provided from the server device to the client device via the Internet.
以下、本発明に係る実施形態について図面を参照しながら説明する。 Hereinafter, embodiments according to the present invention will be described with reference to the drawings.
<深層学習自動学習システム>
まず、図1を参照して、本発明の実施形態に係る深層学習自動学習システム1の概略的な構成について説明する。なお、深層学習自動学習システム1の各構成の内部構成・処理等については、図2以降の図面を参照して説明する。
<Deep learning automatic learning system>
First, a schematic configuration of a deep learning
深層学習自動学習システム1は、クライアント装置100、サーバ装置200および学習用計算機300を備える。クライアント装置100とサーバ装置200は、インターネットを介して接続されている。なお、図1では1台のクライアント装置100のみがサーバ装置200に接続されているが、複数のクライアント装置100がサーバ装置200に接続されてもよい。
The deep learning
クライアント装置100は、各種センサー等を有するIOT機器等の外部装置から新規学習データを入力する。ここで、新規学習データとは、深層学習に用いるためのデータであり、深層学習にまだ用いられていないデータである。なお、クライアント装置100は、具体的には、パソコン、タブレット端末、組み込みボード等である。 The client device 100 inputs new learning data from an external device such as an IOT device having various sensors. Here, the new learning data is data that is used for deep learning and is not yet used for deep learning. The client device 100 is specifically a personal computer, a tablet terminal, an embedded board, or the like.
クライアント装置100は、当該クライアント装置100を識別するための識別情報を有する。この識別情報は、例えば、クライアント装置100のMACアドレスやシリアル番号等の端末固有番号である。 The client device 100 has identification information for identifying the client device 100. This identification information is, for example, a terminal unique number such as the MAC address or serial number of the client device 100.
サーバ装置200は、Webデータサーバまたはクラウドサーバとも呼ばれ、図1に示すように、PUSHサーバおよびデータサーバを有する。このサーバ装置200は、学習用計算機300に通信可能に接続されており、学習用計算機300に学習データを送信し、学習用計算機300から学習結果データを受信する。ここで、学習結果データとは、深層学習により得られたデータであって、クライアント装置でニューラルネットワークを再構成するために必要となるデータである。学習結果データは、具体的には、ニューラルネットワークの形状、重み、その他のパラメータ値である。なお、学習結果データは、深層学習により蓄積された知識(IF−THENルールなど)を含んでもよい。 The server device 200 is also called a Web data server or a cloud server, and has a PUSH server and a data server as shown in FIG. The server device 200 is communicably connected to the learning computer 300, transmits learning data to the learning computer 300, and receives learning result data from the learning computer 300. Here, the learning result data is data obtained by deep learning, and is necessary for reconfiguring the neural network in the client device. Specifically, the learning result data is the shape, weight, and other parameter values of the neural network. Note that the learning result data may include knowledge accumulated by deep learning (such as IF-THEN rules).
学習用計算機300は、サーバ装置200から受信した学習データを用いて学習を行う。この学習用計算機300は、例えば、既述の構造適応型深層学習法により深層学習を行う。なお、学習用計算機300は、GPU(Graphics Processing Units)計算機と呼ばれることもある。 The learning computer 300 performs learning using the learning data received from the server device 200. For example, the learning computer 300 performs deep learning by the structure adaptive deep learning method described above. Note that the learning computer 300 may also be referred to as a GPU (Graphics Processing Units) computer.
深層学習自動学習システム1では、後ほど詳しく説明するように、クライアント装置100からサーバ装置200に新規学習データがアップロードされ、サーバ装置200からクライアント装置100に学習結果データがダウンロードされる。
In the deep learning
なお、本発明に係る深層学習自動学習システムは、図1に示す構成に限られない。例えば、サーバ装置200のPUSHサーバとデータサーバは、通信装置を介して接続された別個のサーバ装置として構成されてもよい。また、サーバ装置200は、学習用計算機300を含むように構成されてもよい。すなわち、サーバ装置200と学習用計算機300は一つの情報処理装置として構成されてもよい。 The deep learning automatic learning system according to the present invention is not limited to the configuration shown in FIG. For example, the PUSH server and the data server of the server device 200 may be configured as separate server devices connected via a communication device. The server device 200 may be configured to include a learning computer 300. That is, the server device 200 and the learning computer 300 may be configured as one information processing device.
次に、クライアント装置100、サーバ装置200および学習用計算機300の各々について、さらに詳しく説明する。まず、クライアント装置100の詳細について説明する。 Next, each of the client device 100, the server device 200, and the learning computer 300 will be described in more detail. First, details of the client device 100 will be described.
<クライアント装置>
図2に示すように、クライアント装置100は、制御部110と、記憶部120と、通信部130とを有している。
<Client device>
As illustrated in FIG. 2, the client device 100 includes a control unit 110, a storage unit 120, and a
制御部110は、クライアント装置100内のプロセッサが所定のプログラムを実行することにより実現される。この制御部110は、鍵生成部111と、新規学習データ送信部112と、バージョン管理情報取得部113と、データ要求部114と、学習結果データ取得部115と、データ消去要求部116と、推論部117と、出力部118とを有している。各部の詳細については後ほど説明する。
The control unit 110 is realized by a processor in the client device 100 executing a predetermined program. The control unit 110 includes a
記憶部120は、新規学習データDB121を有する。新規学習データDB121は、IOT機器等の外部装置から入力された新規学習データを記憶する。なお、記憶部120は、例えばハードディスク、半導体メモリ(SSD等)から構成される。
The storage unit 120 has a new
通信部130は、クライアント装置100がインターネットを介してサーバ装置200との間で情報を送受信するためのインターフェースである。
The
ここで、制御部110の各部の詳細について説明する。 Here, the detail of each part of the control part 110 is demonstrated.
鍵生成部111は、クライアント装置100の識別情報に基づいて公開鍵および秘密鍵を生成する。公開鍵はデータを暗号化する際に用いるキーであり、秘密鍵はデータを復号化する際に用いるキーである。なお、鍵の生成方法は特に限定されず、公知の鍵生成手法を用いることが可能である。
The
新規学習データ送信部112は、新規学習データDB121に保存された新規学習データをサーバ装置200に送信する。なお、本実施形態では、新規学習データは、httpsを用いてサーバ装置200にセキュアに送信される。
The new learning
バージョン管理情報取得部113は、サーバ装置200からプッシュ通知された暗号化学習バージョンデータを、鍵生成部111により生成された秘密鍵を用いて復号化して、バージョン管理情報を取得する。ここで、バージョン管理情報は、学習結果データを識別するための情報である。また、暗号化学習バージョンデータは、少なくともバージョン管理情報を公開鍵で暗号化して得られるデータのことである。なお、本実施形態では、暗号化学習バージョンデータは、バージョン管理情報と登録ID(Registration ID)を公開鍵で暗号化して得られるデータである。
The version management
データ要求部114は、バージョン管理情報に対応する学習結果データを既に取得しているか否かを判定し、取得していない場合はサーバ装置200に対して学習結果データの送信を要求する。なお、データ要求部114は、学習結果データの送信を要求する際、バージョン管理情報のバージョンをサーバ装置200に送信してもよい。これにより、サーバ装置200は、クライアント装置100に送信すべき学習結果データを把握することができる。
The
学習結果データ取得部115は、データ要求部114の要求に応じてサーバ装置200からクライアント装置100に送信された暗号化学習結果データを、鍵生成部111により生成された秘密鍵を用いて復号化して学習結果データを取得する。なお、学習結果データは、深層学習に用いた学習データを含んでいてもよい。すなわち、学習結果データ取得部115は、学習結果データとして、学習データセットを取得してもよい。ここで、「学習データセット」とは、深層学習に用いた学習データと、学習結果データとの組合せ(データセット)のことである。
The learning result
暗号化学習結果データは、少なくとも学習結果データを公開鍵で暗号化して得られるデータである。なお、本実施形態では、暗号化学習結果データは、学習結果データと登録IDを公開鍵で暗号化して得られるデータである。 The encrypted learning result data is data obtained by encrypting at least the learning result data with a public key. In the present embodiment, the encrypted learning result data is data obtained by encrypting the learning result data and the registration ID with a public key.
データ消去要求部116は、学習結果データ取得部115により学習結果データが取得された後、サーバ装置200に対して、サーバ装置200が有する暗号化学習結果データを消去するよう要求する。これにより、クライアント装置100にダウンロード済みの暗号化学習結果データがサーバ装置200から消去され、サーバ装置200のメモリを節約することができる。
After the learning result data is acquired by the learning result
推論部117は、学習結果データ取得部115により取得された学習結果データを用いて推論を行う。本実施形態では、構造適応型深層学習法による推論を行う。
The
なお、推論部117は、暗号化学習バージョンデータを復号化して得られた登録IDと、暗号化学習結果データを復号化して得られた登録IDとが一致する場合に、学習結果データを用いて構造適応型深層学習法による推論を行うことが好ましい。これにより、意図しない別バージョンの学習結果データを用いて推論を行うという事態を防止できる。
The
出力部118は、推論部117により行われた推論の結果を出力する。推論結果の出力先は、クライアント装置100のディスプレイ、プリンタ(図示せず)、記憶部120、あるいはクライアント装置100に接続された他の装置等である。
The
<サーバ装置>
次に、サーバ装置200の詳細について説明する。
<Server device>
Next, details of the server apparatus 200 will be described.
図3に示すように、サーバ装置200は、制御部210と、記憶部220と、通信部230とを有している。
As illustrated in FIG. 3, the server device 200 includes a control unit 210, a storage unit 220, and a
制御部210は、サーバ装置200内のプロセッサが所定のプログラムを実行することにより実現される。この制御部210は、登録ID発行部211と、学習結果データ暗号化部212と、バージョン管理情報暗号化部213と、プッシュ通知部214と、新規学習データ保存部215と、学習データ送信部216と、学習結果データ送信部217と、データ消去部218とを有している。各部の詳細については後ほど説明する。
The control unit 210 is realized by a processor in the server device 200 executing a predetermined program. The control unit 210 includes a registration
なお、本実施形態では、登録ID発行部211、バージョン管理情報暗号化部213およびプッシュ通知部214はPUSHサーバに設けられており、学習結果データ暗号化部212、新規学習データ保存部215、学習データ送信部216、学習結果データ送信部217およびデータ消去部218はデータサーバに設けられている。
In this embodiment, the registration
記憶部220は、端末管理用DB221と、学習データDB222と、学習結果DB223とを有する。この記憶部220は、例えばハードディスク、半導体メモリ(SSD等)から構成される。
The storage unit 220 includes a
端末管理用DB221は、図4に示すように、クライアント装置100から受信した端末固有番号(より一般的には識別情報)と公開鍵を関連付けて記憶するデータベースである。なお、端末管理用DB221は、図4に示すように、端末固有番号および公開鍵と関連付けて登録IDを記憶してもよい。
As illustrated in FIG. 4, the
学習データDB222は、クライアント装置100から受信した新規学習データが蓄積されるデータベースである。この学習データDB222には、既存学習データおよび新規学習データの両方が保存される。ここで、既存学習データは、学習用計算機300で既に深層学習に用いられたデータである。
The learning
学習結果DB223は、学習用計算機300から受信した学習結果データが蓄積されるデータベースである。
The
通信部230は、サーバ装置200がインターネットを介してクライアント装置100との間で情報を送受信し、また、学習用計算機300との間で情報を送受信するためのインターフェースである。
The
ここで、制御部210の各部の詳細について説明する。 Here, the detail of each part of the control part 210 is demonstrated.
登録ID発行部211は、クライアント装置100の識別情報に基づいて登録ID(Registration ID)を発行する。登録IDは、プッシュ通知部214がクライアント装置100に対してプッシュ通知を行うために必要な情報であり、クライアント装置100に固有のIDである。登録IDには、クライアント装置100とサーバ装置200間の通信経路に関する情報等が含まれる。
The registration
なお、クライアント装置100とサーバ装置200間の通信のセキュリティを確保する観点から、登録ID発行部211は、必要なときにのみ登録IDを発行し、不要になれば登録IDを削除することが好ましい。また、登録ID発行部211は、一定の期間ごとに登録IDを再発行(リフレッシュ)するようにしてもよい。
From the viewpoint of ensuring the security of communication between the client device 100 and the server device 200, the registration
学習結果データ暗号化部212は、クライアント装置100から受信した公開鍵を用いて、新規学習データに基づく学習結果データを暗号化して、暗号化学習結果データを生成する。本実施形態では、学習結果データ暗号化部212は、学習用計算機300から受信した学習結果データと、登録ID発行部211により発行された登録IDとを暗号化することにより、暗号化学習結果データを生成する。
The learning result
なお、学習結果データ暗号化部212は、学習データセットを暗号化することにより暗号化学習結果データを生成してもよい。
Note that the learning result
バージョン管理情報暗号化部213は、クライアント装置100から受信した公開鍵を用いて、学習用計算機300から受信した学習結果データのバージョン管理情報を暗号化して、暗号化学習バージョンデータを生成する。本実施形態では、バージョン管理情報暗号化部213は、バージョン管理情報および登録IDを暗号化して暗号化学習バージョンデータを生成する。
The version management
プッシュ通知部214は、クライアント装置100に暗号化学習バージョンデータをプッシュ通知する。本実施形態では、プッシュ通知部214によるプッシュ通知は登録IDを用いて行われる。なお、登録ID以外のデバイストークンを用いてプッシュ通知を行ってもよい。
The
新規学習データ保存部215は、クライアント装置100から受信した新規学習データを学習データDB222に保存する。
The new learning
学習データ送信部216は、学習データDB222の学習データが所定の基準を満たす場合に、学習データを学習用計算機300に送信する。本実施形態では、学習データDB222に蓄積された学習データのうち新規増加分のみが学習用計算機300に送信される。すなわち、学習用計算機300の学習データDB321に保存されている学習データと、学習データDB222に保存されている学習データとの差分が学習用計算機300に送信される。なお、これに限らず、学習データ送信部216は、学習データDB222に保存された新規学習データおよび既存学習データの両方を学習用計算機300に送信するようにしてもよい。
The learning
「所定の基準が満たす場合」とは、例えば、学習データDB222に所定量の新規学習データが蓄積された場合、および/または、新規学習データと既存学習データとの誤差が閾値を超えた場合である。「誤差が閾値を超えた場合」とは、例えば、既存学習データの統計量と新規学習データの統計量との差が所定値よりも大きくなった場合、あるいは、既存学習データの統計量と全データ(既存学習データと新規学習データ)の統計量との差が所定値よりも大きくなった場合である。統計量としては例えば平均値が用いられるが、それ以外の統計量であってもよい。
“When the predetermined criterion is satisfied” means, for example, when a predetermined amount of new learning data is accumulated in the
学習結果データ送信部217は、クライアント装置100から学習結果データの送信要求(送信リクエスト)を受信すると、学習結果データ暗号化部212により生成された暗号化学習結果データをクライアント装置100に送信する。
Upon receiving a learning result data transmission request (transmission request) from the client device 100, the learning result
データ消去部218は、サーバ装置200が有する暗号化学習結果データを消去するようクライアント装置100から要求されると(すなわち、消去リクエストを受信すると)、暗号化学習結果データを消去する。
The
<学習用計算機>
次に、学習用計算機300の詳細について説明する。
<Learning computer>
Next, details of the learning computer 300 will be described.
学習用計算機300は、図5に示すように、制御部310と、記憶部320と、通信部330とを有している。
As shown in FIG. 5, the learning computer 300 includes a control unit 310, a storage unit 320, and a
制御部310は、学習用計算機300内のプロセッサが所定のプログラムを実行することにより実現される。この制御部310は、深層学習実行部311を有する。
The control unit 310 is realized by a processor in the learning computer 300 executing a predetermined program. The control unit 310 includes a deep
深層学習実行部311は、学習データDB321に蓄積された学習データを用いて深層学習を行う。この深層学習実行部311は、例えば構造適応型深層学習法により深層学習を行う。
The deep
記憶部320は、学習データDB321と、学習結果DB322とを有する。学習データDB321は、サーバ装置200から受信した学習データ(既存学習データおよび新規学習データ)が蓄積されるデータベースである。学習結果DB322は、深層学習実行部311の出力(学習結果データ)が蓄積されるデータベースである。すなわち、学習結果DB322には、学習により得られたニューラルネットワークの形状、重み、その他のパラメータ値の他、深層学習により蓄積された知識(IF−THENルールなど)が蓄積される。
The storage unit 320 includes a
なお、記憶部320は、例えばハードディスク、半導体メモリ(SSD等)から構成される。 The storage unit 320 includes, for example, a hard disk or a semiconductor memory (SSD or the like).
通信部330は、学習用計算機300がサーバ装置200との間で情報を送受信するためのインターフェースである。
The
<深層学習自動学習システムの動作>
次に、図6〜図12を参照して、上記の構成を有する深層学習自動学習システム1の処理動作の一例について説明する。
<Operation of deep learning automatic learning system>
Next, an example of the processing operation of the deep learning
まず、図6を参照して、公開鍵のサーバ装置への登録、および新規学習データのサーバ装置へのアップロード等の工程について説明する。 First, with reference to FIG. 6, steps such as registration of a public key to a server device and uploading new learning data to the server device will be described.
クライアント装置100の鍵生成部111は、自身の(すなわち、クライアント装置100の)端末固有番号に基づいて、公開鍵および秘密鍵を生成する(ステップS11)。本ステップは、例えば、図11に示す画面でトグルボタンを操作し、「プッシュ通知有効化」をオンにすると実行される。なお、プッシュ通知の有効化処理が完了すると、登録IDの情報が登録情報ウィンドウWに表示される。
The
公開鍵および秘密鍵が生成された後、クライアント装置100は、プッシュ通知に必要な登録IDをサーバ装置200に発行してもらうために、通信部130を介して、端末固有番号および公開鍵をサーバ装置200(PUSHサーバ)に送信する(ステップS12)。
After the public key and the private key are generated, the client device 100 receives the terminal unique number and the public key via the
サーバ装置200は、クライアント装置100から端末固有番号および公開鍵を受信すると、端末管理用DB221に端末固有番号および公開鍵を関連付けて保存する(ステップS21)。その後、登録ID発行部211は、端末固有番号に基づいて登録IDを発行し、発行された登録IDを端末管理用DB221に端末固有番号と関連付けて保存する(ステップS22)。
When the server device 200 receives the terminal unique number and the public key from the client device 100, the server device 200 associates and stores the terminal unique number and the public key in the terminal management DB 221 (step S21). Thereafter, the registration
クライアント装置100の新規学習データ送信部112は、外部装置から入力し、新規学習データDB121に保存された新規学習データをサーバ装置200(データサーバ)にアップロードする(ステップS13)。本ステップは、例えば、サーバ装置200から登録IDが発行されたこと(すなわち、プッシュ通知の有効化処理が完了したこと)が通知された後に行われる。
The new learning
サーバ装置200の新規学習データ保存部215は、クライアント装置100から新規学習データを受信すると、受信した新規学習データを学習データDB222に保存する(ステップS23)。
When receiving the new learning data from the client device 100, the new learning
次に、図7を参照して、学習データの蓄積および自動学習等の工程について説明する。 Next, with reference to FIG. 7, processes such as learning data accumulation and automatic learning will be described.
サーバ装置200の学習データ送信部216は、学習データDB222に蓄積された学習データが所定の基準を満たすか否かを判定する(ステップS31)。そして、学習データが所定の基準を満たす場合に(S31:Yes)、学習データ送信部216は、新規増加分の学習データを学習用計算機300に送信する(ステップS32)。学習用計算機300は、サーバ装置200から学習データを受信すると、受信した学習データを学習データDB321に保存する。
The learning
学習用計算機300は、学習データDB321に蓄積された学習データが所定の基準を満たすか否かを判定する(ステップS41)。本ステップで用いる基準は、例えば、学習データDB321に蓄積された学習データの数が予め定められた数に達した場合である。なお、本ステップにおける基準は、ステップS31における基準と同じ基準であってもよいし、異なる基準であってもよい。
The learning computer 300 determines whether or not the learning data stored in the
学習データDB321の学習データが所定の基準を満たす場合(S41:Yes)、深層学習実行部311は、学習データDB321に蓄積された学習データを用いて深層学習を行う(ステップS42)。本ステップでは、例えば構造適応型深層学習法による深層学習が行われる。
When the learning data in the
深層学習実行部311は、学習終了後、学習結果DB322に学習結果データを保存する(ステップS43)。その後、学習用計算機300は、ステップS42で得られた学習結果データをサーバ装置200に送信する(ステップS44)。
The deep
サーバ装置200は、学習用計算機300から学習結果データを受信すると、学習用計算機300から受信した学習結果データを学習結果DB223にバージョン管理情報とともに保存する(ステップS33)。なお、学習結果データは学習データを含んでもよい。本実施形態では、サーバ装置200は、学習データセットをバージョン管理情報とともに学習結果DB223に保存する。
When receiving the learning result data from the learning computer 300, the server device 200 stores the learning result data received from the learning computer 300 in the
次に、図8を参照して、暗号化データの生成およびプッシュ通知等の工程について説明する。 Next, processes such as generation of encrypted data and push notification will be described with reference to FIG.
学習結果データが学習結果DB223に保存されると、サーバ装置200の学習結果データ暗号化部212は、クライアント装置100から受信した公開鍵を用いて、登録IDと学習データセットを暗号化して、暗号化学習結果データを生成する(ステップS51)。
When the learning result data is stored in the
サーバ装置200のバージョン管理情報暗号化部213は、クライアント装置100から受信した公開鍵を用いて、登録IDおよびバージョン管理情報を暗号化して、暗号化学習バージョンデータを生成する(ステップS52)。
The version management
サーバ装置200のプッシュ通知部214は、ステップS52で生成された暗号化学習バージョンデータをクライアント装置100にプッシュ通知する(ステップS53)。プッシュ通知は、ステップS22で発行された登録IDを用いて行われる。より詳しくは、ステップS22で発行された登録IDに対応するクライアント装置100に対してプッシュ通知が行われる。
The
クライアント装置100のバージョン管理情報取得部113は、ステップS11で生成された秘密鍵を用いて、サーバ装置200からプッシュ通知された暗号化学習バージョンデータを復号化して、登録IDおよびバージョン管理情報を取得する(ステップS61)。このようにして取得されたバージョン管理情報は、学習データセットのバージョンを示す。図12は、プッシュ通知されたクライアント装置100の画面例を示している。この例では、学習データセットがサーバ装置200において更新されたことを示すとともに、更新された学習データセットのバージョンも示している。
The version management
続いて、図9を参照して、学習結果データの送信リクエストおよびダウンロード等の工程について説明する。 Next, with reference to FIG. 9, steps such as a learning result data transmission request and download will be described.
クライアント装置100のデータ要求部114は、ステップS61で取得されたバージョン管理情報に対応する学習データセットが取得済みであるか否かを判定する(ステップS62)。そして、バージョン管理情報に対応する学習データセットをまだ取得していない場合(S62:Yes)、データ要求部114は、サーバ装置200に対して学習データセットの送信を要求する(ステップS63)。なお、本ステップでは、バージョン管理情報がサーバ装置200に送信される。
The
サーバ装置200の学習結果データ送信部217は、クライアント装置100から送信リクエストを受信すると、クライアント装置100から受信したバージョン管理情報のバージョンに対応する暗号化学習結果データをクライアント装置100に送信する(ステップS54)。クライアント装置100は、サーバ装置200から暗号化学習結果データをダウンロードする。
When receiving the transmission request from the client apparatus 100, the learning result
暗号化学習結果データのダウンロードが完了すると、クライアント装置100の学習結果データ取得部115は、ステップS11で生成された秘密鍵を用いて暗号化学習結果データを復号化して、登録IDと学習データセットを取得する(ステップS64)。なお、本ステップの完了後、クライアント装置100のディスプレイに新しい学習データセットを取得した旨を表示してもよい。例えば、「新しい学習データセットが利用可能になりました。」というメッセージがプッシュ通知されるようにしてもよい。
When the download of the encrypted learning result data is completed, the learning result
続いて、図10を参照して、暗号化データの消去および推論実行等の工程について説明する。 Next, processes such as erasure of encrypted data and execution of inference will be described with reference to FIG.
クライアント装置100により学習データセットが取得されると、データ消去要求部116は、サーバ装置200に対して暗号化学習結果データの消去を要求する(ステップS65)。
When the learning data set is acquired by the client device 100, the data
クライアント装置100から消去リクエストを受信すると、サーバ装置200のデータ消去部218は、暗号化学習結果データを消去する(ステップS55)。
When receiving the erasure request from the client device 100, the
その後、クライアント装置100の推論部117は、ステップS61で暗号化学習バージョンデータを復号化して得られた登録IDと、ステップS64で暗号化学習結果データを復号化して得られた登録IDとが一致するか否かを判定する(ステップS66)。
Thereafter, the
推論部117は、2つの登録IDが一致する場合(S66:Yes)、ステップS64で取得された学習データセットを用いて推論を行う(ステップS67)。このように登録IDが一致する場合にのみ推論を行うようにすることで、確実に最新バージョンの学習データセットを用いた推論を行うことができる。
When the two registration IDs match (S66: Yes), the
推論が完了すると、クライアント装置100の出力部118は、推論部117により行われた推論の結果を出力する(ステップS68)。
When the inference is completed, the
なお、上記処理フローは一例に過ぎず、他にも様々な処理フローが想定される。例えば、上記処理フローではステップS51において暗号化学習結果データを生成したが、これに限らず、クライアント装置100から送信リクエストを受信した後に暗号化学習結果データを生成するようにしてもよい。また、上記処理フローでは送信リクエストが自動的に送信されたが、これに限らず、クライアント装置100のユーザの承認を経た後に送信リクエストがサーバ装置200に送信されるようにしてもよい。 The above processing flow is merely an example, and various other processing flows are assumed. For example, in the above processing flow, the encrypted learning result data is generated in step S51. However, the present invention is not limited to this, and the encrypted learning result data may be generated after receiving a transmission request from the client device 100. In the above processing flow, the transmission request is automatically transmitted. However, the present invention is not limited to this, and the transmission request may be transmitted to the server device 200 after the user of the client device 100 has been approved.
なお、上記処理フローによる学習結果データのクライアント装置への配信と同様の手法によって、クライアント装置の動作アルゴリズムやセキュリティソフト等のソフトウェア(以下、「ソフトウェア等」という。)が最新のバージョンに自動でアップデートされるようにしてもよい。具体的には、前述の処理フローと同様に、サーバ装置(データサーバ)は、ソフトウェア等が更新された旨をクライアント装置にプッシュ通知し、クライアント装置からの送信リクエストに応じてソフトウェア等のアップデートに必要なデータを暗号化してクライアント装置に送信する。クライアント装置は、サーバ装置から受信した暗号化データをダウンロードし、秘密鍵を用いて復号化することで、ソフトウェア等のアップデートに必要なデータを入手する。このようにすることで、クライアント装置は、ソフトウェア等の自動アップデートをセキュアに行うことができる。 It should be noted that the operation algorithm of the client device and software such as security software (hereinafter referred to as “software”) are automatically updated to the latest version by the same method as the distribution of the learning result data to the client device by the above processing flow. You may be made to do. Specifically, as in the above-described processing flow, the server device (data server) push-notifies the client device that the software or the like has been updated, and updates the software or the like in response to a transmission request from the client device. Necessary data is encrypted and transmitted to the client device. The client device downloads the encrypted data received from the server device and decrypts it using the secret key, thereby obtaining data necessary for updating the software or the like. In this way, the client device can securely update software and the like automatically.
以上説明したように、深層学習自動学習システム1では、サーバ装置200は、クライアント装置100に暗号化学習バージョンデータをプッシュ通知することにより、新たな学習結果データ(学習データセット)が得られたことを通知する。プッシュ通知を受信したクライアント装置100は、バージョン管理情報に対応する学習結果データを既に取得しているか否かを判定し、取得していない場合、サーバ装置200に送信リクエストを送信する。送信リクエストを受信したサーバ装置200は、クライアント装置100に暗号化学習結果データを送信する。このようにすることで、クライアント装置100は、サーバ装置200との通信を深層学習が完了するまで保持することなく、最新の学習結果データを取得することができる。
As described above, in the deep learning
また、深層学習自動学習システム1では、バージョン管理情報および学習結果データは、公開鍵を用いて暗号化されてからクライアント装置100に送信されるため、サーバ装置からクライアント装置にデータをセキュアに配信することができる。
In the deep learning
さらに、深層学習自動学習システム1では、サーバ装置200が暗号化学習バージョンデータおよび暗号化学習結果データを、登録IDが発行されたクライアント装置100(すなわち、認証されたクライアント装置)にのみ送信することから、最新の学習結果をサーバ装置からクライアント装置にインターネットを通じてさらにセキュアに提供することができる。
Further, in the deep learning
よって、本実施形態によれば、クライアント装置とサーバ装置間の通信を深層学習が完了するまで保持する必要がなく、最新の学習結果をサーバ装置からクライアント装置にインターネットを通じてセキュアに提供することができる。 Therefore, according to this embodiment, it is not necessary to hold communication between the client device and the server device until deep learning is completed, and the latest learning result can be securely provided from the server device to the client device via the Internet. .
また、深層学習自動学習システム1では、サーバ装置は、自身の学習データDB222の学習データが所定の基準を満たす場合に学習データを学習用計算機に送信するように構成され、学習用計算機は、自身の学習データDB321の学習データが所定の基準を満たす場合に当該学習データに基づいて深層学習を行うように構成されている。このため、本実施形態によれば、新規学習データの蓄積に応じて自動的に深層学習を行うことができる。
Further, in the deep learning
上記の記載に基づいて、当業者であれば、本発明の追加の効果や種々の変形を想到できるかもしれないが、本発明の態様は、上述した実施形態に限定されるものではない。特許請求の範囲に規定された内容及びその均等物から導き出される本発明の概念的な思想と趣旨を逸脱しない範囲で種々の追加、変更及び部分的削除が可能である。 Based on the above description, those skilled in the art may be able to conceive additional effects and various modifications of the present invention, but the aspects of the present invention are not limited to the above-described embodiments. Various additions, modifications, and partial deletions can be made without departing from the concept and spirit of the present invention derived from the contents defined in the claims and equivalents thereof.
上述した実施形態で説明した深層学習自動学習システムの少なくとも一部は、ハードウェアで構成してもよいし、ソフトウェアで構成してもよい。ソフトウェアで構成する場合には、深層学習自動学習システムの少なくとも一部の機能を実現するプログラムをフレキシブルディスクやCD−ROM等の記録媒体に収納し、コンピュータに読み込ませて実行させてもよい。記録媒体は、磁気ディスクや光ディスク等の着脱可能なものに限定されず、ハードディスク装置やメモリなどの固定型の記録媒体でもよい。 At least a part of the deep learning automatic learning system described in the embodiment described above may be configured by hardware or software. When configured by software, a program for realizing at least a part of the functions of the deep learning automatic learning system may be stored in a recording medium such as a flexible disk or a CD-ROM and read and executed by a computer. The recording medium is not limited to a removable medium such as a magnetic disk or an optical disk, but may be a fixed recording medium such as a hard disk device or a memory.
また、深層学習自動学習システムの少なくとも一部の機能を実現するプログラムを、インターネット等の通信回線(無線通信も含む)を介して頒布してもよい。さらに、同プログラムを暗号化したり、変調をかけたり、圧縮した状態で、インターネット等の有線回線や無線回線を介して、あるいは記録媒体に収納して頒布してもよい。 A program that realizes at least a part of the deep learning automatic learning system may be distributed via a communication line (including wireless communication) such as the Internet. Further, the program may be distributed in a state where the program is encrypted, modulated or compressed, and stored in a recording medium via a wired line such as the Internet or a wireless line.
1 深層学習自動学習システム
100 クライアント装置
110 制御部
111 鍵生成部
112 新規学習データ送信部
113 バージョン管理情報取得部
114 データ要求部
115 学習結果データ取得部
116 データ消去要求部
117 推論部
118 出力部
120 記憶部
121 新規学習データDB
130,230,330 通信部
200 サーバ装置
210 制御部
211 登録ID発行部
212 学習結果データ暗号化部
213 バージョン管理情報暗号化部
214 プッシュ通知部
215 新規学習データ保存部
216 学習データ送信部
217 学習結果データ送信部
218 データ消去部
220 記憶部
221 端末管理用DB
222 学習データDB
223 学習結果DB
300 学習用計算機
310 制御部
311 深層学習実行部
320 記憶部
321 学習データDB
322 学習結果DB
DESCRIPTION OF
130, 230, 330 Communication unit 200 Server device 210
222 Learning Data DB
223 Learning result DB
300 learning computer 310
322 Learning result DB
Claims (13)
前記クライアント装置は、
前記クライアント装置の識別情報に基づいて公開鍵および秘密鍵を生成する鍵生成部と、
前記サーバ装置に新規学習データを送信する新規学習データ送信部と、を有し、
前記サーバ装置は、
前記公開鍵を用いて、前記新規学習データに基づく学習結果データを暗号化して、暗号化学習結果データを生成する学習結果データ暗号化部と、
前記公開鍵を用いて、前記学習結果データを識別するためのバージョン管理情報を暗号化して、暗号化学習バージョンデータを生成するバージョン管理情報暗号化部と、
前記クライアント装置に前記暗号化学習バージョンデータをプッシュ通知するプッシュ通知部と、を有し、
前記クライアント装置は、
前記サーバ装置からプッシュ通知された前記暗号化学習バージョンデータを、前記秘密鍵を用いて復号化して、前記バージョン管理情報を取得するバージョン管理情報取得部と、
前記バージョン管理情報に対応する学習結果データを既に取得しているか否かを判定し、取得していない場合は前記サーバ装置に対して前記学習結果データの送信を要求するデータ要求部と、
前記データ要求部の要求に応じて前記サーバ装置から前記クライアント装置に送信された前記暗号化学習結果データを、前記秘密鍵を用いて復号化して、前記学習結果データを取得する学習結果データ取得部と、をさらに有することを特徴とする深層学習自動学習システム。 A deep learning automatic learning system comprising a client device and a server device connected via the Internet,
The client device is
A key generation unit that generates a public key and a secret key based on identification information of the client device;
A new learning data transmission unit for transmitting new learning data to the server device,
The server device
A learning result data encryption unit that encrypts learning result data based on the new learning data and generates encrypted learning result data using the public key;
A version management information encryption unit that encrypts version management information for identifying the learning result data using the public key, and generates encrypted learning version data;
A push notification unit for performing push notification of the encrypted learning version data to the client device,
The client device is
A version management information acquisition unit that acquires the version management information by decrypting the encrypted learning version data that has been pushed from the server device using the secret key;
It is determined whether or not learning result data corresponding to the version management information has already been acquired, and if not acquired, a data request unit that requests the server device to transmit the learning result data;
A learning result data acquisition unit that acquires the learning result data by decrypting the encrypted learning result data transmitted from the server device to the client device in response to a request from the data request unit, using the secret key. And a deep learning automatic learning system characterized by further comprising:
前記プッシュ通知部は、前記登録IDを用いて、前記クライアント装置に前記暗号化学習バージョンデータをプッシュ通知することを特徴とする請求項1に記載の深層学習自動学習システム。 The server device further includes a registration ID issuing unit that issues a registration ID based on the identification information of the client device,
The deep learning automatic learning system according to claim 1, wherein the push notification unit pushes the encrypted learning version data to the client device using the registration ID.
前記バージョン管理情報暗号化部は、前記バージョン管理情報および前記登録IDを暗号化して前記暗号化学習バージョンデータを生成することを特徴とする請求項2に記載の深層学習自動学習システム。 The learning result data encryption unit encrypts the learning result data and the registration ID to generate the encrypted learning result data,
3. The deep learning automatic learning system according to claim 2, wherein the version management information encryption unit generates the encrypted learning version data by encrypting the version management information and the registration ID.
前記クライアント装置から受信した前記新規学習データを学習データDBに保存する新規学習データ保存部と、
前記学習データDBの学習データが所定の基準を満たす場合に、前記学習データを学習用計算機に送信する学習データ送信部と、をさらに有することを特徴とする請求項1〜4のいずれかに記載の深層学習自動学習システム。 The server device
A new learning data storage unit that stores the new learning data received from the client device in a learning data DB;
The learning data transmitting unit according to any one of claims 1 to 4, further comprising: a learning data transmitting unit that transmits the learning data to a learning computer when the learning data in the learning data DB satisfies a predetermined criterion. Deep learning automatic learning system.
前記学習結果データが取得された後、前記サーバ装置に対して前記暗号化学習結果データを消去するよう要求するデータ消去要求部をさらに備えることを特徴とする請求項1〜7のいずれかに記載の深層学習自動学習システム。 The client device is
The data erasure request unit that requests the server device to erase the encrypted learning result data after the learning result data is acquired. Deep learning automatic learning system.
前記学習結果データを用いて行われた推論の結果を出力する出力部と、
をさらに備えることを特徴とする請求項1〜8のいずれかに記載の深層学習自動学習システム。 The client device is
An output unit for outputting a result of inference performed using the learning result data;
The deep learning automatic learning system according to claim 1, further comprising:
前記クライアント装置から前記学習結果データの送信要求を受信すると、前記暗号化学習結果データを前記クライアント装置に送信する学習結果データ送信部をさらに備えることを特徴とする請求項1〜9のいずれかに記載の深層学習自動学習システム。 The server device
The learning result data transmission part which transmits the said encryption learning result data to the said client apparatus, if the transmission request of the said learning result data is received from the said client apparatus, The any one of Claims 1-9 characterized by the above-mentioned. The described deep learning automatic learning system.
前記クライアント装置から前記暗号化学習結果データの消去リクエストを受信すると、前記暗号化学習結果データを消去するデータ消去部をさらに備えることを特徴とする請求項1〜10のいずれかに記載の深層学習自動学習システム。 The server device
The deep learning according to any one of claims 1 to 10, further comprising a data erasure unit that erases the encrypted learning result data when receiving an erasure request for the encrypted learning result data from the client device. Automatic learning system.
前記クライアント装置の識別情報に基づいて公開鍵および秘密鍵を生成する鍵生成部と、
前記サーバ装置に新規学習データを送信する新規学習データ送信部と、
前記サーバ装置からプッシュ通知された暗号化学習バージョンデータを、前記秘密鍵を用いて復号化して、学習結果データを識別するためのバージョン管理情報を取得するバージョン管理情報取得部と、
前記バージョン管理情報に対応する学習結果データを既に取得しているか否かを判定し、取得していない場合は前記サーバ装置に対して前記学習結果データの送信を要求するデータ要求部と、
前記データ要求部の要求に応じて前記サーバ装置から前記クライアント装置に送信された暗号化学習結果データを、前記秘密鍵を用いて復号化して、前記学習結果データを取得する学習結果データ取得部と、
を備えることを特徴とするクライアント装置。 A client device connected to a server device via the Internet,
A key generation unit that generates a public key and a secret key based on identification information of the client device;
A new learning data transmission unit for transmitting new learning data to the server device;
A version management information acquisition unit that obtains version management information for identifying learning result data by decrypting the encrypted learning version data that has been pushed from the server device using the secret key;
It is determined whether or not learning result data corresponding to the version management information has already been acquired, and if not acquired, a data request unit that requests the server device to transmit the learning result data;
A learning result data acquisition unit for acquiring the learning result data by decrypting the encrypted learning result data transmitted from the server device to the client device in response to the request of the data request unit, using the secret key; ,
A client device comprising:
前記クライアント装置から受信した公開鍵を用いて、学習結果データを暗号化して暗号化学習結果データを生成する学習結果データ暗号化部と、
前記公開鍵を用いて、前記学習結果データを識別するためのバージョン管理情報を暗号化して暗号化学習バージョンデータを生成するバージョン管理情報暗号化部と、
前記クライアント装置に前記暗号化学習バージョンデータをプッシュ通知するプッシュ通知部と、
を備えることを特徴とするサーバ装置。 A server device connected to a client device via the Internet,
A learning result data encryption unit that encrypts learning result data and generates encrypted learning result data using a public key received from the client device;
A version management information encryption unit that encrypts version management information for identifying the learning result data and generates encrypted learning version data using the public key;
A push notification unit for pushing notification of the encrypted learning version data to the client device;
A server device comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017093205A JP6984863B2 (en) | 2017-05-09 | 2017-05-09 | Deep learning automatic learning system and client equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017093205A JP6984863B2 (en) | 2017-05-09 | 2017-05-09 | Deep learning automatic learning system and client equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018190239A true JP2018190239A (en) | 2018-11-29 |
JP6984863B2 JP6984863B2 (en) | 2021-12-22 |
Family
ID=64478656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017093205A Active JP6984863B2 (en) | 2017-05-09 | 2017-05-09 | Deep learning automatic learning system and client equipment |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6984863B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020189133A1 (en) * | 2019-03-19 | 2020-09-24 | 日本電気株式会社 | System, client device, data processing method, and computer program |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004234591A (en) * | 2003-02-03 | 2004-08-19 | Nec Corp | Update system, disclosure server, terminal, license issuing server, and program |
JP2005107567A (en) * | 2003-09-26 | 2005-04-21 | Sony Corp | Method for implementing program, and method for updating program |
JP2009163613A (en) * | 2008-01-09 | 2009-07-23 | Victor Co Of Japan Ltd | Server, communication terminal apparatus, mobile terminal device, server program, communication terminal program, mobile terminal program, and authentication method |
JP2010086370A (en) * | 2008-10-01 | 2010-04-15 | Canon Inc | Image forming apparatus, delivery server, and firmware updating method |
JP2012171386A (en) * | 2011-02-17 | 2012-09-10 | Denso Corp | Program update system for in-vehicle control device |
JP2013030865A (en) * | 2011-07-27 | 2013-02-07 | Eqs Kk | Program |
JP2014016952A (en) * | 2012-07-11 | 2014-01-30 | Nec Access Technica Ltd | Software update system, communication device, software update method |
JP2015135552A (en) * | 2014-01-16 | 2015-07-27 | 株式会社デンソー | Learning system, on-vehicle device, and server |
JP2016048417A (en) * | 2014-08-27 | 2016-04-07 | 石井 美恵子 | Service providing system and program |
JP2016191973A (en) * | 2015-03-30 | 2016-11-10 | 日本電気株式会社 | Information transfer device, leaning system, information transfer method, and program |
JP2017041114A (en) * | 2015-08-20 | 2017-02-23 | コベルコ建機株式会社 | Construction machine and program rewriting system equipped with the same |
-
2017
- 2017-05-09 JP JP2017093205A patent/JP6984863B2/en active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004234591A (en) * | 2003-02-03 | 2004-08-19 | Nec Corp | Update system, disclosure server, terminal, license issuing server, and program |
JP2005107567A (en) * | 2003-09-26 | 2005-04-21 | Sony Corp | Method for implementing program, and method for updating program |
JP2009163613A (en) * | 2008-01-09 | 2009-07-23 | Victor Co Of Japan Ltd | Server, communication terminal apparatus, mobile terminal device, server program, communication terminal program, mobile terminal program, and authentication method |
JP2010086370A (en) * | 2008-10-01 | 2010-04-15 | Canon Inc | Image forming apparatus, delivery server, and firmware updating method |
JP2012171386A (en) * | 2011-02-17 | 2012-09-10 | Denso Corp | Program update system for in-vehicle control device |
JP2013030865A (en) * | 2011-07-27 | 2013-02-07 | Eqs Kk | Program |
JP2014016952A (en) * | 2012-07-11 | 2014-01-30 | Nec Access Technica Ltd | Software update system, communication device, software update method |
JP2015135552A (en) * | 2014-01-16 | 2015-07-27 | 株式会社デンソー | Learning system, on-vehicle device, and server |
JP2016048417A (en) * | 2014-08-27 | 2016-04-07 | 石井 美恵子 | Service providing system and program |
JP2016191973A (en) * | 2015-03-30 | 2016-11-10 | 日本電気株式会社 | Information transfer device, leaning system, information transfer method, and program |
JP2017041114A (en) * | 2015-08-20 | 2017-02-23 | コベルコ建機株式会社 | Construction machine and program rewriting system equipped with the same |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020189133A1 (en) * | 2019-03-19 | 2020-09-24 | 日本電気株式会社 | System, client device, data processing method, and computer program |
JPWO2020189133A1 (en) * | 2019-03-19 | 2021-12-23 | 日本電気株式会社 | Systems, client devices, data processing methods, computer programs and recording media |
JP7184159B2 (en) | 2019-03-19 | 2022-12-06 | 日本電気株式会社 | SYSTEM, CLIENT DEVICE, DATA PROCESSING METHOD, COMPUTER PROGRAM AND RECORDING MEDIUM |
Also Published As
Publication number | Publication date |
---|---|
JP6984863B2 (en) | 2021-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200145204A1 (en) | Blockchain transaction privacy enhancement through broadcast encryption | |
CN107113286B (en) | Cross-device roaming content erase operation | |
KR101224749B1 (en) | Systems and methods for managing multiple keys for file encryption and decryption | |
US10050968B2 (en) | Method, apparatus, and system for access control of shared data | |
US9122888B2 (en) | System and method to create resilient site master-key for automated access | |
US7912223B2 (en) | Method and apparatus for data protection | |
CA3045897A1 (en) | Verifying authenticity of computer readable information using the blockchain | |
US10454910B2 (en) | Management apparatus, computer program product, system, device, method, information processing apparatus, and server | |
US20160080149A1 (en) | Secure Key Management for Roaming Protected Content | |
KR20190004263A (en) | System and method for encryption and decryption based on quantum key distribution | |
JP5670272B2 (en) | Information processing apparatus, server apparatus, and program | |
US20200235925A1 (en) | Access to secured information | |
KR101580514B1 (en) | Method and apparatus for managing a password by using the seed key and computer readable recording medium applying the same | |
JP7190035B2 (en) | Encryption system and method for personal information processing | |
CN114239046A (en) | Data sharing method | |
JP2014121076A (en) | Key management device, communication device, communication system, and program | |
JP2016061915A (en) | Information processing device, information processing system, information processing method and program | |
US10298546B2 (en) | Asymmetrical encryption of storage system to protect copyright and personal information | |
CN111010283B (en) | Method and apparatus for generating information | |
JP6984863B2 (en) | Deep learning automatic learning system and client equipment | |
US20230179404A1 (en) | Hybrid cloud-based security service method and apparatus for security of confidential data | |
US20220210164A1 (en) | Apparatus and method for managing remote attestation | |
KR20190112959A (en) | Operating method for machine learning model using encrypted data and apparatus based on machine learning model | |
JP2019121999A (en) | Data sharing method, data sharing system, communication terminal, data sharing server, and program | |
JP2009212747A (en) | Electronic signature system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200421 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210526 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210604 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210709 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210813 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20211008 |
|
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: 20211022 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20211117 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6984863 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |