JP2018190239A - Deep learning automatic learning system, client device and server device - Google Patents

Deep learning automatic learning system, client device and server device Download PDF

Info

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
Application number
JP2017093205A
Other languages
Japanese (ja)
Other versions
JP6984863B2 (en
Inventor
村 匠 市
Takumi Ichimura
村 匠 市
田 真 鎌
Shin Kamada
田 真 鎌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Prefectural University of Hiroshima
Original Assignee
Prefectural University of Hiroshima
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Prefectural University of Hiroshima filed Critical Prefectural University of Hiroshima
Priority to JP2017093205A priority Critical patent/JP6984863B2/en
Publication of JP2018190239A publication Critical patent/JP2018190239A/en
Application granted granted Critical
Publication of JP6984863B2 publication Critical patent/JP6984863B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

PROBLEM TO BE SOLVED: To securely provide a latest learning result from a server device to a client device via the Internet with no need to hold the communication between the client device and the server device until deep layer learning is completed.SOLUTION: A deep learning automatic learning system 1 according to an embodiment includes a client device 100 and a server device 200 connected via the Internet; the server device 200 has a push notification unit 214 that push-notifies encrypted learning version data that version management information is encrypted to the client device 100; and the client device 100 has a version management information acquisition unit 113 that decrypts the encrypted learning version data and acquires the version management information, and a data request unit 114 that determines whether or not learning result data corresponding to the version management information has already been acquired and requests transmission of the learning result data to the server device 200 when not acquired.SELECTED DRAWING: Figure 1

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.

特開2004−348730号公報JP 2004-348730 A

鎌田真、市村匠、原章、“ニューロン生成/消滅アルゴリズムによる構造適応型Restricted Boltzmann Machine”、計測自動制御学会第8回コンピューテーショナル・インテリジェンス研究会、pp.90−96(2015)Makoto Kamada, Taku Ichimura, Akira Hara, “Structurally Adaptive Restricted Boltzmann Machine Using Neuron Generation / Extinction Algorithm”, Society of Instrument and Control Engineers, 8th Computational Intelligence Study Group, pp. 90-96 (2015)

深層学習を利用するための情報処理システムとして、インターネットを介して接続されたクライアント装置とサーバ装置を備えるシステムであって、クライアント装置が学習データをサーバ装置に送信し、当該学習データに基づく深層学習が行われた後、サーバ装置が学習結果をクライアント装置に送信するシステムが考えられる。深層学習を実行する学習用計算機の性能にもよるが、一般的に深層学習は比較的長い時間(例えば数時間程度)を要する。   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.

実施形態に係る深層学習自動学習システムの概略的な構成図である。It is a schematic block diagram of the deep learning automatic learning system which concerns on embodiment. 実施形態に係るクライアント装置の概略的な構成図である。It is a schematic block diagram of the client apparatus which concerns on embodiment. 実施形態に係るサーバ装置の概略的な構成図である。It is a schematic block diagram of the server apparatus which concerns on embodiment. 実施形態に係る端末管理用データベースの一例を示す図である。It is a figure which shows an example of the database for terminal management which concerns on embodiment. 実施形態に係る学習用計算機の概略的な構成図である。It is a schematic block diagram of the computer for learning concerning an embodiment. 実施形態に係るクライアント装置とサーバ装置間のフローチャートである。It is a flowchart between the client apparatus and server apparatus which concern on embodiment. 実施形態に係るサーバ装置と学習用計算機間のフローチャートである。It is a flowchart between the server apparatus which concerns on embodiment, and the computer for learning. 実施形態に係るサーバ装置とクライアント装置間のフローチャートである。It is a flowchart between the server apparatus and client apparatus which concern on embodiment. 図8に続く、実施形態に係るサーバ装置とクライアント装置間のフローチャートである。FIG. 9 is a flowchart between the server device and the client device according to the embodiment, following FIG. 8. 図9に続く、実施形態に係るサーバ装置とクライアント装置間のフローチャートである。10 is a flowchart between the server device and the client device according to the embodiment, following FIG. 9. 実施形態に係るプッシュ通知の設定画面の一例である。It is an example of the setting screen of the push notification which concerns on embodiment. 実施形態に係るプッシュ通知の画面例である。It is an example of a screen of a push notification concerning an embodiment.

以下、本発明に係る実施形態について図面を参照しながら説明する。   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 automatic learning system 1 according to an embodiment of the present invention will be described with reference to FIG. Note that the internal configuration and processing of each component of the deep learning automatic learning system 1 will be described with reference to FIG. 2 and subsequent drawings.

深層学習自動学習システム1は、クライアント装置100、サーバ装置200および学習用計算機300を備える。クライアント装置100とサーバ装置200は、インターネットを介して接続されている。なお、図1では1台のクライアント装置100のみがサーバ装置200に接続されているが、複数のクライアント装置100がサーバ装置200に接続されてもよい。   The deep learning automatic learning system 1 includes a client device 100, a server device 200, and a learning computer 300. The client device 100 and the server device 200 are connected via the Internet. In FIG. 1, only one client device 100 is connected to the server device 200, but a plurality of client devices 100 may be connected to the server device 200.

クライアント装置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 automatic learning system 1, as will be described in detail later, new learning data is uploaded from the client device 100 to the server device 200, and learning result data is downloaded from the server device 200 to the client device 100.

なお、本発明に係る深層学習自動学習システムは、図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 communication unit 130.

制御部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 key generation unit 111, a new learning data transmission unit 112, a version management information acquisition unit 113, a data request unit 114, a learning result data acquisition unit 115, a data deletion request unit 116, an inference Part 117 and output part 118. Details of each part will be described later.

記憶部120は、新規学習データDB121を有する。新規学習データDB121は、IOT機器等の外部装置から入力された新規学習データを記憶する。なお、記憶部120は、例えばハードディスク、半導体メモリ(SSD等)から構成される。   The storage unit 120 has a new learning data DB 121. The new learning data DB 121 stores new learning data input from an external device such as an IOT device. Note that the storage unit 120 includes, for example, a hard disk or a semiconductor memory (SSD or the like).

通信部130は、クライアント装置100がインターネットを介してサーバ装置200との間で情報を送受信するためのインターフェースである。   The communication unit 130 is an interface for the client device 100 to transmit / receive information to / from the server device 200 via the Internet.

ここで、制御部110の各部の詳細について説明する。   Here, the detail of each part of the control part 110 is demonstrated.

鍵生成部111は、クライアント装置100の識別情報に基づいて公開鍵および秘密鍵を生成する。公開鍵はデータを暗号化する際に用いるキーであり、秘密鍵はデータを復号化する際に用いるキーである。なお、鍵の生成方法は特に限定されず、公知の鍵生成手法を用いることが可能である。   The key generation unit 111 generates a public key and a secret key based on the identification information of the client device 100. The public key is a key used when data is encrypted, and the secret key is a key used when data is decrypted. The key generation method is not particularly limited, and a known key generation method can be used.

新規学習データ送信部112は、新規学習データDB121に保存された新規学習データをサーバ装置200に送信する。なお、本実施形態では、新規学習データは、httpsを用いてサーバ装置200にセキュアに送信される。   The new learning data transmission unit 112 transmits new learning data stored in the new learning data DB 121 to the server device 200. In the present embodiment, new learning data is securely transmitted to the server apparatus 200 using https.

バージョン管理情報取得部113は、サーバ装置200からプッシュ通知された暗号化学習バージョンデータを、鍵生成部111により生成された秘密鍵を用いて復号化して、バージョン管理情報を取得する。ここで、バージョン管理情報は、学習結果データを識別するための情報である。また、暗号化学習バージョンデータは、少なくともバージョン管理情報を公開鍵で暗号化して得られるデータのことである。なお、本実施形態では、暗号化学習バージョンデータは、バージョン管理情報と登録ID(Registration ID)を公開鍵で暗号化して得られるデータである。   The version management information acquisition unit 113 decrypts the encrypted learning version data notified by the push from the server device 200 using the secret key generated by the key generation unit 111, and acquires version management information. Here, the version management information is information for identifying learning result data. The encrypted learning version data is data obtained by encrypting at least version management information with a public key. In this embodiment, the encrypted learning version data is data obtained by encrypting version management information and a registration ID (Registration ID) with a public key.

データ要求部114は、バージョン管理情報に対応する学習結果データを既に取得しているか否かを判定し、取得していない場合はサーバ装置200に対して学習結果データの送信を要求する。なお、データ要求部114は、学習結果データの送信を要求する際、バージョン管理情報のバージョンをサーバ装置200に送信してもよい。これにより、サーバ装置200は、クライアント装置100に送信すべき学習結果データを把握することができる。   The data request unit 114 determines whether or not learning result data corresponding to the version management information has already been acquired. If not acquired, the data request unit 114 requests the server device 200 to transmit learning result data. Note that the data request unit 114 may transmit the version of the version management information to the server device 200 when requesting transmission of learning result data. Thereby, the server apparatus 200 can grasp learning result data to be transmitted to the client apparatus 100.

学習結果データ取得部115は、データ要求部114の要求に応じてサーバ装置200からクライアント装置100に送信された暗号化学習結果データを、鍵生成部111により生成された秘密鍵を用いて復号化して学習結果データを取得する。なお、学習結果データは、深層学習に用いた学習データを含んでいてもよい。すなわち、学習結果データ取得部115は、学習結果データとして、学習データセットを取得してもよい。ここで、「学習データセット」とは、深層学習に用いた学習データと、学習結果データとの組合せ(データセット)のことである。   The learning result data acquisition unit 115 decrypts the encrypted learning result data transmitted from the server device 200 to the client device 100 in response to a request from the data request unit 114, using the secret key generated by the key generation unit 111. Learning result data. Note that the learning result data may include learning data used for deep learning. That is, the learning result data acquisition unit 115 may acquire a learning data set as learning result data. Here, the “learning data set” is a combination (data set) of learning data used for deep learning and learning result data.

暗号化学習結果データは、少なくとも学習結果データを公開鍵で暗号化して得られるデータである。なお、本実施形態では、暗号化学習結果データは、学習結果データと登録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 data acquisition unit 115, the data deletion request unit 116 requests the server device 200 to delete the encrypted learning result data of the server device 200. Thereby, the encrypted learning result data downloaded to the client apparatus 100 is deleted from the server apparatus 200, and the memory of the server apparatus 200 can be saved.

推論部117は、学習結果データ取得部115により取得された学習結果データを用いて推論を行う。本実施形態では、構造適応型深層学習法による推論を行う。   The inference unit 117 performs inference using the learning result data acquired by the learning result data acquisition unit 115. In this embodiment, inference is performed by a structure adaptive deep learning method.

なお、推論部117は、暗号化学習バージョンデータを復号化して得られた登録IDと、暗号化学習結果データを復号化して得られた登録IDとが一致する場合に、学習結果データを用いて構造適応型深層学習法による推論を行うことが好ましい。これにより、意図しない別バージョンの学習結果データを用いて推論を行うという事態を防止できる。   The inference unit 117 uses the learning result data when the registration ID obtained by decrypting the encrypted learning version data matches the registration ID obtained by decrypting the encrypted learning result data. It is preferable to perform inference by a structure adaptive deep learning method. As a result, it is possible to prevent an unintended situation from being inferred using another version of the learning result data.

出力部118は、推論部117により行われた推論の結果を出力する。推論結果の出力先は、クライアント装置100のディスプレイ、プリンタ(図示せず)、記憶部120、あるいはクライアント装置100に接続された他の装置等である。   The output unit 118 outputs the result of inference performed by the inference unit 117. The output destination of the inference result is a display of the client device 100, a printer (not shown), the storage unit 120, or another device connected to the client device 100.

<サーバ装置>
次に、サーバ装置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 communication unit 230.

制御部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 issuing unit 211, a learning result data encryption unit 212, a version management information encryption unit 213, a push notification unit 214, a new learning data storage unit 215, and a learning data transmission unit 216. And a learning result data transmitting unit 217 and a data erasing unit 218. Details of each part will be described later.

なお、本実施形態では、登録ID発行部211、バージョン管理情報暗号化部213およびプッシュ通知部214はPUSHサーバに設けられており、学習結果データ暗号化部212、新規学習データ保存部215、学習データ送信部216、学習結果データ送信部217およびデータ消去部218はデータサーバに設けられている。   In this embodiment, the registration ID issuing unit 211, the version management information encryption unit 213, and the push notification unit 214 are provided in the PUSH server, and the learning result data encryption unit 212, the new learning data storage unit 215, the learning The data transmission unit 216, the learning result data transmission unit 217, and the data deletion unit 218 are provided in the data server.

記憶部220は、端末管理用DB221と、学習データDB222と、学習結果DB223とを有する。この記憶部220は、例えばハードディスク、半導体メモリ(SSD等)から構成される。   The storage unit 220 includes a terminal management DB 221, a learning data DB 222, and a learning result DB 223. The storage unit 220 includes, for example, a hard disk and a semiconductor memory (SSD or the like).

端末管理用DB221は、図4に示すように、クライアント装置100から受信した端末固有番号(より一般的には識別情報)と公開鍵を関連付けて記憶するデータベースである。なお、端末管理用DB221は、図4に示すように、端末固有番号および公開鍵と関連付けて登録IDを記憶してもよい。   As illustrated in FIG. 4, the terminal management DB 221 is a database that stores a terminal unique number (more generally, identification information) received from the client device 100 and a public key in association with each other. Note that the terminal management DB 221 may store a registration ID in association with a terminal unique number and a public key, as shown in FIG.

学習データDB222は、クライアント装置100から受信した新規学習データが蓄積されるデータベースである。この学習データDB222には、既存学習データおよび新規学習データの両方が保存される。ここで、既存学習データは、学習用計算機300で既に深層学習に用いられたデータである。   The learning data DB 222 is a database in which new learning data received from the client device 100 is accumulated. The learning data DB 222 stores both existing learning data and new learning data. Here, the existing learning data is data already used for deep learning in the learning computer 300.

学習結果DB223は、学習用計算機300から受信した学習結果データが蓄積されるデータベースである。   The learning result DB 223 is a database in which learning result data received from the learning computer 300 is accumulated.

通信部230は、サーバ装置200がインターネットを介してクライアント装置100との間で情報を送受信し、また、学習用計算機300との間で情報を送受信するためのインターフェースである。   The communication unit 230 is an interface for the server apparatus 200 to transmit / receive information to / from the client apparatus 100 via the Internet and to transmit / receive information to / from the learning computer 300.

ここで、制御部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 ID issuing unit 211 issues a registration ID (Registration ID) based on the identification information of the client device 100. The registration ID is information necessary for the push notification unit 214 to make a push notification to the client device 100, and is an ID unique to the client device 100. The registration ID includes information related to the communication path between the client device 100 and the server device 200.

なお、クライアント装置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 ID issuing unit 211 preferably issues a registration ID only when necessary, and deletes the registration ID when it is no longer needed. . Further, the registration ID issuing unit 211 may reissue (refresh) the registration ID at regular intervals.

学習結果データ暗号化部212は、クライアント装置100から受信した公開鍵を用いて、新規学習データに基づく学習結果データを暗号化して、暗号化学習結果データを生成する。本実施形態では、学習結果データ暗号化部212は、学習用計算機300から受信した学習結果データと、登録ID発行部211により発行された登録IDとを暗号化することにより、暗号化学習結果データを生成する。   The learning result data encryption unit 212 uses the public key received from the client device 100 to encrypt the learning result data based on the new learning data, and generates encrypted learning result data. In the present embodiment, the learning result data encryption unit 212 encrypts the learning result data received from the learning computer 300 and the registration ID issued by the registration ID issuing unit 211, thereby encrypting learning result data. Is generated.

なお、学習結果データ暗号化部212は、学習データセットを暗号化することにより暗号化学習結果データを生成してもよい。   Note that the learning result data encryption unit 212 may generate encrypted learning result data by encrypting the learning data set.

バージョン管理情報暗号化部213は、クライアント装置100から受信した公開鍵を用いて、学習用計算機300から受信した学習結果データのバージョン管理情報を暗号化して、暗号化学習バージョンデータを生成する。本実施形態では、バージョン管理情報暗号化部213は、バージョン管理情報および登録IDを暗号化して暗号化学習バージョンデータを生成する。   The version management information encryption unit 213 encrypts the version management information of the learning result data received from the learning computer 300 using the public key received from the client device 100, and generates encrypted learning version data. In the present embodiment, the version management information encryption unit 213 encrypts the version management information and the registration ID to generate encrypted learning version data.

プッシュ通知部214は、クライアント装置100に暗号化学習バージョンデータをプッシュ通知する。本実施形態では、プッシュ通知部214によるプッシュ通知は登録IDを用いて行われる。なお、登録ID以外のデバイストークンを用いてプッシュ通知を行ってもよい。   The push notification unit 214 notifies the client device 100 of push of encrypted learning version data. In this embodiment, the push notification by the push notification unit 214 is performed using the registration ID. Note that the push notification may be performed using a device token other than the registration ID.

新規学習データ保存部215は、クライアント装置100から受信した新規学習データを学習データDB222に保存する。   The new learning data storage unit 215 stores the new learning data received from the client device 100 in the learning data DB 222.

学習データ送信部216は、学習データDB222の学習データが所定の基準を満たす場合に、学習データを学習用計算機300に送信する。本実施形態では、学習データDB222に蓄積された学習データのうち新規増加分のみが学習用計算機300に送信される。すなわち、学習用計算機300の学習データDB321に保存されている学習データと、学習データDB222に保存されている学習データとの差分が学習用計算機300に送信される。なお、これに限らず、学習データ送信部216は、学習データDB222に保存された新規学習データおよび既存学習データの両方を学習用計算機300に送信するようにしてもよい。   The learning data transmission unit 216 transmits the learning data to the learning computer 300 when the learning data in the learning data DB 222 satisfies a predetermined criterion. In the present embodiment, only the newly increased amount of the learning data stored in the learning data DB 222 is transmitted to the learning computer 300. That is, the difference between the learning data stored in the learning data DB 321 of the learning computer 300 and the learning data stored in the learning data DB 222 is transmitted to the learning computer 300. Not limited to this, the learning data transmission unit 216 may transmit both new learning data and existing learning data stored in the learning data DB 222 to the learning computer 300.

「所定の基準が満たす場合」とは、例えば、学習データDB222に所定量の新規学習データが蓄積された場合、および/または、新規学習データと既存学習データとの誤差が閾値を超えた場合である。「誤差が閾値を超えた場合」とは、例えば、既存学習データの統計量と新規学習データの統計量との差が所定値よりも大きくなった場合、あるいは、既存学習データの統計量と全データ(既存学習データと新規学習データ)の統計量との差が所定値よりも大きくなった場合である。統計量としては例えば平均値が用いられるが、それ以外の統計量であってもよい。   “When the predetermined criterion is satisfied” means, for example, when a predetermined amount of new learning data is accumulated in the learning data DB 222 and / or when an error between the new learning data and the existing learning data exceeds a threshold value. is there. “When the error exceeds the threshold” means, for example, that the difference between the statistic of the existing learning data and the statistic of the new learning data is larger than a predetermined value, or the statistic of the existing learning data This is a case where the difference between the statistics of the data (existing learning data and new learning data) is larger than a predetermined value. For example, an average value is used as the statistic, but other statistic may be used.

学習結果データ送信部217は、クライアント装置100から学習結果データの送信要求(送信リクエスト)を受信すると、学習結果データ暗号化部212により生成された暗号化学習結果データをクライアント装置100に送信する。   Upon receiving a learning result data transmission request (transmission request) from the client device 100, the learning result data transmission unit 217 transmits the encrypted learning result data generated by the learning result data encryption unit 212 to the client device 100.

データ消去部218は、サーバ装置200が有する暗号化学習結果データを消去するようクライアント装置100から要求されると(すなわち、消去リクエストを受信すると)、暗号化学習結果データを消去する。   The data erasure unit 218 erases the encrypted learning result data when requested by the client device 100 to erase the encrypted learning result data of the server device 200 (that is, when an erasure request is received).

<学習用計算機>
次に、学習用計算機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 communication unit 330.

制御部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 learning execution unit 311.

深層学習実行部311は、学習データDB321に蓄積された学習データを用いて深層学習を行う。この深層学習実行部311は、例えば構造適応型深層学習法により深層学習を行う。   The deep learning execution unit 311 performs deep learning using the learning data stored in the learning data DB 321. The deep learning execution unit 311 performs deep learning by, for example, a structure adaptive deep learning method.

記憶部320は、学習データDB321と、学習結果DB322とを有する。学習データDB321は、サーバ装置200から受信した学習データ(既存学習データおよび新規学習データ)が蓄積されるデータベースである。学習結果DB322は、深層学習実行部311の出力(学習結果データ)が蓄積されるデータベースである。すなわち、学習結果DB322には、学習により得られたニューラルネットワークの形状、重み、その他のパラメータ値の他、深層学習により蓄積された知識(IF−THENルールなど)が蓄積される。   The storage unit 320 includes a learning data DB 321 and a learning result DB 322. The learning data DB 321 is a database in which learning data (existing learning data and new learning data) received from the server device 200 is accumulated. The learning result DB 322 is a database in which the output (learning result data) of the deep learning execution unit 311 is accumulated. That is, in the learning result DB 322, knowledge (IF-THEN rules, etc.) accumulated by deep learning is accumulated in addition to the shape, weight, and other parameter values of the neural network obtained by learning.

なお、記憶部320は、例えばハードディスク、半導体メモリ(SSD等)から構成される。   The storage unit 320 includes, for example, a hard disk or a semiconductor memory (SSD or the like).

通信部330は、学習用計算機300がサーバ装置200との間で情報を送受信するためのインターフェースである。   The communication unit 330 is an interface for the learning computer 300 to transmit / receive information to / from the server device 200.

<深層学習自動学習システムの動作>
次に、図6〜図12を参照して、上記の構成を有する深層学習自動学習システム1の処理動作の一例について説明する。
<Operation of deep learning automatic learning system>
Next, an example of the processing operation of the deep learning automatic learning system 1 having the above configuration will be described with reference to FIGS.

まず、図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 key generation unit 111 of the client device 100 generates a public key and a secret key based on its own terminal number (that is, the client device 100) (step S11). This step is executed, for example, by operating the toggle button on the screen shown in FIG. 11 and turning on “Enable push notification”. When the push notification validation process is completed, registration ID information is displayed in the registration information window W.

公開鍵および秘密鍵が生成された後、クライアント装置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 communication unit 130 in order to have the server device 200 issue a registration ID necessary for push notification. It transmits to the apparatus 200 (PUSH server) (step S12).

サーバ装置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 ID issuing unit 211 issues a registration ID based on the terminal unique number, and stores the issued registration ID in association with the terminal unique number in the terminal management DB 221 (step S22).

クライアント装置100の新規学習データ送信部112は、外部装置から入力し、新規学習データDB121に保存された新規学習データをサーバ装置200(データサーバ)にアップロードする(ステップS13)。本ステップは、例えば、サーバ装置200から登録IDが発行されたこと(すなわち、プッシュ通知の有効化処理が完了したこと)が通知された後に行われる。   The new learning data transmitting unit 112 of the client device 100 uploads new learning data input from an external device and stored in the new learning data DB 121 to the server device 200 (data server) (step S13). This step is performed, for example, after notification that the registration ID has been issued from the server device 200 (that is, the push notification validation process has been completed).

サーバ装置200の新規学習データ保存部215は、クライアント装置100から新規学習データを受信すると、受信した新規学習データを学習データDB222に保存する(ステップS23)。   When receiving the new learning data from the client device 100, the new learning data storage unit 215 of the server device 200 stores the received new learning data in the learning data DB 222 (step S23).

次に、図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 data transmission unit 216 of the server device 200 determines whether or not the learning data stored in the learning data DB 222 satisfies a predetermined criterion (step S31). When the learning data satisfies a predetermined criterion (S31: Yes), the learning data transmission unit 216 transmits learning data for the newly increased amount to the learning computer 300 (step S32). When the learning computer 300 receives the learning data from the server device 200, the learning computer 300 stores the received learning data in the learning data DB 321.

学習用計算機300は、学習データDB321に蓄積された学習データが所定の基準を満たすか否かを判定する(ステップS41)。本ステップで用いる基準は、例えば、学習データDB321に蓄積された学習データの数が予め定められた数に達した場合である。なお、本ステップにおける基準は、ステップS31における基準と同じ基準であってもよいし、異なる基準であってもよい。   The learning computer 300 determines whether or not the learning data stored in the learning data DB 321 satisfies a predetermined criterion (step S41). The reference used in this step is, for example, a case where the number of learning data accumulated in the learning data DB 321 reaches a predetermined number. In addition, the reference | standard in this step may be the same reference | standard as the reference | standard in step S31, and a different reference | standard may be sufficient as it.

学習データDB321の学習データが所定の基準を満たす場合(S41:Yes)、深層学習実行部311は、学習データDB321に蓄積された学習データを用いて深層学習を行う(ステップS42)。本ステップでは、例えば構造適応型深層学習法による深層学習が行われる。   When the learning data in the learning data DB 321 satisfies a predetermined criterion (S41: Yes), the deep learning execution unit 311 performs deep learning using the learning data accumulated in the learning data DB 321 (step S42). In this step, for example, deep learning is performed by a structure adaptive deep learning method.

深層学習実行部311は、学習終了後、学習結果DB322に学習結果データを保存する(ステップS43)。その後、学習用計算機300は、ステップS42で得られた学習結果データをサーバ装置200に送信する(ステップS44)。   The deep learning execution part 311 preserve | saves learning result data in learning result DB322 after completion | finish of learning (step S43). Thereafter, the learning computer 300 transmits the learning result data obtained in step S42 to the server device 200 (step S44).

サーバ装置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 learning result DB 223 together with the version management information (step S33). Note that the learning result data may include learning data. In the present embodiment, the server device 200 stores the learning data set in the learning result DB 223 together with the version management information.

次に、図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 learning result DB 223, the learning result data encryption unit 212 of the server device 200 encrypts the registration ID and the learning data set by using the public key received from the client device 100, and performs encryption. The learning result data is generated (step S51).

サーバ装置200のバージョン管理情報暗号化部213は、クライアント装置100から受信した公開鍵を用いて、登録IDおよびバージョン管理情報を暗号化して、暗号化学習バージョンデータを生成する(ステップS52)。   The version management information encryption unit 213 of the server device 200 encrypts the registration ID and the version management information using the public key received from the client device 100, and generates encrypted learning version data (step S52).

サーバ装置200のプッシュ通知部214は、ステップS52で生成された暗号化学習バージョンデータをクライアント装置100にプッシュ通知する(ステップS53)。プッシュ通知は、ステップS22で発行された登録IDを用いて行われる。より詳しくは、ステップS22で発行された登録IDに対応するクライアント装置100に対してプッシュ通知が行われる。   The push notification unit 214 of the server device 200 notifies the client device 100 of the encrypted learning version data generated in step S52 (step S53). The push notification is performed using the registration ID issued in step S22. More specifically, a push notification is sent to the client device 100 corresponding to the registration ID issued in step S22.

クライアント装置100のバージョン管理情報取得部113は、ステップS11で生成された秘密鍵を用いて、サーバ装置200からプッシュ通知された暗号化学習バージョンデータを復号化して、登録IDおよびバージョン管理情報を取得する(ステップS61)。このようにして取得されたバージョン管理情報は、学習データセットのバージョンを示す。図12は、プッシュ通知されたクライアント装置100の画面例を示している。この例では、学習データセットがサーバ装置200において更新されたことを示すとともに、更新された学習データセットのバージョンも示している。   The version management information acquisition unit 113 of the client device 100 uses the private key generated in step S11 to decrypt the encrypted learning version data notified by push from the server device 200, and acquires the registration ID and version management information. (Step S61). The version management information acquired in this way indicates the version of the learning data set. FIG. 12 shows an example of the screen of the client device 100 notified of the push. In this example, the learning data set is updated in the server device 200, and the version of the updated learning data set is also shown.

続いて、図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 data request unit 114 of the client device 100 determines whether or not a learning data set corresponding to the version management information acquired in step S61 has been acquired (step S62). If the learning data set corresponding to the version management information has not yet been acquired (S62: Yes), the data request unit 114 requests the server device 200 to transmit the learning data set (step S63). In this step, the version management information is transmitted to the server device 200.

サーバ装置200の学習結果データ送信部217は、クライアント装置100から送信リクエストを受信すると、クライアント装置100から受信したバージョン管理情報のバージョンに対応する暗号化学習結果データをクライアント装置100に送信する(ステップS54)。クライアント装置100は、サーバ装置200から暗号化学習結果データをダウンロードする。   When receiving the transmission request from the client apparatus 100, the learning result data transmission unit 217 of the server apparatus 200 transmits the encrypted learning result data corresponding to the version of the version management information received from the client apparatus 100 to the client apparatus 100 (Step S200). S54). The client device 100 downloads the encrypted learning result data from the server device 200.

暗号化学習結果データのダウンロードが完了すると、クライアント装置100の学習結果データ取得部115は、ステップS11で生成された秘密鍵を用いて暗号化学習結果データを復号化して、登録IDと学習データセットを取得する(ステップS64)。なお、本ステップの完了後、クライアント装置100のディスプレイに新しい学習データセットを取得した旨を表示してもよい。例えば、「新しい学習データセットが利用可能になりました。」というメッセージがプッシュ通知されるようにしてもよい。   When the download of the encrypted learning result data is completed, the learning result data acquisition unit 115 of the client device 100 decrypts the encrypted learning result data using the secret key generated in step S11, and registers the registration ID and the learning data set. Is acquired (step S64). Note that after the completion of this step, a message indicating that a new learning data set has been acquired may be displayed on the display of the client device 100. For example, a message “a new learning data set is available” may be pushed.

続いて、図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 erasure request unit 116 requests the server device 200 to erase the encrypted learning result data (step S65).

クライアント装置100から消去リクエストを受信すると、サーバ装置200のデータ消去部218は、暗号化学習結果データを消去する(ステップS55)。   When receiving the erasure request from the client device 100, the data erasure unit 218 of the server device 200 erases the encrypted learning result data (step S55).

その後、クライアント装置100の推論部117は、ステップS61で暗号化学習バージョンデータを復号化して得られた登録IDと、ステップS64で暗号化学習結果データを復号化して得られた登録IDとが一致するか否かを判定する(ステップS66)。   Thereafter, the inference unit 117 of the client device 100 matches the registration ID obtained by decrypting the encrypted learning version data in step S61 and the registration ID obtained by decrypting the encrypted learning result data in step S64. It is determined whether or not to perform (step S66).

推論部117は、2つの登録IDが一致する場合(S66:Yes)、ステップS64で取得された学習データセットを用いて推論を行う(ステップS67)。このように登録IDが一致する場合にのみ推論を行うようにすることで、確実に最新バージョンの学習データセットを用いた推論を行うことができる。   When the two registration IDs match (S66: Yes), the inference unit 117 performs inference using the learning data set acquired in step S64 (step S67). As described above, inference is performed only when the registration IDs coincide with each other, it is possible to reliably perform inference using the latest version of the learning data set.

推論が完了すると、クライアント装置100の出力部118は、推論部117により行われた推論の結果を出力する(ステップS68)。   When the inference is completed, the output unit 118 of the client device 100 outputs the result of the inference performed by the inference unit 117 (step S68).

なお、上記処理フローは一例に過ぎず、他にも様々な処理フローが想定される。例えば、上記処理フローではステップ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 automatic learning system 1, the server device 200 pushes the encrypted learning version data to the client device 100, thereby obtaining new learning result data (learning data set). To be notified. The client device 100 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 100 transmits a transmission request to the server device 200. The server device 200 that has received the transmission request transmits the encrypted learning result data to the client device 100. By doing in this way, the client apparatus 100 can acquire the latest learning result data without holding the communication with the server apparatus 200 until the deep learning is completed.

また、深層学習自動学習システム1では、バージョン管理情報および学習結果データは、公開鍵を用いて暗号化されてからクライアント装置100に送信されるため、サーバ装置からクライアント装置にデータをセキュアに配信することができる。   In the deep learning automatic learning system 1, the version management information and the learning result data are encrypted using a public key and then transmitted to the client device 100. Therefore, the data is securely distributed from the server device to the client device. be able to.

さらに、深層学習自動学習システム1では、サーバ装置200が暗号化学習バージョンデータおよび暗号化学習結果データを、登録IDが発行されたクライアント装置100(すなわち、認証されたクライアント装置)にのみ送信することから、最新の学習結果をサーバ装置からクライアント装置にインターネットを通じてさらにセキュアに提供することができる。   Further, in the deep learning automatic learning system 1, the server device 200 transmits the encrypted learning version data and the encrypted learning result data only to the client device 100 to which the registration ID is issued (that is, the authenticated client device). Thus, the latest learning result can be provided from the server device to the client device more securely through the Internet.

よって、本実施形態によれば、クライアント装置とサーバ装置間の通信を深層学習が完了するまで保持する必要がなく、最新の学習結果をサーバ装置からクライアント装置にインターネットを通じてセキュアに提供することができる。   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 automatic learning system 1, the server device is configured to transmit learning data to the learning computer when the learning data in its own learning data DB 222 satisfies a predetermined criterion. When learning data in the learning data DB 321 satisfies a predetermined standard, deep learning is performed based on the learning data. For this reason, according to this embodiment, deep learning can be automatically performed according to accumulation of new learning data.

上記の記載に基づいて、当業者であれば、本発明の追加の効果や種々の変形を想到できるかもしれないが、本発明の態様は、上述した実施形態に限定されるものではない。特許請求の範囲に規定された内容及びその均等物から導き出される本発明の概念的な思想と趣旨を逸脱しない範囲で種々の追加、変更及び部分的削除が可能である。   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 SYMBOLS 1 Deep learning automatic learning system 100 Client apparatus 110 Control part 111 Key generation part 112 New learning data transmission part 113 Version management information acquisition part 114 Data request part 115 Learning result data acquisition part 116 Data deletion request part 117 Inference part 118 Output part 120 Storage unit 121 New learning data DB
130, 230, 330 Communication unit 200 Server device 210 Control unit 211 Registration ID issuing unit 212 Learning result data encryption unit 213 Version management information encryption unit 214 Push notification unit 215 New learning data storage unit 216 Learning data transmission unit 217 Learning result Data transmission unit 218 Data erasure unit 220 Storage unit 221 Terminal management DB
222 Learning Data DB
223 Learning result DB
300 learning computer 310 control unit 311 deep learning execution unit 320 storage unit 321 learning data DB
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を発行する登録ID発行部をさらに有し、
前記プッシュ通知部は、前記登録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を暗号化して前記暗号化学習結果データを生成し、
前記バージョン管理情報暗号化部は、前記バージョン管理情報および前記登録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.
前記クライアント装置は、前記暗号化学習バージョンデータを復号化して得られた登録IDと、前記暗号化学習結果データを復号化して得られた登録IDとが一致する場合に、前記学習結果データを用いて構造適応型深層学習法による推論を行う推論部をさらに有することを特徴とする請求項3に記載の深層学習自動学習システム。   The client device uses the learning result data when a registration ID obtained by decrypting the encrypted learning version data matches a registration ID obtained by decrypting the encrypted learning result data. The deep learning automatic learning system according to claim 3, further comprising an inference unit that performs inference by a structure adaptive deep learning method. 前記サーバ装置は、
前記クライアント装置から受信した前記新規学習データを学習データ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.
前記所定の基準は、一定量のデータが溜まった場合、または、前記新規学習データと既存学習データとの誤差が閾値を超えた場合であることを特徴とする請求項5に記載の深層学習自動学習システム。   6. The deep learning automatic according to claim 5, wherein the predetermined criterion is a case where a certain amount of data is accumulated or an error between the new learning data and the existing learning data exceeds a threshold value. Learning system. 前記学習用計算機は、前記学習データを用いて構造適応型深層学習法により学習を行う深層学習実行部を有することを特徴とする請求項5または6に記載の深層学習自動学習システム。   The deep learning automatic learning system according to claim 5, wherein the learning computer includes a deep learning execution unit that performs learning by a structure adaptive deep learning method using the learning data. 前記クライアント装置は、
前記学習結果データが取得された後、前記サーバ装置に対して前記暗号化学習結果データを消去するよう要求するデータ消去要求部をさらに備えることを特徴とする請求項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:
JP2017093205A 2017-05-09 2017-05-09 Deep learning automatic learning system and client equipment Active JP6984863B2 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (11)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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