[go: up one dir, main page]

DE102021108101A1 - System and method for federal learning using anonymized weighting factorization - Google Patents

System and method for federal learning using anonymized weighting factorization Download PDF

Info

Publication number
DE102021108101A1
DE102021108101A1 DE102021108101.7A DE102021108101A DE102021108101A1 DE 102021108101 A1 DE102021108101 A1 DE 102021108101A1 DE 102021108101 A DE102021108101 A DE 102021108101A DE 102021108101 A1 DE102021108101 A1 DE 102021108101A1
Authority
DE
Germany
Prior art keywords
parameters
client device
global
client
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102021108101.7A
Other languages
German (de)
Inventor
Kevin J. LIANG
Nikhil Mehta
Weituo HAO
Jungwon Lee
Carin Lawrence
Mostafa El-Khamy
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics 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
Priority claimed from US17/148,557 external-priority patent/US20210374608A1/en
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of DE102021108101A1 publication Critical patent/DE102021108101A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Image Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Ein System für föderales maschinelles Lernen umfasst einen globalen Server und Client-Vorrichtungen. Der Server empfängt Updates von Gewichtungsfaktorwörterbüchern und Faktorstärkenvektoren von den Clients und erzeugt ein global aktualisiertes Gewichtungsfaktorwörterbuch und einen global aktualisierten Faktorstärkenvektor. Eine Client-Vorrichtung wählt eine Gruppe an Parametern aus einer globalen Gruppe an Parametern aus und trainiert ein Modell unter Verwendung eines Datensatzes der Client-Vorrichtung und der Gruppe an ausgewählten Parametern. Die Client-Vorrichtung sendet ein Client-aktualisiertes Gewichtungsfaktorwörterbuch und einen Client-aktualisierten Faktorstärkenvektor an den Server. Die Client-Vorrichtung empfängt das global aktualisierte Gewichtungsfaktorwörterbuch und den global aktualisierten Faktorstärkenvektor und trainiert das Modell erneut unter Verwendung des Datensatzes der Client-Vorrichtung, der Gruppe an Parametern, die durch die Client-Vorrichtung ausgewählt wurden, und des global aktualisierten Gewichtungsfaktorwörterbuchs und des global aktualisierten Faktorstärkenvektors .A federal machine learning system includes a global server and client devices. The server receives updates of weighting factor dictionaries and factor strength vectors from the clients and generates a globally updated weighting factor dictionary and a globally updated factor strength vector. A client device selects a set of parameters from a global set of parameters and trains a model using a data set of the client device and the set of selected parameters. The client device sends a client-updated weighting factor dictionary and a client-updated factor strength vector to the server. The client device receives the globally updated weighting factor dictionary and the globally updated factor strength vector and retrains the model using the data set of the client device, the set of parameters selected by the client device and the globally updated weighting factor dictionary and global updated factor strength vector.

Description

QUERVERWEIS AUF VERWANDTE ANMELDUNGCROSS REFERENCE TO RELATED APPLICATION

Diese Anmeldung beansprucht die Priorität nach 35 U.S.C. § 119(e) der provisorischen US-Anmeldung Nr. 63/033,747 , die am 2. Juni 2020 eingereicht wurde, deren Offenbarung durch Verweis vollinhaltlich aufgenommen ist.This application claims priority under 35 USC § 119 (e) of US Provisional Application No. 63 / 033,747 , filed on June 2, 2020, the disclosure of which is incorporated by reference in its entirety.

TECHNISCHES GEBIETTECHNICAL AREA

Der hierin offenbarte Gegenstand betrifft föderales maschinelles Lernen (Federated Machine Learning). Insbesondere betrifft der hierin offenbarte Gegenstand ein System und ein Verfahren für föderales maschinelles Lernen.The subject matter disclosed herein relates to federated machine learning. In particular, the subject matter disclosed herein relates to a system and method for federal machine learning.

HINTERGRUNDBACKGROUND

Die Entwicklung des Internets der Dinge (Internet of Things, IoT), die weite Verbreitung von Smartphones sowie die Digitalisierung von Unterlagen hat zu modernen Systemen beigetragen, die immer größere Quantitäten an Daten erzeugen. Die Daten, die erzeugt werden, können umfangreiche Informationen über Personen geben, was einerseits zu höchst personalisierten intelligenten Anwendungen führen kann, aber andererseits auch vertraulich sein kann und daher privat bzw. vertraulich bleiben sollte. Beispiele für solche privaten Daten umfassen, sind aber nicht beschränkt auf, Bilder von Gesichtern, Tippverlauf, Krankenakten und Antworten in Umfragen.The development of the Internet of Things (IoT), the widespread use of smartphones and the digitization of documents have all contributed to modern systems that generate ever larger quantities of data. The data that is generated can provide extensive information about people, which on the one hand can lead to highly personalized intelligent applications, but on the other hand can also be confidential and should therefore remain private or confidential. Examples of such private information include, but are not limited to, images of faces, typing history, medical records, and survey responses.

KURZFASSUNGSHORT VERSION

Eine beispielhafte Ausführungsform schafft eine Client-Vorrichtung in einem System für föderales maschinelles Lernen, das mindestens eine Rechenvorrichtung, eine Kommunikationsschnittstelle und einen Prozessor umfassen kann. Der Prozessor kann mit der mindestens einen Rechenvorrichtung und mit der Kommunikationsschnittstelle gekoppelt sein. Der Prozessor kann eine Gruppe an Parametern für die Client-Vorrichtung aus einer globalen Gruppe an Parametern auswählen, ein Modell unter Verwendung eines Datensatzes der Client-Vorrichtung und der Gruppe an Parametern, die durch die Client-Vorrichtung ausgewählt wurden, trainieren, wobei der Datensatz ausgehend von einer Ausgabe der mindestens einen Rechenvorrichtung gebildet werden kann, ein Gewichtungsfaktorwörterbuch und einen Faktorstärkenvektor nach einem Training des Modells aktualisieren, ein Client-aktualisiertes Gewichtungsfaktorwörterbuch und einen Client-aktualisierten Faktorstärkenvektor durch die Kommunikationsschnittstelle an einen globalen Server senden, ein global aktualisiertes Gewichtungsfaktorwörterbuch und einen global aktualisierten Faktorstärkenvektor durch die Kommunikationsschnittstelle von dem globalen Server empfangen und das Modell unter Verwendung des Datensatzes der Client-Vorrichtung, der Gruppe an Parametern, die durch die Client-Vorrichtung ausgewählt wurden, und des global aktualisierten Gewichtungsfaktorwörterbuchs und des global aktualisierten Faktorstärkenvektors erneut trainieren. In einer Ausführungsform kann die Client-Vorrichtung Teil einer Gruppe von N Client-Vorrichtungen sein, wobei N eine ganze Zahl ist. In einer anderen Ausführungsform wählt der Prozessor die Gruppe an Parametern aus der globalen Gruppe an Parametern unter Verwendung von drei Variationsparametern, die Seed-Werte umfassen können, aus und minimiert eine Differenz zwischen einem überwachten Lernen des Datensatzes und einer Regularisierung der ausgewählten Gruppe an Parametern und der globalen Gruppe an Parametern. Der Prozessor kann die Gruppe an Parametern aus der globalen Gruppe an Parametern auswählen, indem er die globale Gruppe an Parametern empfängt, die von dem globalen Server an einen ersten Teilsatz an Client-Vorrichtungen der N Client-Vorrichtungen gesendet wurden, wobei die Client-Vorrichtung Teil des ersten Teilsatzes an Client-Vorrichtungen ist. Die Client-Vorrichtung kann das global aktualisierte Gewichtungsfaktorwörterbuch und einen global aktualisierten Faktorstärkenvektor empfangen, indem sie das global aktualisierte Gewichtungsfaktorwörterbuch und einen global aktualisierten Faktorstärkenvektor empfängt, die durch den globalen Server an einen zweiten Teilsatz der N Client-Vorrichtungen gesendet wurden, wobei die Client-Vorrichtung Teil des zweiten Teilsatzes an Client-Vorrichtungen sein kann. In noch einer weiteren Ausführungsform kann der Prozessor eine Anforderung durch die Kommunikationsschnittstelle an den globalen Server bezüglich einer aktuellen Version der globalen Gruppe an Parametern senden, kann das Modell unter Verwendung der aktuellen Version der globalen Gruppe an Parametern aktualisieren und kann das Modell, das unter Verwendung der aktuellen Version der globalen Gruppe an Parametern aktualisiert wurde, evaluieren, um basierend auf dem Datensatz der Client-Vorrichtung eine Inferenz zu bilden.An exemplary embodiment provides a client device in a federal machine learning system that may include at least a computing device, a communication interface, and a processor. The processor can be coupled to the at least one computing device and to the communication interface. The processor can select a set of parameters for the client device from a global set of parameters, train a model using a data set of the client device and the set of parameters selected by the client device, the data set starting from an output of the at least one computing device, update a weighting factor dictionary and a factor strength vector after training the model, send a client-updated weighting factor dictionary and a client-updated factor strength vector through the communication interface to a global server, a globally updated weighting factor dictionary and a globally updated factor strength vector received through the communication interface from the global server and the model using the data set of the client device, the group of parameters selected by the client device and retrain the globally updated weighting factor dictionary and globally updated factor strength vector. In one embodiment, the client device can be part of a group of N client devices, where N is an integer. In another embodiment, the processor selects the group of parameters from the global group of parameters using three variation parameters, which may include seed values, and minimizes a difference between supervised learning of the data set and regularization of the selected group of parameters and the global group of parameters. The processor can select the set of parameters from the global set of parameters by receiving the global set of parameters sent from the global server to a first subset of client devices of the N client devices, the client device Part of the first subset of client devices. The client device can receive the globally updated weighting factor dictionary and a globally updated factor strength vector by receiving the globally updated weighting factor dictionary and a globally updated factor strength vector sent by the global server to a second subset of the N client devices, the client devices Device may be part of the second subset of client devices. In yet another embodiment, the processor can send a request through the communication interface to the global server for a current version of the global group of parameters, can update the model using the current version of the global group of parameters, and can update the model using the current version of the global set of parameters has been updated to inference based on the client device's data set.

Eine beispielhafte Ausführungsform schafft ein System für föderales maschinelles Lernen, das einen globalen Server und N Client-Vorrichtungen umfassen kann. Der globale Server kann Updates von Gewichtungsfaktorwörterbüchern und Faktorstärkenvektoren von N Client-Vorrichtungen empfangen, wobei N eine ganze Zahl ist, und kann ein global aktualisiertes Gewichtungsfaktorwörterbuch und einen global aktualisierten Faktorstärkenvektor erzeugen. Mindestens eine Client-Vorrichtung kann mindestens eine Rechenvorrichtung, eine Kommunikationsschnittstelle und einen Prozessor umfassen. Der Prozessor kann mit der mindestens einen Rechenvorrichtung und mit der Kommunikationsschnittstelle gekoppelt sein. Der Prozessor kann eine Gruppe an Parametern aus einer globalen Gruppe an Parametern auswählen, ein Modell unter Verwendung eines Datensatzes der Client-Vorrichtung und der Gruppe an Parametern, die durch die Client-Vorrichtung ausgewählt werden, trainieren, ein Gewichtungsfaktorwörterbuch und einen Faktorstärkenvektor nach einem Training des Modells aktualisieren, ein Client-aktualisiertes Gewichtungsfaktorwörterbuch und einen Client-aktualisierten Faktorstärkenvektor durch die Kommunikationsschnittstelle senden, das global aktualisierte Gewichtungsfaktorwörterbuch und den global aktualisierten Faktorstärkenvektor von dem globalen Server durch die Kommunikationsschnittstelle empfangen und das Modell unter Verwendung des Datensatzes der Client-Vorrichtung, der Gruppe an Parametern, die durch die Client-Vorrichtung ausgewählt wurden, und des global aktualisierten Gewichtungsfaktorwörterbuchs und des global aktualisierten Faktorstärkenvektors erneut trainieren. In einer Ausführungsform kann der Prozessor die Gruppe an Parametern aus der globalen Gruppe an Parametern unter Verwendung von drei Variationsparametern auswählen, die Seed-Werte umfassen können, und minimiert eine Differenz zwischen einem überwachten Lernen des Datensatzes und einer Regularisierung der ausgewählten Gruppe an Parametern und der globalen Gruppe an Parametern. In einer anderen Ausführungsform kann der Prozessor die Gruppe an Parametern aus der globalen Gruppe an Parametern auswählen, indem er die globale Gruppe an Parametern empfängt, die von dem globalen Server an einen ersten Teilsatz an Client-Vorrichtungen der N Client-Vorrichtungen gesendet wurden, wobei die Client-Vorrichtung Teil des ersten Teilsatzes an Client-Vorrichtungen sein kann. In einer anderen Vorrichtung kann die Client-Vorrichtung das global aktualisierte Gewichtungsfaktorwörterbuch und einen global aktualisierten Faktorstärkenvektor empfangen, indem sie das global aktualisierte Gewichtungsfaktorwörterbuch und einen global aktualisierten Faktorstärkenvektor empfängt, die durch den globalen Server an einen zweiten Teilsatz der N Client-Vorrichtungen gesendet wurden, wobei die Client-Vorrichtung Teil des zweiten Teilsatzes an Client-Vorrichtungen sein kann. In einer Ausführungsform kann der Prozessor eine Anforderung durch die Kommunikationsschnittstelle an den globalen Server bezüglich einer aktuellen Version der globalen Gruppe an Parametern senden, kann das Modell unter Verwendung der aktuellen Version der globalen Gruppe an Parametern aktualisieren und kann das Modell, das unter Verwendung der aktuellen Version der globalen Gruppe an Parametern aktualisiert wurde, evaluieren, um basierend auf dem Datensatz der Client-Vorrichtung eine Inferenz zu bilden.An exemplary embodiment provides a federal machine learning system that may include a global server and N client devices. The global server can receive updates to weighting factor dictionaries and factor strength vectors from N client devices, where N is an integer, and can generate a globally updated weighting factor dictionary and a globally updated factor strength vector. At least one client device may include at least one computing device, a communication interface, and a processor. The processor can be coupled to the at least one computing device and to the communication interface. The processor can select a set of parameters from a global set of parameters, train a model using a data set of the client device and the set of parameters selected by the client device, a weighting factor dictionary and a factor strength vector after training of the model, send a client-updated weighting factor dictionary and a client-updated factor strength vector through the communication interface, receive the globally updated weight factor dictionary and the globally updated factor strength vector from the global server through the communication interface, and the model using the data set of the client device, the Retrain the group of parameters selected by the client device and the globally updated weighting factor dictionary and globally updated factor strength vector. In one embodiment, the processor can select the group of parameters from the global group of parameters using three variation parameters, which may include seed values, and minimizes a difference between supervised learning of the data set and regularization of the selected group of parameters and the global group of parameters. In another embodiment, the processor may select the set of parameters from the global set of parameters by receiving the global set of parameters sent from the global server to a first subset of client devices of the N client devices where the client device may be part of the first subset of client devices. In another device, the client device may receive the globally updated weighting factor dictionary and a globally updated factor strength vector by receiving the globally updated weighting factor dictionary and a globally updated factor strength vector sent by the global server to a second subset of the N client devices, wherein the client device can be part of the second subset of client devices. In one embodiment, the processor can send a request through the communication interface to the global server for a current version of the global group of parameters, can update the model using the current version of the global group of parameters, and can update the model using the current Version of the global set of parameters has been updated, evaluate to inference based on the client device data set.

Eine beispielhafte Ausführungsform schafft ein Verfahren für föderales maschinelles Lernen, das umfassen kann: Auswählen, bei einer Client-Vorrichtung, einer Gruppe an Parametern aus einer globalen Gruppe an Parametern, wobei die globale Gruppe an Parametern ein Gewichtungsfaktorwörterbuch und einen Faktorstärkenvektor umfasst; Trainieren, bei der Client-Vorrichtung, eines Modells unter Verwendung eines Datensatzes der Client-Vorrichtung und der Gruppe an Parametern, die durch die Client-Vorrichtung ausgewählt wurden; Aktualisieren eines Gewichtungsfaktorwörterbuchs und eines Faktorstärkenvektors nach einem Training des Modells; Senden, von der Client-Vorrichtung an einen globalen Server, eines Client-aktualisierten Gewichtungsfaktorwörterbuchs und eines Client-aktualisierten Faktorstärkenvektors; Empfangen eines aktualisierten Gewichtungsfaktorwörterbuchs und eines global aktualisierten Faktorstärkenvektors an der Client-Vorrichtung von dem globalen Server; und erneutes Trainieren des Modells an der Client-Vorrichtung unter Verwendung des Datensatzes der Client-Vorrichtung, der Gruppe an Parametern, die durch die Client-Vorrichtung ausgewählt wurden, und des global aktualisierten Gewichtungsfaktorwörterbuchs und des global aktualisierten Faktorstärkenvektors. In einer Ausführungsform kann die Client-Vorrichtung Teil einer Gruppe von N Client-Vorrichtungen sein, wobei N eine ganze Zahl ist. In einer anderen Ausführungsform kann das Auswählen der Gruppe an Parametern aus der globalen Gruppe an Parametern umfassen, die Gruppe an Parametern unter Verwendung von drei Variationsparametern, die Seed-Werte aufweisen, auszuwählen; und eine Differenz zwischen einem überwachten Lernen des Datensatzes und einer Regularisierung der ausgewählten Gruppe an Parametern und der globalen Gruppe an Parametern zu minimieren. In noch einer weiteren Ausführungsform kann das Auswählen der Gruppe an Parametern aus der globalen Gruppe an Parametern umfassen, die globale Gruppe an Parametern, die von dem globalen Server an einen ersten Teilsatz an Client-Vorrichtungen der N Client-Vorrichtungen gesendet wurden, an der Client-Vorrichtung zu empfangen, wobei die Client-Vorrichtung Teil des ersten Teilsatzes an Client-Vorrichtungen sein kann. In noch einer weiteren Ausführungsform kann ein Empfangen des global aktualisierten Gewichtungsfaktorwörterbuchs und eines global aktualisierten Faktorstärkenvektors von dem globalen Server an der Client-Vorrichtung umfassen, an der Client-Vorrichtung das global aktualisierte Gewichtungsfaktorwörterbuch und einen global aktualisierten Faktorstärkenvektor zu empfangen, die durch den globalen Server an einen zweiten Teilsatz der N Client-Vorrichtungen gesendet wurden, wobei die Client-Vorrichtung Teil des zweiten Teilsatzes an Client-Vorrichtungen sein kann. In einer Ausführungsform kann das Verfahren ferner ein Anfordern einer aktuellen Version der globalen Gruppe an Parametern von dem globalen Server durch die Client-Vorrichtung umfassen; ein Empfangen der aktuellen Version der globalen Gruppe an Parametern; ein Aktualisieren des Modells unter Verwendung der aktuellen Version der globalen Gruppe an Parametern; und ein Evaluieren des Modells, das unter Verwendung der aktuellen Version der globalen Gruppe an Parametern aktualisiert wurde, um basierend auf dem Datensatz der Client-Vorrichtung eine Inferenz zu bilden.An exemplary embodiment provides a method for federal machine learning that may include: selecting, at a client device, a set of parameters from a global set of parameters, the global set of parameters including a weighting factor dictionary and a factor strength vector; Training, at the client device, a model using a data set of the client device and the set of parameters selected by the client device; Updating a weighting factor dictionary and a factor strength vector after training the model; Sending, from the client device to a global server, a client-updated weighting factor dictionary and a client-updated factor strength vector; Receiving at the client device an updated weighting factor dictionary and a globally updated factor strength vector from the global server; and retraining the model on the client device using the data set of the client device, the set of parameters selected by the client device, and the globally updated weighting factor dictionary and the globally updated factor strength vector. In one embodiment, the client device can be part of a group of N client devices, where N is an integer. In another embodiment, selecting the group of parameters from the global group of parameters may include selecting the group of parameters using three variation parameters having seed values; and to minimize a difference between supervised learning of the data set and regularization of the selected group of parameters and the global group of parameters. In yet another embodiment, selecting the set of parameters from the global set of parameters may include the global set of parameters sent from the global server to a first subset of client devices of the N client devices, at the client Device, wherein the client device may be part of the first subset of client devices. In yet another embodiment, receiving the globally updated weighting factor dictionary and a globally updated factor strength vector from the global server at the client device may include receiving at the client device the globally updated weighting factor dictionary and a globally updated factor strength vector generated by the global server to a second subset of the N client devices, which client device may be part of the second subset of client devices. In one embodiment, the method may further include the client device requesting a current version of the global set of parameters from the global server; receiving the current version of the global group of parameters; updating the model using the current version of the global set of parameters; and evaluating the model updated using the current version of the global set of parameters to inference based on the client device data set.

FigurenlisteFigure list

In dem nachfolgenden Abschnitt werden die Aspekte des hierin offenbarten Gegenstands unter Bezugnahme auf beispielhafte Ausführungsformen beschrieben, die in den Zeichnungen dargestellt werden, in denen:

  • 1 ein funktionales Blockschaltbild für eine beispielhafte Ausführungsform eines Systems für föderales Lernen gemäß des hierin offenbarten Gegenstands darstellt;
  • 2A und 2B jeweils funktionale Blockschaltbilder für beispielhafte Ausführungsformen eines globalen Servers und eines Clients gemäß des hierin offenbarten Gegenstands darstellen;
  • 3 ein Flussdiagramm für eine beispielhafte Ausführungsform eines Verfahrens für föderales maschinelles Lernen bei einer Client-Vorrichtung gemäß dem hierin offenbarten Gegenstand ist; und
  • 4 eine elektronische Vorrichtung darstellt, die eine Funktionalität für föderales maschinelles Lernen gemäß dem hierin offenbarten Gegenstand umfasst.
In the following section, the aspects of the subject matter disclosed herein are described with reference to exemplary embodiments illustrated in the drawings, in which:
  • 1 Figure 12 is a functional block diagram for an exemplary embodiment of a federal learning system in accordance with the subject matter disclosed herein;
  • 2A and 2 B each depict functional block diagrams for exemplary embodiments of a global server and a client in accordance with the subject matter disclosed herein;
  • 3 Figure 10 is a flow diagram for an exemplary embodiment of a method for federal machine learning at a client device in accordance with the subject matter disclosed herein; and
  • 4th FIG. 11 illustrates an electronic device that includes federal machine learning functionality in accordance with the subject matter disclosed herein.

DETAILLIERTE BESCHREIBUNGDETAILED DESCRIPTION

In der nachfolgenden detaillierten Beschreibung sind zahlreiche spezifische Details dargelegt, um ein tiefgreifendes Verständnis der Offenbarung zu vermitteln. Für den Fachmann wird es allerdings verständlich sein, dass die offenbarten Aspekte ohne diese spezifischen Details in die Praxis umgesetzt werden können. In anderen Fällen wurden bekannte Verfahren, Prozeduren, Komponenten und Schaltungen nicht im Detail beschrieben, um den hierin offenbarten Gegenstand nicht zu verschleiern.In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the disclosure. However, it will be understood by those skilled in the art that the aspects disclosed can be put into practice without these specific details. In other instances, known methods, procedures, components, and circuits have not been described in detail in order not to obscure the subject matter disclosed herein.

Eine Bezugnahme in dieser Beschreibung auf „eine Ausführungsform“ bedeutet, dass ein bestimmtes Merkmal, eine Struktur oder eine Eigenschaft, die in Verbindung mit der Ausführungsform beschrieben ist, in mindestens einer hierin offenbarten Ausführungsform umfasst sein kann. So muss sich das Vorkommen des Ausdrucks „in einer Ausführungsform“ oder „bei einer Ausführungsform“ oder „gemäß einer Ausführungsform“ (oder andere Ausdrücke, die eine ähnliche Bedeutung haben) an verschiedenen Stellen in dieser Spezifikation nicht notwendigerweise auf die gleiche Ausführungsform beziehen. Ferner können die bestimmten Merkmale, Strukturen oder Eigenschaften auf eine beliebige geeignete Weise in einer oder in mehreren Ausführungsformen kombiniert werden. Diesbezüglich bedeutet das Wort „beispielhaft“, wie hierin verwendet, dass es „als Beispiel, Fallbeispiel oder Darstellung dient“. Jegliche Ausführungsform, die hierin als „beispielhaft“ beschrieben ist, soll nicht als notwendigerweise bevorzugt oder vorteilhaft gegenüber anderen Ausführungsformen interpretiert werden. Zudem können die bestimmten Merkmale, Strukturen oder Eigenschaften auf eine beliebige geeignete Weise in einer oder in mehreren Ausführungsformen kombiniert werden. Auch kann abhängig von dem Kontext einer Erörterung hierin ein Begriff im Singular die entsprechenden Pluralformen umfassen und ein Begriff im Plural kann die entsprechende Singularform umfassen. Ebenso kann ein Begriff mit Bindestrich (z. B. „zwei-dimensional“, „pixel-spezifisch“ usw.) teilweise austauschbar mit einer entsprechenden Version ohne Bindestrich verwendet werden (z. B. „zweidimensional“, „vorgegeben“, „pixelspezifisch“ usw.) und ein großgeschriebener Eintrag (z. B. „Counter Clock“, „Row Select“, „PIXOUT“ usw.) kann austauschbar mit einer nicht großgeschriebenen Version verwendet werden (z. B. „counter clock“, „row select“, „pixout“ usw.). Solche gelegentlichen austauschbaren Verwendungen sollen nicht als inkonsistent verstanden werden.Reference in this specification to “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment may be included in at least one embodiment disclosed herein. Thus, the appearances of the phrase “in an embodiment,” or “in an embodiment,” or “according to an embodiment” (or other terms that have a similar meaning) in different places in this specification need not necessarily refer to the same embodiment. Furthermore, the particular features, structures, or properties can be combined in any suitable manner in one or more embodiments. In this regard, the word "exemplary" as used herein means that it "serves as an example, case study or illustration". Any embodiment described herein as "exemplary" is not to be interpreted as necessarily preferred or advantageous over other embodiments. In addition, the particular features, structures, or properties can be combined in any suitable manner in one or more embodiments. Also, depending on the context of a discussion herein, a singular term may include the corresponding plural forms and a plural term may include the corresponding singular form. Likewise, a term with a hyphen (e.g. “two-dimensional”, “pixel-specific” etc.) can be used partially interchangeably with a corresponding version without a hyphen (e.g. “two-dimensional”, “given”, “pixel-specific” ”Etc.) and a capitalized entry (e.g.“ Counter Clock ”,“ Row Select ”,“ PIXOUT ”etc.) can be used interchangeably with a non-capitalized version (e.g.“ counter clock ”,“ row select ”,“ pixout ”etc.). Such occasional interchangeable uses are not intended to be construed as inconsistent.

Auch kann abhängig von dem Kontext einer Erörterung hierin ein Begriff im Singular die entsprechenden Pluralformen umfassen und ein Begriff im Plural kann die entsprechende Singularform umfassen. Es wird ferner angemerkt, dass verschiedene Figuren (einschließlich Komponentendiagramme), die hierin gezeigt und erläutert werden, nur der Darstellung halber dienen und nicht maßstabsgetreu gezeichnet sind. Ebenso sind verschiedene Wellenformen und Zeitablaufdiagramme lediglich der Darstellung halber gezeigt. Zum Beispiel können die Dimensionen einiger der Elemente im Vergleich zu anderen Elementen der Klarheit halber übermäßig vergrößert sein. Ferner wurden, wo zweckmäßig, Bezugszeichen in Figuren wiederholt, um entsprechende und/oder analoge Elemente zu kennzeichnen.Also, depending on the context of a discussion herein, a singular term may include the corresponding plural forms and a plural term may include the corresponding singular form. It is further noted that various figures (including component diagrams) shown and discussed herein are for illustration purposes only and are not drawn to scale. Also, various waveforms and timing diagrams are shown for illustration purposes only. For example, the dimensions of some of the elements may be exaggerated in comparison to other elements for the sake of clarity. Furthermore, where appropriate, reference symbols have been repeated in the figures in order to identify corresponding and / or analogous elements.

Die hierin verwendete Terminologie dient ausschließlich dem Zweck der Beschreibung einiger beispielhafter Ausführungsformen und soll nicht den beanspruchten Gegenstand beschränken. Wie hierin verwendet, sind die Singularformen „einer“, „eines“, „eine“ und „der, die, das“ dazu gedacht, die Pluralformen ebenfalls zu enthalten, außer der Kontext gibt eindeutig anderes an. Es versteht sich ferner, dass die Begriffe „aufweisen“ und/oder „aufweisend“, wenn sie in dieser Spezifikation verwendet werden, die Anwesenheit von gegebenen Merkmalen, ganzen Zahlen, Schritten, Vorgängen, Elementen und/oder Komponenten angeben, aber nicht die Anwesenheit oder Hinzufügung von einem oder mehreren anderen Merkmalen, ganzen Zahlen, Schritten, Vorgängen, Elementen, Komponenten und/oder Gruppen derselben ausschließen. Die Begriffe „erster“, „zweiter“ usw. wie hierin verwendet, werden als nähere Bezeichnung für Nomen verwendet, denen sie vorausgehen, und sollen keine Reihenfolge (z. B. räumlich, zeitlich, logisch usw.) implizieren, außer sie sind explizit als solche definiert. Ferner können die gleichen Bezugszeichen in zwei oder mehr Figuren verwendet werden, um Teile, Komponenten, Blöcke, Schaltungen, Einheiten oder Module zu bezeichnen, welche die gleiche oder eine ähnliche Funktionalität aufweisen. Eine solche Verwendung dient allerdings nur dem Zwecke der Darstellung und einer einfachen Erörterung; sie impliziert nicht, dass die Konstruktion oder bautechnischen Details solcher Komponenten oder Einheiten in allen Ausführungsformen gleich sind oder dass solch gewöhnlich bezeichneten Teile/Module die einzige Möglichkeit sind, einige der hierin offenbarten beispielhaften Ausführungsformen zu implementieren.The terminology used herein is for the purpose of describing some exemplary embodiments only and is not intended to limit the claimed subject matter. As used herein, the singular forms "a,""an,""an," and "der, die, that" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It is further understood that the terms “comprising” and / or “comprising” when used in this specification indicate the presence of given features, integers, steps, operations, elements, and / or components, but not the presence or exclude the addition of one or more other features, integers, steps, operations, elements, components and / or groups thereof. The terms "first,""second," etc., as used herein, are used to identify nouns they precede and are not intended to imply any order (e.g., spatial, temporal, logical, etc.) unless they are explicit defined as such. Furthermore, the same reference symbols can be used in two or more figures to denote parts, components, blocks, circuits, units or modules which have the same or a similar functionality. However, such a use is only for the purpose of illustration and simple discussion; it does not imply that the construction or engineering details of such components or units are the same in all embodiments or that such commonly referred to as parts / modules are the only way to implement some of the exemplary embodiments disclosed herein.

Es versteht sich, dass, wenn ein Element oder eine Schicht als „auf“, „verbunden mit“ oder „gekoppelt mit“ einem anderen Element oder einer anderen Schicht bezeichnet wird, dieses bzw. diese direkt auf, verbunden oder gekoppelt mit dem anderen Element oder der anderen Schicht sein kann, oder es können Zwischenelemente oder -schichten vorliegen. Im Gegensatz dazu gibt es keine Zwischenelemente oder -schichten, wenn ein Element als „direkt auf“, „direkt verbunden mit“ oder „direkt gekoppelt mit“ einem anderen Element oder einer anderen Schicht bezeichnet ist. Gleiche Bezugszeichen beziehen sich durchgehend auf gleiche Elemente. Im Sinne des vorliegenden Textes umfasst der Begriff „und/oder“ jegliche Kombinationen eines oder mehrerer der zugehörigen angeführten Aufzählungspunkte.It will be understood that when an element or layer is referred to as being “on,” “connected to,” or “coupled to” another element or layer, that element or layer is directly on, connected, or coupled to the other element or the other layer, or there may be intermediate elements or layers. In contrast, when an element is referred to as being “directly on,” “directly connected to,” or “directly coupled to” another element or layer, there are no intermediate elements or layers. The same reference numbers refer to the same elements throughout. In the context of the present text, the term “and / or” includes any combination of one or more of the associated bullet points listed.

Die Begriffe „erster“, „zweiter“ usw. wie hierin verwendet, werden als nähere Bezeichnung für Nomen verwendet, denen sie vorausgehen, und sollen keine Reihenfolge (z. B. räumlich, zeitlich, logisch usw.) implizieren, außer sie sind explizit als solche definiert. Ferner können die gleichen Bezugszeichen in zwei oder mehr Figuren verwendet werden, um Teile, Komponenten, Blöcke, Schaltungen, Einheiten oder Module zu bezeichnen, welche die gleiche oder eine ähnliche Funktionalität aufweisen. Eine solche Verwendung dient allerdings nur dem Zwecke der Darstellung und einer einfachen Erörterung; sie impliziert nicht, dass die Konstruktion oder bautechnischen Details solcher Komponenten oder Einheiten in allen Ausführungsformen gleich sind oder dass solch gewöhnlich bezeichneten Teile/Module die einzige Möglichkeit sind, einige der hierin offenbarten beispielhaften Ausführungsformen zu implementieren.The terms "first," "second," etc., as used herein, are used to identify nouns they precede and are not intended to imply any order (e.g., spatial, temporal, logical, etc.) unless they are explicit defined as such. Furthermore, the same reference symbols can be used in two or more figures to denote parts, components, blocks, circuits, units or modules which have the same or a similar functionality. However, such a use is only for the purpose of illustration and simple discussion; it does not imply that the construction or engineering details of such components or units are the same in all embodiments or that such commonly referred to as parts / modules are the only way to implement some of the exemplary embodiments disclosed herein.

Außer anderweitig definiert, haben alle Begriffe (einschließlich technischer und wissenschaftlicher Begriffe), die hierin verwendet werden, dieselbe Bedeutung, die üblicherweise von einen Fachmann auf dem Fachgebiet verstanden wird, zu dem dieser Gegenstand gehört. Es versteht sich ferner, dass Begriffe, wie beispielsweise diejenigen, welche in allgemein verwendeten Wörterbüchern definiert sind, als eine Bedeutung habend interpretiert werden sollten, welche konsistent mit ihrer Bedeutung in dem Zusammenhang des relevanten Fachgebiets ist, und nicht in einem idealisierten oder übermäßigen formalen Sinne interpretiert werden, solange nicht ausdrücklich hierin so definiert.Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this subject matter belongs. It is also to be understood that terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with their meaning in the context of the relevant technical field, and not in an idealized or excessively formal sense unless specifically defined herein.

Wie hierin verwendet, bezieht sich der Begriff „Modul“ auf jede beliebige Kombination aus Software, Firmware und/oder Hardware, die eingerichtet ist, die hierin beschriebene Funktionalität zu schaffen, in Verbindung mit einem Modul. Zum Beispiel kann Software als Software-Paket, Code und/oder Anweisungssatz oder Anweisungen verkörpert sein und der Begriff „Hardware“, wie er in einer hierin beschriebenen Implementierung verwendet wird, kann zum Beispiel, einzeln oder in einer beliebigen Kombination, eine Anordnung, eine fest verdrahtete Schaltung, eine programmierbare Schaltung, eine Zustandsautomatenschaltung und/oder Firmware umfassen, auf denen Anweisungen gespeichert sind, die durch programmierbare Schaltung ausführbar sind. Die Module können zusammen oder individuell als Schaltungseinrichtung verkörpert sein, die Teil eines größeren Systems bildet, zum Beispiel, aber nicht ausschließlich, eine integrierte Schaltung (IC), ein Ein-Chip-System (SoC), eine Anordnung usw.As used herein, the term “module” refers to any combination of software, firmware, and / or hardware configured to provide the functionality described herein in conjunction with a module. For example, software may be embodied as a software package, code, and / or instruction set or instructions, and the term "hardware" as used in an implementation described herein may, for example, individually or in any combination, include an arrangement, a hard-wired circuitry, a programmable circuitry, a state machine circuit and / or firmware on which instructions are stored that can be executed by programmable circuitry. The modules may be embodied together or individually as circuitry that forms part of a larger system, for example, but not limited to, an integrated circuit (IC), on-chip system (SoC), array, etc.

Föderales Lernen wurde zur Bereitstellung von maschinellem Lernen vorgeschlagen, das möglicherweise dafür sorgt, dass personalisierte Daten privat bleiben, indem Nutzerdaten lokal auf jeder Client-Vorrichtung verbleiben und nur Modellaktualisierungen mit einem globalen Server geteilt werden. So stellt föderales Lernen eine mögliche Strategie zum Trainieren von Modellen für maschinelles Lernen bei heterogenen, verteilten Netzen auf eine Weise dar, bei der die Privatsphäre gewahrt wird.Federal learning has been proposed to provide machine learning, which may keep personalized data private by keeping user data local on each client device and only sharing model updates with a global server. So puts federal Learning represents one possible strategy for training machine learning models on heterogeneous, distributed networks in a manner that preserves privacy.

Während ein Paradigma für föderales maschinelles Lernen eine Möglichkeit schaffen kann, damit private Daten privat bleiben, stehen Systeme für föderales maschinelles Lernen weiterhin vor einer Anzahl an Herausforderungen. Zum Beispiel umfasst ein aktuellverwendetes System für föderales maschinelles Lernen ein einziges globales Modell, das durch jeden Client verwendet wird. Der Ansatz mit einem Modell funktioniert allerdings möglicherweise nicht besonders gut bei besonderen Subpopulationen, da eine Datenverteilung bei unterschiedlichen Clients schief sein kann.While a federal machine learning paradigm can provide a way to keep private data private, federal machine learning systems continue to face a number of challenges. For example, a currently used federal machine learning system includes a single global model that is used by each client. However, the one-model approach may not work particularly well with particular subpopulations, as data distribution can be skewed among different clients.

Um dies darzustellen, stelle man sich N Client-Vorrichtungen vor und dass die i-te Client-Vorrichtung eine Datenverteilung Di umfasst, die sich von anderen Client-Vorrichtungen in Abhängigkeit von i unterscheidet. In einer traditionellen Umgebung für föderales maschinelles Lernen kann ein einzelnes globales Modell, das gelernt werden kann, bei allen N Client-Vorrichtungen eingesetzt werden. Der traditionelle oder übliche Ansatz geht von einer Multilayer-Perceptron(MLP)-Architektur aus, das Schichten l = 1, ..., L umfasst, und einen Satz an Gewichtungen θ = {Wl}l=1:L, der mit allen Client-Vorrichtungen geteilt wird. Um eine globale Zielsetzung zu erfüllen, kann ein Satz an Gewichtungen θ gelernt werden, um einen Verlust bei einem Mittel bei allen Clients auf ein Minimum zu reduzieren bzw. zu minimieren. Zum Beispiel minimiert ein traditionelles System für föderales maschinelles Lernen die nachfolgende Zielsetzung: m i n θ ƒ ( θ ) = i = 1 N p i F i ( θ ) = E i [ F i ( θ ) ]

Figure DE102021108101A1_0001
wobei i ein Index für Client-Vorrichtungen ist, N die Anzahl an Clients ist, Fi(θ) eine lokale Objektive Function ist und pi ≥ 0 die Gewichtung jeder Vorrichtung i ist.To illustrate, imagine N client devices and that the i-th client device includes a data distribution D i that differs from other client devices depending on i. In a traditional federal machine learning environment, a single global model that can be learned can be applied to all N client devices. The traditional or customary approach assumes a multilayer perceptron (MLP) architecture comprising layers l = 1, ..., L and a set of weights θ = {W l } l = 1: L , which with shared among all client devices. In order to meet a global objective, a set of weights θ can be learned to minimize or minimize a loss in resource for all clients. For example, a traditional federal machine learning system minimizes the following objective: m i n θ ƒ ( θ ) = i = 1 N p i F. i ( θ ) = E. i [ F. i ( θ ) ]
Figure DE102021108101A1_0001
where i is an index for client devices, N is the number of clients, F i (θ) is a local objective function, and p i ≥ 0 is the weight of each device i.

Sofern eine statistische Heterogenität gegeben ist, kann ein Universalansatz allerdings zu einem globalen Modell führen, das bei bestimmten Clients eine schlechte Performance liefert. Häufig kann die Performance widerspiegeln, wie genau die lokale Verteilung eines bestimmten Clients mit der Verteilung der gesamten Bevölkerung übereinstimmt. Folglich kann das Modell dieses beispielhaften traditionellen Systems für föderales maschinelles Lernen als weniger fair gegenüber Clients angesehen werden, die Datenmerkmale aufweisen, die bei den Clients weniger häufig sind.If there is statistical heterogeneity, however, a universal approach can lead to a global model that delivers poor performance for certain clients. Often times, performance can reflect how closely the local distribution of a given client matches the distribution of the entire population. As a result, the model of this exemplary traditional federal machine learning system can be viewed as less fair to clients who have data characteristics that are less common to the clients.

Der hierin offenbarte Gegenstand kann eine Modellkonsistenz für föderales Lernen verbessern, indem eine Bayessche nichtparametrische Gewichtungsfaktorisierung verwendet wird, die eine personalisierte Lösung für föderales Lernen bieten kann, die eine höhere Performance eines lokalen Models bei zahlreichen Clients erzielen kann.The subject matter disclosed herein can improve model consistency for federal learning by using Bayesian nonparametric weighting factorization, which can provide a personalized federal learning solution that can achieve higher local model performance on multiple clients.

Das hierin offenbarte System für föderales maschinelles Lernen umfasst mindestens drei verbesserte Merkmale im Vergleich zu traditionellen Systemen für föderales Lernen. Ein erstes verbessertes Merkmal ist, dass das Netzwerk, in dem föderales Lernen stattfindet, in zwei Teile aufgeteilt ist. Der erste Teil schafft eine Server-Aggregation und der zweite Teil wird zur Client-Personalisierung verwendet. Ein zweites verbessertes Merkmal betrifft eine reduzierte Menge an Daten, die zwischen einem globalen Server und Client-Vorrichtungen kommuniziert wird. Das heißt, eine Datenkommunikation zwischen dem globalen Server und den Client-Vorrichtungen ist effizienter, weil in den Client-Vorrichtungen eine Kernel-Faktorisierung verwendet wird, und nur ein Teilsatz der Parameter kommuniziert wird, die für das Training verwendet werden. Ein drittes verbessertes Merkmal betrifft eine zusätzliche Sicherheitsschicht, die durch die Kernel-Faktorisierung geschaffen wird, und dass nur ein Teilsatz der Parameter kommuniziert wird, die für das Training verwendet werden.The federal machine learning system disclosed herein includes at least three improved features compared to traditional federal learning systems. A first improved feature is that the network in which federal learning takes place is divided into two parts. The first part creates server aggregation and the second part is used for client personalization. A second improved feature relates to a reduced amount of data communicated between a global server and client devices. That is, data communication between the global server and the client devices is more efficient because kernel factorization is used in the client devices and only a subset of the parameters used for training are communicated. A third improved feature relates to an additional layer of security provided by kernel factorization and that only a subset of the parameters used for training are communicated.

Das hierin offenbarte System für föderales maschinelles Lernen schafft ein System für föderales Lernen, das Daten in einem globalen Modell effizient verwendet, um neuronale Netze in N lokalen Modellen faktorisiert zu trainieren. Jedes Client-Modell kann basierend auf einer lokalen Verteilung bei dem Client personalisiert werden, wobei alle Client-Modelle gelernte Komponenten gemeinsam teilen.The federal machine learning system disclosed herein provides a federal learning system that efficiently uses data in a global model to train neural networks factored in N local models. Each client model can be personalized based on a local distribution at the client, with all client models sharing learned components together.

1 stellt ein funktionales Blockschaltbild für eine beispielhafte Ausführungsform eines Systems 100 für föderales Lernen gemäß des hierin offenbarten Gegenstands dar. Das System 100 für föderales Lernen kann einen globalen Server 101 und N Clients (d. h. lokale Vorrichtungen) 1021-102N umfassen. Der globale Server 101 kann sich in der Cloud an einem einzelnen Ort oder an verteilten Orten befinden. Der Begriff „globaler Server“, wie er hierin verwendet wird, bedeutet jede beliebige Server-Vorrichtung, die eingerichtet ist, mit zwei oder mehr Client-Vorrichtungen über ein Wide-Area-Netzwerk (z. B. das Internet) (verdrahtet oder drahtlos) zu kommunizieren und kann jede beliebige Server-Vorrichtung sein, die eingerichtet ist, direkt mit zwei oder mehr Client-Vorrichtungen in einem System für föderales maschinelles Lernen zu kommunizieren. Die Clients 1021-102N sind über eine Kommunikationsverbindung 103 kommunikationsfähig mit dem globalen Server 101 gekoppelt. Die Kommunikationsverbindung 103 kann eine verdrahtete Kommunikationsverbindung und/oder eine drahtlose Kommunikationsverbindung sein. 1 FIG. 10 provides a functional block diagram for an exemplary embodiment of a system 100 for federal learning in accordance with the subject matter disclosed herein. The system 100 for federal learning can be a global server 101 and N clients (ie, local devices) 102 1 -102 N include. The global server 101 can be in a single location in the cloud or in distributed locations. The term "global server" as used herein means any server device that is configured to (wired or) with two or more client devices over a wide area network (e.g., the Internet) wireless) and can be any server device configured to communicate directly with two or more client devices in a federal machine learning system. The clients 102 1 -102 N are via a communication link 103 able to communicate with the global server 101 coupled. The communication link 103 can be a wired communication link and / or a wireless communication link.

2A und 2B stellen jeweils funktionale Blockschaltbilder für beispielhafte Ausführungsformen eines globalen Servers 101 und eines Clients 102 gemäß des hierin offenbarten Gegenstands dar. Ein globaler Server 101 kann eine Verarbeitungsvorrichtung 201 umfassen, wie beispielsweise eine zentrale Verarbeitungseinheit (CPU), die kommunikationsfähig mit einem Speicher 202 und einer Kommunikationsschnittstelle 203 verbunden ist. Der Speicher 202 kann einen nichtflüchtigen und/oder flüchtigen Speicher umfassen. Die Kommunikationsschnittstelle 203 kann eingerichtet sein, mit einer Netzwerkstruktur, wie beispielsweise aber nicht ausschließlich das Internet, zu kommunizieren. Die Kommunikationsschnittstelle 203 kann eine verdrahtete und/oder eine drahtlose Kommunikationsschnittstelle sein. Andere Konfigurationen für den globalen Server 101 sind möglich. Der globale Server 101 kann eingerichtet sein, eine Funktionalität für föderales maschinelles Lernen zu schaffen, wie hierin beschrieben. In einer Ausführungsform kann die Funktionalität für föderales maschinelles Lernen, die durch den globalen Server 101 bereitgestellt wird, durch eines oder mehrere Module bereitgestellt werden, die eine beliebige Kombination aus Software, Firmware und/oder Hardware sein können, die eingerichtet ist, die hierin beschriebene Funktionalität bereitzustellen. 2A and 2 B each provide functional block diagrams for exemplary embodiments of a global server 101 and a client 102 in accordance with the subject matter disclosed herein. A global server 101 can be a processing device 201 include, such as a central processing unit (CPU) capable of communication with a memory 202 and a communication interface 203 connected is. The memory 202 can comprise a non-volatile and / or volatile memory. The communication interface 203 can be set up to communicate with a network structure such as, but not limited to, the Internet. The communication interface 203 can be a wired and / or a wireless communication interface. Other configurations for the global server 101 are possible. The global server 101 may be configured to provide federal machine learning functionality as described herein. In one embodiment, the federal machine learning functionality provided by the global server 101 provided by one or more modules, which may be any combination of software, firmware, and / or hardware configured to provide the functionality described herein.

Ein Client 102 kann eine Verarbeitungsvorrichtung 251 umfassen, wie beispielsweise eine CPU, die kommunikationsfähig mit einem Speicher 252, einer Kommunikationsschnittstelle 253 und einer oder mehreren Rechenvorrichtungen 254 verbunden ist. Die eine oder die mehreren Rechenvorrichtungen 254 können eine Fähigkeit umfassen, Informationen zu erfassen oder zu sammeln, die eine Bewegung, eine oder mehrere Bilder, Biometrie und/oder eine Krankheit eines Menschen und/oder eines nichtmenschlichen Tieres und/oder einer Pflanze, einen Ton, eine Stimme, einen Ort, Metadaten, Anwendungsverwendung (d. h. Browserverlauf) und/oder Umfrageantworten betreffen, ist aber nicht darauf beschränkt. In einer Ausführungsform ist mindestens eine Rechenvorrichtung 254 eine Erfassungsvorrichtung. Andere Konfigurationen für eine Client-Vorrichtung 102 sind möglich. Ein Client 102 kann eingerichtet sein, eine Funktionalität für föderales maschinelles Lernen zu schaffen, wie hierin beschrieben. In einer Ausführungsform kann die Funktionalität für föderales maschinelles Lernen, die durch einen Client 102 bereitgestellt wird, durch eines oder mehrere Module bereitgestellt werden, die eine beliebige Kombination aus Software, Firmware und/oder Hardware sein können, die eingerichtet ist, die hierin beschriebene Funktionalität bereitzustellen.One client 102 can be a processing device 251 include, such as a CPU, capable of communicating with a memory 252 , a communication interface 253 and one or more computing devices 254 connected is. The one or more computing devices 254 may include an ability to capture or gather information indicative of movement, one or more images, biometrics and / or disease of a human and / or non-human animal and / or plant, sound, voice, location, Includes, but is not limited to, metadata, application usage (i.e., browsing history), and / or survey responses. In one embodiment, there is at least one computing device 254 a detection device. Other configurations for a client device 102 are possible. One client 102 may be configured to provide federal machine learning functionality as described herein. In one embodiment, the federal machine learning functionality provided by a client 102 provided by one or more modules, which may be any combination of software, firmware, and / or hardware configured to provide the functionality described herein.

Ein Client 102i kann ein lokales Modell aufweisen, das eine Gewichtungs-Matrix θ i = ( W i l ) l = 1 L

Figure DE102021108101A1_0002
für L Schichten aufweist, die basierend auf einer Datenverteilung
Figure DE102021108101A1_0003
trainiert sein können. Jeder Satz an Gewichtungen θi kann für die Datenverteilung
Figure DE102021108101A1_0004
jedes Clients i maximal spezifisch sein. Jeder Client hat allerdings typischerweise beschränkte Daten, die für das Training eines vollständigen Modells ohne Überanpassung (Overfitting) unzureichend sein können. Daher skaliert die Gesamtanzahl an Parametern, die auf allen Clients gelernt werden müssen, mit der Anzahl an Clients. Das Lernen von N separaten Modellen kann allerdings nicht von Ähnlichkeiten zwischen Client-Datenverteilungen oder der geteilten Lernaufgabe profitieren. Um Daten effizienter zu nutzen schafft das System 100 für föderales maschinelles Lernen ein Gleichgewicht zwischen einem einzelnen globalen Modell und N lokalen Modellen. Das heißt, jedes Client-Modell kann für die lokale Datenverteilung personalisiert werden, wobei alle Modelle gemeinsam gelernte Komponenten teilen. Dazu wird eine Gewichtungsmatrix θ i = { W l } l = 1 L
Figure DE102021108101A1_0005
für einen Client i faktorisiert als: W i l = W a l Λ i l W b l , l = 1, , L
Figure DE102021108101A1_0006
Λ i l = d i a g ( λ i l )
Figure DE102021108101A1_0007
wobei W a l
Figure DE102021108101A1_0008
und W b l
Figure DE102021108101A1_0009
Wörterbücher von Rang-1 an Gewichtungsfaktoren sind, die mit Clients geteilt werden können und Λ i l
Figure DE102021108101A1_0010
die diagonale personalisierte Matrix für jeden Client i ist.One client 102i can have a local model that has a weighting matrix θ i = ( W. i l ) l = 1 L.
Figure DE102021108101A1_0002
for L has layers based on a data distribution
Figure DE102021108101A1_0003
can be trained. Any set of weights θ i can be used for data distribution
Figure DE102021108101A1_0004
each client i be maximally specific. However, each client typically has limited data that may be insufficient to train a full model without overfitting. Therefore, the total number of parameters that have to be learned on all clients scales with the number of clients. However, learning from N separate models cannot benefit from similarities between client data distributions or the shared learning task. In order to use data more efficiently, the system creates 100 for federal machine learning, a balance between a single global model and N local models. This means that each client model can be personalized for local data distribution, with all models sharing components that have been learned together. A weighting matrix is used for this θ i = { W. l } l = 1 L.
Figure DE102021108101A1_0005
for a client i factored as: W. i l = W. a l Λ i l W. b l , l = 1, ... , L.
Figure DE102021108101A1_0006
Λ i l = d i a G ( λ i l )
Figure DE102021108101A1_0007
whereby W. a l
Figure DE102021108101A1_0008
and W. b l
Figure DE102021108101A1_0009
Rank 1 dictionaries are weighting factors that can be shared with clients and Λ i l
Figure DE102021108101A1_0010
the diagonal personalized matrix for each client is i.

Die Faktorisierung kann gleichwertig ausgedrückt werden als: W i l = k = 1 F λ i , k l ( w a , k l w b , k l )

Figure DE102021108101A1_0011
wobei w a , k l
Figure DE102021108101A1_0012
die k-te Spalte von W a l
Figure DE102021108101A1_0013
ist, w b , k l
Figure DE102021108101A1_0014
die k-te Zeile von W b l
Figure DE102021108101A1_0015
ist und ⊗ ein äußeres Produkt bezeichnet. Auf diese Weise geschrieben wird die Interpretation der entsprechenden Paare an Spalten und Zeilen w a , k l
Figure DE102021108101A1_0016
und w b , k l
Figure DE102021108101A1_0017
als Gewichtungsfaktoren ersichtlicher. Die Wörterbücher W a l
Figure DE102021108101A1_0018
und W b l
Figure DE102021108101A1_0019
bilden zusammen ein globales Wörterbuch der Gewichtungsfaktoren und λ i l
Figure DE102021108101A1_0020
können als Faktor-Scores von Client i angesehen werden. Differenzen hinsichtlich λ i l
Figure DE102021108101A1_0021
zwischen Clients erlaubt eine Anpassung des Modells an die Datenverteilung jedes Clients, während ein Teilen der zugrundeliegenden Faktoren W a l
Figure DE102021108101A1_0022
und W b l
Figure DE102021108101A1_0023
ein Lernen aus den Daten aller Clients ermöglicht.The factorization can be equivalently expressed as: W. i l = k = 1 F. λ i , k l ( w a , k l w b , k l )
Figure DE102021108101A1_0011
whereby w a , k l
Figure DE102021108101A1_0012
the k th column of W. a l
Figure DE102021108101A1_0013
is, w b , k l
Figure DE102021108101A1_0014
the kth line of W. b l
Figure DE102021108101A1_0015
is and ⊗ denotes an external product. In this way the interpretation of the corresponding pairs of columns and rows is written w a , k l
Figure DE102021108101A1_0016
and w b , k l
Figure DE102021108101A1_0017
more apparent as weighting factors. The dictionaries W. a l
Figure DE102021108101A1_0018
and W. b l
Figure DE102021108101A1_0019
together form a global dictionary of weighting factors and λ i l
Figure DE102021108101A1_0020
can be viewed as client i factor scores. Differences regarding λ i l
Figure DE102021108101A1_0021
between clients allows the model to be adapted to the data distribution of each client while sharing the underlying factors W. a l
Figure DE102021108101A1_0022
and W. b l
Figure DE102021108101A1_0023
enables learning from the data of all clients.

Jeder Client-Faktor-Score λ i l

Figure DE102021108101A1_0024
kann als elementweises Produkt gebildet sein: λ i l = r i l b i l
Figure DE102021108101A1_0025
wobei r i l
Figure DE102021108101A1_0026
∈ ℝF eine Stärke jedes Faktors angibt und b i l
Figure DE102021108101A1_0027
∈ {0,1}F ein binärer Vektor ist, der aktive Vektoren angibt. Wie unten beschrieben, ist b i l
Figure DE102021108101A1_0028
üblicherweise dünnbesetzt, sodass allgemein jeder Client nur einen kleinen Teilsatz der verfügbaren Gewichtungsfaktoren verwendet. Wie hierin verwendet, bezieht sich die Abwesenheit des hochgestellten Zeichens ℓ (z. B. λi) auf die gesamte Sammlung auf allen Schichten L, für die eine Faktorisierung durchgeführt wird. Es können Punktschätzungen für Wa, Wb und Faktorstärken ri gelernt werden.Any client factor score λ i l
Figure DE102021108101A1_0024
can be formed as an element-wise product: λ i l = r i l b i l
Figure DE102021108101A1_0025
whereby r i l
Figure DE102021108101A1_0026
∈ ℝ F indicates a strength of each factor and b i l
Figure DE102021108101A1_0027
∈ {0,1} F is a binary vector indicating active vectors. As described below, is b i l
Figure DE102021108101A1_0028
usually sparsely populated, so that generally each client uses only a small subset of the available weighting factors. As used herein, the absence of the superscript ℓ (e.g., λ i ) refers to the entire collection on all layers L that are factored. Point estimates for W a , W b and factor strengths r i can be learned.

Innerhalb des Kontexts von föderalem maschinellem Lernen mit statistischer Heterogenität gibt es eine Anzahl an wünschenswerten Eigenschaften, die die Client-Faktor-Scores gemeinsam aufweisen sollten. Wie zuvor erwähnt, ist b i l

Figure DE102021108101A1_0029
üblicherweise dünnbesetzt und folglich ist λi ebenfalls dünnbesetzt, was eine Konsolidierung von zusammenhängendem Wissen fördert, während Interferenz minimalisiert wird. Das heißt, ein Client A sollte fähig sein, globale Faktoren während eines Trainings zu aktualisieren, ohne die Fähigkeit eines Clients B zunichtezumachen, die Aufgabe von Client B durchzuführen. Andererseits sollten Faktoren von verschiedenen Clients wiederverwendet werden. Während Daten nicht-unabhängig und nicht-identisch an Clients verteilt werden können, gibt es häufig einige Ähnlichkeiten oder eine Überlappung der Daten. Die geteilten Faktoren verteilen ein Lernen auf alle Client-Daten, was ein Szenario mit N unabhängigen Modellen vermeidet. Zudem ist in einer verteilten Umgebung, die für föderales maschinelles Lernen in Betracht kommt, die Gesamtanzahl an Knoten selten vordefiniert. Daher sollte ein System in der Lage sein, problemlos erweitert zu werden, sodass es neue Clients aufnimmt, ohne das gesamte Modell neu zu initialisieren. Dieses Merkmal umfasst sowohl ein Erhöhen der Kapazität auf der Server-Seite (falls nötig) als auch eine Initialisierung von neuen Clients.Within the context of federal machine learning with statistical heterogeneity, there are a number of desirable properties that client factor scores should have in common. As mentioned earlier, is b i l
Figure DE102021108101A1_0029
usually sparse and consequently λ i is also sparse, promoting consolidation of related knowledge while minimizing interference. That is, client A should be able to update global factors during training without negating client B's ability to perform client B's task. On the other hand, factors should be reused by different clients. While data can be distributed non-independently and non-identically to clients, there is often some similarity or overlap in the data. The shared factors distribute learning to all client data, which avoids a scenario with N independent models. In addition, in a distributed environment that is eligible for federal machine learning, the total number of nodes is rarely predefined. Therefore, a system should be able to easily expand to accommodate new clients without having to reinitialize the entire model. This feature includes both increasing the capacity on the server side (if necessary) and initializing new clients.

Um eine geringe Datendichte auf einer diagonalen personalisierten Matrix Λ i l

Figure DE102021108101A1_0030
zu fördern, kann der diagonale Vektor unter Verwendung eines Prozesses regularisiert werden, der dem Indian Buffet Process (IBP) ähnlich ist. Die Aposteriori-Verteilung des diagonalen Vektors kann durch Variationsinferenz gezwungen werden, so nahe wie möglich an einem A-priori-Diagonalvektor zu sein. Die Verwendung eines Bayesschen nichtparametrischen Ansatzes kann es den Daten erlauben, eine Client-Faktor-Zuordnung, eine Faktorwiederverwendung und eine serverseitige Modellexpansion zu diktieren. Eine Stick-Breaking Construction kann mit dem IBP als A-priori-Verteilung für eine Faktorauswahl wie folgt verwendet werden: v i , k l B e t a ( α ,1 )
Figure DE102021108101A1_0031
π i , k l = k = 1 k v i , k l
Figure DE102021108101A1_0032
b i , k l B e r n o u l l i ( π i , k l )
Figure DE102021108101A1_0033
wobei α ein Hyperparameter sein kann, der eine erwartete Anzahl an aktiven Faktoren und die Rate an neuen Faktoren steuert, die aufgenommen werden, und k den Faktor indiziert.To a low data density on a diagonal personalized matrix Λ i l
Figure DE102021108101A1_0030
To promote, the diagonal vector can be regularized using a process similar to the Indian Buffet Process (IBP). The a priori distribution of the diagonal vector can be constrained by variation inference to be as close as possible to an a priori diagonal vector. Using a Bayesian nonparametric approach can allow the data to dictate client-to-factor mapping, factor reuse, and server-side model expansion. A stick-breaking construction can be used with the IBP as an a priori distribution for a factor selection as follows: v i , k l B. e t a ( α ,1 )
Figure DE102021108101A1_0031
π i , k l = k = 1 k v i , k l
Figure DE102021108101A1_0032
b i , k l B. e r n O u l l i ( π i , k l )
Figure DE102021108101A1_0033
where α can be a hyperparameter that controls an expected number of active factors and the rate of new factors that are ingested, and k indicates the factor.

Die Aposteriori-Verteilung kann für die zufälligen Variablen bi und vi gelernt werden. Exakte Inferenzen der Aposteriori können unlösbar sein, sodass eine Variationsinferenz verwendet werden kann, die eine Molekularfeldannäherung aufweist, um die aktiven Faktoren für jede Client-Vorrichtung unter Verwendung der nachfolgenden Variationsverteilungen zu bestimmen, die die Variationsparameter (d. h. Seed-Werte) {πi, ci, di} für jeden angefragten Client unter Verwendung einer Bayes-by-Backprop-Propagation lernen: q ( θ i l ) = q ( b i l ) q ( v i l )

Figure DE102021108101A1_0034
b i l = B e r n o u l l i ( π i l )
Figure DE102021108101A1_0035
v i l = K u m a r a s w a m y ( c i l , d i l )
Figure DE102021108101A1_0036
The a posteriori distribution can be learned for the random variables b i and v i. Exact inferences of the posteriori can be unsolvable, so variation inference that has a molecular field approximation can be used to determine the active factors for each client device using the following variation distributions, which include the variation parameters (i.e. seed values) {π i , Learn c i , d i } for each requested client using Bayes-by-backprop propagation: q ( θ i l ) = q ( b i l ) q ( v i l )
Figure DE102021108101A1_0034
b i l = B. e r n O u l l i ( π i l )
Figure DE102021108101A1_0035
v i l = K u m a r a s w a m y ( c i l , d i l )
Figure DE102021108101A1_0036

Um eine differenzierbare Parameterisierung zu haben, kann eine Kumaraswamy-Verteilung als Ersatz für die Beta-Verteilung von vi zusammen mit einer leichten Relaxation der Bernoulli-Verteilung verwendet werden. Die Zielsetzung für jeden Client ist es, die untere Variationsgrenze zu maximieren: L i = n = 1 | D i | E q log  p ( y i ( n ) | θ i x i ( n ) ) K L ( q ( θ i ) | | p ( θ i ) )

Figure DE102021108101A1_0037
wobei |
Figure DE102021108101A1_0038
| die Anzahl an Trainingsbeispielen bei Client i ist. Der erste Term schafft eine Label-Überwachung und der zweite Term regularisiert die Aposteriori-Verteilung, um sich nicht zu weit von der IBP A-priori-Verteilung zu entfernen.In order to have a differentiable parameterization, a Kumaraswamy distribution can be used as a substitute for the beta distribution of v i along with a slight relaxation of the Bernoulli distribution. The objective for every client is to maximize the lower limit of variation: L. i = n = 1 | D. i | E. q log p ( y i ( n ) | θ i x i ( n ) ) - K L. ( q ( θ i ) | | p ( θ i ) )
Figure DE102021108101A1_0037
where |
Figure DE102021108101A1_0038
| is the number of training examples at client i. The first term creates label monitoring and the second term regularizes the a posteriori distribution so as not to deviate too far from the IBP a priori distribution.

Eine Molekularfeldannäherung kann verwendet werden, um eine Expansion des zweiten Terms zu erlauben zu: R = l = 1 L   K L ( q ( b i l ) | | p ( b i l | v i l ) ) + K L ( q ( v i l ) | | p ( v i l ) )

Figure DE102021108101A1_0039
A molecular field approximation can be used to allow expansion of the second term to: R. = l = 1 L. K L. ( q ( b i l ) | | p ( b i l | v i l ) ) + K L. ( q ( v i l ) | | p ( v i l ) )
Figure DE102021108101A1_0039

Bevor das Training beginnt, können globale Gewichtungsfaktoren {Wa, Wb} und Faktorstärken r durch den Server 101 initialisiert werden. Sobald sie initialisiert sind, beginnt jede Trainingsrunde damit, dass {Wa, Wb, r} an einen ausgewählten Teilsatz der gesamten Anzahl an Clients 102 gesendet wird. Jeder ausgewählte (gesampelte) Client trainiert dann das Modell, indem er seine private Datenverteilung

Figure DE102021108101A1_0040
für E Epochen verwendet, wobei er nicht nur das Gewichtungsfaktorwörterbuch {Wa, Wb } und die Faktorstärken r aktualisiert, sondern auch Variationsparameter (πi, ci, di des Clients, die steuern, welche Faktoren der Client verwendet. Die Datenverteilung
Figure DE102021108101A1_0041
kann Informationen bezüglich biometrischen Daten, medizinischen Daten, Bilddaten, Standortdaten, Anwendungsverwendungsdaten, thermische Daten, Atmosphärendaten und/oder Audio umfassen.Before the training begins, global weighting factors {W a , W b } and factor strengths r can be checked by the server 101 initialized. Once initialized, each round of training begins with {W a , W b , r} to a selected subset of the total number of clients 102 is sent. Each selected (sampled) client then trains the model by sharing its private data
Figure DE102021108101A1_0040
for E epochs, updating not only the weighting factor dictionary {W a , W b } and the factor strengths r, but also variation parameters (π i , c i , d i of the client which control which factors the client uses. The data distribution
Figure DE102021108101A1_0041
may include information related to biometric data, medical data, image data, location data, application usage data, thermal data, atmospheric data, and / or audio.

Sobald ein lokales Training abgeschlossen ist, sendet jeder Client {Wa, Wb, r} zurück an den Server, aber nicht die Variationsparameter {πi, ci, di}, die bei dem Client mit einer Datenverteilung Di verbleiben. Nachdem der Server 101 Updates von allen gesampelten Clients empfangen hat, können die verschiedenen neuen Werte für {Wa, Wb, r} durch den Server 101 unter Verwendung eines Durchschnittsbildungsschritts aggregiert werden, was in einer Ausführungsform ein einfacher Durchschnittsbildungsschritt sein kann. Der Prozess wiederholt dann mit dem Server ein Auswählen eines neuen Teilsatzes von Clients, die gesampelt werden, sendet den neuen aktualisierten Satz an globalen Parametern an den neuen Teilsatz und so weiter, bis eine gewünschte Anzahl an Kommunikationsrunden stattgefunden hat. Dieser Prozess wird durch den Pseudo-Code aus Algorithmus 1 zusammengefasst.

Figure DE102021108101A1_0042
Figure DE102021108101A1_0043
As soon as a local training is completed, each client sends {W a , W b , r} back to the server, but not the variation parameters {π i , c i , d i }, which remain with the client with a data distribution D i. After the server 101 Updates received from all sampled clients can change the various new values for {W a , W b , r} by the server 101 can be aggregated using an averaging step, which in one embodiment may be a simple averaging step. The process then repeats with the server selecting a new subset of clients to be sampled, sending the new updated set of global parameters to the new subset, and so on until a desired number of rounds of communication has taken place. This process is summarized by the pseudo-code from algorithm 1.
Figure DE102021108101A1_0042
Figure DE102021108101A1_0043

Wenn ein Client 102 in einen Evaluierungsmodus eintritt, kann der Client eine aktuelle Version von globalen Parametern {Wa, Wb, r} von dem Server anfordern. Falls bei dem Client zuvor bezüglich föderalem Training angefragt wurde, umfasst das lokale Modell die aggregierten globalen Parameter und den binären Vektor, der durch die lokalen Variationsparameter {πi, ci, di} des Clients erzeugt wurde. Ansonsten verwendet der Client nur die aggregierten {Wa, Wb, r} . Es ist zu beachten, dass, falls ein Client zuvor gesampelt wurde, die zuletzt zwischengespeicherte Kopie der globalen Parameter bei dem Client eine Option sein kann, falls eine Netzwerkverbindung nicht verfügbar oder zu aufwändig ist. Normalerweise sind Clients in der Lage, die aktuellsten Parameter anzufordern.When a client 102 entering an evaluation mode, the client can request a current version of global parameters {W a , W b , r} from the server. If the client has previously been asked about federal training, the local model comprises the aggregated global parameters and the binary vector that was generated by the local variation parameters {π i , c i , d i } of the client. Otherwise the client only uses the aggregated {W a , W b , r}. It should be noted that if a client was previously sampled, the last cached copy of the global parameters at the client can be an option if a network connection is not available or too expensive. Usually clients are able to request the most up-to-date parameters.

Datensicherheit ist eines der zentralen Aspekte von föderalem maschinellem Lernen. Einfachere, herkömmlichere Verfahren zum Trainieren eines Modells können eingesetzt werden, falls alle Daten zuerst bei einem zentralen Server aggregiert wurden. Die sehr reale Möglichkeit, dass vertrauliche Client-Daten während einer Übertragung abgefangen werden, oder ein Angreifer in den Datenspeicher des Servers 101 eindringt, sind beides schwerwiegende Bedenken und ein Grund dafür, die Daten für föderales maschinelles Lernen auf der lokalen Vorrichtung 102 zu belassen. Allerdings kann es für Sicherheitszwecke nicht ausreichend sein, nur die Daten auf der Client-Seite zu belassen. Genauso wie Daten bei einer Übertragung oder in einer zentralen Datenbank in nicht-föderalen Umgebungen kompromittiert werden können, sind Updates für föderales Training auf ähnliche Weise anfällig. Zum Beispiel umfasst das Update bei einem beispielhaften Verfahren für föderales maschinelles Lernen die gesamten Parameter des Modells. Dies kann im Grunde bedeuten, dass, statt die Daten sofort auszuliefern, ein White-Box-Zugriff auf das Modell ausgehändigt wird, wodurch das Modell für eine große Bandbreite an schädlichen Aktivitäten angreifbar ist, einschließlich dem Ausspähen von genau jenen Daten, die das föderale maschinelle Lernen zu schützen versucht.Data security is one of the central aspects of federal machine learning. Simpler, more traditional methods of training a model can be used if all the data has first been aggregated at a central server. The very real possibility that confidential client data is intercepted during a transmission, or an attacker into the data store of the server 101 intruding is both a serious concern and one reason why the federal machine learning data is on the local device 102 to leave. However, it may not be sufficient just for security purposes leave the data on the client side. Just as data can be compromised in transit or in a central database in non-federal environments, federal training updates are similarly vulnerable. For example, in an exemplary method for federal machine learning, the update includes all parameters of the model. Basically, this can mean that instead of delivering the data immediately, white-box access to the model is given, which makes the model vulnerable to a wide range of malicious activities, including spying on the very data that the federal machine learning tries to protect.

Für das hierin offenbarte System für föderales maschinelles Lernen übertragen Clients das gesamte Wörterbuch an Gewichtungsfaktoren {Wa, Wb} und Faktorstärken r an den Server 101, aber nicht {πi ci, di}. So bleiben die Informationen, die sich darauf beziehen, welche bestimmten Faktoren ein Client verwendet, lokal. Das heißt, weder die Client-Daten Di noch eine Faktorauswahl Λ i l

Figure DE102021108101A1_0044
verlassen die lokale Vorrichtung. Daher ist ein Angreifer möglicherweise nicht in der Lage, das Modell vollständig zu rekonstruieren, selbst falls eine Nachricht abgefangen wird, wodurch die Fähigkeit eines Angreifers behindert werden kann, einen Angriff durchzuführen, um die Daten wiederzugewinnen.For the federal machine learning system disclosed herein, clients transmit the entire dictionary of weighting factors {W a , W b } and factor strengths r to the server 101 , but not {π i c i , d i }. This keeps the information related to what specific factors a client is using local. That is, neither the client data D i nor a factor selection Λ i l
Figure DE102021108101A1_0044
leave the local device. Therefore, even if a message is intercepted, an attacker may not be able to fully reconstruct the model, which may hamper an attacker's ability to attack to recover the data.

3 ist ein Flussdiagramm für eine beispielhafte Ausführungsform eines Verfahrens 300 für föderales maschinelles Lernen bei einer Client-Vorrichtung gemäß dem hierin offenbarten Gegenstand. Das Verfahren startet bei 301. Globale Parameter, d. h. globale Gewichtungsfaktorwörterbücher und Faktorstärken können durch den globalen Server 101 initialisiert werden und an einen ausgewählten Teilsatz der Gesamtanzahl an Clients 102 gesendet werden, bevor das Training beginnt. Bei 302 wird eine Gruppe an Parametern für eine Client-Vorrichtung durch die Client-Vorrichtung aus der globalen Gruppe an Parametern ausgewählt. In einer Ausführungsform verwendet der Client Variationsparameter, um die Auswahl an Parametern für den Client zu bilden. Bei 303 trainiert die Client-Vorrichtung ein Modell unter Verwendung eines Datensatzes der Client-Vorrichtung und der Gruppe an Parametern, die durch die Client-Vorrichtung ausgewählt werden. Bei 304, nach dem Training, sendet die Client-Vorrichtung ein durch den Client aktualisiertes Gewichtungsfaktorwörterbuch und einen durch den Client aktualisierten Faktorstärkenvektor an den globalen Server 101, aber nicht die Variationsparameter, die durch den Client verwendet wurden, um die Auswahl an Parametern für den Client zu bilden, oder den Datensatz der Client-Vorrichtung. Der globale Server 101 kann durch den Client aktualisierte Wörterbuchkomponenten und Faktorstärkenvektoren unter Verwendung eines Durschnittbildungsschritts aggregieren. Der globale Server 101 kann einen neuen Satz an Clients zum Sampeln auswählen, und sendet den neuen aktualisierten Satz an globalen Parametern an den neuen Teilsatz an Clients. Für die beispielhafte Ausführungsform für das Verfahren 300 wird der Client als Teil des neuen Teilsatzes an Clients ausgewählt. Bei 305 empfängt die Client-Vorrichtung von dem globalen Server 101 ein global aktualisiertes Gewichtungsfaktorwörterbuch und einen global aktualisierten Faktorstärkenvektor. Bei 306 trainiert die Client-Vorrichtung die Gruppe an Parametern, die durch die Client-Vorrichtung ausgewählt wurden, das global aktualisierte Gewichtungsfaktorwörterbuch und den global aktualisierten Faktorstärkenvektor erneut basierend auf dem Datensatz des Clients. Das Verfahren kann fortgesetzt werden, bis eine gewünschte Anzahl an Trainingsepochen stattgefunden hat. Das Verfahren endet bei 307. 3 Figure 3 is a flow diagram for an exemplary embodiment of a method 300 for federal machine learning at a client device in accordance with the subject matter disclosed herein. The method starts at 301. Global parameters, ie global weighting factor dictionaries and factor strengths, can be made by the global server 101 initialized and to a selected subset of the total number of clients 102 sent before training begins. at 302 a group of parameters for a client device is selected by the client device from the global group of parameters. In one embodiment, the client uses variation parameters to form the selection of parameters for the client. at 303 the client device trains a model using a data set of the client device and the set of parameters selected by the client device. at 304 After the training, the client device sends a weighting factor dictionary updated by the client and a factor strength vector updated by the client to the global server 101 but not the variation parameters used by the client to form the selection of parameters for the client, or the data set of the client device. The global server 101 may aggregate dictionary components and factor strength vectors updated by the client using an averaging step. The global server 101 can select a new set of clients to be sampled and send the new updated set of global parameters to the new subset of clients. For the exemplary embodiment for the method 300 the client is selected as part of the new subset of clients. at 305 receives the client device from the global server 101 a globally updated weighting factor dictionary and a globally updated factor strength vector. at 306 the client device retrains the set of parameters selected by the client device, the globally updated weighting factor dictionary, and the globally updated factor strength vector based on the client's data set. The method can be continued until a desired number of training epochs has taken place. The method ends at 307.

4 stellt eine elektronische Vorrichtung 400 dar, die eine Funktionalität für föderales maschinelles Lernen gemäß dem hierin offenbarten Gegenstand umfasst. In einer Ausführungsform kann die elektronische Vorrichtung 400 ein globaler Server sein, der betriebsfähig ist, ein wie hierin offenbartes föderales maschinelles Lernen bereitzustellen. In einer anderen Ausführungsform kann die elektronische Vorrichtung 400 eine Client-Vorrichtung sein, die betriebsfähig ist, ein wie hierin offenbartes föderales maschinelles Lernen bereitzustellen. Die elektronische Vorrichtung 400, ob ein globaler Server oder eine Client-Vorrichtung, kann auch als Rechenvorrichtung, Personal Digital Assistant (PDA), Laptop-Computer, mobiler Computer, Web Tablet, drahtloses Telefon, Mobiltelefon, Smartphone, digitaler Musik-Player oder verdrahtete oder drahtlose elektronische Vorrichtung verkörpert sein, ist aber nicht darauf beschränkt. Die elektronische Vorrichtung 400 kann einen Controller 410, ein Ein-/Ausgabegerät 420, wie beispielsweise, aber nicht nur, eine Zehnertastatur, eine Tastatur, eine Anzeige, eine Touchscreen-Anzeige, eine Kamera und/oder einen Bildsensor, einen Speicher 430, eine Schnittstelle 440, eine GPU 450 und eine Bildverarbeitungseinheit 460 umfassen, die miteinander durch einen Bus 470 gekoppelt sind. Der Controller 410 kann zum Beispiel mindestens einen Mikroprozessor, mindestens einen digitalen Signalprozessor, mindestens einen Mikrocontroller oder dergleichen umfassen. Der Speicher 430 kann eingerichtet sein, Befehls-Code, der durch den Controller 410 verwendet wird, oder Nutzerdaten zu speichern. 4th represents an electronic device 400 that includes federal machine learning functionality in accordance with the subject matter disclosed herein. In one embodiment, the electronic device can 400 be a global server operable to provide federal machine learning as disclosed herein. In another embodiment, the electronic device 400 a client device operable to provide federal machine learning as disclosed herein. The electronic device 400 whether a global server or a client device, it can also function as a computing device, personal digital assistant (PDA), laptop computer, mobile computer, web tablet, wireless phone, cell phone, smartphone, digital music player, or wired or wireless electronic device to be embodied, but is not limited to it. The electronic device 400 can be a controller 410 , an input / output device 420 such as, but not limited to, a numeric keypad, a keyboard, a display, a touchscreen display, a camera and / or an image sensor, a memory 430 , an interface 440 , a GPU 450 and an image processing unit 460 include, interconnected by a bus 470 are coupled. The controller 410 may for example comprise at least one microprocessor, at least one digital signal processor, at least one microcontroller or the like. The memory 430 can be set up command code issued by the controller 410 is used or to save user data.

Die Schnittstelle 440 kann eingerichtet sein, eine drahtlose Schnittstelle zu umfassen, die eingerichtet ist, Daten von einem drahtlosen Kommunikationsnetzwerk unter Verwendung eines HF-Signals zu übertragen oder zu empfangen. Die drahtlose Schnittstelle 440 kann zum Beispiel eine Antenne umfassen. Die elektronische Vorrichtung 400 kann auch in einem Kommunikationsschnittstellenprotokoll eines Kommunikationssystems verwendet werden, wie beispielsweise, aber nicht nur, Code Division Multiple Access (CDMA), Global System for Mobile Communications (GSM), North American Digital Communications (NADC), Extended Time Division Multiple Access (E-TDMA), Wideband CDMA (WCDMA), CDMA2000, Wi-Fi, städtisches Wi-Fi (Muni Wi-Fi), Bluetooth, Digital Enhanced Cordless Telecommunications (DECT), Wireless Universal Serial Bus (Wireless USB), Fast Low-latency Access With Seamless Handoff Orthogonal Frequency Division Multiplexing (Flash-OFDM), IEEE 802.20, General Packet Radio Service (GPRS), iBurst, Wireless Broadband (WiBro), WiMAX, WiMAX-Advanced, Universal Mobile Telecommunication Service - Time Division Duplex (UMTS-TDD), High Speed Packet Access (HSPA), Evolution Data Optimized (EVDO), Long Term Evolution - Advanced (LTE-Advanced), Multichannel Multipoint Distribution Service (MMDS), Fifth-Generation Wireless (5G), und so weiter.the interface 440 may be configured to include a wireless interface configured to transmit data from a wireless communication network using an RF signal or to receive. The wireless interface 440 may for example comprise an antenna. The electronic device 400 can also be used in a communication system communication interface protocol such as, but not limited to, Code Division Multiple Access (CDMA), Global System for Mobile Communications (GSM), North American Digital Communications (NADC), Extended Time Division Multiple Access (E- TDMA), Wideband CDMA (WCDMA), CDMA2000, Wi-Fi, Urban Wi-Fi (Muni Wi-Fi), Bluetooth, Digital Enhanced Cordless Telecommunications (DECT), Wireless Universal Serial Bus (Wireless USB), Fast Low-latency Access With Seamless Handoff Orthogonal Frequency Division Multiplexing (Flash-OFDM), IEEE 802.20 , General Packet Radio Service (GPRS), iBurst, Wireless Broadband (WiBro), WiMAX, WiMAX-Advanced, Universal Mobile Telecommunication Service - Time Division Duplex (UMTS-TDD), High Speed Packet Access (HSPA), Evolution Data Optimized (EVDO ), Long Term Evolution - Advanced (LTE-Advanced), Multichannel Multipoint Distribution Service (MMDS), Fifth-Generation Wireless ( 5G) , and so forth.

Ausführungsformen des Gegenstands und der in dieser Spezifikation beschriebenen Vorgänge können in digitalen elektronischen Schaltungen oder in Computer-Software, Firmware oder Hardware implementiert sein, welche die in dieser Spezifikation offenbarten Strukturen und deren strukturellen Äquivalente umfassen, oder in Kombinationen von einer oder mehr als einer derselben. Ausführungsformen des in dieser Spezifikation beschriebenen Gegenstands können als ein oder mehr als ein Computer-Programm implementiert sein, d. h. ein oder mehrere Module an Computerprogrammbefehlen, die zur Ausführung durch eine Datenverarbeitungseinrichtung oder zur Steuerung von Vorgängen derselben auf einem Computerspeichermedium codiert sind. Alternativ oder zusätzlich können die Programmbefehle auf einem künstlich erzeugten, verbreiteten Signal codiert sein, z. B. einem maschinell erzeugtem elektrischen, optischen oder elektromagnetischen Signal, das erzeugt wird, um Informationen für eine Übertragung an eine geeignete Empfängereinrichtung zum Ausführungen durch eine Datenverarbeitungseinrichtung zu codieren. Ein Computerspeichermedium kann eine computerlesbare Speichervorrichtung, ein computerlesbares Speichersubstrat, ein Random oder Serial-Access-Speicher-Array oder -vorrichtung oder eine Kombination daraus sein oder in dieser umfasst sein. Während ein Computerspeichermedium kein verbreitetes Signal ist, kann ein Computerspeichermedium außerdem eine Quelle oder ein Ziel für Computerprogrammbefehle sein, die in einem künstlich erzeugten verbreiteten Signal codiert sind. Das Computerspeichermedium kann auch ein oder mehrere separate physikalische Komponenten oder Medien sein oder darin umfasst sein (z. B. mehrere CDs, Disketten oder andere Speichervorrichtungen). Zudem können die in dieser Spezifikation beschriebenen Vorgänge als Vorgänge implementiert sein, die durch eine Datenverarbeitungseinrichtung bei Daten durchgeführt werden, die auf einem oder mehreren computerlesbaren Speichervorrichtungen gespeichert sind oder von anderen Quellen empfangen werden.Embodiments of the subject matter and the acts described in this specification may be implemented in digital electronic circuits or in computer software, firmware, or hardware comprising the structures disclosed in this specification and their structural equivalents, or in combinations of one or more than one thereof . Embodiments of the subject matter described in this specification can be implemented as one or more than one computer program; H. one or more modules of computer program instructions which are encoded on a computer storage medium for execution by a data processing device or for the control of processes of the same. Alternatively or additionally, the program instructions can be encoded on an artificially generated, broadcast signal, e.g. B. a machine-generated electrical, optical or electromagnetic signal that is generated to encode information for transmission to a suitable receiver device for execution by a data processing device. A computer storage medium can be or be included in a computer readable storage device, a computer readable storage substrate, a random or serial access storage array or device, or a combination thereof. While a computer storage medium is not a broadcast signal, a computer storage medium can also be a source or destination for computer program instructions encoded in an artificially generated broadcast signal. The computer storage medium may also be, or included within, one or more separate physical components or media (e.g., multiple CDs, floppy disks, or other storage devices). In addition, the operations described in this specification may be implemented as operations performed by a data processing device on data stored on one or more computer-readable storage devices or received from other sources.

Während diese Beschreibung viele spezifische Implementierungsdetails enthalten kann, sollten die Implementierungsdetails nicht als Beschränkungen hinsichtlich des Umfangs irgendeines beanspruchten Gegenstands ausgelegt werden sondern vielmehr als Beschreibungen von Merkmalen, die für bestimmte Ausführungsformen spezifisch sind. Bestimmte Merkmale, die in dieser Spezifikation in dem Kontext separater Ausführungsformen beschrieben sind, können auch in Kombination in einer einzelnen Ausführungsform implementiert sein. Umgekehrt können verschiedene Merkmale, die im Kontext einer einzelnen Ausführungsform beschrieben sind, auch in mehreren Ausführungsformen separat oder in jeder geeigneten Unterkombination implementiert sein. Obwohl Merkmale oben als in bestimmten Kombinationen agierend beschrieben wurden und ursprünglich sogar als solche beansprucht werden, kann ferner ein oder können mehrere Merkmale einer beanspruchten Kombination in manchen Fällen aus der Kombination herausgetrennt werden und die beanspruchte Kombination kann sich auf eine Unterkombination oder auf eine Abwandlung einer Unterkombination beziehen.While this description may contain many specific implementation details, the implementation details should not be construed as limitations on the scope of any claimed subject matter, but rather as descriptions of features that are specific to particular embodiments. Certain features that are described in this specification in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable sub-combination. Furthermore, although features have been described above as acting in certain combinations and are originally claimed as such, one or more features of a claimed combination may in some cases be separated from the combination and the claimed combination may refer to a sub-combination or a modification of a Refer to subcombination.

Während Vorgänge in den Zeichnungen in einer bestimmten Reihenfolge dargestellt sind, sollte dies ebenfalls nicht in so verstanden werden, dass es erforderlich sei, dass Vorgänge in der bestimmten gezeigten Reihenfolge oder in einer sequenziellen Reihenfolge durchgeführt werden, oder dass alle dargestellten Vorgänge durchgeführt werden, um gewünschte Ergebnisse zu erzielen. Unter bestimmten Umständen können Multitasking und Parallelverarbeitung vorteilhaft sein. Ferner sollte die Trennung verschiedener Systemkomponenten in den Ausführungsformen, die oben beschrieben sind, nicht derart verstanden werden, dass eine solche Trennung in allen Ausführungsformen erforderlich sei, und es sollte erkennbar sein, dass die beschriebenen Programmkomponenten und Systeme allgemein in einem einzelnen Software-Produkt zusammen integriert sein können oder in mehreren Software-Produkten verpackt sein können.Also, while operations in the drawings are depicted in a particular order, it should not be construed as requiring that operations be performed in the particular order shown or in a sequential order, or that all of the operations depicted be performed in order to achieve desired results. In certain circumstances, multitasking and parallel processing can be beneficial. Furthermore, the separation of various system components in the embodiments described above should not be understood in such a way that such separation is necessary in all embodiments, and it should be recognized that the program components and systems described are generally combined in a single software product can be integrated or can be packaged in several software products.

Auf diese Weise wurden bestimmte Ausführungsformen des Gegenstands hierin beschrieben. Andere Ausführungsformen sind im Rahmen der nachfolgenden Ansprüche umfasst. In einigen Fällen können die Aktionen, die in den Ansprüchen aufgeführt sind, in einer anderen Reihenfolge durchgeführt werden und trotzdem gewünschte Ergebnisse erzielen. Zudem erfordern die in den beigefügten Figuren dargestellten Prozesse nicht notwendigerweise die bestimmte, gezeigte Reihenfolge oder sequenzielle Reihenfolge, um gewünschte Ergebnisse zu erzielen. In bestimmten Implementierungen können Multitasking und Parallelverarbeitung vorteilhaft sein.Thus, certain embodiments of the subject matter have been described herein. Other embodiments are encompassed within the scope of the following claims. In some cases, the actions listed in the claims can be performed in a different order and still achieve the desired results. In addition, the processes illustrated in the accompanying figures do not necessarily require the particular order shown or sequential order in order to achieve desired results. In certain implementations, multitasking and parallel processing can be beneficial.

Es wird für einen Fachmann ersichtlich sein, dass die innovativen Konzepte, die hierin beschrieben sind, für einen breiten Anwendungsbereich abgewandelt und variiert werden können. Entsprechend sollte der Umfang eines beanspruchten Gegenstands nicht auf eine der spezifischen, beispielhaften Lehren, die oben erläutert wurden, beschränkt werden, sondern dieser wird vielmehr durch die nachfolgenden Ansprüche definiert.It will be apparent to a person skilled in the art that the innovative concepts described herein can be modified and varied for a wide range of applications. Accordingly, the scope of claimed subject matter should not be limited to any of the specific exemplary teachings set forth above, but rather is defined by the following claims.

ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDED IN THE DESCRIPTION

Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of the documents listed by the applicant was generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte PatentliteraturPatent literature cited

  • US 63/033747 [0001]US 63/033747 [0001]

Claims (20)

Client-Vorrichtung in einem System für föderales maschinelles Lernen, wobei die Client-Vorrichtung aufweist: mindestens eine Rechenvorrichtung; eine Kommunikationsschnittstelle; und einen Prozessor, der mit der mindestens einen Rechenvorrichtung und mit der Kommunikationsschnittstelle gekoppelt ist, wobei der Prozessor: eine Gruppe an Parametern für die Client-Vorrichtung aus einer globalen Gruppe an Parametern auswählt, ein Modell unter Verwendung eines Datensatzes der Client-Vorrichtung und der Gruppe an Parametern, die durch die Client-Vorrichtung ausgewählt wurden, trainiert, wobei der Datensatz ausgehend von einer Ausgabe der mindestens einen Rechenvorrichtung gebildet wird, ein Gewichtungsfaktorwörterbuch und einen Faktorstärkenvektor nach dem Training des Modells aktualisiert, ein Client-aktualisiertes Gewichtungsfaktorwörterbuch und einen Client-aktualisierten Faktorstärkenvektor durch die Kommunikationsschnittstelle an einen globalen Server sendet, ein global aktualisiertes Gewichtungsfaktorwörterbuch und einen global aktualisierten Faktorstärkenvektor durch die Kommunikationsschnittstelle von dem globalen Server empfängt und das Modell unter Verwendung des Datensatzes der Client-Vorrichtung, der Gruppe an Parametern, die durch die Client-Vorrichtung ausgewählt wurden, und des global aktualisierten Gewichtungsfaktorwörterbuchs und des global aktualisierten Faktorstärkenvektors erneut trainiert.A client device in a federal machine learning system, the client device comprising: at least one computing device; a communication interface; and a processor coupled to the at least one computing device and to the communication interface, the processor: selects a set of parameters for the client device from a global set of parameters, trains a model using a data set of the client device and the group of parameters selected by the client device, the data set being formed on the basis of an output of the at least one computing device, updated a weighting factor dictionary and factor strength vector after training the model, sends a client-updated weighting factor dictionary and a client-updated factor strength vector through the communication interface to a global server, and receives a globally updated weighting factor dictionary and a globally updated factor strength vector through the communication interface from the global server retrained the model using the client device's data set, the set of parameters selected by the client device, and the globally updated weighting factor dictionary and globally updated factor strength vector. Client-Vorrichtung nach Anspruch 1, wobei die Client-Vorrichtung Teil einer Gruppe von N Client-Vorrichtungen ist, wobei N eine ganze Zahl ist.Client device after Claim 1 , wherein the client device is part of a group of N client devices, where N is an integer. Client-Vorrichtung nach Anspruch 2, wobei der Prozessor die Gruppe an Parametern aus der globalen Gruppe an Parametern unter Verwendung von drei Variationsparametern, die Seed-Werte aufweisen, auswählt und eine Differenz zwischen einem überwachten Lernen des Datensatzes und einer Regularisierung der ausgewählten Gruppe an Parametern und der globalen Gruppe an Parametern minimiert.Client device after Claim 2 wherein the processor selects the group of parameters from the global group of parameters using three variation parameters having seed values and a difference between supervised learning of the data set and regularization of the selected group of parameters and the global group of parameters minimized. Client-Vorrichtung nach Anspruch 3, wobei der Prozessor die Gruppe an Parametern aus der globalen Gruppe an Parametern auswählt, indem er die globale Gruppe an Parametern empfängt, die von dem globalen Server an einen ersten Teilsatz an Client-Vorrichtungen der N Client-Vorrichtungen gesendet wurden, wobei die Client-Vorrichtung Teil des ersten Teilsatzes an Client-Vorrichtungen ist.Client device after Claim 3 wherein the processor selects the group of parameters from the global group of parameters by receiving the global group of parameters sent from the global server to a first subset of client devices of the N client devices, the client devices Device is part of the first subset of client devices. Client-Vorrichtung nach Anspruch 4, wobei die Client-Vorrichtung das global aktualisierte Gewichtungsfaktorwörterbuch und einen global aktualisierten Faktorstärkenvektor empfängt, indem sie das global aktualisierte Gewichtungsfaktorwörterbuch und einen global aktualisierten Faktorstärkenvektor empfängt, die durch den globalen Server an einen zweiten Teilsatz der N Client-Vorrichtungen gesendet wurden, wobei die Client-Vorrichtung Teil des zweiten Teilsatzes an Client-Vorrichtungen ist.Client device after Claim 4 wherein the client device receives the globally updated weighting factor dictionary and a globally updated factor strength vector by receiving the globally updated weighting factor dictionary and a globally updated factor strength vector sent by the global server to a second subset of the N client devices, the client Device is part of the second subset of client devices. Client-Vorrichtung nach Anspruch 4, wobei der Prozessor eine Anforderung durch die Kommunikationsschnittstelle an den globalen Server bezüglich einer aktuellen Version der globalen Gruppe an Parametern sendet, wobei der Prozessor das Modell unter Verwendung der aktuellen Version der globalen Gruppe an Parametern aktualisiert und wobei der Prozessor das Modell evaluiert, das unter Verwendung der aktuellen Version der globalen Gruppe an Parametern aktualisiert wurde, um basierend auf dem Datensatz der Client-Vorrichtung eine Inferenz zu bilden.Client device after Claim 4 , wherein the processor sends a request through the communication interface to the global server for a current version of the global group of parameters, wherein the processor updates the model using the current version of the global group of parameters, and wherein the processor evaluates the model under Using the current version of the global set of parameters, updated to inference based on the client device's record. Client-Vorrichtung nach Anspruch 1, wobei der Datensatz Informationen bezüglich mindestens einem Element aus biometrischen Daten, medizinischen Daten, Bilddaten, Sprachdaten, Standortdaten, Anwendungsnutzungsdaten, thermischen Daten, atmosphärischen Daten, Audiodaten und Erhebungsdaten aufweist.Client device after Claim 1 wherein the data set includes information relating to at least one of biometric data, medical data, image data, voice data, location data, application usage data, thermal data, atmospheric data, audio data and survey data. System für föderales maschinelles Lernen, aufweisend: einen globalen Server, der Updates von Gewichtungsfaktorwörterbüchern und Faktorstärkenvektoren von N Client-Vorrichtungen empfängt, wobei N eine ganze Zahl ist, und der ein global aktualisiertes Gewichtungsfaktorwörterbuch und einen global aktualisierten Faktorstärkenvektor erzeugt; und die Client-Vorrichtungen, wobei mindestens eine Client-Vorrichtung aufweist: mindestens eine Rechenvorrichtung, eine Kommunikationsschnittstelle und einen Prozessor, der mit der mindestens einen Rechenvorrichtung und mit der Kommunikationsschnittstelle gekoppelt ist, wobei der Prozessor: eine Gruppe an Parametern aus einer globalen Gruppe an Parametern auswählt, ein Modell unter Verwendung eines Datensatzes der Client-Vorrichtung und der Gruppe an Parametern, die durch die Client-Vorrichtung ausgewählt werden, trainiert, ein Gewichtungsfaktorwörterbuch und einen Faktorstärkenvektor nach dem Training des Modells aktualisiert, ein Client-aktualisiertes Gewichtungsfaktorwörterbuch und einen Client-aktualisierten Faktorstärkenvektor durch die Kommunikationsschnittstelle sendet, durch die Kommunikationsschnittstelle von dem globalen Server das global aktualisierte Gewichtungsfaktorwörterbuch und den global aktualisierten Faktorstärkenvektor empfängt, und das Modell unter Verwendung des Datensatzes der Client-Vorrichtung, der Gruppe an Parametern, die durch die Client-Vorrichtung ausgewählt wurden, und des global aktualisierten Gewichtungsfaktorwörterbuchs und des global aktualisierten Faktorstärkenvektors erneut trainiert.A federal machine learning system, comprising: a global server that receives updates to weighting factor dictionaries and factor strength vectors from N client devices, where N is an integer, and which generates a globally updated weighting factor dictionary and a globally updated factor strength vector; and the client devices, wherein at least one client device comprises: at least one computing device, a communication interface, and a processor coupled to the at least one computing device and to the communication interface, the processor: selecting a group of parameters from a global group of parameters, a model using a data set of the client device and the group of parameters determined by the client device is selected, trained, updated a weighting factor dictionary and a factor strength vector after training the model, sending a client-updated weighting factor dictionary and a client-updated factor strength vector through the communication interface, through the communication interface from the global server the globally updated weighting factor dictionary and the receives globally updated factor strength vector, and the model using the client device's data set, the set of parameters selected by the client device, and the globally updated weight gs factor dictionary and the globally updated factor strength vector retrained. Client-Vorrichtung nach Anspruch 8, wobei der Prozessor die Gruppe an Parametern aus der globalen Gruppe an Parametern unter Verwendung von drei Variationsparametern, die Seed-Werte aufweisen, auswählt und eine Differenz zwischen einem überwachten Lernen des Datensatzes und einer Regularisierung der ausgewählten Gruppe an Parametern und der globalen Gruppe an Parametern minimiert.Client device after Claim 8 wherein the processor selects the group of parameters from the global group of parameters using three variation parameters having seed values and a difference between supervised learning of the data set and regularization of the selected group of parameters and the global group of parameters minimized. Client-Vorrichtung nach Anspruch 9, wobei der Prozessor die Gruppe an Parametern aus der globalen Gruppe an Parametern auswählt, indem er die globale Gruppe an Parametern empfängt, die von dem globalen Server an einen ersten Teilsatz an Client-Vorrichtungen der N Client-Vorrichtungen gesendet wurden, wobei die Client-Vorrichtung Teil des ersten Teilsatzes an Client-Vorrichtungen ist.Client device after Claim 9 wherein the processor selects the group of parameters from the global group of parameters by receiving the global group of parameters sent from the global server to a first subset of client devices of the N client devices, the client devices Device is part of the first subset of client devices. Client-Vorrichtung nach Anspruch 10, wobei die Client-Vorrichtung das global aktualisierte Gewichtungsfaktorwörterbuch und einen global aktualisierten Faktorstärkenvektor empfängt, indem sie das global aktualisierte Gewichtungsfaktorwörterbuch und einen global aktualisierten Faktorstärkenvektor empfängt, die durch den globalen Server an einen zweiten Teilsatz der N Client-Vorrichtungen gesendet wurden, wobei die Client-Vorrichtung Teil des zweiten Teilsatzes an Client-Vorrichtungen ist.Client device after Claim 10 wherein the client device receives the globally updated weighting factor dictionary and a globally updated factor strength vector by receiving the globally updated weighting factor dictionary and a globally updated factor strength vector sent by the global server to a second subset of the N client devices, the client Device is part of the second subset of client devices. Client-Vorrichtung nach Anspruch 10, wobei der Prozessor eine Anforderung durch die Kommunikationsschnittstelle an den globalen Server bezüglich einer aktuellen Version der globalen Gruppe an Parametern sendet, wobei der Prozessor das Modell unter Verwendung der aktuellen Version der globalen Gruppe an Parametern aktualisiert und wobei der Prozessor das Modell evaluiert, das unter Verwendung der aktuellen Version der globalen Gruppe an Parametern aktualisiert wurde, um basierend auf dem Datensatz der Client-Vorrichtung eine Inferenz zu bilden.Client device after Claim 10 , wherein the processor sends a request through the communication interface to the global server for a current version of the global group of parameters, wherein the processor updates the model using the current version of the global group of parameters, and wherein the processor evaluates the model under Using the current version of the global set of parameters, updated to inference based on the client device's record. Client-Vorrichtung nach Anspruch 8, wobei der Datensatz Informationen bezüglich mindestens einem Element aus biometrischen Daten, medizinischen Daten, Bilddaten, Sprachdaten, Standortdaten, Anwendungsnutzungsdaten, thermischen Daten, atmosphärischen Daten, Audiodaten und Erhebungsdaten aufweist.Client device after Claim 8 wherein the data set includes information relating to at least one of biometric data, medical data, image data, voice data, location data, application usage data, thermal data, atmospheric data, audio data and survey data. Verfahren für föderales maschinelles Lernen, wobei das Verfahren aufweist: Auswählen, bei einer Client-Vorrichtung, einer Gruppe an Parametern aus einer globalen Gruppe an Parametern, wobei die globale Gruppe an Parametern ein Gewichtungsfaktorwörterbuch und einen Faktorstärkenvektor umfasst; Trainieren, bei der Client-Vorrichtung, eines Modells unter Verwendung eines Datensatzes der Client-Vorrichtung und der Gruppe an Parametern, die durch die Client-Vorrichtung ausgewählt wurden; Aktualisieren eines Gewichtungsfaktorwörterbuchs und eines Faktorstärkenvektors nach einem Training des Modells; Senden, von der Client-Vorrichtung an einen globalen Server, eines Client-aktualisierten Gewichtungsfaktorwörterbuchs und eines Client-aktualisierten Faktorstärkenvektors; Empfangen eines aktualisierten Gewichtungsfaktorwörterbuchs und eines global aktualisierten Faktorstärkenvektors an der Client-Vorrichtung von dem globalen Server; und erneutes Trainieren des Modells an der Client-Vorrichtung unter Verwendung des Datensatzes der Client-Vorrichtung, der Gruppe an Parametern, die durch die Client-Vorrichtung ausgewählt wurden, und des global aktualisierten Gewichtungsfaktorwörterbuchs und des global aktualisierten Faktorstärkenvektors.A method for federal machine learning, the method comprising: Selecting, at a client device, a set of parameters from a global set of parameters, the global set of parameters including a weighting factor dictionary and a factor strength vector; Training, at the client device, a model using a data set of the client device and the set of parameters selected by the client device; Updating a weighting factor dictionary and a factor strength vector after training the model; Sending, from the client device to a global server, a client-updated weighting factor dictionary and a client-updated factor strength vector; Receiving at the client device an updated weighting factor dictionary and a globally updated factor strength vector from the global server; and retraining the model on the client device using the data set of the client device, the set of parameters selected by the client device, and the globally updated weighting factor dictionary and globally updated factor strength vector. Verfahren nach Anspruch 14, wobei die Client-Vorrichtung Teil einer Gruppe von N Client-Vorrichtungen ist, wobei N eine ganze Zahl ist.Procedure according to Claim 14 , wherein the client device is part of a group of N client devices, where N is an integer. Verfahren nach Anspruch 15, wobei das Auswählen der Gruppe an Parametern aus der globalen Gruppe an Parametern ferner aufweist, die Gruppe an Parametern unter Verwendung von drei Variationsparametern, die Seed-Werte aufweisen, auszuwählen; und eine Differenz zwischen einem überwachten Lernen des Datensatzes und einer Regularisierung der ausgewählten Gruppe an Parametern und der globalen Gruppe an Parametern zu minimieren.Procedure according to Claim 15 wherein selecting the group of parameters from the global group of parameters further comprises selecting the group of parameters using three variation parameters having seed values; and to minimize a difference between supervised learning of the data set and regularization of the selected group of parameters and the global group of parameters. Verfahren nach Anspruch 16, wobei ein Auswählen der Gruppe an Parametern aus der globalen Gruppe an Parametern ferner aufweist, an der Client-Vorrichtung die globale Gruppe an Parametern zu empfangen, welche von dem globalen Server an einen ersten Teilsatz an Client-Vorrichtungen der N Client-Vorrichtungen gesendet wurden, wobei die Client-Vorrichtung Teil des ersten Teilsatzes an Client-Vorrichtungen ist.Procedure according to Claim 16 wherein selecting the group of parameters from the global group of parameters further comprises receiving at the client device the global group of parameters sent by the global server to a first subset of client devices of the N client devices wherein the client device is part of the first subset of client devices. Verfahren nach Anspruch 17, wobei ein Empfangen des global aktualisierten Gewichtungsfaktorwörterbuchs und eines global aktualisierten Faktorstärkenvektors von dem globalen Server an der Client-Vorrichtung ferner aufweist, an der Client-Vorrichtung das global aktualisierte Gewichtungsfaktorwörterbuch und einen global aktualisierten Faktorstärkenvektor zu empfangen, die durch den globalen Server an einen zweiten Teilsatz der N Client-Vorrichtungen gesendet wurden, wobei die Client-Vorrichtung Teil des zweiten Teilsatzes an Client-Vorrichtungen ist.Procedure according to Claim 17 wherein receiving the globally updated weighting factor dictionary and a globally updated factor strength vector from the global server at the client device further comprises receiving at the client device the globally updated weighting factor dictionary and a globally updated factor strength vector sent by the global server to a second Subset of the N client devices were sent, the client device being part of the second subset of client devices. Verfahren nach Anspruch 17, ferner aufweisend: Anfordern einer aktuellen Version der globalen Gruppe an Parametern von dem globalen Server durch die Client-Vorrichtung; Empfangen der aktuellen Version der globalen Gruppe an Parametern; Aktualisieren des Modells unter Verwendung der aktuellen Version der globalen Gruppe an Parametern; und Evaluieren des Modells, das unter Verwendung der aktuellen Version der globalen Gruppe an Parametern aktualisiert wurde, um basierend auf dem Datensatz der Client-Vorrichtung eine Inferenz zu bilden.Procedure according to Claim 17 , further comprising: the client device requesting a current version of the global set of parameters from the global server; Receiving the current version of the global group of parameters; Updating the model using the current version of the global set of parameters; and evaluating the model updated using the current version of the global set of parameters to inference based on the client device data set. Verfahren nach Anspruch 14, wobei der Datensatz Informationen bezüglich mindestens einem Element aus biometrischen Daten, medizinischen Daten, Bilddaten, Sprachdaten, Standortdaten, Anwendungsnutzungsdaten, thermischen Daten, atmosphärischen Daten, Audiodaten und Erhebungsdaten aufweist.Procedure according to Claim 14 wherein the data set includes information relating to at least one of biometric data, medical data, image data, voice data, location data, application usage data, thermal data, atmospheric data, audio data and survey data.
DE102021108101.7A 2020-06-02 2021-03-30 System and method for federal learning using anonymized weighting factorization Pending DE102021108101A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US202063033747P 2020-06-02 2020-06-02
US63/033,747 2020-06-02
US17/148,557 2021-01-13
US17/148,557 US20210374608A1 (en) 2020-06-02 2021-01-13 System and method for federated learning using weight anonymized factorization

Publications (1)

Publication Number Publication Date
DE102021108101A1 true DE102021108101A1 (en) 2021-12-02

Family

ID=78509360

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021108101.7A Pending DE102021108101A1 (en) 2020-06-02 2021-03-30 System and method for federal learning using anonymized weighting factorization

Country Status (3)

Country Link
KR (1) KR20210150293A (en)
DE (1) DE102021108101A1 (en)
TW (1) TWI879972B (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114301889A (en) * 2021-12-16 2022-04-08 南京理工大学 An efficient federated learning method and system based on weight compression
CN116151369A (en) * 2022-11-23 2023-05-23 武汉大学 A Publicly Audited Byzantine Robust Federated Learning System and Method
CN117217328A (en) * 2023-09-04 2023-12-12 西安电子科技大学 Constraint factor-based federal learning client selection method
CN117557870A (en) * 2024-01-08 2024-02-13 之江实验室 Classification model training method and system based on federated learning client selection
US20240257118A1 (en) * 2021-07-12 2024-08-01 Kakaobank Corp. Method and device for determining transfer information in message through natural language processing based on deep learning
CN120197725A (en) * 2025-03-06 2025-06-24 内蒙古工业大学 Federal learning client selection method based on bandwidth

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102882552B1 (en) * 2022-01-25 2025-11-05 연세대학교 산학협력단 Local Federated Mix-up Split Learning Apparatus and Method
KR102884769B1 (en) * 2022-10-27 2025-11-11 국립암센터 A federated learning system and method between medical institutions, and a disease prognosis prediction system including the same
KR20240071984A (en) 2022-11-15 2024-05-23 경희대학교 산학협력단 Apparatus and method for tackling data heterogeneity in federated learning using intermediate layer representation regularization
KR102857819B1 (en) * 2023-01-25 2025-09-09 연세대학교 산학협력단 Split Learning Method and Apparatus for Automatic Modulation Classification

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6591146B1 (en) * 1999-09-16 2003-07-08 Hewlett-Packard Development Company L.C. Method for learning switching linear dynamic system models from data
US11593634B2 (en) * 2018-06-19 2023-02-28 Adobe Inc. Asynchronously training machine learning models across client devices for adaptive intelligence
CN109978177B (en) * 2019-03-19 2023-06-23 腾讯科技(深圳)有限公司 Model training method, business processing method, device and related equipment
CN110377726B (en) * 2019-06-05 2020-08-25 光控特斯联(上海)信息科技有限公司 Method and device for realizing emotion recognition of natural language text through artificial intelligence
CN110647765B (en) * 2019-09-19 2022-04-12 济南大学 Privacy protection method and system based on knowledge migration under collaborative learning framework

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20240257118A1 (en) * 2021-07-12 2024-08-01 Kakaobank Corp. Method and device for determining transfer information in message through natural language processing based on deep learning
US12175460B2 (en) * 2021-07-12 2024-12-24 Kakaobank Corp. Method and device for determining transfer information in message through natural language processing based on deep learning
CN114301889A (en) * 2021-12-16 2022-04-08 南京理工大学 An efficient federated learning method and system based on weight compression
CN114301889B (en) * 2021-12-16 2024-06-11 南京理工大学 Weight compression-based efficient federal learning method and system
CN116151369A (en) * 2022-11-23 2023-05-23 武汉大学 A Publicly Audited Byzantine Robust Federated Learning System and Method
CN117217328A (en) * 2023-09-04 2023-12-12 西安电子科技大学 Constraint factor-based federal learning client selection method
CN117557870A (en) * 2024-01-08 2024-02-13 之江实验室 Classification model training method and system based on federated learning client selection
CN117557870B (en) * 2024-01-08 2024-04-23 之江实验室 Classification model training method and system based on federated learning client selection
CN120197725A (en) * 2025-03-06 2025-06-24 内蒙古工业大学 Federal learning client selection method based on bandwidth

Also Published As

Publication number Publication date
TWI879972B (en) 2025-04-11
KR20210150293A (en) 2021-12-10
TW202147130A (en) 2021-12-16

Similar Documents

Publication Publication Date Title
DE102021108101A1 (en) System and method for federal learning using anonymized weighting factorization
US20210374608A1 (en) System and method for federated learning using weight anonymized factorization
DE102021117005A1 (en) Process and facility for federal learning
DE202017007641U1 (en) Training machine learning models on multiple machine learning tasks
DE102017125256A1 (en) Search for a neural architecture
DE102023127111A1 (en) Fine-tuning and control of diffusion models
DE212022000260U1 (en) Evaluating output sequences using a neural autoregressive language model network
DE112019006156T5 (en) DETECTION AND TREATMENT OF INAPPROPRIATE INPUTS THROUGH NEURAL NETWORKS
DE202012013479U1 (en) System for synchronizing actions in the background of an application
DE112020005560T5 (en) Face manipulation detection using a multi-source, multi-channel frame guided by physical cues
DE102016011173A1 (en) Create summaries of multimedia documents
DE102021107510A1 (en) TRAINING OF A NEURAL NETWORK UNDER MEMORY RESTRICTION
DE102021004506A1 (en) Generative Image Merging
DE112023002024T5 (en) PRIVACY-SENSITIVE TRAINING OF NEURAL NETWORKS USING DATA AUGMENTATION
DE112021000092T5 (en) Edge data encryption method for Edge IoT proxy devices
DE102022100920A1 (en) COMPUTE-IN-MEMORY ACCUMULATOR
DE102018125857A1 (en) Higher level node device, wireless network terminal and method of data transmission
DE102024127224A1 (en) Federated Learning with Base Model Distillation
Gou et al. A Novel Spiking Neural P System for Image Recognition.
DE102023116221A1 (en) Method and apparatus for learning-based channel matrix prediction
DE112022007491T5 (en) PROCEDURE AND FACILITY FOR CONTINUOUS TASK LEARNING
DE102025105954A1 (en) Proxy-guided image processing
DE102025111337A1 (en) COMBINATIONAL OPTIMIZATION, ACCELERATED BY PARALLEL, sparingly COMMUNICATED, MEMBER-INTEGRATED HARDWARE
DE102025106370A1 (en) Aligning a reference image structure using diffusion models
DE102025105583A1 (en) System and method for a deep equilibrium approach to an adversarial attack by diffusion models

Legal Events

Date Code Title Description
R012 Request for examination validly filed