JP2023505973A - 連合混合モデル - Google Patents

連合混合モデル Download PDF

Info

Publication number
JP2023505973A
JP2023505973A JP2022534677A JP2022534677A JP2023505973A JP 2023505973 A JP2023505973 A JP 2023505973A JP 2022534677 A JP2022534677 A JP 2022534677A JP 2022534677 A JP2022534677 A JP 2022534677A JP 2023505973 A JP2023505973 A JP 2023505973A
Authority
JP
Japan
Prior art keywords
machine learning
learning model
processing device
model
parameters
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.)
Pending
Application number
JP2022534677A
Other languages
English (en)
Other versions
JPWO2021119601A5 (ja
Inventor
マティアス・ライサー
マックス・ウェリング
エフストラティオス・ゲイヴス
クリストス・ルイゾス
Original Assignee
クアルコム テクノロジーズ インコーポレイテッド
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 クアルコム テクノロジーズ インコーポレイテッド filed Critical クアルコム テクノロジーズ インコーポレイテッド
Publication of JP2023505973A publication Critical patent/JP2023505973A/ja
Publication of JPWO2021119601A5 publication Critical patent/JPWO2021119601A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • 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/045Combinations of networks
    • 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/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning

Landscapes

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

Abstract

本明細書で説明する態様は、データを処理する方法であって、複数の機械学習モデルについてのグローバルパラメータのセットを受信するステップと、機械学習モデル出力を生成するために、処理デバイス上にローカルに記憶されたデータを、複数の機械学習モデルを用いてグローバルパラメータのセットに従って処理するステップと、処理デバイスにおいて、複数の機械学習モデルについての機械学習モデル出力に関するユーザフィードバックを受信するステップと、ローカルに更新された機械学習モデルパラメータを生成するために、機械学習出力およびユーザフィードバックに基づいて複数の機械学習モデルの最適化を実行するステップと、ローカルに更新された機械学習モデルパラメータをリモート処理デバイスに送信するステップと、複数の機械学習モデルについてのグローバルに更新された機械学習モデルパラメータのセットを受信するステップとを含む方法を備える。

Description

関連出願の相互参照
本出願は、その内容全体が参照により本明細書に組み込まれている、2019年12月13日に出願されたギリシャ仮特許出願第20190100556号の利益および優先権を主張するものである。
本開示の態様は、機械学習モデルに関し、詳細には連合混合モデル(federated mixture model)に関する。
機械学習では、トレーニング済みモデル(たとえば、人工ニューラルネットワーク、ツリー、またはその他の構造)が作成されることがあり、トレーニング済みモデルは、先験的に知られているトレーニングデータのセットへの一般化された当てはめを示す。トレーニング済みモデルを新しいデータに適用すると推論情報が作成され、推論情報は新しいデータへのインサイトを得るために使用されることがある。場合によっては、モデルを新しいデータに適用することは、新しいデータに対して「推論を実行すること」と表される。
機械学習モデルは、分類タスク、検出タスク、および認識タスクにおける使用を含む多種多様な分野において採用される機会が増大している。たとえば、機械学習モデルは、電子デバイスに搭載された1つまたは複数のセンサによって提供されるセンサデータに基づいて、画像内の特徴(たとえば、顔)を自動的に検出することなどの複雑なタスクをそのようなデバイス上で実行するために使用されている。
従来の機械学習は、トレーニングデータが集中レポジトリに収集され、機械学習モデルをトレーニングするために一括して処理される場合のように、集中的に実行されることが多い。そのようにすると機械学習のいくつかの態様が簡略化される。たとえば、統合されたトレーニングデータセットを有すると、トレーニングデータセット内の変数についての独立同分布(IID)仮定に従ってデータを処理することが可能になり、このことは、トレーニングデータセットから取り出されるすべてのトレーニングデータインスタンス(たとえば、観測情報)が、過去に生成されたサンプルのメモリを有さない同じ生成プロセスから生じることを意味する。したがって、この仮定は、トレーニングデータをより容易にトレーニングデータサブセットおよび検証データサブセットに分割するのを可能にする。なぜなら、どちらのサブセットも同一の分布を有すると仮定されるからである。さらに、この仮定は標準最尤最適化目的の基礎となる。
現代の電子デバイス、特に非集中化携帯電子デバイス、モノのインターネット(IoT)デバイス、常時接続(AON)デバイス、およびその他の「エッジ」デバイスは、ますます機械学習タスクを実行することが可能になっている。したがって、これらのデバイスを機械学習計算リソースとして利用することは魅力的である。しかし、多数のコンテキストにおいて、非集中化処理手法を使用するグローバルに適用可能な機械学習モデルを生成することが不可能であるかまたは実際的ではない場合がある。たとえば、処理速度、ネットワーク速度、バッテリ寿命などの物理的制限、さらにプライバシー法、セキュリティ要件などのポリシー制限によって、多種多様な計算リソースを使用して機械学習モデルのトレーニングを非集中化する能力が制限される場合がある。
連合学習は、「エッジ」にあるデバイス(前述の携帯電子デバイスなど)に機械学習関連処理を分散させ、前述の非集中化処理問題のうちのいくつかの解決を目指す。残念なことに、データ処理を非集中化すると、様々な機械学習技術の標準最尤最適化目的の基礎となる標準IID仮定が明示的に覆される。したがって、連合学習は、現在の機械学習技法の性能を低下させる場合がある。
したがって、既存の機械学習技法の有効性を損なわずに連合学習を実行するための改良された方法が必要である。
第1の態様では、データを処理する方法は、処理デバイスsにおいて、複数の機械学習モデルKの各機械学習モデルkについてのグローバルパラメータのセットwk tを受信するステップと、複数の機械学習モデルKのそれぞれの各機械学習モデルkについて、機械学習モデル出力ys,kを生成するために、処理デバイスにおいて、処理デバイス上にローカルに記憶されたデータを、それぞれの機械学習モデルkを用いてグローバルパラメータのセットwk tに従って処理するステップと、処理デバイスにおいて、機械学習モデル出力ys,kに関するユーザフィードバックを受信するステップと、処理デバイスにおいて、ローカルに更新された機械学習モデルパラメータws,k t+τを生成するために機械学習出力ys,kおよび機械学習モデル出力ys,kに関連するユーザフィードバックに基づいてそれぞれの機械学習モデルkの最適化を実行するステップと、ローカルに更新された機械学習モデルパラメータws,k t+τをリモート処理デバイスに送信するステップと、複数の機械学習モデルKの各機械学習モデルkについて、グローバルに更新された機械学習モデルパラメータのセットwk t+τ
をリモート処理デバイスから受信するステップであって、それぞれの各機械学習モデルkについて、グローバルに更新された機械学習モデルパラメータwk t+τが、ローカルに更新された機械学習モデルパラメータws,k t+τに少なくとも部分的に基づく、ステップを含む。
第2の態様では、データを処理する方法は、複数のモデルKのそれぞれの各モデルkについて、複数のリモート処理デバイスSのそれぞれの各リモート処理デバイスsにおいて、それぞれの機械学習モデルkについてのモデルパラメータの初期セットwk tをサーバからそれぞれのリモート処理デバイスsに送信するステップと、それぞれのリモート処理デバイスsからサーバにおいて、それぞれの機械学習モデルkについてのモデルパラメータの更新済みセットws,k t+τを受信するステップと、グローバルモデルパラメータの更新済みセットwk t+τを生成するために、サーバにおいて、複数のリモート処理デバイスSの各リモート処理デバイスsから受信されたモデルパラメータの更新済みセットws,k t+τに基づいてそれぞれの機械学習モデルkの最適化を実行するステップと、複数のモデルKの各機械学習モデルkについてのグローバルモデルパラメータの更新済みセットwk t+τをサーバから複数のリモート処理デバイスSの各リモート処理デバイスsに送信するステップとを含む。
さらなる態様は、本明細書で説明する方法を実行するように構成される装置ならびにデバイスのプロセッサによって実行されたときに、デバイスに本明細書で説明する方法を実行させるコンピュータ実行可能命令を含む非一時的コンピュータ可読媒体に関する。
以下の説明および関連する図面は、1つまたは複数の実施形態のいくつかの例示的な特徴を詳細に記載する。
添付の図は、1つまたは複数の実施形態のいくつかの態様を示し、したがって、本開示の範囲を制限すると見なされるべきではない。
例示的な機械学習モデルアーキテクチャを示す図である。 上記の導出された数式に基づく連合混合アルゴリズムの一例を示す図である。 デバイス上で連合混合モデルデータを処理する例示的な方法を示す図である。 サーバデバイスなどの集中デバイス上で連合混合モデルデータを処理する例示的な方法を示す図である。 本明細書で説明する方法を実行するように構成される場合がある例示的な電子デバイスを示す図である。 本明細書で説明する方法を実行するように構成される場合がある例示的なマルチプロセッサ処理システムを示す図である。
理解を容易にするために、可能な場合、図に共通する同一の要素を指定するために同一の参照番号が使用されている。有利には、一実施形態の要素および特徴がさらなる記載なしに他の実施形態に組み込まれる場合があると考えられる。
本開示の態様は、最尤最適化を実行し、したがって、独立同分布(IID)仮定に適合しないトレーニングデータの影響を軽減するために複数のモデルインスタンス(または「エキスパート」)を使用することに基づいて連合機械学習性能を向上させるための装置、方法、処理システム、およびコンピュータ可読媒体を提供する。有利には、本明細書で説明する連合混合モデル方法は、各連合デバイスにわたって同期的に実行することもまたは非同期的に実行することもできる。したがって、このような連合混合モデル方法は、処理、電力、データ接続、および/またはメモリサイズの制限を有するモバイル、IoT、エッジ、およびその他の処理デバイスなどの低出力処理システムを連合学習に利用するうえで特に有用である。
ニューラルネットワーク、ディープニューラルネットワーク、およびディープラーニングに関する簡単な背景
ニューラルネットワークは、相互接続されたノードの層として構成される。一般に、ノード(またはニューロン)は、計算が行われる場所である。たとえば、ノードは、入力データを増幅するかまたは減衰させる重み(または係数)のセットと入力データを組み合わせてもよい。したがって、入力信号の増幅または減衰は、ネットワークが学習しようとしているタスクに関する様々な入力への相対的重要性の割当てと見なされてもよい。一般に、各入力-重み積が加算(または累積)され、次いで、信号がネットワーク内をさらに進行すべきかどうかおよびどのくらい進行すべきかを判定するために、この和がノードの活性化関数を通過させられる。
たいていの基本的な実装形態では、ニューラルネットワークは入力層と、隠れ層と、出力層とを有してもよい。「ディープ」ニューラルネットワークは一般に、2つ以上の隠れ層を有する。
ディープラーニングは、ディープニューラルネットワークをトレーニングする方法である。一般に、ディープラーニングは、ネットワークへの入力をネットワークから出力にマップし、したがって、入力xと出力yとの間の未知の関数f(x)=yを近似できるようになるので「万能近似器」と呼ばれることがある。言い換えれば、ディープラーニングはxをyに変換するための正しいfを求める。
より詳細には、ディープラーニングは、特徴の異なるセット、すなわち、前の層からの出力に基づいてノードの各層をトレーニングする。したがって、ディープニューラルネットワークの各連続層によって、各特徴がより複雑になることがある。したがって、ディープラーニングは、入力データから徐々に高いレベルの特徴を抽出し、複数の層および抽象化レベルを通じて入力データの有用な特徴表現を増強することによって、物体認識などの複雑なタスクを実行することができるので非常に有効である。
たとえば、視覚データが提示された場合、ディープニューラルネットワークの第1の層は、入力データにおいてエッジなどの比較的単純な特徴を認識するようになる場合がある。別の例では、オーディオデータが提示された場合、ディープニューラルネットワークの第1の層は、入力データの特定の周波数におけるスペクトルパワーを認識するようになる場合がある。次いで、ディープニューラルネットワークの第2の層は、第1の層の出力に基づいて、視覚データの単純な形状などの特徴の組合せまたはオーディオデータについての音声の組合せを認識するようになる場合がある。次いで、より上位の層が視覚データにおける複雑な形状またはオーディオデータにおける単語を認識するようになる場合がある。さらに上位の層が一般的な視覚対象または話し言葉を認識するようになる場合がある。したがって、ディープラーニングアーキテクチャは、自然階層構造を有する問題に適用されたときに特にうまく働くことがある。
機械学習モデル最尤最適化
機械学習モデルは、ニューラルネットワーク(たとえば、ディープニューラルネットワークおよび畳み込みニューラルネットワーク)、回帰(たとえば、ロジスティックまたは線形)、決定木(木のランダムフォレストを含む)、サポートベクターマシン、カスケード型分類器などの多数の形態を有する。ニューラルネットワークについては、本明細書全体にわたって、本明細書で説明する方法についての1つの例示的な適用例として説明するが、これらの同じ方法が同様に他の種類の機械学習モデルに適用されてもよい。
機械学習では、モデルのトレーニングは、観測情報のセットを取り込み、目標確率が最大化されるように最尤推定を実行することによる最適化プロセスと見なされてもよい。統計では、最尤推定は、仮定される統計モデルの下で観測されるデータの確率が最も高くなるように、尤度関数を最大化することによって確率分布のパラメータを推定する方法である。したがって、機械学習モデルのコンテキストにおいて、以下の数式が導出されてもよい。
Figure 2023505973000002
上記の数式において、
Figure 2023505973000003
は最尤推定量であり、x1..., xMはM個の観測情報であり、gは観測情報を取り込む関数であり、pmodelは、θによってインデックス付けされた同じ空間にわたる確率分布であり、
Figure 2023505973000004
は、
Figure 2023505973000005
の経験的分布の期待値である。
混合モデル
混合モデルは、観測されたデータセットが個々の観測情報が属する部分母集団を特定する必要なしにデータの母集団全体内の部分母集団の存在を表すための確率モデルである。したがって、混合モデルは、観測情報の母集団全体内の観測情報の確率分布を表す混合分布に対応する。混合モデルは、部分母集団特定情報なしで、併合された母集団に関する観測情報のみが与えられた場合に部分母集団の特性に関する統計的推論を行うために使用されてもよい。
混合モデルを実装するためのいくつかの方法は、前提となる部分母集団特定情報が個々の観測情報(またはそのような部分母集団への重み)に対応する特定情報であると判定するステップを含み、その場合、これらをある種の教師なし学習手順またはクラスタリング手順と見なすことができる。たとえば、ガウス混合は、各々がk∈{1,...,K}によって識別されるいくつかのガウス分布を含む関数であり、この場合、Kは統計分布、データ点の重心などのいくつかの一般的な特性を共有するデータセットにおけるクラスタの数である。混合における個々の各ガウス分布kは、ガウス分布の中心を定義する平均μ、ガウス分布の幅(多変量シナリオにおける楕円体の寸法と等価である)を定義する共分散Σ、およびガウス関数のサイズを定義する混合確率πの各パラメータを含んでもよい。
各ガウス分布に関するパラメータのセットはθ={π,μ,Σ}と定義されてもよい。次いで、最大化アルゴリズムを適用して期待値最大化(EM)アルゴリズムなどのθの最適値を判定することができる。たとえば、最適値は次式に従って算出されてもよい。
Figure 2023505973000006
特に、これは1つの例示的な定式化であり、他の定式化が可能である。
連合機械学習
従来の機械学習は、集中データ収集および処理アーキテクチャを利用する。それに対して、連合機械学習は、機械学習プロセスを複数のデバイスに分散させ、各デバイスは、集中データセットとして共有可能でない場合があるデバイス自体の連合データセットを有する。したがって、連合機械学習は、スマートフォンなどの様々な「エッジ」処理デバイスが、個々のエッジ処理デバイス上でトレーニングデータを使用するが、個々のデバイスデータを共有せずに、共有機械学習モデルを協働で学習するのを可能にする。その代わりに、エッジ処理デバイスは、処理デバイス自体のローカルモデル最適化手順から得られる、重みおよびバイアスなどのモデルパラメータを共有するにすぎない。したがって、データをネットワークを介して集中レポジトリに転送する必要がなく、データ伝送コストが低減し、一方データセキュリティおよび機密性が向上する。
特に、利用可能な計算リソースを有するエッジ処理デバイスの数が急速に増大するとともにそのようなエッジ処理デバイスの処理機能が強化されているので、連合機械学習は極めて注目を集めるようになってきている。エッジ処理デバイスは、単体では専用の機械学習処理システム(たとえば、メインフレーム、サーバ、スーパーコンピュータなど)ほど強力ではない場合があるが、数が非常に多いので比較的低い処理能力を補償することができる。さらに、スマートフォンなどのエッジデバイスは、ニューラルプロセッサなどの特殊処理チップを組み込むようになっており、そのような処理チップは、機械学習処理の実行専用に使用される。したがって、いくつかの例では、エッジデバイスは、その特殊機械学習ハードウェアに起因して標準的なコンピューティングデバイスよりも高性能である場合がある。
本明細書で説明するように、モデル混合は、複数のモデル(またはサブモデルまたはエキスパート)を組み合わせて結果的なモデルを生成するために使用されてもよい。
連合学習アーキテクチャの例
図1は、例示的な連合学習アーキテクチャ100を示す。
この例では、モバイルデバイス102A~102Cは、エッジ処理デバイスの例であり、各々がそれぞれローカルデータストア104A~104Cを有し、それぞれローカル機械学習モデルインスタンス106A~106Cを有する。たとえば、モバイルデバイス102Aは、初期機械学習モデルインスタンス106Aを含み、初期機械学習モデルインスタンス106Aは、モデルデバイス102Aが、たとえばグローバル機械学習モデルコーディネータ108から受信してもよく、グローバル機械学習モデルコーディネータ108は、いくつかの例ではソフトウェアプロバイダであってもよい。モバイルデバイス102A~102Cの各々は、ローカルデータ104A~104Cの処理などの何らかの有用なタスクについてのそれぞれの機械学習モデルインスタンス(106A~106C)を使用し、そのそれぞれの機械学習モデルインスタンス(106A~106C)のローカルトレーニングおよび最適化をさらに実行してもよい。
たとえば、モバイルデバイス102Aは、モバイルデバイス102A上のデータ104Aとして記憶された写真に対して顔認識を実行するためにモバイルデバイス102Aの機械学習モデル106Aを使用してもよい。このような写真は個人用と見なされることがあるので、モバイルデバイス102Aは、その写真データをグローバルモデルコーディネータ108と共有することを望まないことがあるかまたは共有するのを防止される場合がある。しかし、モバイルデバイス102Aは、モデルパラメータ(たとえば、重みおよびバイアス)の更新などのモバイルデバイス102Aのローカルモデル更新をグローバルモデルコーディネータ108と共有することを望むかまたは共有することを許可される場合がある。同様に、モバイルデバイス102Bおよび102Cはそれぞれ、そのローカル機械学習モデルインスタンス106Bおよび106Cを同様に使用し、また、モバイルデバイス102Bおよび102Cのローカルモデル更新を生成するために使用される基礎的なデータ(104Bおよび104C)を共有せずにローカルモデル更新をグローバルモデルコーディネータ108と共有してもよい。
グローバルモデルコーディネータ108は、グローバル(またはコンセンサス)モデル更新を決定するためにローカルモデル更新のすべてを使用してもよく、次いでグローバルモデル更新がモバイルデバイス102A~102Cに配信されてもよい。このようにして、連合機械学習は、トレーニングデータおよび処理を集中させずにモバイルデバイス102A~102Cを使用して実行されてもよい。
したがって、連合学習アーキテクチャ100は、機械学習モデルの非集中化展開およびトレーニングを可能にし、それによって、有利にはレイテンシが短縮され、ネットワーク利用度、および電力消費量が低減し、一方、データの秘密性およびセキュリティが維持され、場合によってはアイドルな計算リソースの利用率が高くなる。さらに、連合学習アーキテクチャ100は有利には、ローカルモデル(たとえば、106A~106C)がそれぞれに異なるデバイス上で異なるように進化するのを可能にし、同時にローカルモデルの進化に基づいてグローバルモデルをトレーニングする。
特に、それぞれ、モバイルデバイス102A~102C上に記憶され、機械学習モデル106A~106Cによって使用されるローカルデータは、個々のデータシャード(たとえば、データ104A~104C)および/または連合データと呼ばれることがある。これらのデータシャードはそれぞれに異なるユーザによってそれぞれに異なるデバイス上で生成され、混合されることはないので、互いに対して独立同分布される(IID)と仮定することはできない。このことは、より一般的には、機械学習モデルをトレーニングするために組み合わされることのないデバイスに固有の任意の種類のデータに当てはまる。それぞれモバイルデバイス102A~102Cの個々のデータセット104A~104Cを組み合わせることによってのみ、IID仮定が有効であるグローバルデータセットを生成することができる。
連合混合モデルによる機械学習
図1に関して説明するデータ104A~104Cなどの連合機械学習に使用される連合データの非IID特性を解消するには、最尤最適化法をK個の異なる予測モデルまたは「エキスパート」の混合体に拡張してもよい。各エキスパートは結合データ空間(たとえば、すべての連合データ空間を組み合わせたデータ空間)内の領域をモデル化することが予想される。そうするには、K個の個々の予測モデルの混合体から観測データ(たとえば、図1のモバイルデバイス102A~102Cによって生成されたデータ)が作成されたと仮定されてもよい。したがって、たとえば、モバイルデバイス102A上のモデル106Cは、連合混合モデル学習のコンテキストにおける複数のK個の混合モデルコンポーネント(たとえば、エキスパート)を備える単一のモデルと見なされてもよい。有利には、連合混合モデルは、このモデルを使用するアプリケーションに入力を与えそのアプリケーションから出力を受信するための単一のモデルとして働く。
一例では、K個のエキスパートは、K個の異なるニューラルネットワークモデルを指すことがある。いくつかの場合には、ニューラルネットワークは同じアーキテクチャを有してもよく、一方、他の場合にはニューラルネットワークは異なってもよい。Zをすべてのzs,iの集合とする。ここで、あらゆるデータ点(ys,i,xs,i)にzがある。その場合、zs,iは、特定のデータ点(ys,i,xs,i)をモデル化するためにK個のエキスパート(この例では、たとえばニューラルネットワーク)のうちのどれが選択されるかを示す。
K個のニューラルネットワークが与えられた場合、どの個々のニューラルネットワークkがデータ点を記述するのに「最良」であるか、または個々の各ニューラルネットワークkが所与のデータ点をどれくらいうまくモデル化するか(たとえば、zs,iにおいて事後分布を算出することができる)など、モデルに関してそれぞれに異なる質問をすることができる。本明細書で説明する方法では、K個のエキスパートのセットのうちのどのエキスパート(たとえば、ニューラルネットワーク)が「最良」であるかを判定することは必ずしも目標ではない。むしろ、目標は、各々のエキスパートがグローバルデータセットの異なる部分を専門とするようにK個のエキスパート(たとえば、ニューラルネットワーク)をトレーニングすることである。
連合トレーニングコンテキストでは、データD={(x1,y1,...,(xN,yN)はS個の異なるシャード(またはセット)にわたって分割されてもよく、それによって、各シャードsはNs個のデータ点を所有する。さらに、すべてのS個のシャードにわたるデータ(たとえば、D=D1..U...UDS)がK個のクラスタから取り込まれ、クラスタのパラメータwが個々の各クラスタにおけるすべてのシャードにわたって共有されると仮定することができる。
その場合、モデルの総確率は以下のとおりである。
Figure 2023505973000007
集計すべきデータは、モデルについての正しい勾配を算出するためにある位置に位置すると仮定されてもよい。したがって、次式に従ってwに対する勾配を算出することによってデータ対数尤度が最大化される。
Figure 2023505973000008
連合学習シナリオにおいて、グローバルサーバ(たとえば、図1におけるグローバルモデルコーディネータ108)が各ローカルワーカ(たとえば、図1におけるモバイルデバイス102A~102C)に現在のパラメータwのコピーを送信する。各ワーカsは、そのNs個のデータ点に対応する全勾配の一部分を算出する(数式(5)における外側の括弧内)タスクを指示される。ローカルワーカ当たりに1つの勾配更新を実行するだけでなく、ローカルワーカは、パラメータのローカルワーカのローカルコピーに対していくつかの勾配更新を実行し、それによって、頻繁で低速であり、場合によってはコストがかかるデータ通信に依存せずにローカルな進行を可能にする。
場合によっては、数式(5)に従った各ローカルワーカによる勾配の反復的な判定に基づいてローカルワーカによる更新の平均化は最適には行われない。これは、各ローカルシャード上の学習進度を加速するためにAdam(ディープニューラルネットワークをトレーニングするために設計されている)などの適応学習率最適化アルゴリズムを使用すると有利であることに起因する。各ローカルワーカが個々のAdamモメンタムを維持するので、得られる更新を単純に平均化すると、他のシャードと比較した(セットKの)特定のエキスパートkに対する各シャードの影響が正しく考慮されない。
この技術的モデル最適化問題の技術的解決手段は、数式(5)をさらに展開させることである。表記の都合上、1つの混合コンポーネントwkのみに対する勾配を対象とする場合があり、次式に従って「ソフト」カウントNskが定義されることがある。
Figure 2023505973000009
したがって、数式(6)は数式(5)を次のように拡張するのを可能にする。
Figure 2023505973000010
数式(11)において、ローカルワーカは、τ個のステップについて外側の括弧内の勾配を算出し適用する。ws,k tは、τ回のローカル更新の後、ws,k t+τとなり、各ローカルワーカはパラメータの更新済みセットws,k t+τをグローバルサーバに送信する。グローバルサーバは次いで、現在のグローバルサーバパラメータへの変更として「有効勾配」を算出することによってこれらの更新済みパラメータを解釈する。たとえば、次式のとおりである。
Figure 2023505973000011
図2は、上記の導出された数式に基づく連合混合アルゴリズムの例を示す。
なお、図2のアルゴリズムは分散同期トレーニングアルゴリズムの一例であり、このアルゴリズムには変形実施形態が可能である。たとえば、このアルゴリズムは非同期トレーニングコンテキストについて変形されてもよい。
より情報の多い事前分布の生成
データ点(ys,i,xs,i)についてエキスパートkが選択されるより情報の多い事前分布p(zs,i)を許容するように数式(1)についての定式化をさらに拡張してもよい。ここで、下付き文字sおよびiはそれぞれ、数式(1)に関して説明したようにシャードおよびシャード内のデータ点を列挙する。直感的には、特定の機械学習モデルについて分類(または回帰)タスクを実行するのに最も適したエキスパートkをすべてのK個のエキスパートから選択すべきである。一実施形態では、エキスパートkの予測にどれほどの重みを加えるべきかに関する決定は、たとえば、セットK内の各エキスパートkに等しい確率を割り当てるのではなく、入力xs,iを見ることによって下すことができる。
データ点xに基づいてp(z=k|x)を判定するには、マッピングをパラメータ化して学習する必要がある。一実施形態では、このことは、たとえば、次式に従った(教師なし)クラスタリング問題の責任としてp(z=k|x)を解釈することによって実現されてもよい。
Figure 2023505973000012
したがって、各クラスタは、φkによってパラメータ化され、クラスタkとエキスパートkとの間には1対1の対応関係があり、k'は加算についてのインデックスを表す。パラメータφkは、同じアルゴリズムの定式化の一部としてwkを用いて同時最適化される。アルゴリズム1においてwkについて説明したのと同様に、パラメータφkは、ローカルデータを使用してローカル更新を実行することによってトレーニングされ、グローバルサーバ(たとえば、図1におけるグローバルモデルコーディネータ108)に周期的に送信される(たとえば、グローバルサーバと同期化される)。
エッジデバイス上で連合混合モデルデータを処理する例示的な方法
図3は、たとえば、図1のモバイルデバイス102A~102Cなどのエッジデバイス上で連合混合モデルデータを処理する例示的な方法300を示す。
方法300は、ステップ302から始まり、エッジ処理デバイスsにおいて複数の機械学習モデルKの各機械学習モデルkについてグローバルパラメータのセットwk tを受信する。
方法300は次いで、ステップ304に進み、複数の機械学習モデルKのそれぞれの各機械学習モデルkについて、機械学習モデル出力ys,kを生成するために、エッジ処理デバイスにおいて、エッジ処理デバイス上にローカルに記憶されたデータを、それぞれの機械学習モデルkを用いてグローバルパラメータのセットwk tに従って処理する。
方法300は次いで、ステップ306に進み、複数の機械学習モデルKのそれぞれの各機械学習モデルkについて、エッジ処理デバイスにおいて、機械学習モデル出力ys,kに関するユーザフィードバックを受信する。
方法300は次いで、ステップ308に進み、複数の機械学習モデルKのそれぞれの各機械学習モデルkについて、ローカルに更新された機械学習モデルパラメータws,k t+τを生成するために、エッジ処理デバイスにおいて、機械学習出力ys,kおよび機械学習モデル出力ys,kに関連するユーザフィードバックに基づいてそれぞれの機械学習モデルkの最適化を実行する。なお、いくつかの実施形態では、モデルkについてのys,kに加えてすべての他のモデルk*について最適化はすべての他のモデル出力ys,k *に依存する。
方法300は次いで、ステップ310に進み、複数の機械学習モデルKのそれぞれの各機械学習モデルkについて、ローカルに更新された機械学習モデルパラメータws,k t+τをリモート処理デバイスに送信する。
方法300は次いで、ステップ312に進み、複数の機械学習モデルKの各機械学習モデルkについて、グローバルに更新された機械学習モデルパラメータのセットwk t+τをリモート処理デバイスから受信する。
方法300のいくつかの実施形態では、それぞれの各機械学習モデルkについてのグローバルに更新された機械学習モデルパラメータwk t+τは、ローカルに更新された機械学習モデルパラメータws,k t+τに少なくとも部分的に基づく。
方法300のいくつかの実施形態は、エッジ処理デバイスにおいて、ローカルに更新された機械学習モデルパラメータws,k t+τをリモート処理デバイスに送信する前にいくつかの最適化τを実行するステップをさらに含む。
方法300のいくつかの実施形態では、複数の機械学習モデルKのそれぞれの各機械学習モデルkについてのグローバルに更新された機械学習モデルパラメータwk t+τは、第2のエッジ処理デバイスのローカルに更新された機械学習モデルパラメータに少なくとも部分的に基づく。
方法300のいくつかの実施形態では、ユーザフィードバックは、機械学習モデル出力の正しさの指示を含む。
方法300のいくつかの実施形態では、エッジ処理デバイス上にローカルに記憶されるデータは、画像データ、オーディオデータ、またはビデオデータのうちの1つである。
方法300のいくつかの実施形態では、エッジ処理デバイスは、スマートフォンまたはモノのインターネットデバイスの一方である。
サーバデバイス上で連合混合モデルデータを処理する例示的な方法
図4は、サーバデバイス(たとえば、図1のグローバルモデルコーディネータ108)などの集中デバイス上で連合混合モデルデータを処理する例示的な方法400を示す。
方法400は、ステップ402から始まり、それぞれの機械学習モデルkについてのモデルパラメータの初期セットwk tをサーバからそれぞれのリモート処理デバイスsに送信する。
方法400は次いで、ステップ404に進み、それぞれのリモート処理デバイスsからサーバにおいて、それぞれの機械学習モデルkについてのモデルパラメータの更新済みセットws,k t+τを受信する。
方法400は次いで、ステップ406に進み、グローバルモデルパラメータの更新済みセットwk t+τを生成するために、サーバにおいて、複数のリモート処理デバイスSの各リモート処理デバイスsから受信されたモデルパラメータの更新済みセットws,k t+τに基づいてそれぞれの機械学習モデルkの最適化を実行する。
なお、いくつかの実施形態では、ステップ402~ステップ406は、複数のモデルKのそれぞれの各モデルkについておよび複数のリモート処理デバイスSのそれぞれの各リモート処理デバイスsについて反復的に実行されてもよい。
方法400は次いで、ステップ408に進み、複数のモデルKの各機械学習モデルkについてのグローバルモデルパラメータの更新済みセットwk t+τをサーバから複数のリモート処理デバイスSの各リモート処理デバイスsに送信する。
方法400のいくつかの実施形態では、サーバにおいて、それぞれの機械学習モデルkの最適化を実行するステップは、
Figure 2023505973000013
に従って有効勾配を算出するステップを含む。
方法400のいくつかの実施形態は、複数のモデルKのそれぞれの各モデルkについて、それぞれのモデルkについての重み付けパラメータφkによってパラメータ化された対応する密度推定量p(x|φk)を判定するステップをさらに含む。重み付けパラメータφkは、モデル入力に基づいてk個のモデル(またはサブモデル)を単一のモデル出力に組み合わせるために使用されてもよい。このようにして、複数のモデル(たとえば、K個のモデル)を重み付けパラメータφkを介してトレーニングし「混合」することができる。
方法400のいくつかの実施形態は、
Figure 2023505973000014
に従ってそれぞれのモデルkについての事前混合重みを判定するステップをさらに含む。
方法400のいくつかの実施形態では、リモート処理デバイスはスマートフォンである。
方法400のいくつかの実施形態では、リモート処理デバイスはモノのインターネットデバイスである。
方法400のいくつかの実施形態では、複数のモデルKのそれぞれの各モデルkはニューラルネットワークモデルである。方法400のいくつかの実施形態では、複数のモデルKのそれぞれの各モデルkは同じネットワーク構造を備える。方法400のいくつかの実施形態では、複数のモデルKのうちの1つまたは複数は、複数のモデルKにおける他のモデルとは異なるネットワーク構造を備える。
例示的な処理システム
図5は、例示的な電子デバイス500を示す。電子デバイス500は、図3および図4に関する方法を含む、本明細書で説明する方法を実行するように構成されてもよい。
電子デバイス500は、中央演算処理ユニット(CPU)502を含み、CPU502は、いくつかの実施形態ではマルチコアCPUであってもよい。CPU502において実行される命令は、たとえばCPU502に関連するプログラムメモリからロードされてもよく、またはメモリブロック524からロードされてもよい。
電子デバイス500はまた、グラフィックス処理ユニット(GPU)504、デジタル信号プロセッサ(DSP)506、ニューラル処理ユニット(NPU)508、マルチメディア処理ブロック510、マルチメディア処理ユニット510、およびワイヤレス接続ブロック512などの、特定の機能に調整された追加の処理ブロックを含む。
508などのNPUは一般に、人工ニューラルネットワーク(ANN)、ディープニューラルネットワーク(DNN)、ランダムフォレスト(RF)などを処理するためのアルゴリズムなどの機械学習アルゴリズムを実行するためのすべての必要な制御および演算論理を実施するように構成される特殊回路である。NPUは、代替的にテンソル処理ユニット(TPU)、ニューラルネットワークプロセッサ(NNP)、インテリジェンス処理ユニット(IPU)、ビジョン処理ユニット(VPU)、またはグラフ処理ユニットと呼ばれることもある。
508などのNPUは、画像分類、機械変換、物体検出、および様々な他の予測モデルなどの一般的な機械学習タスクの実行を加速するように構成されてもよい。いくつかの実施形態では、複数のNPUが、システムオンチップ(SoC)などの単一のチップ上でインスタンス化されてもよく、一方、他の実施形態では、専用ニューラルネットワーク加速器の一部であってもよい。
NPUは、トレーニングまたは推論向けに最適化されてもよく、または場合によっては、トレーニングと推論との性能のバランスを取るように構成されてもよい。トレーニングと推論の両方を実行することができるNPUでは、それにもかかわらず一般に2つのタスクが独立して実行されてもよい。
トレーニングを加速するように設計されたNPUは一般に、新しいモデルの最適化を加速するように構成されてもよく、最適化は、計算量の多い動作であり、(ラベル付けまたはタグ付けされることが多い)既存のデータセットを入力することと、データセットを反復することと、次いでモデル性能を向上させるために重みおよびバイアスなどのモデルパラメータを調整することとを含む。一般に、誤った予測に基づく最適化は、モデルの各層を逆伝播することと、予測誤差を低減させるために勾配を判定することとを含む。
推論を加速するように設計されたNPUは一般に、完全なモデルに作用するように構成される。したがって、そのようなNPUは、新しいデータを入力し、モデル出力(たとえば、推論情報)を生成するようにすでにトレーニング済みのモデルによってデータを高速に処理するように構成されてもよい。
一実装形態では、NPU508は、CPU502、GPU504、および/またはDSP506のうちの1つまたは複数の一部である。
いくつかの実施形態では、ワイヤレス接続ブロック512は、たとえば、第3世代(3G)接続、第4世代(4G)接続(たとえば、4G LTE)、第5世代接続(たとえば、5GまたはNR)、Wi-Fi接続、Bluetooth接続、およびワイヤレスデータ伝送標準用のコンポーネントを含んでもよい。ワイヤレス接続処理ブロック512は、さらに1つまたは複数のアンテナ514に接続される。
電子デバイス500は、任意の様式のセンサに関連する1つまたは複数のセンサプロセッサ516、任意の様式の画像センサに関連する1つまたは複数の画像信号プロセッサ(ISP)518、および/または衛星ベースの測位システムコンポーネント(たとえば、GPSまたはGLONASS)ならびに慣性測位システムコンポーネントを含んでもよいナビゲーションプロセッサ520を含んでもよい。
電子デバイス500は、画面、タッチ式表面(タッチ式ディスプレイを含む)、物理ボタン、スピーカ、マイクロフォンなどの1つまたは複数の入力および/または出力デバイス522を含んでもよい。
いくつかの実施形態では、電子デバイス500のプロセッサのうちの1つまたは複数は、ARMまたはRISC-V命令セットに基づくプロセッサであってもよい。
電子デバイス500は、メモリ524も含み、メモリ524は、ダイナミックランダムアクセスメモリ、フラッシュベーススタティックメモリなどの1つまたは複数のスタティックおよび/またはダイナミックメモリを表す。この例では、メモリ524はコンピュータ実行可能コンポーネントを含み、コンピュータ実行可能コンポーネントは、電子デバイス500の前述のプロセッサのうちの1つまたは複数によって実行されてもよい。詳細には、この実施形態では、メモリ524は、送信コンポーネント524Aと、受信コンポーネント524Bと、処理コンポーネント524Cと、判定コンポーネント524Dと、出力コンポーネント524Eと、トレーニングコンポーネント524Fと、推論コンポーネント524Gと、最適化コンポーネント524Hとを含む。図示のコンポーネントおよび図示されていない他のコンポーネントは、本明細書で説明する方法の様々な態様を実行するように構成されてもよい。
一般に、電子デバイス500および/またはそのコンポーネントは、本明細書で説明する方法を実行するように構成されてもよい。
特に、他の実施形態では、電子デバイス500がサーバコンピュータなどである場合のように、電子デバイス500の態様が省略されてもよい。たとえば、マルチメディアコンポーネント510、ワイヤレス接続512、センサ516、ISP518、および/またはナビゲーションコンポーネント520は他の実施形態では省略されてもよい。さらに、クラウドベース処理環境のように、電子デバイス500の各態様が分散されてもよい。
図6は、本明細書で説明する実施形態を用いて実装される場合がある例示的なマルチプロセッサ処理システム600を示す。たとえば、マルチ処理システム600は、図5の電子デバイス500の様々なプロセッサを表してもよい。
この例では、システム600はプロセッサ601、603、および605を含むが、他の例では、任意の数の個々のプロセッサが使用されてもよい。さらに、プロセッサ601、603、および605は、同様に示されているが、本明細書で説明するCPU、GPU、DSP、NPUなどの電子デバイスにおける様々な異なる種類のプロセッサを表してもよい。
プロセッサ601、603、および605の各々は、命令スケジューラと、様々なハードウェア部分コンポーネント(たとえば、ハードウェアX、ハードウェアY、およびハードウェアZ)と、ローカルメモリとを含む。いくつかの実施形態では、ローカルメモリは、密結合メモリ(TCM)であってもよい。なお、プロセッサ601、603、および605の各々のコンポーネントはこの例では同じコンポーネントとして示されているが、他の例では、プロセッサ601、603、および605のいくつかまたは各々は、それぞれに異なるハードウェア構成、それぞれに異なるハードウェア要素などを有してもよい。
プロセッサ601、603、および605の各々はまた、DDRメモリなどのグローバルメモリ、または他の種類の揮発性ワーキングメモリとデータ通信する。たとえば、グローバルメモリ607は、図5のメモリ524を表してもよい。
いくつかの実装形態において、600などのマルチプロセッサ処理システムでは、プロセッサのうちの1つはマスタプロセッサとして働いてもよい。たとえば、この例では、プロセッサ601がマスタプロセッサであってもよい。マスタプロセッサは、実行されたときにニューラルネットワークモデルなどのモデルが処理システム600の様々なコンポーネントによってどのように処理されるかを決定することができるコンパイラを含んでもよい。たとえば、モデルの処理の一部を所与のプロセッサ(たとえば、プロセッサ601)内の様々なハードウェア(たとえば、ハードウェアX、ハードウェアY、およびハードウェアZ)にマップするとともに、モデルの処理の一部を他のプロセッサ(たとえば、プロセッサ603および605)ならびにそれに関連するハードウェアにマップすることによってハードウェア並列構成が実装されてもよい。たとえば、本明細書で説明する並列ブロック処理アーキテクチャ内の並列ブロックは、プロセッサ601、603、および605における様々なハードウェアのそれぞれに異なる部分にマップされてもよい。
例示的な条項
条項1: データを処理する方法であって、処理デバイスにおいて、複数の機械学習モデルの各機械学習モデルについてグローバルパラメータのセットを受信するステップと、複数の機械学習モデルのそれぞれの各機械学習モデルについて、機械学習モデル出力を生成するために、処理デバイスにおいて、処理デバイス上にローカルに記憶されたデータをそれぞれの機械学習モデルを用いてグローバルパラメータのセットに従って処理するステップと、処理デバイスにおいて、機械学習モデル出力に関するユーザフィードバックを受信するステップと、ローカルに更新された機械学習モデルパラメータを生成するために、処理デバイスにおいて、機械学習モデル出力および機械学習モデル出力に関連するユーザフィードバックに基づいてそれぞれの機械学習モデルの最適化を実行するステップと、ローカルに更新された機械学習モデルパラメータをリモート処理デバイスに送信するステップと、複数の機械学習モデルの各機械学習モデルについて、グローバルに更新された機械学習モデルパラメータのセットをリモート処理デバイスから受信するステップであって、それぞれの各機械学習モデルについてのグローバルに更新された機械学習モデルパラメータのセットが、ローカルに更新された機械学習モデルパラメータに少なくとも部分的に基づく、ステップとを含む方法。
条項2: 処理デバイスにおいて、ローカルに更新された機械学習モデルパラメータをリモート処理デバイスに送信する前にいくつかの最適化を実行するステップをさらに含む、条項1に記載の方法。
条項3: 複数の機械学習モデルのそれぞれの各機械学習モデルについてのグローバルに更新された機械学習モデルパラメータのセットは、第2の処理デバイスのローカルに更新された機械学習モデルパラメータに少なくとも部分的に基づく、条項1および2のいずれか一項に記載の方法。
条項4: ユーザフィードバックは、機械学習モデル出力の正しさの指示を含む、条項1から3のいずれか一項に記載の方法。
条項5: 処理デバイス上にローカルに記憶されるデータは、画像データ、オーディオデータ、またはビデオデータのうちの1つである、条項1から4のいずれか一項に記載の方法。
条項6: 処理デバイスは、スマートフォンまたはモノのインターネットデバイスの一方である、条項1から5のいずれか一項に記載の方法。
条項7: 処理デバイスにおいて、処理デバイス上にローカルに記憶されたデータを機械学習モデルを用いて処理するステップは、1つまたは複数のニューラル処理ユニットによって少なくとも部分的に実行される、条項1から6のいずれか一項に記載の方法。
条項8: 処理デバイスにおいて、機械学習モデルの最適化を実行するステップは、1つまたは複数のニューラル処理ユニットによって少なくとも部分的に実行される、条項1から7のいずれか一項に記載の方法。
条項9: データを処理する方法であって、複数の機械学習モデルのそれぞれの各機械学習モデルについて、複数のリモート処理デバイスのそれぞれの各リモート処理デバイスにおいて、それぞれの機械学習モデルについてのグローバルモデルパラメータの初期セットをサーバからそれぞれのリモート処理デバイスに送信するステップと、それぞれの機械学習モデルについてのモデルパラメータの更新済みセットをそれぞれのリモート処理デバイスからサーバにおいて受信するステップと、グローバルモデルパラメータの更新済みセットを生成するために、サーバにおいて、複数のリモート処理デバイスの各リモート処理デバイスから受信されたモデルパラメータの更新済みセットに基づいてそれぞれの機械学習モデルの最適化を実行するステップと、複数の機械学習モデルの各機械学習モデルについてのグローバルモデルパラメータの更新済みセットをサーバから複数のリモート処理デバイスの各リモート処理デバイスに送信するステップとを含む方法。
条項10: サーバにおいて、それぞれの機械学習モデルの最適化を実行するステップは、それぞれの機械学習モデルについてのグローバルモデルパラメータの初期セットの各モデルパラメータについての有効勾配を算出するステップを含む、条項9に記載の方法。
条項11: 複数の機械学習モデルのそれぞれの各機械学習モデルについて、それぞれの機械学習モデルについての重み付けパラメータによってパラメータ化された対応する密度推定量を判定するステップをさらに含む、条項9および10のいずれか一項に記載の方法。
条項12: それぞれの機械学習モデルについての事前混合重みを決定するステップをさらに含む、条項11に記載の方法。
条項13: 複数のリモート処理デバイスはスマートフォンを含む、条項9から12のいずれか一項に記載の方法。
条項14: 複数のリモート処理デバイスはモノのインターネットデバイスを含む、条項9から13のいずれか一項に記載の方法。
条項15: 複数の機械学習モデルのそれぞれの各機械学習モデルはニューラルネットワークモデルである、条項9から14のいずれか一項に記載の方法。
条項16: 複数の機械学習モデルのそれぞれの各機械学習モデルは同じネットワーク構造を備える、条項15に記載の方法。
条項17: 処理システムであって、コンピュータ実行可能命令を含むメモリと、コンピュータ実行可能命令を実行し、処理システムに条項1~16のいずれか一項に記載の方法を実行させるように構成される1つまたは複数のプロセッサとを備える処理システム。
条項18: 条項1から16のいずれか一項に記載の方法を実行するための手段を備える処理システム。
条項19: 非一時的コンピュータ可読媒体であって、処理システムの1つまたは複数のプロセッサによって実行されたときに、処理システムに条項1から16のいずれか一項に記載の方法を実行させるコンピュータ実行可能命令を含む非一時的コンピュータ可読媒体。
条項20: 条項1から16のいずれか一項に記載の方法を実行するためのコードを含むコンピュータ可読記憶媒体上に具現化されるコンピュータプログラム製品。
追加の考慮事項
前述の説明は、本明細書で説明する様々な実施形態を任意の当業者が実践できるようにするために提供される。以下に説明する例は、特許請求の範囲に記載された範囲、適用可能性、または実施形態を限定するものではない。これらの実施形態への様々な修正は当業者に容易に明らかになり、本明細書で定義される一般原理は他の実施形態に適用されてもよい。たとえば、本開示の範囲から逸脱することなく、説明する要素の機能および構成において変更が行われてもよい。様々な例は、適宜に、様々な手順またはコンポーネントを省略してよく、置換してよく、または追加してもよい。たとえば、説明する方法は、説明する順序とは異なる順序で実行されてよく、様々なステップが、追加されてよく、省略されてよく、または組み合わせられてもよい。また、いくつかの例に関して説明する特徴は、いくつかの他の例において組み合わせられてよい。たとえば、本明細書に記載する任意の数の態様を使用して、装置が実装されてよく、または方法が実践されてよい。加えて、本開示の範囲は、本明細書に記載する開示の様々な態様に加えて、またはそれらの態様以外の、他の構造、機能性、または構造および機能性を使用して実践されるような装置または方法を対象とするものである。本明細書で開示する本開示のいずれの態様も、特許請求の範囲の1つまたは複数の要素によって具現され得ることを理解されたい。
本明細書では、「例示的な」という用語は「例、インスタンス、または例示として働くこと」を意味する。「例示的」として本明細書で説明するいかなる態様も、必ずしも他の態様よりも好適または有利なものと解釈すべきではない。
本明細書で使用される、項目のリスト「のうちの少なくとも1つ」を指す句は、単一のメンバーを含む、それらの項目の任意の組合せを指す。一例として、「a、b、またはcのうちの少なくとも1つ」は、a、b、c、a-b、a-c、b-c、およびa-b-c、ならびに複数の同じ要素による任意の組合せ(たとえば、a-a、a-a-a、a-a-b、a-a-c、a-b-b、a-c-c、b-b、b-b-b、b-b-c、c-c、およびc-c-c、または、a、b、およびcの任意の他の順序)を対象とすることが意図される。
本明細書で使用する「決定すること」という用語は、多種多様なアクションを包含する。たとえば、「決定すること」は、計算すること、算出すること、処理すること、導出すること、調査すること、探索すること(たとえば、テーブル、データベース、または別のデータ構造の中で探索すること)、確認することなどを含んでよい。また、「決定すること」は、受け取ること(たとえば、情報を受け取ること)、アクセスすること(たとえば、メモリの中のデータにアクセスすること)などを含んでよい。また、「決定すること」は、解決すること、選択すること、選ぶこと、確立することなどを含んでよい。
本明細書で開示した方法は、本方法を達成するための1つまたは複数のステップまたはアクションを備える。方法のステップおよび/またはアクションは、特許請求の範囲の範囲から逸脱することなく互いに交換されてもよい。言い換えれば、ステップまたはアクションの特定の順序が指定されない限り、特定のステップおよび/もしくはアクションの順序ならびに/または使用は、特許請求の範囲の範囲から逸脱することなく修正されてよい。さらに、上記で説明した方法の種々の動作は、対応する機能を実施することが可能な任意の適切な手段によって実施されてもよい。手段は、限定はしないが、回路、特定用途向け集積回路(ASIC)、またはプロセッサを含む、様々なハードウェアおよび/またはソフトウェアコンポーネントおよび/またはモジュールを含んでもよい。一般に、図に示される動作がある場合、それらの動作は、同様の番号を付された対応する相対物のミーンズプラスファンクションコンポーネントを有してもよい。
以下の特許請求の範囲は、本明細書で示す実施形態に限定されることは意図されておらず、特許請求の範囲の文言と一致する全範囲を与えられるべきである。請求項内において、単数形の要素への言及は、「唯一無二の」と明記されていない限り、それを意味するものではなく、「1つまたは複数の」を意味するものとする。別段に明記されていない限り、「いくつかの」という用語は、1つまたは複数を指す。請求項のいかなる要素も、「のための手段」という句を使用して要素が明示的に列挙されていない限り、または方法クレームの場合、「のためのステップ」という句を使用して要素が列挙されていない限り、米国特許法第112条(f)の規定の下で解釈されるべきではない。当業者に知られているか、または後で知られることになる、本開示全体にわたって説明した様々な態様の要素のすべての構造的および機能的等価物は、参照により本明細書に明確に組み込まれ、特許請求の範囲によって包含されるものとする。さらに、本明細書で開示したものはいずれも、そのような開示が特許請求の範囲において明示的に列挙されているか否かにかかわらず、公に捧げられることを意図するものではない。
100 連合学習アーキテクチャ
102A~102C モバイルデバイス
104A~104C ローカルデータストア
106A~106C ローカル機械学習モデルインスタンス
108 グローバル機械学習モデルコーディネータ
500 電子デバイス
502 中央演算処理装置(CPU)
504 グラフィックス処理ユニット(GPU)
506 デジタル信号プロセッサ(DSP)
508 ニューラル処理ユニット(NPU)
510 マルチメディア処理ブロック
512 ワイヤレス接続ブロック
514 アンテナ
516 センサプロセッサ
518 画像信号プロセッサ(ISP)
520 ナビゲーションプロセッサ
522 入力および/または出力デバイス
524 メモリ
524A 送信コンポーネント
524B 受信コンポーネント
524C 処理コンポーネント
524D 判定コンポーネント
524E 出力コンポーネント
524F トレーニングコンポーネント
524G 推論コンポーネント
524H 最適化コンポーネント
600 マルチプロセッサ処理システム
601、603、605 プロセッサ
607 グローバルメモリ

Claims (30)

  1. データを処理する方法であって、
    処理デバイスにおいて、複数の機械学習モデルの各機械学習モデルについてのグローバルパラメータのセットを受信するステップと、
    前記複数の機械学習モデルのそれぞれの各機械学習モデルについて、
    前記処理デバイスにおいて、機械学習モデル出力を生成するために、それぞれの機械学習モデルを用いて前記グローバルパラメータのセットに従って前記処理デバイス上にローカルに記憶されたデータを処理するステップと、
    前記処理デバイスにおいて、前記機械学習モデル出力に関するユーザフィードバックを受信するステップと、
    前記処理デバイスにおいて、ローカルに更新された機械学習モデルパラメータを生成するために、前記機械学習モデル出力および前記機械学習モデル出力に関連する前記ユーザフィードバックに基づいて前記それぞれの機械学習モデルの最適化を実行するステップと、
    前記ローカルに更新された機械学習モデルパラメータをリモート処理デバイスに送信するステップと、
    前記リモート処理デバイスから、前記複数の機械学習モデルの各機械学習モデルについてのグローバルに更新された機械学習モデルパラメータのセットを受信するステップであって、
    それぞれの各機械学習モデルについての前記グローバルに更新された機械学習モデルパラメータのセットが、前記ローカルに更新された機械学習モデルパラメータに少なくとも部分的に基づく、ステップと
    を含む、方法。
  2. 前記処理デバイスにおいて、前記ローカルに更新された機械学習モデルパラメータを前記リモート処理デバイスに送信する前にいくつかの最適化を実行するステップをさらに含む、請求項1に記載の方法。
  3. 前記複数の機械学習モデルのそれぞれの各機械学習モデルについての前記グローバルに更新された機械学習モデルパラメータのセットは、第2の処理デバイスのローカルに更新された機械学習モデルパラメータに少なくとも部分的に基づく、請求項1に記載の方法。
  4. 前記ユーザフィードバックは、前記機械学習モデル出力の正しさの指示を含む、請求項1に記載の方法。
  5. 前記処理デバイス上にローカルに記憶される前記データは、画像データ、オーディオデータ、またはビデオデータのうちの1つである、請求項1に記載の方法。
  6. 前記処理デバイスは、スマートフォンまたはモノのインターネットデバイスの一方である、請求項1に記載の方法。
  7. 前記処理デバイスにおいて、前記処理デバイス上にローカルに記憶された前記データを前記機械学習モデルを用いて処理するステップは、1つまたは複数のニューラル処理ユニットによって少なくとも部分的に実行される、請求項1に記載の方法。
  8. 前記処理デバイスにおいて、前記機械学習モデルの前記最適化を実行するステップは、1つまたは複数のニューラル処理ユニットによって少なくとも部分的に実行される、請求項1に記載の方法。
  9. 処理デバイスであって、
    コンピュータ実行可能命令を含むメモリと、
    前記コンピュータ実行可能命令を実行するための1つまたは複数のプロセッサであって、前記処理デバイスに、
    複数の機械学習モデルの各機械学習モデルについてのグローバルパラメータのセットを受信することと、
    前記複数の機械学習モデルのそれぞれの各機械学習モデルについて、
    機械学習モデル出力を生成するために、処理デバイス上にローカルに記憶されたデータを、それぞれの機械学習モデルを用いて前記グローバルパラメータのセットに従って処理することと、
    機械学習モデル出力に関するユーザフィードバックを受信することと、
    ローカルに更新された機械学習モデルパラメータを生成するために、前記機械学習モデル出力および前記機械学習モデル出力に関連する前記ユーザフィードバックに基づいて前記それぞれの機械学習モデルの最適化を実行することと、
    前記ローカルに更新された機械学習モデルパラメータをリモート処理デバイスに送信することと、
    前記複数の機械学習モデルの各機械学習モデルについてのグローバルに更新された機械学習モデルパラメータのセットを前記リモート処理デバイスから受信することであって、
    それぞれの各機械学習モデルについての前記グローバルに更新された機械学習モデルパラメータのセットが、前記ローカルに更新された機械学習モデルパラメータに少なくとも部分的に基づく、受信することと
    を行わせるように構成される1つまたは複数のプロセッサと
    を備える、処理デバイス。
  10. 前記1つまたは複数のプロセッサは、前記処理デバイスに、前記ローカルに更新された機械学習モデルパラメータを前記リモート処理デバイスに送信する前にいくつかの最適化を実行させるようにさらに構成される、請求項9に記載の処理デバイス。
  11. 前記複数の機械学習モデルのそれぞれの各機械学習モデルについての前記グローバルに更新された機械学習モデルパラメータのセットは、第2の処理デバイスのローカルに更新された機械学習モデルパラメータに少なくとも部分的に基づく、請求項9に記載の処理デバイス。
  12. 前記ユーザフィードバックは、前記機械学習モデル出力の正しさの指示を含む、請求項9に記載の処理デバイス。
  13. 前記処理デバイスは、スマートフォンまたはモノのインターネットデバイスの一方である、請求項9に記載の処理デバイス。
  14. 前記1つまたは複数のプロセッサのうちの1つは、前記処理デバイス上にローカルに記憶された前記データを前記機械学習モデルを用いて処理するように構成されるニューラル処理ユニットである、請求項9に記載の処理デバイス。
  15. 前記1つまたは複数のプロセッサのうちの1つは、前記機械学習モデルの前記最適化を実行するように構成されるニューラル処理ユニットである、請求項9に記載の処理デバイス。
  16. データを処理する方法であって、
    複数の機械学習モデルのそれぞれの機械学習モデルについて、
    複数のリモート処理デバイスのそれぞれのリモート処理デバイスにおいて、
    サーバから前記それぞれのリモート処理デバイスに、前記それぞれの機械学習モデルについてのグローバルモデルパラメータの初期セットを送信するステップと、
    前記それぞれのリモート処理デバイスから前記サーバにおいて、前記それぞれの機械学習モデルについてのモデルパラメータの更新済みセットを受信するステップと、
    前記サーバにおいて、グローバルモデルパラメータの更新済みセットを生成するために、前記複数のリモート処理デバイスの各リモート処理デバイスから受信されたモデルパラメータの前記更新済みセットに基づいて前記それぞれの機械学習モデルの最適化を実行するステップと、
    前記サーバから前記複数のリモート処理デバイスの各リモート処理デバイスに、前記複数の機械学習モデルの各機械学習モデルについてのグローバルモデルパラメータの前記更新済みセットを送信するステップと
    を含む、方法。
  17. 前記サーバにおいて、前記それぞれの機械学習モデルの最適化を実行するステップは、前記それぞれの機械学習モデルについてのグローバルモデルパラメータの前記初期セットの各モデルパラメータについての有効勾配を算出するステップを含む、請求項16に記載の方法。
  18. 前記複数の機械学習モデルのそれぞれの各機械学習モデルについて、前記それぞれの機械学習モデルについての重み付けパラメータによってパラメータ化された対応する密度推定量を判定するステップをさらに含む、請求項16に記載の方法。
  19. 前記それぞれの機械学習モデルについての事前混合重みを決定するステップをさらに含む、請求項18に記載の方法。
  20. 前記複数のリモート処理デバイスはスマートフォンを含む、請求項16に記載の方法。
  21. 前記複数のリモート処理デバイスはモノのインターネットデバイスを含む、請求項16に記載の方法。
  22. 前記複数の機械学習モデルのそれぞれの各機械学習モデルはニューラルネットワークモデルである、請求項16に記載の方法。
  23. 前記複数の機械学習モデルのそれぞれの各機械学習モデルは同じネットワーク構造を備える、請求項22に記載の方法。
  24. 処理デバイスであって、
    コンピュータ実行可能命令を含むメモリと、
    前記コンピュータ実行可能命令を実行する1つまたは複数のプロセッサであって、前記処理デバイスに、
    複数の機械学習モデルのそれぞれの機械学習モデルについて、
    複数のリモート処理デバイスのそれぞれのリモート処理デバイスにおいて、
    前記それぞれの機械学習モデルについてのグローバルモデルパラメータの初期セットを前記それぞれのリモート処理デバイスに送信することと、
    前記それぞれの機械学習モデルについてのモデルパラメータの更新済みセットを前記それぞれのリモート処理デバイスから受信することと、
    グローバルモデルパラメータの更新済みセットを生成するために前記複数のリモート処理デバイスの各リモート処理デバイスから受信されたモデルパラメータの前記更新済みセットに基づいて前記それぞれの機械学習モデルの最適化を実行することと、
    前記複数の機械学習モデルの各機械学習モデルについてのグローバルモデルパラメータの前記更新済みセットを前記複数のリモート処理デバイスの各リモート処理デバイスに送信することと
    を行わせるように構成される1つまたは複数のプロセッサと
    を備える、処理デバイス。
  25. 前記1つまたは複数のプロセッサは、前記それぞれの機械学習モデルの前記最適化を実行するために、前記処理デバイスに、前記それぞれの機械学習モデルについてのグローバルモデルパラメータの前記初期セットの各モデルパラメータについての有効勾配を算出させるようにさらに構成される、請求項24に記載の処理デバイス。
  26. 前記1つまたは複数のプロセッサは、前記処理デバイスに、前記複数の機械学習モデルのそれぞれの各機械学習モデルについて、前記それぞれの機械学習モデルについての重み付けパラメータによってパラメータ化された対応する密度推定量を判定させるようにさらに構成される、請求項24に記載の処理デバイス。
  27. 前記1つまたは複数のプロセッサは、前記処理デバイスに、前記複数の機械学習モデルのそれぞれの各機械学習モデルについて、前記それぞれの機械学習モデルについての事前混合重みを決定させるようにさらに構成される、請求項26に記載の処理デバイス。
  28. 前記複数のリモート処理デバイスはスマートフォンを含む、請求項24に記載の処理デバイス。
  29. 前記複数の機械学習モデルのそれぞれの各機械学習モデルはニューラルネットワークモデルである、請求項24に記載の処理デバイス。
  30. 前記複数の機械学習モデルのそれぞれの各機械学習モデルは同じネットワーク構造を備える、請求項29に記載の処理デバイス。
JP2022534677A 2019-12-13 2020-12-14 連合混合モデル Pending JP2023505973A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GR20190100556 2019-12-13
GR20190100556 2019-12-13
PCT/US2020/064889 WO2021119601A1 (en) 2019-12-13 2020-12-14 Federated mixture models

Publications (2)

Publication Number Publication Date
JP2023505973A true JP2023505973A (ja) 2023-02-14
JPWO2021119601A5 JPWO2021119601A5 (ja) 2023-12-08

Family

ID=74175956

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022534677A Pending JP2023505973A (ja) 2019-12-13 2020-12-14 連合混合モデル

Country Status (7)

Country Link
US (1) US20230036702A1 (ja)
EP (1) EP4073714A1 (ja)
JP (1) JP2023505973A (ja)
KR (1) KR20220112766A (ja)
CN (1) CN114787824A (ja)
BR (1) BR112022011012A2 (ja)
WO (1) WO2021119601A1 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11842260B2 (en) * 2020-09-25 2023-12-12 International Business Machines Corporation Incremental and decentralized model pruning in federated machine learning
US11790039B2 (en) * 2020-10-29 2023-10-17 EMC IP Holding Company LLC Compression switching for federated learning
CN113516249B (zh) * 2021-06-18 2023-04-07 重庆大学 基于半异步的联邦学习方法、系统、服务器及介质
US11777812B2 (en) * 2021-06-25 2023-10-03 Qualcomm Technologies, Inc. Zone-based federated learning
CN113435537B (zh) * 2021-07-16 2022-08-26 同盾控股有限公司 基于Soft GBDT的跨特征联邦学习方法、预测方法
US11443245B1 (en) * 2021-07-22 2022-09-13 Alipay Labs (singapore) Pte. Ltd. Method and system for federated adversarial domain adaptation
JPWO2023032637A1 (ja) * 2021-08-31 2023-03-09
US20230117768A1 (en) * 2021-10-15 2023-04-20 Kiarash SHALOUDEGI Methods and systems for updating optimization parameters of a parameterized optimization algorithm in federated learning
CN114004363B (zh) * 2021-10-27 2024-05-31 支付宝(杭州)信息技术有限公司 联合更新模型的方法、装置及系统
WO2023088531A1 (en) * 2021-11-16 2023-05-25 Huawei Technologies Co., Ltd. Management entity, network element, system, and methods for supporting anomaly detection for communication networks
EP4296909A1 (de) * 2022-06-22 2023-12-27 Siemens Aktiengesellschaft Individuelle testmodelle für generalisierte maschinelle lernmodelle
KR102573880B1 (ko) * 2022-07-21 2023-09-06 고려대학교 산학협력단 다중-너비 인공신경망에 기반한 연합 학습 시스템 및 연합 학습 방법
KR102684383B1 (ko) * 2022-12-22 2024-07-12 서울과학기술대학교 산학협력단 블록체인 기반 부분 모델 동기화 방법
WO2024152057A1 (en) * 2023-01-14 2024-07-18 RadiusAL, Inc. Automatic item recognition from captured images during assisted checkout
CN116597672B (zh) * 2023-06-14 2024-02-13 南京云创大数据科技股份有限公司 基于多智能体近端策略优化算法的区域信号灯控制方法
CN117009095B (zh) * 2023-10-07 2024-01-02 湘江实验室 一种隐私数据处理模型生成方法、装置、终端设备及介质
CN117408330B (zh) * 2023-12-14 2024-03-15 合肥高维数据技术有限公司 面向非独立同分布数据的联邦知识蒸馏方法及装置
CN117575291B (zh) * 2024-01-15 2024-05-10 湖南科技大学 基于边缘参数熵的联邦学习的数据协同管理方法

Also Published As

Publication number Publication date
US20230036702A1 (en) 2023-02-02
KR20220112766A (ko) 2022-08-11
EP4073714A1 (en) 2022-10-19
CN114787824A (zh) 2022-07-22
WO2021119601A1 (en) 2021-06-17
BR112022011012A2 (pt) 2022-08-16

Similar Documents

Publication Publication Date Title
JP2023505973A (ja) 連合混合モデル
Banabilah et al. Federated learning review: Fundamentals, enabling technologies, and future applications
Liu et al. FedCPF: An efficient-communication federated learning approach for vehicular edge computing in 6G communication networks
US20240103915A1 (en) Task offloading and resource allocation method in uncertain network environment
US20200293838A1 (en) Scheduling computation graphs using neural networks
Chen et al. Fedgraph: Federated graph learning with intelligent sampling
Scardapane et al. Distributed learning for random vector functional-link networks
US9256838B2 (en) Scalable online hierarchical meta-learning
US20240135191A1 (en) Method, apparatus, and system for generating neural network model, device, medium, and program product
US20230169350A1 (en) Sparsity-inducing federated machine learning
US20220318412A1 (en) Privacy-aware pruning in machine learning
Zhang et al. Privacy and efficiency of communications in federated split learning
US20210326757A1 (en) Federated Learning with Only Positive Labels
Yi et al. pFedLHNs: Personalized federated learning via local hypernetworks
Yan et al. Bayesian optimization for online management in dynamic mobile edge computing
Yadav et al. Edge Computing in Centralized Data Server Deployment for Network Qos and Latency Improvement for Virtualization Environment
CN114819196B (zh) 基于噪音蒸馏的联邦学习系统及方法
Zhang et al. A novel hybrid framework based on temporal convolution network and transformer for network traffic prediction
Xiong et al. Tiny federated learning with Bayesian classifiers
Song et al. HCEC: An efficient geo-distributed deep learning training strategy based on wait-free back-propagation
Sun et al. Optimizing task-specific timeliness with edge-assisted scheduling for status update
Baccour et al. Multi-agent reinforcement learning for privacy-aware distributed CNN in heterogeneous IoT surveillance systems
Li et al. FNCS: Federated Learning Strategy Based on Cosine Similarity under Resource Constraints
US20240249133A1 (en) Systems, apparatuses, methods, and non-transitory computer-readable storage devices for training artificial-intelligence models using adaptive data-sampling
US20240095513A1 (en) Federated learning surrogation with trusted server

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231130

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231130