JP6984863B2 - Deep learning automatic learning system and client equipment - Google Patents
Deep learning automatic learning system and client equipment Download PDFInfo
- Publication number
- JP6984863B2 JP6984863B2 JP2017093205A JP2017093205A JP6984863B2 JP 6984863 B2 JP6984863 B2 JP 6984863B2 JP 2017093205 A JP2017093205 A JP 2017093205A JP 2017093205 A JP2017093205 A JP 2017093205A JP 6984863 B2 JP6984863 B2 JP 6984863B2
- Authority
- JP
- Japan
- Prior art keywords
- learning
- data
- unit
- client device
- result data
- 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
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Description
本発明は、深層学習自動学習システム、クライアント装置およびサーバ装置に関し、より詳しくは、クライアント装置からサーバ装置に送信された学習データに基づいて深層学習を行い、最新の学習結果をサーバ装置からクライアント装置にインターネットを通じてセキュアに提供する深層学習自動学習システム、ならびに、当該深層学習自動学習システムが備えるクライアント装置およびサーバ装置に関する。 The present invention relates to a deep learning automatic learning system, a client device, and a server device. More specifically, the present invention performs deep learning based on learning data transmitted from the client device to the server device, and obtains the latest learning results from the server device to the client device. The present invention relates to a deep learning automatic learning system that is securely provided via the Internet, and a client device and a server device included 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 researched. Deep learning is a type of machine learning using a multi-layered neural network. As a method of deep learning, a structure-adaptive deep learning method is known (see Non-Patent Document 1). This structure-adaptive deep learning method is a method for automatically finding the optimum number of hidden neurons and the number of layers during learning in DBN (Deep Brief Network).
なお、特許文献1には、クライアントコンピュータが生成した診断データをベンダーコンピュータシステムにより解析して推奨データを生成し、クライアントに対し推奨データを伝達する方法が記載されている。
In addition,
深層学習を利用するための情報処理システムとして、インターネットを介して接続されたクライアント装置とサーバ装置を備えるシステムであって、クライアント装置が学習データをサーバ装置に送信し、当該学習データに基づく深層学習が行われた後、サーバ装置が学習結果をクライアント装置に送信するシステムが考えられる。深層学習を実行する学習用計算機の性能にもよるが、一般的に深層学習は比較的長い時間(例えば数時間程度)を要する。 As an information processing system for using deep learning, it is a system equipped with a client device and a server device connected via the Internet. The client device sends learning data to the server device, and deep learning based on the learning data. After that, a system in which the server device sends the learning result to the client device can be considered. Although it depends on the performance of the learning computer that executes deep learning, deep learning generally takes 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. Further, it is not desirable from the viewpoint of maintaining security that the session timeout time is longer than the time required for deep learning.
そこで、本発明は、クライアント装置とサーバ装置間の通信を深層学習が完了するまで保持する必要がなく、最新の学習結果をサーバ装置からクライアント装置にインターネットを通じてセキュアに提供することができる深層学習自動学習システム、クライアント装置およびサーバ装置を提供することを目的とする。 Therefore, according to the present invention, it is not necessary to maintain the communication between the client device and the server device until the deep learning is completed, and the latest learning result can be securely provided from the server device to the client device via the Internet. It is an object of the present invention to provide a learning system, a client device, and a server device.
本発明に係る深層学習自動学習システムは、
インターネットを介して接続されたクライアント装置およびサーバ装置を備える深層学習自動学習システムであって、
前記クライアント装置は、
前記クライアント装置の識別情報に基づいて公開鍵および秘密鍵を生成する鍵生成部と、
前記サーバ装置に新規学習データを送信する新規学習データ送信部と、を有し、
前記サーバ装置は、
前記公開鍵を用いて、前記新規学習データに基づく学習結果データを暗号化して、暗号化学習結果データを生成する学習結果データ暗号化部と、
前記公開鍵を用いて、前記学習結果データを識別するためのバージョン管理情報を暗号化して、暗号化学習バージョンデータを生成するバージョン管理情報暗号化部と、
前記クライアント装置に前記暗号化学習バージョンデータをプッシュ通知するプッシュ通知部と、を有し、
前記クライアント装置は、
前記サーバ装置からプッシュ通知された前記暗号化学習バージョンデータを、前記秘密鍵を用いて復号化して、前記バージョン管理情報を取得するバージョン管理情報取得部と、
前記バージョン管理情報に対応する学習結果データを既に取得しているか否かを判定し、取得していない場合は前記サーバ装置に対して前記学習結果データの送信を要求するデータ要求部と、
前記データ要求部の要求に応じて前記サーバ装置から前記クライアント装置に送信された前記暗号化学習結果データを、前記秘密鍵を用いて復号化して、前記学習結果データを取得する学習結果データ取得部と、をさらに有することを特徴とする。
The deep learning automatic learning system according to the present invention is
It is a deep learning automated learning system equipped with client devices and server devices connected via the Internet.
The client device is
A key generator that generates a public key and a private key based on the identification information of the client device,
It has a new learning data transmission unit that transmits new learning data to the server device, and has.
The server device is
Using the public key, the learning result data encryption unit that encrypts the learning result data based on the new learning data and generates the encrypted learning result data,
Using the public key, the version management information encryption unit that encrypts the version management information for identifying the learning result data and generates the encrypted learning version data,
It has a push notification unit that push-notifies the encryption learning version data to the client device.
The client device is
A version control information acquisition unit that acquires the version control information by decrypting the encryption learning version data push-notified from the server device using the private key.
A data requesting unit that determines whether or not the learning result data corresponding to the version control information has already been acquired, and if not acquired, requests the server device to transmit the learning result data.
The 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 the request of the data request unit using the secret key. And, further characterized by having.
本発明に係るクライアント装置は、
インターネットを介してサーバ装置に接続されたクライアント装置であって、
前記クライアント装置の識別情報に基づいて公開鍵および秘密鍵を生成する鍵生成部と、
前記サーバ装置に新規学習データを送信する新規学習データ送信部と、
前記サーバ装置からプッシュ通知された暗号化学習バージョンデータを、前記秘密鍵を用いて復号化して、学習結果データを識別するためのバージョン管理情報を取得するバージョン管理情報取得部と、
前記バージョン管理情報に対応する学習結果データを既に取得しているか否かを判定し、取得していない場合は前記サーバ装置に対して前記学習結果データの送信を要求するデータ要求部と、
前記データ要求部の要求に応じて前記サーバ装置から前記クライアント装置に送信された暗号化学習結果データを、前記秘密鍵を用いて復号化して、前記学習結果データを取得する学習結果データ取得部と、
を備えることを特徴とする。
The client device according to the present invention is
A client device connected to a server device via the Internet.
A key generator that generates a public key and a private key based on the identification information of the client device,
A new learning data transmission unit that transmits new learning data to the server device,
A version management information acquisition unit that acquires version management information for identifying the learning result data by decrypting the encrypted learning version data push-notified from the server device using the secret key.
A data requesting unit that determines whether or not the learning result data corresponding to the version control information has already been acquired, and if not acquired, requests the server device to transmit the learning result data.
With the 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 the request of the data request unit using the secret key. ,
It is characterized by having.
本発明に係るサーバ装置は、
インターネットを介してクライアント装置に接続されたサーバ装置であって、
前記クライアント装置から受信した公開鍵を用いて、学習結果データを暗号化して暗号化学習結果データを生成する学習結果データ暗号化部と、
前記公開鍵を用いて、前記学習結果データを識別するためのバージョン管理情報を暗号化して暗号化学習バージョンデータを生成するバージョン管理情報暗号化部と、
前記クライアント装置に前記暗号化学習バージョンデータをプッシュ通知するプッシュ通知部と、
を備えることを特徴とする。
The server device according to the present invention is
A server device connected to a client device via the Internet.
Using the public key received from the client device, the learning result data is encrypted and encrypted. The learning result data encryption unit that generates the learning result data,
Using the public key, the version management information encryption unit that encrypts the version management information for identifying the learning result data and generates the encrypted learning version data,
A push notification unit that push-notifies the encryption learning version data to the client device,
It is characterized by having.
本発明に係る深層学習自動学習システムでは、サーバ装置は、学習結果データを識別するためのバージョン管理情報を暗号化した暗号化学習バージョンデータをクライアント装置にプッシュ通知することにより深層学習が終了したことを通知し、クライアント装置に新しい学習結果データをダウンロードすることを促す。プッシュ通知を受信したクライアント装置は、バージョン管理情報に対応する学習結果データを既に取得しているか否かを判定し、取得していない場合、サーバ装置に対して学習結果データの送信を要求する。要求を受けたサーバ装置は、学習結果データを暗号化した暗号化学習結果データをクライアント装置に送信する。このようにすることで、クライアント装置は、サーバ装置との通信を深層学習が完了するまで保持することなく、最新の学習結果データを取得することができる。 In the deep learning automatic learning system according to the present invention, the server device has completed the deep learning by pushing the encrypted learning version data in which the version management information for identifying the learning result data is encrypted to the client device. Is notified and prompts the client device to download new learning result data. The client device that has received the push notification determines whether or not the learning result data corresponding to the version control information has already been acquired, and if not, requests the server device to transmit the learning result data. The server device that receives the request sends the encrypted learning result data, which is the encrypted learning result data, to the client device. By doing so, the client device can acquire the latest learning result data without holding the communication with the server device until the deep learning is completed.
さらに、本発明に係る深層学習自動学習システムでは、バージョン管理情報および学習結果データは、公開鍵を用いて暗号化されてからクライアント装置に送信されるため、サーバ装置からクライアント装置にデータをセキュアに配信することができる。 Further, 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 that the data can be securely transmitted from the server device to the client device. Can be delivered.
よって、本発明によれば、クライアント装置とサーバ装置間の通信を深層学習が完了するまで保持する必要がなく、最新の学習結果をサーバ装置からクライアント装置にインターネットを通じてセキュアに提供することができる。 Therefore, according to the present invention, it is not necessary to maintain the communication between the client device and the server device until the 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, with reference to FIG. 1, a schematic configuration of the 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 and the like. Here, the new learning data is data to be used for deep learning, and is data that has not yet been used for deep learning. Specifically, the client device 100 is 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-specific 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 reconstructing a neural network in a client device. The training result data is specifically the shape, weight, and other parameter values of the neural network. The learning result data may include knowledge accumulated by deep learning (IF-THER rule, etc.).
学習用計算機300は、サーバ装置200から受信した学習データを用いて学習を行う。この学習用計算機300は、例えば、既述の構造適応型深層学習法により深層学習を行う。なお、学習用計算機300は、GPU(Graphics Processing Units)計算機と呼ばれることもある。 The learning computer 300 performs learning using the learning data received from the server device 200. The learning computer 300 performs deep learning by, for example, the structure-adaptive deep learning method described above. 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. Further, 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, the details of the client device 100 will be described.
<クライアント装置>
図2に示すように、クライアント装置100は、制御部110と、記憶部120と、通信部130とを有している。
<Client device>
As shown in FIG. 2, the client device 100 has 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 the 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 details of each part of the control unit 110 will be described.
鍵生成部111は、クライアント装置100の識別情報に基づいて公開鍵および秘密鍵を生成する。公開鍵はデータを暗号化する際に用いるキーであり、秘密鍵はデータを復号化する際に用いるキーである。なお、鍵の生成方法は特に限定されず、公知の鍵生成手法を用いることが可能である。
The
新規学習データ送信部112は、新規学習データDB121に保存された新規学習データをサーバ装置200に送信する。なお、本実施形態では、新規学習データは、httpsを用いてサーバ装置200にセキュアに送信される。
The new learning
バージョン管理情報取得部113は、サーバ装置200からプッシュ通知された暗号化学習バージョンデータを、鍵生成部111により生成された秘密鍵を用いて復号化して、バージョン管理情報を取得する。ここで、バージョン管理情報は、学習結果データを識別するための情報である。また、暗号化学習バージョンデータは、少なくともバージョン管理情報を公開鍵で暗号化して得られるデータのことである。なお、本実施形態では、暗号化学習バージョンデータは、バージョン管理情報と登録ID(Registration ID)を公開鍵で暗号化して得られるデータである。
The version control
データ要求部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, the details of the server device 200 will be described.
図3に示すように、サーバ装置200は、制御部210と、記憶部220と、通信部230とを有している。
As shown in FIG. 3, the server device 200 has 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 the 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 has a
端末管理用DB221は、図4に示すように、クライアント装置100から受信した端末固有番号(より一般的には識別情報)と公開鍵を関連付けて記憶するデータベースである。なお、端末管理用DB221は、図4に示すように、端末固有番号および公開鍵と関連付けて登録IDを記憶してもよい。
As shown in FIG. 4, the
学習データDB222は、クライアント装置100から受信した新規学習データが蓄積されるデータベースである。この学習データDB222には、既存学習データおよび新規学習データの両方が保存される。ここで、既存学習データは、学習用計算機300で既に深層学習に用いられたデータである。
The learning
学習結果DB223は、学習用計算機300から受信した学習結果データが蓄積されるデータベースである。
The
通信部230は、サーバ装置200がインターネットを介してクライアント装置100との間で情報を送受信し、また、学習用計算機300との間で情報を送受信するためのインターフェースである。
The
ここで、制御部210の各部の詳細について説明する。 Here, the details of each part of the control unit 210 will be described.
登録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, it is preferable that the registration
学習結果データ暗号化部212は、クライアント装置100から受信した公開鍵を用いて、新規学習データに基づく学習結果データを暗号化して、暗号化学習結果データを生成する。本実施形態では、学習結果データ暗号化部212は、学習用計算機300から受信した学習結果データと、登録ID発行部211により発行された登録IDとを暗号化することにより、暗号化学習結果データを生成する。
The learning result
なお、学習結果データ暗号化部212は、学習データセットを暗号化することにより暗号化学習結果データを生成してもよい。
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に所定量の新規学習データが蓄積された場合、および/または、新規学習データと既存学習データとの誤差が閾値を超えた場合である。「誤差が閾値を超えた場合」とは、例えば、既存学習データの統計量と新規学習データの統計量との差が所定値よりも大きくなった場合、あるいは、既存学習データの統計量と全データ(既存学習データと新規学習データ)の統計量との差が所定値よりも大きくなった場合である。統計量としては例えば平均値が用いられるが、それ以外の統計量であってもよい。
The "when a predetermined criterion is satisfied" is, for example, when a predetermined amount of new learning data is accumulated in the
学習結果データ送信部217は、クライアント装置100から学習結果データの送信要求(送信リクエスト)を受信すると、学習結果データ暗号化部212により生成された暗号化学習結果データをクライアント装置100に送信する。
When the learning result
データ消去部218は、サーバ装置200が有する暗号化学習結果データを消去するようクライアント装置100から要求されると(すなわち、消去リクエストを受信すると)、暗号化学習結果データを消去する。
When the client device 100 requests to erase the encryption learning result data of the server device 200 (that is, when the erasure request is received), the
<学習用計算機>
次に、学習用計算機300の詳細について説明する。
<Calculator for learning>
Next, the details of the learning computer 300 will be described.
学習用計算機300は、図5に示すように、制御部310と、記憶部320と、通信部330とを有している。
As shown in FIG. 5, the learning computer 300 has a control unit 310, a storage unit 320, and a
制御部310は、学習用計算機300内のプロセッサが所定のプログラムを実行することにより実現される。この制御部310は、深層学習実行部311を有する。
The control unit 310 is realized by the processor in the learning computer 300 executing a predetermined program. The control unit 310 has a deep
深層学習実行部311は、学習データDB321に蓄積された学習データを用いて深層学習を行う。この深層学習実行部311は、例えば構造適応型深層学習法により深層学習を行う。
The deep
記憶部320は、学習データDB321と、学習結果DB322とを有する。学習データDB321は、サーバ装置200から受信した学習データ(既存学習データおよび新規学習データ)が蓄積されるデータベースである。学習結果DB322は、深層学習実行部311の出力(学習結果データ)が蓄積されるデータベースである。すなわち、学習結果DB322には、学習により得られたニューラルネットワークの形状、重み、その他のパラメータ値の他、深層学習により蓄積された知識(IF−THENルールなど)が蓄積される。
The storage unit 320 has a
なお、記憶部320は、例えばハードディスク、半導体メモリ(SSD等)から構成される。 The storage unit 320 is composed of, for example, a hard disk and 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, a process of registering the public key in the server device, uploading new learning data to the server device, and the like 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 sends the terminal unique number and the public key to the server 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 the terminal unique number and the public key with the
クライアント装置100の新規学習データ送信部112は、外部装置から入力し、新規学習データDB121に保存された新規学習データをサーバ装置200(データサーバ)にアップロードする(ステップS13)。本ステップは、例えば、サーバ装置200から登録IDが発行されたこと(すなわち、プッシュ通知の有効化処理が完了したこと)が通知された後に行われる。
The new learning
サーバ装置200の新規学習データ保存部215は、クライアント装置100から新規学習データを受信すると、受信した新規学習データを学習データDB222に保存する(ステップS23)。
When the new learning
次に、図7を参照して、学習データの蓄積および自動学習等の工程について説明する。 Next, with reference to FIG. 7, steps such as accumulation of learning data 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 of the learning
深層学習実行部311は、学習終了後、学習結果DB322に学習結果データを保存する(ステップS43)。その後、学習用計算機300は、ステップS42で得られた学習結果データをサーバ装置200に送信する(ステップS44)。
After the learning is completed, the deep
サーバ装置200は、学習用計算機300から学習結果データを受信すると、学習用計算機300から受信した学習結果データを学習結果DB223にバージョン管理情報とともに保存する(ステップS33)。なお、学習結果データは学習データを含んでもよい。本実施形態では、サーバ装置200は、学習データセットをバージョン管理情報とともに学習結果DB223に保存する。
When the server device 200 receives 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, with reference to FIG. 8, steps such as generation of encrypted data and push notification will be described.
学習結果データが学習結果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 control
続いて、図9を参照して、学習結果データの送信リクエストおよびダウンロード等の工程について説明する。 Subsequently, with reference to FIG. 9, steps such as transmission request and download of learning result data will be described.
クライアント装置100のデータ要求部114は、ステップS61で取得されたバージョン管理情報に対応する学習データセットが取得済みであるか否かを判定する(ステップS62)。そして、バージョン管理情報に対応する学習データセットをまだ取得していない場合(S62:Yes)、データ要求部114は、サーバ装置200に対して学習データセットの送信を要求する(ステップS63)。なお、本ステップでは、バージョン管理情報がサーバ装置200に送信される。
The
サーバ装置200の学習結果データ送信部217は、クライアント装置100から送信リクエストを受信すると、クライアント装置100から受信したバージョン管理情報のバージョンに対応する暗号化学習結果データをクライアント装置100に送信する(ステップS54)。クライアント装置100は、サーバ装置200から暗号化学習結果データをダウンロードする。
When the learning result
暗号化学習結果データのダウンロードが完了すると、クライアント装置100の学習結果データ取得部115は、ステップS11で生成された秘密鍵を用いて暗号化学習結果データを復号化して、登録IDと学習データセットを取得する(ステップS64)。なお、本ステップの完了後、クライアント装置100のディスプレイに新しい学習データセットを取得した旨を表示してもよい。例えば、「新しい学習データセットが利用可能になりました。」というメッセージがプッシュ通知されるようにしてもよい。
When the download of the encrypted learning result data is completed, the learning result
続いて、図10を参照して、暗号化データの消去および推論実行等の工程について説明する。 Subsequently, with reference to FIG. 10, steps such as erasing encrypted data and executing inference will be described.
クライアント装置100により学習データセットが取得されると、データ消去要求部116は、サーバ装置200に対して暗号化学習結果データの消去を要求する(ステップS65)。
When the learning data set is acquired by the client device 100, the data
クライアント装置100から消去リクエストを受信すると、サーバ装置200のデータ消去部218は、暗号化学習結果データを消去する(ステップS55)。
Upon receiving the erasure request from the client device 100, the
その後、クライアント装置100の推論部117は、ステップS61で暗号化学習バージョンデータを復号化して得られた登録IDと、ステップS64で暗号化学習結果データを復号化して得られた登録IDとが一致するか否かを判定する(ステップS66)。
After that, the
推論部117は、2つの登録IDが一致する場合(S66:Yes)、ステップS64で取得された学習データセットを用いて推論を行う(ステップS67)。このように登録IDが一致する場合にのみ推論を行うようにすることで、確実に最新バージョンの学習データセットを用いた推論を行うことができる。
When the two registered IDs match (S66: Yes), the
推論が完了すると、クライアント装置100の出力部118は、推論部117により行われた推論の結果を出力する(ステップS68)。
When the inference is completed, the
なお、上記処理フローは一例に過ぎず、他にも様々な処理フローが想定される。例えば、上記処理フローではステップS51において暗号化学習結果データを生成したが、これに限らず、クライアント装置100から送信リクエストを受信した後に暗号化学習結果データを生成するようにしてもよい。また、上記処理フローでは送信リクエストが自動的に送信されたが、これに限らず、クライアント装置100のユーザの承認を経た後に送信リクエストがサーバ装置200に送信されるようにしてもよい。 The above processing flow is only an example, and various other processing flows are assumed. For example, in the above processing flow, the encryption learning result data is generated in step S51, but the present invention is not limited to this, and the encryption learning result data may be generated after receiving the transmission request from the client device 100. Further, in the above processing flow, the transmission request is automatically transmitted, but the present invention is not limited to this, and the transmission request may be transmitted to the server device 200 after the approval of the user of the client device 100 is obtained.
なお、上記処理フローによる学習結果データのクライアント装置への配信と同様の手法によって、クライアント装置の動作アルゴリズムやセキュリティソフト等のソフトウェア(以下、「ソフトウェア等」という。)が最新のバージョンに自動でアップデートされるようにしてもよい。具体的には、前述の処理フローと同様に、サーバ装置(データサーバ)は、ソフトウェア等が更新された旨をクライアント装置にプッシュ通知し、クライアント装置からの送信リクエストに応じてソフトウェア等のアップデートに必要なデータを暗号化してクライアント装置に送信する。クライアント装置は、サーバ装置から受信した暗号化データをダウンロードし、秘密鍵を用いて復号化することで、ソフトウェア等のアップデートに必要なデータを入手する。このようにすることで、クライアント装置は、ソフトウェア等の自動アップデートをセキュアに行うことができる。 The software such as the operation algorithm of the client device and software (hereinafter referred to as "software") is 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. It may be done. Specifically, as in the above-mentioned 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. Encrypt the required data and send it to the client device. The client device downloads the encrypted data received from the server device and decrypts it using the private key to obtain the data necessary for updating the software or the like. By doing so, the client device can securely update the software and the like.
以上説明したように、深層学習自動学習システム1では、サーバ装置200は、クライアント装置100に暗号化学習バージョンデータをプッシュ通知することにより、新たな学習結果データ(学習データセット)が得られたことを通知する。プッシュ通知を受信したクライアント装置100は、バージョン管理情報に対応する学習結果データを既に取得しているか否かを判定し、取得していない場合、サーバ装置200に送信リクエストを送信する。送信リクエストを受信したサーバ装置200は、クライアント装置100に暗号化学習結果データを送信する。このようにすることで、クライアント装置100は、サーバ装置200との通信を深層学習が完了するまで保持することなく、最新の学習結果データを取得することができる。
As described above, in the deep learning
また、深層学習自動学習システム1では、バージョン管理情報および学習結果データは、公開鍵を用いて暗号化されてからクライアント装置100に送信されるため、サーバ装置からクライアント装置にデータをセキュアに配信することができる。
Further, in the deep learning
さらに、深層学習自動学習システム1では、サーバ装置200が暗号化学習バージョンデータおよび暗号化学習結果データを、登録IDが発行されたクライアント装置100(すなわち、認証されたクライアント装置)にのみ送信することから、最新の学習結果をサーバ装置からクライアント装置にインターネットを通じてさらにセキュアに提供することができる。
Further, in the deep learning
よって、本実施形態によれば、クライアント装置とサーバ装置間の通信を深層学習が完了するまで保持する必要がなく、最新の学習結果をサーバ装置からクライアント装置にインターネットを通じてセキュアに提供することができる。 Therefore, according to the present embodiment, it is not necessary to maintain the communication between the client device and the server device until the 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 embodiments of the present invention are not limited to the above-described embodiments. Various additions, changes and partial deletions are possible without departing from the conceptual idea and purpose of the present invention derived from the contents specified in the claims and their equivalents.
上述した実施形態で説明した深層学習自動学習システムの少なくとも一部は、ハードウェアで構成してもよいし、ソフトウェアで構成してもよい。ソフトウェアで構成する場合には、深層学習自動学習システムの少なくとも一部の機能を実現するプログラムをフレキシブルディスクやCD−ROM等の記録媒体に収納し、コンピュータに読み込ませて実行させてもよい。記録媒体は、磁気ディスクや光ディスク等の着脱可能なものに限定されず、ハードディスク装置やメモリなどの固定型の記録媒体でもよい。 At least a part of the deep learning automatic learning system described in the above-described embodiment may be configured by hardware or software. When configured by software, a program that realizes 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, read by a computer, and executed. The recording medium is not limited to a removable one such as a magnetic disk or an optical disk, and may be a fixed recording medium such as a hard disk device or a memory.
また、深層学習自動学習システムの少なくとも一部の機能を実現するプログラムを、インターネット等の通信回線(無線通信も含む)を介して頒布してもよい。さらに、同プログラムを暗号化したり、変調をかけたり、圧縮した状態で、インターネット等の有線回線や無線回線を介して、あるいは記録媒体に収納して頒布してもよい。 Further, a program that realizes at least a part of the functions 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 encrypted, modulated, compressed, and distributed via a wired line or a wireless line such as the Internet, or stored in a recording medium.
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
1 Deep learning automatic learning system 100 Client device 110
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 (11)
前記クライアント装置は、
前記クライアント装置の識別情報に基づいて公開鍵および秘密鍵を生成する鍵生成部と、
前記サーバ装置に新規学習データを送信する新規学習データ送信部と、を有し、
前記サーバ装置は、
前記公開鍵を用いて、前記新規学習データに基づく学習結果データを暗号化して、暗号化学習結果データを生成する学習結果データ暗号化部と、
前記公開鍵を用いて、前記学習結果データを識別するためのバージョン管理情報を暗号化して、暗号化学習バージョンデータを生成するバージョン管理情報暗号化部と、
前記クライアント装置の前記識別情報に基づいて前記クライアント装置に固有の登録IDを発行する登録ID発行部と、
前記登録IDを用いて、前記クライアント装置に前記暗号化学習バージョンデータをプッシュ通知するプッシュ通知部と、を有し、
前記クライアント装置は、
前記新規学習データ送信部は、前記サーバ装置により前記登録IDが発行されることでプッシュ通知の有効化処理が完了した後に、前記サーバ装置に新規学習データを送信し、
前記サーバ装置からプッシュ通知された前記暗号化学習バージョンデータを、前記秘密鍵を用いて復号化して、前記バージョン管理情報を取得するバージョン管理情報取得部と、
前記バージョン管理情報に対応する学習結果データを既に取得しているか否かを判定し、取得していない場合は前記サーバ装置に対して前記学習結果データの送信を要求するデータ要求部と、
前記データ要求部の要求に応じて前記サーバ装置から前記クライアント装置に送信された前記暗号化学習結果データを、前記秘密鍵を用いて復号化して、前記学習結果データを取得する学習結果データ取得部と、をさらに有することを特徴とする深層学習自動学習システム。 It is a deep learning automated learning system equipped with client devices and server devices connected via the Internet.
The client device is
A key generator that generates a public key and a private key based on the identification information of the client device,
It has a new learning data transmission unit that transmits new learning data to the server device, and has.
The server device is
Using the public key, the learning result data encryption unit that encrypts the learning result data based on the new learning data and generates the encrypted learning result data,
Using the public key, the version management information encryption unit that encrypts the version management information for identifying the learning result data and generates the encrypted learning version data,
A registration ID issuing unit that issues a registration ID unique to the client device based on the identification information of the client device, and a registration ID issuing unit.
It has a push notification unit that push-notifies the encryption learning version data to the client device using the registration ID.
The client device is
The new learning data transmission unit transmits new learning data to the server device after the push notification activation process is completed by issuing the registration ID by the server device.
A version control information acquisition unit that acquires the version control information by decrypting the encryption learning version data push-notified from the server device using the private key.
A data requesting unit that determines whether or not the learning result data corresponding to the version control information has already been acquired, and if not acquired, requests the server device to transmit the learning result data.
The 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 the request of the data request unit using the secret key. A deep learning automatic learning system characterized by having more and more.
前記バージョン管理情報暗号化部は、前記バージョン管理情報および前記登録IDを暗号化して前記暗号化学習バージョンデータを生成することを特徴とする請求項1に記載の深層学習自動学習システム。 The learning result data encryption unit encrypts the learning result data and the registration ID to generate the encrypted learning result data.
The deep learning automatic learning system according to claim 1 , wherein the version control information encryption unit encrypts the version control information and the registration ID to generate the encrypted learning version data.
前記クライアント装置から受信した前記新規学習データを学習データDBに保存する新規学習データ保存部と、
前記学習データDBの学習データが所定の基準を満たす場合に、前記学習データを学習用計算機に送信する学習データ送信部と、をさらに有することを特徴とする請求項1〜3のいずれかに記載の深層学習自動学習システム。 The server device is
A new learning data storage unit that stores the new learning data received from the client device in the learning data DB, and a new learning data storage unit.
The invention according to any one of claims 1 to 3 , further comprising a learning data transmission unit that transmits the learning data to a learning computer when the learning data of the learning data DB satisfies a predetermined criterion. Deep learning automatic learning system.
前記学習結果データが取得された後、前記サーバ装置に対して前記暗号化学習結果データを消去するよう要求するデータ消去要求部をさらに備えることを特徴とする請求項1〜6のいずれかに記載の深層学習自動学習システム。 The client device is
The invention according to any one of claims 1 to 6 , further comprising a data erasure requesting 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〜7のいずれかに記載の深層学習自動学習システム。 The client device is
An output unit that outputs the result of inference performed using the learning result data, and
The deep learning automatic learning system according to any one of claims 1 to 7, further comprising.
前記クライアント装置から前記学習結果データの送信要求を受信すると、前記暗号化学習結果データを前記クライアント装置に送信する学習結果データ送信部をさらに備えることを特徴とする請求項1〜8のいずれかに記載の深層学習自動学習システム。 The server device is
Upon receiving the learning result data transmission request from the client device, to any one of claims 1 to 8, further comprising a learning result data transmitting unit that transmits the encrypted learning result data to the client device The described deep learning automatic learning system.
前記クライアント装置から前記暗号化学習結果データの消去リクエストを受信すると、前記暗号化学習結果データを消去するデータ消去部をさらに備えることを特徴とする請求項1〜9のいずれかに記載の深層学習自動学習システム。 The server device is
The deep learning according to any one of claims 1 to 9 , further comprising a data erasing unit that erases the encrypted learning result data when the request for erasing the encrypted learning result data is received from the client device. Automatic learning system.
前記クライアント装置の識別情報に基づいて公開鍵および秘密鍵を生成する鍵生成部と、
前記サーバ装置により前記クライアント装置に固有の登録IDが発行されることでプッシュ通知の有効化処理が完了した後に、前記サーバ装置に新規学習データを送信する新規学習データ送信部と、
前記サーバ装置からプッシュ通知された暗号化学習バージョンデータを、前記秘密鍵を用いて復号化して、学習結果データを識別するためのバージョン管理情報を取得するバージョン管理情報取得部と、
前記バージョン管理情報に対応する学習結果データを既に取得しているか否かを判定し、取得していない場合は前記サーバ装置に対して前記学習結果データの送信を要求するデータ要求部と、
前記データ要求部の要求に応じて前記サーバ装置から前記クライアント装置に送信された暗号化学習結果データを、前記秘密鍵を用いて復号化して、前記学習結果データを取得する学習結果データ取得部と、
を備えることを特徴とするクライアント装置。 A client device connected to a server device via the Internet.
A key generator that generates a public key and a private key based on the identification information of the client device,
A new learning data transmission unit that transmits new learning data to the server device after the push notification activation process is completed by issuing a registration ID unique to the client device by the server device.
A version management information acquisition unit that acquires version management information for identifying the learning result data by decrypting the encrypted learning version data push-notified from the server device using the secret key.
A data requesting unit that determines whether or not the learning result data corresponding to the version control information has already been acquired, and if not acquired, requests the server device to transmit the learning result data.
With the 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 the request of the data request unit using the secret key. ,
A client device characterized by 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 JP2018190239A (en) | 2018-11-29 |
JP6984863B2 true 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) |
Families Citing this family (2)
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 |
JP7501149B2 (en) | 2020-06-25 | 2024-06-18 | 大日本印刷株式会社 | Secure component, device, server, computer program and machine learning method |
Family Cites Families (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 |
JP5609702B2 (en) * | 2011-02-17 | 2014-10-22 | 株式会社デンソー | Program update system for in-vehicle controller |
JP5832807B2 (en) * | 2011-07-27 | 2015-12-16 | イクス株式会社 | program |
JP2014016952A (en) * | 2012-07-11 | 2014-01-30 | Nec Access Technica Ltd | Software update system, communication device, software update method |
JP6044556B2 (en) * | 2014-01-16 | 2016-12-14 | 株式会社デンソー | Learning system, in-vehicle device, and server |
JP6432859B2 (en) * | 2014-08-27 | 2018-12-05 | 株式会社フューチャーアイ | Service providing system and program |
JP2016191973A (en) * | 2015-03-30 | 2016-11-10 | 日本電気株式会社 | Information transfer device, leaning system, information transfer method, and program |
JP6135723B2 (en) * | 2015-08-20 | 2017-05-31 | コベルコ建機株式会社 | Construction machine and program rewriting system provided with the same |
-
2017
- 2017-05-09 JP JP2017093205A patent/JP6984863B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2018190239A (en) | 2018-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10594495B2 (en) | Verifying authenticity of computer readable information using the blockchain | |
US11032278B2 (en) | System, method and apparatus for generating device identifier | |
CN102156835B (en) | Safely and partially updating of content management software | |
CN107925660B (en) | Data access and ownership management | |
CN104978167B (en) | Randomizer and method for generating random number | |
US20060083369A1 (en) | Method and apparatus for sharing and generating system key in DRM system | |
JP2020513183A5 (en) | ||
JP6282779B2 (en) | Management apparatus, program, system and method | |
CN112953930A (en) | Cloud storage data processing method and device and computer system | |
KR101580514B1 (en) | Method and apparatus for managing a password by using the seed key and computer readable recording medium applying the same | |
CN114239046A (en) | Data sharing method | |
JP2014121076A (en) | Key management device, communication device, communication system, and program | |
US10423802B2 (en) | Establishing data security over an internet of things (IoT) network | |
JP6984863B2 (en) | Deep learning automatic learning system and client equipment | |
JP2022506740A (en) | Cryptographic systems and methods for personal information processing | |
US11574032B2 (en) | Systems and methods for signing an AI model with a watermark for a data processing accelerator | |
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 | |
JP2014522171A (en) | System and method for obfuscated initial value of encryption protocol | |
US20210149733A1 (en) | Systems and methods for configuring a watermark unit with watermark algorithms for a data processing accelerator | |
US20210152600A1 (en) | Systems and methods for verifying a watermark of an ai model for a data processing accelerator | |
US20210150406A1 (en) | Systems and methods for learning new watermark algorithms for a data processing accelerator | |
WO2020112104A1 (en) | Blockchain-based accountable data publishing and usage | |
KR20200114074A (en) | Method of controlling a electronic device and apparatus therefor | |
US11736940B2 (en) | L8p8 secure transmission system and method |
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 | Written amendment |
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 | Written amendment |
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 |