[go: up one dir, main page]

TWI879972B - Federated machine-learning system, client device and method for federated machine-learning - Google Patents

Federated machine-learning system, client device and method for federated machine-learning Download PDF

Info

Publication number
TWI879972B
TWI879972B TW110119758A TW110119758A TWI879972B TW I879972 B TWI879972 B TW I879972B TW 110119758 A TW110119758 A TW 110119758A TW 110119758 A TW110119758 A TW 110119758A TW I879972 B TWI879972 B TW I879972B
Authority
TW
Taiwan
Prior art keywords
parameters
group
client device
global
client
Prior art date
Application number
TW110119758A
Other languages
Chinese (zh)
Other versions
TW202147130A (en
Inventor
凱文J 梁
尼奇爾 梅塔
郝維托
正元 李
卡林 勞倫斯
哈米 莫斯塔法 伊爾
Original Assignee
南韓商三星電子股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US17/148,557 external-priority patent/US20210374608A1/en
Application filed by 南韓商三星電子股份有限公司 filed Critical 南韓商三星電子股份有限公司
Publication of TW202147130A publication Critical patent/TW202147130A/en
Application granted granted Critical
Publication of TWI879972B publication Critical patent/TWI879972B/en

Links

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

A federated machine-learning system includes a global server and client devices. The server receives updates of weight factor dictionaries and factor strengths vectors from the clients, and generates a globally updated weight factor dictionary and a globally updated factor strengths vector. A client device selects a group of parameters from a global group of parameters, and trains a model using a dataset of the client device and the group of selected parameters. The client device sends to the server a client-updated weight factor dictionary and a client-updated factor strengths vector. The client device receives the globally updated weight factor dictionary and the globally updated factor strengths vector, and retrains the model using the dataset of the client device, the group of parameters selected by the client device, and the globally updated weight factor dictionary and the globally updated factor strengths vector.

Description

聯合機器學習系統、用戶端裝置以及用於聯合機器學習的方法Joint machine learning system, client device, and method for joint machine learning

本文中所揭露的主題是關於聯合機器學習。更特定而言,本文中所揭露的主題是關於一種用於聯合機器學習的系統及方法。 [相關申請案的交叉參考] The subject matter disclosed herein relates to joint machine learning. More particularly, the subject matter disclosed herein relates to a system and method for joint machine learning. [CROSS-REFERENCE TO RELATED APPLICATIONS]

本申請案主張2020年6月2日申請的美國臨時申請案第63/033,747號的優先權,所述美國臨時申請案的揭露內容以全文引用的方式併入本文中。This application claims priority to U.S. Provisional Application No. 63/033,747 filed on June 2, 2020, the disclosure of which is incorporated herein by reference in its entirety.

物聯網(Internet of Things;IoT)的發展、智慧型電話的增長以及記錄的數位化已對產生愈來愈大量的資料的現代系統作出了貢獻。所產生的資料可提供關於個人的廣泛資訊,其一方面可導致高度個人化智慧型應用,但另一方面亦可為敏感的且應保持私用。此類私用資料的實例包含但不限於面部影像、鍵入歷史、醫療記錄以及調查回應。The development of the Internet of Things (IoT), the growth of smartphones, and the digitization of records have contributed to modern systems that generate increasingly large amounts of data. The data generated can provide a wide range of information about individuals, which on one hand can lead to highly personalized smart applications, but on the other hand can be sensitive and should remain private. Examples of such private data include, but are not limited to, facial images, typing histories, medical records, and survey responses.

實例實施例在聯合機器學習系統中提供用戶端裝置,所述用戶端裝置可包含至少一個計算裝置、通信介面以及處理器。處理器可耦接至至少一個計算裝置且耦接至通信介面。處理器可自參數的全局群組選擇用於用戶端裝置的參數的群組;使用用戶端裝置的資料集及藉由用戶端裝置選擇的參數的群組訓練模型,其中資料集可由至少一個計算裝置的輸出形成;在訓練模型之後更新權重因數字典及因數強度向量;經由通信介面將用戶端更新的權重因數字典及用戶端更新的因數強度向量發送至全局伺服器;經由通信介面自全局伺服器接收全局更新的權重因數字典及全局更新的因數強度向量;且使用用戶端裝置的資料集、藉由用戶端裝置選擇的參數的群組以及全局更新的權重因數字典及全局更新的因數強度向量來再訓練模型。在一個實施例中,用戶端裝置可為N個用戶端裝置的群組的部分,其中N為整數。在另一實施例中,處理器藉由使用可包含種子值的三個變分參數自參數的全局群組選擇參數的群組,且最小化資料集的監督式學習與參數的選定群組及參數的全局群組的正則化之間的差。處理器可藉由接收已自全局伺服器發送至N個用戶端裝置中的用戶端裝置的第一子集的參數的全局群組而自參數的全局群組選擇參數的群組,用戶端裝置為用戶端裝置的第一子集的部分。用戶端裝置可藉由接收由全局伺服器發送至N個用戶端裝置的第二子集的全局更新的權重因數字典及全局更新的因數強度向量而接收全局更新的權重因數字典及全局更新的因數強度向量,其中用戶端裝置可為用戶端裝置的第二子集的部分。在再一實施例中,處理器可經由通信介面將對參數的全局群組的當前版本的請求發送至全局伺服器,可使用參數的全局群組的當前版本更新模型,且可評估使用參數的全局群組的當前版本更新的模型以基於用戶端裝置的資料集形成推論。An example embodiment provides a client device in a joint machine learning system, wherein the client device may include at least one computing device, a communication interface, and a processor. The processor may be coupled to the at least one computing device and to the communication interface. The processor may select a group of parameters for a client device from a global group of parameters; train a model using a data set of the client device and the group of parameters selected by the client device, wherein the data set may be formed by the output of at least one computing device; update a weight factor dictionary and a factor strength vector after training the model; send the client-updated weight factor dictionary and the client-updated factor strength vector to a global server via a communication interface; receive a globally updated weight factor dictionary and a globally updated factor strength vector from the global server via a communication interface; and retrain the model using the data set of the client device, the group of parameters selected by the client device, and the globally updated weight factor dictionary and the globally updated factor strength vector. In one embodiment, the client device may 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 by using three variational parameters that may include a seed value and minimizing 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 may select the group of parameters from the global group of parameters by receiving the global group of parameters that has been sent from a global server to a first subset of client devices in the N client devices, the client device being part of the first subset of client devices. The client device may receive a globally updated dictionary of weight factors and a globally updated factor strength vector by receiving the globally updated dictionary of weight factors and the globally updated factor strength vector sent by the global server to a second subset of N client devices, wherein the client device may be part of the second subset of client devices. In yet another embodiment, the processor may send a request for a current version of the global group of parameters to the global server via the communication interface, the model may be updated using the current version of the global group of parameters, and the model updated using the current version of the global group of parameters may be evaluated to form an inference based on a data set of the client device.

實例實施例提供一種聯合機器學習系統,可包含全局伺服器及N個用戶端裝置。全局伺服器可自N個用戶端裝置接收權重因數字典及因數強度向量的更新,其中N為整數,且可產生全局更新的權重因數字典及全局更新的因數強度向量。至少一個用戶端裝置可包含至少一個計算裝置、通信介面以及處理器。處理器可耦接至至少一個計算裝置且耦接至通信介面。處理器可自參數的全局群組選擇參數的群組;使用用戶端裝置的資料集及藉由用戶端裝置選擇的參數的群組訓練模型;在訓練模型之後更新權重因數字典及因數強度向量; 經由通信介面發送用戶端更新的權重因數字典及用戶端更新的因數強度向量;經由通信介面自全局伺服器接收全局更新的權重因數字典及全局更新的因數強度向量;且使用用戶端裝置的資料集、藉由用戶端裝置選擇的參數的群組以及全局更新的權重因數字典及全局更新的因數強度向量來再訓練模型。在一個實施例中,處理器可藉由使用可包含種子值的三個變分參數自參數的全局群組選擇參數的群組,且最小化資料集的監督式學習與參數的選定群組及參數的全局群組的正則化之間的差。在另一實施例中,處理器可藉由接收已自全局伺服器發送至N個用戶端裝置中的用戶端裝置的第一子集的參數的全局群組而自參數的全局群組選擇參數的群組,其中用戶端裝置可為用戶端裝置的第一子集的部分。在另一實施例中,用戶端裝置可藉由接收由全局伺服器發送至N個用戶端裝置的第二子集的全局更新的權重因數字典及全局更新的因數強度向量而接收全局更新的權重因數字典及全局更新的因數強度向量,其中用戶端裝置可為用戶端裝置的第二子集的部分。在一個實施例中,處理器可經由通信介面將對參數的全局群組的當前版本的請求發送至全局伺服器,可使用參數的全局群組的當前版本更新模型,且可評估使用參數的全局群組的當前版本更新的模型以基於用戶端裝置的資料集形成推論。An example embodiment provides a joint machine learning system that may include a global server and N client devices. The global server may receive updates of weight factor dictionaries and factor strength vectors from the N client devices, where N is an integer, and may generate a globally updated weight 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 may be coupled to the at least one computing device and to the communication interface. The processor can select a group of parameters from a global group of parameters; train a model using a data set of a client device and the group of parameters selected by the client device; update a weight factor dictionary and a factor strength vector after training the model; send the client-updated weight factor dictionary and the client-updated factor strength vector via a communication interface; receive a globally updated weight factor dictionary and a globally updated factor strength vector from a global server via a communication interface; and retrain the model using a data set of a client device, a group of parameters selected by the client device, and a globally updated weight factor dictionary and a globally updated factor strength vector. In one embodiment, the processor may select the group of parameters from the global group of parameters by using three variational parameters that may include a seed value and minimizing the 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 group of parameters from the global group of parameters by receiving the global group of parameters that has been sent from a global server to a first subset of client devices in N client devices, where the client devices may be part of the first subset of client devices. In another embodiment, the client device may receive a globally updated dictionary of weight factors and a globally updated factor strength vector by receiving the globally updated dictionary of weight factors and the globally updated factor strength vector sent by the global server to a second subset of N client devices, wherein the client device may be part of the second subset of client devices. In one embodiment, the processor may send a request for a current version of the global group of parameters to the global server via the communication interface, the model may be updated using the current version of the global group of parameters, and the model updated using the current version of the global group of parameters may be evaluated to form an inference based on a data set of the client device.

實例實施例提供一種用於聯合機器學習的方法,所述方法可包含:在用戶端裝置處自參數的全局群組選擇參數的群組,參數的全局群組包含權重因數字典及因數強度向量;在用戶端裝置處使用用戶端裝置的資料集及藉由用戶端裝置選擇的參數的群組來訓練模型;在訓練模型之後更新權重因數字典及因數強度向量;將用戶端更新的權重因數字典及用戶端更新的因數強度向量自用戶端裝置發送至全局伺服器;在用戶端裝置處自全局伺服器接收全局更新的權重因數字典及全局更新的因數強度向量;且在用戶端裝置處使用用戶端裝置的資料集、藉由用戶端裝置選擇的參數的群組以及全局更新的權重因數字典及全局更新的因數強度向量來再訓練模型。在一個實施例中,用戶端裝置可為N個用戶端裝置的群組的部分,其中N為整數。在另一實施例中,自參數的全局群組選擇參數的群組可包含:使用包括種子值的三個變分參數選擇參數的群組,且最小化資料集的監督式學習與參數的選定群組及參數的全局群組的正則化之間的差。在再一實施例中,自參數的全局群組選擇參數的群組可包含在用戶端裝置處接收已自全局伺服器發送至N個用戶端裝置中的用戶端裝置的第一子集的參數的全局群組,其中用戶端裝置可為用戶端裝置的第一子集的部分。在又一實施例中,在用戶端裝置處自全局伺服器接收全局更新的權重因數字典及全局更新的因數強度向量可包含在用戶端裝置處接收藉由全局伺服器發送至N個用戶端裝置的第二子集的全局更新的權重因數字典及全局更新的因數強度向量,其中用戶端裝置可為用戶端裝置的第二子集的部分。在一個實施例中,方法可更包含:藉由用戶端裝置自全局伺服器請求參數的全局群組的當前版本;接收參數的全局群組的當前版本;使用參數的全局群組的當前版本更新模型;以及評估使用參數的全局群組的當前版本更新的模型以基於用戶端裝置的資料集形成推論。An example embodiment provides a method for joint machine learning, which may include: selecting a group of parameters from a global group of parameters at a client device, the global group of parameters including a weight factor dictionary and a factor strength vector; training a model at the client device using a dataset of the client device and the group of parameters selected by the client device; updating the weight factor dictionary and the factor strength vector after training the model; and updating the weight factor dictionary and the factor strength vector at the client device. An updated dictionary of weight factors and a client-side updated factor strength vector are sent from a client device to a global server; a globally updated dictionary of weight factors and a globally updated factor strength vector are received at the client device from the global server; and a model is retrained at the client device using a dataset of the client device, a group of parameters selected by the client device, and the globally updated dictionary of weight factors and the globally updated factor strength vector. In one embodiment, the client device may be part of a group of N client devices, where N is an integer. In another embodiment, selecting a group of parameters from a global group of parameters may include: selecting the group of parameters using three variational parameters including a seed value, and minimizing a difference between supervised learning of the dataset and regularization of the selected group of parameters and the global group of parameters. In yet another embodiment, selecting a group of parameters from a global group of parameters may include receiving, at a client device, a global group of parameters that has been sent from a global server to a first subset of client devices among N client devices, wherein the client device may be part of the first subset of client devices. In yet another embodiment, receiving, at a client device, a globally updated dictionary of weight factors and a globally updated factor strength vector from a global server may include receiving, at a client device, a globally updated dictionary of weight factors and a globally updated factor strength vector sent by the global server to a second subset of N client devices, wherein the client device may be part of the second subset of client devices. In one embodiment, the method may further include: requesting, by a client device, a current version of a global group of parameters from a global server; receiving the current version of the global group of parameters; updating a model using the current version of the global group of parameters; and evaluating the model updated using the current version of the global group of parameters to form inferences based on a data set of the client device.

在以下詳細描述中,闡述眾多特定細節以便提供對本揭露的透徹理解。然而,所屬領域中具通常知識者將理解,可在無此等特定細節的情況下實踐所揭露態樣。在其他情況下,為了不混淆本文中所揭露的主題,未詳細描述熟知方法、程序、組件以及電路。In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the present disclosure. However, one of ordinary skill in the art will appreciate that the disclosed aspects can be practiced without these specific details. In other cases, well-known methods, procedures, components, and circuits are not described in detail in order not to obscure the subject matter disclosed herein.

貫穿本說明書對「一個實施例」或「一實施例」的參考意謂結合實施例所描述的特定特徵、結構或特性可包含於本文中所揭露的至少一個實施例中。因此,片語「在一個實施例中」或「在一實施例中」或「根據一個實施例」(或具有類似意思的其他片語)貫穿本說明書在各種位置的出現可能未必全部指同一實施例。此外,在一或多個實施例中,特定特徵、結構或特性可以任何適合方式組合。在此方面,如本文中所使用,詞語「例示性」意謂「充當實例、例子或說明」。本文中描述為「例示性」的任何實施例不必解釋為比其他實施例較佳或有利。另外,在一或多個實施例中,特定特徵、結構或特性可以任何適合方式組合。此外,取決於本文中的論述的上下文,單數術語可包含對應複數形式,且複數術語可包含對應單數形式。類似地,帶連字符的術語(例如,「二維」、「預定」、「像素特定」等)可與對應非連字符版本(例如,「二維」、「預定」、「像素特定」等)間或互換使用,且大寫項(例如,「計數器時鐘」、「列選擇」、「PIXOUT」等)可與對應非大寫版本(例如,「計數器時鐘」、「行選擇」、「pixout」等)互換使用。此等偶然可互換使用不應被視為彼此不一致。References throughout this specification to "one embodiment" or "an embodiment" mean that the particular features, structures, or characteristics described in conjunction with the embodiment may be included in at least one embodiment disclosed herein. Therefore, the appearance of the phrase "in one embodiment" or "in an embodiment" or "according to an embodiment" (or other phrases of similar meaning) in various places throughout this specification may not necessarily all refer to the same embodiment. In addition, in one or more embodiments, the particular features, structures, or characteristics may be combined in any suitable manner. In this regard, as used herein, the word "exemplary" means "serving as an example, instance, or illustration." Any embodiment described herein as "exemplary" is not necessarily to be construed as being better or advantageous than other embodiments. In addition, in one or more embodiments, the particular features, structures, or characteristics may be combined in any suitable manner. In addition, depending on the context of the discussion herein, singular terms may include corresponding plural forms, and plural terms may include corresponding singular forms. Similarly, hyphenated terms (e.g., "two-dimensional", "predetermined", "pixel-specific", etc.) may be used interchangeably with corresponding non-hyphenated versions (e.g., "two-dimensional", "predetermined", "pixel-specific", etc.), and capitalized terms (e.g., "counter clock", "row select", "PIXOUT", etc.) may be used interchangeably with corresponding non-capitalized versions (e.g., "counter clock", "row select", "pixout", etc.). Such occasional interchangeable usage should not be considered inconsistent with each other.

此外,取決於本文中的論述的上下文,單數術語可包含對應複數形式,且複數術語可包含對應單數形式。應進一步注意,本文中所展示並論述的各種圖式(包含組件圖)僅用於說明性目的,且未按比例繪製。類似地,僅出於說明性目的而展示各種波形及時序圖。舉例而言,為了清楚起見,可相對於其他元件放大一些元件的尺寸。另外,在認為適當時,已在諸圖中重複附圖標號以指示對應及/或類似元件。In addition, depending on the context of the discussion herein, singular terms may include corresponding plural forms, and plural terms may include corresponding singular forms. It should be further noted that the various figures (including assembly diagrams) shown and discussed herein are for illustrative purposes only and are not drawn to scale. Similarly, various waveforms and timing diagrams are shown for illustrative purposes only. For example, the size of some elements may be exaggerated relative to other elements for clarity. In addition, when deemed appropriate, figure numbers have been repeated in the various figures to indicate corresponding and/or similar elements.

本文中所使用的術語僅用於描述一些實例實施例的目的,且不意欲為對所要求保護的主題的限制。如本文中所使用,除非上下文另有明確指示,否則單數形式「一(a/an)」及「所述」意欲亦包含複數形式。應進一步理解,術語「包括」在用於本說明書中時指定所陳述特徵、整數、步驟、操作、元件及/或組件的存在,但不排除一或多個其他特徵、整數、步驟、操作、元件、組件及/或其群組的存在或添加。如本文中所使用的術語「第一(first)」、「第二(second)」等被用作所述術語先於的名詞的標籤,且不暗示任何類型的排序(例如,空間、時間、邏輯等),除非如此明確定義。此外,相同附圖標號可用於跨越兩個或多於兩個圖指具有相同或類似功能性的部分、組件、區塊、電路、單元或模組。然而,此用法僅為簡化說明且易於論述起見;其不暗示此類組件或單元的構造或架構細節跨越所有實施例而相同,或此類通常參考的部分/模組為實施本文中所揭露的實例實施例中的一些的唯一方式。The terms used herein are used only for the purpose of describing some example embodiments and are not intended to be limitations on the claimed subject matter. As used herein, unless the context clearly indicates otherwise, the singular forms "a/an" and "the" are intended to also include the plural forms. It should be further understood that the term "including" when used in this specification specifies the presence of the described features, integers, steps, operations, elements and/or components, but does not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components and/or groups thereof. As used herein, the terms "first", "second", etc. are used as labels for the nouns that precede the terms, and do not imply any type of ordering (e.g., space, time, logic, etc.) unless so clearly defined. In addition, the same figure reference numerals may be used to refer to parts, components, blocks, circuits, units, or modules having the same or similar functionality across two or more figures. However, this usage is for simplicity of illustration and ease of discussion only; it does not imply that the construction or architectural details of such components or units are the same across all embodiments, or that such commonly referenced parts/modules are the only way to implement some of the example embodiments disclosed herein.

應理解,當元件或層稱作在另一元件或層「上」、「連接至」或「耦接至」另一元件或層時,所述元件或層可直接在另一元件或層上、直接連接至或耦接至另一元件或層,或可能存在介入元件或層。與此對比,當元件被稱作「直接在另一元件或層上」、「直接連接至另一元件或層」或「直接耦接至另一元件或層」時,不存在介入的元件或層。類似數字貫穿全文係指類似元件。如本文中所用,術語「及/或」包含相關聯列舉項目中的一或多者的任何組合及所有組合。It should be understood that when an element or layer is referred to as being "on," "connected to," or "coupled to" another element or layer, the element or layer may be directly on, directly connected to, or coupled to the other element or layer, or there may be intervening elements or layers. In contrast, when an element is referred to as being "directly on," "directly connected to," or "directly coupled to," there are no intervening elements or layers. Like numbers refer to like elements throughout. As used herein, the term "and/or" includes any and all combinations of one or more of the associated enumerated items.

如本文中所使用的術語「第一(first)」、「第二(second)」等被用作所述術語先於的名詞的標籤,且不暗示任何類型的排序(例如,空間、時間、邏輯等),除非如此明確定義。此外,相同附圖標號可用於跨越兩個或多於兩個圖指具有相同或類似功能性的部分、組件、區塊、電路、單元或模組。然而,此用法僅為簡化說明且易於論述起見;其不暗示此類組件或單元的構造或架構細節跨越所有實施例而相同,或此類通常參考的部分/模組為實施本文中所揭露的實例實施例中的一些的唯一方式。As used herein, the terms "first," "second," and the like are used as labels for the nouns that precede the terms, and do not imply any type of ordering (e.g., spatial, temporal, logical, etc.) unless expressly defined as such. In addition, the same figure numerals may be used to refer to parts, components, blocks, circuits, units, or modules having the same or similar functionality across two or more figures. However, this usage is for simplicity of illustration and ease of discussion only; it does not imply that the construction or architectural details of such components or units are the same across all embodiments, or that such commonly referenced parts/modules are the only way to implement some of the example embodiments disclosed herein.

除非另外定義,否則本文中所使用的所有術語(包含技術及科學術語)具有與由本主題所屬的技術領域中具有通常知識者通常理解的含義相同的含義。更應瞭解,諸如常用詞典中所定義的彼等術語的術語應解釋為具有與其在相關技的上下文中的含義一致的含義,且將不在理想化或過度正式意義上進行解釋,除非在本文中明確地如此定義。Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as those commonly understood by those skilled in the art to which the subject matter belongs. It should be further understood that the terms such as those defined in commonly used dictionaries should be interpreted as having the meaning consistent with their meaning in the context of the relevant technology, and will not be interpreted in an idealized or overly formal sense, unless explicitly defined in this article.

如本文中所使用,術語「模組」是指經組態以提供本文中結合模組所描述的功能性的軟體、韌體及/或硬體的任何組合。舉例而言,軟體可體現為軟體套件、程式碼及/或指令集或指令,且如本文中所描述的任何實施中所使用的術語「硬體」可單獨地或以任何組合包含例如總成、固線式電路、可程式化電路、狀態機電路及/或儲存由可程式化電路所執行的指令的韌體。模組可共同地或個別地體現為形成更大系統的部分的電路,所述更大系統例如但不限於積體電路(integrated circuit;IC)、晶片上系統(system on-chip;SoC)、總成等等。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 the module. For example, software may be embodied as a software suite, program code, and/or instruction set or instructions, and the term "hardware" as used in any implementation described herein may include, for example, an assembly, a solid-wire circuit, a programmable circuit, a state machine circuit, and/or firmware that stores instructions executed by the programmable circuit, alone or in any combination. Modules may collectively or individually be embodied as circuits that form part of a larger system, such as, but not limited to, an integrated circuit (IC), a system on-chip (SoC), an assembly, and the like.

已提議聯合學習來提供機器學習,所述機器學習或許有可能藉由將使用者資料本端地保持在每一用戶端裝置上且僅與全局伺服器共用模型更新來保持個人化資料私用。因此,聯合學習表示用於以隱私保護方式在異質分佈式網路上訓練機器學習模型的可能策略。Federated learning has been proposed to provide machine learning that may make it possible to keep personalized data private by keeping user data locally on each client device and only sharing model updates with a global server. Therefore, federated learning represents a possible strategy for training machine learning models on heterogeneously distributed networks in a privacy-preserving manner.

雖然聯合機器學習範例可提供用於保持私用資料私用的方式,但對於聯合機器學習系統仍存在許多挑戰。舉例而言,當前使用的聯合機器學習系統包含由每一用戶端使用的單一全局模型。然而,對於特定亞群,單模型方法可能無法良好地起作用,因為跨不同用戶端可能存在偏斜的資料分佈。Although the federated machine learning paradigm may provide a way to keep private data private, there are still many challenges for federated machine learning systems. For example, currently used federated machine learning systems include a single global model used by each client. However, for certain subpopulations, the single model approach may not work well because there may be a skewed data distribution across different clients.

為了說明此情況,考慮 個用戶端裝置,且第i個用戶端裝置包含與其他用戶端裝置不同的隨 變化的資料分佈 。在傳統聯合機器學習設定中,可習得的單一全局模型可部署於所有 個用戶端裝置上。傳統方法假定具有層 的多層感知器(multilayer perceptron;MLP)架構,及跨所有用戶端裝置共用的一組權重 。為滿足全局目標,可習得一組權重 以最小化跨所有用戶端的平均損失。舉例而言,一個傳統聯合機器學習系統最小化以下目標: (1) 其中 為用戶端裝置的索引,N的數目用戶端的數目, 為本端目標函數,且 為每一裝置 的權重。 To illustrate this, consider client devices, and the i-th client device contains a random number different from other client devices. Changing data distribution In the traditional joint machine learning setting, a single global model is learned that can be deployed on all on client devices. Traditional methods assume that there are layers A multilayer perceptron (MLP) architecture and a set of weights shared across all client devices To meet the global goal, a set of weights can be learned To minimize the average loss across all clients. For example, a traditional joint machine learning system minimizes the following objective: (1) Among them is the index of the client device, N is the number of clients, is the local target function, and For each device weight.

然而,給定統計異質性,一刀切(one-size-fits-all-type)方法可引起全局模型在某些用戶端上不良地執行。通常,效能可轉變為特定用戶端的本端分佈匹配整個群體的分佈的接近程度。因此,對於此實例傳統聯合機器學習系統的模型可被視為對具有在用戶端當中較不共有的資料特質的用戶端較不公平。However, given statistical heterogeneity, a one-size-fits-all-type approach can cause the global model to perform poorly on some clients. In general, performance can be translated into how closely a particular client's local distribution matches the distribution of the entire population. Therefore, for this example, the model of a traditional joint machine learning system can be seen as being unfair to clients with data characteristics that are less common among clients.

本文中所揭露的主題可藉由使用貝氏(Bayesian)非參數權重因數分解來改良用於聯合學習的模型一致性,所述貝氏非參數權重因數分解可提供可在眾多用戶端上達成較高本端模型效能的個人化聯合學習解決方案。The subject matter disclosed herein can improve model consistency for federated learning by using Bayesian nonparametric weight factorization, which can provide a personalized federated learning solution that can achieve higher local model performance on many clients.

與傳統聯合學習系統相比,本文中所揭露的聯合機器學習系統包含至少三個改良特徵。第一改良特徵為其上發生聯合學習的網路被分成兩個部分。第一部分提供伺服器聚合,且第二部分用於用戶端個人化。第二改良特徵是關於在全局伺服器與用戶端裝置之間傳達的減少的資料量。亦即,全局伺服器與用戶端裝置之間的資料傳達更高效,此是因為核心因數分解用於用戶端裝置中,且僅傳達用於訓練的參數的子集。第三改良特徵是關於由核心因數分解提供的額外安全層,且僅傳達用於訓練的參數的子集。Compared to traditional federated learning systems, the federated machine learning system disclosed in this article includes at least three improved features. The first improved feature is that the network on which federated learning occurs is divided into two parts. The first part provides server aggregation, and the second part is used for client personalization. The second improved feature is about the reduced amount of data transmitted between the global server and the client device. That is, the data transmission between the global server and the client device is more efficient because core factorization is used in the client device and only a subset of the parameters used for training is transmitted. The third improved feature is about the additional security layer provided by the core factorization and only a subset of the parameters used for training is transmitted.

本文中所揭露的聯合機器學習系統提供有效地使用全局模型中的資料從而以因子分解方式在 本端模型中訓練神經網路的聯合學習系統。每一用戶端模型可基於用戶端處的本端分佈個人化,且其中所有用戶端模型共用共同習得的分量。 The joint machine learning system disclosed herein provides a method for effectively using data from a global model to factorize the A federated learning system for training neural networks in local models. Each client model can be personalized based on the local distribution at the client, and all client models share commonly learned components.

圖1描繪根據本文中所揭露的主題的聯合學習系統100的實例實施例的功能方塊圖。聯合學習系統100可包含全局伺服器101及N個用戶端(亦即,本端裝置)102 1至102 N。全局伺服器101可在單一位置處或在分佈式位置處位於雲端中。如本文中所使用的術語「全局伺服器」意謂經組態以經由廣域網路(例如,網際網路)與兩個或多於兩個用戶端裝置(有線地及/或無線地)通信的任何伺服器裝置,且可為經組態以直接與聯合機器學習系統中的兩個或多於兩個用戶端裝置通信的任何伺服器裝置。用戶端102 1至102 N經由通信鏈路103以通信方式耦接至全局伺服器101。通信鏈路103可為有線通信鏈路及/或無線通信鏈路。 FIG. 1 depicts a functional block diagram of an example implementation of a federated learning system 100 according to the subject matter disclosed herein. The federated learning system 100 may include a global server 101 and N clients (i.e., local devices) 102 1 to 102 N . The global server 101 may be located in a cloud at a single location or at distributed locations. The term “global server” as used herein means any server device configured to communicate (wired and/or wirelessly) with two or more client devices via a wide area network (e.g., the Internet), and may be any server device configured to communicate directly with two or more client devices in a federated machine learning system. Clients 1021 to 102N are communicatively coupled to the global server 101 via a communication link 103. The communication link 103 may be a wired communication link and/or a wireless communication link.

圖2A及圖2B分別描繪根據本文中所揭露的主題的全局伺服器101及用戶端102的實例實施例的功能方塊圖。全局伺服器101可包含以通信方式耦接至記憶體202的處理裝置201,諸如中央處理單元(CPU),及通信介面203。記憶體202可包含非揮發性記憶體及/或揮發性記憶體。通信介面203可經組態以與網路組構通信,諸如但不限於網際網路。通信介面203可為有線及/或無線通信介面。全局伺服器101的其他組態是可能的。全局伺服器101可經組態以提供如本文中所描述的聯合機器學習功能。在一個實施例中,由全局伺服器101提供的聯合機器學習功能可由一或多個模組提供,所述一或多個模組可為經組態以提供本文中描述的功能的軟體、韌體及/或硬體的任何組合。2A and 2B depict functional block diagrams of example implementations of a global server 101 and a client 102, respectively, according to the subject matter disclosed herein. The global server 101 may include a processing device 201, such as a central processing unit (CPU), and a communication interface 203, communicatively coupled to a memory 202. The memory 202 may include non-volatile memory and/or volatile memory. The communication interface 203 may be configured to communicate with a network structure, such as but not limited to the Internet. The communication interface 203 may be a wired and/or wireless communication interface. Other configurations of the global server 101 are possible. The global server 101 may be configured to provide joint machine learning functionality as described herein. In one embodiment, the joint machine learning functionality provided by the global server 101 may be provided by one or more modules, which may be any combination of software, firmware, and/or hardware configured to provide the functionality described herein.

用戶端102可包含以通信方式耦接至記憶體252的處理裝置251,諸如CPU;通信介面253;以及一或多個計算裝置254。一或多個計算裝置254可包含感測或收集與以下各者相關(但不限於以下各者)的資訊的能力:運動、一或多個影像、人類及/或非人類動物及/或植物的生物測定及/或醫學病況、聲音、語音、位置、後設資料、應用使用(亦即,瀏覽歷史)及/或調查回應。在一個實施例中,至少一個計算裝置254為感測裝置。用戶端裝置102的其他組態是可能的。用戶端102可經組態以提供如本文中所描述的聯合機器學習功能。在一個實施例中,由用戶端102提供的聯合機器學習功能可由一或多個模組提供,所述一或多個模組可為經組態以提供本文中描述的功能的軟體、韌體及/或硬體的任何組合。The client 102 may include a processing device 251, such as a CPU, communicatively coupled to a memory 252; a communication interface 253; and one or more computing devices 254. The one or more computing devices 254 may include the ability to sense or collect information related to, but not limited to, motion, one or more images, biometrics and/or medical conditions of humans and/or non-human animals and/or plants, sound, voice, location, metadata, application usage (i.e., browsing history), and/or survey responses. In one embodiment, at least one computing device 254 is a sensing device. Other configurations of the client device 102 are possible. The client 102 may be configured to provide joint machine learning functionality as described herein. In one embodiment, the joint machine learning functionality provided by the client 102 may be provided by one or more modules, which may be any combination of software, firmware, and/or hardware configured to provide the functionality described herein.

用戶端102 i可具有本端模型,所述本端模型針對可在資料分佈 上訓練的 個層具有權重矩陣 。每一組權重 可最大限度地特定於每一用戶端 的資料分佈 。然而,每一用戶端通常具有有限資料,所述資料可能不足以用於訓練全模型而不過度擬合。因此,在所有用戶端上必須習得的參數的總數目隨用戶端的數目按比例調整。然而,學習 個獨立模型可能不利用用戶端資料分佈或共用學習任務之間的相似性。為了更高效地使用資料,聯合機器學習系統100提供單一全局模型與 個本端模型之間的平衡。亦即,每一用戶端模型可藉由共用共同習得的組件的所有模型而個人化至本端資料分佈。為進行此操作,用戶端 的權重矩陣 因數分解為: (2) (3) 其中 為可在用戶端上共用的權重因數的秩1的字典,且 為每一用戶端 的對角個人化矩陣。 The client 102 i may have a local model, which is specific to the data distribution Training The layers have weight matrices Each group of weights Can be as specific to each client as possible Data distribution However, each client typically has limited data, which may not be sufficient to train the full model without overfitting. Therefore, the total number of parameters that must be learned on all clients scales with the number of clients. Individual models may not exploit similarities between client data distributions or shared learning tasks. To use data more efficiently, the joint machine learning system 100 provides a single global model that That is, each client model can be personalized to the local data distribution by sharing all models of commonly learned components. To do this, the client The weight matrix Factoring this out is: (2) (3) Among them and is a rank-1 dictionary of weight factors that can be shared among clients, and For each client The diagonal personalized matrix.

因數分解可等效地表達為: (4) 其中 的第 行, 的第k列,且 表示外積。以此方式,對作為權重因數的行 及列 的對應對的解譯變得更加顯而易見。字典 一起形成權重因數的全局字典,且 可被視為用戶端 的因數分。用戶端之間的 的差允許針對每一用戶端的資料分佈定製模型,而共用基礎因數 實現自所有用戶端的資料學習。 The factorization can be equivalently expressed as: (4) Among them for No. OK, for The kth column of In this way, the rows as weight factors and columns The corresponding interpretation of the dictionary becomes more obvious. and together form a global dictionary of weight factors, and Can be considered as a client The factor of . The difference allows the model to be customized for each client's data distribution, while sharing the base factor and Enable data learning from all clients.

每一用戶端因數分 可形成為逐元素乘積: (5) 其中 指示每一因數的強度,且 為指示活動因數的二進制向量。如下文所描述, 通常為稀疏的,因此通常每一用戶端僅使用可用權重因數的較小子集。如本文中所使用,缺失 上標(例如, )是指跨供執行因數分解的所有層 的整個集。可針對 以及因數強度 習得點估計。 Each client factor can be formed as an element-wise product: (5) Among them indicates the strength of each factor, and is a binary vector indicating the activity factor. As described below, Typically sparse, so typically each client uses only a small subset of the available weight factors. As used herein, missing Superscript (for example, ) refers to all levels across which factorization is performed. The entire set of , and factor strength Learn some estimation.

在具有統計異質性的聯合機器學習的上下文內,存在用戶端因數分應共同地具有的許多合乎需要的性質。如先前所提及, 通常為稀疏的且因此 亦為稀疏的,其促進相關知識的鞏固同時使干擾最小化。亦即,用戶端A應能夠在訓練期間更新全局因數而不破壞用戶端B執行用戶端B的任務的能力。另一方面,因數應在用戶端當中再使用。雖然資料可跨用戶端非獨立且非相同地分佈,但通常存在資料的一些相似性或重疊。共用因數跨所有用戶端資料分佈學習,其避免 獨立模型情境。另外,在考慮用於聯合機器學習的分佈式設定中,很少預定義節點的總數目。因此,系統係能夠適度擴展以容納新用戶端而無需重新初始化整個模型。此特徵包含增大伺服器側容量(必要時)及初始化新用戶端兩者。 In the context of joint machine learning with statistical heterogeneity, there are many desirable properties that client-side factors should have in common. As mentioned earlier, Usually sparse and therefore is also sparse, which promotes the consolidation of relevant knowledge while minimizing interference. That is, client A should be able to update the global factor during training without destroying the ability of client B to perform client B's task. On the other hand, the factor should be reused among clients. Although the data can be distributed non-independently and non-identically across clients, there is usually some similarity or overlap in the data. The common factor is learned across all client data distributions, which avoids Independent model scenarios. Additionally, in the distributed settings considered for FML, the total number of nodes is rarely predefined. Therefore, the system is able to scale gracefully to accommodate new clients without reinitializing the entire model. This feature includes both increasing server-side capacity (when necessary) and initializing new clients.

為促進對角個人化矩陣 上的稀疏性,可使用類似於印度自助餐過程(Indian Buffet Process;IBP)的過程來正則化對角線向量。可藉由變分推論迫使對角線向量的後驗分佈儘可能地接近先前對角線向量。使用貝氏非參數方法可使資料指示用戶端因數指派、因數再使用以及伺服器側模型擴展。折棍子(stick-breaking)構造可與IBP一起用作如下用於因數選擇的先前分佈: (6) (7) (8) 其中 可為超參數,其控制預期數目個活動因數及併入新因數的速率,且 對因數進行索引。 To promote the diagonal personalization matrix The sparsity on , a process similar to the Indian Buffet Process (IBP) can be used to regularize the diagonal vectors. The posterior distribution of the diagonal vectors can be forced to be as close to the prior diagonal vectors as possible by variational inference. Using Bayesian nonparametric methods, the data can be used to indicate client-side factor assignment, factor reuse, and server-side model expansion. The stick-breaking construction can be used with IBP as the prior distribution for factor selection as follows: (6) (7) (8) Among them may be a hyperparameter that controls the expected number of active factors and the rate at which new factors are incorporated, and Index the factors.

可針對隨機變數 習得後驗分佈。後部的精確推論可為難處理的,因此可使用具有平均場近似的變分推論以使用以下變分分佈判定每一用戶端裝置的活動因數,所述變分分佈藉由後撐(Backprop)傳播使用貝葉斯(Bayes)學習每一所查詢用戶端的變分參數(亦即,種子值) (9) (10) (11) For random variables and The posterior distribution is learned. Exact inference of the posterior can be intractable, so variational inference with a mean field approximation can be used to determine the activity factor for each client device using the following variational distribution, which is propagated via backprop using Bayesian learning of the variational parameters (i.e., seed values) for each queried client: : (9) (10) (11)

為了具有可微分參數化,可以使用Kumaraswamy分佈作為 的貝他(β)分佈連同Bernouilli分佈的軟鬆弛的替代。每一用戶端的目標在於使變分下限最大化: (12) 其中| |為用戶端 處的訓練實例的數目。第一項提供標籤監督,且第二項將後驗分佈正則化為不遠離IBP先前分佈而雜散。 In order to have a differentiable parameterization, the Kumaraswamy distribution can be used as The goal of each client is to maximize the variational lower bound: (12) where | |For client The first term provides label supervision, and the second term regularizes the posterior distribution to be not too noisy from the IBP prior distribution.

平均場近似可用於允許第二項擴展為: (13) The mean field approximation can be used to allow the second term to expand to: (13)

在訓練開始之前,可藉由伺服器101初始化全局權重因數{ , }及因數強度 。一旦初始化,每一訓練回合開始於{ , , }被發送至用戶端102的總數目選定子集。每一選定(經取樣)用戶端隨後在 個曆元內使用其自身私用資料分佈 來訓練模型,不僅更新權重因數字典{ , }及因數強度 ,而且亦更新用戶端的變分參數 ,此控制用戶端使用哪些因數。資料分佈 可包含與生物辨識資料、醫療資料、影像資料、位置資料、應用使用資料、熱資料、大氣資料及/或音訊資料相關的資訊。 Before training begins, the server 101 may initialize the global weight factor { , } and factor strength Once initialized, each training round begins with { , , } is sent to a selected subset of the total number of clients 102. Each selected (sampled) client then Use of their own private data distribution within calendar years To train the model, not only update the weight factor dictionary { , } and factor strength , and also updates the client's variational parameters , which controls which factors are used by the client. Data Distribution May include information related to biometric data, medical data, imaging data, location data, application usage data, thermal data, atmospheric data, and/or audio data.

一旦本端訓練已完成,則每一用戶端將{ , , }發送回伺服器,而非變分參數 ,所述變分參數與具有資料分佈 的用戶端保留在一起。在伺服器101自所有經取樣用戶端接收更新之後,伺服器101可使用平均步驟聚合{ , , }的各種新值,所述平均步驟在一個實施例中可為簡單平均步驟。過程隨後藉由伺服器選擇用戶端的新子集來取樣、將新的經更新的全局參數集合發送至新子集等而重複,直至發生所要數目個通信回合為止。此過程藉由演算法1的偽碼概述。 演算法1 1: Input: Communication rounds , local training epochs , learning rate 2: Server initializes global weight factor dictionaries and , factor strengths 3: Clients each initialize variational parameters 4: for = 1, …, do5:     Server randomly selects subset of clients and sends { , , } 6: forclient in parallel do7: , , , , , ←CLIENTUPDATE( , , , , , ) 8:           Send { , , } to the server. 9: end for10:   Server aggregates and averages updates { , , } 11: end for12: functionCLIENTUPDATE( , , , , , ) 13: for = 1; …, do14: forminibatch do15:              Update { , , , , , } by minimizing Eq. (12) 16: end for17: end for18:  Return { , , , , , } 19: end function Once local training is complete, each client will { , , } is sent back to the server instead of the variational parameters , the variational parameter is related to the data distribution After server 101 receives updates from all sampled clients, server 101 may aggregate { , , }, which in one embodiment may be a simple averaging step. The process is then repeated by the server selecting a new subset of clients to sample, sending a new updated set of global parameters to the new subset, and so on, until the desired number of communication rounds has occurred. This process is outlined in the pseudo code of Algorithm 1. Algorithm 1 1: Input: Communication rounds , local training epochs , learning rate 2: Server initializes global weight factor dictionaries and , factor strengths 3: Clients each initialize variational parameters 4: for = 1, …, do 5: Server randomly selects subsets of clients and sends { , , } 6: for client in parallel do 7: , , , , , ←CLIENTUPDATE( , , , , , ) 8: Send { , , } to the server. 9: end for 10: Server aggregates and averages updates { , , } 11: end for 12: function CLIENTUPDATE( , , , , , ) 13: for = 1; …, do 14: for minibatch do 15: Update { , , , , , } by minimizing Eq. (12) 16: end for 17: end for 18: Return { , , , , , } 19: end function

當用戶端102進入評估模式時,用戶端可自伺服器請求全局參數{ , , }的當前版本。若先前已就聯合訓練查詢用戶端,則本端模型包含聚合的全局參數及藉由用戶端的本端變分參數 產生的二進制向量。否則,用戶端僅使用聚合的{ , , }。應注意,若用戶端先前已取樣,則用戶端處的全局參數的最近快取複本可為網路連接不可用或過於昂貴時的選項。通常,用戶端能夠請求最新參數。 When the client 102 enters the evaluation mode, the client can request global parameters { , , If the client has been previously queried for joint training, the local model contains the aggregated global parameters and the local variational parameters of the client. Otherwise, the client uses only the aggregated { , , }. Note that if the client has previously sampled, a recent cached copy of global parameters at the client may be an option when a network connection is unavailable or too expensive. Typically, the client is able to request the latest parameters.

資料安全為聯合機器學習的中心態樣中的一者。更簡單的,若所有資料首先聚合在中心伺服器處,則可利用訓練模型的更標準方法。敏感用戶端資料在傳輸期間被截獲或伺服器101的資料儲存庫被攻擊者破壞的極真實可能性皆為主要問題且激勵資料保持於本端裝置102上以用於聯合機器學習。另一方面,僅將資料保持在用戶端側處可能不足以用於安全性目的。正如資料可在傳輸中或在非聯合設定中的中心資料庫處受損,聯合訓練更新亦類似地易受損。舉例而言,在一個實例聯合機器學習方法中,更新包含模型的全部參數。此可有效地意謂立即產生資料可為用於再現對模型的白盒存取的取捨,其可將模型開放至廣泛範圍的惡意活動,包含暴露聯合機器學習旨在保護的資料本身。Data security is one of the central aspects of federated machine learning. More simply, if all data is first aggregated at a central server, a more standard method of training a model can be utilized. The very real possibility of sensitive client data being intercepted during transmission or the data repository of server 101 being compromised by an attacker are both major issues and motivating data to remain on the local device 102 for use in federated machine learning. On the other hand, simply keeping the data on the client side may not be sufficient for security purposes. Just as data can be corrupted in transmission or at a central database in a non-federated setting, federated training updates are similarly vulnerable. For example, in one example federated machine learning approach, the update includes all parameters of the model. This effectively means that the trade-off of immediately generating data can be used to reproduce white-box access to the model, which can open the model to a wide range of malicious activities, including exposing the data itself that the joint machine learning is designed to protect.

對於本文中所揭露的聯合機器學習系統,用戶端將權重因數{ , }的整個字典及因數強度 而非 傳輸至伺服器101。因此,與用戶端使用的特定因數相關的資訊保持在本端。亦即,用戶端資料 或因數選擇 皆不離開本端裝置。因此,即使訊息被截獲,敵人亦可能無法完全重建構模型,由此妨礙敵人執行攻擊以恢復資料的能力。 For the joint machine learning system disclosed in this article, the client sets the weight factor { , The entire dictionary and factor strength of Rather than The client data is transmitted to the server 101. Therefore, the information related to the specific factors used by the client is kept on the local side. or factor selection Therefore, even if the message is intercepted, the enemy may not be able to fully reconstruct the model, thus hindering the enemy's ability to perform attacks to recover the data.

圖3為根據本文中所揭露的主題的用於用戶端裝置處的聯合機器學習的方法300的實例實施例的流程圖。方法在301處開始。全局參數(亦即,全局權重因數字典及因數強度)可由全局伺服器101初始化且在訓練開始之前發送至用戶端102的總數目的選定子集。在302處,藉由用戶端裝置自參數的全局群組選擇用於用戶端裝置的參數的群組。在一個實施例中,用戶端使用變分參數來形成用於用戶端的參數選擇。在303處,用戶端裝置使用用戶端裝置的資料集及由用戶端裝置選擇的參數的群組訓練模型。在304處,在訓練之後,用戶端裝置將用戶端更新的權重因數字典及用戶端更新的因數強度向量發送至全局伺服器101,而非發送由用戶端使用以形成用於用戶端的參數的選擇的變分參數或用戶端裝置的資料集。全局伺服器101可使用平均步驟來聚合用戶端更新的字典分量及因數強度向量。全局伺服器101可選擇用戶端的新子集來進行取樣,且將全局參數的新的經更新集合發送至用戶端的新子集。對於方法300的實例實施例,選擇用戶端作為用戶端的新子集的部分。在305處,用戶端裝置自全局伺服器101接收全局更新的權重因數字典及全局更新的因數強度向量。在306處,用戶端裝置基於用戶端的資料集、由用戶端裝置選擇的參數的群組、全局更新的權重因數字典以及全局更新的因數強度向量進行再訓練。方法可繼續直至發生所要數目個訓練曆元為止。方法在307處結束。FIG. 3 is a flow chart of an example implementation of a method 300 for joint machine learning at a client device in accordance with the subject matter disclosed herein. The method begins at 301. A selected subset of a total number of global parameters (i.e., a global weight factor dictionary and factor strengths) may be initialized by a global server 101 and sent to a client 102 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 variational parameters to form the parameter selection for the client. At 303, the client device trains a model using the client device's dataset and the group of parameters selected by the client device. At 304, after training, the client device sends a client-updated dictionary of weight factors and a client-updated factor strength vector to the global server 101, rather than sending a dataset of variational parameters or client devices used by the client to form a selection of parameters for the client. The global server 101 may aggregate the client-updated dictionary components and factor strength vectors using an averaging step. The global server 101 may select a new subset of clients for sampling and send a new updated set of global parameters to the new subset of clients. For an example embodiment of method 300, the client is selected as part of the new subset of clients. At 305, the client device receives a globally updated dictionary of weight factors and a globally updated factor strength vector from the global server 101. At 306, the client device retrains based on the client data set, the group of parameters selected by the client device, the globally updated weight factor dictionary, and the globally updated factor strength vector. The method may continue until a desired number of training epochs have occurred. The method ends at 307.

圖4描繪根據本文中所揭露的主題的包含用於聯合機器學習的功能性的電子裝置400。在一個實施例中,電子裝置400可為可操作以提供如本文中所揭露的聯合機器學習的全局伺服器。在另一實施例中,電子裝置400可為可操作以提供如本文中所揭露的聯合機器學習的用戶端裝置。無論是全局伺服器還是用戶端裝置,電子裝置400亦可體現為(但不限於)計算裝置、個人數位助理(personal digital assistant;PDA)、膝上型電腦、行動電腦、網路平板電腦、無線電話、蜂巢式電話、智慧型手機、數位音樂播放器,或有線或無線電子裝置。電子裝置400可包含經由匯流排470彼此耦接的控制器410、輸入/輸出裝置420(諸如但不限於小鍵盤、鍵盤、顯示器、觸控式螢幕顯示器、攝影機及/或影像感測器)、記憶體430、介面440、GPU 450以及成像處理單元460。控制器410可包含例如至少一個微處理器、至少一個數位信號處理器、至少一個微控制器或類似者。記憶體430可經組態以儲存待由控制器410使用的命令碼或使用者資料。FIG. 4 depicts an electronic device 400 including functionality for joint machine learning according to the subject matter disclosed herein. In one embodiment, the electronic device 400 may be a global server operable to provide joint machine learning as disclosed herein. In another embodiment, the electronic device 400 may be a client device operable to provide joint machine learning as disclosed herein. Whether a global server or a client device, the electronic device 400 may also be embodied as, but not limited to, a computing device, a personal digital assistant (PDA), a laptop, a mobile computer, a web tablet, a wireless phone, a cellular phone, a smart phone, a digital music player, or a wired or wireless electronic device. The electronic device 400 may include a controller 410, an input/output device 420 (such as but not limited to a keypad, a keyboard, a display, a touch screen display, a camera and/or an image sensor), a memory 430, an interface 440, a GPU 450, and an imaging processing unit 460 coupled to each other via a bus 470. The controller 410 may include, for example, at least one microprocessor, at least one digital signal processor, at least one microcontroller, or the like. The memory 430 may be configured to store command codes or user data to be used by the controller 410.

介面440可經組態以包含經組態以使用RF信號將資料傳輸至無線通信網路或自無線通信網路接收資料的無線介面。無線介面440可包含例如天線。電子裝置400亦可用於通信系統的通信介面協定中,諸如但不限於:分碼多重存取(Code Division Multiple Access;CDMA)、全球行動通信系統(Global System for Mobile Communications;GSM)、北美數位通信(North American Digital Communications;NADC)、擴展分時多重存取(E-TDMA)、寬頻CDMA(Wideband CDMA;WCDMA)、CDMA2000、Wi-Fi、城市Wi-Fi(Municipal Wi-Fi;Muni Wi-Fi)、藍牙、數位增強無線電信(Digital Enhanced Cordless Telecommunications;DECT)、無線通用串列匯流排(Wireless Universal Serial Bus;無線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、通用行動電信服務分時雙工(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)、第五代無線通信(5G)等。Interface 440 may be configured to include a wireless interface configured to transmit data to or receive data from a wireless communication network using RF signals. Wireless interface 440 may include, for example, an antenna. The electronic device 400 may also be used in communication interface protocols of communication systems, 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, Municipal 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.11ac, IEEE 802.11ac, IEEE 802.11ac, IEEE 802.11ac, IEEE 802.11ac, IEEE 802.11ac, IEEE 802.11ac, IEEE 802.11ac 802.20, General Packet Radio Service (GPRS), iBurst, Wireless Broadband (WiBro), WiMAX, Advanced WiMAX, 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 communication (5G), etc.

本說明書中所描述的主題及操作的實施例可以數位電子電路或以電腦軟體、韌體或硬體(包含本說明書中所揭露的結構及其結構性等效物)或以其中的一或多者的組合實施。本說明書中所描述的主題的實施例可實施為一或多個電腦程式,亦即經編碼於電腦儲存媒體上以供資料處理設備執行或用以控制資料處理設備的操作的電腦程式指令的一或多個模組。替代地或另外,程式指令可經編碼於人工產生的傳播信號(例如機器產生的電氣、光學或電磁信號)上,其經產生以編碼資訊以用於傳輸至適合的接收器設備以用於由資料處理設備執行。電腦儲存媒體可為或包含於電腦可讀儲存裝置、電腦可讀儲存基板、隨機或串列存取記憶體陣列或裝置或其組合中。此外,當電腦儲存媒體並非傳播信號時,電腦儲存媒體可為編碼於人工產生的傳播信號中的電腦程式指令的來源或目的地。電腦儲存媒體亦可為一或多個分離實體組件或媒體(例如,多個CD、磁碟或其他儲存裝置)或包含於一或多個分離實體組件或媒體中。此外,本說明書中所描述的操作可實施為由資料處理設備在儲存於一或多個電腦可讀儲存裝置上或自其他來源接收到的資料上執行的操作。Embodiments of the subject matter and operations described in this specification may be implemented in digital electronic circuits or in computer software, firmware or hardware (including the structures disclosed in this specification and their structural equivalents) or in a combination of one or more thereof. Embodiments of the subject matter described in this specification may be implemented as one or more computer programs, i.e., one or more modules of computer program instructions encoded on a computer storage medium for execution by a data processing device or for controlling the operation of a data processing device. Alternatively or in addition, the program instructions may be encoded on an artificially generated propagated signal (e.g., a machine-generated electrical, optical, or electromagnetic signal) that is generated to encode information for transmission to a suitable receiver device for execution by the data processing device. A computer storage medium may be or be contained in a computer-readable storage device, a computer-readable storage substrate, a random or serial access memory array or device, or a combination thereof. In addition, when a computer storage medium is not a propagated signal, the computer storage medium may be a source or destination of computer program instructions encoded in an artificially generated propagated signal. A computer storage medium may also be or be contained in one or more separate physical components or media (e.g., multiple CDs, disks, or other storage devices). In addition, the operations described in this specification may be implemented as operations performed by a data processing apparatus on data stored on one or more computer-readable storage devices or received from other sources.

雖然本說明書可含有許多特定實施細節,但實施細節不應視為對任何所要求保護的主題的範疇的限制,而應視為對特定實施例特定的特徵的描述。在本說明書中描述於單獨實施例的上下文中的某些特徵亦可在單個實施例中以組合形式實施。相反地,在單個實施例的上下文中所描述的各種特徵亦可分別在多個實施例中實施或以任何適合子組合來實施。此外,儘管上文可能將特徵描述為以某些組合起作用且甚至最初按此來主張,但來自所主張組合之一或多個特徵在某些情況下可自所述組合刪除,且所主張組合可針對子組合或子組合之變化。Although this specification may contain many specific implementation details, the implementation details should not be viewed as limitations on the scope of any claimed subject matter, but rather as descriptions of features specific to particular embodiments. Certain features described in this specification in the context of separate embodiments may also be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented separately in multiple embodiments or in any suitable subcombination. Furthermore, although features may be described above as functioning in certain combinations and even initially claimed as such, one or more features from a claimed combination may be deleted from the combination in certain circumstances, and a claimed combination may be directed to subcombinations or variations of subcombinations.

類似地,雖然在圖式中以特定次序來描繪操作,但不應將此理解為需要以所展示之特定次序或依順序次序執行此等操作,或執行所有所說明之操作以達成合乎需要的結果。在某些情形中,多任務及並行處理可為有利的。此外,不應將上文所描述的實施例中的各種系統組件的分離理解為在所有實施例中要求此分離,且應理解,所描述程式組件及系統可通常一同整合於單一軟體產品或封裝至多個軟體產品中。Similarly, although operations are depicted in a particular order in the drawings, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed to achieve desirable results. In some cases, multitasking and parallel processing may be advantageous. Furthermore, the separation of various system components in the embodiments described above should not be understood as requiring such separation in all embodiments, and it should be understood that the described program components and systems may generally be integrated together in a single software product or packaged into multiple software products.

因此,本文中已描述主題的特定實施例。其他實施例在以下申請專利範圍的範疇內。在一些情況下,申請專利範圍中所闡述的動作可按不同次序執行且仍達成期望的結果。此外,附圖中所描繪的過程不一定需要所展示的特定次序或依序次序來達成期望的結果。在某些實施中,多任務及並行處理可為有利的。Thus, specific embodiments of the subject matter have been described herein. Other embodiments are within the scope of the following claims. In some cases, the actions recited in the claims may be performed in a different order and still achieve the desired results. Furthermore, the processes depicted in the accompanying figures do not necessarily require the particular order shown or sequential order to achieve the desired results. In certain implementations, multitasking and parallel processing may be advantageous.

如所屬領域中具通常知識者將認識到,可跨廣泛範圍的應用修改及改變本文中所描述的新穎概念。因此,所主張主題的範疇不應限於上文所論述的特定例示性教示中的任一者,而實際上由以下申請專利範圍界定。As one of ordinary skill in the art will recognize, the novel concepts described herein may be modified and varied across a wide range of applications. Accordingly, the scope of the claimed subject matter should not be limited to any of the specific exemplary teachings discussed above, but is instead defined by the following claims.

100:聯合學習系統 101:全局伺服器 102、102 1、102 2、102 N:用戶端 103:通信鏈路 201、251:處理裝置 202、252、430:記憶體 203、253:通信介面 254:計算裝置 300:方法 301、302、303、304、305、306、307:步驟 400:電子裝置 410:控制器 420:輸入/輸出裝置 440:介面 450:GPU 460:成像處理單元 470:匯流排 100: Joint learning system 101: Global server 102, 102 1 , 102 2 , 102 N : Client 103: Communication link 201, 251: Processing device 202, 252, 430: Memory 203, 253: Communication interface 254: Computing device 300: Method 301, 302, 303, 304, 305, 306, 307: Step 400: Electronic device 410: Controller 420: Input/output device 440: Interface 450: GPU 460: Image processing unit 470: Bus

在以下部分中,將參考圖式中所示出的例示性實施例描述本文中所揭露的主題的態樣,在所述圖式中: 圖1描繪根據本文中所揭露的主題的聯合學習系統的實例實施例的功能方塊圖。 圖2A及圖2B分別描繪根據本文中所揭露的主題的全局伺服器及用戶端的實例實施例的功能方塊圖。 圖3為根據本文中所揭露的主題的用於用戶端裝置處的聯合機器學習的方法的實例實施例的流程圖。 圖4描繪根據本文中所揭露的主題的包含用於聯合機器學習的功能性的電子裝置。 In the following sections, aspects of the subject matter disclosed herein will be described with reference to exemplary embodiments shown in the drawings, in which: FIG. 1 depicts a functional block diagram of an example embodiment of a joint learning system according to the subject matter disclosed herein. FIG. 2A and FIG. 2B depict functional block diagrams of example embodiments of a global server and a client, respectively, according to the subject matter disclosed herein. FIG. 3 is a flow chart of an example embodiment of a method for joint machine learning at a client device according to the subject matter disclosed herein. FIG. 4 depicts an electronic device including functionality for joint machine learning according to the subject matter disclosed herein.

300:方法 300:Methods

301、302、303、304、305、306、307:步驟 301, 302, 303, 304, 305, 306, 307: Steps

Claims (20)

一種在聯合機器學習系統中的用戶端裝置,所述用戶端裝置包括:至少一個計算裝置;通信介面;以及處理器,耦接至所述至少一個計算裝置且耦接至所述通信介面,所述處理器:藉由使用變分參數自參數的全局群組選擇所述用戶端裝置的參數的群組,使用所述用戶端裝置的資料集及由所述用戶端裝置選擇的參數的所述群組訓練模型,所述資料集由所述至少一個計算裝置的輸出形成,在訓練所述模型之後更新所述參數的全局群組所包含的權重因數字典及因數強度向量,其中所述權重因數字典包括貝氏非參數權重因數分解值,經由所述通信介面將用戶端更新的權重因數字典及用戶端更新的因數強度向量發送至全局伺服器,經由所述通信介面自所述全局伺服器接收全局更新的權重因數字典及全局更新的因數強度向量,以及使用所述用戶端裝置的所述資料集、由所述用戶端裝置選擇的參數的所述群組以及所述全局更新的權重因數字典及所述全局更新的因數強度向量再訓練所述模型。 A client device in a joint 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: selecting a group of parameters of the client device from a global group of parameters using variational parameters, training 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 by outputs of the at least one computing device, updating weights included in the global group of parameters after training the model A weight factor dictionary and a factor strength vector, wherein the weight factor dictionary includes Bayesian non-parametric weight factor decomposition values, sending the weight factor dictionary updated by the client and the factor strength vector updated by the client to a global server via the communication interface, receiving the globally updated weight factor dictionary and the globally updated factor strength vector from the global server via the communication interface, and retraining the model using the data set of the client device, the group of parameters selected by the client device, and the globally updated weight factor dictionary and the globally updated factor strength vector. 如請求項1所述的用戶端裝置,其中所述用戶端裝置為N個用戶端裝置的群組的部分,其中N為等於1或大於1的 整數。 A client device as described in claim 1, wherein the client device is part of a group of N client devices, where N is an integer equal to or greater than 1. 如請求項2所述的用戶端裝置,其中所述處理器通過使用包括種子值的三個變分參數自參數的所述全局群組選擇參數的所述群組,且最小化所述資料集的監督式學習與由所述用戶端裝置選擇的參數的所述群組及參數的所述全局群組的正則化之間的差。 A client device as claimed in claim 2, wherein the processor selects the group of parameters from the global group of parameters using three variational parameters including a seed value and minimizes the difference between supervised learning of the data set and regularization of the group of parameters selected by the client device and the global group of parameters. 如請求項3所述的用戶端裝置,其中所述處理器藉由接收已自所述全局伺服器發送至所述N個用戶端裝置中的用戶端裝置的第一子集的參數的所述全局群組,而自參數的所述全局群組選擇參數的所述群組,所述用戶端裝置為用戶端裝置的所述第一子集的部分。 A client device as claimed in claim 3, wherein the processor selects the group of parameters from the global group of parameters by receiving the global group of parameters that has been sent from the global server to a first subset of client devices among the N client devices, the client devices being part of the first subset of client devices. 如請求項4所述的用戶端裝置,其中所述用戶端裝置藉由接收由所述全局伺服器發送至所述用戶端裝置的第二子集的所述全局更新的權重因數字典及所述全局更新的因數強度向量,而接收所述全局更新的權重因數字典及所述全局更新的因數強度向量,所述用戶端裝置為用戶端裝置的所述第二子集的部分。 A client device as claimed in claim 4, wherein the client device receives the globally updated weight factor dictionary and the globally updated factor strength vector by receiving the globally updated weight factor dictionary and the globally updated factor strength vector sent by the global server to a second subset of the client devices, the client device being part of the second subset of the client devices. 如請求項4所述的用戶端裝置,其中所述處理器經由所述通信介面將對參數的所述全局群組的當前版本的請求發送至所述全局伺服器,其中所述處理器使用參數的所述全局群組的所述當前版本更新所述模型,以及其中所述處理器評估使用參數的所述全局群組的所述當前版本更新的所述模型以基於所述用戶端裝置的所述資料集形成推論。 A client device as described in claim 4, wherein the processor sends a request for a current version of the global group of parameters to the global server via the communication interface, wherein the processor updates the model using the current version of the global group of parameters, and wherein the processor evaluates the model updated using the current version of the global group of parameters to form an inference based on the data set of the client device. 如請求項1所述的用戶端裝置,其中所述資料集包括與以下各者中的至少一者相關的資訊:生物辨識資料、醫療資料、影像資料、語音資料、位置資料、應用使用資料、熱資料、大氣資料、音訊資料以及調查資料。 A client device as described in claim 1, wherein the data set includes information related to at least one of the following: biometric data, medical data, image data, voice data, location data, application usage data, thermal data, atmospheric data, audio data, and survey data. 一種聯合機器學習系統,包括:全局伺服器,其自N個用戶端裝置接收權重因數字典及因數強度向量的更新,其中N為等於1或大於1的整數,且產生全局更新的權重因數字典及全局更新的因數強度向量;以及所述N個用戶端裝置,至少一個用戶端裝置包括:至少一個計算裝置,通信介面,以及處理器,耦接至所述至少一個計算裝置且耦接至所述通信介面,所述處理器:藉由使用變分參數自參數的全局群組選擇參數的群組,使用所述用戶端裝置的資料集及由所述用戶端裝置選擇的參數的所述群組訓練模型,在訓練所述模型之後更新所述參數的全局群組所包含的權重因數字典及因數強度向量,其中所述權重因數字典包括貝氏非參數權重因數分解值,經由所述通信介面發送用戶端更新的權重因數字典及用戶端更新的因數強度向量,經由所述通信介面自所述全局伺服器接收所述全局更新的權重因數字典及所述全局更新的因數強度向量,以及使用所述用戶端裝置的所述資料集、由所述用戶端裝置選擇 的參數的所述群組以及所述全局更新的權重因數字典及所述全局更新的因數強度向量再訓練所述模型。 A joint machine learning system, comprising: a global server that receives updates of a weight factor dictionary and a factor strength vector from N client devices, wherein N is an integer equal to or greater than 1, and generates a globally updated weight factor dictionary and a globally updated factor strength vector; and the N client devices, at least one of which comprises: at least one computing device, a communication interface, and a processor coupled to the at least one computing device and coupled to the communication interface, the processor: selecting a group of parameters from a global group of parameters using a variational parameter, training the group using a data set of the client devices and the parameters selected by the client devices A model, updating a weight factor dictionary and a factor strength vector included in the global group of parameters after training the model, wherein the weight factor dictionary includes Bayesian non-parametric weight factor decomposition values, sending the weight factor dictionary updated by the client and the factor strength vector updated by the client via the communication interface, receiving the globally updated weight factor dictionary and the globally updated factor strength vector from the global server via the communication interface, and retraining the model using the data set of the client device, the group of parameters selected by the client device, and the globally updated weight factor dictionary and the globally updated factor strength vector. 如請求項8所述的聯合機器學習系統,其中所述處理器通過使用包括種子值的三個變分參數自參數的所述全局群組選擇參數的所述群組,且最小化所述資料集的監督式學習與由所述用戶端裝置選擇的參數的所述群組及參數的所述全局群組的正則化之間的差。 A joint machine learning system as described in claim 8, wherein the processor selects the group of parameters from the global group of parameters using three variational parameters including a seed value and minimizes the difference between supervised learning of the data set and regularization of the group of parameters selected by the client device and the global group of parameters. 如請求項9所述的聯合機器學習系統,其中所述處理器藉由接收已自所述全局伺服器發送至所述N個用戶端裝置中的用戶端裝置的第一子集的參數的所述全局群組,而自參數的所述全局群組選擇參數的所述群組,所述用戶端裝置為用戶端裝置的所述第一子集的部分。 A joint machine learning system as described in claim 9, wherein the processor selects the group of parameters from the global group of parameters by receiving the global group of parameters that have been sent from the global server to a first subset of client devices in the N client devices, the client devices being part of the first subset of client devices. 如請求項10所述的聯合機器學習系統,其中所述用戶端裝置藉由接收由所述全局伺服器發送至所述用戶端裝置的第二子集的所述全局更新的權重因數字典及所述全局更新的因數強度向量,而接收所述全局更新的權重因數字典及所述全局更新的因數強度向量,所述用戶端裝置為用戶端裝置的所述第二子集的部分。 A joint machine learning system as described in claim 10, wherein the client device receives the globally updated weight factor dictionary and the globally updated factor strength vector by receiving the globally updated weight factor dictionary and the globally updated factor strength vector sent by the global server to a second subset of the client devices, the client device being part of the second subset of the client devices. 如請求項10所述的聯合機器學習系統,其中所述處理器經由所述通信介面將對參數的所述全局群組的當前版本的請求發送至所述全局伺服器,其中所述處理器使用參數的所述全局群組的所述當前版本更新所述模型,以及其中所述處理器評估使用參數的所述全局群組的所述當前版 本更新的所述模型以基於所述用戶端裝置的所述資料集形成推論。 A joint machine learning system as described in claim 10, wherein the processor sends a request for a current version of the global group of parameters to the global server via the communication interface, wherein the processor updates the model using the current version of the global group of parameters, and wherein the processor evaluates the model updated using the current version of the global group of parameters to form an inference based on the data set of the client device. 如請求項8所述的聯合機器學習系統,其中所述資料集包括與以下各者中的至少一者相關的資訊:生物辨識資料、醫療資料、影像資料、語音資料、位置資料、應用使用資料、熱資料、大氣資料、音訊資料以及調查資料。 A combined machine learning system as described in claim 8, wherein the data set includes information related to at least one of the following: biometric data, medical data, image data, voice data, location data, application usage data, thermal data, atmospheric data, audio data, and survey data. 一種用於聯合機器學習的方法,所述方法包括:藉由使用變分參數在用戶端裝置處自參數的全局群組選擇參數的群組,參數的所述全局群組包含權重因數字典及因數強度向量;在所述用戶端裝置處使用所述用戶端裝置的資料集及由所述用戶端裝置選擇的參數的所述群組訓練模型;在訓練所述模型之後更新所述參數的全局群組所包含的所述權重因數字典及所述因數強度向量,其中所述權重因數字典包括貝氏非參數權重因數分解值;將用戶端更新的權重因數字典及用戶端更新的因數強度向量自所述用戶端裝置發送至全局伺服器;在所述用戶端裝置處自所述全局伺服器接收全局更新的權重因數字典及全局更新的因數強度向量;以及在所述用戶端裝置處使用所述用戶端裝置的所述資料集、由所述用戶端裝置選擇的參數的所述群組以及所述全局更新的權重因數字典及所述全局更新的因數強度向量再訓練所述模型。 A method for joint machine learning, the method comprising: selecting a group of parameters from a global group of parameters at a client device by using variational parameters, the global group of parameters comprising a weight factor dictionary and a factor strength vector; training a model at the client device using a data set of the client device and the group of parameters selected by the client device; updating the weight factor dictionary and the factor strength vector comprised by the global group of parameters after training the model, wherein the weight factor dictionary comprises a Bayesian non-parametric weight factorization values; sending a client-updated weight factor dictionary and a client-updated factor strength vector from the client device to a global server; receiving a globally updated weight factor dictionary and a globally updated factor strength vector from the global server at the client device; and retraining the model at the client device using the dataset of the client device, the group of parameters selected by the client device, and the globally updated weight factor dictionary and the globally updated factor strength vector. 如請求項14所述的方法,其中所述用戶端裝置為N個用戶端裝置的群組的部分,其中N為等於1或大於1的整數。 The method of claim 14, wherein the client device is part of a group of N client devices, where N is an integer equal to or greater than 1. 如請求項15所述的方法,其中自參數的所述全局群組選擇參數的所述群組更包括使用包括種子值的三個變分參數來選擇參數的所述群組;以及最小化所述資料集的監督式學習與由所述用戶端裝置選擇的參數的所述群組及參數的所述全局群組的正則化之間的差。 The method of claim 15, wherein selecting the group of parameters from the global group of parameters further comprises selecting the group of parameters using three variational parameters including a seed value; and minimizing the difference between supervised learning of the data set and regularization of the group of parameters selected by the client device and the global group of parameters. 如請求項16所述的方法,其中自參數的所述全局群組選擇參數的所述群組更包括在所述用戶端裝置處接收已自所述全局伺服器發送至所述N個用戶端裝置中的用戶端裝置的第一子集的參數的所述全局群組,所述用戶端裝置為用戶端裝置的所述第一子集的部分。 The method of 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 that has been sent from the global server to a first subset of client devices among the N client devices, the client device being part of the first subset of client devices. 如請求項17所述的方法,其中在所述用戶端裝置處自所述全局伺服器接收所述全局更新的權重因數字典及所述全局更新的因數強度向量更包括在所述用戶端裝置處接收藉由所述全局伺服器發送至所述用戶端裝置的第二子集的所述全局更新的權重因數字典及所述全局更新的因數強度向量,所述用戶端裝置為用戶端裝置的所述第二子集的部分。 The method of claim 17, wherein receiving the globally updated weight factor dictionary and the globally updated factor strength vector from the global server at the client device further comprises receiving the globally updated weight factor dictionary and the globally updated factor strength vector sent by the global server to a second subset of the client devices at the client device, the client device being part of the second subset of the client devices. 如請求項17所述的方法,更包括:藉由所述用戶端裝置自所述全局伺服器請求參數的所述全局群組的當前版本;接收參數的所述全局群組的所述當前版本;使用參數的所述全局群組的所述當前版本更新所述模型;以及評估使用參數的所述全局群組的所述當前版本更新的所述模型以基於所述用戶端裝置的所述資料集形成推論。 The method of claim 17 further comprises: requesting, by the client device, a current version of the global group 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 group of parameters; and evaluating the model updated using the current version of the global group of parameters to form an inference based on the data set of the client device. 如請求項14所述的方法,其中所述資料集包括與以下各者中的至少一者相關的資訊:生物辨識資料、醫療資料、影像資料、語音資料、位置資料、應用使用資料、熱資料、大氣資料、音訊資料以及調查資料。 The method of claim 14, wherein the data set includes information related to at least one of the following: biometric data, medical data, image data, voice data, location data, application usage data, thermal data, atmospheric data, audio data, and survey data.
TW110119758A 2020-06-02 2021-06-01 Federated machine-learning system, client device and method for federated machine-learning TWI879972B (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 US20210374608A1 (en) 2020-06-02 2021-01-13 System and method for federated learning using weight anonymized factorization
US17/148,557 2021-01-13

Publications (2)

Publication Number Publication Date
TW202147130A TW202147130A (en) 2021-12-16
TWI879972B true TWI879972B (en) 2025-04-11

Family

ID=78509360

Family Applications (1)

Application Number Title Priority Date Filing Date
TW110119758A TWI879972B (en) 2020-06-02 2021-06-01 Federated machine-learning system, client device and method for federated machine-learning

Country Status (3)

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

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102620697B1 (en) * 2021-07-12 2024-01-02 주식회사 카카오뱅크 Method and device for determining transfer information in messages using deep learning based natural language processing
CN114301889B (en) * 2021-12-16 2024-06-11 南京理工大学 Weight compression-based efficient federal learning method and system
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
CN117217328B (en) * 2023-09-04 2025-07-01 西安电子科技大学 Federated learning client selection method based on constraint factors
CN117557870B (en) * 2024-01-08 2024-04-23 之江实验室 Classification model training method and system based on federal learning client selection

Citations (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
CN109978177A (en) * 2019-03-19 2019-07-05 腾讯科技(深圳)有限公司 Model training method, method for processing business, device and relevant device
CN110377726A (en) * 2019-06-05 2019-10-25 特斯联(北京)科技有限公司 A kind of artificial intelligence realization natural language text Emotion identification method and apparatus
US20190385043A1 (en) * 2018-06-19 2019-12-19 Adobe Inc. Asynchronously training machine learning models across client devices for adaptive intelligence
CN110647765A (en) * 2019-09-19 2020-01-03 济南大学 Privacy protection method and system based on knowledge transfer under collaborative learning framework

Patent Citations (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
US20190385043A1 (en) * 2018-06-19 2019-12-19 Adobe Inc. Asynchronously training machine learning models across client devices for adaptive intelligence
CN109978177A (en) * 2019-03-19 2019-07-05 腾讯科技(深圳)有限公司 Model training method, method for processing business, device and relevant device
CN110377726A (en) * 2019-06-05 2019-10-25 特斯联(北京)科技有限公司 A kind of artificial intelligence realization natural language text Emotion identification method and apparatus
CN110647765A (en) * 2019-09-19 2020-01-03 济南大学 Privacy protection method and system based on knowledge transfer under collaborative learning framework

Also Published As

Publication number Publication date
TW202147130A (en) 2021-12-16
DE102021108101A1 (en) 2021-12-02
KR20210150293A (en) 2021-12-10

Similar Documents

Publication Publication Date Title
TWI879972B (en) Federated machine-learning system, client device and method for federated machine-learning
US20210374608A1 (en) System and method for federated learning using weight anonymized factorization
Chen et al. Fedgraph: Federated graph learning with intelligent sampling
US11544573B2 (en) Projection neural networks
JP7009020B2 (en) Learning methods, learning systems, learning devices, methods, applicable devices, and computer programs
US20210342696A1 (en) Deep Learning Model Training Method and System
CN109754105A (en) A prediction method, terminal and server
US20210219099A1 (en) Training in communication systems
EP4320556A1 (en) Privacy-aware pruning in machine learning
CN112532746B (en) Cloud edge cooperative sensing method and system
US20230419123A1 (en) Federated recommendation system, device, and method
EP3767549A1 (en) Delivery of compressed neural networks
CN114595815A (en) A Transmission-Friendly Cloud-Device Collaborative Training Neural Network Model Method
US11989268B2 (en) Dummy class framework for continual supervised learning applications
US20240362487A1 (en) Systems and methods for tuning parameters of a machine learning model for federated learning
EP3767548B1 (en) Delivery of compressed neural networks
Qi et al. Meta-learning with neural bandit scheduler
WO2023175381A1 (en) Iterative training of collaborative distributed coded artificial intelligence model
CN114462573A (en) An efficient hierarchical parameter transmission delay optimization method for edge intelligence
KR20180028610A (en) Machine learning method using relevance vector machine, computer program implementing the same and informaion processintg device configured to perform the same
CN113850372A (en) Neural network model training method, device, system and storage medium
TW202410654A (en) Method and system for learning-based channel matrix prediction, and user equipment
US20230418467A1 (en) System and method for reduction of data transmission in dynamic systems using inference model
US20240152755A1 (en) Machine Learning
CN115460232B (en) An edge caching method based on causal reinforcement learning