JP7548432B2 - How to learn - Google Patents
How to learn Download PDFInfo
- Publication number
- JP7548432B2 JP7548432B2 JP2023526772A JP2023526772A JP7548432B2 JP 7548432 B2 JP7548432 B2 JP 7548432B2 JP 2023526772 A JP2023526772 A JP 2023526772A JP 2023526772 A JP2023526772 A JP 2023526772A JP 7548432 B2 JP7548432 B2 JP 7548432B2
- Authority
- JP
- Japan
- Prior art keywords
- learning
- client devices
- client
- adversarial
- clients
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
本発明は、連合学習を用いた学習方法に関する。 The present invention relates to a learning method using associative learning.
機械学習・深層学習におけるモデルの学習方法のうち、複数のクライアントマシンが分散環境で学習に参加する手法の一つに連合学習がある。 Among the model learning methods used in machine learning and deep learning, federated learning is one technique in which multiple client machines participate in learning in a distributed environment.
連合学習の学習形式として、例えば図1に示すような形式が挙げられる。連合学習は、学習を管理する中央サーバ50と、学習そのものを行う情報処理装置であるクライアント60-1~60-Kと、によって実施される。中央サーバ50は、学習を行う機械学習・深層学習モデルのパラメータのクライアントへの送信を行うクライアント通信装置51と、クライアントから送信される学習済みモデルの集約及びモデルパラメータの更新を行うモデル集計装置52と、を備えている。クライアント60-1~60-Kは、各クライアントが保存している独自のデータセットを用いて個別に学習を行う。このような連合学習の一例が、非特許文献1、特許文献1、及び特許文献2に記載されている。
As an example of a learning format for federated learning, there is a format as shown in FIG. 1. Federated learning is implemented by a
ここで、非特許文献1に記載の連合学習システムは、例えば図2のフローチャートに示すように動作する。上記のように、連合学習システムによる連合学習は、中央サーバ50と学習に参加する全クライアント60-1~60-Kとによって実施される。Here, the federated learning system described in Non-Patent
まず、中央サーバ50は、学習の開始に際して、必要に応じてパラメータの入力を行う(ステップS51)。そして、連合学習システムは、連合学習として、以下にラウンドと定義する一連の手続きを、決められた回数、もしくは決められた評価指標に達するまで繰り返す。1回のラウンドの動作は以下の通りである。First, the
ラウンドの開始時に、中央サーバ50は、全クライアント(N個とする)の中からそのラウンドで学習に参加するK個のクライアント60-1~60-Kを抽選して決定する(ステップS52)。この時、選ばれるクライアント数Kは、1以上N以下である。なお、図1には、予めN個全てのクライアントではなく、各ラウンドで学習に参加するK個のクライアント60-1~60-Kのみを図示している。例えば、Nの数が数個から100個程度の研究機関などが保有するサーバーマシンを利用した計算能力の高い環境での連合学習の場合、Kの数としてNの数の80%程度を設定した学習が考えられる。一方で、Nの数が数万程度かそれ以上となるような一般ユーザが所有するような携帯端末などを用いた連合学習の場合は、Kの数としてNの数の10%程度を設定した学習が考えられる。At the start of a round, the
次に、中央サーバ50は、抽選されたK個のクライアント60-1~60-K全てに、学習させる機械学習・深層学習モデル(グローバルモデル)を送信する(ステップS53)。抽選されたK個のクライアント60-1~60-Kは、グローバルモデルを受信した後、各クライアントが記憶しているデータを用いて個別に学習を行う(ステップS54)。抽選されたK個のクライアント60-1~60-Kは、学習が終了し次第、学習済みのモデル(ローカルモデル)を中央サーバ50に送信する(ステップS55)。中央サーバ50は、各クライアント60-1~60-Kから送信されるローカルモデルを、あらかじめ決められた方法で集約演算し、その演算結果を使ってグローバルモデルの更新を行う(ステップS56)。以上が連合学習の1ラウンドの動作であり、前回のラウンドのグローバルモデルの更新結果が、次回のラウンドでクライアントに送信されるグローバルモデルとして利用されることで、学習が進む。既定のラウンド数の学習が進行する、もしくは決められた評価指標に達した段階で、全ての学習プロセスを終了する(ステップS57でYes)。Next, the
ここで、上述の連合学習では、学習の各時点で中央サーバ50がグローバルモデルをクライアントデバイス60-1~60-Kに一斉送信する。そのため、悪意のある攻撃者がクライアントとして学習に参加していた場合、攻撃者はモデル情報を自動的に入手することができ、モデル情報を持たないときよりも精緻な攻撃を実現できる、という問題がある。例えば、攻撃者は下記に説明するような敵対的サンプル(adversarial examples)を用いた攻撃を行うことで、モデルの正常な学習を阻害、あるいは学習完了後のモデルが誤動作するように誘導したり、モデル情報から学習データを復元するなどのプライバシーを侵害するような情報の窃取を行ったりすることが生じうる。Here, in the above-mentioned federated learning, the
また、機械学習・深層学習モデルへの攻撃として、敵対的サンプルによる攻撃を挙げることができる。敵対的サンプルは、機械学習・深層学習モデルが誤作動するように計算された摂動が意図的に加えられたデータである。敵対的サンプルは、任意の機械学習・深層学習モデルで生じうる問題であり、セキュリティ上の重大な課題である。現在までのところ、敵対的サンプルの影響を受けない機械学習・深層学習モデルは提案されておらず、セキュリティ上の堅牢性を向上するためには何らかの付加的な防御手段を付与する必要がある。このうち、現在までに知られている防御手法の中で最も有用な手法の一つが、敵対的学習である。このような敵対的学習の一例が非特許文献2に記載されている。 In addition, as an attack on a machine learning/deep learning model, an attack by an adversarial sample can be mentioned. An adversarial sample is data to which perturbations calculated to cause a machine learning/deep learning model to malfunction are intentionally added. An adversarial sample is a problem that can occur in any machine learning/deep learning model, and is a serious security issue. Up to now, no machine learning/deep learning model that is not affected by adversarial samples has been proposed, and in order to improve the robustness of security, some additional defensive measures must be added. Among these, one of the most useful defensive methods known to date is adversarial learning. An example of such adversarial learning is described in Non-Patent Document 2.
敵対的学習は、例えば図3のフローチャートに示すように動作する。ここで、下記の敵対的学習は1台のマシン上で行われるものを念頭に置いており、かかる1台のマシン上の敵対的学習は、連合学習との組み合わせを考える場合には、連合学習を行う複数台のクライアントのうち、1台のクライアント上での学習に相当する。敵対的学習は、以下の処理を決められた回数、もしくはモデル性能が決められた評価指標に達するまで繰り返される。 Adversarial learning works, for example, as shown in the flowchart in Figure 3. Here, the adversarial learning described below is performed on a single machine, and when combined with federated learning, such adversarial learning on a single machine corresponds to learning on one of multiple clients performing federated learning. Adversarial learning repeats the following process a set number of times, or until the model performance reaches a set evaluation index.
具体的に、敵対的学習では、まず、学習を行うクライアントが、データセットからモデルの更新に利用するデータを選択する(ステップS61)。次に、クライアントは、選ばれたデータを用いて現在の学習進行度のモデルに対する敵対的サンプルを生成する(ステップS62)。この際、敵対的サンプルの生成には、生成方法による差はあるものの、一般的に10回程度の反復計算が必要である(ステップS63)。その後、クライアントは、生成された敵対的サンプルを用いてモデルパラメータの更新を行う(ステップS64)。そして、既定のデータ量かその繰り返し、もしくは決められた評価指標に達した段階で、全ての学習プロセスを終了する(ステップS65)。Specifically, in adversarial learning, first, the client performing the learning selects data to be used to update the model from the dataset (step S61). Next, the client uses the selected data to generate adversarial samples for the model at the current learning progress (step S62). At this time, although there are differences depending on the generation method, the generation of the adversarial samples generally requires about 10 iterative calculations (step S63). After that, the client updates the model parameters using the generated adversarial samples (step S64). Then, when a predetermined amount of data or its repetitions, or when a predetermined evaluation index is reached, the entire learning process ends (step S65).
ここで、上記のように敵対的学習では、データの選択によるモデルの更新という通常の学習方法でも含まれていた反復計算の内部で、敵対的サンプルを生成する、という別の反復計算が都度行われることとなる。そのため、計算時間が長大化するという問題が生じる。特に、上述したような連合学習の枠組みで敵対的学習を行う場合、敵対的学習のアルゴリズムはクライアントで処理されることとなるが、連合学習におけるクライアントマシンは様々な種類が考えられ、必ずしも強力なCPUやGPU、あるいは潤沢なメモリを備えた計算機に限らない。例えば、連合学習におけるクライアントマシンは、用途によってはスマートフォンなどの計算資源の乏しいデバイスがクライアントとなる場合も想定される。このような場合、上記の敵対的学習のアルゴリズムの面からの計算時間の長大化に加え、クライアントの計算能力の乏しさによる計算時間の長大化も生じることとなる。Here, in the adversarial learning described above, a separate iterative calculation is performed each time to generate an adversarial sample within the iterative calculation that is also included in the normal learning method of updating the model by selecting data. This causes a problem of long calculation times. In particular, when adversarial learning is performed within the framework of federated learning as described above, the adversarial learning algorithm is processed by the client, but there are various types of client machines in federated learning, and they are not necessarily limited to computers with powerful CPUs, GPUs, or abundant memory. For example, depending on the application, it is assumed that the client machine in federated learning may be a device with poor computing resources, such as a smartphone. In such cases, in addition to the long calculation times due to the above-mentioned adversarial learning algorithm, the calculation times will also be long due to the poor computing power of the client.
このため、本発明の目的は、上述した課題である、連合学習における計算時間の長大化、ということを解決することができる学習方法を提供することにある。 Therefore, the object of the present invention is to provide a learning method that can solve the above-mentioned problem of the increasing calculation time in associative learning.
本発明の一形態である学習方法は、
複数のクライアント装置に同一のモデルに対する学習を実行させる連合学習を用いた学習方法であって、
複数の前記クライアント装置のそれぞれに対して、予め設定された少なくとも2つ以上の異なる学習方法による学習のうち、いずれかの学習を実行させるよう割り当て、
複数の前記クライアント装置により学習後に生成されたモデルを集計する、
という構成をとる。
A learning method according to one aspect of the present invention includes:
A learning method using federated learning in which a plurality of client devices execute learning for the same model, comprising:
assigning each of the plurality of client devices to perform learning using at least two or more different learning methods that have been set in advance;
aggregating the models generated after training by the plurality of client devices;
The structure is as follows.
また、本発明の一形態である学習装置は、
複数のクライアント装置に同一のモデルに対する学習を実行させる連合学習を用いた学習装置であって、
複数の前記クライアント装置のそれぞれに対して、予め設定された少なくとも2つ以上の異なる学習方法による学習のうち、いずれかの学習を実行させるよう割り当てる割当部と、
複数の前記クライアント装置により学習後に生成されたモデルを集計する集計部と、
を備えた、
という構成をとる。
Furthermore, the learning device according to one aspect of the present invention comprises:
A learning device using federated learning that causes multiple client devices to learn the same model,
an allocation unit that allocates, to each of the plurality of client devices, learning to be performed using one of at least two or more different learning methods that are set in advance;
A counting unit that counts models generated after learning by the multiple client devices;
Equipped with
The structure is as follows.
また、本発明の一形態であるプログラムは、
情報処理装置に、
複数のクライアント装置に同一のモデルに対する学習を実行させる連合学習を行う際に、複数の前記クライアント装置のそれぞれに対して、予め設定された少なくとも2つ以上の異なる学習方法による学習のうち、いずれかの学習を実行させるよう割り当て、
複数の前記クライアント装置により学習後に生成されたモデルを集計する、
処理を実行させる、
という構成をとる。
In addition, a program according to one aspect of the present invention includes:
In the information processing device,
When performing federated learning in which a plurality of client devices are made to perform learning on the same model, each of the plurality of client devices is assigned to perform one of learning methods using at least two or more different learning methods that are set in advance;
aggregating the models generated after training by the plurality of client devices;
Execute the process,
The structure is as follows.
本発明は、以上のように構成されることにより、連合学習における計算時間の長大化を抑制することができる学習方法を提供することができる。
にある。
By being configured as described above, the present invention can provide a learning method that can prevent the calculation time in associative learning from increasing.
is located.
<第1の実施形態>
本発明の第1の実施形態について、図4乃至図6を参照して説明する。図4は、連合学習システムの構成を説明するための図であり、図5乃至図6は、連合学習システムの動作を説明するための図である。
First Embodiment
A first embodiment of the present invention will be described with reference to Figures 4 to 6. Figure 4 is a diagram for explaining the configuration of a federated learning system, and Figures 5 and 6 are diagrams for explaining the operation of the federated learning system.
本発明における連合学習システムは、特に、敵対的学習を適用可能なタスクに対して応用することができる。例として、本発明の連合学習システムは、画像や音声を分類したり認証するためのモデルを生成することに利用することができる。但し、本発明の連合学習システムは、いかなる分野で利用されてもよい。The federated learning system of the present invention can be particularly applied to tasks where adversarial learning is applicable. For example, the federated learning system of the present invention can be used to generate models for classifying or authenticating images or sounds. However, the federated learning system of the present invention may be used in any field.
[構成]
図1に示すように、第1の実施形態における連合学習システムは、複数(任意の個数N個)のクライアント学習装置(以下、「クライアント」とも称する。)と、中央サーバ10と、を備える。ここで、図1には、後述するように各ラウンドで抽選された学習に参加するK個のクライアント学習装置20-1~20-Kのみを図示している。個々のクライアント学習装置20-1~20-Kと中央サーバ10とは、通信可能に接続されている。
[composition]
As shown in Fig. 1, the federated learning system in the first embodiment includes a plurality of (any number N) client learning devices (hereinafter also referred to as "clients") and a
中央サーバ10は、その内部にクライアント通信装置11とモデル集計装置12とクライアント割り当て装置13とを備える。クライアント通信装置11とモデル集計装置12、クライアント通信装置11とクライアント割り当て装置13は、中央サーバ10の中部でそれぞれ接続されている。The
なお、本発明は、コンピュータつまり中央サーバ10を連合学習システムとして機能させる連合学習プログラムとしても実現することができる。コンピュータである中央サーバ10は、連合学習プログラムが読み込まれ実行される中央処理装置(CPU(Central Processing Unit))、クライアントにおいて個別にデータを保存したり中央サーバ10においてグローバルモデルの保存を行ったりする記憶装置(ハードディスク等)、キーボードやマウスなどの入力手段である入力装置15、ディスプレイなどの表示手段である表示装置、を備える。The present invention can also be realized as a federated learning program that causes a computer, i.e., the
本発明の第1の実施の形態では、中央サーバ10のCPUに読み込まれた連合学習プログラムは、当該CPUに、上述したクライアント通信装置11、モデル集計装置12、クライアント割り当て装置13、を構築する。以下、各構成について説明する。In the first embodiment of the present invention, the federated learning program loaded into the CPU of the
クライアント割り当て装置13(割当部)は、各ラウンドにおいて学習に参加するクライアント20-1~20-Kが通常の学習と敵対的学習とのどちらを行うかを指定する。この学習方法の指定は、クライアント通信装置11を通じて各ラウンドで学習に参加する全てのクライアント20-1~20-Kに送信される。なお、学習の開始時に、クライアント割り当て装置13は、各ラウンドでクライアント20-1~20-Kに通常学習と敵対的学習とを割り振る比率を入力として受け取る。この2つの学習方法の割り当て比率は、学習の開始時点で外部より入力されても良いし、学習するモデルのタスクやモデル構造、データに関する情報などから自動的に計算されてもよい。学習方法の割り当ては、例えば、各クライアントに完全にランダムに割り当てても良いし、各クライアントの計算資源や処理速度、保有するデータに関する情報に応じて割り当ててもよい。一例として、学習に参加する全クライアント数は、データセンターや企業などの比較的大きなデータを保有し、かつ計算能力に優れたマシンを用いた学習の場合には、数個から100個程度とする。また、別の例として、学習に参加する全クライアント数は、スマートフォンなどの計算資源の乏しいクライアントを用いた学習の場合には、数百万以上とする。そして、これらのクライアントに対して、例えば、通常学習と敵対的学習を「5:5」や「3:7」といった比率で割り当てる。但し、クライアントの総数や各学習への割り当て比率は、上述した値に限定されない。The client allocation device 13 (allocation unit) specifies whether the clients 20-1 to 20-K participating in the learning in each round will perform normal learning or adversarial learning. This specification of the learning method is transmitted to all clients 20-1 to 20-K participating in the learning in each round through the
なお、本実施形態におけるクライアント割り当て装置13は、選択されたクライアント20-1~20-Kのうち、少なくとも1つのクライアントに通常学習を割り当て、少なくとも1つのクライアントに敵対的学習を割り当てることとしている。但し、クライアント割り当て装置13は、状況によっては、いずれかの学習方法を選択された全てのクライアントにも割り当ててもよい。例えば、クライアント割り当て装置13は、通常学習と敵対的学習を「10:0」や「0:10」といった比率で割り当ててもよい。一例として、クライアント割り当て装置13は、後述するように、ラウンドと呼ばれる1回の学習が複数回繰り返されるような場合には、全ラウンドのうち一部のラウンドでは、通常学習と敵対的学習を「10:0」や「0:10」の比率としてもよい。In this embodiment, the
また、クライアント割り当て装置13がクライアントに割り当てる学習方法は、必ずしも通常学習と敵対的学習であることに限定されない。例えば、クライアント割り当て装置13は、クライアントに対して、所定の第一の学習と、当該第一の学習とは学習方法が異なる第二の学習と、を割り当ててもよい。このとき、第一の学習と第二の学習とは、同一のモデルに対して学習と行うものである。また、クライアント割り当て装置13は、クライアントに対して、必ずしも2つの異なる学習を割り当てることに限定されず、3つ以上の異なる学習を割り当ててもよい。
Furthermore, the learning method that the
クライアント通信装置11(割当部、集計部)は、各ラウンドで学習に参加するクライアント20-1~20-Kに対してのグローバルモデルを送信し、クライアント割り当て装置13によって決定された学習方法を各クライアントに送信する機能を有する。また、クライアント通信装置11は、学習が完了したクライアント20-1~20-Kからのローカルモデルの受信を行う。つまり、各クライアントは、後述するように独自に保有するデータを用いて学習を行い、学習結果の学習済みモデルであるローカルモデルを中央サーバ10に送信するため、かかるローカルモデルをクライアント通信装置11が受信する。The client communication device 11 (allocation unit, aggregation unit) has the function of transmitting a global model to clients 20-1 to 20-K participating in learning in each round, and transmitting the learning method determined by the
ここで、後述するように各クライアント20-1~20-Kは、学習方法の割り当てに応じて、「通常学習」、もしくは、学習の各ステップで学習データから敵対的サンプルを生成し、その敵対的サンプルを学習データとする「敵対的学習」のどちらかを行う。このとき各クライアント20-1~20-Kで実行される学習プログラム、および敵対的学習を行う際の敵対的サンプルの生成サブルーチン用プログラムなどは、例えば、クライアント通信装置11が各クライアント20-1~20-Kに送信する。これにより、クライアント20-1~20-Kは、上述したようなプログラムを連合学習が始まる時点で取得したり、あるいは、学習の各ラウンドでクライアントが学習に参加することが決定した時点で取得する。なお、クライアント20-1~20-Kで実行される学習に利用するプログラムは、必ずしもクライアント通信装置11が提供することに限定されず、クライアント20-1~20-Kは他の方法で取得してもよい。
As described below, each client 20-1 to 20-K performs either "normal learning" or "adversarial learning" in which adversarial samples are generated from the learning data at each step of the learning and the adversarial samples are used as the learning data, depending on the learning method assigned to it. At this time, the learning program executed by each client 20-1 to 20-K and the program for the subroutine for generating adversarial samples when performing adversarial learning are transmitted to each client 20-1 to 20-K by, for example, the
モデル集計装置12は、予め決められた連合学習のアルゴリズムに従って、クライアント通信装置11が受信した複数のクライアント20-1~20-Kからの複数のローカルモデルを演算処理によって集約し、その結果を利用してグローバルモデルを更新する。具体的に、各ラウンドで学習に参加するクライアントに送信されたグローバルモデルは、各クライアント20-1~20-Kが持つ固有のデータを用いて独自に学習が行われ、その学習結果であるローカルモデルが各クライアント20-1~20-Kから個別にクライアント通信装置11に送信される。そして、モデル集計装置12は、例えば、各ローカルモデルの重みパラメータの算術平均や、外れ値を除いたり中央値付近のみを用いたりした平均値などの平均化アルゴリズムによって、新しいグローバルモデルの重みパラメータを計算する。この新しく更新されたグローバルモデルは、上述したようにクライアント通信装置11によって次のラウンドでクライアント20-1~20-Kに送信される。The
クライアント学習装置20-1~20-Kは、中央サーバ10から送信されたグローバルモデルを受信し、当該グローバルモデルに対して、各クライアント20-1~20-K上の個別の学習用データを用いた学習を行う。このとき、クライアント20-1~20-Kは、上述したようにクライアント割り当て装置13にて割り当てられた学習方法による学習を行う。例えば、クライアント20-1~20-Kは、正常系のデータをそのまま使った学習である通常学習を行うか、もしくは、敵対的学習を行う。学習データとしては、例えば、スマートフォンなどで撮影した写真に含まれる顔画像データのような、プライバシーの観点から取り扱いに留意が必要なデータを用いることができる。The client learning devices 20-1 to 20-K receive the global model transmitted from the
クライアント20-1~20-Kは、敵対的学習を行う場合には、以下のラウンドと呼ばれる一連の処理を、予め決められた回数、もしくはモデル性能が決められた評価指標に達するまで繰り返す。まず、通常学習と同じように、学習の各ステップでクライアント20-1~20-Kは保有しているデータの中から学習に用いるデータを選択する。次に、クライアント20-1~20-Kは、選ばれたデータを用いて現在の学習進行度のモデルに対する敵対的サンプルを生成する。このように、敵対的学習では、上述した通常学習とは異なり、敵対的サンプルを生成する処理が追加される。その後、生成された敵対的サンプルを用いてグローバルモデルに対する敵対的学習を行い、モデルパラメータの更新を行う。When performing adversarial learning, clients 20-1 to 20-K repeat the following series of processes called rounds a predetermined number of times or until the model performance reaches a predetermined evaluation index. First, as with normal learning, at each step of learning, clients 20-1 to 20-K select data to be used for learning from the data they hold. Next, clients 20-1 to 20-K use the selected data to generate adversarial samples for the model at the current learning progress. Thus, unlike the normal learning described above, adversarial learning adds a process of generating adversarial samples. After that, adversarial learning is performed on the global model using the generated adversarial samples, and the model parameters are updated.
なお、クライアント20-1~20-Kが実行する学習方法は、上述したように、クライアント割り当て装置13によって決定され、クライアント通信装置11を介してクライアントに通知される。例えば、図1の例では、符号20-1~20-MまでのM個のクライアントが通常学習を行い、符号20-(M+1)~20-Kまでの(K-M)個のクライアントが敵対的学習を行う場合が図示されている。そして、各クライアント20-1~20-Kは、指定された方法での学習が完了し次第、中央サーバ10のクライアント通信装置11に学習済みのローカルモデルを送信する。As described above, the learning method to be performed by clients 20-1 to 20-K is determined by the
[動作]
次に、上述した連合学習システムの動作を、図5のフローチャート及び図6のシーケンス図を参照して説明する。
[Action]
Next, the operation of the above-mentioned federated learning system will be described with reference to the flow chart of FIG. 5 and the sequence diagram of FIG.
まず、中央サーバ10は、入力装置15から各ラウンドで学習に参加するクライアント20-1~20-Kに通常学習と敵対的学習を割り振る比率の入力を受ける(図5のステップS1、図6のステップS11)。その後、連合学習システムは、予め決められた回数、もしくは決められた評価指標に達するまで、以下の学習プロセスを繰り返す。なお、この繰り返しプロセスをラウンドと呼ぶ。
First, the
そして、新しいラウンドの開始時に、中央サーバ10は、学習に参加する全クライアントの中から、そのラウンドの学習に参加するクライアント20-1~20-Kを抽選する(図5のステップS2、図6のステップS12)。中央サーバ10は、これらの抽選されたクライアント20-1~20-Kにグローバルモデルを送信する(図5のステップS3、図6のステップS13)。次に、中央サーバ10は、抽選されたクライアント20-1~20-Kが、そのラウンドにおいて通常学習と敵対的学習のどちらを行うかを、入力された学習の割り当て比率に従って割り当てて、割り当てた学習方法で学習するようクライアント20-1~20-Kに通知する(図5のステップS4、図6のステップS14)。例えば、図1に示すように、符号20-1~20-MまでのM個のクライアントに通常学習が割り当てられ、符号20-(M+1)~20-Kまでの(K-M)個のクライアントに敵対的学習が割り当てられる。
Then, at the start of a new round, the
そして、学習方法の割り当ての指示を受けたクライアント20-1~20-Kは、自身が割り当てられた学習方法で個別に有するデータセットを用いて学習を行う(図5のステップS5)。このとき、通常学習が割り当てられたクライアント20-1~20-Mは、保有しているデータをそのまま使った学習であるグローバルモデルに対する通常学習を行い、モデルパラメータを更新したローカルモデルを生成する(図6のステップS15)。一方、敵対的学習が割り当てられたクライアント20-(M+1)~20-Kは、敵対的学習を行うにあたり、まず、保有しているデータから敵対的サンプルを生成する。そして、クライアント20-(M+1)~20-Kは、生成された敵対的サンプルを用いてグローバルモデルに対する敵対的学習を行い、モデルパラメータを更新したローカルモデルを生成する(図6のステップS16)。Then, clients 20-1 to 20-K that have received the instruction to assign a learning method perform learning using the data set that they individually own with the assigned learning method (step S5 in FIG. 5). At this time, clients 20-1 to 20-M that have been assigned normal learning perform normal learning on the global model, which is learning using the data they hold as is, and generate a local model with updated model parameters (step S15 in FIG. 6). On the other hand, clients 20-(M+1) to 20-K that have been assigned adversarial learning first generate adversarial samples from the data they hold when performing adversarial learning. Then, clients 20-(M+1) to 20-K perform adversarial learning on the global model using the generated adversarial samples, and generate a local model with updated model parameters (step S16 in FIG. 6).
その後、学習が終了したクライアント20-1~20-Kは、個別にローカルモデルを中央サーバ10へ送信する(図5のステップS6、図6のステップS17,S18)。中央サーバ10は、受信した複数のクライアント20-1~20-Kからのローカルモデルを、あらかじめ決められた連合学習のアルゴリズムによって集約し、グローバルモデルの更新を行い、ラウンドを終了する(図5のステップS7、図6のステップS19,S20)。更新されたグローバルモデルは、中央サーバ10が次回ラウンドでクライアント20-1~20-Mに送信されることとなる(図5のステップS8でNo,S2,S3)。そして、中央サーバ10は、既定のラウンド数の学習が進行するか、もしくは決められた評価指標に達するまで、上述したラウンドと呼ばれる学習プロセスを繰り返し実行する(図5のステップS8でNo)。一方で、中央サーバ10は、学習の終了要件を満たした場合には(図5のステップS8でYes)、全ての学習プロセスを終了し、図示しない出力装置に学習済みのグローバルモデルを出力する。After that, the clients 20-1 to 20-K that have completed learning individually transmit their local models to the central server 10 (step S6 in FIG. 5, steps S17 and S18 in FIG. 6). The
[効果]
以上のように、第1の実施形態における連合学習システムは、各ラウンドにおいて、通常の連合学習のようにすべてのクライアントが正常系のデータを用いて通常学習を行うわけではなく、また、全てのクライアントが敵対的学習を行うわけでもなく、ある一定の比率で一部のクライアントが通常学習を、残りのクライアントが敵対的学習を行っている。このため、正常系のデータを用いた学習により敵対的学習よりも計算資源を削減できると共に、敵対的サンプルに対する堅牢性と正常データに対する精度を担保しながら、全体として計算量を削減することができる。
[effect]
As described above, in the federated learning system in the first embodiment, in each round, not all clients perform normal learning using normal data as in normal federated learning, nor do all clients perform adversarial learning, but rather, a certain ratio of some clients performs normal learning and the remaining clients perform adversarial learning. Therefore, learning using normal data can reduce computational resources compared to adversarial learning, and the overall amount of computation can be reduced while ensuring robustness against adversarial samples and accuracy for normal data.
<第2の実施形態>
次に、本発明の第2の実施形態を、図7乃至図8を参照して説明する。図7は、連合学習システムの構成を説明するための図であり、図8は連合学習システムの処理動作を説明するための図である。
Second Embodiment
Next, a second embodiment of the present invention will be described with reference to Figures 7 and 8. Figure 7 is a diagram for explaining the configuration of a federated learning system, and Figure 8 is a diagram for explaining the processing operation of the federated learning system.
[構成]
図7に示すように、本実施径形態における連合学習システムは、第1の実施形態で説明した中央サーバ10の構成に加えて、当該中央サーバ10がさらにクライアント比率調整装置14(変更部)を備えている。このクライアント比率調整装置14は、中央サーバ10が備えるCPUに連合学習プログラムが読み込まれることにより、当該CPUに構築される。なお、中央サーバ10が備えるその他の構成要素については、第1の実施形態と同様であり、図1と同一の符号を付し、詳細な説明を省略する。
[composition]
As shown in Fig. 7, in the federated learning system of this embodiment, in addition to the configuration of the
上記クライアント比率調整装置14は、各ラウンドで学習に参加するクライアント20-1~20-Kの学習方法の割り当て比率を、予め設定された基準に基づいて変更して更新する機能を有する。かかる構成が、主に第1の実施形態との相違点であり、以下、主に相違点について詳述する。The client
クライアント比率調整装置14は、クライアント割り当て装置13と中央サーバ10の中部で接続されている。そして、クライアント比率調整装置14は、上述したようにラウンドと呼ぶ学習の各段階で、学習方法の割り当て比率を更新し、クライアント割り当て装置13に送信する。クライアント割り当て装置13は、クライアント比率調整装置14から送信された比率に応じて、各ラウンドで学習に参加するクライアント20-1~20-Kが行う学習方法を、クライアントごとに割り振る。なお、クライアントの学習方法の割り当て比率は、学習の開始時に学習の進行度とその時点で対応する割り当て比率との組の形でクライアント比率調整装置14が入力として受け取ってもよい。また、学習の開始時点の割り当て比率のみを入力として受け取り、クライアント比率調整装置14が学習の各時点で、グローバルモデル、あるいは複数のローカルモデルの性能や統計量を利用して、適応的に割り当て比率を調整してもよい。The client
割当比率の調整の方法の例としては、例えば、予めラウンドの進行度に対して学習の割り当て比率を決めておき、実際のラウンドの進行度に従ってクライアント比率調整装置14が比率変更を行う。一例として、全部で100ラウンドの学習を行う場合に、最初から50ラウンドまでは通常学習を行うクライアントと敵対的学習を行うクライアントとの比率を8:2、その後の51ラウンドから100ラウンドまでは、通常学習を行うクライアントと敵対的学習を行うクライアントとの比率を2:5、などとしてもよく、ラウンドが進むごとに段階的に比率を変えてもよい。As an example of a method for adjusting the allocation ratio, for example, the learning allocation ratio is determined in advance for the progress of the round, and the client
なお、クライアント比率調整装置14は、割当比率を以下のように変更してもよい。例えば、100ラウンドの学習を行う場合に、最初から50ラウンドまでは通常学習を行うクライアントと敵対的学習を行うクライアントとの比率を10:0、すなわち学習に参加する全てのクライアントが通常学習を行うようにし、それ以降は比率が0:10、すなわち学習に参加する全てのクライアントが敵対的学習を行う、という割当比率としてもよい。このように、クライアント比率調整装置14は、ラウンドや時間に応じて、クライアントに対する学習方法の割当を変更してもよい。
The client
また、別の例としては、学習開始前に決めておいた特定の指標に従って、クライアント比率調整装置14が学習比率を変化させてよい。例えば、グローバルモデルや各クライアントの学習結果のローカルモデルの性能を各ラウンド終了時に計算し、これらが一定の閾値を超えた場合に割当比率を変更する。この場合、モデル性能の評価指数として、例えば分類問題に関しては通常データに対する分類正答率や、敵対的サンプルに対する分類の失敗率などを挙げることができる。また、これらの性能の評価指数が各学習済みローカルモデルの間でどの程度ばらついているか、もしくは収束しているかといった、学習の進行に関する統計量に応じて、学習比率を調整する方法も考えられる。As another example, the client
[動作]
次に、上述した連合学習システムの動作を、図8のフローチャートを参照して説明する。なお、第1の実施形態と同様の動作については、図5と同一の符号を付し、詳細な説明を省略する。
[Action]
Next, the operation of the above-mentioned associative learning system will be described with reference to the flowchart of Fig. 8. Note that operations similar to those in the first embodiment are given the same reference numerals as in Fig. 5, and detailed description thereof will be omitted.
本実施形態における連合学習システムは、以下の点で第1の実施形態と動作が異なる。中央サーバ10のクライアント比率調整装置14は、学習の各ラウンドにおいて、ステップS7でグローバルモデルを更新した後、予め入力された割当比率の推移に従って、もしくは適応的な調整によって、次回ラウンドで使用する通常学習と敵対的学習のクライアントへの割り当て比率を更新する(図8のステップS7’)。例えば、クライアント比率調整装置14は、ラウンドの進行度に応じて割当比率を変更したり、生成されたローカルモデルや更新されたグローバルモデルの評価結果に応じて割当比率を変更する。そして、中央サーバ10は、学習の終了要件を満たしていない場合には(図8のステップS8でNo)、クライアント割り当て装置13が、変更した割当比率でクライアントの学習方法を割り当て、クライアントに学習させることとなる。The federated learning system in this embodiment differs from the first embodiment in the following points. In each round of learning, the client
[効果]
以上のおように、本実施形態においては、各ラウンドで通常学習と敵対的学習を行うクライアントの比率を変化させている。例えば、学習の初期段階においては多くのクライアントが通常学習を行い、学習が進行するにつれて敵対的学習の比率を高めることで、敵対的学習を多く行うことによる計算時間を削減しつつ、敵対的学習による頑強性を担保することができる。
[effect]
As described above, in this embodiment, the ratio of clients performing normal learning and adversarial learning is changed in each round. For example, in the early stage of learning, many clients perform normal learning, and as learning progresses, the ratio of adversarial learning is increased, thereby reducing the calculation time required for performing a lot of adversarial learning while ensuring the robustness of adversarial learning.
ここで、上述した本発明の学習方法を用いて実際に学習を行い、生成したモデルの精度と学習時間を評価した結果を図9に示す。ここでは、公開データを用いた10クラスの画像分類問題を取り扱うこととしている。まず、「学習方法1」は、連合学習に敵対的学習を組み込み、学習の全ての時点でクライアント全てが敵対的学習を行った場合である。「学習方法2」は、予め決められた学習の総ラウンド数の30%に到達するまでは、各ラウンドで全てのクライアントは正常系のデータを用いた学習を行い、その後は各ラウンドで全てのクライアントが敵対的学習を行うという学習を行った場合である。「学習方法3」は、学習の総ラウンドの25%が経過するごとに、各ラウンドで学習に参加するクライアントのうち敵対的学習を行うクライアント数の比率が0%から70%まで段階的に増加していく学習を行った場合である。これら3つの方法で学習されたモデルの評価指標として、正常系のデータに対する分類精度、敵対的サンプルに対する分類精度、「学習方法1」を基準とした各モデルの学習が完了するまでに必要な反復計算の回数の比率、を算出した。図9に示されているように、「学習方法2」及び「学習方法3」は、「学習方法1」と同程度の正常系データ・敵対的サンプルに対する分類精度を確保しつつ、計算回数を削減することに成功している。
Figure 9 shows the results of evaluating the accuracy and learning time of the model generated by actually learning using the learning method of the present invention described above. Here, we deal with a 10-class image classification problem using public data. First, "
<実施形態3>
次に、本発明の第3の実施形態を、図10乃至図12を参照して説明する。図10乃至図11は、実施形態3における学習装置の構成を示すブロック図であり、図12は、学習装置の動作を示すフローチャートである。なお、本実施形態では、上述した実施形態で説明した学習装置及び学習方法の構成の概略を示している。
<Embodiment 3>
Next, a third embodiment of the present invention will be described with reference to Fig. 10 to Fig. 12. Fig. 10 to Fig. 11 are block diagrams showing the configuration of a learning device in the third embodiment, and Fig. 12 is a flowchart showing the operation of the learning device. Note that this embodiment shows an outline of the configuration of the learning device and learning method described in the above embodiments.
まず、図10を参照して、本実施形態における学習装置100のハードウェア構成を説明する。学習装置100は、一般的な情報処理装置にて構成されており、一例として、以下のようなハードウェア構成を装備している。
・CPU(Central Processing Unit)101(演算装置)
・ROM(Read Only Memory)102(記憶装置)
・RAM(Random Access Memory)103(記憶装置)
・RAM103にロードされるプログラム群104
・プログラム群104を格納する記憶装置105
・情報処理装置外部の記憶媒体110の読み書きを行うドライブ装置106
・情報処理装置外部の通信ネットワーク111と接続する通信インタフェース107
・データの入出力を行う入出力インタフェース108
・各構成要素を接続するバス109
First, the hardware configuration of the
・CPU (Central Processing Unit) 101 (arithmetic unit)
・ROM (Read Only Memory) 102 (storage device)
・RAM (Random Access Memory) 103 (storage device)
A
A
A
Input/
A bus 109 that connects each component
そして、学習装置100は、プログラム群104をCPU101が取得して当該CPU101が実行することで、図11に示す割当部121と集計部122とを構築して装備することができる。なお、プログラム群104は、例えば、予め記憶装置105やROM102に格納されており、必要に応じてCPU101がRAM103にロードして実行する。また、プログラム群104は、通信ネットワーク111を介してCPU101に供給されてもよいし、予め記憶媒体110に格納されており、ドライブ装置106が該プログラムを読み出してCPU101に供給してもよい。但し、上述した割当部121と集計部122とは、かかる手段を実現させるための専用の電子回路で構築されるものであってもよい。
The
なお、図10は、学習装置100である情報処理装置のハードウェア構成の一例を示しており、情報処理装置のハードウェア構成は上述した場合に限定されない。例えば、情報処理装置は、ドライブ装置106を有さないなど、上述した構成の一部から構成されてもよい。
Note that FIG. 10 shows an example of the hardware configuration of an information processing device that is the
そして、学習装置100は、上述したようにプログラムによって構築された割当部121と集計部122との機能により、図12のフローチャートに示す学習方法を実行する。Then, the
図12に示すように、学習装置100は、
複数のクライアント装置に同一のモデルに対する学習を実行させる連合学習を実行する際に、
複数の前記クライアント装置のそれぞれに対して、予め設定された少なくとも2つ以上の異なる学習方法による学習のうち、いずれかの学習を実行させるよう割り当て(ステップS101)、
複数の前記クライアント装置により学習後に生成されたモデルを集計する(ステップS102)、
という処理を実行する。
As shown in FIG. 12, the
When performing federated learning in which multiple client devices are made to learn the same model,
Assigning each of the plurality of client devices to perform one of at least two or more different learning methods set in advance (step S101);
Counting the models generated after learning by the multiple client devices (step S102);
The following process is executed.
本発明は、以上のように構成されることにより、複数のクライアント装置にそれぞれ異なる学習方法による学習を実行させる連合学習を行い、学習後のモデルを集計している。これにより、異なる学習方法による特性をモデルに反映でき、高品質なモデルを生成できると共に、連合学習による計算時間の長大化を抑制することができる。 The present invention, configured as described above, performs associative learning in which multiple client devices each perform learning using a different learning method, and then aggregates the models after learning. This allows the characteristics of the different learning methods to be reflected in the model, making it possible to generate high-quality models and suppressing the increase in calculation time caused by associative learning.
なお、上述したプログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。The above-mentioned program can be stored and supplied to a computer using various types of non-transitory computer readable media. Non-transitory computer readable media include various types of tangible storage media. Examples of non-transitory computer readable media include magnetic recording media (e.g., flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (e.g., magneto-optical disks), CD-ROMs (Read Only Memory), CD-Rs, CD-R/Ws, and semiconductor memories (e.g., mask ROMs, PROMs (Programmable ROMs), EPROMs (Erasable PROMs), flash ROMs, and RAMs (Random Access Memory)). The program may also be supplied to a computer by various types of transitory computer readable media. Examples of transitory computer readable media include electrical signals, optical signals, and electromagnetic waves. The transitory computer readable media can supply the program to a computer via wired communication paths such as electric wires and optical fibers, or wireless communication paths.
以上、上記実施形態等を参照して本願発明を説明したが、本願発明は、上述した実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明の範囲内で当業者が理解しうる様々な変更をすることができる。また、上述した割当部121と集計部122との機能のうちの少なくとも一以上の機能は、ネットワーク上のいかなる場所に設置され接続された情報処理装置で実行されてもよく、つまり、いわゆるクラウドコンピューティングで実行されてもよい。
Although the present invention has been described above with reference to the above-mentioned embodiments, the present invention is not limited to the above-mentioned embodiments. Various modifications that can be understood by a person skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention. Furthermore, at least one or more of the functions of the above-mentioned
<付記>
上記実施形態の一部又は全部は、以下の付記のようにも記載されうる。以下、本発明における学習方法、学習装置、プログラムの構成の概略を説明する。但し、本発明は、以下の構成に限定されない。
(付記1)
複数のクライアント装置に同一のモデルに対する学習を実行させる連合学習を用いた学習方法であって、
複数の前記クライアント装置のそれぞれに対して、予め設定された少なくとも2つ以上の異なる学習方法による学習のうち、いずれかの学習を実行させるよう割り当て、
複数の前記クライアント装置により学習後に生成されたモデルを集計する、
学習方法。
(付記2)
付記1に記載の学習方法であって、
少なくとも1つの所定のクライアント装置に第一の学習を実行させると共に、少なくとも1つの他の前記クライアント装置に前記第一の学習とは学習方法が異なり学習データの生成処理を伴う第二の学習を実行させるよう割り当てる、
学習方法。
(付記3)
付記2に記載の学習方法であって、
前記所定のクライアント装置に前記第一の学習として通常学習を実行させると共に、前記他のクライアント装置に前記第二の学習として敵対的サンプルを生成して当該敵対的サンプルの学習処理を伴う敵対的学習を実行させるよう割り当てる、
学習方法。
(付記4)
付記1乃至3のいずれかに記載の学習方法であって、
複数の前記クライアント装置による学習の実行後に生成されたモデルを集計して新たなモデルを生成し、
さらに、前記新たなモデルに対して、複数の前記クライアント装置に、予め設定された少なくとも2つ以上の異なる学習方法による学習のうち、いずれかの学習を実行させるよう割り当てる、
学習方法。
(付記5)
付記1乃至4のいずれかに記載の学習方法であって、
予め設定された少なくとも2つの学習方法の割当比率に応じて、複数の前記クライアント装置にいずれかの学習を実行させるよう割り当てる、
学習方法。
(付記6)
付記5に記載の学習方法であって、
複数の前記クライアント装置による学習の実行後に生成されたモデルを集計した後に、前記割当比率を変更し、
さらに、変更された前記割当比率に応じて、複数の前記クライアント装置にいずれかの学習を実行させるよう割り当てる、
学習方法。
(付記7)
付記6に記載の学習方法であって、
複数の前記クライアント装置に実行させた学習の進行度に基づいて、前記割当比率を変更する、
学習方法。
(付記8)
付記6又は7に記載の学習方法であって、
複数の前記クライアント装置から集計したモデルに基づいて、前記割当比率を変更する、
学習方法。
(付記9)
付記8に記載の学習方法であって、
複数の前記クライアント装置から集計したモデルの性能を評価した結果に基づいて、前記割当比率を変更する、
学習方法。
(付記10)
複数のクライアント装置に同一のモデルに対する学習を実行させる連合学習を用いた学習装置であって、
複数の前記クライアント装置のそれぞれに対して、予め設定された少なくとも2つ以上の異なる学習方法による学習のうち、いずれかの学習を実行させるよう割り当てる割当部と、
複数の前記クライアント装置により学習後に生成されたモデルを集計する集計部と、
を備えた学習装置。
(付記11)
付記10に記載の学習装置であって、
前記割当部は、少なくとも1つの所定のクライアント装置に第一の学習を実行させると共に、少なくとも1つの他の前記クライアント装置に前記第一の学習とは学習方法が異なり学習データの生成処理を伴う第二の学習を実行させるよう割り当てる、
学習装置。
(付記12)
付記11に記載の学習装置であって、
前記割当部は、前記所定のクライアント装置に前記第一の学習として通常学習を実行させると共に、前記他のクライアント装置に前記第二の学習として敵対的サンプルを生成して当該敵対的サンプルの学習処理を伴う敵対的学習を実行させるよう割り当てる、
学習装置。
(付記13)
付記10乃至12のいずれかに記載の学習装置であって、
前記集計部は、複数の前記クライアント装置による学習の実行後に生成されたモデルを集計して新たなモデルを生成し、
前記割当部は、さらに、前記新たなモデルに対して、複数の前記クライアント装置に、予め設定された少なくとも2つ以上の異なる学習方法による学習のうち、いずれかの学習を実行させるよう割り当てる、
学習装置。
(付記14)
付記10乃至13のいずれかに記載の学習装置であって、
前記割当部は、予め設定された少なくとも2つの学習方法の割当比率に応じて、複数の前記クライアント装置にいずれかの学習を実行させるよう割り当てる、
学習装置。
(付記15)
付記14に記載の学習装置であって、
複数の前記クライアント装置による学習の実行後に生成されたモデルを集計した後に、前記割当比率を変更する変更部を備え、
前記割当部は、さらに、変更された前記割当比率に応じて、複数の前記クライアント装置にいずれかの学習を実行させるよう割り当てる、
学習装置。
(付記16)
付記15に記載の学習装置であって、
前記変更部は、複数の前記クライアント装置に実行させた学習の進行度に基づいて、前記割当比率を変更する、
学習装置。
(付記17)
付記15又は16に記載の学習装置であって、
前記変更部は、複数の前記クライアント装置から集計したモデルに基づいて、前記割当比率を変更する、
学習装置。
(付記18)
付記17に記載の学習装置であって、
前記変更部は、複数の前記クライアント装置から集計したモデルの性能を評価した結果に基づいて、前記割当比率を変更する、
学習装置。
(付記19)
情報処理装置に、
複数のクライアント装置に同一のモデルに対する学習を実行させる連合学習を行う際に、複数の前記クライアント装置のそれぞれに対して、予め設定された少なくとも2つ以上の異なる学習方法による学習のうち、いずれかの学習を実行させるよう割り当て、
複数の前記クライアント装置により学習後に生成されたモデルを集計する、
処理を実行させるためのプログラムを記憶したコンピュータにて読み取り可能な記憶媒体。
<Additional Notes>
A part or all of the above-described embodiments can be described as follows: The following is an outline of the configurations of the learning method, learning device, and program of the present invention. However, the present invention is not limited to the following configurations.
(Appendix 1)
A learning method using federated learning in which a plurality of client devices execute learning for the same model, comprising:
assigning each of the plurality of client devices to perform learning using at least two or more different learning methods that have been set in advance;
aggregating the models generated after training by the plurality of client devices;
How to learn.
(Appendix 2)
2. The learning method according to
causing at least one predetermined client device to execute a first learning, and assigning at least one other of the client devices to execute a second learning, the second learning being a learning method different from that of the first learning and involving a process of generating learning data;
How to learn.
(Appendix 3)
3. The learning method according to claim 2, further comprising:
assigning the predetermined client device to perform normal learning as the first learning, and the other client devices to perform adversarial learning involving generating adversarial samples and learning processing of the adversarial samples as the second learning;
How to learn.
(Appendix 4)
A learning method according to any one of
aggregating the models generated after the learning is performed by the multiple client devices to generate a new model;
Furthermore, the method assigns the client devices to perform learning of the new model using at least two or more different learning methods that are set in advance.
How to learn.
(Appendix 5)
A learning method according to any one of
assigning the plurality of client devices to execute one of the learning methods according to an allocation ratio of at least two preset learning methods;
How to learn.
(Appendix 6)
6. The learning method according to claim 5, further comprising:
aggregating models generated after the execution of learning by the multiple client devices, and then changing the allocation ratio;
and allocating the plurality of client devices to execute any one of the learning processes in accordance with the changed allocation ratio.
How to learn.
(Appendix 7)
7. The learning method according to claim 6, further comprising:
changing the allocation ratio based on a progress of learning executed by the plurality of client devices;
How to learn.
(Appendix 8)
The learning method according to claim 6 or 7,
changing the allocation ratio based on a model aggregated from a plurality of the client devices;
How to learn.
(Appendix 9)
9. The learning method according to claim 8, further comprising:
changing the allocation ratio based on a result of evaluating the performance of the model aggregated from the plurality of client devices;
How to learn.
(Appendix 10)
A learning device using federated learning that causes multiple client devices to learn the same model,
an allocation unit that allocates, to each of the plurality of client devices, learning to be performed using one of at least two or more different learning methods that are set in advance;
A counting unit that counts models generated after learning by the multiple client devices;
A learning device equipped with
(Appendix 11)
11. The learning device according to
the allocation unit causes at least one predetermined client device to execute a first learning, and allocates at least one other of the client devices to execute a second learning, the second learning being a learning method different from that of the first learning and involving a process of generating learning data;
Learning device.
(Appendix 12)
12. The learning device according to
The allocation unit causes the predetermined client device to perform normal learning as the first learning, and assigns the other client devices to perform adversarial learning involving generating adversarial samples and learning processing of the adversarial samples as the second learning.
Learning device.
(Appendix 13)
13. The learning device according to any one of
The aggregation unit aggregates models generated after the execution of learning by the multiple client devices to generate a new model;
The allocation unit further allocates the client devices to execute learning of the new model using at least two or more different learning methods that are set in advance.
Learning device.
(Appendix 14)
14. The learning device according to any one of
the allocating unit allocates the plurality of client devices to execute one of the learning methods in accordance with an allocation ratio of at least two preset learning methods;
Learning device.
(Appendix 15)
15. The learning device according to
a change unit that changes the allocation ratio after aggregating models generated after execution of learning by the plurality of client devices;
The allocation unit further allocates the plurality of client devices to execute any one of the learning operations in accordance with the changed allocation ratio.
Learning device.
(Appendix 16)
16. The learning device according to
the change unit changes the allocation ratio based on a progress of learning executed by the plurality of client devices.
Learning device.
(Appendix 17)
17. The learning device according to
the change unit changes the allocation ratio based on a model aggregated from the plurality of client devices.
Learning device.
(Appendix 18)
18. The learning device according to claim 17,
the change unit changes the allocation ratio based on a result of evaluating the performance of the model aggregated from the plurality of client devices.
Learning device.
(Appendix 19)
In the information processing device,
When performing federated learning in which a plurality of client devices are made to perform learning on the same model, each of the plurality of client devices is assigned to perform one of learning methods using at least two or more different learning methods that are set in advance;
aggregating the models generated after training by the plurality of client devices;
A computer-readable storage medium that stores a program for executing processing.
10 中央サーバ
11 クライアント通信装置
12 モデル集計装置
13 クライアント割り当て装置
14 クライアント比率調整装置
15 入力装置
20-1~20-K クライアント
50 中央サーバ
51 クライアント通信装置
52 モデル集計装置
60-1~60-K クライアント
100 学習装置
101 CPU
102 ROM
103 RAM
104 プログラム群
105 記憶装置
106 ドライブ装置
107 通信インタフェース
108 入出力インタフェース
109 バス
110 記憶媒体
111 通信ネットワーク
121 割当部
122 集計部
200 クライアント装置
10
102 ROM
103 RAM
104
Claims (10)
前記情報処理装置が、
複数の前記クライアント装置のそれぞれに対して、予め設定された少なくとも2つ以上の異なる学習方法による学習のうち、いずれかの学習を実行させるよう割り当て、
複数の前記クライアント装置により学習後に生成されたモデルを集計する、
学習方法。 A learning method using federated learning in which an information processing device causes a plurality of client devices to execute learning for a same model, comprising:
The information processing device,
assigning each of the plurality of client devices to perform learning using at least two or more different learning methods that have been set in advance;
aggregating the models generated after training by the plurality of client devices;
How to learn.
少なくとも1つの所定のクライアント装置に第一の学習を実行させると共に、少なくとも1つの他の前記クライアント装置に前記第一の学習とは学習方法が異なり学習データの生成処理を伴う第二の学習を実行させるよう割り当てる、
学習方法。 The learning method according to claim 1 ,
causing at least one predetermined client device to execute a first learning, and assigning at least one other of the client devices to execute a second learning, the second learning being a learning method different from that of the first learning and involving a process of generating learning data;
How to learn.
前記所定のクライアント装置に前記第一の学習として通常学習を実行させると共に、前記他のクライアント装置に前記第二の学習として敵対的サンプルを生成して当該敵対的サンプルの学習処理を伴う敵対的学習を実行させるよう割り当てる、
学習方法。 The learning method according to claim 2,
assigning the predetermined client device to perform normal learning as the first learning, and the other client devices to perform adversarial learning involving generating adversarial samples and learning processing of the adversarial samples as the second learning;
How to learn.
複数の前記クライアント装置による学習の実行後に生成されたモデルを集計して新たなモデルを生成し、
さらに、前記新たなモデルに対して、複数の前記クライアント装置に、予め設定された少なくとも2つ以上の異なる学習方法による学習のうち、いずれかの学習を実行させるよう割り当てる、
学習方法。 A learning method according to any one of claims 1 to 3,
aggregating the models generated after the learning is performed by the multiple client devices to generate a new model;
Furthermore, the method assigns the client devices to perform learning of the new model using at least two or more different learning methods that are set in advance.
How to learn.
予め設定された少なくとも2つの学習方法の割当比率に応じて、複数の前記クライアント装置にいずれかの学習を実行させるよう割り当てる、
学習方法。 A learning method according to any one of claims 1 to 4,
assigning the plurality of client devices to execute one of the learning methods according to an allocation ratio of at least two preset learning methods;
How to learn.
複数の前記クライアント装置による学習の実行後に生成されたモデルを集計した後に、前記割当比率を変更し、
さらに、変更された前記割当比率に応じて、複数の前記クライアント装置にいずれかの学習を実行させるよう割り当てる、
学習方法。 The learning method according to claim 5,
aggregating models generated after the execution of learning by the multiple client devices, and then changing the allocation ratio;
and allocating the plurality of client devices to execute any one of the learning processes in accordance with the changed allocation ratio.
How to learn.
複数の前記クライアント装置に実行させた学習の進行度に基づいて、前記割当比率を変更する、
学習方法。 The learning method according to claim 6,
changing the allocation ratio based on a progress of learning executed by the plurality of client devices;
How to learn.
複数の前記クライアント装置から集計したモデルに基づいて、前記割当比率を変更する、
学習方法。 A learning method according to claim 6 or 7, comprising:
changing the allocation ratio based on a model aggregated from a plurality of the client devices;
How to learn.
複数の前記クライアント装置のそれぞれに対して、予め設定された少なくとも2つ以上の異なる学習方法による学習のうち、いずれかの学習を実行させるよう割り当てる割当部と、
複数の前記クライアント装置により学習後に生成されたモデルを集計する集計部と、
を備えた学習装置。 A learning device using federated learning that causes multiple client devices to learn the same model,
an allocation unit that allocates, to each of the plurality of client devices, learning to be performed using one of at least two or more different learning methods that are set in advance;
A counting unit that counts models generated after learning by the multiple client devices;
A learning device equipped with
複数のクライアント装置に同一のモデルに対する学習を実行させる連合学習を行う際に、複数の前記クライアント装置のそれぞれに対して、予め設定された少なくとも2つ以上の異なる学習方法による学習のうち、いずれかの学習を実行させるよう割り当て、
複数の前記クライアント装置により学習後に生成されたモデルを集計する、
処理を実行させるためのプログラム。
In the information processing device,
When performing federated learning in which a plurality of client devices are made to perform learning on the same model, each of the plurality of client devices is assigned to perform one of learning methods using at least two or more different learning methods that are set in advance;
aggregating the models generated after training by the plurality of client devices;
A program for executing a process.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/JP2021/022174 WO2022259481A1 (en) | 2021-06-10 | 2021-06-10 | Learning method |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| JPWO2022259481A1 JPWO2022259481A1 (en) | 2022-12-15 |
| JPWO2022259481A5 JPWO2022259481A5 (en) | 2024-02-27 |
| JP7548432B2 true JP7548432B2 (en) | 2024-09-10 |
Family
ID=84425792
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2023526772A Active JP7548432B2 (en) | 2021-06-10 | 2021-06-10 | How to learn |
Country Status (2)
| Country | Link |
|---|---|
| JP (1) | JP7548432B2 (en) |
| WO (1) | WO2022259481A1 (en) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2020148992A1 (en) | 2019-01-18 | 2020-07-23 | オムロン株式会社 | Model generation device, model generation method, model generation program, model generation system, inspection system, and monitoring system |
| US20210097439A1 (en) | 2019-09-27 | 2021-04-01 | Siemens Healthcare Gmbh | Method and system for scalable and decentralized incremental machine learning which protects data privacy |
-
2021
- 2021-06-10 WO PCT/JP2021/022174 patent/WO2022259481A1/en not_active Ceased
- 2021-06-10 JP JP2023526772A patent/JP7548432B2/en active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2020148992A1 (en) | 2019-01-18 | 2020-07-23 | オムロン株式会社 | Model generation device, model generation method, model generation program, model generation system, inspection system, and monitoring system |
| US20210097439A1 (en) | 2019-09-27 | 2021-04-01 | Siemens Healthcare Gmbh | Method and system for scalable and decentralized incremental machine learning which protects data privacy |
Non-Patent Citations (3)
| Title |
|---|
| CHEN, Cheng et al.,"CERTIFIABLY-ROBUST FEDERATED ADVERSARIAL LEARNING VIA RANDOMIZED SMOOTHING",arXiv:2103.16031v1,version v1,[online], arXiv (Cornell University),2021年03月30日,Pages 1-9,[retrieved on 2021.07.27], Retrieved from the Internet: <URL: https://arxiv.org/abs/2103.16031v1>. |
| CRESWELL, Antonia et al.,"Generative Adversarial Networks : An overview",IEEE Signal Processing Magazine,2018年01月10日,Vol.35, No.1,Pages 53-65,ISSN: 1053-5888, <DOI: 10.1109/MSP.2017.2765202>. |
| ZHU, Hangyu et al.,"From federated learning to federated neural architecture search: a survey",Complex & Intelligent Systems,[online], Springer,2021年01月04日,Vol.7,Pages 639-657,[retrieved on 2021.07.28], Retrieved from the Internet: <URL: https://doi.org/10.1007/s40747-020-00247-z>,<DOI: 10.1007/s40747-020-00247-z> |
Also Published As
| Publication number | Publication date |
|---|---|
| JPWO2022259481A1 (en) | 2022-12-15 |
| WO2022259481A1 (en) | 2022-12-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Bao et al. | Deep learning-based job placement in distributed machine learning clusters | |
| Han et al. | Slice as an evolutionary service: Genetic optimization for inter-slice resource management in 5G networks | |
| Dimitriadis et al. | A Federated Approach in Training Acoustic Models. | |
| US10437648B2 (en) | Guided load balancing of graph processing workloads on heterogeneous clusters | |
| US20180240010A1 (en) | Technologies for optimized machine learning training | |
| CN115511103B (en) | Method, apparatus, device and medium for federal learning | |
| CN111898137A (en) | Private data processing method, equipment and system for federated learning | |
| US11055139B2 (en) | Smart accelerator allocation and reclamation for deep learning jobs in a computing cluster | |
| US20180032869A1 (en) | Machine learning method, non-transitory computer-readable storage medium, and information processing apparatus | |
| CN111460384B (en) | Strategy evaluation methods, devices and equipment | |
| CN107688493A (en) | Train the method, apparatus and system of deep neural network | |
| CN112527509B (en) | Resource allocation method, device, electronic equipment and storage medium | |
| KR101990411B1 (en) | System for scaling resource based on priority in cloud system, apparatus and method thereof | |
| CN113778691B (en) | A method, device and system for task migration decision | |
| Li et al. | Towards timely video analytics services at the network edge | |
| JP7021132B2 (en) | Learning equipment, learning methods and programs | |
| CN114879832B (en) | Power consumption control method, device, chip, equipment and medium for computing device | |
| JP6602252B2 (en) | Resource management apparatus and resource management method | |
| JP7548432B2 (en) | How to learn | |
| CN113608751B (en) | Operation method, device and equipment of reasoning service platform and storage medium | |
| CN113656046B (en) | Application deployment method and device | |
| Priyadarshini et al. | Dynamic load balancing with task migration: a genetic algorithm approach for optimizing cloud computing infrastructure | |
| Chen et al. | Heterogeneity-aware personalized federated learning via adaptive dual-agent reinforcement learning | |
| CN111178529B (en) | Data processing method and device, electronic equipment and readable storage medium | |
| CN119052144A (en) | Efficient in-game network delay compensation method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231124 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20231124 |
|
| 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: 20240730 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240812 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7548432 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |