JP7389177B2 - 連合学習方法、装置、機器及び記憶媒体 - Google Patents

連合学習方法、装置、機器及び記憶媒体 Download PDF

Info

Publication number
JP7389177B2
JP7389177B2 JP2022111567A JP2022111567A JP7389177B2 JP 7389177 B2 JP7389177 B2 JP 7389177B2 JP 2022111567 A JP2022111567 A JP 2022111567A JP 2022111567 A JP2022111567 A JP 2022111567A JP 7389177 B2 JP7389177 B2 JP 7389177B2
Authority
JP
Japan
Prior art keywords
task
terminal device
model
sample
resource information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2022111567A
Other languages
English (en)
Other versions
JP2022137182A (ja
Inventor
ジー・リウ
チェンディ・ジョウ
ジュンチェン・ジア
デジン・ドウ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Publication of JP2022137182A publication Critical patent/JP2022137182A/ja
Application granted granted Critical
Publication of JP7389177B2 publication Critical patent/JP7389177B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • G06N3/0442Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/094Adversarial learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/098Distributed learning, e.g. federated learning
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本開示は、コンピュータ技術分野に関し、特に、ビッグデータ及び深層学習の分野に関する。
連合学習は新しい分散型学習メカニズムであり、分散型のデータと計算リソースを利用して機械学習モデルの協働トレーニングを行う。連合学習プロセスにおいて、サーバはトレーニングされるべきグローバルモデルを端末装置に配信するだけでよく、そして、端末装置は秘密データ、即ちローカルデータセットでモデルを更新し、端末装置は、更新を完了した後に、更新されたモデルパラメータをサーバにアップロードし、サーバは複数の端末装置がアップロードしたモデルパラメータを集約するだけで新しいグローバルモデルを得ることができ、グローバルモデルが予め設定された性能を満たすか、又は反復回数が予め設定された反復回数に達するまで、このように反復し、連合学習によってモデルをトレーニングすることはデータの共有によるプライバシーの漏洩を効果的に避けることができる。
本開示は、連合学習方法、装置、機器、及び記憶媒体を提供する。
本開示の第1態様によれば、連合学習方法であって、連合学習システムにおけるサーバに応用され、前記連合学習システムは前記サーバと複数の端末装置を含み、前記連合学習システムは複数のタスクを達成するために用いられ、前記方法は、前記連合学習システムにおける各タスクに対して、それぞれ、
複数の端末装置のリソース情報を取得するステップS1、
前記リソース情報を利用して、前記タスクに対応するターゲット端末装置を確定するステップS2、
前記ターゲット端末装置によって、前記タスクに対応するグローバルモデルを、前記グローバルモデルがプリセット条件を満たすまでトレーニングするステップS3を実行することを含む連合学習方法を提供する。
本開示の第2態様によれば、連合学習装置であって、連合学習システムにおけるサーバに応用され、前記連合学習システムは前記サーバと複数の端末装置を含み、前記連合学習システムは複数のタスクを達成するために用いられ、前記装置は、
複数の端末装置のリソース情報を取得するために用いられる第1取得モジュールと、
前記リソース情報を利用して、前記タスクに対応するターゲット端末装置を確定するために用いられる確定モジュールと、
前記ターゲット端末装置によって、前記タスクに対応するグローバルモデルを、前記グローバルモデルがプリセット条件を満たすまでトレーニングするために用いられるタスクトレーニングモジュールとを備える連合学習装置を提供する。
本開示の第3態様によれば、電子機器であって、
少なくとも1つのプロセッサ、及び
前記少なくとも1つのプロセッサに通信接続されるメモリを備え、
前記メモリには前記少なくとも1つのプロセッサによって実行可能な命令が記憶され、前記命令は前記少なくとも1つのプロセッサによって実行されることにより、前記少なくとも1つのプロセッサに第1態様に記載の方法を実行させる電子機器を提供する。
本開示の第4態様によれば、コンピュータに第1態様に記載の方法を実行させるためのコンピュータ命令が記憶された非一時的コンピュータ可読記憶媒体を提供する。
本開示の第5態様によれば、プロセッサによって実行されると、第1態様に記載の方法を実現するコンピュータプログラムを含むコンピュータプログラム製品を提供する。
本開示の実施例は、連合学習における複数のタスクが完了する総時間を短縮することができる。
理解すべきことは、この部分に説明される内容は、本開示の実施例の要点又は重要な特徴を特定することを意図しておらず、本開示の保護範囲を限定するためのものではないことである。本開示の他の特徴は、以下の明細書によって理解されやすくなる。
図面は、本方案をより良く理解するためのものであり、本開示に対する制限を構成しない。
本開示の実施例による連合学習方法の流れ図である。 本開示の実施例による連合学習方法の別の流れ図である。 本開示の実施例による強化学習モデルをトレーニングする流れ図である。 本開示の実施例による強化学習モデルをトレーニングする別の流れ図である。 本開示の実施例による連合学習方法の応用を示す図である。 本開示の実施例による連合学習装置の構成を示す図である。 本開示の実施例による連合学習装置の別の構成を示す図である。 本開示の実施例における連合学習装置における強化学習モデルをトレーニングする構成を示す図である。 本開示の実施例における連合学習装置における強化学習モデルをトレーニングする別の構成を示す図である。 本開示の実施例による連合学習方法を実現するための電子機器のブロック図である。
以下、図面に合わせて本開示の例示的な実施例を説明して、それに本開示の実施例における様々な詳細が含まれて理解を助けるためのものであり、それらは単なる例示的なものと考えられるべきである。従って、当業者であれば理解できるように、本開示の範囲及び精神から逸脱することなく、本明細書で説明される実施例に対して様々な変更及び修正を行うことができる。同様に、明瞭と簡潔のために、以下の説明では公知の機能及び構造についての説明を省略する。
連合学習の研究はますます注目されており、ここでは、連合学習効率の向上は連合学習研究の重要な面であるが、ほとんどの研究は単一タスクの場合にモデルが収束に達したときの性能を考慮しており、マルチタスクに関する連合学習の性能研究は少ない。連合学習システムにおいて複数の機械学習タスクをトレーニングする必要がある場合、全てのタスクのモデルがより迅速に収束に達するように、どのように各タスクにデバイスリソースを割り当てるかが研究の主要な問題となっている。
異なるデバイスに対し、例えばエッジデバイスの場合、エッジデバイスのグラフィックスプロセッサ(Graphics Processing Unit,GPU)、メモリ及び中央プロセッサ(Central Processing Unit,CPU)などのリソースは異なり、エッジデバイスが所有する連合学習タスクに必要なローカルデータも異種性を有する。そのため、連合学習タスクに、トレーニングに必要なデバイスを選択する場合、選択されるデバイスのリソース状況及びデータ分布はいずれもタスクの現在のトレーニング速度及びモデル精度の向上に影響する。
連合学習環境では、マルチサービスリソースのスケジューリングが検討されていることが多く、マルチタスク共有デバイスリソースのスケジューリング問題は考慮されていない。デバイスのリソースが限られるので、十分なリソースが同じ時間に複数のタスクを実行することを保証できないため、連合環境において、サービスリソースが十分であり、複数のタスクが全てのデバイスリソースを共有する時、各タスクの収束効率を向上させるために、どのように各タスクにデバイスをスケジューリングするかも考慮すべき問題である。
連合学習システムに複数の機械学習タスクが存在する場合、エッジデバイスリソースは共有され、各タスクのトレーニング効率を最適化するためには、タスクトレーニングをより効率的に達成するために、どのように各タスクにデバイスをより合理的に割り当てるかを考慮する必要がある。複数のタスクがシリアル方式でトレーニングされれば、即ち、次のタスクは現在のタスクのトレーニングを完了してからこそトレーニングを開始しなければならず、これはタスクの待ち時間を増加させ、トレーニング効率が非常に低い。従って、待ち時間を短縮する有効な方法の1つは、タスク間の並行であり、即ち、並行に基づいて、タスク全体の完了時間を最小にするために各タスクに対してデバイスをどのようにスケジューリングするかを考慮する必要がある。
単純なマルチタスク並行性のみを考慮すると、その効率は非常に低く、デバイスリソースは十分に利用されていない。単一の連合学習タスク効率を最適化する場合、全てのデバイスリソースは、各タスク間でデバイスリソースを合理的にスケジューリングする方法を考慮することなく、該タスクにサービスを提供するだけでよい。例えば、スケジューリングアルゴリズムFedCSでは、サーバは、タスクを素早く収束させるために、ラウンド毎に限られた時間内に単一のタスクのために可能な限り多くのデバイスを選択する。FedCSがタスク環境に直接応用される場合、タスクの総完了時間を減少させるが、サーバはデバイスを選択するたびに現在のタスクのみを考慮する。また、現在のスケジューリングスキームが他のタスクに与える影響を考慮することができず、収束時間を最小化するために各タスクに対してデバイスリソースをより合理的にスケジューリングする方法も考慮されていない。従って、マルチタスク連合学習の効率を最適化する際に、デバイスリソースを合理的且つ効率的にスケジューリングすることは、総完了時間に影響する重点である。
本開示の実施例によって提供される連合学習方法は、移動式エッジ計算、モノのインターネットクラウドサービスシナリオ等のような、一般的な分散型シナリオのシステムに応用することができる。ユーザのプライバシーを漏洩しない前提で、マルチタスク連合学習は、サービス側のためにより効率的でより便利なタスクモデルトレーニングを提供することができる。
以下、本開示の実施例が提供するマルチタスクの連合学習方法について詳細に説明する。
本開示の実施例は連合学習方法を提供し、連合学習システムにおけるサーバに応用され、連合学習システムはサーバ及び複数の端末装置を含み、連合学習システムは複数のタスクを達成するために用いられ、図1に示すように、該方法は、
連邦学習システムにおける各タスクに対して、それぞれ、
複数の端末装置のリソース情報を取得するステップS1、
リソース情報を利用して、タスクに対応するターゲット端末装置を確定するステップS2、
ターゲット端末装置によって、グローバルモデルがプリセット条件を満たすまで、タスクに対応するグローバルモデルをトレーニングするステップS3を実行することを含む。
本開示の実施例において、端末装置のリソース情報に基づいてターゲット端末装置を確定してタスクを完成する、即ち端末装置のリソース情報に基づいて連合学習における複数のタスクにデバイスをスケジューリングし、複数のタスクは複数の端末装置のリソースを効果的に利用し、連合学習における複数のタスクが完成する総時間を短縮する。
本開示の実施例により提供される連合学習方法は、サーバと複数の端末装置とを含む連合学習システムにおけるサーバに応用することができ、連合学習システムは複数のタスクを完了するために使用される。
各タスクは複数の端末装置を共有し、各端末装置には各タスクに対応するグローバルモデルをトレーニングするためのローカルデータが存在することが理解できる。
連合学習における複数のタスクは、画像分類、音声認識、テキスト生成などのタスクを含むことができる。画像分類のタスクは画像分類のためのモデルを学習すること、音声認識は音声認識のためのモデルを学習すること、テキスト生成のタスクはテキスト生成のためのモデルを学習することと理解できる。
連合学習システムにおける各タスクについて、図1を参照して、以下のステップを実行することができる。
S1、複数の端末装置のリソース情報を取得する。
S2、リソース情報を利用して、タスクに対応するターゲット端末装置を確定する。
各端末装置について、該端末装置のリソース情報は、メモリ、CPU情報、GPU情報及びローカルデータのサイズなどの少なくとも1つを含む。
サーバは、各端末装置にリソース情報要求を送信することができ、端末装置は、サーバから送信されたリソース情報要求を受信すると、自身のリソース情報をサーバに返信する。
1つの実現可能な方式において、サーバはまず端末装置が利用可能か否かを判断し、他のサービスに占有されていない場合、端末装置が利用可能であれば、端末装置にリソース情報要求を送信する。
サーバは、複数の端末装置のリソース情報を利用して、各端末装置をそれぞれのタスクにスケジューリングすることができ、即ち、各タスクのために対応する端末装置をそれぞれ特定することができる。
サーバは、各端末装置のリソース情報を一度に取得することができ、各タスクに対してリソース情報を利用してターゲットリソースデバイスを特定する過程において、異なるスレッド又はサービスプログラムによって端末装置のリソース情報を呼び出して各タスクに対してターゲット端末装置を特定してもよい。
或いは、サーバは、まず、各タスクにスレッド又はサービスプログラムを割り当て、各タスクに対応するスレッド又はサービスプログラムはいずれも、端末装置にリソース情報要求を送信し、端末装置は、リソース情報要求を受信すると、各スレッド又はサービスプログラムに自身のリソース情報を返信して、各タスクに対応するスレッド又はサービスプログラムは、取得した端末装置のリソース情報をそれぞれ利用して該タスクに対応するターゲット端末装置を特定してもよい。
S3、ターゲット端末装置によって、グローバルモデルがプリセット条件を満たすまで、タスクに対応するグローバルモデルをトレーニングする。
サーバはタスクに対応するグローバルモデルをタスクに対応するターゲット端末装置に配信し、各ターゲット端末装置はグローバルモデルをトレーニングしてモデルパラメータを得て、且つ得られたモデルパラメータをサーバにそれぞれアップロードする。サーバは各ターゲット端末装置から返信されたモデルパラメータを受信する。各ターゲット端末装置から返信されたモデルパラメータを集約して、更新されたグローバルモデルを得る。そして、更新されたグローバルモデルがプリセット条件を満たすか否かを判断し、プリセット条件を満たす場合、反復を終了し、該タスクは完了する。プリセット条件を満たさない場合、更新されたグローバルモデルをターゲット端末装置に継続して配信し、各ターゲット端末装置は、更新されたグローバルモデルがプリセット条件を満たすまで、更新されたグローバルモデルをトレーニングし続ける。ここで、プリセット条件は、予め設定された性能であってもよく、例えば、損失関数が収束し、損失関数精度が予め設定された精度値、例えば、0.9などに達することであってもよい。異なるタスクに対応するグローバルモデルが満たす必要があるプリセット条件は、異なっていてもよい。
一般的に言えば、タスクを完了するために複数の反復過程が必要とされる。即ち、ターゲット端末装置は複数回のトレーニングによって、トレーニングによって得られたモデルパラメータをサーバにアップロードし、サーバは複数のターゲット端末装置のモデルパラメータを集約してからこそ、タスクに対応するグローバルモデルがプリセット条件を満たすことができる。
選択可能な一実施例では、端末装置のリソース及び状態は動的に変化し、例えば、端末装置は現在の時点でアイドル又は利用可能であるが、一定時間後に利用できない可能性があり、又は、端末装置は現在の時点でリソースが全てアイドルであるが、一定時間後に部分的に占有されるなどして、そのため、タスクを完了する過程において、毎回の反復は、タスクに対応するグローバルモデルをトレーニングするためのターゲット端末装置を再確定するために、現在の端末装置のリソース情報を再取得する必要がある。
図2に示すように、グローバルモデルがプリセット条件を満たすまで、ターゲット端末装置によってタスクに対応するグローバルモデルをトレーニングすることは、以下を含むことができる。
S31、タスクに対応するグローバルモデルをタスクに対応するターゲット端末装置に配信して、各ターゲット端末装置にグローバルモデルをトレーニングさせ、モデルパラメータを得る。
S32、各ターゲット端末装置から返信されたモデルパラメータを受信する。各ターゲット端末装置から返信されたモデルパラメータを集約して、更新されたグローバルモデルを得て、
グローバルモデルがプリセット条件を満たしていないことに応答して、S1に戻り、S1、S2、S31、及びS32を、グローバルモデルがプリセット条件を満たすまで継続して実行する。
具体的には、連合学習システムにおける各タスクについて、以下のステップをそれぞれ実行する。
S1、複数の端末装置のリソース情報を取得する。
S2、リソース情報を利用して、タスクに対応するターゲット端末装置を確定する。
ターゲット端末装置によって、グローバルモデルがプリセット条件を満たすまで、タスクに対応するグローバルモデルをトレーニングする。
S31、タスクに対応するグローバルモデルをタスクに対応するターゲット端末装置に配信して、各ターゲット端末装置にグローバルモデルをトレーニングさせ、モデルパラメータを得る。
S32、各ターゲット端末装置から返信されたモデルパラメータを受信し、各ターゲット端末装置から返信されたモデルパラメータを集約して、更新されたグローバルモデルを得る。
グローバルモデルがプリセット条件を満たしていないことに応答して、S1に戻り、S1、S2、S31、及びS32を、グローバルモデルがプリセット条件を満たすまで継続して実行する。
このように、端末装置のリソースと状態の動的変化を考慮することができ、反復過程ごとにいずれも端末装置のリソース情報に基づいてターゲット端末装置を再確定し、反復過程ごとに、再確定したターゲット端末装置によってグローバルモデルをトレーニングし、このように、端末装置リソースの使用状況などを十分に考慮することができ、リソース情報をより合理的に利用することができ、モデルトレーニングの効率を向上させ、更にタスクの完了時間を短縮することができる。また、各タスクが並行して実行され、互いに待たず、各タスクのトレーニング効率が一致しない可能性があるため、各タスクが並行して実行されることにより、タスク間の待ち時間を短縮し、タスクのトレーニング効率を向上させることができる。
選択可能な一実施例では、タスクに対応するグローバルモデルをタスクに対応するターゲット端末装置に配信すると同時に、各ターゲット端末装置に反復回数を配信して、各ターゲット端末装置にグローバルモデルをトレーニングさせる過程において反復回数反復する。
ここで、反復回数は、サーバが端末装置のリソース情報に基づいて確定されるものである。
端末装置はグローバルモデルと反復回数を受信した後、ローカルデータを利用してグローバルモデルをトレーニングし、且つトレーニング過程中に該反復回数を反復した後にトレーニングを終了し、モデルパラメータを得る。
異なる端末装置のリソースとローカルデータ分布の違いにより、サーバは端末装置のリソース情報に基づいて、選択されたデバイス、即ちターゲット端末装置に対して、ローカル更新の反復回数を指定してグローバルモデルをより速く収束させ、更にタスクを完了する時間を短縮することができる。具体的には、サーバは、端末装置の計算能力に応じて、異なる端末装置に反復回数を確定することができる。
選択可能な一実施例では、リソース情報を使用して、タスクに対応するターゲット端末装置を確定することは、
リソース情報を予めトレーニングされた強化学習モデルに入力し、強化学習モデルによりタスクに対応するターゲット端末装置を得ることを含む。
ここでは、強化学習モデルは、複数のサンプルタスクが使用可能なサンプル端末装置セットと、各サンプル端末装置のリソース情報と、サンプルタスクの特性情報とを環境状態として、サンプル端末装置がサンプルタスクを完了する時間と、サンプルタスクを完了するのに必要なデータのサンプル端末装置における分布とに基づいて確定される報酬関数に基づいて学習して得られるものである。
1つの実現可能な方式では、強化学習モデルは、各タスクに対応するターゲット端末装置を直接出力することができる。
別の実現可能な方式では、強化学習モデルは、各タスクが端末装置にそれぞれ対応する確率を出力し、各タスクについて、該タスクが各端末装置に対応する確率に応じて各端末装置をソーティングしてもよく、例えば、高いものから低いものへ、又は低いものから高いものへの順でソーティングし、高いものから低いものへの順でソーティングすれば、前にソーティングした予め設定された数の端末装置を該タスクが対応するターゲット端末装置として選択し、低いものから高いものへの順でソーティングすれば、後ろにソーティングした予め設定された数の端末装置を該タスクが対応するターゲット端末装置として選択してもよい。
このようにして、予めトレーニングされた強化学習モデルに基づいてターゲット端末装置を得ることができ、ターゲット端末装置を確定する時間を短縮することができる。強化学習モデルは、複数のサンプルタスクが使用可能なサンプル端末装置セットと、各サンプル端末装置のリソース情報と、サンプルタスクの特性情報とを環境状態として報酬関数に基づいて学習して得られるものであり、報酬関数は、サンプル端末装置がサンプルタスクを完了する時間と、前記サンプルタスクを完了するのに必要なデータのサンプル端末装置における分布とに基づいて確定されるものであり、確定されたターゲット端末装置とタスクとの整合度を向上させることができ、各タスクに端末装置をより合理的にスケジューリングし、各タスクにデバイスリソースを十分に利用させ、全てのタスクが完了する総時間を短縮する。
1つの実現可能な方式において、トレーニングして強化学習モデルを得る過程は、図3に示すように、以下を含むことができる。
S11、サンプルタスクの特性情報を取得する。
特性情報は、サンプルタスクを完了するのに必要なデータのタイプ、サイズなどであってもよい。
S12、サンプルタスクが使用可能なサンプル端末装置セット、及びサンプル端末装置セットの各サンプル端末装置のリソース情報を取得する。
S13、サンプル端末装置セット、及び各サンプル端末装置のリソース情報及びサンプルタスクの特性情報をモデルに入力する。
該モデルは、例えば、長短期記憶ネットワーク(Long Short-Term Memory,LSTM)のような深層学習ネットワークであってもよい。
S14、各サンプル端末装置のリソース情報及びサンプルタスクの特性情報に基づいて、モデルにより、サンプル端末装置セットからサンプルタスクに対応するスケジューリングデバイスを選択する。
各サンプル端末装置のリソース情報及びサンプルタスクの特性情報に基づいて、モデルによって、サンプルタスクがそれぞれ、各サンプル端末装置に対応する確率を得る。確率によって各サンプル端末装置をソーティングし、ソーティング結果に基づいて、予め設定された数のサンプル端末装置を、サンプルタスクに対応するスケジューリングデバイスとして選択する。
確率の高いものから低いものへの順で端末装置をソーティングしてもよく、又は低いものから高いものへの順で端末装置をソーティングしてもよい。
サンプル端末装置を確率の高いものから低いものへの順でソーティングし、得られたソーティング結果が確率の高いものから低いものへの順でソーティングされた複数のサンプル端末装置であれば、前にソーティングした予め設定された数のサンプル端末装置をサンプルタスクに対応するスケジューリングデバイスとして選択することができる。
サンプル端末装置を確率の低いものから高いものへの順でソーティングし、得られたソーティング結果が確率の高いものから低いものへの順でソーティングされた複数のサンプル端末装置であれば、後ろにソーティングした予め設定された数のサンプル端末装置をサンプルタスクに対応するスケジューリングデバイスとして選択することができる。
ここで、予め設定された数は、例えば、10個、5個など、実際の需要又は経験値に基づいて確定することができる。
このようにして、モデルによって、サンプルタスクがそれぞれ各サンプル端末装置に対応する確率を得ることができる。そして、確率に応じてサンプル端末装置をサンプルタスクに対応するスケジューリングデバイスとして選択する。確率は、モデルが環境状態、即ちタスクの特性情報と端末装置のリソース新情報を根拠とし、即ちモデルのトレーニング過程でタスクの特性情報と端末装置のリソース新情報を考慮することであり、これにより、より合理的にタスクのためにデバイスをスケジューリングし、トレーニングのレートを向上させることができる。また、トレーニングによって得られたモデルがより正確にタスクのためにターゲット端末装置を確定することができる。
S15、スケジューリングデバイスを利用してサンプルタスクを実行し、且つ報酬関数によってスケジューリングデバイスがサンプルタスクを実行することに対応する報酬値を計算する。
報酬関数は、スケジューリングデバイスがグローバルモデルをトレーニングする時間に基づいて確定することができる。
1つの実現可能な方式において、報酬関数は、
Figure 0007389177000001
であり、ここでは、t cmは計算時間を表し、t cpは通信時間を表し、λは重みを表し、sはデバイスセットを表し、即ち選択されたスケジューリングデバイスであり、g(s)はスケジューリングデバイスがトレーニングに参与するデータの変動情報を示す。
S16、報酬値に基づいてモデルに対応するモデルパラメータを調整し、更新されたモデルを得る。
更新されたモデルが反復終了条件を満たしていなければ、S12に戻り、更新されたモデルで上記モデルを置き換え、更新されたモデルが反復終了条件を満たすまでS12からS16を繰り返し実行して、トレーニング済み強化学習モデルを得る。
報酬関数を使用して報酬値を計算し、強化学習を使用してモデルをトレーニングする。簡単に理解できるように、環境状態に基づいてモデルによってサンプル端末装置セットからスケジューリングデバイスを絶えず選択し、選択されたスケジューリングデバイスの計算報酬値を計算し、報酬値に基づいてモデルパラメータを調整し、このようにモデルを絶えず最適化し、より高い報酬値を絶えず取得し、又は、より高い報酬を取得すると理解してもよく、モデルが例えば報酬値が収束し又は反復回数が予め設定された閾値に達するような反復終了条件を満たすまでに最適化する。
図4に示すように、各サンプル端末装置のリソース情報及びサンプルタスクの特性情報を環境状態Sとし、モデルに入力し、例えばLSTMとすることができ、続いて該LSTMによってスケジューリングスキームを確定し、スケジューリングスキームaを採用し、スケジューリングスキームは、複数のスケジューリングデバイスとして理解することができる。次に、該スケジューリングスキームaを実行し、該スケジューリングスキームaの実行に対応する報酬値rを計算し、rを用いてLSTMのモデルパラメータを調整し、環境状態を再取得し、パラメータを調整したLSTM、即ち更新されたモデルに基づいてスケジューリングスキームを再選択し、更新されたモデルが反復終了条件を満たすまで報酬値が絶えず増大するように、このように反復する。ここでは、各利用可能端末装置でのタスクの確率は、LSTMによって環境状態に基づいて得られ、具体的には、LSTMによって環境状態に基づいてスケジューリングスキームを選択することは、LSTMが環境状態に基づいてタスクがサンプル端末装置に対応する確率を確定し、確率によってソーティングして、確率が高い予め設定された数のサンプル端末装置をスケジューリングスキームaとして選択することであってもよい。高いものから低いものへ、又は低いものから高いものへの順で各サンプル端末装置をソーティングしていてもよく、これに対応して、前にソーティングした、又は後ろにソーティングした予め設定された数のサンプル端末装置を選択してもよい。
例えば、連合学習の全てのタスクのモデルの特徴、現在のタスクmが環境で利用可能なデバイス、タスク番号m、及びタスクトレーニングデータのサイズなどが環境状態としてLSTMに入力され、続いて現在のタスクの、各利用可能なデバイスでの確率が得られ、最終的に確率の最も大きい一部のデバイスが現在のタスクのスケジューリングスキームsとして選択される。次いで、環境状態が更新され、上述の報酬関数によって選択されたスケジューリングスキームの報酬rを計算し、rをLSTMネットワークにフィードバックして学習して、次回により高い報酬を得て、反復が終了するまで上述のプロセスを繰り返す。
選択可能な一実施例では、動作値関数QのニューラルネットワークLSTMを、予めトレーニングされたスケジューリングモデルを用いて初期化することができる。続いて、現在はトレーニングモードであるか否かを判断し、もしトレーニングモードであれば、図4に示すプロセスを参照して、図3の実施例のステップにより、トレーニングを行って強化学習モデルを得る。トレーニングモードでなければ、トレーニング済み強化学習モデルを直接呼び出してタスクに対応する各端末装置の確率を確定し、更に確率に基づいてタスクに対応するターゲット端末装置を確定することができる。
具体的な例では、連合学習環境は1台のサーバとK個の端末装置で構成されるとし、ここでは、デバイスインデックスは
Figure 0007389177000002
である。それらは共同でM個の異なるタスクのモデルトレーニングに参与し、ここではタスクのインデックスは
Figure 0007389177000003
である。各端末装置はいずれもM個のタスクのローカルデータセットを有し、ここでは、デバイスkにおける第m個のタスクのローカルデータセットは
Figure 0007389177000004
と表し、
Figure 0007389177000005
はデータのサンプル数であり、xk,d は端末装置kにおける第m個のタスクの第d個のs次元の入力データベクトルであり、yk,d はxk,d のラベルである。そのため、タスクmの全データセットは
Figure 0007389177000006
と表してよく、そのサンプル数は
Figure 0007389177000007
である。
各端末装置は全てのタスクのデータセットを有し、マルチタスク連合学習は、異なるタスクの損失関数によって、対応するデータセットからそれぞれのモデルパラメータwを学習するものである。マルチタスク連合学習のグローバル学習問題は以下の式で表すことができる。
Figure 0007389177000008
ここでは、
Figure 0007389177000009
は全てのタスクのモデル重みの集合であり、
Figure 0007389177000010
はWを全てのタスクのモデル重みを含む集合として定義でき、
Figure 0007389177000011
は、第m個のタスクの入出力データペア
Figure 0007389177000012
のモデルパラメータωでのモデル損失である。
端末装置がグローバルモデルを受信した後、端末装置が1ラウンドのグローバルトレーニングを完了するのに要する時間は主に計算時間tk,m cpと通信時間tk,m cmによって確定される。任意のタスクに対し、グローバルトレーニングの各ラウンドに必要な時間は、選択された最も遅い速度の端末装置によって確定される。端末装置とサーバとの通信が並行していると仮定すると、1ラウンドのグローバルトレーニングに必要な総時間は以下のとおりである。
Figure 0007389177000013
マルチタスク学習の効率を向上させるために、デバイスリソースが限られている場合、主にタスク間デバイスリソースの利用を最適化することによって全てのタスクの全体的なトレーニング効率を向上させるため、マルチタスクの効率最適化問題は以下のとおりである。
Figure 0007389177000014
ここでは、βはタスクmの収束曲線のパラメータを表し、lはタスクmの予期損失値又は収束に達する損失値であり、Rは予期損失lを実現するのに必要なラウンド数である。
異なるタスクに対して、同一端末装置のローカルデータのサイズとグローバルモデルの複雑さが異なるため、同一端末装置が異なるタスクの更新を完了するのに要する時間も異なる。ローカルモデルの更新に必要な時間のランダム性を説明するために、端末装置が更新を完了するのに必要な時間が変位指数分布に従うと仮定する。
Figure 0007389177000015
ここでは、パラメータa>0とμ>0は端末装置kの計算能力の最大値と変動値である。サーバの計算能力が強く、タスクのモデル複雑度が低いため、サーバがモデル集約を行う計算時間、即ちサーバが複数の端末装置から返信されたモデルパラメータを受信した後に複数のモデルパラメータを集約する時間を無視することができる。
マルチタスク連合学習が解決する核心問題はマルチタスクトレーニングの効率問題であり、即ち前記マルチタスクの効率最適化問題であり、この問題を解決するために、本開示の実施例は深層強化学習に基づくデバイスリソーススケジューリングアルゴリズムを提供し、以下に具体的に説明する。
アイドルの端末装置のリソース情報を受信すると、サーバはリソーススケジューリングアルゴリズムを開始し、受信した端末装置のリソース情報に基づいて現在のタスクに必要なデバイスをスケジューリングする。また、各タスクのトレーニングラウンド数は一致する必要はなく、タスク間でも互いに待つ必要はない。一般に、ローカルモデルの収束精度は上記の式
Figure 0007389177000016
のように与えられ、収束に必要なトレーニングラウンド数もほぼ決まっている。
理想的には、即ち、全ての端末装置のリソース及び状態は不変のままであり、サーバは、全ての端末装置のリソース情報に基づいて、全てのラウンドのトレーニングを完了するのに必要な端末装置を各タスクに一度スケジューリングすることができる。しかしながら、いくつかの用途では、例えばエッジ計算環境では、エッジデバイスのリソース及び状態が変化する可能性がある。例えば、端末装置は現在アイドルであり、利用可能であるが、一定の時間後、デバイスはビジーであり且つ利用不可能であるか、又はリソースの一部が占有されている可能性がある。従って、全てのデバイススケジューリングを一度に完成させることは現実的ではなく、本開示の実施例は貪欲アルゴリズムの思想を採用し、近似解を得る。サーバは、全ての利用可能な端末装置の現在のデバイス情報に基づいて、トレーニングされるべきタスクのために現在ラウンドに必要なターゲット端末装置をスケーリングし、現在の時間ノードで、全てのタスクに必要なトレーニング時間が最短であることを確保する。即ち、各タスクは、各ラウンドのトレーニング中に端末装置をスケジューリングするようにサーバに要求する。
端末装置のスケジューリング過程において、端末装置が参与する公平性とトレーニングに参与するデータ分布の均衡性は収束速度に影響する重要な要素である。トレーニングが速い端末装置が過度に選択された場合、各ラウンドのトレーニング速度を加速することは可能であるが、グローバルモデルのトレーニングを端末装置の小部分に集中させ、最終的にはタスクの収束精度を低下させる。本開示の実施例の最終的な目的は、モデルの正確性を保証しながら、全てのタスクを素早く収束させること、即ち全てのタスクが完了する総時間を最小化することである。従って、端末装置スケジューリングは、可能な限りデバイス参与の公平性を確保することを前提として行われる。まず、端末装置の参与の公平性を可能な限り確保し、いくつかの端末装置がトレーニングに過度に参与することを防止し、スケジューリング過程においてより高速なデバイスを選択することを回避するために、タスクごとにハイパーパラメータNを導入する。いずれのタスクに対しても、同一デバイスの参与頻度はNを超えず、これは、タスク精度を確保することを前提として、各タスクの収束速度を向上させることを確保する。
トレーニングに参与するデータの均衡性について、データ均衡性化を、スケジューリングアルゴリズムの最適化ターゲットの一部とする。同時に、貪欲アルゴリズムを採用した後、リソーススケジューリングアルゴリズムの最適化問題を書き換える必要がある。サーバが第rラウンドのトレーニングにおいて、現在タスクjにスケジューリングするデバイスセットをsとする。タスクjのトレーニングに必要な全てのローカルデータは合計L類に分けられ、サイズがLのセットQが存在し、ここでは
Figure 0007389177000017
である。第r+1ラウンドの前にトレーニングに参与する全てのデバイスのデータをカテゴリ別に集計し、結果をセットQに入れる。従って、トレーニングに参与している全ての現在のデータのカテゴリ別の変動程度は、以下の式に従って測ることができる。
Figure 0007389177000018
モデルトレーニングに参与するデータが均衡すればするほど、モデル収束が早く安定的である。そのため、スケジューリングアルゴリズムはタスクjが第rラウンドにデバイスをスケジューリングする時に解決される問題は以下のように表すことができる。
Figure 0007389177000019
該最適化ターゲットは、上述したマルチタスクの効率最適化問題におけるマルチターゲット最適化問題と比較して、容易に解くことができる。しかしながら、該最適化ターゲットは、依然として解決困難な組み合わせ最適化問題である。可能なリソーススケジューリングスキームの規模が非常に大きいため、最適スケジューリングスキームを探索する強引な力は「組み合わせの爆発」を引き起こしてしまい、探索の時間の複雑度
Figure 0007389177000020
が非常に高くて完成できない。従って、本開示の実施例は、強化学習のスケジューリングアルゴリズムに基づいて最適スケジューリングスキームを解くことを提案する。深層強化学習スケジューリングポリシーによって採用された各動作によって与えられた報酬は、次式によって表される。
Figure 0007389177000021
このスケジューリングポリシーの中で、LSTMと強化学習を採用して自主的にアルゴリズムに自律にデバイススケジューリングを学習させ、該アルゴリズムは深層強化学習スケジューリングスキームの学習過程及びスケジューリング過程を実現し、全てのタスクの特徴及び現在のタスクのトレーニングパラメータに基づいて現在のタスクのためにスケジューリングスキームを選択することができ、スケジューリング終了後もスケジューリングネットワークをトレーニングし続けてスケジューリングネットワークをより賢明にすることができる。
トレーニングにより強化学習モデルを得た後、該強化学習モデルを利用してデバイスをスケジューリングすることができ、即ちマルチタスクの連合学習システムにおけるタスクを実現するためにターゲット端末装置を確定することである。
連合学習がタスクを実行する過程に、該強化学習モデルを、タスクのためにターゲット端末装置を確定するために呼び出してもよい。具体的には、各タスクに対して、各反復過程においていずれも該強化学習モデルを呼び出して、その反復に対応するターゲット端末装置を確定し、更に該反復過程において該対応するターゲット端末装置を使用してタスクに対応するグローバルモデルをトレーニングすることができる。一回の反復過程とは、サーバが選択された端末装置にグローバルモデルを配信し、選択された各端末装置がローカルデータを利用してグローバルモデルをトレーニングし、モデルを取得し、モデルパラメータをサーバにアップロードし、サーバが各モデルパラメータを集約して新しいグローバルモデルを取得するプロセスを指す。
図5を参照すると、サーバ側で、マルチタスクデバイスリソースのスケジューリング及びタスクモデルの配布及び集約を行う。デバイス側でデバイスの計算能力によって異なるデバイスにローカル反復回数を指定しローカル更新を行い、具体的に以下のステップを含む。
ステップA1、サーバは、まず、タスクごとにランダムに1つの初期モデルを作成するか、又は公共データを使用して事前トレーニングを行う。
即ち、各タスクがそれぞれ対応するグローバルモデルを初期化する。
ステップA2、サーバは各タスクに対してサービスプログラムを作成し、連合学習環境における全てのタスクを並行して実行させ、作成完了後に各タスクは全てのデバイスにリソース情報要求を送信することができる。
各タスクに対応するサービスプログラムは、まず端末装置が空いているか否かを判断し、端末装置が空いている場合には、空いているリソースデバイスのリソース情報を取得するために、端末装置にリソース情報要求を送信するようにしてもよい。
ステップA3、端末装置は異なるタスクからのリソース要求を受信し、デバイスは対応するタスクに自身のデバイスリソース情報を返信し、該リソース情報はメモリ、CPU情報、GPU情報及びローカルデータのサイズなどを含むことができる。
ここで、サーバはクラウドサーバであってもよく、端末装置はエッジ応用環境におけるエッジデバイスであってもよい。
ステップA4、タスクのサービスプログラムは異なるデバイスのリソース情報を受信した後、サーバのスケジューリングポリシーによって現在のタスクに対して現在のラウンドのトレーニングに必要なデバイスをスケジューリングする。
具体的には、サービスに対応するサービスプログラムは、上述したトレーニング済み強化学習モデルを呼び出すことができ、強化学習モデルによって各タスクが端末装置にそれぞれ対応する確率を出力し、各タスクについて、該タスクが各端末装置に対応する確率に応じて、各端末装置をソーティングしてもよく、例えば、高いものから低いものへ、又は低いものから高いものへの順でソーティングし、高いものから低いものへの順でソーティングすれば、前にソーティングした予め設定された数の端末装置を該タスクが対応するターゲット端末装置として選択し、低いものから高いものへの順でソーティングすれば、後ろにソーティングした予め設定された数の端末装置を該端末装置が対応するターゲット端末装置として選択してもよい。
ステップA5、サーバにおけるサービスプログラムは、現在のタスクのグローバルモデルと、異なるデバイスのローカル更新の反復回数とをステップA4で選択されたデバイス、即ち現在の端末装置に配信する。
ステップA6、選択されたデバイスは、ローカルデータを使用して、サーバからダウンロードされた現在のタスクのグローバルモデルを更新し、トレーニング完了後に、得られたモデルパラメータをサーバにアップロードする。
ステップA7、サーバは、対応するタスクの全ての選択されたデバイスの更新を受信した後、更新されたモデルパラメータを平均化し、該タスクの新しいグローバルモデルを得る。
ステップA8、全てのタスクのグローバルモデルが所望の性能を達成するまで、初期化以外の全てのステップを反復する。
マルチタスクリソーススケジューリングステップにおいて、サーバは取得した全てのデバイスリソース情報に基づいて、深層強化学習に基づくデバイススケジューリングアルゴリズムを実行し、即ちトレーニング済みの強化学習モデルを呼び出して現在のタスクに対して効率的なスケジューリングスキームを自動的に生成して現在のラウンドのグローバルトレーニングを完成し、ここではラウンドごとのスケジューリングスキームに含まれるデバイスの数は固定的ではなく、スケジューリングアルゴリズムは自己学習によって確定される。次いで、サーバは、現在のタスクの最新のグローバルモデル及び異なるデバイス更新モデルに必要なローカル反復回数をステップ4で選択されたデバイスに送信し、選択されたデバイスは、ローカルデータを使用して受信されたグローバルモデルを更新する。これらのデバイスのリソース及びローカルデータ分布の違いにより、サーバはデバイスのリソース情報に基づいて、選択されたデバイスに対してローカル更新の反復回数を指定して、グローバルモデルをより迅速に収束させる必要がある。最後に、サーバは、新しいグローバルモデルを得るために、現在のタスクの全ての選択されたデバイスの更新を集約し、これにより、1ラウンドのトレーニングが完了する。このプロセスでは、複数のタスクが互いに待つことなく並行に実行され、各タスクは、グローバルモデルが期待される性能又は収束に達する前に、初期化ステップ以外の全ての上述のステップを繰り返す。
本開示の実施例では、強化学習モデルを事前にトレーニングし、モデルをトレーニングした後、モデルを調整しなくてもよく、このようなモードを静的スケジューリングモードと呼ぶことができる。或いは、強化学習モデルをスケジューリングしながらトレーニングすることができ、具体的には、強化学習モデルをトレーニングした後、該強化学習モデルを使用してデバイスをスケジューリングした後、強化学習モデルを再更新することができ、このモードを動的スケジューリングモードと呼ぶことができる。
選択可能な実施例では、タスクに対応するターゲット端末装置を確定した後に、
各前記タスクの特性情報、複数の端末装置のリソース情報及び複数の端末装置からなるデバイスセットを強化学習モデルの環境状態とし、且つ奨励関数に基づいて強化学習モデルを更新することと、
グローバルモデルがプリセット条件を満たしていないことに応答して、S1に戻り、S1、S2、S31、S32を継続して実行し、リソース情報を利用して、タスクに対応するターゲット端末装置を確定することとを更に含むことができる。
リソース情報を利用して、タスクに対応するターゲット端末装置を確定することは、リソース情報を更新された強化学習モデルに入力し、更新された強化学習モデルによってタスクに対応するターゲット端末装置を得ることを含む。
即ち、動的スケジューリングモデルを用いて、具体的には、強化学習モデルを用いてタスクの一回の反復過程でデバイスをスケジューリングした後、即ちタスクに対応する端末装置を確定した後、強化学習モデルを継続的にトレーニングしてもよいし、強化学習モデルを更新すると理解されてもよく、具体的には、更新過程が上記強化学習モデルのトレーニング過程と類似しており、相違点として、スケジューリング過程において強化学習モデルを更新する過程で使用される環境状態は、連合学習システムにおいてトレーニングされるべき複数のタスクの特性情報と、連合学習システムにおける複数の端末装置のリソース情報であり、スケジューリングされるのは連合学習システムにおけるこれらの端末装置である。
このように、現在完了すべきタスクの情報と、タスクを完了するために使用されている現在の端末装置のリソース情報とに基づいて強化学習モデルを絶えず更新することができ、モデルの性能を向上させることができる。
各端末装置はそれぞれのタスクに対応するグローバルモデルをトレーニングするためのローカルデータを有し、トレーニングの速いデバイスを過度に選択すれば、あるラウンドのトレーニング速度を加速することができるにもかかわらず、グローバルモデルのトレーニングを小部分のデバイスに集中させ、最終的にタスクの収束精度を低下させる。本開示の実施例の最終的な目的は、モデルの正確性を確保しつつ、全ての連合学習タスクを迅速に収束させることである。従って、デバイススケジューリングは、可能な限りデバイス参与の公平性を確保することを前提として行われる。第1に、デバイスの参与の公平性を可能な限り確保するために、いくつかのエッジデバイスがトレーニングに過度に参与することを防止し、スケジューリング過程においてより高速な装置を選択することを回避するために、タスクごとにハイパーパラメータNを導入する。いずれのタスクに対しても、同一デバイスの参与頻度はNを超えない。これは、タスク精度を確保することを前提として、タスクごとの収束速度を向上させる。
選択可能な実施例では、複数の端末装置のリソース情報を取得することは、
各端末装置に対して、端末装置がタスクのトレーニングに参与する参与頻度を確定することと、参与頻度が予め設定された参与頻度閾値より小さいことに応答して、端末装置をタスクに対応する利用可能な端末装置とすることと、利用可能な端末装置のリソース情報を取得することを含む。
参与頻度は、タスクがそのタスクに対応するグローバルモデルのトレーニングに参与する参与回数として理解することができる。端末装置は1つのパラメータ頻度としてのパラメータを設定することができ、サーバから送信されたグローバルモデルを受信し、ローカルデータを利用してグローバルモデルのモデルパラメータを取得し、そのモデルパラメータをサーバにアップロードした後、そのパラメータを1増加させる。
タスクのためにデバイスをスケジューリングする過程において、端末装置が該タスクに参加する参与頻度が参与頻度閾値以上であれば、該タスクのために端末装置を再度スケーリングすることを考慮せず、参与頻度が予め設定された参与頻度閾値より小さい場合のみ、該端末装置を、選択されるべき端末装置としてサーバに提供してスケジューリングする。
このようにして、トレーニング精度を向上させた上で収束速度を向上させ、つまりタスク完了時間を小さくし、合理的にデバイスをスケジューリングすることができる。
静的スケジューリングモードに対して、本開示の実施例は、連合学習方式を提供する。具体的には、以下のステップを含むことができる。
ステップB1、タスクmの利用不可なデバイスセットH及びデバイスがタスクmのトレーニングに参与する頻度F を初期化する。
ステップB2、利用不可なデバイスセットH中のデバイス数は全デバイス数
Figure 0007389177000022
Figure 0007389177000023
を超える場合、Hを空にし、頻度F をクリアする。そうでなければステップB3に進む。
利用不可なデバイスセットを確定する際に参与頻度の制限パラメータNm、即ち、参与頻度閾値を導入することができる。
がNより大きければ、タスクmに対し、該端末装置は、利用不可なデバイスセットにおける端末装置と理解されることができる。
ステップB3、利用不可なデバイスセットH中のデバイスを利用可能なデバイスセットΘ から除去する。
ステップB4、タスクmの利用可能なデバイスセットΘ 、タスク番号mをパラメータとして上記強化学習モデルを呼び出して、現在のトレーニングに必要なデバイスセットs をスケジューリングする。
このとき、非トレーニングモード、即ち強化学習モデルのトレーニング完了後は更新されず、スケジューリング過程では該強化学習モデルを調整しないことを理解できる。
ステップB5、デバイスセットs におけるデバイスがタスクmのトレーニングに参加する頻度F を統計する。
ステップB6、タスクmのスケジューリングデバイスセットs を返す。
静的スケジューリングモードでは、事前トレーニング済みの強化学習モデルを、連合学習環境に直接ロードして、現在のラウンドのトレーニングに必要なデバイスを各タスクのためにスケジューリングし、その後、このモデルはトレーニングされなくなる。また、デバイス参与の公平性のために、一部のデバイスの過度参与によるタスクモデルの過度フィッティングを防止し、タスクモデルの収束速度を向上させるために、各タスクデバイスの参与頻度の制限Nを導入することができる。
動的スケジューリングモードについて、本開示の実施例は連合学習方法を提供する。具体的には、以下のステップを含むことができる。
ステップC1、タスクmの利用不可なデバイスセットH及びデバイスがタスクmのトレーニングに参与する頻度F を初期化する。
ステップC2、利用不可なデバイスセットH中のデバイス数は全デバイス数
Figure 0007389177000024
Figure 0007389177000025
を超える場合、Hを空にし、頻度F をクリアする。そうでなければステップC3に進む。
ステップC3、利用不可なデバイスセットH中のデバイスを利用可能なデバイスセットΘ から除去する。
ステップC4、タスクm利用可能なデバイスのセットΘ 、タスク番号m及びトレーニングモードtrain=Falseをパラメータとして上記強化学習モデルを呼び出して、現在のトレーニングに必要とされるデバイスのセットs をスケジューリングするs
ステップC5、デバイスセットs にデバイスがタスクmのトレーニングに参加する頻度F を統計する。
ステップC6、タスクmの利用可能なデバイスセットΘ 及びトレーニングモードtrain=Trueをパラメータとして上記強化学習モデルを更新する。
このとき、トレーニングモードと理解され、上記強化学習モデルを呼び出してデバイスをスケジューリングした後、強化学習モデルの更新を継続する。
連合学習の全てのタスクのモデルの特徴、現在のタスクmが環境で利用可能なデバイスΘ 、タスク番号m、及びタスクトレーニングデータのサイズなどが環境状態としてLSTMに入力され、現在のタスクの、各利用可能なデバイスでの確率が得られ、最終的に確率の最も大きい一部のデバイスが現在のタスクのスケジューリングスキームsとして選択される。次いで、環境状態を更新し、上述の報酬関数を用いて選択されたスケジューリングスキームの報酬rを計算し、rを強化学習モデルにフィードバックして、次回のより高い報酬が得られるように学習し、反復回数に達するまで上述のプロセスが繰り返される。終了後、更新された深層学習スケジューリングネットワークを古い強化学習モデルをカバーするように保存し、再スケジューリング時に、最新のスケジューリングネットワーク、即ち最新の強化学習モデルになる。
具体的には、強化学習モデルの更新は、上述した強化学習モデルのトレーニングプロセスと同様であるので、上述した実施例では詳細に説明したが、ここでは説明を省略する。
ステップC7、タスクmのスケジューリングデバイスセットs を返す。
動的スケジューリングモードでは、事前トレーニング済みの深層強化学習ネットワークを連合学習環境にロードし、続いてトレーニングに必要なデバイスを各タスクに対してスケジューリングすることができる。そして、一度のスケジューリングが完了した後、引き続きこのニューラルネットワークに学習させ、即ちスケジューリングと同時に学習を継続している。このアルゴリズムは、スケジューリングアルゴリズムを更に最適化することができ、即ち、デバイスをスケジューリングするための強化学習モデルを最適化することができる。深層強化学習スケジューリングネットワークを提供してデバイスをスケジューリングし、神経ネットワークを更新する機能を実現することができ、デバイスをスケジューリングした後に現在のスケジューリングネットワークを再び更にトレーニングし、次回のスケジューリングをより賢明にすることができる。
また、本開示の実施例は、上述した実施例による連合学習方法に対応して、連合学習装置を提供し、連合学習システムにおけるサーバに応用され、連合学習システムはサーバ及び複数の端末装置を含み、連合学習システムは複数のタスクを達成するために用いられ、図6に示すように、該装置は、
複数の端末装置のリソース情報を取得するために用いられる第1取得モジュール601と、
リソース情報を利用して、タスクに対応するターゲット端末装置を確定するために用いられる確定モジュール602と、
ターゲット端末装置によって、グローバルモデルがプリセット条件を満たすまで、タスクに対応するグローバルモデルをトレーニングするために用いられるタスクトレーニングモジュール603とを備える。
或いは、タスクトレーニングモジュール603は、図7に示すように、
タスクに対応するグローバルモデルをタスクに対応するターゲット端末装置に配信して、各ターゲット端末装置にグローバルモデルをトレーニングさせ、モデルパラメータを得るために用いられる配信サブモジュール701と、
各ターゲット端末装置から返信されたモデルパラメータを受信し、各ターゲット端末装置から返信されたモデルパラメータを集約して、更新されたグローバルモデルを得るために用いられる受信サブモジュール702とを備え、グローバルモデルがプリセット条件を満たしていないことに応答して、第1取得モジュール601に戻り、グローバルモデルがプリセット条件を満たすまで、第1取得モジュール601、確定モジュール602、配信サブモジュール701、及び受信サブモジュール702を呼び出す。
任意選択的に、確定モジュール602は、具体的にリソース情報を予めトレーニングされた強化学習モデルに入力し、強化学習モデルによりタスクに対応するターゲット端末装置を得る。ここでは、強化学習モデルは、複数のサンプルタスクが使用可能なサンプル端末装置セットと、各サンプル端末装置のリソース情報と、サンプルタスクの特性情報とを環境状態として、サンプル端末装置がサンプルタスクを完了する時間と、サンプルタスクを完了するのに必要なデータのサンプル端末装置における分布とに基づいて確定される報酬関数に基づいて学習して得られるものである。
任意選択的に、図8に示すように、装置は、
前記サンプルタスクの特性情報を取得し、サンプルタスクが使用可能なサンプル端末装置セット、及びサンプル端末装置セットにおける各サンプル端末装置のリソース情報を取得するために用いられる第2取得モジュール801と、
サンプル端末装置セット、及び各サンプル端末装置のリソース情報及びサンプルタスクの特性情報をモデルに入力するために用いられる入力モジュール802と、
各サンプル端末装置のリソース情報及びサンプルタスクの特性情報に基づいて、モデルによって、サンプル端末装置セットからサンプルタスクに対応するスケジューリングデバイスを選択するために用いられる選択モジュール803と、
スケジューリングデバイスを利用してサンプルタスクを実行し、且つ報酬関数によってスケジューリングデバイスがサンプルタスクを実行することに対応する報酬値を計算するために用いられる計算モジュール804と、
報酬値に基づいてモデルに対応するモデルパラメータを調整し、更新されたモデルを得るために用いられる調整モジュール805とを更に備え、更新されたモデルが反復終了条件を満たしていなければ、入力モジュール802に戻り、更新されたモデルを前記モデルに置き換え、更新されたモデルが反復終了条件を満たしてトレーニング済み強化学習モデルを得るまで入力モジュール802、選択モジュール803、計算モジュール804と調整モジュール805を繰り返し呼び出す。
任意選択的に、選択モジュール803は、具体的に各サンプル端末装置のリソース情報及びサンプルタスクの特性情報に基づいて、モデルによって、サンプルタスクがそれぞれ、各サンプル端末装置に対応する確率を得て、確率によって各サンプル端末装置をソーティングし、ソーティング結果に基づいて、予め設定された数のサンプル端末装置を、サンプルタスクに対応するスケジューリングデバイスとして選択するために用いられる。
任意選択的に、第1取得モジュール601は、具体的に各端末装置に対して、端末装置がトレーニングタスクに参与する参与頻度を確定し、参与頻度が予め設定された参与頻度閾値より小さいことに応答して、端末装置をタスクに対応する利用可能な端末装置とし、利用可能な端末装置のリソース情報を取得するために用いられる。
任意選択的に、図9に示すように、この装置は、
各タスクの特性情報、複数の端末装置のリソース情報及び複数の端末装置からなるデバイスセットを強化学習モデルの環境状態とし、且つ奨励関数に基づいて強化学習モデルを更新するための更新モジュール901と、
具体的に、リソース情報を更新された強化学習モデルに入力し、更新された強化学習モデルによってタスクに対応するターゲット端末装置を得るために用いられる確定モジュール602とを更に備える。
任意選択的に、配信サブモジュール701は更に、タスクに対応するグローバルモデルをタスクに対応するターゲット端末装置に配信することに応答して、各ターゲット端末装置に反復回数を配信して、各ターゲット端末装置がグローバルモデルをトレーニングする過程において反復回数反復するために用いられ、反復回数は、サーバが端末装置のリソース情報に基づいて確定するものである。
本開示の実施例によれば、本公開は、電子機器、可読記憶媒体及びコンピュータプログラム製品を更に提供する。
図10は本開示の実施例を実施するための例示的な電子機器1000を示す概略ブロック図である。電子機器は、様々な形態のデジタルコンピュータ、例えば、ラップトップ型コンピュータ、デスクトップ型コンピュータ、ステージ、個人用デジタル補助装置、サーバ、ブレードサーバ、大型コンピュータ、その他の適切なコンピュータを示す。電子機器は更に、様々な形態の移動装置、例えば、個人デジタル処理、携帯電話、スマートフォン、着用可能な装置とその他の類似する計算装置を示してよい。本明細書に示される部品は、これらの接続関係及びこれらの機能は例示的なものに過ぎず、本明細書に説明した及び/又は請求した本願の実現を制限しない。
図10に示すように、機器1000は、計算ユニット1001を含み、それはリードオンリーメモリ(ROM)1002に記憶されるコンピュータプログラムまた記憶ユニット1008からランダムアクセスメモリ(RAM)1003にロードされるコンピュータプログラムによって、種々の適当な操作と処理を実行することができる。RAM 1003において、更に機器1000を操作するために必要な様々なプログラムとデータを記憶してよい。計算ユニット1001、RAM 1002及びRAM 1003はバス1004によって互いに接続される。入力/出力(I/O)インターフェース1005もバス1004に接続される。
機器1000における複数の部品はI/Oインターフェース1005に接続され、例えばキーボード、マウスなどの入力ユニット1006、例えば様々なタイプのディスプレイ、スピーカーなどの出力ユニット1007、例えば磁気ディスク、光ディスクなどの記憶ユニット1008、及び例えばネットワークカード、変調復調器、無線通信送受信機などの通信ユニット1009を含む。通信ユニット1009は、機器1000が例えばインターネットなどのコンピュータネットワーク及び/又は様々な電気通信ネットワークを介して他の装置との情報/データのやり取りを可能にする。
計算ユニット1001は処理及びコンピューティング能力を有する様々な汎用及び/又は専用の処理コンポーネントであってもよい。計算ユニット1001の例には、中央処理ユニット(CPU)、グラフィックス処理ユニット(GPU)、様々な専用人工知能(AI)計算チップ、様々な機械トレーニングモデルアルゴリズムを実行するコンピューティングユニット、デジタル信号プロセッサ(DSP)、及び任意の適当なプロセッサ、コントローラ、マイクロコントローラなどが含まれるが、これらに限定されない。計算ユニット1001は上記内容で説明した各方法と処理、例えば連合学習方法を実行する。例えば、一部の実施例において、連合学習方法はコンピュータソフトウェアプログラムとして実現してよく、機械可読媒体、例えば、記憶ユニット1008に有形に含まれる。一部の実施例において、コンピュータプログラムの部分又は全てはROM 1002及び/又は通信ユニット1009を経由して機器1000にロード及び/又はインストールされてよい。コンピュータプログラムがRAM 1003にロードされて計算ユニット1001によって実行される場合、以上で説明される連合学習方法の1つ又は複数のステップを実行することできる。代替的に、別の実施例において、計算ユニット1001は他のいかなる適切な方式で(例えば、ファームウェアにより)連合学習方法を実行するように構成されてよい。
本明細書で上述したシステム及び技術の様々な実施形態は、デジタル電子回路システム、集積回路システム、フィールド・プログラマブル・ゲート・アレイ(FPGA)、特定用途向け集積回路(ASIC)、特定用途向け標準製品(ASSP)、システムオンチップ(SOC)、ロードプログラマブル論理デバイス(CPLD)、コンピュータ・ハードウェア、ファームウェア、ソフトウェア、及び/又はこれらの組み合わせにおいて実装することができる。これらの様々な実施形態は、1つ又は複数のコンピュータプログラムに実施され、この1つ又は複数のコンピュータプログラムは少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステムで実行し及び/又は解釈してもよく、このプログラマブルプロセッサは専用又は汎用プログラマブルプロセッサであってもよく、記憶システム、少なくとも1つの入力装置、少なくとも1つの出力装置からデータと命令を受信し、データと命令をこの記憶システム、この少なくとも1つの入力装置、この少なくとも1つの出力装置に送信してよいこと、を含んでもよい。
本開示の方法を実施するプログラムコードは1つ又は複数のプログラミング言語のいかなる組み合わせで書かれてよい。これらのプログラムコードを汎用コンピュータ、特殊目的のコンピュータ又は他のプログラマブルデータ処理装置のプロセッサ又はコントローラに提供してよく、よってプログラムコードはプロセッサ又はコントローラにより実行される時に流れ図及び/又はブロック図に規定の機能/操作を実施する。プログラムコードは完全に機械で実行してよく、部分的に機械で実行してよく、独立ソフトウェアパッケージとして部分的に機械で実行し且つ部分的に遠隔機械で実行してよく、又は完全に遠隔機械又はサーバで実行してよい。
本開示の文脈において、機械可読媒体は有形の媒体であってもよく、命令実行システム、装置又はデバイスに使用される又は命令実行システム、装置又はデバイスに結合されて使用されるプログラムを具備又は記憶してよい。機械可読媒体は機械可読信号媒体又は機械可読記憶媒体であってもよい。機械可読媒体は、電子、磁気、光学、電磁、赤外線、又は半導体システム、装置又はデバイス、又は上記内容のいかなる適切な組み合わせを含んでもよいが、これらに限定されない。機械可読記憶媒体のより具体的な例は、1つ又は複数のリード線による電気接続、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、消去可能なプログラマブル読み出し専用メモリ(EPROM又はフラッシュメモリ)、光ファイバー、ポータブルコンパクトディスク読み出し専用メモリ(CD-ROM)、光記憶装置、磁気記憶装置、又は上記内容のいかなる適切な組み合わせを含む。
ユーザとのインタラクションを提供するために、コンピュータにはここで説明したシステムと技術を実施してよく、このコンピュータは、ユーザに情報を表示する表示装置(例えば、CRT(陰極線管、Cathode Ray Tube)又はLCD(液晶ディスプレイ、Liquid Crystal Display)監視モニタ)及びキーボードとポインティング装置(例えば、マウスやトラックボール)を備え、ユーザはこのキーボードとこのポインティング装置を介してコンピュータに入力してよい。その他の種類の装置は更に、ユーザとのインタラクションを提供してよい。例えば、ユーザに提供するフィードバックはいかなる形態の感覚フィードバック(例えば、視覚フィードバック、聴覚フィードバック、又は触覚フィードバック)であってもよく、いかなる形態(音入力、音声入力、又は触覚入力を含む)でユーザからの入力を受信してよい。
ここで述べたシステムや技術は、バックステージ部材を含む計算システム(例えば、データサーバとして)や、ミドルウェア部材を含む計算システム(例えば、アプリケーションサーバ)や、フロントエンド部材を含む計算システム(例えば、グラフィカルユーザインタフェースやウェブブラウザを有するユーザコンピュータ、ユーザが、そのグラフィカルユーザインタフェースやウェブブラウザを通じて、それらのシステムや技術の実施形態とのインタラクティブを実現できる)、或いは、それらのバックステージ部材、ミドルウェア部材、或いはフロントエンド部材の任意の組み合わせからなる計算システムには実施されてもよい。システムの部材は、任意の形式や媒体のデジタルデータ通信(例えば、通信ネットワーク)により相互に接続されてもよい。通信ネットワークの一例は、例えば、ローカルネットワーク(LAN)、広域ネットワーク(WAN)、インターネットを含む。
コンピュータシステムは、クライアント側とサーバを含んでもよい。クライアント側とサーバは、一般的に相互に遠く離れ、通常、通信ネットワークを介してインタラクションを行う。互にクライアント側-サーバという関係を有するコンピュータプログラムを対応するコンピュータで運転することによってクライアント側とサーバの関係を生成する。サーバーは、クラウドサーバであってもよく、分散型システムのサーバでも、又はブロックチェーンと組み合わされサーバであってもよい。
理解すべきことは、前述した様々な形態のフローを用いて、改めて順位付け、ステップを増加又削除してよいことである。例えば、本開示に記載された各ステップは、並行的に実行してもよいし、順次実行してもよいし、異なる順序で実行させてもよいし、本開示に開示された技術案が所望する結果を実現できれば、本明細書はこれに限定されないことである。
上述した実施形態は、本開示の保護範囲を限定するものではない。当業者が理解すべきことは、設計要求と他の要因に基づいて、様々な修正、組み合わせ、一部の組み合わせと代替を行うことができることである。本開示における精神及び原則から逸脱することなく行われるいかなる修正、同等物による置換や改良等は、いずれも本開示の保護範囲に含まれるものである。

Claims (16)

  1. 合学習システムにおけるサーバにより実行される連合学習方法であって、前記連合学習システムは前記サーバと複数の端末装置を含み、前記連合学習システムは複数のタスクを達成するために用いられ、前記方法は、前記連合学習システムにおける各タスクに対して、それぞれ、
    複数の端末装置のリソース情報を取得するステップS1
    前記リソース情報を利用して、前記タスクに対応するターゲット端末装置を確定するステップS2であって、当該ステップS2が、前記リソース情報を予めトレーニングされた強化学習モデルに入力し、前記強化学習モデルによって前記タスクに対応するターゲット端末装置を得るステップを含み、前記強化学習モデルは、複数のサンプルタスクが使用可能なサンプル端末装置セットと、各サンプル端末装置のリソース情報と、前記サンプルタスクの特性情報とを環境状態として、報酬関数に基づいて学習して得られるものであり、前記報酬関数は、サンプル端末装置がサンプルタスクを完了する時間と、前記サンプルタスクを完了するのに必要なデータのサンプル端末装置における分布とに基づいて確定される、ステップS2と
    前記ターゲット端末装置によって、前記タスクに対応するグローバルモデルを、前記グローバルモデルがプリセット条件を満たすまでトレーニングするステップS3
    を実行することを含む連合学習方法。
  2. 前記の前記ターゲット端末装置によって、前記タスクに対応するグローバルモデルを、前記グローバルモデルがプリセット条件を満たすまでトレーニングするステップは、
    前記タスクに対応するグローバルモデルを前記タスクに対応するターゲット端末装置に配信して、各前記ターゲット端末装置に前記グローバルモデルをトレーニングさせ、モデルパラメータを得るステップS31と、
    各前記ターゲット端末装置から返信された前記モデルパラメータを受信し、各前記ターゲット端末装置から返信されたモデルパラメータを集約して、更新されたグローバルモデルを得るステップS32と、
    前記グローバルモデルがプリセット条件を満たしていないことに応答して、S1に戻り、S1、S2、S31、及びS32を、前記グローバルモデルが前記プリセット条件を満たすまで継続して実行するステップとを含む請求項1に記載の方法。
  3. 前記サンプルタスクの特性情報を取得するステップS11と、
    サンプルタスクが使用可能なサンプル端末装置セット、及び前記サンプル端末装置セットにおける各サンプル端末装置のリソース情報を取得するステップS12と、
    前記サンプル端末装置セット、各サンプル端末装置のリソース情報及び前記サンプルタスクの特性情報をモデルに入力するステップS13と、
    各サンプル端末装置のリソース情報及び前記サンプルタスクの特性情報に基づいて、前記モデルによって、前記サンプル端末装置セットから前記サンプルタスクに対応するスケジューリングデバイスを選択するステップS14と、
    前記スケジューリングデバイスを利用して前記サンプルタスクを実行し、且つ前記報酬関数によって前記スケジューリングデバイスが前記サンプルタスクを実行することに対応する報酬値を計算するステップS15と、
    前記報酬値に基づいて前記モデルに対応するモデルパラメータを調整し、更新されたモデルを得るステップS16と、
    更新されたモデルが反復終了条件を満たしていなければ、S12に戻り、前記更新されたモデルで上記モデルを置き換え、更新されたモデルが反復終了条件を満たすまでS12からS16を繰り返し実行して、トレーニング済み強化学習モデルを得るステップとを更に含む請求項に記載の方法。
  4. 前記の、各サンプル端末装置のリソース情報及び前記サンプルタスクの特性情報に基づいて、前記モデルによって、前記サンプル端末装置セットから前記サンプルタスクに対応するスケジューリングデバイスを選択するステップは、
    前記各サンプル端末装置のリソース情報及び前記サンプルタスクの特性情報に基づいて、前記モデルによって、前記サンプルタスクがそれぞれ、各サンプル端末装置に対応する確率を得るステップと、
    確率によって各サンプル端末装置をソーティングするステップと、
    ソーティング結果に基づいて、予め設定された数のサンプル端末装置を、前記サンプルタスクに対応するスケジューリングデバイスとして選択するステップとを含む請求項に記載の方法。
  5. 前記の、複数の端末装置のリソース情報を取得するステップは、
    各端末装置に対して、前記端末装置が前記タスクのトレーニングに参与する参与頻度を確定するステップと、
    前記参与頻度が予め設定された参与頻度閾値より小さいことに応答して、前記端末装置を前記タスクに対応する利用可能な端末装置とするステップと、
    前記利用可能な端末装置のリソース情報を取得するステップとを含む請求項1に記載の方法。
  6. 前記方法は、前記の前記タスクに対応するターゲット端末装置を確定するステップの後に、
    各前記タスクの特性情報、複数の端末装置のリソース情報及び複数の端末装置からなるデバイスセットを前記強化学習モデルの環境状態とし、前記報酬関数に基づいて前記強化学習モデルを更新するステップを更に含み、
    前記リソース情報を利用して、前記タスクに対応するターゲット端末装置を確定するステップは、
    前記リソース情報を更新された強化学習モデルに入力し、更新された強化学習モデルによって前記タスクに対応するターゲット端末装置を得るステップを含む請求項に記載の方法。
  7. 前記方法は、
    前記タスクに対応するグローバルモデルを前記タスクに対応するターゲット端末装置に配信することに応答して、各前記ターゲット端末装置に反復回数を配信して、各前記ターゲット端末装置が前記グローバルモデルをトレーニングする過程において前記反復回数反復するステップを更に含み、前記反復回数は、前記サーバが前記端末装置のリソース情報に基づいて確定されるものである請求項2に記載の方法。
  8. 連合学習装置であって、連合学習システムにおけるサーバに応用され、前記連合学習システムは前記サーバと複数の端末装置を含み、前記連合学習システムは複数のタスクを達成するために用いられ、前記装置は、
    複数の端末装置のリソース情報を取得するために用いられる第1取得モジュールと、
    前記リソース情報を利用して、前記タスクに対応するターゲット端末装置を確定するために用いられる確定モジュールであって、当該確定モジュールが、具体的に、前記リソース情報を予めトレーニングされた強化学習モデルに入力し、前記強化学習モデルによって前記タスクに対応するターゲット端末装置を得るために用いられ、前記強化学習モデルは、複数のサンプルタスクが使用可能なサンプル端末装置セットと、各サンプル端末装置のリソース情報と、前記サンプルタスクの特性情報とを環境状態として、報酬関数に基づいて学習して得られるものであり、前記報酬関数は、サンプル端末装置がサンプルタスクを完了する時間と、前記サンプルタスクを完了するのに必要なデータのサンプル端末装置における分布とに基づいて確定される、確定モジュールと、
    前記ターゲット端末装置によって、前記タスクに対応するグローバルモデルを、前記グローバルモデルがプリセット条件を満たすまでトレーニングするために用いられるタスクトレーニングモジュールとを備える連合学習装置。
  9. 前記タスクトレーニングモジュールは、
    前記タスクに対応するグローバルモデルを前記タスクに対応するターゲット端末装置に配信して、各前記ターゲット端末装置に前記グローバルモデルをトレーニングさせ、モデルパラメータを得るために用いられる配信サブモジュールと、
    各前記ターゲット端末装置から返信された前記モデルパラメータを受信し、各前記ターゲット端末装置から返信されたモデルパラメータを集約して、更新されたグローバルモデルを得るために用いられる受信サブモジュールとを備え、
    前記グローバルモデルがプリセット条件を満たしていないことに応答して、前記第1取得モジュールに戻り、前記グローバルモデルがプリセット条件を満たすまで、第1取得モジュール、確定モジュール、配信サブモジュール、及び受信サブモジュールを呼び出す請求項に記載の装置。
  10. 前記サンプルタスクの特性情報を取得し、サンプルタスクが使用可能なサンプル端末装置セット、及び前記サンプル端末装置セットにおける各サンプル端末装置のリソース情報を取得するために用いられる第2取得モジュールと、
    前記サンプル端末装置セット、各サンプル端末装置のリソース情報及び前記サンプルタスクの特性情報をモデルに入力するために用いられる入力モジュールと、
    各サンプル端末装置のリソース情報及び前記サンプルタスクの特性情報に基づいて、前記モデルによって、前記サンプル端末装置セットから前記サンプルタスクに対応するスケジューリングデバイスを選択するために用いられる選択モジュールと、
    前記スケジューリングデバイスを利用して前記サンプルタスクを実行し、且つ前記報酬関数によって前記スケジューリングデバイスが前記サンプルタスクを実行することに対応する報酬値を計算するために用いられる計算モジュールと、
    前記報酬値に基づいて前記モデルに対応するモデルパラメータを調整し、更新されたモデルを得るために用いられる調整モジュールとを更に備え、
    更新されたモデルが反復終了条件を満たしていなければ、入力モジュールに戻り、前記更新されたモデルを前記モデルに置き換え、更新されたモデルが反復終了条件を満たしてトレーニング済み強化学習モデルを得るまで入力モジュール、選択モジュール、計算モジュールと調整モジュールを繰り返し呼び出す請求項に記載の装置。
  11. 前記選択モジュールは、具体的に、前記各サンプル端末装置のリソース情報及び前記サンプルタスクの特性情報に基づいて、前記モデルによって、前記サンプルタスクがそれぞれ、各サンプル端末装置に対応する確率を得て、確率によって各サンプル端末装置をソーティングし、ソーティング結果に基づいて、予め設定された数のサンプル端末装置を、前記サンプルタスクに対応するスケジューリングデバイスとして選択するために用いられる請求項10に記載の装置。
  12. 前記第1取得モジュールは、具体的に、各端末装置に対して、前記端末装置が前記タスクのトレーニングに参与する参与頻度を確定し、前記参与頻度が予め設定された参与頻度閾値より小さいことに応答して、前記端末装置を前記タスクに対応する利用可能な端末装置とし、前記利用可能な端末装置のリソース情報を取得するために用いられる請求項に記載の装置。
  13. 前記装置は、
    各前記タスクの特性情報、複数の端末装置のリソース情報及び複数の端末装置からなるデバイスセットを前記強化学習モデルの環境状態とし、且つ前記報酬関数に基づいて前記強化学習モデルを更新するために用いられる更新モジュールを更に備え、
    前記確定モジュールは、具体的に、前記リソース情報を更新された強化学習モデルに入力し、更新された強化学習モデルによって前記タスクに対応するターゲット端末装置を得るために用いられる請求項10に記載の装置。
  14. 前記配信サブモジュールは更に、前記タスクに対応するグローバルモデルを前記タスクに対応するターゲット端末装置に配信することに応答して、各前記ターゲット端末装置に反復回数を配信して、各前記ターゲット端末装置が前記グローバルモデルをトレーニングする過程において前記反復回数反復するために用いられ、前記反復回数は、前記サーバが前記端末装置のリソース情報に基づいて確定されるものである請求項に記載の装置。
  15. 電子機器であって、
    少なくとも1つのプロセッサ、及び
    前記少なくとも1つのプロセッサに通信接続されるメモリを備え、
    前記メモリには前記少なくとも1つのプロセッサによって実行可能な命令が記憶され、前記命令は前記少なくとも1つのプロセッサによって実行されることにより、前記少なくとも1つのプロセッサに請求項1~のいずれか一項に記載の方法を実行させる電子機器。
  16. コンピュータに請求項1~のいずれか一項に記載の方法を実行させるためのコンピュータ命令が記憶された非一時的コンピュータ可読記憶媒体。
JP2022111567A 2021-07-13 2022-07-12 連合学習方法、装置、機器及び記憶媒体 Active JP7389177B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110792130.3A CN113516250B (zh) 2021-07-13 2021-07-13 一种联邦学习方法、装置、设备以及存储介质
CN202110792130.3 2021-07-13

Publications (2)

Publication Number Publication Date
JP2022137182A JP2022137182A (ja) 2022-09-21
JP7389177B2 true JP7389177B2 (ja) 2023-11-29

Family

ID=78067025

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022111567A Active JP7389177B2 (ja) 2021-07-13 2022-07-12 連合学習方法、装置、機器及び記憶媒体

Country Status (4)

Country Link
US (1) US20220366320A1 (ja)
JP (1) JP7389177B2 (ja)
CN (1) CN113516250B (ja)
GB (1) GB2610297A (ja)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113971090B (zh) * 2021-10-21 2022-09-13 中国人民解放军国防科技大学 分布式深度神经网络的分层联邦学习方法及装置
WO2023070684A1 (zh) * 2021-11-01 2023-05-04 Oppo广东移动通信有限公司 无线通信的方法和设备
CN114065863B (zh) * 2021-11-18 2023-08-29 北京百度网讯科技有限公司 联邦学习的方法、装置、系统、电子设备及存储介质
CN114065864B (zh) * 2021-11-19 2023-08-11 北京百度网讯科技有限公司 联邦学习方法、联邦学习装置、电子设备以及存储介质
CN116264684A (zh) * 2021-12-10 2023-06-16 华为技术有限公司 一种无线网络中的人工智能ai模型训练方法及装置
CN114298322B (zh) * 2021-12-27 2023-08-25 北京百度网讯科技有限公司 联邦学习方法和装置、系统、电子设备、计算机可读介质
CN114548426B (zh) * 2022-02-17 2023-11-24 北京百度网讯科技有限公司 异步联邦学习的方法、业务服务的预测方法、装置及系统
CN114675965B (zh) * 2022-03-10 2023-05-02 北京百度网讯科技有限公司 联邦学习方法、装置、设备和介质
CN114938372B (zh) * 2022-05-20 2023-04-18 天津大学 一种基于联邦学习的微网群请求动态迁移调度方法及装置
CN114997337B (zh) * 2022-07-18 2023-01-13 浪潮电子信息产业股份有限公司 信息融合、数据通信方法、装置及电子设备和存储介质
CN115277264B (zh) * 2022-09-28 2023-03-24 季华实验室 一种基于联邦学习的字幕生成方法、电子设备及存储介质
WO2024082274A1 (zh) * 2022-10-21 2024-04-25 华为技术有限公司 Ai任务指示的方法、通信装置和系统
CN115496054B (zh) * 2022-11-15 2023-02-21 树优(宁波)科技有限公司 多学科设计优化方法、系统、电子设备及存储介质
CN116090550B (zh) * 2022-12-27 2024-03-22 百度在线网络技术(北京)有限公司 联邦学习方法、装置、服务器、电子设备及存储介质
CN115828022B (zh) * 2023-02-21 2023-04-25 中国电子科技集团公司第十五研究所 一种数据识别方法、联邦训练模型、装置和设备
CN115994588B (zh) * 2023-03-16 2023-07-25 杭州海康威视数字技术股份有限公司 基于区块链与合同理论的数据处理方法、装置及设备
CN116029370B (zh) * 2023-03-17 2023-07-25 杭州海康威视数字技术股份有限公司 基于区块链的联邦学习的数据共享激励方法、装置及设备
CN116016610B (zh) * 2023-03-21 2024-01-09 杭州海康威视数字技术股份有限公司 基于区块链的车联网数据安全共享方法、装置及设备
CN116108934B (zh) * 2023-04-13 2023-06-20 中电科大数据研究院有限公司 联邦学习系统、联邦学习方法和装置
CN116484922B (zh) * 2023-04-23 2024-02-06 深圳大学 一种联邦学习方法、系统、设备及存储介质
CN116932164B (zh) * 2023-07-25 2024-03-29 和光舒卷(广东)数字科技有限公司 一种基于云平台的多任务调度方法及其系统
CN116737607B (zh) * 2023-08-16 2023-11-21 之江实验室 样本数据缓存方法、系统、计算机设备和存储介质
CN117076132B (zh) * 2023-10-12 2024-01-05 北京邮电大学 分层联邦学习系统的资源分配及聚合优化方法及装置
CN117311991B (zh) * 2023-11-28 2024-02-23 苏州元脑智能科技有限公司 模型训练方法、任务分配方法、装置、设备、介质及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200027022A1 (en) 2019-09-27 2020-01-23 Satish Chandra Jha Distributed machine learning in an information centric network
CN112348199A (zh) 2020-10-30 2021-02-09 河海大学 一种基于联邦学习与多任务学习的模型训练方法
US20210049042A1 (en) 2019-08-16 2021-02-18 Samsung Electronics Co., Ltd. Electronic apparatus and method for controlling thereof

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110442457A (zh) * 2019-08-12 2019-11-12 北京大学深圳研究生院 基于联邦学习的模型训练方法、装置及服务器
US20210089910A1 (en) * 2019-09-25 2021-03-25 Deepmind Technologies Limited Reinforcement learning using meta-learned intrinsic rewards
CN110782042B (zh) * 2019-10-29 2022-02-11 深圳前海微众银行股份有限公司 横向联邦和纵向联邦联合方法、装置、设备及介质
CN112565331B (zh) * 2020-11-02 2022-08-12 中山大学 一种基于边缘计算的端-边协同联邦学习优化方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210049042A1 (en) 2019-08-16 2021-02-18 Samsung Electronics Co., Ltd. Electronic apparatus and method for controlling thereof
US20200027022A1 (en) 2019-09-27 2020-01-23 Satish Chandra Jha Distributed machine learning in an information centric network
CN112348199A (zh) 2020-10-30 2021-02-09 河海大学 一种基于联邦学习与多任务学习的模型训练方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
NISHIO, Takayuki et al.,Client Selection for Federated Learning with Heterogeneous Resources in Mobile Edge,arXiv.org [online],2018年10月30日,[検索日 2023.06.26], インターネット:<URL:https://arxiv.org/pdf/1804.08333.pdf>,<DOI:10.48550/arXiv.1804.08333>

Also Published As

Publication number Publication date
GB202210246D0 (en) 2022-08-24
GB2610297A (en) 2023-03-01
US20220366320A1 (en) 2022-11-17
CN113516250A (zh) 2021-10-19
CN113516250B (zh) 2023-11-03
JP2022137182A (ja) 2022-09-21

Similar Documents

Publication Publication Date Title
JP7389177B2 (ja) 連合学習方法、装置、機器及び記憶媒体
CN112561078B (zh) 分布式的模型训练方法及相关装置
Han et al. Tailored learning-based scheduling for kubernetes-oriented edge-cloud system
CN110262845A (zh) 区块链使能的分布式计算任务卸载方法及系统
US11436050B2 (en) Method, apparatus and computer program product for resource scheduling
CN113361721B (zh) 模型训练方法、装置、电子设备、存储介质及程序产品
CN112667400B (zh) 边缘自治中心管控的边云资源调度方法、装置及系统
US20220374776A1 (en) Method and system for federated learning, electronic device, and computer readable medium
JP7412489B2 (ja) 連合学習方法及び装置、電子機器、記憶媒体ならびにコンピュータプログラム
CN116991560A (zh) 针对语言模型的并行调度方法、装置、设备及存储介质
AlOrbani et al. Load balancing and resource allocation in smart cities using reinforcement learning
CN116954866A (zh) 基于深度强化学习的边缘云下任务调度方法及系统
US20220374775A1 (en) Method for multi-task scheduling, device and storage medium
WO2023284347A1 (zh) 任务执行方法及装置
KR102590112B1 (ko) 사물인터넷 환경에서 분산 머신 러닝 학습을 위한 코딩 및 인센티브 기반 메커니즘
Wang A dynamic resource management in mobile agent by artificial neural network
CN113703936A (zh) 创建算力容器的方法、算力平台、电子设备及存储介质
CN113747504A (zh) 多接入边缘计算联合任务卸载和资源分配的方法及系统
CN114661431A (zh) 一种任务调度方法、存储介质及终端设备
Appadurai et al. Radial basis function networks-based resource-aware offloading video analytics in mobile edge computing
Di Cicco et al. DRL-FORCH: A Scalable Deep Reinforcement Learning-based Fog Computing Orchestrator
Gad-Elrab et al. Genetic-Based Task Scheduling Algorithm with Dynamic Virtual Machine Generation in Cloud Computing
Sharma et al. Multi-Faceted Job Scheduling Optimization Using Q-learning With ABC In Cloud Environment
CN112330450B (zh) 算力交易处理方法、装置、区块链的节点及存储介质
Li et al. AttentionFunc: Balancing FaaS compute across edge-cloud continuum with reinforcement learning

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220712

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230626

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230630

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230929

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: 20231114

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231116

R150 Certificate of patent or registration of utility model

Ref document number: 7389177

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150