Method for discovery and signaling processes for clustering and peer-to-peer federated learning

By adopting clustering or peering methods in the federated learning architecture, grouping learning nodes and specifying cluster leaders to coordinate learning tasks, the single point of failure, large communication overhead and security problems of centralized architecture are solved, and efficient and secure model training and update are achieved.

CN119698618APending Publication Date: 2025-03-25QUALCOMM INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202280099049.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2022-08-19
Publication Date
2025-03-25

AI Technical Summary

Technical Problem

The existing federated learning architecture relies on centralized servers, resulting in single point of failure, high communication overhead, model training faces challenges in computing resources, data and task heterogeneity, as well as security and privacy issues.

Method used

Using clustering or peering methods, learning nodes are divided into clusters, and cluster leaders are designated to coordinate learning tasks, including local model training and updates, and global model training and updates are implemented through coordination among clusters.

Benefits of technology

While reducing bottlenecks and communication overhead, it reduces heterogeneity challenges in model training and improves the security and privacy of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119698618A_ABST
    Figure CN119698618A_ABST
Patent Text Reader

Abstract

Aspects are provided that allow a UE to discover other network nodes and perform ML model training in a clustering FL or peer-to-peer FL environment through various signaling procedures between the UE and the network node. The UE provides a first message including the first FL information of the apparatus to a network node. The UE obtains a second message comprising second FL information of the network node. The UE then provides an ML model information update to the network node based on the first FL information and the second FL information. Accordingly, ML model training may be implemented in a distributed manner using clustered FLs or peer-to-peer FLs while minimizing or avoiding bottlenecks, communication overhead, challenges brought to model training due to computing resources, training data, training tasks, or heterogeneity of associated ML models, security and privacy challenges, or other limitations associated with conventional FLs.
Need to check novelty before this filing date? Find Prior Art

Description

Background Art Technical Field

[0001] The present disclosure relates generally to communication systems, and more particularly to wireless communication systems between user equipments (UEs) for clustering and peer-to-peer federated learning.

[0002] introduction

[0003] Wireless communication systems are widely deployed to provide a variety of telecommunication services, such as telephony, video, data, messaging, and broadcast. Typical wireless communication systems may employ multiple access technologies capable of supporting communication with multiple users by sharing available system resources. Examples of such multiple access technologies include code division multiple access (CDMA) systems, time division multiple access (TDMA) systems, frequency division multiple access (FDMA) systems, orthogonal frequency division multiple access (OFDMA) systems, single carrier frequency division multiple access (SC-FDMA) systems, and time division synchronous code division multiple access (TD-SCDMA) systems.

[0004] These multiple access technologies have been adopted in various telecommunication standards to provide a common protocol that enables different wireless devices to communicate at city, national, regional, and even global levels. An example telecommunication standard is 5G New Radio (NR). 5G NR is part of the continued mobile broadband evolution promulgated by the Third Generation Partnership Project (3GPP) to meet new requirements associated with latency, reliability, security, scalability (e.g., with the Internet of Things (IoT)) and other requirements. 5G NR includes services associated with enhanced mobile broadband (eMBB), massive machine type communications (mMTC), and ultra-reliable low latency communications (URLLC). Certain aspects of 5G NR may be based on the 4G Long Term Evolution (LTE) standard. Further improvements to 5G NR technology are needed. In addition, these improvements may also be applicable to other multiple access technologies and telecommunication standards that employ these technologies.

[0005] For example, some aspects of wireless communication include direct communication between devices, such as device-to-device (D2D), vehicle-to-everything (V2X), etc. There is a need to further improve such direct communication between devices. Improvements related to direct communication between devices may also be applicable to other multiple access technologies and telecommunication standards that employ these technologies. Summary of the invention

[0006] The following presents a simplified summary of one or more aspects in order to provide a basic understanding of these aspects. This summary is not an extensive overview of all contemplated aspects, and is neither intended to identify key or important elements of all aspects, nor to describe the scope of any or all aspects. Its sole purpose is to present some concepts of one or more aspects in a simplified form as a prelude to a more detailed description presented later.

[0007] In one aspect of the present disclosure, a method, a computer-readable medium, and an apparatus are provided. The apparatus may be a UE. The apparatus includes a processor and a memory coupled to the processor. The processor is configured to provide a first message including first federated learning (FL) information of the apparatus to a network node to obtain a second message including second FL information of the network node; and provide a machine learning (ML) model information update to the network node based on the first FL information and the second FL information.

[0008] To achieve the foregoing and related ends, one or more aspects include the features fully described below and particularly pointed out in the claims. The following description and the accompanying drawings set forth in detail some illustrative features of one or more aspects. However, these features are merely indicative of some of the various ways in which the principles of the various aspects may be employed, and this specification is intended to include all such aspects and their equivalents. BRIEF DESCRIPTION OF THE DRAWINGS

[0009] Figure 1 is a diagram illustrating an example of a wireless communication system and an access network.

[0010] Figure 2A is a diagram illustrating an example of a first frame according to various aspects of the present disclosure.

[0011] Figure 2B is a diagram illustrating an example of DL channels within a subframe according to various aspects of the present disclosure.

[0012] Figure 2C is a diagram illustrating an example of a second frame according to various aspects of the present disclosure.

[0013] Figure 2D is a diagram illustrating an example of UL channels within a subframe according to various aspects of the present disclosure.

[0014] Figure 3 Example aspects of a sidelink timeslot structure are illustrated.

[0015] Figure 4 is a diagram illustrating an example of a first device and a second device involved in wireless communication based on, for example, sidelink communication.

[0016] Figure 5 is a conceptual diagram of an example open radio access network architecture.

[0017] Figure 6 is a diagram illustrating an example of a neural network.

[0018] Figure 7 is a diagram illustrating an example of the FL architecture.

[0019] Fig. 8A and Figure 8B is a diagram illustrating examples of FL architecture in different applications.

[0020] Fig. 9 is a diagram illustrating an example of a clustered FL architecture.

[0021] Fig.10 is a diagram illustrating an example of a peer-to-peer FL architecture.

[0022] Fig.11 is a diagram illustrating an example of a signaling procedure for neighbor discovery.

[0023] Fig.12 is a diagram illustrating an example of another signaling procedure for neighbor discovery.

[0024] Fig.13 is a diagram illustrating an example of a node state machine during a cluster formation or leader election process.

[0025] Fig.14 is a diagram illustrating an example of a signaling procedure for simultaneous discovery and cluster formation.

[0026] Fig.15 is a diagram illustrating an example of a signaling process for an intra-cluster FL or a peer FL after a leader node is elected or designated.

[0027] Fig.16 is a diagram illustrating an example of a signaling procedure for inter-cluster FL after one or more iterations of intra-cluster FL.

[0028] Fig.17 is a diagram illustrating an example of a signaling process for synchronizing peer FLs without designating or electing a leader node.

[0029] Fig.18 is a diagram illustrating an example of a signaling process for an asynchronous peer FL without designating or electing a leader node.

[0030] 19A to 19D is a flow chart of a method of wireless communication.

[0031] Fig. 20 is a diagram illustrating an example of a hardware implementation for an example apparatus. DETAILED DESCRIPTION

[0032] The specific embodiments described below in conjunction with the accompanying drawings are intended as descriptions of various configurations and are not intended to represent the only configurations with which the concepts described herein can be practiced. In order to provide a thorough understanding of the various concepts, the specific embodiments include specific details. However, it is apparent to those skilled in the art that these concepts can be practiced without these specific details. In some instances, well-known structures and components are shown in block diagram form to avoid blurring these concepts.

[0033] Federated learning (FL) refers to a distributed machine learning technique in which multiple decentralized nodes storing local data samples can train a global machine learning (ML) model (e.g., a classifier, a navigation system recommendation system, a digital assistant, a diagnostic system, or other models applied by multiple network nodes) without exchanging the data samples themselves between the nodes to perform the training. The FL framework includes multiple network nodes or entities, namely a centralized aggregation server and participating FL devices (i.e., participants or nodes such as UEs). In one aspect or specific implementation, the FL framework enables FL devices to learn a global ML model by allowing messages to be passed between devices through a central aggregation server or coordinator (also referred to as a FL parameter server throughout this disclosure), which can be configured to communicate with various FL devices and coordinate the learning framework. Nodes in the FL environment can process their own data sets and perform local updates to the global ML model, and the central server can aggregate the local updates and provide the updated global ML model to the nodes for further training or prediction.

[0034] However, conventional FL architectures rely on a centralized server to create, aggregate, and refine global ML models for participating nodes, and therefore require that updates based on locally trained ML models be sent from participating nodes to the server during FL iterations. This centralized approach to FL may have various disadvantages or limitations. In one example, since the centralized server is the only aggregator of participating nodes, the centralized server may act as a single point of failure for the FL system. Therefore, if the centralized server stops operating at any time, a bottleneck may occur in the entire FL process. In another example, since participants transmit their local model updates to the centralized server, significant communication overhead may occur in applications that apply a large number of updates. In another example, statistical challenges in model training may arise due to the heterogeneity of computing resources present for different participants, the heterogeneity of training data available for participants, and the heterogeneity of training tasks and associated models configured for different participants. In another example, even if the raw data is not communicated directly between nodes in FL, security and privacy issues may still be caused by the exchange of ML model parameters (e.g., due to the leakage of information about the underlying data samples).

[0035] To address these limitations associated with conventional FL architectures, a clustering or hierarchical approach may be applied to FL, where learning nodes working toward a common learning task are grouped together into clusters. In one example, UEs may be grouped together to form a cluster and a cluster leader (e.g., other UEs) may be designated. The designated cluster leader of the cluster, rather than the FL parameter server, directly coordinates learning tasks, including local ML model training and updates within the cluster. This coordination is referred to as intra-cluster FL. After the cluster is formed, a centralized FL parameter server may coordinate learning tasks, including global ML model training and updates between clusters. This coordination is referred to as inter-cluster FL. Thus, the cluster leader may act as an intermediary between the learning nodes and the FL parameter server for coordinating neural network training and optimization between different clusters. Therefore, clustered FL may be used to implement neural network training in a distributed manner with minimal bottlenecks, minimal communication overhead, minimal challenges to model training due to heterogeneity of computing resources, training data, training tasks, or associated ML models, and minimal security and privacy challenges that may arise in conventional FL.

[0036] A peer-to-peer FL architecture can also be used to minimize the aforementioned limitations present in conventional FL. In a peer-to-peer approach, collaborative ML model training between participating nodes can be provided without the need for a designated and centralized server for coordinating training. Instead, participating nodes communicate directly with other participating nodes to coordinate and schedule neural network training, individual model updates, and aggregation of individually updated models. Therefore, neural network training can be similarly implemented in a distributed manner using peer-to-peer FL with minimal bottlenecks, minimal communication overhead, minimal challenges to model training due to heterogeneity of computing resources, training data, training tasks, or associated ML models, and minimal security and privacy challenges that may arise in conventional FL.

[0037] Several aspects of telecommunication systems will now be presented with reference to various apparatus and methods. These apparatus and methods will be described in the following detailed description and illustrated in the accompanying drawings by various blocks, components, circuits, processes, algorithms, etc. (collectively referred to as "elements"). These elements may be implemented using electronic hardware, computer software, or any combination thereof. Whether these elements are implemented as hardware or software depends on the specific application and the design constraints imposed on the overall system.

[0038] As an example, an element, or any part of an element, or any combination of elements can be implemented as a "processing system", which includes one or more processors. The example of a processor includes a microprocessor, a microcontroller, a graphics processing unit (GPU), a central processing unit (CPU), an application processor, a digital signal processor (DSP), a reduced instruction set computing (RISC) processor, a system on a chip (SoC), a baseband processor, a field programmable gate array (FPGA), a programmable logic device (PLD), a state machine, a gate logic component, a discrete hardware circuit and other suitable hardware configured to perform various functionalities described throughout the present disclosure. One or more processors in a processing system can execute software. Whether it is referred to as software, firmware, middleware, microcode, hardware description language or other names, software should be widely interpreted as meaning instructions, instruction sets, codes, code segments, program codes, programs, subroutines, software components, applications, software applications, software packages, routines, subroutines, objects, executable files, threads of execution, processes, functions, etc.

[0039] Therefore, in one or more example embodiments, the described functions can be implemented with hardware, software or any combination thereof. If implemented with software, the functions can be stored or encoded on a computer-readable medium as one or more instructions or codes. Computer-readable media include computer storage media. Storage media can be any available medium that can be accessed by a computer. By way of example and not limitation, such computer-readable media can include random access memory (RAM), read-only memory (ROM), electrically erasable programmable ROM (EEPROM), optical disk storage device, magnetic disk storage device, other magnetic storage devices, a combination of computer-readable media of the above type, or any other medium that can be used to store computer executable code in the form of instructions or data structures that can be accessed by a computer.

[0040] Figure 1 1 is a diagram illustrating an example of a wireless communication system and access network 100. The wireless communication system (also referred to as a wireless wide area network (WWAN)) includes a base station (BS) 102, a user equipment (UE) 104, an evolved packet core (EPC) 160, and another core network 190 (e.g., a 5G core (5GC)). The base station 102 may include a macro cell (a high-power cellular base station) and / or a small cell (a low-power cellular base station). A macro cell includes a base station. A small cell includes a femto cell, a pico cell, and a micro cell.

[0041] The base station 102 configured for 4G Long Term Evolution (LTE) (collectively referred to as Evolved Universal Mobile Telecommunications System (UMTS) Terrestrial Radio Access Network (E-UTRAN)) can interface with the EPC 160 via a first backhaul link 132 (e.g., an S1 interface). The base station 102 configured for 5G New Radio (NR) (collectively referred to as Next Generation RAN (NG-RAN)) can interface with the core network 190 via a second backhaul link 184. Among other functions, the base station 102 can also perform one or more of the following functions: delivery of user data, radio channel encryption and decryption, integrity protection, header compression, mobility control functions (e.g., handover, dual connectivity), inter-cell interference coordination, connection establishment and release, load balancing, distribution of non-access stratum (NAS) messages, NAS node selection, synchronization, radio access network (RAN) sharing, multimedia broadcast multicast service (MBMS), subscriber and equipment tracking, RAN information management (RIM), paging, positioning, and delivery of warning messages. The base stations 102 may communicate with each other directly or indirectly (eg, via the EPC 160 or the core network 190) via the third backhaul link 134 (eg, an X2 interface). The first backhaul link 132, the second backhaul link 184, and the third backhaul link 134 may be wired or wireless.

[0042] Base station 102 can communicate wirelessly with UE 104. Each of base stations 102 can provide communication coverage for a corresponding geographic coverage area 110. There may be overlapping geographic coverage areas 110. For example, a small cell 102' can have a coverage area 110' that overlaps with the coverage area 110 of one or more macro base stations 102. A network including both small cells and macro cells can be referred to as a heterogeneous network. A heterogeneous network can also include a home evolved Node B (eNB) (HeNB), which can provide services to a restricted group called a closed subscriber group (CSG). The communication link 120 between base station 102 and UE 104 can include an uplink (UL) (also called a reverse link) transmission from UE 104 to base station 102 and / or a downlink (DL) (also called a forward link) transmission from base station 102 to UE 104. The communication link 120 can use multiple input multiple output (MIMO) antenna technology, including spatial multiplexing, beamforming and / or transmit diversity. The communication link can be through one or more carriers. For each carrier allocated in the carrier aggregation for up to a total of up to Yx MHz (x component carriers) for transmission in each direction, the base station 102 / UE 104 can use a spectrum of up to Y megahertz (MHz) (e.g., 5 MHz, 10 MHz, 15 MHz, 20 MHz, 100 MHz, 400 MHz, etc.) bandwidth. The carriers may or may not be adjacent to each other. The allocation of carriers may be asymmetric with respect to DL and UL (e.g., more or fewer carriers may be allocated for DL ​​compared to UL). The component carriers may include a primary component carrier and one or more secondary component carriers. The primary component carrier may be referred to as a primary cell (PCell) and the secondary component carrier may be referred to as a secondary cell (SCell).

[0043] UE 104 can communicate with each other using device-to-device (D2D) communication link 158. D2D communication link 158 can use DL / UL WWAN spectrum. D2D communication link 158 can use one or more side link channels, such as physical side link broadcast channel (PSBCH), physical side link discovery channel (PSDCH), physical side link shared channel (PSSCH) and physical side link control channel (PSCCH). D2D communication can be through various wireless D2D communication systems, such as, for example, WiMedia, Bluetooth, ZigBee, Wi-Fi based on Institute of Electrical and Electronics Engineers (IEEE) 802.11 standard, LTE or NR.

[0044] The wireless communication system may also include a Wi-Fi access point (AP) 150 that communicates with a Wi-Fi station (STA) 152 via a communication link 154 in, for example, a 5 gigahertz (GHz) unlicensed spectrum. When communicating in the unlicensed spectrum, the STA 152 / AP 150 may perform a clear channel assessment (CCA) to determine whether a channel is available prior to communication.

[0045] The small cell 102' may operate in licensed and / or unlicensed spectrum. When operating in an unlicensed spectrum, the small cell 102' may employ NR and use the same unlicensed spectrum (e.g., 5 GHz, etc.) as used by the Wi-Fi AP 150. The small cell 102' employing NR in the unlicensed spectrum may improve the coverage of the access network and / or increase the capacity of the access network.

[0046] The electromagnetic spectrum is typically subdivided into various categories, bands, channels, etc. based on frequency / wavelength. In 5G NR, two initial operating bands have been identified as frequency range designations FR1 (410 MHz-7.125 GHz) and FR2 (24.25 GHz-52.6 GHz). Frequencies between FR1 and FR2 are typically referred to as mid-band frequencies. Although a portion of FR1 is greater than 6 GHz, FR1 is typically (interchangeably) referred to as the "sub-6 GHz" band in various documents and articles. A similar naming issue sometimes occurs with respect to FR2, which is typically (interchangeably) referred to as the "millimeter wave" band in documents and articles, although different from the extremely high frequency (EHF) band (30 GHz-300 GHz) identified as the "millimeter wave" band by the International Telecommunication Union (ITU).

[0047] In view of the above aspects, unless otherwise specifically stated, it should be understood that if the term "below 6 GHz" or the like is used herein, it can be broadly referred to as a frequency that can be less than 6 GHz, can be within FR1, or can include mid-band frequencies. In addition, unless otherwise specifically stated, it should be understood that if the term "millimeter wave" or the like is used herein, it can be broadly referred to as a frequency that can include mid-band frequencies, can be within FR2, or can be within the EHF band.

[0048] The base station 102, whether a small cell 102' or a large cell (e.g., a macro base station), may include and / or be referred to as an eNB, a gNodeB (gNB), or another type of base station. Some base stations, such as gNB 180, may operate in the traditional sub-6 GHz spectrum, in millimeter wave frequencies, and / or near millimeter wave frequencies to communicate with the UE 104. When the gNB 180 operates in millimeter wave or near millimeter wave frequencies, the gNB 180 may be referred to as a millimeter wave base station. The millimeter wave base station 180 may utilize beamforming 182 with the UE 104 to compensate for path loss and short range. The base station 180 and the UE 104 may each include multiple antennas, such as antenna elements, antenna panels, and / or antenna arrays, to facilitate beamforming.

[0049] The base station 180 may transmit beamformed signals to the UE 104 in one or more transmit directions 182'. UE 104 may receive beamformed signals from base station 180 in one or more receive directions 182″. UE 104 may also send beamformed signals to base station 180 in one or more transmit directions. Base station 180 may receive beamformed signals from UE 104 in one or more receive directions. Base station 180 / UE 104 may perform beam training to determine the best receive direction and transmit direction for each of base station 180 / UE 104. The transmit direction and receive direction of base station 180 may or may not be the same. The transmit direction and receive direction of UE 104 may or may not be the same. Although the beamformed signals are shown as being between UE 104 and base station 102 / 180, UE 104 or RSU 107 may also similarly apply aspects of beamforming to communicate with another UE 104 or RSU 107 (such as based on V2X, V2V, or D2D communication).

[0050] The EPC 160 may include a mobility management entity (MME) 162, other MMEs 164, a serving gateway 166, an MBMS gateway 168, a broadcast multicast service center (BM-SC) 170, and a packet data network (PDN) gateway 172. The MME 162 may communicate with a home subscriber server (HSS) 174. The MME 162 is a control node that handles signaling between the UE 104 and the EPC 160. Typically, the MME 162 provides bearer and connection management. All user Internet Protocol (IP) packets are delivered through the serving gateway 166, which itself is connected to the PDN gateway 172. The PDN gateway 172 provides UE IP address allocation and other functions. The PDN gateway 172 and the BM-SC 170 are connected to IP services 176. The IP services 176 may include the Internet, an intranet, an IP multimedia subsystem (IMS), a PS streaming service, and / or other IP services. The BM-SC 170 may provide functions for MBMS user service configuration and delivery. BM-SC 170 may serve as an entry point for content provider MBMS delivery, may be used to authorize and initiate MBMS bearer services in a public land mobile network (PLMN), and may be used to schedule MBMS delivery. MBMS gateway 168 may be used to distribute MBMS services to base stations 102 belonging to a multicast broadcast single frequency network (MBSFN) area of ​​a broadcast specific service, and may be responsible for session management (start / stop) and for collecting eMBMS related billing information.

[0051] The core network 190 may include an access and mobility management function (AMF) 192, other AMFs 193, a session management function (SMF) 194, and a user plane function (UPF) 195. The AMF 192 may communicate with a unified data management (UDM) 196. The AMF 192 is a control node that handles signaling between the UE 104 and the core network 190. Typically, the AMF 192 provides quality of service (QoS) flows and session management. All user IP packets are delivered through the UPF 195. The UPF 195 provides UE IP address allocation and other functions. The UPF 195 is connected to an IP service 197. The IP service 197 may include the Internet, an intranet, an IMS, a packet switching (PS) streaming media service, and / or other IP services.

[0052] Base stations may include and / or be referred to as gNBs, Node Bs, eNBs, access points, base transceivers, radio base stations, radio transceivers, transceiver functions, basic service sets (BSSs), extended service sets (ESSs), transmit receive points (TRPs), or some other suitable terminology. Base stations 102 provide access points to EPC 160 or core network 190 for UEs 104. Examples of UEs 104 include cellular phones, smart phones, session initiation protocol (SIP) phones, laptops, personal digital assistants (PDAs), satellite radios, global positioning systems, multimedia devices, video devices, digital audio players (e.g., MP3 players), cameras, game consoles, tablets, smart devices, wearable devices, vehicles, electric meters, gas pumps, large or small kitchen appliances, healthcare devices, implants, sensors / actuators, displays, or any other similarly functional devices. Some of the UEs 104 may be referred to as IoT devices (e.g., parking meters, gas pumps, toasters, vehicles, heart monitors, etc.). UE 104 may also be referred to as a station, a mobile station, a subscriber station, a mobile unit, a subscriber unit, a wireless unit, a remote unit, a mobile device, a wireless device, a wireless communication device, a remote device, a mobile subscriber station, an access terminal, a mobile terminal, a wireless terminal, a remote terminal, a handset, a user agent, a mobile client, a client, or some other suitable terminology.

[0053] The deployment of a communication system (such as a 5G NR system) can be arranged in a variety of ways using various components or constituent parts. In a 5G NR system or network, a network node, a network entity, a mobility element of a network, a RAN node, a core network node, a network element, or a network equipment (such as a BS, or one or more units (or one or more components) performing base station functionality) can be implemented in an aggregated or decomposed architecture. For example, a BS (such as a Node B (NB), an eNB, an NR BS, a 5G NB, an access point (AP), a TRP, or a cell, etc.) can be implemented as an aggregated base station (also called an independent BS or a monolithic BS) or a decomposed base station.

[0054] The aggregated base station may be configured to utilize a radio protocol stack physically or logically integrated within a single RAN node. The decomposed base station 181 may be configured to utilize a protocol stack physically or logically distributed between two or more units, such as one or more central units (CUs), one or more distributed units (DUs), or one or more radio units (RUs). In some aspects, the CU 183 may be implemented within a RAN node, and one or more DUs 185 may be co-located with the CU, or alternatively, may be geographically or virtually distributed in one or more other RAN nodes. The DU may be implemented to communicate with one or more RUs 187. Each of the CU, DU, and RU may also be implemented as a virtual unit, i.e., a virtual central unit (VCU), a virtual distributed unit (VDU), or a virtual radio unit (VRU).

[0055] Base station type operations or network designs may take into account the aggregated nature of base station functionality. For example, a disaggregated base station may be utilized in an integrated access backhaul (IAB) network, an open radio access network (O-RAN (network configurations such as those initiated by the O-RAN Alliance)), or a virtualized radio access network (vRAN, also known as a cloud radio access network (C-RAN)). Decomposition may include distributing functionality across two or more units at various physical locations, as well as virtually distributing functionality of at least one unit, which may enable flexibility in network design. Individual units of a disaggregated base station or disaggregated RAN architecture may be configured for wired or wireless communication with at least one other unit.

[0056] Some wireless communication networks may include vehicle-based communication devices that may communicate from vehicle-to-vehicle (V2V), vehicle-to-infrastructure (V2I) (e.g., from a vehicle-based communication device to a road infrastructure node, such as a roadside unit (RSU)), vehicle-to-network (V2N) (e.g., from a vehicle-based communication device to one or more network nodes, such as a base station), and / or a combination thereof and / or communicate with other devices, which communications may be collectively referred to as vehicle-to-everything (V2X) communications. Again, referring to Figure 1 In some aspects, a UE 104 (e.g., a transmitting vehicle user equipment (VUE) or other UE) may be configured to send a message directly to another UE 104. The communication may be based on V2V / V2X / V2I or other D2D communications, such as proximity services (ProSe), etc. Communications based on V2V, V2X, V2I and / or D2D may also be sent and received by other transmitting and receiving devices (such as a roadside unit (RSU) 107, etc.). Aspects of the communication may be based on PC5 or sidelink communications, for example, as combined with Figure 3 as described in the examples.

[0057] See again Figure 1 , the UE 104 may include a federated learning component 198. The federated learning component 198 is configured to provide a first message including first FL information of the UE to a network node (e.g., another UE 104); obtain a second message including second FL information of the network node; and provide ML model information updates to the network node based on the first FL information and the second FL information. The UE 104 including the federated learning component 198 may be a transmitting device in a sidelink communication, such as a VUE, an IoT device, or another UE, or a receiving device in a sidelink communication, such as another VUE, another IoT device, or another UE.

[0058] The concepts and various aspects described herein may be applicable to vehicle-to-everything (V2X) or other similar fields, such as D2D communication, IoT communication, industrial IoT (IIoT) communication, and / or other standards / protocols for communication in wireless / access networks. Additionally or alternatively, the concepts and various aspects described herein may be applicable to vehicle-to-pedestrian (V2P) communication, pedestrian-to-vehicle (P2V) communication, vehicle-to-infrastructure (V2I) communication, and / or other frameworks / models for communication in wireless / access networks. In addition, the concepts and various aspects described herein may be applicable to NR or other similar fields, such as LTE, Advanced LTE (LTE-A), Code Division Multiple Access (CDMA), Global System for Mobile Communications (GSM), or other wireless / radio access technologies. In addition, the concepts and various aspects described herein may be applicable to use in aggregated or decomposed base station architectures such as open radio access network (O-RAN) architectures.

[0059] Figure 2A FIG200 is a diagram illustrating an example of a first subframe within a 5G NR frame structure. Figure 2B FIG230 is a diagram illustrating an example of DL channels within a 5G NR subframe. Figure 2C FIG250 is a diagram illustrating an example of a second subframe within a 5G NR frame structure. Figure 2D FIG280 is a diagram illustrating an example of an UL channel within a 5G NR subframe. The 5G NR frame structure may be frequency division duplex (FDD) (wherein for a particular set of subcarriers (carrier system bandwidth), a subframe within the subcarrier set is dedicated to either DL or UL), or may be time division duplex (TDD) (wherein for a particular set of subcarriers (carrier system bandwidth), a subframe within the subcarrier set is dedicated to both DL and UL). Figure 2A , Figure 2CIn the example provided, the 5G NR frame structure is assumed to be TDD, where subframe 4 is configured with slot format 28 (most of which are DL), where D is DL, U is UL, and F is flexible between DL / UL, and subframe 3 is configured with slot format 34 (most of which are UL). Although subframes 3 and 4 are shown as having slot formats 34 and 28, respectively, any particular subframe may be configured with any of the various available slot formats 0 to 61. Slot formats 0 and 1 are both DL and both UL, respectively. Other slot formats 2-61 include a mix of DL, UL, and flexible symbols. The slot format is configured for the UE via a received slot format indicator (SFI) (dynamically configured via DL control information (DCI) or semi-statically / statically configured via radio resource control (RRC) signaling). Note that the following description also applies to the 5G NR frame structure as TDD.

[0060] Other wireless communication technologies may have different frame structures and / or different channels. For example, a 10 millisecond (ms) frame may be divided into 10 equally sized subframes (1 ms). Each subframe may include one or more time slots. A subframe may also include a microslot, which may include 7, 4, or 2 symbols. Each time slot may include 7 or 14 symbols, depending on the time slot configuration. For time slot configuration 0, each time slot may include 14 symbols, and for time slot configuration 1, each time slot may include 7 symbols. The symbol on the DL may be a cyclic prefix (CP) orthogonal frequency division multiplexing (OFDM) (CP-OFDM) symbol. The symbol on the UL may be a CP-OFDM symbol (for high throughput scenarios) or a discrete Fourier transform (DFT) spread OFDM (DFT-s-OFDM) symbol (also known as a single carrier frequency division multiple access (SC-FDMA) symbol) (for power-limited scenarios; limited to single-stream transmission). The number of time slots in a subframe is based on the time slot configuration and parameter set (numerology). For slot configuration 0, different parameter sets μ0 to 4 allow 1, 2, 4, 8, and 16 slots per subframe, respectively. For slot configuration 1, different parameter sets 0 to 2 allow 2, 4, and 8 slots per subframe, respectively. Accordingly, for slot configuration 0 and parameter set μ, there are 14 symbols per slot and 2 per subframe. μ time slots. The subcarrier spacing and symbol length / duration are functions of the parameter set. The subcarrier spacing can be equal to 2 μ *15 kilohertz (kHz), where μ is parameter set 0 to 4. Therefore, the subcarrier spacing for parameter set μ=0 is 15 kHz, and the subcarrier spacing for parameter set μ=4 is 240 kHz. The symbol length / duration is inversely related to the subcarrier spacing. FIG. 2A to FIG. 2DAn example is provided for slot configuration 0 with 14 symbols per slot and parameter set μ=2 with 4 slots per subframe. The slot duration is 0.25 ms, the subcarrier spacing is 60 kHz, and the symbol duration is approximately 16.67 μs. Within a frame set, there may be one or more different bandwidth parts (BWPs) that are frequency-division multiplexed (see Figure 2B ). Each BWP can have a specific set of parameters.

[0061] A resource grid may be used to represent a frame structure. Each slot includes a resource block (RB) (also referred to as a physical RB (PRB)) extending over 12 consecutive subcarriers. The resource grid is divided into a plurality of resource elements (REs). The number of bits carried by each RE depends on the modulation scheme.

[0062] like Figure 2A As illustrated, some of the REs carry reference (pilot) signals (RS) for the UE. The RS may include a demodulation RS (DM-RS) for channel estimation at the UE (indicated as R for a particular configuration). x , where 100x is the port number, but other DM-RS configurations are possible) and a channel state information reference signal (CSI-RS). RS may also include a beam measurement RS (BRS), a beam refinement RS (BRRS), and a phase tracking RS (PT-RS).

[0063] Figure 2BExamples of various DL channels within a subframe of a frame are illustrated. The physical downlink control channel (PDCCH) carries DCI within one or more control channel elements (CCEs), each CCE including nine RE groups (REGs), each REG including four consecutive REs in an OFDM symbol. The PDCCH within a BWP may be referred to as a control resource set (CORESET). Additional BWPs may be located at higher and / or lower frequencies on the channel bandwidth. The primary synchronization signal (PSS) may be within symbol 2 of a specific subframe of a frame. The PSS is used by UE 104 to determine subframe / symbol timing and physical layer identification. The secondary synchronization signal (SSS) may be within symbol 4 of a specific subframe of a frame. The SSS is used by the UE to determine the physical layer cell identification group number and radio frame timing. Based on the physical layer identification and the physical layer cell identification group number, the UE may determine the physical cell identifier (PCI). Based on the PCI, the UE may determine the position of the aforementioned DM-RS. The physical broadcast channel (PBCH) carrying the master information block (MIB) can be logically grouped with the PSS and SSS to form a synchronization signal (SS) / PBCH block (also referred to as an SS block (SSB)). The MIB provides the system bandwidth and the number of RBs in the system frame number (SFN). The physical downlink shared channel (PDSCH) carries user data, broadcast system information not sent over the PBCH such as the system information block (SIB), and paging messages.

[0064] like Figure 2C As illustrated, some of the REs carry DM-RS (indicated as R for a particular configuration, but other DM-RS configurations are possible) for channel estimation at the base station. The UE may send a DM-RS for a physical uplink control channel (PUCCH) and a DM-RS for a physical uplink shared channel (PUSCH). The PUSCH DM-RS may be sent in the first or first two symbols of the PUSCH. Depending on whether a short PUCCH or a long PUCCH is sent and depending on the specific PUCCH format used, the PUCCH DM-RS may be sent in different configurations. The UE may send a sounding reference signal (SRS). The SRS may be sent in the last symbol of a subframe. The SRS may have a comb structure, and the UE may send the SRS on one of the teeth of the comb. The SRS may be used by the base station for channel quality estimation to achieve frequency-dependent scheduling of the UL.

[0065] Figure 2DExamples of various UL channels within a subframe of a frame are illustrated. The PUCCH may be located at a position as indicated in one configuration. The PUCCH carries uplink control information (UCI), such as scheduling requests, channel quality indicator (CQI), precoding matrix indicator (PMI), rank indicator (RI), and hybrid automatic repeat request (HARQ) acknowledgement (ACK) / negative acknowledgement (NACK) feedback. The PUSCH carries data and may additionally be used to carry a buffer status report (BSR), a power headroom report (PHR), and / or UCI.

[0066] Figure 3 Example diagrams 300 and 310 are illustrated, which illustrate example time slot structures that can be used for wireless communication (e.g., for sidelink communication) between UE 104 and UE 104'. The time slot structure can be within a 5G / NR frame structure. Although the following description may focus on 5G NR, the concepts described herein may be applicable to other similar fields, such as LTE, LTE-A, CDMA, GSM, and other wireless technologies. This is just an example, and other wireless communication technologies may have different frame structures and / or different channels. A frame (10ms) can be divided into 10 subframes (1ms) of the same size. Each subframe may include one or more time slots. A subframe may also include a microslot, which may include, for example, 7, 4, or 2 symbols. Each time slot may include 7 or 14 symbols, depending on the time slot configuration. For time slot configuration 0, each time slot may include 14 symbols, and for time slot configuration 1, each time slot may include 7 symbols. Diagram 300 illustrates a single time slot transmission, which may correspond to a 0.5 ms transmission time interval (TTI), for example. Diagram 310 illustrates an example double time slot aggregation, for example, an aggregation of two 0.5 ms TTIs. Diagram 300 illustrates a single RB, while diagram 310 illustrates N RBs. In diagram 310, the 10 RBs used for control are only an example. The number of RBs may be different.

[0067] A resource grid may be used to represent the frame structure. Each time slot may include a resource block (RB) (also called a physical RB (PRB)) extending over 12 consecutive subcarriers. The resource grid is divided into a number of resource elements (REs). The number of bits carried by each RE depends on the modulation scheme. Figure 3 As illustrated, some of the REs may include control information, eg, along with a demodulation RS (DMRS). Figure 3 It is also illustrated that the symbol may include CSI-RS. Figure 3The symbol indicated for DMRS or CSI-RS in indicates that the symbol includes DMRS or CSI-RS RE. Such symbols may also include REs containing data. For example, if the number of ports of DMRS or CSI-RS is 1 and the comb-2 pattern is used for DMRS / CSI-RS, half of the REs may include the RS, and the other half of the REs may include data. CSI-RS resources may start at any symbol in the time slot and may occupy 1, 2, or 4 symbols, depending on the number of configured ports. CSI-RS may be periodic, semi-persistent, or aperiodic (e.g., based on DCI triggering). For time / frequency tracking, CSI-RS may be periodic or aperiodic. CSI-RS may be sent in bursts of two or four symbols spread across one or two time slots. Control information may include sidelink control information (SCI). As described herein, at least one symbol may be used for feedback. Symbols before and / or after feedback may be used for transitions between receiving data and sending feedback. Although symbol 12 is illustrated for data, the symbol may be a gap symbol to enable a transition to feedback in symbol 13. Another symbol (e.g., at the end of a time slot) may be used as a gap. The gap enables the device to switch from operating as a transmitting device to preparing to operate as a receiving device, e.g., in a subsequent time slot. As illustrated, data may be sent in the remaining REs. The data may include data messages as described herein. The location of any of the SCI, feedback, and LBT symbols may be different from Figure 3 The examples shown are different. Multiple time slots can be aggregated together. Figure 3 An example aggregation of two time slots is also illustrated. The aggregated number of time slots may also be greater than two. When time slots are aggregated, the symbols and / or slot symbols used for feedback may be different from the symbols and / or slot symbols used for feedback of a single time slot. Although feedback is not illustrated for this aggregation example, symbols in a multi-slot aggregation may also be allocated for feedback, as illustrated in the one time slot example.

[0068] Figure 4 4 is a block diagram of a first wireless communication device 410 communicating with a second wireless communication device 450, for example, via V2V / V2X / D2D communication or in an access network. The device 410 may include a transmitting device that communicates with a receiving device (e.g., device 450) via V2V / V2X / D2D communication. The communication may be based on a side link, for example. The transmitting device 410 may include a UE, a base station, an RSU, etc. The receiving device may include a UE, a base station, an RSU, etc.

[0069] The IP packets from EPC 160 may be provided to controller / processor 475. Controller / processor 475 implements layer 3 and layer 2 functionality. Layer 3 includes a radio resource control (RRC) layer, and layer 2 includes a service data adaptation protocol (SDAP) layer, a packet data convergence protocol (PDCP) layer, a radio link control (RLC) layer, and a medium access control (MAC) layer. The controller / processor 475 provides RRC layer functionality associated with broadcasting of system information (e.g., MIB, SIB), RRC connection control (e.g., RRC connection paging, RRC connection establishment, RRC connection modification, and RRC connection release), inter-radio access technology (RAT) mobility, and measurement configuration for UE measurement reporting; PDCP layer functionality associated with header compression / decompression, security (encryption, decryption, integrity protection, integrity verification), and handover support functions; RLC layer functionality associated with delivery of upper layer packet data units (PDUs), error correction through ARQ, concatenation, segmentation and reassembly of RLC service data units (SDUs), re-segmentation of RLC data PDUs, and reordering of RLC data PDUs; and MAC layer functionality associated with mapping between logical channels and transport channels, multiplexing of MAC SDUs onto transport blocks (TBs), demultiplexing of MAC SDUs from TBs, scheduling information reporting, error correction through HARQ, priority handling, and logical channel prioritization.

[0070] The transmit (TX) processor 416 and the receive (RX) processor 470 implement layer 1 functionality associated with various signal processing functions. Layer 1 (which includes the physical (PHY) layer) may include error detection on the transmission channel, forward error correction (FEC) decoding / decoding of the transmission channel, interleaving, rate matching, mapping to the physical channel, modulation / demodulation of the physical channel, and MIMO antenna processing. The TX processor 416 processes the mapping to the signal constellation based on various modulation schemes (e.g., binary phase shift keying (BPSK), quadrature phase shift keying (QPSK), M-order phase shift keying (M-PSK), M-order quadrature amplitude modulation (M-QAM)). The decoded and modulated symbols can then be divided into parallel streams. Subsequently, each stream can be mapped to an OFDM subcarrier, multiplexed with a reference signal (e.g., a pilot) in the time domain and / or frequency domain, and then combined using an inverse fast Fourier transform (IFFT) to generate a physical channel carrying a time domain OFDM symbol stream. The OFDM stream is spatially pre-decoded to generate multiple spatial streams. Channel estimates from channel estimator 474 can be used to determine the coding and modulation schemes, as well as for spatial processing. Channel estimates can be derived from reference signals and / or channel condition feedback sent by device 450. Each spatial stream can then be provided to a different antenna 420 via a separate transmitter 418TX. Each transmitter 418TX can modulate an RF carrier with a corresponding spatial stream for transmission.

[0071] At the device 450, each receiver 454RX receives a signal through its corresponding antenna 452. Each receiver 454RX recovers the information modulated onto the RF carrier and provides the information to a receive (RX) processor 456. The TX processor 468 and the RX processor 456 implement layer 1 functionality associated with various signal processing functions. The RX processor 456 can perform spatial processing on the information to recover any spatial stream destined for the device 450. If multiple spatial streams are destined for the device 450, the RX processor 456 can combine them into a single OFDM symbol stream. The RX processor 456 then converts the OFDM symbol stream from the time domain to the frequency domain using a fast Fourier transform (FFT). The frequency domain signal includes a separate OFDM symbol stream for each subcarrier of the OFDM signal. By determining the most likely signal constellation point sent by the device 410, the symbol on each subcarrier and the reference signal are recovered and demodulated. These soft decisions can be based on channel estimates calculated by the channel estimator 458. The soft decisions are then decoded and deinterleaved to recover the data and control signals originally sent on the physical channel by device 410. The data and control signals are then provided to controller / processor 459, which implements layer 3 and layer 2 functionality.

[0072] The controller / processor 459 may be associated with a memory 460 that stores program codes and data. The memory 460 may be referred to as a computer readable medium. The controller / processor 459 provides demultiplexing between transport channels and logical channels, packet reassembly, decryption, header decompression, and control signal processing to recover IP packets from the EPC 160. The controller / processor 459 is also responsible for error detection using ACK and / or NACK protocols to support HARQ operations.

[0073] Similar to the functionality described in conjunction with DL transmissions performed by device 410, the controller / processor 459 provides RRC layer functionality associated with system information (e.g., MIB, SIB) acquisition, RRC connection, and measurement reporting; PDCP layer functionality associated with header compression / decompression and security (encryption, decryption, integrity protection, integrity verification); RLC layer functionality associated with delivery of upper layer PDUs, error correction through ARQ, concatenation, segmentation and reassembly of RLC SDUs, resegmentation of RLC data PDUs, and reordering of RLC data PDUs; and MAC layer functionality associated with mapping between logical channels and transport channels, multiplexing of MAC SDUs onto TBs, demultiplexing of MAC SDUs from TBs, scheduling information reporting, error correction through HARQ, priority handling, and logical channel prioritization.

[0074] Channel estimates derived by the channel estimator 458 from a reference signal or feedback transmitted by the device 410 may be used by the TX processor 468 to select appropriate coding and modulation schemes, and to facilitate spatial processing. The spatial streams generated by the TX processor 468 may be provided to different antennas 452 via separate transmitters 454TX. Each transmitter 454TX may modulate an RF carrier with a corresponding spatial stream for transmission.

[0075] Transmissions are processed at device 410 in a manner similar to that described in conjunction with the receiver functionality at device 450. Each receiver 418RX receives a signal through its respective antenna 420. Each receiver 418RX recovers information modulated onto an RF carrier and provides the information to a RX processor 470.

[0076] The controller / processor 475 may be associated with a memory 476 that stores program codes and data. The memory 476 may be referred to as a computer readable medium. The controller / processor 475 provides demultiplexing between transport channels and logical channels, packet reassembly, decryption, header decompression, control signal processing to recover IP packets from the device 450. The IP packets from the controller / processor 475 may be provided to the EPC 160. The controller / processor 475 is also responsible for error detection using ACK and / or NACK protocols to support HARQ operations.

[0077] At least one of the TX processors 416, 468, the RX processors 456, 470, and the controller / processors 459, 475 may be configured to combine Figure 1 The federated learning component 198 of the controller / processor 459, 475 may perform various aspects. For example, the controller / processor 459, 475 may include a federated learning component 498 configured to provide a first message including first FL information of the UE to a network node (e.g., device 410, 450); obtain a second message including second FL information of the network node; and provide ML model information updates to the network node based on the first FL information and the second FL information.

[0078] In one example, the federated learning component 498 of the controller / processor 475 in the device 410 may provide a first message to the device 450 via the TX processor 416, which may send the first message to the device 450 via the antenna 420. The federated learning component 498 of the controller / processor 475 in the device 410 may obtain a second message from the device 450 via the RX processor 470, which may receive the second message from the device 450 via the antenna 420. The federated learning component 498 of the controller / processor 475 in the device 410 may provide an ML model information update to the device 450 via the TX processor 416, which may send the first message to the device 450 via the antenna 420.

[0079] In another example, the federated learning component 498 of the controller / processor 459 in the device 450 may provide a first message to the device 410 via the TX processor 468, which may send the first message to the device 410 via the antenna 452. The federated learning component 498 of the controller / processor 459 in the device 450 may obtain a second message from the device 410 via the RX processor 456, which may receive the second message from the device 410 via the antenna 452. The federated learning component 498 of the controller / processor 459 in the device 450 may provide an ML model information update to the device 410 via the TX processor 468, which may send the first message to the device 410 via the antenna 452.

[0080] Figure 5 1 shows a diagram illustrating an example decomposed base station 500 architecture. The decomposed base station 500 architecture may include one or more CUs 510 (e.g., Figure 1CU 183), the one or more CUs can communicate directly with the core network 520 via a backhaul link, or indirectly with the core network 520 through one or more decomposed base station units (such as a near real-time RIC 525 via an E2 link, or a non-real-time RIC 515 associated with a service management and orchestration (SMO) framework 505, or both). CU 510 can communicate with one or more DU 530 (e.g., Figure 1 DU 530 can communicate with one or more RU 540 (e.g., Figure 1 RU 187) for communication. RU 540 can communicate with UE 104 via one or more radio frequency (RF) access links. In some specific implementations, UE 104 can be served by multiple RU 540 simultaneously.

[0081] Each of the units (i.e., CU 510, DU 530, RU 540, and near-RT RIC 525, non-RT RIC 515, and SMO framework 505) may include or be coupled to one or more interfaces configured to receive or send signals, data, or information (collectively referred to as signals) via a wired or wireless transmission medium. Each of the units or an associated processor or controller that provides instructions to the communication interface of these units may be configured to communicate with one or more of the other units via a transmission medium. For example, these units may include a wired interface configured to receive or send signals to one or more of the other units via a wired transmission medium. Additionally, these units may include a wireless interface that may include a receiver, a transmitter, or a transceiver (such as a radio frequency (RF) transceiver) that is configured to receive or send signals, or both, to one or more of the other units on a wireless transmission medium.

[0082] In some aspects, CU 510 may host higher-layer control functions. Such control functions may include radio resource control (RRC), packet data convergence protocol (PDCP), service data adaptation protocol (SDAP), etc. Each control function may be implemented using an interface that is configured to communicate signals with other control functions hosted by CU510. CU 510 may be configured to handle user plane functionality (i.e., central unit-user plane (CU-UP)), control plane functionality (i.e., central unit-control plane (CU-CP)), or a combination thereof. In some specific implementations, CU 510 may be logically split into one or more CU-UP units and one or more CU-CP units. When implemented in an O-RAN configuration, the CU-UP unit may communicate bidirectionally with the CU-CP unit via an interface (such as an E1 interface). As needed, CU 510 may be implemented to communicate with DU 530 for network control and signaling.

[0083] DU 530 may correspond to a logical unit that includes one or more base station functions for controlling the operation of one or more RU 540. In some aspects, DU 530 may host one or more of a radio link control (RLC) layer, a medium access control (MAC) layer, and one or more high physical (PHY) layers (such as modules for forward error correction (FEC) encoding and decoding, scrambling, modulation and demodulation, etc.) depending at least in part on functional divisions such as those defined by the 3rd Generation Partnership Project (3GPP). In some aspects, DU 530 may further host one or more low PHY layers. Each layer (or module) may be implemented using an interface that is configured to communicate signals with other layers (and modules) hosted by DU 530 or with control functions hosted by CU 510.

[0084] The lower layer functionality may be implemented by one or more RUs 540. In some deployments, the RU 540 controlled by the DU 530 may correspond to a logical node that hosts RF processing functions or low PHY layer functions (such as performing fast Fourier transform (FFT), inverse FFT (iFFT), digital beamforming, physical random access channel (PRACH) extraction and filtering, etc.), or both, based at least in part on functional splitting (such as lower layer functional splitting). In such an architecture, the RU 540 may be implemented to handle over-the-air (OTA) communications with one or more UEs 120. In some specific implementations, real-time and non-real-time aspects of control plane and user plane communications with the RU 540 may be controlled by the corresponding DU 530. In some scenarios, this configuration may enable the implementation of the DU 530 and the CU 510 in a cloud-based RAN architecture (such as a vRAN architecture).

[0085] The SMO framework 505 may be configured to support RAN deployment and provisioning of non-virtualized network elements and virtualized network elements. For non-virtualized network elements, the SMO framework 505 may be configured to support the deployment of dedicated physical resources for RAN coverage requirements, which may be managed via an operation and maintenance interface (such as an O1 interface). For virtualized network elements, the SMO framework 505 may be configured to interact with a cloud computing platform (such as an open cloud (O-Cloud) 590) to perform network element lifecycle management (such as to instantiate virtualized network elements) via a cloud computing platform interface (such as an O2 interface). Such virtualized network elements may include, but are not limited to, CU 510, DU 530, RU 540, and near-RT RIC 525. In some specific implementations, the SMO framework 505 may communicate with hardware aspects of the 4G RAN (such as an open eNB (O-eNB) 511) via the O1 interface. Additionally, in some specific implementations, the SMO framework 505 may communicate directly with one or more RUs 540 via the O1 interface. The SMO framework 505 may also include a non-RT RIC 515 configured to support the functionality of the SMO framework 505 .

[0086] The non-RT RIC 515 may be configured to include logic functions that enable non-real-time control and optimization of RAN elements and resources, artificial intelligence / machine learning (AI / ML) workflows including model training and updating, or policy-based guidance of applications / features in the near-RT RIC 525. The non-RT RIC 515 may be coupled to or communicate with the near-RT RIC 525 (such as via an A1 interface). The near-RT RIC 525 may be configured to include logic functions that enable near-real-time control and optimization of RAN elements and resources via data collection and actions through an interface (such as via an E2 interface) that connects one or more CUs 510, one or more DUs 530, or both, and the O-eNB with the near-RT RIC 525.

[0087] In some implementations, in order to generate an AI / ML model to be deployed in the near-RT RIC 525, the non-RT RIC 515 may receive parameters or external enrichment information from an external server. Such information may be utilized by the near-RT RIC 525 and may be received from a non-network data source or from a network function at the SMO framework 505 or the non-RT RIC 515. In some examples, the non-RT RIC 515 or the near-RT RIC 525 may be configured to tune RAN behavior or performance. For example, the non-RT RIC 515 may monitor long-term trends and patterns of performance and employ AI / ML models to perform corrective actions through the SMO framework 505 (such as via reconfiguration of O1) or via the creation of RAN management policies (such as A1 policies).

[0088] A UE 104 including a controller / processor 459, 475 of at least devices 410, 450, a base station 102 / 180 including an aggregated and decomposed base station 181, or other network nodes may be configured to perform AI / ML tasks using an artificial neural network (ANN). An ANN (or simply a neural network) is a computational learning system that uses a functional network to convert data input in one form into a desired output, typically in another form. Examples of ANNs include multilayer perceptrons (MLPs), convolutional neural networks (CNNs), deep neural networks (DNNs), deep convolutional networks (DCNs), and recurrent neural networks (RNNs), among other neural networks. Typically, an ANN includes a layered architecture in which the output of one layer of neurons is input to a second layer of neurons (via connections or synapses), the output of the second layer of neurons becomes the input of a third layer of neurons, and so on. These neural networks can be trained to recognize hierarchical structures of features, and are therefore increasingly used in object recognition applications. For example, a neural network can be used for supervised learning tasks such as classification (which combines ML models such as logistic regression, support vector machines, boosting or other classifiers) to perform object detection and provide bounding boxes for categories or classes in an image. In addition, backpropagation or gradient descent can be used to fine-tune these multi-layer architectures to produce more accurate predictions.

[0089] Figure 6An example of a neural network 600 (specifically, a CNN) is illustrated. The CNN may be designed to detect objects sensed from a camera 602 (such as an onboard camera) or other sensor. The neural network 600 may initially receive an input 604, such as an image, such as a speed limit sign (or other object or size) of size 32×32 pixels. During a forward pass, the input image is initially passed through a convolutional layer 606 including a plurality of convolutional kernels (e.g., six kernels of size 5×5 pixels or some other amount or size) that slide over the image to detect basic patterns or features, such as straight edges and corners. The images output from the convolutional layer 606 (e.g., six images of size 28×28 pixels or some other amount or size) are passed through an activation function (such as a rectified linear unit (ReLU)) and then passed as input into a subsampling layer 608, which scales down the size of the image, for example, by a factor of two (e.g., producing six images of size 14×14 pixels or some other amount or size). These scaled-down images output from the subsampling layer 608 may similarly be passed through an activation function (e.g., ReLU or other function) and similarly passed as input through subsequent convolutional layers, subsampling layers, and activation functions (not shown) to detect more complex features and further scale down the image or kernel size. These outputs are ultimately passed as input to a fully connected layer 610, where each node output from the previous layer is connected to all neurons in the current layer. The output from this layer may similarly be passed through an activation function and potentially as input through one or more other fully connected layers (not shown). Thereafter, the output is passed as input to an output layer 612, which converts the input into an output 614 such as a probability distribution (e.g., using a softmax function). The probability distribution may include a vector of confidence levels or probability estimates that the input image depicts a predicted feature (such as a sign or speed limit value (or other object)).

[0090] During training, ML models (e.g., classifiers) with weights 616 and biases 618 are initially created for different layers of the neural network 600, respectively. For example, when input from a training image (or other source) enters a given layer of an MLP or CNN, the function of the input and weights summed with the bias can be transformed using an activation function before being passed to the next layer. The probability estimates generated from the final output layer can then be applied to a loss function that measures the accuracy of the ANN, such as a cross entropy loss function. Initially, the output of the loss function may be quite large, indicating that the predicted value is far from the true or actual value. In order to reduce the value of the loss function and produce more accurate predictions, gradient descent can be applied.

[0091] In gradient descent, the gradient of the loss function may be calculated with respect to each weight of the ANN using back propagation, where the gradient is calculated for the last layer back to the first layer of the neural network 600. The gradient may then be used to update each weight to reduce the loss function with respect to that weight until a global minimization of the loss function is obtained, for example using stochastic gradient descent. For example, after each weight adjustment, subsequent iterations of the above training process may be performed using the same or new training images, and if the loss function is still large (even if it has been reduced), back propagation may be applied again to identify the gradient of the loss function with respect to each weight. The weights may be updated again, and the process may continue to be repeated until the difference between the predicted and actual values ​​is minimized.

[0092] A network node such as a UE or a base station can use federated learning (FL) to train a neural network (e.g., neural network 600). Compared to centralized machine learning techniques that typically upload all local data sets to one server, FL allows the generation of high-quality ML models without aggregating distributed data. Therefore, FL facilitates parallel processing, significantly reduces the costs associated with message exchange, and protects data privacy.

[0093] In the FL framework, nodes such as UEs can learn a global ML model by passing messages between nodes through a central coordinator. For example, nodes can provide weights, biases, gradients, or other ML information to each other (other nodes) through messages exchanged between nodes via a central coordinator (e.g., base station, RSU, edge server, etc.).

[0094] Each node in the FL environment uses a dataset to locally train and update a coordinated global ML model. The dataset can be a local dataset that a node or device can obtain for a certain ML task (e.g., object detection, etc.). The data in a given dataset can be preloaded or accumulated over the life of the device. For example, an accumulated dataset may include recorded data that a node observes from an onboard sensor such as a camera and stores locally at the device.

[0095] A global ML model can be defined by its model architecture and model weights. An example of a model architecture is a neural network, such as Figure 6 A CNN is described, which may include multiple hidden layers, multiple neurons in each layer, and synapses connecting these neurons together. Model weights are applied to data passed through the various layers of the ML model for processing by the various neurons.

[0096] Figure 7 An example 700 of the FL architecture is illustrated. The FL parameter server 702 initializes the global ML model 704 ( G ) (e.g., with random or default ML weights such as Figure 6t) and broadcasts the global ML model 704 to participating devices or learning nodes 706 (e.g., UEs). After receiving the global ML model at the learning node, the iterative process of FL can begin. For example, at a given iteration t, the global ML model 704 (W t G ), the learning node 706 (k nodes 706a, 706b, 706c, 706d) uses its local data set to locally train its corresponding model 708 (model 708a, 708b, 708c, 708d), which can be a preconfigured data set such as a training set and / or sensory data from the environment. After training, the learning node updates its corresponding k-th model W t k (e.g., local weights) until the kth loss function or cost function F for the model is achieved k (W t k ) is minimized or optimized. At this time, due to different update weights, the learning nodes may have different local models W t k .

[0097] Afterwards, the learning node 706 will update the model W corresponding to its local t k The corresponding information is sent to the FL parameter server 702. To reduce the transmission traffic, the corresponding information can be, for example, the modified weights, the weights that have changed beyond a threshold, or the multiplicative or additive increments or percentages of these weights. After receiving the corresponding information, the FL parameter server aggregates the corresponding weights of the corresponding models 708 (e.g., by averaging the weights or performing some other calculations on the weights). The FL parameter server 702 can therefore generate an updated global model W including the aggregated weights. t+1 G , after which the aforementioned process may be repeated for subsequent iteration t+1. For example, the FL parameter server 702 may broadcast the updated global model W to the learning node 706 t+1 G , to perform training and local updates again based on the same data set or a different local data set. To reduce transmission traffic, broadcast updates may include sending modified weights, weights that change more than a threshold, or multiplicative or additive increments or percentages of these weights. After the node receives the broadcast update and performs training and local updates, the node may again share its corresponding updated model with the FL parameter server for subsequent aggregation and global model updates. This process may continue to repeat in further iterations and result in updates to the global model W. t G Further update of the global model loss function FG (W t G ) is minimized, or until a predetermined number of iterations has been reached.

[0098] Fig. 8A and Figure 8B Examples 800, 850 of different applications associated with wirelessly connected devices that may benefit from FL are illustrated, including connected vehicles for autonomous driving ( Fig. 8A ) and mobile robots for manufacturing ( Figure 8B ). For example, in Fig. 8A In example 800, network nodes 802 (nodes 802a, 802b, 802c, e.g., such as Figure 7 The VUE of the learning node 706 in the example may communicate with the FL parameter server 804 (e.g., a base station or RSU) to collaboratively train and enhance the accuracy of the neural network 806 (neural networks 806a, 806b, 806c, 806d) for detecting objects and object bounding boxes (OBBs) in conjunction with autonomous driving. Similarly, in Figure 8B In example 850, network nodes 852 (nodes 852a, 852b, 852c, such as Figure 7 The mobile robot UE of the learning node 706 in the can communicate with the FL parameter server 854 (e.g., a base station) at mmWave frequency to collaboratively train the neural network 856 (neural networks 856a, 856b, 856c, 856d) associated with manufacturing-related tasks.

[0099] However, conventional FL architectures rely on centralized servers (e.g., FL parameter servers 702, 804, 854) to create, aggregate, and refine global ML models for participating nodes, and therefore require that locally trained ML model information be sent from participating nodes to the server during FL iterations. To reduce sending traffic, this information may include, for example, modified weights, weights that have changed beyond a threshold, or multiplicative or additive increments or percentages of these weights. This centralized approach to FL may have various disadvantages or limitations. For example, a centralized server may act as a single point of failure for the FL system, significant communication overhead may occur in applications involving a large number of model updates, or statistical challenges or security or privacy issues in model training may arise.

[0100] To address these limitations associated with conventional FL architectures, a clustering or hierarchical approach may be applied to FL, where learning nodes working towards a common learning task are grouped together into clusters. In clustered FL, multiple clusters may be formed by respective groups of learning nodes (e.g., UEs) that have local datasets and share a common ML task, such as object detection or classification (e.g., detecting OBBs, vehicles or pedestrians on the road, etc.). In one example, UEs may be grouped together to form a cluster and designate a cluster leader (e.g., other UEs) without network assistance (e.g., without base station or RSU participation), but in other examples, cluster formation and leader identification may be configured with network assistance (e.g., via messages that identify clusters and confirm cluster leaders that circulate within the network). For example, a participating node in a cluster may be selected or designated as a leader by other participating nodes in the cluster without network participation. The cluster leader itself may also be a learning node within the corresponding cluster.

[0101] In addition, in contrast to conventional FL, in hierarchical FL, a designated cluster leader of each cluster, rather than a FL parameter server, directly coordinates learning tasks, including local ML model training and updates within the cluster. This coordination is referred to as intra-cluster FL. For example, each node within a cluster may pass a message including local updates to ML model weights to a cluster leader (e.g., a UE designated as the leader of the cluster by an identifier) ​​to aggregate the updated local model and transmit it back to each node within the cluster. After the cluster is formed, a centralized FL parameter server (e.g., an edge server, RSU, or base station) may coordinate learning tasks, including global ML model training and updates between clusters. This coordination is referred to as inter-cluster FL. For example, each cluster leader of a corresponding cluster may pass a message including aggregated local updates to ML model weights to a FL parameter server to aggregate the updated global ML model and transmit it back to each cluster leader, which in turn transmits the updated global model to its corresponding cluster members for further training and updating. Thus, the cluster leader may act as an intermediary between learning nodes and FL parameter servers for coordinating neural network training and optimization between different clusters.

[0102] Fig. 9An example 900 of a clustered FL architecture including a cluster 902 (clusters 902a, 902b) of UEs 904 (UEs 904a, 904b, 904c, 904d, e.g., vehicle UEs, pedestrian UEs, etc.) communicating with a FL parameter server 906 (e.g., a base station, RSU, edge server, or other network entity) is illustrated. UEs 904 that share a common learning task, model, data set, or computing resource may be grouped into one or more clusters, and multiple clusters 902 of such UEs may be formed. A cluster leader 908 (cluster leaders 908a, 908b) may be designated for a cluster with or without network assistance. For example, without network assistance, a UE 904 may elect or subscribe to one of the UEs as the cluster leader 908 for a given cluster. In an alternative example, with network assistance, the FL parameter server 906 (e.g., a base station) may designate an RSU, edge server, or other network entity as the cluster leader 908 for a given cluster (if the network entity communicates with the UEs 904 of the corresponding cluster), as well as designate the UEs 904 that participate in the corresponding cluster.

[0103] UE 904 in a given cluster can communicate with Figure 7The training process is similar to the conventional FL process described above, except that the cluster leader 908 acts as an aggregator for its corresponding cluster rather than an FL parameter server, and model training is performed at multiple levels (intra-cluster and inter-cluster). In one example, the cluster leader 908 may act as an aggregator for its corresponding cluster 902 without participating in model training itself. For example, the cluster leader 908 of a given cluster may multicast the initialized ML model to the UEs 904 within the cluster 902 to perform local training, and these UEs then transmit their individually updated ML models 910 (models 910a, 910b, 910c, 910d for different UEs, respectively) back to the cluster leader 908 to be aggregated into the updated local model 912 for the cluster. The cluster leader 908 may then multicast the updated local model 912 (models 912a, 912b for different cluster leaders, respectively) to the UE 904 to perform local training again in the next iteration, and the intra-cluster process may be repeated in further iterations. In addition, at certain times or in response to certain events, the cluster leader 908 may communicate its respective updated local model to the FL parameter server 906 to be aggregated into an updated global model 914 for the cluster. The FL parameter server 906 may then transmit these aggregated global models back to the cluster leader 908 to circulate within its respective cluster 902. In another example, the cluster leader 908, in addition to acting as an aggregator for its respective cluster 902, may also participate in model training itself. In this case, the cluster leader 908 may perform the aforementioned functions of the aggregator in addition to performing local training and updates similar to the UE 904. Therefore, unlike conventional FL in which learning nodes communicate directly with the FL parameter server for model optimization, here the cluster leader communicates directly with the FL parameter server, and the learning nodes within the cluster communicate directly with the cluster leader instead. Therefore, clustered FL can be used to implement neural network training in a distributed manner with minimal bottlenecks, minimal communication overhead, minimal challenges to model training due to heterogeneity of computing resources, training data, training tasks, or associated ML models, and minimal security and privacy challenges that may arise in conventional FL.

[0104] It is also possible to use a peer-to-peer FL architecture instead of, for example, Fig. 9 The clustered FL architecture exemplified in

[0066] is used to minimize the aforementioned limitations present in conventional FL. In a peer-to-peer approach, collaborative ML model training between participating nodes can be provided without the need for a designated and centralized server for coordinating training (e.g., no FL parameter server 906). Instead, participating nodes communicate directly with other participating nodes to coordinate and schedule neural network training, individual model updates, and aggregation of individually updated models.

[0105] Fig.10An example 1000 of a peer-to-peer FL architecture including UEs 1002 (UEs 1002a, 1002b, e.g., vehicle UEs, pedestrian UEs, etc.) communicating directly with other UEs for ML model training is illustrated. In one example, the UEs 1002 may elect one of the UEs 1002 as a leader 1004 for a certain duration to coordinate ML model training among the UEs 1002. In one example, the leader 1004 may act as an aggregator without participating in model training itself. During training, the leader 1004 may receive and aggregate ML model updates from the UEs 1002, after which the leader may transmit the aggregated ML model updates back to the UEs 1002 for further training and updating. This training process is similar to that for Fig. 9 The intra-cluster method described above is different in that the cluster leader in that example is replaced here by the leader 1004. In another example, the leader 1004, in addition to acting as an aggregator, can also participate in model training itself, in which case the leader 1004 can perform the aforementioned functions of the aggregator in addition to performing model training and updating similar to UE 1002. In an alternative example, no UE can be the leader 1004, and the UE 1002 can instead synchronously or asynchronously aggregate the ML model updates of other UEs 1002. Therefore, neural network training can be similarly implemented in a distributed manner using peer FL with minimal bottlenecks, minimal communication overhead, minimal challenges to model training due to heterogeneity of computing resources, training data, training tasks, or associated ML models, and minimal security and privacy challenges that may arise in conventional FL.

[0106] Various examples of signaling processes between network nodes (e.g., UEs) are provided to implement clustered FL. In one example, a neighbor discovery process is provided, in which nodes (e.g., UEs) can discover other nodes (e.g., other UEs or FL parameter servers) that are close to or adjacent to each other and can participate in ML training tasks. In another example, after neighbor discovery is completed, a signaling process for cluster formation and leader selection is provided, in which nodes participating in the ML training task can form a cluster with other discovered nodes (without network participation), and further select a cluster leader (ML model weight aggregator) for the corresponding cluster based on configured criteria. The signaling process for neighbor discovery and the signaling process for cluster formation and leader selection can be different processes that are performed sequentially as described above. Alternatively, neighbor discovery and cluster formation and leader selection can be performed simultaneously in a combined signaling process. In another example, after cluster formation and leader selection are completed, a signaling process for clustered FL training can be provided, in which nodes can perform FL intra-training coordinated by a cluster leader within the corresponding cluster through messages transmitted between learning nodes and cluster leaders. In another example, after cluster formation and leader selection are completed, a signaling process for clustered FL training may be provided, wherein nodes may perform inter-FL training coordinated by a FL parameter server across different clusters through message exchange between corresponding cluster leaders and the FL parameter server. The foregoing examples of the signaling process may apply sidelink communication between devices such as UEs (e.g., via a PC5 interface), downlink / uplink communication between a UE and a network entity such as a base station or RSU (e.g., via a Uu interface), or a combination of sidelink and downlink / uplink communication.

[0107] Various examples of signaling procedures between network nodes (e.g., UEs) are also provided to implement peer FL. In one example, a neighbor discovery procedure is provided, in which a node (e.g., UE) can discover other nodes (e.g., other UEs or FL parameter servers) that are close or adjacent to each other and can participate in the ML training task. In another example, after the neighbor discovery is completed, a signaling procedure for leader selection in a peer FL setting may be provided, in which the nodes participating in the ML training task may select a leader for ML model weight aggregation among other discovered nodes based on configured criteria. In another example, after the leader selection is completed, a signaling procedure for peer FL training may be provided, in which the leader coordinates FL training among peer nodes. In another example in which no peer node operates as a leader, a signaling procedure for peer FL training may be provided, in which the peer node synchronously coordinates FL training among other peer nodes. In another example in which no peer node operates as a leader, a signaling procedure for peer FL training may be provided, in which the peer node asynchronously coordinates FL training among other peer nodes. The foregoing examples of signaling procedures may apply to sidelink communications between UEs or other wireless communication devices (eg, via a PC5 interface).

[0108] Fig.11 An example 1100 of a signaling process that allows a first node 1102 (e.g., a UE referred to herein as node 1) to discover potential neighboring nodes such as a second node 1104 (e.g., another UE referred to herein as node 2) using sidelink communication is illustrated. Referring to the previous figures, node 1 and node 2 may be, for example, UEs 104, 904, 1002 or network nodes 706, 802, 852. Initially, the first node 1102 may send a neighbor discovery (ND) message 1106 or request. The ND message 1106 may be provided periodically (e.g., at a preconfigured periodicity) or in response to an event. For example, the first node 1102 may be triggered to transmit the ND message 1106 after receiving a basic safety message (BSM) indicating the presence of another node (e.g., a neighboring VUE). The ND message 1106 may be broadcast to solicit a response from any node (e.g., VUE) that is capable of decoding the ND message 1106. Alternatively, the ND message 1106 may be multicast, for example, to nodes that provide the BSM to the first node 1102. The ND message 1106 may also be transmitted using multicast option 1 to enhance the reliability of the ND message 1106 (e.g., the first node 1102 may indicate in the second stage SCI the distance at which the first node 1102 expects to receive NACKs from other nodes that failed to decode the message). In this example, the node that receives the ND message 1106 from the first node is referred to herein as node 2 (the second node 1104).

[0109] In response to receiving the ND message 1106 from the first node 1102, the second node 1104 may add the first node 1102 to a neighbor list, a communication map, or other data structure (stored at the second node 1104) indicating that the first node 1102 is an asymmetric neighbor. The second node 1104 may indicate the first node 1102 as an "asymmetric" neighbor because at this time the second node 1104 knows its communication capabilities with the first node 1102, but the first node 1102 does not yet know its communication capabilities with the second node 1104. The second node 1104 may then provide a neighbor discovery response (NDR) message 1108 confirming that the first node 1102 is an asymmetric neighbor of the second node 1104. The NDR message 1108 may be unicast provided to the first node 1102. In response to receiving the NDR message 1108, the first node 1102 may add the second node 1104 to a neighbor list, a communication map, or other data structure (stored at the first node 1102) indicating that the second node 1104 is a symmetric neighbor. The first node 1102 may indicate the second node 1104 as a "symmetric" neighbor because at this point both the first node 1102 and the second node 1104 are aware of their ability to communicate with the other node. The first node 1102 may then provide a message 1110 (e.g., via unicast) to the second node 1104 confirming that the second node 1104 is a symmetric neighbor of the first node 1102. In response to receiving the message 1110, the second node 1104 may update the state of the first node 1102 in its data structure to similarly indicate that the first node 1102 is now a symmetric neighbor. The second node 1104 may then transmit a message 1112 (e.g., via unicast) to the first node 1102 confirming that the first node 1102 has become a symmetric neighbor of the second node 1104.

[0110] After the first node 1102 and the second node 1104 have designated each other as neighbors (i.e., symmetric neighbors), the first node 1102 may send a message 1114 to the second node 1104 indicating information related to model training. The information may include, for example, the ML tasks in which the first node 1102 is participating or interested in participating; the available sensors at the first node 1102 and their associated data input formats; the available ML models in training, including model state, model architecture, model training parameters, and current performance (e.g., accuracy and loss); and available computing resources (e.g., whether the first node 1102 includes a CPU or GPU, information about its clock speed, available memory, etc.). For example, the message 1114 may indicate that the first node 1102 is configured to perform object detection (e.g., to identify OBBs), image classification, reinforcement learning, or other ML tasks. The message 1114 may indicate that the first node 1102 includes a camera, LIDAR, RADAR, IMU, or other sensor, and a data format that can be read by the indicated sensor. The message 1114 may indicate that the first node 1102 is configured with a neural network (e.g., Figure 6 The message 1114 may indicate the number of neurons and synapses, the logistic regression or classification model, the current values ​​of the model weights and biases, the activation function applied (e.g., ReLU), the classification accuracy, and the loss function applied to the model weight update (e.g., cross entropy loss function). The message 1114 may indicate that the CPU or GPU of the first node 1102 (e.g., the controller / processor 459 or some other processor of the UE 450) applies the indicated neural network and model to the indicated ML task, the clock speed of the CPU or GPU, and a certain amount of available memory (e.g., the memory 460 or some other memory of the UE 450) for storing information associated with the ML task, the neural network, data, etc. The message 1114 may include any combination of the foregoing items as well as other information.

[0111] In response to receiving the message 1114 including the model training related information, at step 1115, the second node 1104 associates the information with the first node 1102 in its neighbor list, communication graph, or other data structure. If deciding whether to form a cluster with the first node 1102 to perform an ML task, the second node 1104 may later consider the information during cluster formation. For example, if the information indicates that the first node 1102 has a different ML model than the second node 1104 or has lower computing power than it, the second node 1104 may determine not to cluster with the first node 1102.

[0112] The second node 1104 may then transmit a message 1116 indicating model training related information to the first node 1102. The information may include, for example, the ML tasks that the second node 1104 is participating in or interested in participating in; the available sensors at the second node 1104 and their associated data input formats; the available ML models in training, including model status, model architecture, model training parameters, and current performance (e.g., accuracy and loss); and available computing resources (e.g., whether the second node 1104 includes a CPU or GPU, information about its clock speed, available memory, etc.). Therefore, the message 1116 may include the same type of information as the message 1114, but for the second node 1104 instead of the first node 1102. In response to receiving the message 1116 including the model training related information, at step 1117, the first node 1102 associates the information with the second node 1104 in its corresponding data structure. If deciding whether to form a cluster with the second node 1104 to perform the ML task, the first node 1102 may similarly consider the information later during cluster formation.

[0113] Fig.12 An example 1200 of another signaling process that allows a first node 1202 (e.g., a UE similarly referred to herein as Node 1) to discover potential neighboring nodes such as a second node 1204 (e.g., another UE similarly referred to herein as Node 2) using sidelink communications is illustrated. The signaling process combines Fig.11 Neighbor discovery and model-related information exchange messages, resulting in Fig.11 Compared to the signaling process of , there are fewer steps but the message payload of each step is larger. In addition, this signaling process allows each node to determine whether to add another node to its neighbor list or similar structure during neighbor discovery, which is different from Fig.11 This contrasts with the signaling process of , which defers this decision until the cluster formation process.

[0114] Initially, the first node 1202 may send a neighbor discovery (ND) message 1206 or request similar to Fig.11 In this example, the node receiving the ND message 1206 from the first node 1202 is referred to as the second node 1204, similar to Fig.11 However, with Fig.11 Compared to the example of , in this example, the ND message 1206 also indicates model training related information to the second node 1204. This information may include Fig.11 Similar types of information as those provided in message 1114.

[0115] In response to receiving (e.g., successfully decoding) the ND message 1206 from the first node 1202, the second node 1204 may determine whether to add the first node 1202 to its neighbor list, communication graph, or other data structure based on the model training related information in the ND message 1206. For example, if the information indicates that the first node 1202 has a different ML model than the second node 1204 or has lower computing power than it (e.g., if the first node 1202 is configured with a Markov model or a small amount of available memory for ML, while the second node 1204 is configured with a classification model or a large amount of available memory for ML), the second node 1204 may determine not to add the first node 1202 to its data structure. In this case, the second node 1204 may disregard or ignore (and therefore not respond to) the ND message 1206. Alternatively, if the information indicates, for example, that the first node 1202 has the same or similar ML model (e.g., classification model) or the same or similar computing capabilities (e.g., memory) as the second node 1204, the second node 1204 may determine to add the first node 1202 to its data structure. In this case, the second node 1204 may add the first node 1202 and its associated model training-related information to its neighbor list, communication graph, or similar data structure (stored at the second node 1204).

[0116] Subsequently, the second node 1204 may provide an NDR message 1208 to the first node 1202 (e.g., via unicast), which not only confirms the first node 1202 as a neighbor of the second node 1204, but also indicates model training related information of the second node 1204. This information may include the same type of information as the ND message 1206, but is directed to the second node 1204 instead of the first node 1202.

[0117] In response to receiving the NDR message 1208 including model training related information, the first node 1202 may similarly determine whether to add the second node 1204 to its neighbor list, communication graph, or other data structure based on the model training related information. For example, if the information indicates that the second node 1204 has a different ML model than the first node 1202 or a lower computing power than it, the first node 1202 may determine not to add the second node 1204 to its data structure. In this case, the first node 1202 may ignore or ignore (and therefore not respond to) the NDR message 1208. Alternatively, if the information indicates, for example, that the second node 1204 has the same or similar ML model or the same or similar computing power as the first node 1202, the first node 1202 may determine to add the second node 1204 to its data structure. In this case, the first node 1202 may add the second node 1204 and its associated model training related information to its neighbor list, communication graph, or similar data structure (stored at the first node 1202). Furthermore, the first node 1202 may then provide a message 1210 to the second node 1204 (eg, via unicast) confirming that the second node 1204 is a neighbor of the first node 1202 .

[0118] On the other hand, if the second node 1204 fails to receive an acknowledgment of the NDR message 1208 from the first node 1202 (or an acknowledgment that the second node 1204 has been added to the neighbor list of the first node 1202) within a preconfigured timeout interval, the second node 1204 discards the first node 1202 and its associated information from its neighbor list, communication graph, or similar data structure, such as if the first node 1202 disregards or ignores the NDR message 1208. Similarly, if the second node 1204 fails to receive an acknowledgment of the NDR message 1208 from the first node 1202 (or an acknowledgment that the second node 1204 has been added to the neighbor list of the first node 1202), the second node 1204 discards the first node 1202 and its associated information from its neighbor list, communication graph, or similar data structure. Fig.12 As illustrated in the example of , if the first node 1202 previously received an ND request 1212 from another node 1214 (third node 1214), transmitted an NDR message 1216 in response to the ND request 1212, but failed to receive an acknowledgment of the NDR message 1216 from the third node 1214 within the timeout interval 1218 (such as when the third node 1214 disregarded or ignored the NDR message 1216), then at step 1220, the first node 1202 may discard any associated information of the third node 1214 from its neighbor list, communication graph, or similar data structure.

[0119] Fig.13 An example 1300 of a node state machine during a cluster formation or leader election process is illustrated. The state machine may indicate the state of a network node (e.g., UE) at a given time and the operations that the network node may perform to transition between states. Different network nodes may have similar state machines and may be used in different network nodes. Fig.11 or Fig.12A network node that includes at least one other node in its neighbor list, communication graph, or similar data structure may operate according to the state machine. Fig.13 The node state machine of the FL operates to form a cluster with a cluster leader or to select a leader of the FL in the peer-to-peer network. In addition, during the cluster formation or leader selection process, the signaling or communication of the node to its neighbors can be broadcast or multicast.

[0120] exist Fig.13 In an example of , a network node (e.g., UE) can potentially assume any of the following roles: leader (aggregator), follower (participant), or candidate for leader. The leader node is configured to aggregate ML model updates from follower nodes in the FL for a period of time (a timeout period or deadline as a leader). In one example, the leader node can act as an aggregator without participating in learning or model training itself, while in other examples, the leader node can participate in model training itself in addition to acting as an aggregator. The leader node can be such as Fig. 9 The cluster leader in the clustered FL architecture exemplified in , or a Fig.10 A peer leader in the peer-to-peer FL architecture illustrated in Figure 1. A follower node is a participating or learning node in FL that trains the ML model and provides updates to the corresponding leader. A candidate node is a network node that competes with other candidate nodes in an election to become a leader node.

[0121] Initially, during an election cycle, a network node begins in a follower state 1302, as illustrated by transition 1304. In this state, the node may change to a candidate state 1306 in response to declaring itself a candidate for leader election, as illustrated by transition 1308. In one example of a candidacy trigger, a node may declare itself a candidate if it fails to receive a candidacy message from another node within a preconfigured timeout period that begins after the node completes neighbor discovery (e.g., message 1324 below). The timeout period is intended to provide time for the other node to complete its own neighbor discovery and determine whether to declare itself a candidate before the node makes that determination itself. In another example of a candidacy trigger, even if the node does receive a candidacy message from other nodes within a preconfigured timeout period (e.g., message 1324 below), the node may still declare itself a candidate if the node determines that the ML model information collected from other nodes during neighbor discovery is insufficient to trigger a vote for election from the node (e.g., message 1328 below). For example, if such a candidacy message originates from a node that includes a different ML model than the node or has lower computational power than the node (e.g., if one node is configured with a Markov model or a small amount of available memory for ML, while another node is configured with a classification model or a large amount of available memory for ML), the node may ignore such a candidacy message. In another example of a candidacy trigger, if after completing neighbor discovery and while monitoring the loss function of its local ML model, the node determines that its loss function indicates a low-quality ML model, the node may declare itself as a candidate. For example, if the node determines that the value of its loss function drops below a threshold, the node may be incentivized to be selected as a leader to quickly start a FL session and improve its loss function. Alternatively, the node may remain in follower state 1302 in response to taking no action, as illustrated by transition 1310.

[0122] During election, nodes in follower state 1302 may vote (e.g., based on majority rule) for nodes in candidate state 1306. If a candidate node loses election to another node but is still determined to remain a candidate for subsequent leader election, the node may remain in candidate state 1306, as illustrated by transition 1312. Alternatively, the node may switch back to follower state 1302, as illustrated by transition 1314.

[0123] On the other hand, if the candidate node wins the election (e.g., the node receives a majority vote from other nodes during the election), the node may change to the leader state 1316, as illustrated by transition 1318. During ML model training, the leader node may perform aggregation of model updates from follower nodes in the cluster within the clustered FL architecture, such as for Fig. 9 as described, or performing aggregation of model updates from follower nodes in a peer-to-peer network with a peer-to-peer FL architecture, such as for Fig.10 As described. In a clustered FL architecture, the leader node may also group follower nodes into a cluster served by the leader node, and transmit a message to the FL parameter server indicating its state as a cluster leader. In either FL architecture, the leader node may remain in the leader state 1316 (as a leader) for a timeout period or duration, after which the node may change back to the follower state 1302, as illustrated by transition 1320, and a new leader node may be elected. In the case of a tie where no candidate node receives a majority vote (e.g., each node receives the same number of votes), the follower node may select one of the candidate nodes as the leader node based on various tie-breaking factors. For example, the leader node may be randomly selected among the tied candidate nodes, or the leader node may be selected from any one of the tied candidate nodes that has the most available computing resources or communication quality (e.g., signal-to-noise ratio).

[0124] In one example of selection, a candidate node 1322 may multicast or broadcast a message 1324 indicating its candidacy to other nodes in its neighbor list. The candidate node 1322 may initially be in such a follower node that declares itself as a candidate for the leader to be selected in response to any of the aforementioned candidate qualification triggers. A follower node 1326 that receives the candidate qualification message and potential other candidate qualification messages from other candidate nodes may send a message 1328 indicating a vote for one of these candidate nodes. A candidate node that receives a vote from a follower node may notify other candidate nodes of the number of votes each candidate node has received. If a candidate node has received a majority of votes from follower nodes in other candidate nodes, or has received a configured or preconfigured number of votes exceeding a threshold in the case where a single candidate node is ready for selection, the node may win the selection. The leader node may become an ML model aggregator for a cluster or peer network of follower nodes that have provided voting messages to the node. The leader node may also transmit messages 1330 to follower nodes and other candidate nodes indicating its status as a leader node for a period of time or deadline 1332. Once the leader node's deadline 1332 ends, the node may transmit messages 1334 to follower nodes in its cluster or peer network indicating the end of its deadline.

[0125] In a clustered FL architecture, other selections involving other follower nodes and other candidate nodes may be made simultaneously, and thus multiple clusters and cluster leaders may be formed. For example, a group of follower nodes that vote for a set of candidate nodes in their neighbor lists may participate in one cluster, while another group of follower nodes that vote for another set of candidate nodes in a different neighbor list may participate in a different cluster. In a peer-to-peer FL architecture, follower nodes and candidate nodes may be within the neighbor lists or networks of other follower nodes and candidate nodes, and thus a peer group and leader may be formed from these nodes accordingly. This result is equivalent to forming a single cluster that encompasses every node in the clustered FL architecture (e.g., the peer group may effectively act as a cluster).

[0126] Fig.14 An example 1400 of a signaling process that allows a first node 1402 (e.g., a UE) to simultaneously discover and form a cluster (as a cluster leader in a clustered FL architecture) with a second node 1404 (e.g., another UE) via sidelink communication is illustrated. The process may replace the Figures 11 to 13 , and ML training related information. Fig.13 The examples of candidacy triggers described are the same. For example, if a node fails to receive a recruitment message from another node within a preconfigured timeout period (e.g., message 1406 below), if the node determines that the ML model information collected from other nodes is insufficient to trigger a subscription from the node to its cluster (e.g., message 1408 below), or if the node determines that its loss function indicates a low-quality ML model, the node may designate itself as a leader.

[0127] Nodes that receive the recruitment message and potentially other recruitment messages from other self-designated leaders may determine whether to subscribe to any indicated cluster led by the corresponding transmitter based on the indicated ML training-related information in the corresponding message. If the network node determines to subscribe to the cluster of one of these transmitting nodes, the network node may transmit back a message requesting subscription to the cluster and further indicating the ML-related training information of the node; otherwise, the network node may ignore the recruitment message. Upon receiving the subscription message, the recruitment node may similarly determine whether to allow the subscribing node to join its cluster based on the indicated ML-related training information of the subscribing node. If a permission decision is made, the recruitment node may transmit a confirmation of cluster permission to the subscribing node. Otherwise, the recruitment node may ignore the subscription message, and the subscribing node may search to join or lead a different cluster after a specified time period.

[0128] Initially, the first node 1402 sends a message 1406 indicating that the first node 1402 is interested in recruiting other nodes to form or join a cluster led by the first node. For example, if the first node is not currently participating in an active cluster FL session, the message 1406 may be provided periodically (e.g., according to a preconfigured periodicity). Alternatively, the message 1406 may be event-triggered, for example, in response to the first node 1402 determining to train or update the ML model to improve the performance of a particular ML task. The first node 1402 may broadcast the message 1406 to any network node capable of decoding the message. Alternatively, the message 1406 may be multicast, for example, to network nodes known to the first node 1402. The message 1406 may also be transmitted using multicast option 1 to enhance the reliability of the recruitment message (e.g., the first node 1402 may indicate in the second stage SCI the distance at which the first node expects to receive NACKs from other nodes that failed to decode the message).

[0129] In addition, message 1406 may indicate model training related information of first node 1402. This information may include, for example, the ML tasks that first node 1402 is participating in or interested in participating in; the available sensors at first node 1402 and their associated data input formats; the available ML models in training, including model status, model architecture, model training parameters, and current performance (e.g., accuracy and loss); and available computing resources (e.g., whether first node 1402 includes a CPU or GPU, information about its clock speed, available memory, etc.). Thus, message 1406 may include information related to the model training of first node 1402. Fig.11 Message 1114 or Fig.12 Similar types of information to those provided in ND message 1206.

[0130] exist Fig.14In the example of , if the nodes are in proximity to each other, the second node 1404 may receive message 1406 from the first node 1402. The second node 1404 may potentially receive other such messages from other network nodes requesting that the second node 1404 be recruited to a cluster led by the respective node. Thus, the second node 1404 may receive recruitment messages from multiple candidates for cluster leadership. In response to receiving the recruitment message, the second node may determine whether to subscribe to a cluster of one of the candidates based at least in part on the model training related information indicated in the respective message. The determination may be based on information related to the model training of the respective node. Fig.12 Similar factors to those described for the neighbor list (e.g., whether the candidate node and the second node have similar ML models, computing resources, etc.).

[0131] In this example, the second node 1404 determines to form or join a cluster led by the first node 1402, and therefore the second node may provide a message 1408 (e.g., via unicast) to the first node 1402 requesting to subscribe to or join its cluster. The message 1408 may also indicate model training related information of the second node 1404. The information may include, for example, the ML tasks that the second node 1404 is participating in or interested in participating in; the available sensors at the second node and their associated data input formats; the available ML models in training, including model state, model architecture, model training parameters, and current performance (e.g., accuracy and loss); and available computing resources (e.g., whether the second node includes a CPU or GPU, information about its clock speed, available memory, etc.). Therefore, the message 1408 may include the same type of information as the message 1406, but for the second node 1404 instead of the first node 1402.

[0132] In response to receiving the message 1408, the first node 1402 may similarly determine whether to allow the second node 1404 to join its cluster based at least in part on the model training related information indicated in the message 1408. For example, if the information indicates that the second node has a different ML model than the first node or has lower computing power than it, the first node 1402 may determine not to add the second node 1404 to its cluster. In this case, the first node 1402 may disregard or ignore (and therefore not respond to) the message 1408. Alternatively, if the information indicates, for example, that the nodes have the same or similar ML models or the same or similar computing power, the first node 1402 may determine to add the second node 1404 to its cluster. In this case, the first node 1402 may provide (e.g., via unicast) a message 1410 confirming that the second node 1404 is allowed to join the cluster led by the first node 1402.

[0133] On the other hand, if the first node 1402 determines not to permit the second node 1404 to join its cluster, the second node may fail to receive the message 1410 within a timeout window 1412 from the time the message 1408 was provided (because the first node 1402 disregarded or ignored the message 1408). In this case, the second node 1404 may subscribe to the cluster of another network node from which the second node previously received a recruitment request. Fig.14 In the illustrated example of , the second node 1404 may have previously received a message 1414 (similar to message 1406) from the third node 1416 requesting that other nodes be recruited to its cluster, and based at least in part on the model training related information of the third node 1416 indicated in the message 1414, the second node 1404 may send a message 1418 requesting to subscribe to or join the cluster led by the third node 1416 after the timeout window 1412 expires. Alternatively, instead of subscribing to the cluster of another network node, the second node 1404 may send a message 1420 (similar to messages 1406, 1414) requesting that other nodes be recruited to the cluster led by the second node 1404. For example, the second node 1404 may determine to designate itself as the cluster leader, and broadcast or multicast the message 1420 to the third node 1416 after the timeout window 1412 expires. In response to receiving the message 1420 , the third node 1416 may determine whether to subscribe to the cluster led by the second node 1404 based on the model training related information of the second node indicated in the message 1420 .

[0134] Fig.15 An example 1500 of a signaling process is illustrated, in which a participant node 1502 (participant nodes 1502a, 1502b, 1502c) may be in a communication such as for Fig.13 or Fig.14 The described selection or designation of a leader node 1504 (e.g., a cluster leader or a peer leader) is followed by the execution of intra-cluster FL or peer FL. Participant nodes 1502 (e.g., UEs) may be, for example, adjacent follower or candidate nodes in a cluster Ci or a peer network. Leader node 1504 (e.g., UE) may be, for example, a selected or self-designated leader of cluster Ci or a selected leader of a peer network. In one example, leader node 1504 may act as an aggregator without participating in learning or model training itself, while in other examples, leader node 1504 may participate in model training itself in addition to acting as an aggregator.

[0135] Initially, at step 1506, the leader node 1504 may initialize an ML model (eg, a cluster model W for clustering FL Ci , or the global model W0 for peer FL G). This initialization may include, for example, configuring the ML task (e.g., object detection), the neural network (e.g., CNN), the number of neurons and synapses, random weights and biases, the model algorithm (e.g., logistic regression), and other model parameters. After initialization, at step 1508, the leader node 1504 may broadcast or multicast these ML model parameters to the network nodes 1502 for download.

[0136] After receiving the ML model parameters from the leader node 1504 and configuring its local ML model accordingly, at step 1510, the participant nodes 1502 (e.g., k cluster members or peer nodes) and the potential leader node 1504 may perform local ML model training based on their respective data sets. For example, during a given FL iteration t, the respective node k (corresponding to the cluster model W according to the FL architecture) t Cik Or the global model W t k ) can train local ML models 1511 (models 1511a, 1511b, 1511c) to identify the function for minimizing the loss function F(W t Cik ) or F k (W t k ), such as the optimal model parameters for Figure 6 As described. For example, a node may utilize backpropagation and stochastic gradient descent to identify optimal model weights to be applied to its corresponding neural network, which results in minimized cross entropy loss after multiple training sessions. Thereafter, at step 1512, the participant node 1502 may upload its corresponding updated ML model parameters to the leader node 1504. To reduce transmission traffic, these parameters may include, for example, modified weights, weights that have changed beyond a threshold, or multiplicative or additive increments or percentages of these weights. For example, the participant node 1502 may send optimized ML model weights and other information to the leader node 1504. After receiving these ML model information updates from the participant nodes 1502, at step 1514, the leader node 1504 may aggregate the updates to generate an updated ML model 1515 for the node (e.g., an updated cluster model W to be applied to the next FL iteration t+1). t+1 Ci Or the global model W t+1 G ). For example, the leader node 1504 may average the corresponding model weights indicated by the participant nodes 1502 or perform some other calculation, potentially including the corresponding model weight of the leader node 1504.

[0137] After generating the aggregated ML model information, the leader node 1504 may determine that the loss function associated with the updated ML model is no longer minimized. For example, the aggregated ML model weights may potentially result in an increased loss compared to the previous ML model weights of the individual nodes. Therefore, the leader node may transmit the aggregated ML model information to the participant nodes 1502, which may be the same nodes as before or may include additional or fewer nodes, for further local ML model training. For example, after configuring their local ML models with the updated weights, during the next FL iteration t+1, the participant nodes 1502 (and potentially the leader node 1504) may again perform local ML model training to achieve a set of optimal ML model weights for their respective models, and the participant nodes 1502 may similarly transmit their updated ML models to the leader node 1504 for further aggregation. This process may be repeated until a loss function associated with the aggregated ML model (e.g., a cluster loss function F(W) for cluster Ci) is achieved. t Ci ) or the global loss function F for peer-to-peer networks G (W t G Alternatively, the process may be repeated until a predetermined number of FL iterations in the cluster or peer network have occurred (e.g., based on the computational power of the participant nodes 1502 or the amount of other ML model information), or a timeout of the leader node 1504 for its status as a leader has occurred (e.g., if a leader is elected).

[0138] Fig.16 An example 1600 of a signaling process is illustrated, in which a leader node 1602 (nodes 1602a, 1602b) may communicate with a FL parameter server 1604 to communicate with the FL parameter server 1604 in order to Fig.15 Inter-cluster FL is performed after one or more FL iterations of intra-cluster model training with participant nodes 1605 (nodes 1605a, 1605b, 1605c, 1605d) are described. Leader node 1602 (e.g., UE) can be, for example, a selected or self-designated leader of a corresponding cluster 1606 (clusters 1606a, 1606b). FL parameter server 1604 can be, for example, a base station, an RSU, or an edge server that coordinates FL between corresponding clusters 1606. In one example, leader node 1602 can act as an aggregator without participating in learning or model training itself, while in other examples, leader node 1602 can participate in model training itself in addition to acting as an aggregator.

[0139] At a given moment after intra-cluster FL training, the leader node 1602 may communicate the locally updated ML model information (intra-cluster) to the FL parameter server 1604 for inter-cluster FL training. For example, the FL parameter server 1604 may periodically or aperiodically transmit a request to the cluster leader to communicate its model updates for inter-cluster FL training. Alternatively, the leader node 1602 itself may communicate its model updates for inter-cluster FL training in response to an event trigger, such as the minimization of a local loss function in the corresponding cluster, or the occurrence of a certain number of intra-cluster FL iterations. The FL parameter server 1604 may aggregate this information received from the corresponding cluster leaders to generate a global (multi-cluster) ML model update, after which the FL parameter server may provide this globally updated ML model information to the corresponding leader nodes. These leader nodes may then provide the globally updated ML model information to their corresponding participant nodes to further refine the local ML model through additional intra-cluster FL training. Intra-cluster and inter-cluster FL training may or may not be synchronized; for example, different clusters may perform intra-cluster FL training or inter-cluster FL training for the same number or different number of iterations before stopping to perform FL training. For example, the leader node 1602 of the corresponding cluster may stop communicating local model updates (in intra-cluster training) or global model updates (in inter-cluster training) to the participant nodes or FL parameter servers at the same time or at different times.

[0140] Initially, at step 1608, the leader node 1602 of the corresponding cluster may transmit its updated ML model W of its cluster Ci to the FL parameter server 1604. t Ci , the updated ML model includes one or more previous aggregations 1607 of ML model updates from the local models 1609 (models 1609a, 1609b, 1609c, 1609d) of the follower nodes. To reduce the sent traffic, these updates may include, for example, modified weights, weights that have changed beyond a threshold, or multiplicative or additive increments or percentages of these weights. For example, the leader node 1602 may transmit its most recently generated aggregated ML model weights after a given number of intra-cluster FL iterations for further aggregation with other aggregated ML model weights generated by other leader nodes in other clusters. For example, in response to receiving a request from the FL parameter server 1604, implementing a loss function associated with the updated ML model (e.g., the cluster loss function F(W) of the cluster), t Ci), the occurrence of a predetermined number of FL iterations in a cluster, or the timeout of the leader node 1602 for its status as a leader, the leader node 1602 may be triggered to transmit an updated ML model for the inter-cluster FL training. Similarly, in response to similar events, the leader nodes 1602 of other corresponding clusters may respectively transmit their updated ML models (e.g., aggregated ML model weights) of their own clusters to the FL parameter server 1604 for inter-cluster FL training.

[0141] After receiving the updated ML model from the cluster leader, at step 1610, the FL parameter server 1604 may aggregate the updates to generate an updated global ML model 1611 for the leader node (e.g., an updated global model W t+1 G ). For example, the FL parameter server 1604 may average or perform some other calculation on the corresponding aggregated model weights indicated by the leader node 1602. After generating the aggregated ML model information, the FL parameter server 1604 may determine that the global loss function associated with the updated ML model is no longer minimized. For example, the aggregated ML model weights across clusters may potentially result in an increased loss compared to the previously updated ML model weights of the individual cluster leaders. Therefore, at step 1612, the FL parameter server may transmit the aggregated ML model information to the leader node 1602 for further training of the corresponding in-cluster ML models 1613 (models 1613a, 1613b, from the updated model W t+1 G start), such as Fig.15 After this intra-cluster FL training, the leader node 1602 may again transmit its updated or aggregated ML model information to the FL parameter server 1604 for further inter-cluster FL training, and the process may be repeated until a global loss function associated with the aggregated ML model across clusters (e.g., global loss function F G (W t G Alternatively, the process may be repeated until a predetermined number of inter-cluster FL iterations have occurred, or a timeout of the FL parameter server 1604 has occurred (eg, if a leader is elected).

[0142] Fig.17 An example 1700 of a signaling process is illustrated in which peer nodes 1702 (nodes 1702a, 1702b, 1702c, 1702d) may perform peer FL in a synchronous manner without designating or electing a leader node. Peer nodes 1702 (e.g., UEs) may be, for example, neighboring follower nodes in a peer-to-peer network. Fig.15 Unlike the example of , in this example, peer nodes 1702 can each act as their own aggregator of ML model updates received from other peer nodes. Fig.15 This approach may cause peer nodes 1702 to perform more computation and experience more communication overhead than the leader-based approach of , but it may minimize or avoid aggregation bottlenecks that may otherwise occur in the event of a failure at the leader or FL parameter server (because the peer nodes themselves act as aggregators). In addition, the signaling process may be used in situations such as for Fig.11 and Fig.12 Neighbor discovery is then performed without peer nodes as described for Fig.13 and Fig.14 Describes the formation of a cluster or the election of a leader. Therefore, Fig.17 The peer-to-peer network may include peer nodes 1702 communicating with other peer nodes in their respective neighbor lists effectively within a single group or cluster.

[0143] Initially, at step 1704, the peer node 1702 may use its respective data set to initialize and train its own ML model in parallel. For example, the peer node may initialize the ML model, which may include, for example, configuring the ML task (e.g., object detection), the neural network (e.g., CNN), the number of neurons and synapses, random weights and biases, the model algorithm (e.g., logistic regression), and other model parameters. After initialization, the peer node 1702 may perform various ML model trainings based on its respective data set. For example, the respective node may use the observed data to train its ML model to identify optimal model parameters for minimizing a loss function, such as with respect to Figure 6 As described. For example, a node may utilize back-propagation and stochastic gradient descent to identify optimal model weights to be applied to its respective neural network, which results in a minimized cross entropy loss after a number of training sessions or iterations. Training performed by a peer node may continue until minimization of a loss function associated with the respective ML model is achieved, or until a predetermined number of iterations or training sessions have been performed for the peer node.

[0144] After a peer node 1702 completes or stops its model training, the peer node may broadcast its updated ML model information to other peer nodes in its peer network (e.g., nodes in the neighbor list of the corresponding node). To reduce transmission traffic, this information may include, for example, modified weights, weights that have changed beyond a threshold, or multiplicative or additive increments or percentages of these weights. These broadcasts may be scheduled so that a synchronous model update exchange 1706 may be performed between each peer node 1702. After this synchronous model update exchange 1706, the peer node 1702 may have the updated ML model information (e.g., updated model weights) of other peer nodes as well as its own updated ML model information.

[0145] The peer nodes 1702 may then aggregate their updates, respectively, to generate an updated global ML model 1708 (models 1708a, 1708b, 1708c, 1708d) shared among the peer nodes. For example, the peer nodes 1702 may average or perform some other common calculation on the model weights (including their own updated ML model information) previously obtained by the respective peer nodes during the synchronous model update exchange 1706. Thus, the aggregated ML model information generated by the peer nodes may be identical. After the peer node 1702 generates the aggregated ML model information, the peer node may determine that the loss function associated with the updated ML model is no longer minimized, or that a predetermined number of FL iterations have not occurred. Thus, the peer node 1702 may repeat the aforementioned process in subsequent FL iterations, i.e., perform individual ML training based on their respective data sets; perform scheduled synchronous model update exchanges; and aggregate the obtained ML model updates from other peer nodes.

[0146] The peer node may continue to repeat the foregoing process in multiple FL iterations until the minimization of the loss function associated with the aggregate ML model is ultimately achieved, the various target performance metrics are met, or a predetermined number of FL iterations have occurred. For example, if a peer node determines that a classification accuracy of 75% or more has been achieved after one or more FL iterations, or if a peer node determines that it has performed a certain number of FL iterations, the peer node may stop performing model training, updating exchanges, or aggregation regardless of the state of other peer nodes. Therefore, other peer nodes seeking different target performance or different numbers of FL iterations may continue to perform the foregoing process until their corresponding conditions are met.

[0147] Fig.18An example 1800 of a signaling process is illustrated in which peer nodes 1802 (nodes 1802a, 1802b, 1802c, 1802d) may perform peer FL in an asynchronous manner without designating or electing a leader node. Peer nodes 1802 (e.g., UEs) may be, for example, neighboring follower nodes in a peer-to-peer network. Fig.15 Unlike the example of , in this example, peer node 1802 may act as its own aggregator of ML model updates received from other peer nodes.

[0148] In addition, peer nodes synchronously exchange model updates with other peer nodes. Fig.17 Unlike the example of , the aggregation of model updates by one node is asynchronous with respect to other nodes. For example, in this process, one peer node (e.g., a random node) at a time may request model updates from other peer nodes and aggregate these model updates to generate a single updated ML model, rather than multiple peer nodes operating simultaneously. Furthermore, in this example, the requesting peer node may receive a model update with a performance metric that specifically meets a threshold performance level, which is different from Fig.17 , in which a peer node receives model updates from other peer nodes in its neighbor list regardless of model performance. For example, the requesting node may specifically receive model updates from peer nodes that have models associated with a classification accuracy above 75% or other threshold, or with some other relatively good performance or evaluation metric. Thus, the requesting peer node may not necessarily receive updates from every peer node in its neighbor list, and the aggregation of model updates is different from Fig.17 This method can lead to more accurate models more quickly than the previous one.

[0149] Initially, at step 1804, the peer node 1802 may use its respective data set to initialize and train its own ML model in parallel. For example, the peer node may initialize its respective ML model, which may include, for example, configuring the ML task (e.g., object detection), the neural network (e.g., CNN), the number of neurons and synapses, random weights and biases, the model algorithm (e.g., logistic regression), and other model parameters. After initialization, the peer node 1802 may perform various ML model trainings based on its respective data set. For example, the respective node may train its ML model using the observed data to identify optimal model parameters for minimizing a loss function, such as with respect to Figure 6 The training performed by the peer node may continue until a minimization of a loss function associated with the corresponding ML model is achieved, or until a predetermined number of iterations or training sessions have been performed for the peer node.

[0150] In addition, while training their respective ML models, the peer nodes 1802 can track performance metrics of their respective ML models. For example, the peer nodes can respectively determine the classification accuracy of their respective models after a predetermined number of training sessions have occurred. Alternatively, the peer nodes can determine log loss, confusion matrix, or other evaluation metrics that indicate the current performance of their respective ML models.

[0151] After the peer node 1802 completes or stops its model training, at step 1806, one of the peer nodes 1802 (node ​​1802a or N1 in the illustrated example) transmits a request for its ML model update of the ML model 1809 (respectively ML models 1809a, 1809b, 1809c) to other peer nodes during FL iterations. For example, the peer node transmitting the request may be a random peer node selected among the peer nodes 1802 in the network. The peer node receiving the request may determine whether to provide its corresponding ML model update based on its corresponding performance or evaluation metric. For example, if the peer node determines that its performance metric meets a preconfigured threshold (e.g., a classification accuracy of 75% or greater), then at step 1808, the peer node may provide its updated ML model information to the requesting node. In order to reduce the transmission traffic, the information may include, for example, modified weights, weights that change beyond a threshold, or multiplicative or additive increments or percentages of these weights. In contrast, a peer node with a performance metric that falls below a preconfigured threshold may refrain from providing its updated ML model information to the requesting node, or otherwise ignore the request. Fig.18 In the illustrated example, N3 (node ​​1802c) and N4 (node ​​1802d) have high performance metrics and therefore respond to the request of N1 (node ​​1802a) with their model updates, but N2 (node ​​1802b) has a low performance metric and therefore does not respond to the request.

[0152] In response to receiving updated ML model information from one or more of the peer nodes 1802 having performance metrics that meet a threshold, at step 1810, the requesting peer node (N1 in this example) may aggregate these updates to generate an updated ML model 1811. For example, the requesting peer node may average the model weights obtained from other peer nodes in response to its request or perform some other calculation. After the requesting peer node obtains the aggregated ML model, the node may determine that the loss function associated with the aggregated ML model is no longer minimized or that a predetermined number of FL iterations have not occurred. Therefore, the requesting node may continue to perform individual ML training based on its corresponding data set until the node is triggered to perform another request in a subsequent FL iteration (e.g., in response to a random selection or other event). Alternatively, if the loss function is minimized or a certain number of FL iterations for the node have occurred, the requesting node may terminate the model training process.

[0153] Meanwhile, after responding to the requesting node (and regardless of its subsequent actions), another node in the peer nodes 1802 (node ​​1802b or N2 in the illustrated example) may transmit a request for its corresponding ML model update to other peer nodes (including node 1802a or N1) during subsequent FL iterations. For example, the new peer node transmitting the request may be another random peer node selected among the peer nodes 1802 in the network. The peer node 1802 receiving the request may similarly provide its model update according to its corresponding performance metric to the requesting node for ML model aggregation, and the requesting node may similarly continue ML training or terminate ML training based on the loss function, the number of FL iterations, or other factors. The process may be similarly repeated for other peer nodes, where the peer nodes may individually transmit requests for model updates at different times while the other peer nodes continue to monitor their model performance metrics or the number of FL iterations.

[0154] 19A to 19D 1900 is a flow chart of a method of wireless communication. The method may be performed by a UE (e.g., UE 104, 904, 1002; device 410, 450; network node 706, 802, 852, 1102, 1104, 1202, 1204, 1402, 1404, 1416, 1502, 1504, 1602, 1605, 1702, 1802; cluster leader 908; leader 1004; device 2002). For example, the method may be performed by a controller / processor 459, 475 coupled to a memory 460, 476 of the device 410, 450. Optional aspects are illustrated by dashed lines. The method allows the UE to discover other network nodes (e.g., other UEs) and perform ML model training in a clustered FL or peer FL environment through various signaling procedures between the UE and the network node.

[0155] See also Fig.19A At 1902, the UE may provide a neighbor discovery message to the network node prior to the sending of the first message (at 1910). For example, 1902 may be performed by neighbor discovery component 2040. For example, see Fig.11 , the first node 1102 (node ​​1) may provide the ND message 1106 to the second node 1104 (node ​​2). For example, see Figure 4 , the controller / processor 475 in the device 410 (e.g., the first node) may provide the first message to the device 450 (e.g., the second node) via the TX processor 416, which may send the first message to the device 450 via the antenna 420. The ND message 1106 may be provided before the message 1114 (the first message in this example).

[0156] In one example, the UE may provide neighbor discovery messages periodically or in response to an event trigger. For example, see Fig.11 , the first node 1102 may provide ND message 1106 periodically (e.g., at a preconfigured periodicity) or in response to an event. For example, node 1 may be triggered to transmit ND message 1106 upon receiving a BSM indicating the presence of another node (e.g., a neighboring VUE).

[0157] In one example, the UE may provide a neighbor discovery message to a network node in a broadcast or multicast. For example, see Fig.11 , the ND message 1106 may be broadcast to solicit responses from any node (e.g., VUE) that is capable of decoding the ND message. Alternatively, the ND message 1106 may be multicast, for example, to nodes that provide the BSM to Node 1. The ND message 1106 may also be transmitted using multicast option 1 to enhance the reliability of the ND message 1106 (e.g., Node 1 may indicate in the second stage SCI the distance at which Node 1 expects to receive NACKs from other nodes that failed to decode the message).

[0158] At 1904, the UE may obtain a neighbor discovery response message from the network node in response to the neighbor discovery message, wherein the neighbor discovery response message indicates that the UE is an asymmetric neighbor of the network node. For example, 1904 may be performed by a neighbor discovery component 2040. For example, in response to receiving an ND message 1106 from node 1, node 2 may add node 1 to a neighbor list, a communication graph, or other data structure (stored at node 2) indicating that node 1 is an asymmetric neighbor. Node 2 may indicate node 1 as an "asymmetric" neighbor because at this time node B knows its communication capabilities with node 2, but node 1 does not yet know its communication capabilities with node 2. Node 2 may then provide an NDR message 1108 (e.g., via unicast) confirming that node 1 is an asymmetric neighbor of node 2. Therefore, the first node 1102 may obtain the NDR message 1108 from the second node 1104. For example, see Figure 4 , the controller / processor 475 in the device 410 may obtain the NDR message from the device 450 via the RX processor 470 , which may receive the NDR message from the device 450 via the antenna 420 .

[0159] At 1906, the UE may provide an acknowledgment of the neighbor discovery response message to the network node, wherein the acknowledgment indicates that the network node is a symmetric neighbor of the UE. For example, 1906 may be performed by neighbor discovery component 2040. For example, see Fig.11 In response to receiving the NDR message 1108, node 1 may add node 2 to a neighbor list, communication graph, or other data structure (stored at node 1) indicating that node 2 is a symmetric neighbor. Node 1 may indicate node 2 as a "symmetric" neighbor because both node 1 and node 2 are now aware of their ability to communicate with the other node. Node 1 may then provide a message 1110 to node 2 (e.g., via unicast) confirming that node 2 is a symmetric neighbor of node 1. For example, see Figure 4 , the controller / processor 475 in the device 410 (e.g., the first node) may provide an acknowledgment to the device 450 (e.g., the second node) via the TX processor 416, which may send the acknowledgment to the device 450 via the antenna 420.

[0160] At 1908, the UE may obtain a confirmation message from the network node in response to the confirmation, wherein the confirmation message indicates that the UE is a symmetric neighbor of the network node. For example, 1908 may be performed by neighbor discovery component 2040. For example, see Fig.11 In response to receiving message 1110, node 2 may update the state of node 1 in its data structure to similarly indicate that node 1 is now a symmetric neighbor. Node 2 may then transmit a message 1112 to node 1 (e.g., via unicast) confirming that node 1 has become a symmetric neighbor of node 2. Thus, first node 1102 may obtain message 1112 from second node 1104. For example, see Figure 4 , the controller / processor 475 in the device 410 may obtain the message from the device 450 via the RX processor 470 , which may receive the message from the device 450 via the antenna 420 .

[0161] At 1910, the UE may provide a first message including first federated learning (FL) information of the device to the network node. For example, 1910 may be performed by the neighbor discovery component 2040. The first FL information may include at least one of the following: a machine learning task of the UE, an available sensor coupled to the UE for the machine learning task, an available ML model associated with the machine learning task, or an available computing resource of the UE for the machine learning task. In an example, the first message may be in response to the confirmation message obtained at 1908. For example, see Fig.11 , after Node 1 and Node 2 have designated each other as neighbors (i.e., symmetric neighbors), Node 1 may send a message 1114 (in this example, a first message) to Node 2 indicating information related to its model training. This information may include, for example, the ML tasks that Node 1 is participating in or interested in participating in; the available sensors at Node 1 and their associated data input formats; the available ML models in training, including model state, model architecture, model training parameters, and current performance (e.g., accuracy and loss); or available computing resources (e.g., whether Node 1 includes a CPU or GPU, information about its clock speed, available memory, etc.). Message 1114 may include any combination of the foregoing, as well as other information.

[0162] At 1912, the UE obtains a second message including second FL information of the network node. For example, 1912 can be performed by neighbor discovery component 2040. In one example, the second message can be in response to the first message. For example, referring to Fig.11 , in response to receiving message 1114 including information related to model training, node 2 associates the information with node 1 in its neighbor list, communication graph, or other data structure. Node 2 may then transmit message 1116 indicating information related to model training to node 1. Thus, the first node 1102 may obtain message 1116 (a second message in this example) from the second node 1104. The information may include, for example: ML tasks that node 2 is participating in or interested in participating in; available sensors at node 2 and their associated data input formats; available ML models in training, including model state, model architecture, model training parameters, and current performance (e.g., accuracy and loss); and available computing resources (e.g., whether node 2 includes a CPU or GPU, information about its clock speed, available memory, etc.). Thus, message 1116 may include the same type of information as message 1114, but for node 2 instead of node 1.

[0163] In one example, the first message (including the first FL information) may be a neighbor discovery message. Fig.12 , the first node 1202 (node ​​1) may send an ND message 1206 (a first message in this example) to the second node 1204 (node ​​2), similar to Fig.11 However, Fig.11 Compared to the example of , in this example, ND message 1206 also indicates model training related information to node 2. This information may include, for example, the ML tasks that node 1 is participating in or interested in participating in; the available sensors at node 1 and their associated data input formats; the available ML models in training, including model state, model architecture, model training parameters, and current performance (e.g., accuracy and loss); and available computing resources (e.g., whether node 1 includes a CPU or GPU, information about its clock speed, available memory, etc.). Therefore, ND message 1206 may include information related to the model training in Fig.11 Similar types of information as those provided in message 1114.

[0164] In one example, the second message may be a neighbor discovery response message based on the first FL information. Fig.12 In response to receiving (e.g., successfully decoding) an ND message 1206 from node 1, node 2 may determine whether to add node 1 to its neighbor list, communication graph, or other data structure based on the model training related information in the ND message 1206. For example, if the information indicates, for example, that node 1 has the same or similar ML model (e.g., classification model) or the same or similar computing capabilities (e.g., memory) as node 2, node 2 may determine to add node A to its data structure. In such a case, node 2 may provide an NDR message 1208 to node 1 (e.g., via unicast), which not only confirms node 1 as a neighbor of node 2, but also indicates model training related information of node 2. The information may include, for example: ML tasks that node 2 is participating in or interested in participating in; available sensors at node 2 and their associated data input formats; available ML models in training, including model status, model architecture, model training parameters, and current performance (e.g., accuracy and loss); and available computing resources (e.g., whether node 2 includes a CPU or GPU, information about its clock speed, available memory, etc.). Thus, the first node 1202 may obtain an NDR message 1208 (a second message in this example) from the second node 1204. The NDR message 1208 may include the same type of information as the ND message 1206, but is intended for node 2 instead of node 1.

[0165] At 1914, the UE can provide an acknowledgement to the network node in response to the second message based on the second FL information. For example, 1914 can be performed by neighbor discovery component 2040. For example, see Fig.12 , in response to receiving the NDR message 1208 including model training related information, node 1 may similarly determine whether to add node 2 to its neighbor list, communication graph, or other data structure based on the model training related information. For example, if the information indicates that, for example, node 2 has the same or similar ML model or the same or similar computing capabilities as node 1, node 1 may determine to add node 2 to its data structure. In such a case, node 1 may then provide node 2 with a message 1210 (e.g., via unicast) confirming that node 2 is a neighbor of node 1. For example, see Figure 4 , the controller / processor 475 in the device 410 (e.g., the first node) may provide an acknowledgment (message 1210) to the device 450 (e.g., the second node) via the TX processor 416, which may send the acknowledgment to the device 450 via the antenna 420.

[0166] At 1916, the UE may provide a second neighbor discovery response message to the second network node in response to the second neighbor discovery message from the second network node, and at 1918, the UE may discard the association of the second network node as a neighbor node in response to a lack of acknowledgment of the second neighbor discovery response message within a timeout interval. For example, 1916 and 1918 may be performed by neighbor discovery component 2040. For example, see Fig.12 , before or after providing ND message 1206 to node 2 and obtaining NDR message 1208 from node 2, node 1 may receive ND request 1212 from another node 1214 (node ​​3) and transmit NDR message 1216 in response to ND request 1212. For example, see Figure 4 , the controller / processor 475 in the device 410 (node ​​1 in this example) may obtain an ND request (second neighbor discovery message) from the device 450 (node ​​C in this example) via the RX processor 470, which may receive the ND request from the device 450 via the antenna 420, and the controller / processor 475 may store an indication of the device 450 as a neighbor node in its memory 476. The controller / processor 475 may then provide an NDR message (second neighbor discovery response message) to the device 450 via the TX processor 416, which may send the NDR message to the device 450 via the antenna 420. However, if node 1 fails to receive an acknowledgment of the NDR message 1216 from node 3 within the timeout interval 1218 (for example, if node 3 disregards or ignores the NDR message 1216), then at step 1220, node 1 may discard any associated information of node 3 from its neighbor list, communication graph, or similar data structure. For example, see Figure 4, the controller / processor 475 in the device 450 may erase or overwrite the previously stored indication of the device 410 (node ​​3) as a neighbor node in the memory 476.

[0167] See also Fig.19B , at 1920, the flow chart diverges depending on whether the UE is a candidate for becoming a leader of the FL cluster or peer network by election or self-designation. If the UE is not a candidate for election as a leader, the UE may perform steps 1922, 1924, and 1926. If the UE is a candidate for election as a leader, the UE may perform steps 1928, 1930, 1932, and 1934. If the UE is a self-designated candidate to become a leader, the UE may perform step 1936. If the UE is not a self-designated candidate to become a leader, the UE may perform steps 1938 and 1940.

[0168] At 1922, the UE may obtain a third message from the network node indicating that the network node is a candidate for election as a leader of the FL cluster or peer network. For example, 1922 may be performed by the cluster formation component 2042. For example, see Fig.13 , the follower node 1326 (e.g., UE) may obtain a message 1324 from the candidate node 1322 indicating the candidacy of the candidate node 1322. For example, see Figure 4 , the controller / processor 475 in the device 410 (in this example, the follower node) may obtain the candidate qualification message from the device 450 (in this example, the candidate node) via the RX processor 470, which may receive the candidate qualification message from the device 450 via the antenna 420. The candidate node 1322 is a network node that competes with other candidate nodes in the election to become a leader node. The leader node is configured to aggregate the ML model updates from the follower nodes in the FL for a period of time (a timeout period or period as a leader). The leader node may be a node such as Fig. 9 The cluster leader in the clustered FL architecture exemplified in , or a Fig.10 A peer leader in a peer-to-peer FL network or architecture illustrated in FIG. 1324 . Follower nodes 1326 are participating or learning nodes in FL that train ML models and provide updates to the corresponding leaders.

[0169] At 1924, the UE may provide, in response to the third message, to the network node a fourth message indicating a vote for the network node as a leader. For example, 1924 may be performed by cluster formation component 2042. For example, see Fig.13During election, a node in follower state 1302 (e.g., follower node 1326) may vote for a node in candidate state 1306 (e.g., based on majority rule). Thus, in response to follower node 1326 receiving a candidacy message and potentially other candidacy messages from other candidate nodes, the follower node may provide a message 1328 indicating a vote for candidate node 1322. For example, see Figure 4 , the controller / processor 475 may provide a voting message to the device 450 (candidate node) via the TX processor 416 , which may send the voting message to the device 450 via the antenna 420 .

[0170] At 1926, the UE may obtain, in response to the fourth message, from the network node a fifth message indicating that the network node is a leader of a FL cluster or a peer network including the device and the network node. For example, 1926 may be performed by cluster formation component 2042. For example, see Fig.13 , in response to receiving message 1328 from follower node 1326, candidate node 1322 may receive a majority of votes or a configured or preconfigured number of votes exceeding a threshold. Thus, the candidate node may win election and become a leader node (e.g., via transition 1318). The leader node may become an ML model aggregator for a cluster or peer network of follower nodes that have provided voting messages to the node. The leader node may also transmit a message 1330 to follower nodes (including follower node 1326) and other candidate nodes indicating its status as a leader node for a period of time or deadline 1332. Thus, a follower node (e.g., UE) may obtain message 1330 in response to message 1328. For example, see Figure 4 , the controller / processor 475 in device 410 (a follower node in this example) can obtain a leader message from device 450 (a leader node in this example) via RX processor 470, which can receive the leader message from device 450 via antenna 420.

[0171] At 1928, the UE may provide a third message to the network node indicating that the device is a candidate for election as a leader of the FL cluster or peer network. For example, 1928 may be performed by cluster formation component 2042. For example, see Fig.13 , a candidate node 1322 (e.g., a UE) may provide a message 1324 indicating the candidacy of the candidate node 1322 to a follower node 1326. For example, see Figure 4, the controller / processor 475 may provide a candidacy qualification message to the device 450 (follower node) via the TX processor 416, which may send the candidacy qualification message to the device 450 via the antenna 420. The candidate node 1322 is a network node that competes with other candidate nodes in the election to become a leader node. The leader node is configured to aggregate ML model updates from follower nodes in the FL for a period of time (a timeout period or period as a leader). The leader node may be a node such as Fig. 9 The cluster leader in the clustered FL architecture exemplified in , or a Fig.10 A peer leader in a peer-to-peer FL network or architecture illustrated in FIG. 1324 . Follower nodes 1326 are participating or learning nodes in FL that train ML models and provide updates to the corresponding leaders.

[0172] At 1930, the UE may obtain, in response to the third message, from the network node a fourth message indicating a vote for the device as a leader. For example, 1930 may be performed by cluster formation component 2042. For example, see Fig.13 During election, a node in follower state 1302 (e.g., follower node 1326) may vote (e.g., based on majority rule) for a node in candidate state 1306. Thus, in response to follower node 1326 receiving a candidacy message and potentially other candidacy messages from other candidate nodes, candidate node 1322 may obtain a message 1328 from follower node 1326 indicating a vote for candidate node 1322. For example, see Figure 4 , the controller / processor 475 in device 410 (a candidate node in this example) can obtain a voting message from device 450 (a follower node in this example) via RX processor 470, which can receive the voting message from device 450 via antenna 420.

[0173] At 1932, the UE may provide a fifth message indicating that the device is a leader of a FL cluster or a peer network including the device and the network node in response to the fourth message. For example, 1932 may be performed by a cluster forming component 2042. For example, see Fig.13, in response to receiving message 1328 from follower node 1326, candidate node 1322 may receive a majority of votes or a configured or preconfigured number of votes exceeding a threshold. Thus, the candidate node may win election and become a leader node (e.g., via transition 1318). The leader node may become an ML model aggregator for a cluster or peer network of follower nodes that have provided voting messages to the node. The leader node may also transmit messages 1330 to follower nodes (including follower node 1326) and other candidate nodes indicating its status as a leader node for a period of time or duration 1332. For example, see Figure 4 , the controller / processor 475 may provide a leader message to the device 450 (follower node) via the TX processor 416 , which may send the leader message to the device 450 via the antenna 420 .

[0174] At 1934, the UE may provide a sixth message after the term as a leader indicating the end of the term. For example, 1934 may be performed by cluster formation component 2042. For example, see Fig.13 , the leader node may remain in the leader state 1316 (as a leader) for a timeout period or term, after which the node may change back to the follower state 1302, as illustrated by transition 1320, and a new leader node may be elected. Additionally, once the leader node's term 1332 ends, the node may transmit a message 1334 to the follower nodes in its cluster or peer network indicating the end of its term. For example, see Figure 4 , the controller / processor 475 may provide a deadline end message to the device 450 (follower node) via the TX processor 416 , which may send the deadline end message to the device 450 via the antenna 420 .

[0175] At 1936, the UE may provide confirmation to the network node in response to the second message indicating that the network node is in the FL cluster and that the UE is the FL cluster leader of the FL cluster. For example, 1936 may be performed by cluster formation component 2042. In this example, the first message provided at 1910 may also indicate that the UE is a candidate to become the FL cluster leader of the FL cluster, and the second message obtained at 1912 may also include a request from the network node to join the FL cluster. For example, see Fig.14 Initially, the first node 1402 sends a message 1406 (a first message in this example) indicating that the first node 1402 is interested in recruiting other nodes to form or join a cluster led by the first node. The message 1406 may indicate model training related information of the first node 1402 (e.g., the message 1406 may include information related to Fig.11 Message 1114 or Fig.12ND message 1206 of the present invention). In response to receiving the recruitment message, the second node 1404 determines to form or join a cluster led by the first node 1402, and therefore the second node may provide a message 1408 (a second message in this example) to the first node 1402 requesting to subscribe to or join its cluster (e.g., via unicast). The message 1408 may also indicate model training-related information for the second node 1404 (e.g., message 1408 may include the same type of information as message 1406, but for the second node 1404 rather than the first node 1402). In response to receiving the message 1408, the first node 1402 may similarly determine to allow the second node 1404 to join its cluster based at least in part on the model training-related information indicated in the message 1408. In this case, the first node 1402 may provide a message 1410 confirming that the second node 1404 is allowed to join the cluster led by the first node 1402. For example, see Figure 4 , the controller / processor 475 may provide a confirmation message (message 1410) to the device 450 (second node) via the TX processor 416, which may send the confirmation message to the device 450 via the antenna 420.

[0176] At 1938, the UE may obtain a third message indicating that the second network node is a candidate to become a first FL cluster leader of the first FL cluster, and at 1940, the UE may provide a fourth message indicating a request to join the first FL cluster. For example, 1938, 1940 may be performed by cluster formation component 2042. In response to the lack of an acknowledgement of the fourth message from the second network node within the timeout window, the first message provided to the network node at 1910 may request to join the second FL cluster or indicate that the device is a candidate to become a second FL cluster leader of the second FL cluster. For example, see Fig.14 , the second node 1404 (a UE in this example) may initially obtain from the first node 1402 (a second network node in this example) an indication that it is a cluster (eg, Fig. 9 The first node 1402 sends a message 1406 (the third message in this example) requesting the first node 1402 to join its cluster leader, and then sends a message 1408 (the fourth message in this example) requesting the first node 1402 to join its cluster. Figure 4, the controller / processor 475 in the device 410 (UE in this example) may obtain a recruitment message (message 1406) from the device 450 (the second network node in this example) via the RX processor 470, which may receive the recruitment message from the device 450 via the antenna 420. The controller / processor 475 may also provide a subscription message (message 1408) to the device 450 (the second network node) via the TX processor 416, which may send the subscription message to the device 450 via the antenna 420. If the second node 1404 fails to receive the message 1410 (acknowledgement in this example) from the first node 1402 within the timeout window 1412, the second node 1404 may send a message 1418 (a first message in this example) requesting to subscribe or join the cluster led by the third node 1416 after the timeout window 1412 expires. Alternatively, the second node 1404 may send a message 1420 (a first message in this further example) requesting that other nodes be recruited to a cluster led by the second node 1404 (similar to the messages 1406, 1414).

[0177] See also Fig.19C At 1942, the UE provides an ML model information update to the network node based on the first FL information and the second FL information. For example, 1942 can be performed by the FL training component 2044. In one example, the ML model information update includes at least one of the following: a weight, a gradient, or a scaling factor. The scaling factor can be, for example, a multiplicand (e.g., the update can be a multiplicative increment) or a summand (e.g., the update can be an additive increment). For example, the controller / processor 475 of the device 410 (e.g., a UE, which may be, for example, a participant node 1502, a leader node 1504, 1602, or a peer node 1702, 1802) may provide ML model information updates (e.g., weights 616, biases 618, subsampling or scaling factors in the subsampling layer 608, or other updated ML model information after minimization of the loss function) to the device 450 (e.g., a network node, which may be, for example, a leader node 1504, 1602, a participant node 1502, or a peer node 1702, 1802) via the TX processor 416, which may send the ML model information updates to the device 450 via the antenna 420. To reduce transmission traffic, the updated ML model information may include, for example, modified weights, weights that have changed by more than a threshold, or multiplicative or additive increments or percentages of these weights. The UE may provide the update to the network node based on the first FL information previously provided in the first message at 1910 and the second FL information previously obtained in the second message at 1912. Fig.11 or Fig.12 The neighbor discovery process or Fig.14After the simultaneous neighbor discovery and cluster formation process, the network nodes are in the UE's neighbor list, communication graph, or other data structure, and the UE may provide ML model information updates to the aforementioned network nodes.

[0178] In one example, see Fig.15 , during a given FL iteration t, the corresponding node k may train the local ML model 1511 to identify the optimal model parameters (e.g., weights 616, biases 618 or subsampling factors or other ML model information) for minimizing the loss function F(WtCik) or Fk(Wtk), such as for Figure 6 The participant node 1502 (an example of a UE) can then provide these optimized ML model weights and other information (an example of ML model information update) to the leader node 1504 (an example of a network node) during the intra-cluster FL training. Similarly, in another example, see Fig.16 , the leader node 1602 (another example of a UE) may provide the locally updated ML model information (another example of an ML model information update) to the FL parameter server 1604 (another example of a network node) for inter-cluster FL training. In addition, after the leader node 1602 obtains the globally updated ML model information across the cluster from the FL parameter server 1604, the leader node may provide the globally updated ML model information (another example of an ML model information update) to the corresponding participant nodes (another example of a network node) to further refine the local ML model through additional intra-cluster FL training. In addition, in another example, see Fig.17 , peer node 1702 (another example of a UE) may provide its updated ML model (another example of an ML model information update) to other peer nodes (another example of a network node) in its peer network (e.g., nodes in a neighbor list of the corresponding node) in a synchronous model update exchange 1706, after which peer node 1702 may have the updated ML model information (e.g., updated model weights) of the other peer nodes as well as its own updated ML model information. Similarly, in another example, see Fig.18 , peer node 1802 (another example of a UE) may provide a model update (another example of an ML model information update) having a performance metric that specifically meets a threshold performance level to a requesting peer node (another example of a network node) in an asynchronous manner.

[0179] At 1944, the UE may obtain an ML model configuration including initial weights from the network node when the network node is a FL cluster leader of a FL cluster including the device and the network node. For example, 1944 may be performed by FL training component 2044. In this example, the ML model information update provided to the network node at 1942 may include an update to the initial weights. For example, see Fig.15 At step 1508, the participant node (UE) may obtain the ML model parameters including random weights (initial weights) initialized by the leader node (at 1506) from the leader node 1504 (a network node in this example). For example, see Figure 4 , the controller / processor 475 in the device 410 (UE) may obtain the ML model configuration (ML model parameters) from the device 450 (leader node) via the RX processor 470, which may receive the ML model configuration from the device 450 via the antenna 420. The leader node 1504 may be, for example, a cluster including the participant nodes 1502 (e.g., Fig.16 After receiving the ML model parameters from the leader node 1504 and configuring its local ML model accordingly, at step 1510, the participant node 1502 may perform local ML model training based on its corresponding data set, such as for Figure 6 As described above, to identify the optimal model weights to be applied to their respective neural networks. Thereafter, at step 1512, the participant nodes 1502 may provide the optimized ML model weights and other information to the leader node 1504. For example, see Figure 4 , the controller / processor 475 in the device 410 (UE) can provide ML model information updates (optimized ML model weights and other information) to the device 450 (leader node) via the TX processor 416, which can send the ML model information updates to the device 450 via the antenna 420.

[0180] At 1946, the UE may obtain, from the FL cluster leader, an aggregated ML model information update including an aggregate of the ML model information update and a second ML model information update of a second network node in the FL cluster. For example, 1946 may be performed by the FL training component 2044. For example, see Fig.15 , the leader node 1504 may aggregate at step 1514 the data from the participant nodes 1502 (UE) and the same cluster (e.g., Fig.16The leader node 1504 may then transmit the aggregated ML model information (e.g., averaged or otherwise calculated updated model weights or other information) to the participant nodes for further local ML model training. Thus, the participating nodes may obtain aggregated ML model information updates from the leader node. For example, see Figure 4 , the controller / processor 475 in the device 410 (UE) can obtain the aggregated ML model information update (aggregated ML model information or updated ML model) from the device 450 (leader node) via the RX processor 470, and the RX processor can receive the aggregated ML model information update from the device 450 via the antenna 420.

[0181] In one example, the aggregated ML model information update may further include a second aggregation of the ML model information update and a third ML model information update of a third network node in the second FL cluster. Fig.16 , the leader node 1602 may communicate the locally updated ML model information (intra-cluster) to the FL parameter server 1604 for inter-cluster FL training. The FL parameter server 1604 may aggregate this information received from the corresponding cluster leaders (e.g., in different clusters in cluster 1606) to generate a global (multi-cluster) ML model update, after which the FL parameter server may provide the globally updated ML model information to the corresponding leader nodes. These leader nodes 1602 may then provide the globally updated ML model information to their corresponding participant nodes 1605 to further refine the local ML model through additional intra-cluster FL training. Therefore, when the participating node (UE) obtains the aggregated ML model information from the leader node (the second network node), the information (globally updated ML model information) may include an aggregation (second aggregation) of updates from the FL parameter server to participant nodes in one of the clusters 1606 and updates from different participant nodes (in this example, the third network node) in another cluster (the second FL cluster) in the cluster 1606.

[0182] At 1948, the UE may obtain a second ML model information update from the network node when the UE is a FL cluster leader of the FL cluster including the UE and the network node, wherein the ML model information update includes an aggregation of the second ML model information update and the third ML model information update of the second network node in the FL cluster. For example, 1948 may be performed by the FL training component 2044. For example, see Fig.15, at step 1512, the participant nodes 1502 may upload their corresponding updated ML model parameters to the leader node 1504. For example, the participant nodes 1502 may send optimized ML model weights and other information to the leader node 1504. After receiving these ML model information updates from the participant nodes 1502, at step 1514, the leader node 1504 may aggregate the updates to generate an updated ML model 1515 for the node. Thus, the UE( Fig.16 The leader node or leader of the cluster 1606 in the UE may obtain its respective updated ML model parameters such as optimized ML model weights and other information (second ML model information update) from the participant nodes (network nodes in this example) in the cluster led by the UE. Fig.16 , the leader node 1602 may communicate the locally updated ML model information (within the cluster) to the FL parameter server 1604 for inter-cluster FL training. For example, at step 1608, the leader node 1602 of the corresponding cluster may transmit its updated ML model of its cluster to the FL parameter server 1604, the updated ML model including one or more previous aggregations 1607 of the local ML model updates 1609 from the follower nodes. Therefore, the locally updated ML model information (ML model information update) provided by the UE (leader node) (to the FL parameter server) may include an aggregation of the previous aggregations of the local ML model updates (including the third ML model information update) of the follower or participant nodes (including the network nodes and the second network nodes in the FL cluster).

[0183] At 1950, when the device is a FL cluster leader of a FL cluster including the device and the network node, the UE may obtain, from the FL parameter network entity, an aggregated ML model information update including an aggregation of the ML model information update and a second ML model information update of a second network node in a second FL cluster, and at 1952, the UE may provide the aggregated ML model information update to the network nodes in the FL cluster. For example, 1950 and 1952 may be performed by the FL training component 2044. For example, see Fig.16, the leader node 1602 may communicate the locally updated ML model information (within the cluster) to the FL parameter server 1604 for inter-cluster FL training. The FL parameter server 1604 may aggregate the information received from the corresponding cluster leaders (e.g., in different clusters in the cluster 1606) to generate a global (multi-cluster) ML model update, after which the FL parameter server may provide the globally updated ML model information to the corresponding leader node. Thus, the leader node (UE) may obtain the globally updated ML model information (aggregated ML model information update) from the FL parameter server (in this example, the FL parameter network entity), which includes the aggregation of the locally updated ML model information (ML model information update provided to the FL parameter server) of the leader node in one cluster and the locally updated ML model information (second ML model information update) of the leader node in a different cluster (the second network node in the second FL cluster). These leader nodes 1602 may then provide the globally updated ML model information to their corresponding participant nodes 1605 to further refine the local ML model through additional intra-cluster FL training. Thus, the leader node (UE) may provide globally updated ML model information (aggregate ML model information updates) to participating nodes in its cluster (including network nodes). For example, the controller / processor 475 in the device 410 (UE) may provide information to the device 450 (network node) via the TX processor 416, which may send the information to the device 450 via the antenna 420.

[0184] See also Fig.19D At 1954, the UE may obtain a second ML model information update from the network node. For example, 1954 may be performed by the FL training component 2044. For example, see Fig.17 Initially, at step 1704, the peer node 1702 may use its respective data set to initialize and train its own ML model in parallel. For example, the respective node may use the observed data to train its ML model to identify optimal model parameters for minimizing a loss function, such as Figure 6 As described. After the peer node 1702 completes or stops its model training, the peer node 1702 may broadcast its updated ML model to other peer nodes in its peer network (e.g., nodes in the neighbor list of the corresponding node). These broadcasts may be scheduled so that a synchronous model update exchange 1706 may be performed between each peer node 1702. Therefore, the UE (peer node 1702) can obtain a second ML model information update (the updated ML model of the network node during the synchronous model update exchange 1706) from the network node (another peer node in the peer node 1702).

[0185] At 1956, the UE may provide an aggregated ML model information update including an aggregate of the ML model information update and the second ML model information update to the network node. For example, 1956 may be performed by the FL training component 2044. For example, see Fig.17 , after the synchronous model update exchange 1706, the peer node 1702 may have the updated ML model information (e.g., updated model weights) of other peer nodes as well as its own updated ML model information. The peer nodes 1702 may then aggregate their updates respectively to generate an updated global ML model 1708 shared among the peer nodes. For example, the peer nodes 1702 may average the model weights (including their own updated ML model information) previously obtained by the respective peer nodes during the synchronous model update exchange 1706 or perform some other common calculation. After the peer node 1702 generates the aggregated ML model information, the peer node may determine that the loss function associated with the updated ML model is no longer minimized or that a predetermined number of FL iterations have not occurred. Therefore, the peer node 1702 may repeat the aforementioned process in subsequent FL iterations, i.e., perform individual ML training based on its respective data set (at step 1704); perform the scheduled synchronous model update exchange; and aggregate the obtained ML model updates from other peer nodes. Thus, the UE (peer node) may provide to the network node (another peer node) (during a repetition of the foregoing process including another synchronous model update exchange) an aggregated ML model information update (aggregated ML model information or updated global ML model 1708) comprising an aggregation of the ML model information update (the updated ML model trained at step 1704) and the second ML model information update (the updated ML model of the network node during the synchronous model update exchange 1706).

[0186] At 1958, the UE may provide a request for a second ML model information update to the network node. For example, 1958 may be performed by the FL training component 2044. For example, see Fig.18 , at step 1806, one of the peer nodes 1802 (N1 in the illustrated example) transmits a request for its ML model update to the other peer nodes during the FL iteration. Therefore, the UE (peer node 1802) may provide a request for a second ML model information update (ML model update of the other peer nodes) to the network node (one of the other peer nodes) (illustrated at step 1806).

[0187] At 1960, the UE may obtain a second ML model information update (requested at 1958) in response to the network node having an ML model associated with a performance metric that satisfies a threshold. For example, 1960 may be performed by FL training component 2044. For example, see Fig.18, while training their respective ML models, peer nodes 1802 may track performance metrics of their respective ML models. For example, a peer node may separately determine the classification accuracy of its respective models after a predetermined number of training sessions have occurred. Alternatively, a peer node may determine a log loss, confusion matrix, or other evaluation metric indicative of the current performance of its respective ML model. Thereafter, the peer nodes 1802 (e.g., N2, N3, and N4) that receive the request at step 1806 (e.g., from N1) may determine whether to provide updates to their respective ML models based on their respective performance or evaluation metrics. For example, if a peer node determines that its performance metric satisfies a preconfigured threshold (e.g., a classification accuracy of 75% or greater), then at step 1808, the peer node may provide its updated ML model information 1809 to the requesting node. For example, at Fig.18 In the illustrated example of , N3 and N4 have high performance metrics and therefore respond to N1's request with their model updates. Therefore, the UE (requesting peer node, such as N1) may obtain second ML model information (responding to the corresponding ML model update of the peer node, such as N3, or updating ML model information 1809) in response to the network node (responding peer node, such as N3) having an ML model (responding to the respective ML model of the peer node) associated with a performance metric (e.g., an evaluation metric such as classification accuracy) that satisfies a threshold (e.g., 75% or greater).

[0188] In this example, the ML model information update provided at 1942 includes an aggregation of the second ML model information update obtained at 1960 and the third ML model information update from the second network node. Fig.18In response to receiving updated ML model information 1809 from one or more of the peer nodes 1802 (N3 and N4 in the illustrated example) having performance metrics that meet the threshold, at step 1810, the requesting peer node (N1 in this example) may aggregate these updates to generate an updated ML model 1811. For example, the requesting peer node may average the model weights obtained from other peer nodes in response to its request or perform some other calculation. After responding to the requesting node, another node (N2 in the illustrated example) of the peer nodes 1802 may transmit a request for its corresponding ML model update to other peer nodes (including N1) during subsequent FL iterations. The peer node 1802 receiving the request may similarly provide its model update to the requesting node according to its corresponding performance metric for ML model aggregation. For example, if N1 has a high performance metric, N1 may respond with its model update (including the previous aggregation). Thus, the ML model information update provided by the UE (the corresponding ML model update of the responding peer node, e.g., N1, in response to the request of N2) may include an aggregation of the second ML model information update (e.g., updated ML model information 1809 from N3) and the third ML model information update from the second network node (e.g., updated ML model information 1809 from N4).

[0189] At 1962, the UE may obtain a request for an ML model information update from the network node. For example, 1962 may be performed by the FL training component 2044. For example, see Fig.18 , at step 1806, one of the peer nodes 1802 (N1 in the illustrated example) transmits a request for its ML model update to other peer nodes (e.g., N2, N3, and N4) during the FL iteration. Therefore, the UE (peer node 1802, e.g., N3) may obtain a request for an ML model information update (responding to a corresponding ML model update of a peer node, e.g., N3, or updating ML model information 1809) from the network node (requesting peer node, e.g., N1) (illustrated at step 1806).

[0190] In this example, the ML model information update is associated with the ML model and is responsive to a performance metric of the ML model satisfying a threshold. Fig.18, while training their respective ML models, peer nodes 1802 may track performance metrics of their respective ML models. For example, a peer node may separately determine the classification accuracy of its respective models after a predetermined number of training sessions have occurred. Alternatively, a peer node may determine a log loss, confusion matrix, or other evaluation metric indicative of the current performance of its respective ML model. Thereafter, the peer nodes 1802 (e.g., N2, N3, and N4) that receive the request at step 1806 (e.g., from N1) may determine whether to provide updates to their respective ML models based on their respective performance or evaluation metrics. For example, if a peer node determines that its performance metric satisfies a preconfigured threshold (e.g., a classification accuracy of 75% or greater), then at step 1808, the peer node may provide its updated ML model information 1809 to the requesting node. For example, at Fig.18 In the illustrated example of , N3 and N4 have high performance metrics and therefore respond to N1's request with their model updates. Therefore, the ML model information update provided by the UE (the corresponding ML model update of the responding peer node, such as N3, in response to N1's request) is associated with the ML model (e.g., the classification model) and in response to the performance metric (e.g., classification accuracy) of the ML model meeting the threshold (e.g., 75% or greater).

[0191] At 1964, the UE may obtain from the network node an aggregated ML model information update including an aggregate of the ML model information update and a second ML model information update from the second network node. For example, 1964 may be performed by the FL training component 2044. For example, see Fig.18In response to receiving updated ML model information 1809 from one or more of the peer nodes 1802 (N3 and N4 in the illustrated example) having performance metrics that meet the threshold, at step 1810, the requesting peer node (N1 in this example) may aggregate these updates to generate an updated ML model 1811. For example, the requesting peer node may average the model weights obtained from other peer nodes in response to its request or perform some other calculation. After responding to the requesting node, another node in the peer nodes 1802 (N3 in this example) may transmit a request for its corresponding ML model update to other peer nodes (including N1) during subsequent FL iterations. The peer node 1802 receiving the request may similarly provide its model update to the requesting node according to its corresponding performance metric for ML model aggregation. For example, if N1 has a high performance metric, N1 may respond with its model update (including the previous aggregation). Thus, the UE (e.g., the new requesting peer node here, such as N3) may obtain, from a network node (e.g., the new responding peer node here, such as N1), an aggregated ML model information update (e.g., N3's updated ML model information 1809) including an aggregation of an ML model information update (e.g., N3's updated ML model information 1809) and a second ML model information update (e.g., N4's updated ML model information 1809) from a second network node (e.g., N1's previous aggregation of N3 and N4's updated ML model information 1809).

[0192] Fig. 202000 is an example of a hardware implementation for an apparatus 2002. The apparatus 2002 is a UE and includes a cellular baseband processor 2004 (also referred to as a modem) coupled to a cellular RF transceiver 2022 and one or more subscriber identity modules (SIM) cards 2020, an application processor 2006 coupled to a secure digital (SD) card 2008 and a screen 2010, a Bluetooth module 2012, a wireless local area network (WLAN) module 2014, a global positioning system (GPS) module 2016, and a power source 2018. The cellular baseband processor 2004 communicates with the UE 104 and / or the BS 102 / 180 via the cellular RF transceiver 2022. The cellular baseband processor 2004 may include a computer-readable medium / memory. The computer-readable medium / memory may be non-transitory. The cellular baseband processor 2004 is responsible for general processing, including executing software stored on the computer-readable medium / memory. The software, when executed by the cellular baseband processor 2004, causes the cellular baseband processor 2004 to perform the various functions described above. The computer-readable medium / memory may also be used to store data manipulated by the cellular baseband processor 2004 when executing the software. The cellular baseband processor 2004 also includes a receiving component 2030, a communication manager 2032, and a sending component 2034. The communication manager 2032 includes one or more of the illustrated components. The components within the communication manager 2032 may be stored in a computer-readable medium / memory and / or configured as hardware within the cellular baseband processor 2004. The cellular baseband processor 2004 may be a component of the device 410, 450, and may include a memory 460, 476 and / or at least one of the following: a TX processor 416, 468, an RX processor 456, 470, and a controller / processor 459, 475. In one configuration, the apparatus 2002 may be a modem chip and include only the baseband processor 2004, and in another configuration, the apparatus 2002 may be the entire UE (e.g., see Figure 4 Devices 410, 450) and include the aforementioned additional modules of apparatus 2002.

[0193] The communication manager 2032 includes a neighbor discovery component 2040 configured to provide a neighbor discovery message to the network node prior to the sending of the first message, e.g., as described in conjunction with 1902. The neighbor discovery component 2040 is further configured to obtain a neighbor discovery response message from the network node in response to the neighbor discovery message, wherein the neighbor discovery response message indicates that the device is an asymmetric neighbor of the network node, e.g., as described in conjunction with 1904. The neighbor discovery component 2040 is further configured to provide a confirmation of the neighbor discovery response message to the network node, wherein the confirmation indicates that the network node is a symmetric neighbor of the device, e.g., as described in conjunction with 1906. The neighbor discovery component 2040 is further configured to obtain a confirmation message from the network node in response to the confirmation, wherein the confirmation message indicates that the device is a symmetric neighbor of the network node, e.g., as described in conjunction with 1908. The neighbor discovery component 2040 is further configured to provide a first message including first federated learning (FL) information of the device to the network node, e.g., as described in conjunction with 1910. The neighbor discovery component 2040 is further configured to obtain a second message including second FL information of the network node, e.g., as described in conjunction with 1912. The neighbor discovery component 2040 is further configured to provide an acknowledgement to the network node in response to the second message based on the second FL information, e.g., as described in conjunction with 1914. The neighbor discovery component 2040 is further configured to provide a second neighbor discovery response message to the second network node in response to the second neighbor discovery message from the second network node, e.g., as described in conjunction with 1916. The neighbor discovery component 2040 is further configured to discard the association of the second network node as a neighbor node in response to a lack of acknowledgement of the second neighbor discovery response message within a timeout interval, e.g., as described in conjunction with 1918.

[0194] The communication manager 2032 also includes a cluster forming component 2042 configured to obtain a third message from the network node indicating that the network node is a candidate for election as a leader of the FL cluster or peer network, for example, as described in conjunction with 1922. The cluster forming component 2042 is also configured to provide the network node with a fourth message indicating a vote for the network node as a leader in response to the third message, for example, as described in conjunction with 1924. The cluster forming component 2042 is also configured to obtain from the network node a fifth message indicating that the network node is a leader of the FL cluster or peer network including the device and the network node in response to the fourth message, for example, as described in conjunction with 1926. The cluster forming component 2042 is also configured to provide to the network node a third message indicating that the device is a candidate for election as a leader of the FL cluster or peer network, for example, as described in conjunction with 1928. The cluster forming component 2042 is also configured to obtain from the network node a fourth message indicating a vote for the device as a leader in response to the third message, for example, as described in conjunction with 1930. The cluster forming component 2042 is further configured to provide, in response to the fourth message, a fifth message indicating that the device is a leader of a FL cluster or a peer network including the device and the network node, e.g., as described in conjunction with 1932. The cluster forming component 2042 is further configured to provide, after a period as a leader, a sixth message indicating an end of the period, e.g., as described in conjunction with 1934. The cluster forming component 2042 is further configured to provide a confirmation to the network node in response to the second message indicating that the network node is in the FL cluster and that the device is a FL cluster leader of the FL cluster, e.g., as described in conjunction with 1936. The cluster forming component 2042 is further configured to obtain a third message indicating that the second network node is a candidate to become a first FL cluster leader of the first FL cluster, e.g., as described in conjunction with 1938. The cluster forming component 2042 is further configured to provide a fourth message indicating a request to join the first FL cluster, e.g., as described in conjunction with 1940.

[0195] The communication manager 2032 also includes a FL training component 2044 configured to provide a machine learning (ML) model information update to the network node based on the first FL information and the second FL information, e.g., as described in conjunction with 1942. The FL training component 2044 is further configured to obtain, from the network node, an ML model configuration including initial weights when the network node is a FL cluster leader of an FL cluster including the device and the network node, wherein the ML model information update provided to the network node includes an update to the initial weights, e.g., as described in conjunction with 1944. The FL training component 2044 is further configured to obtain, from the FL cluster leader, an aggregated ML model information update including an aggregation of the ML model information update and a second ML model information update of a second network node in the FL cluster, e.g., as described in conjunction with 1946. The FL training component 2044 is further configured to, when the device is a FL cluster leader of a FL cluster including the device and the network node, obtain a second ML model information update from the network node, wherein the ML model information update includes an aggregation of the second ML model information update and the third ML model information update of the second network node in the FL cluster, e.g., as described in conjunction with 1948. The FL training component 2044 is further configured to obtain, from the FL parameter network entity, an aggregated ML model information update including an aggregation of the ML model information update and the second ML model information update of the second network node in the second FL cluster, e.g., as described in conjunction with 1950. The FL training component 2044 is further configured to provide the aggregated ML model information update to the network nodes in the FL cluster, e.g., as described in conjunction with 1952.

[0196] The FL training component 2044 is further configured to obtain a second ML model information update from the network node, e.g., as described in conjunction with 1954. The FL training component 2044 is further configured to provide an aggregated ML model information update comprising an aggregation of the ML model information update and the second ML model information update to the network node, e.g., as described in conjunction with 1956. The FL training component 2044 is further configured to provide a request for the second ML model information update to the network node, e.g., as described in conjunction with 1958. The FL training component 2044 is further configured to obtain the second ML model information update in response to the network node having an ML model associated with a performance metric that satisfies a threshold, wherein the ML model information update comprises an aggregation of the second ML model information update and a third ML model information update from the second network node, e.g., as described in conjunction with 1960. The FL training component 2044 is further configured to obtain a request for the ML model information update from the network node, wherein the ML model information update is associated with the ML model, and in response to the performance metric of the ML model satisfying the threshold, e.g., as described in conjunction with 1962. The FL training component 2044 is also configured to obtain, from the network node, an aggregated ML model information update comprising an aggregation of the ML model information update and a second ML model information update from a second network node, e.g., as described in conjunction with 1964.

[0197] The apparatus may include executing 19A to 19D The additional components of each box of the algorithm in the preceding flowchart. Therefore, 19A to 19D Each block in the aforementioned flow chart of can be performed by a component, and the apparatus may include one or more of these components. These components may be one or more hardware components, which are specifically configured to perform the process / algorithm, implemented by a processor configured to perform the process / algorithm, stored in a computer-readable medium so as to be implemented by a processor, or some combination thereof.

[0198] In one configuration, the device 2002 (and specifically, the cellular baseband processor 2004) includes a component for providing a first message including first federated learning (FL) information of the device to a network node; and a component for obtaining a second message including second FL information of the network node; wherein the component for providing is also configured to provide a machine learning (ML) model information update to the network node based on the first FL information and the second FL information.

[0199] In one configuration, the ML model information update includes at least one of: a weight; a gradient; or a scaling factor; and wherein the first FL information includes at least one of: a machine learning task of the device; an available sensor coupled to the device for the machine learning task; an available ML model associated with the machine learning task; or available computing resources of the device for the machine learning task; and wherein the device and the network node are user equipment (UE).

[0200] In one configuration, the means for providing is further configured to provide a neighbor discovery message to the network node prior to the sending of the first message.

[0201] In one configuration, the means for providing is further configured to provide the neighbor discovery message periodically or in response to an event trigger.

[0202] In one configuration, the means for providing is further configured to provide the neighbor discovery message to the network nodes in a broadcast or multicast.

[0203] In one configuration, the means for obtaining is further configured to obtain a neighbor discovery response message from the network node in response to the neighbor discovery message, wherein the neighbor discovery response message indicates that the apparatus is an asymmetric neighbor of the network node.

[0204] In one configuration, the means for providing is further configured to provide an acknowledgement of the neighbor discovery response message to the network node, wherein the acknowledgement indicates that the network node is a symmetric neighbor of the device.

[0205] In one configuration, the means for obtaining is further configured to obtain a confirmation message from the network node in response to the confirmation, wherein the confirmation message indicates that the apparatus is a symmetric neighbor of the network node.

[0206] In one configuration, the first message is responsive to the confirmation message.

[0207] In one configuration, the first message is a neighbor discovery message.

[0208] In one configuration, the second message is a neighbor discovery response message based on the first FL information.

[0209] In one configuration, the means for providing is further configured to provide an acknowledgement to the network node in response to the second message based on the second FL information.

[0210] In one configuration, the means for providing is further configured to provide a second neighbor discovery response message to the second network node in response to a second neighbor discovery message from the second network node. In one configuration, the apparatus 2002 (and specifically, the cellular baseband processor 2004) includes means for discarding the association of the second network node as a neighbor node in response to a lack of acknowledgment of the second neighbor discovery response message within a timeout interval.

[0211] In one configuration, the component for obtaining is further configured to obtain a third message from the network node indicating that the network node is a candidate for election as a leader of the FL cluster or peer network. In one configuration, the component for providing is further configured to provide a fourth message indicating a vote for the network node as the leader to the network node in response to the third message. In one configuration, the component for obtaining is further configured to obtain a fifth message from the network node indicating that the network node is a leader of the FL cluster or peer network including the device and the network node in response to the fourth message.

[0212] In one configuration, the means for providing is further configured to provide, to the network node, a third message indicating that the device is a candidate for election as a leader of the FL cluster or peer network. In one configuration, the means for obtaining is further configured to obtain, from the network node in response to the third message, a fourth message indicating a vote for the device as the leader. In one configuration, the means for providing is further configured to provide, in response to the fourth message, a fifth message indicating that the device is a leader of the FL cluster or peer network including the device and the network node.

[0213] In one configuration, the means for providing is further configured to provide a sixth message after the deadline as the leader indicating an end of the deadline.

[0214] In one configuration, the first message also indicates that the device is a candidate to become a FL cluster leader of the FL cluster.

[0215] In one configuration, the second message also includes a request from the network node to join the FL cluster.

[0216] In one configuration, the means for providing is further configured to provide a confirmation to the network node in response to the second message indicating that the network node is in the FL cluster and the apparatus is a FL cluster leader of the FL cluster.

[0217] In one configuration, the means for obtaining is further configured to obtain a third message indicating that the second network node is a candidate to become a first FL cluster leader of the first FL cluster. In one configuration, the means for providing is further configured to provide a fourth message indicating a request to join the first FL cluster. In one configuration, in response to a lack of an acknowledgement of the fourth message from the second network node within a timeout window, the means for providing is further configured to provide the first message to the network node requesting to join the second FL cluster or indicating that the device is a candidate to become a second FL cluster leader of the second FL cluster.

[0218] In one configuration, the component for obtaining is further configured to, when the network node is a FL cluster leader of an FL cluster including the device and the network node, obtain an ML model configuration including initial weights from the network node, wherein the ML model information update provided to the network node includes an update to the initial weights. In one configuration, the component for obtaining is further configured to obtain, from the FL cluster leader, an aggregated ML model information update including an aggregation of the ML model information update and a second ML model information update of a second network node in the FL cluster.

[0219] In one configuration, aggregating the ML model information update further includes a second aggregation of the ML model information update with a third ML model information update of a third network node in the second FL cluster.

[0220] In one configuration, the component for obtaining is further configured to obtain a second ML model information update from the network node when the device is a FL cluster leader of an FL cluster including the device and the network node; wherein the ML model information update includes an aggregation of the second ML model information update and the third ML model information update of the second network node in the FL cluster.

[0221] In one configuration, the means for obtaining is further configured to, when the apparatus is a FL cluster leader of an FL cluster including the apparatus and the network node, obtain, from the FL parameter network entity, an aggregated ML model information update including an aggregation of the ML model information update and a second ML model information update of a second network node in a second FL cluster. In one configuration, the means for providing is further configured to provide the aggregated ML model information update to the network nodes in the FL cluster.

[0222] In one configuration, the means for obtaining is further configured to obtain a second ML model information update from the network node. In one configuration, the means for providing is further configured to provide an aggregated ML model information update comprising an aggregation of the ML model information update and the second ML model information update to the network node.

[0223] In one configuration, the means for providing is further configured to provide a request for a second ML model information update to the network node. In one configuration, the means for obtaining is further configured to obtain the second ML model information update in response to the network node having an ML model associated with a performance metric that satisfies a threshold, wherein the ML model information update comprises an aggregation of the second ML model information update and a third ML model information update from the second network node.

[0224] In one configuration, the component for obtaining is further configured to obtain a request for an ML model information update from the network node, wherein the ML model information update is associated with the ML model and is responsive to a performance metric of the ML model satisfying a threshold. In one configuration, the component for obtaining is further configured to obtain, from the network node, an aggregated ML model information update comprising an aggregation of the ML model information update and a second ML model information update from a second network node.

[0225] The aforementioned means may be one or more of the aforementioned components of the apparatus 2002 configured to perform the functions recited by the aforementioned means. As described above, the apparatus 2002 may include TX processors 416, 468, RX processors 456, 470, and controllers / processors 459, 475. Therefore, in one configuration, the aforementioned means may be TX processors 416, 468, RX processors 456, 470, and controllers / processors 459, 475 configured to perform the functions recited by the aforementioned means.

[0226] It should be understood that the specific order or hierarchy of the blocks in the disclosed process / flowchart is merely an illustration of the exemplary method. It should be understood that the specific order or hierarchy of the blocks in the process / flowchart can be rearranged based on design preferences. Further, some blocks can be combined or omitted. The attached method claims provide the elements of each block in a sample order, but are not meant to be limited to the specific order or hierarchy provided.

[0227] The foregoing description is provided to enable any person skilled in the art to practice the various aspects described herein. Various modifications to these aspects will be apparent to those skilled in the art, and the general principles defined herein may be applied to other aspects. Therefore, the claims are not intended to be limited to the aspects shown herein, but to conform to the full scope consistent with the language claims, wherein the elements mentioned in the singular are not intended to mean "one and only one", unless specifically so stated, but "one or more". Terms such as "if", "when ..." and "while ..." should be interpreted as "under the conditions of ...", rather than meaning an instantaneous time relationship or reaction. That is, these phrases, such as "when ...", do not mean an instantaneous action in response to the occurrence of an action or during the occurrence of an action, but simply imply that if the conditions are met, then the action will occur, but no specific or instantaneous time limit is required for the occurrence of the action. The word "exemplary" is used herein to mean "used as an example, instance, or illustration". Any aspect described as "exemplary" herein is not necessarily interpreted as being preferred or having advantages over other aspects. Unless otherwise specified, the term "some" refers to one or more. Combinations such as “at least one of A, B, or C,” “one or more of A, B, or C,” “at least one of A, B and C,” “one or more of A, B, and C,” and “A, B, C, or any combination thereof” include any combination of A, B, and / or C, and may include multiple A, multiple B, or multiple C. Specifically, combinations such as “at least one of A, B, or C,” “one or more of A, B, or C,” “at least one of A, B, and C,” “one or more of A, B, and C,” and “A, B, C, or any combination thereof” may be only A, only B, only C, A and B, A and C, B and C, or A, B, and C, where any such combination may include one or more members of A, B, or C.

[0228] The term "receive" and its variations (e.g., "received" and / or "received", etc.) may alternatively be referred to as "obtain" or its respective variations (e.g., "obtained" and / or "obtained", etc.). Similarly, the term "send" and its word forms (e.g., "send" and / or "sent", etc.) may alternatively be referred to as "provide" or its corresponding word forms (e.g., "provide" and / or "provided", etc.), "generate" or its corresponding word forms (e.g., "generate" and / or "generated", etc.) and / or "output" or its corresponding word forms (e.g., "output" and / or "outputted", etc.).

[0229] All structural and functional equivalents of the elements of the various aspects described throughout this disclosure that are known or will later be known to those of ordinary skill in the art are expressly incorporated herein by reference and are intended to be covered by the claims. In addition, regardless of whether such disclosure is explicitly recited in the claims, nothing disclosed herein is intended to be disclosed to the public. Words such as "module," "mechanism," "element," and "device" cannot replace the word "component." Therefore, no claim element will be understood as a component plus function unless the element is explicitly stated using the phrase "component for..."

[0230] The following examples are merely illustrative and may be combined with aspects of other embodiments or teachings described herein, but are not limited thereto.

[0231] Embodiment 1 is a device for wireless communication, the device comprising: a processor; a memory coupled to the processor, the processor being configured to: provide a first message including first federated learning (FL) information of the device to a network node; obtain a second message including second FL information of the network node; and provide a machine learning (ML) model information update to the network node based on the first FL information and the second FL information.

[0232] Embodiment 2 is a device according to embodiment 1, wherein the ML model information update includes at least one of the following: a weight; a gradient; or a scaling factor, wherein the scaling factor is a multiplicand or an addend; and wherein the first FL information includes at least one of the following: a machine learning task of the device; an available sensor coupled to the device for the machine learning task; an available ML model associated with the machine learning task; or available computing resources of the device for the machine learning task; and wherein the device and the network node are user equipment (UE).

[0233] Embodiment 3 is an apparatus according to embodiment 1 or 2, wherein the processor is further configured to provide a neighbor discovery message to the network node before the sending of the first message.

[0234] Embodiment 4 is an apparatus according to embodiment 3, wherein the processor is configured to provide the neighbor discovery message periodically or in response to an event trigger.

[0235] Embodiment 5 is an apparatus according to embodiment 3 or 4, wherein the processor is configured to provide the neighbor discovery message to the network node in a broadcast or multicast.

[0236] Embodiment 6 is a device according to any one of embodiments 3 to 5, wherein the processor is further configured to obtain a neighbor discovery response message from the network node in response to the neighbor discovery message, wherein the neighbor discovery response message indicates that the device is an asymmetric neighbor of the network node.

[0237] Embodiment 7 is the apparatus of embodiment 6, wherein the processor is further configured to provide an acknowledgement of the neighbor discovery response message to the network node, wherein the acknowledgement indicates that the network node is a symmetric neighbor of the apparatus.

[0238] Embodiment 8 is the apparatus of embodiment 7, wherein the processor is further configured to obtain a confirmation message from the network node in response to the confirmation, wherein the confirmation message indicates that the apparatus is a symmetric neighbor of the network node.

[0239] Embodiment 9 is the apparatus of embodiment 8, wherein the first message is in response to the confirmation message.

[0240] Embodiment 10 is an apparatus according to embodiment 1 or 2, wherein the first message is a neighbor discovery message.

[0241] Embodiment 11 is the apparatus of embodiment 10, wherein the second message is a neighbor discovery response message based on the first FL information.

[0242] Embodiment 12 is the apparatus of embodiment 10 or 11, wherein the processor is further configured to provide an acknowledgement to the network node in response to the second message based on the second FL information.

[0243] Embodiment 13 is an apparatus according to any one of embodiments 10 to 12, wherein the processor is further configured to provide a second neighbor discovery response message to the second network node in response to a second neighbor discovery message from the second network node, and to discard the association of the second network node as a neighbor node in response to a lack of confirmation of the second neighbor discovery response message within a timeout interval.

[0244] Embodiment 14 is an apparatus according to any one of embodiments 1 to 13, wherein the processor is further configured to obtain a third message from the network node, the third message indicating that the network node is a candidate for selection as a leader of a FL cluster or a peer network; provide a fourth message indicating a vote for the network node as the leader to the network node in response to the third message; and obtain a fifth message from the network node in response to the fourth message indicating that the network node is the leader of the FL cluster or the peer network including the apparatus and the network node.

[0245] Embodiment 15 is an apparatus according to any one of Embodiments 1 to 13, wherein the processor is further configured to provide a third message to the network node indicating that the apparatus is a candidate for selection as a leader of a FL cluster or a peer network; obtain a fourth message from the network node indicating a vote for the apparatus as the leader in response to the third message; and provide a fifth message indicating that the apparatus is the leader of the FL cluster or the peer network including the apparatus and the network node in response to the fourth message.

[0246] Embodiment 16 is the apparatus of embodiment 15, wherein the processor is further configured to provide a sixth message after a period of serving as the leader indicating an end of the period.

[0247] Embodiment 17 is the apparatus of embodiment 1, wherein the first message further indicates that the apparatus is a candidate to become a FL cluster leader of a FL cluster.

[0248] Embodiment 18 is the apparatus of embodiment 17, wherein the second message further comprises a request from the network node to join the FL cluster.

[0249] Embodiment 19 is the apparatus of embodiment 18, wherein the processor is further configured to provide confirmation to the network node in response to the second message indicating that the network node is in the FL cluster and the apparatus is the FL cluster leader of the FL cluster.

[0250] Embodiment 20 is an apparatus according to any one of Embodiments 17 to 19, wherein the processor is further configured to obtain a third message indicating that the second network node is a candidate to become a first FL cluster leader of the first FL cluster; provide a fourth message indicating a request to join the first FL cluster; and in response to a lack of confirmation of the fourth message from the second network node within a timeout window, provide the first message to the network node requesting to join the second FL cluster or indicating that the apparatus is a candidate to become a second FL cluster leader of the second FL cluster.

[0251] Embodiment 21 is an apparatus according to any one of embodiments 1 to 20, wherein the processor is further configured to, when the network node is an FL cluster leader of an FL cluster including the apparatus and the network node, obtain an ML model configuration including initial weights from the network node, wherein the ML model information update provided to the network node includes an update to the initial weights; and obtain an aggregated ML model information update from the FL cluster leader including an aggregation of the ML model information update and a second ML model information update of a second network node in the FL cluster.

[0252] Embodiment 22 is the apparatus of embodiment 21, wherein the aggregated ML model information update further comprises a second aggregation of the ML model information update with a third ML model information update of a third network node in a second FL cluster.

[0253] Embodiment 23 is an apparatus according to any one of embodiments 1 to 20, wherein the processor is further configured to obtain a second ML model information update from the network node when the apparatus is an FL cluster leader of an FL cluster including the apparatus and the network node; wherein the ML model information update includes an aggregation of the second ML model information update and a third ML model information update of a second network node in the FL cluster.

[0254] Embodiment 24 is an apparatus according to any one of embodiments 1 to 20 or 23, wherein the processor is further configured to, when the apparatus is an FL cluster leader of an FL cluster including the apparatus and the network node, obtain an aggregated ML model information update including an aggregation of the ML model information update and a second ML model information update of a second network node in a second FL cluster from a FL parameter network entity; and provide the aggregated ML model information update to the network node in the FL cluster.

[0255] Embodiment 25 is an apparatus according to any one of embodiments 1 to 20, wherein the processor is further configured to obtain a second ML model information update from the network node; and provide an aggregated ML model information update including an aggregation of the ML model information update and the second ML model information update to the network node.

[0256] Embodiment 26 is an apparatus according to any one of embodiments 1 to 20, wherein the processor is further configured to provide a request for a second ML model information update to the network node; and obtain the second ML model information update in response to the network node having an ML model associated with a performance metric that satisfies a threshold, wherein the ML model information update includes an aggregation of the second ML model information update and a third ML model information update from the second network node.

[0257] Embodiment 27 is an apparatus according to any one of embodiments 1 to 20, wherein the processor is further configured to obtain a request for the ML model information update from the network node, wherein the ML model information update is associated with the ML model and is responsive to a performance metric of the ML model satisfying a threshold; and obtain an aggregated ML model information update from the network node that includes an aggregation of the ML model information update and a second ML model information update from a second network node.

[0258] Embodiment 28 is a method for performing wireless communication at a user equipment (UE), the method comprising: providing a first message including first federated learning (FL) information of the UE to a network node; receiving a second message including second FL information of the network node; and providing a machine learning (ML) model information update to the network node based on the first FL information and the second FL information.

[0259] Embodiment 29 is a device for wireless communication, the device comprising: a component for providing a first message including first federated learning (FL) information of the device to a network node; a component for obtaining a second message including second FL information of the network node; and wherein the component for providing is also configured to provide a machine learning (ML) model information update to the network node based on the first FL information and the second FL information.

[0260] Embodiment 30 is a non-transitory computer-readable medium storing computer executable code, which, when executed by a processor, causes the processor to: provide a first message including first federated learning (FL) information to a network node; obtain a second message including second FL information of the network node; and provide a machine learning (ML) model information update to the network node based on the first FL information and the second FL information.

Claims

1. A device for wireless communication, the device comprising: processor; a memory coupled to the processor, the processor being configured to: providing a first message including first federated learning (FL) information of the device to a network node; obtaining a second message including second FL information of the network node; as well as A machine learning (ML) model information update is provided to the network node based on the first FL information and the second FL information.

2. The device according to claim 1, The ML model information update includes at least one of the following: Weight; gradient; or a scaling factor, the scaling factor being a multiplicand or an addend; and The first FL information includes at least one of the following: a machine learning task for the device; an available sensor coupled to said device for said machine learning task; Available ML models associated with the machine learning task; or the available computing resources of the device for the machine learning task; and Wherein the apparatus and the network node are user equipment (UE).

3. The apparatus of claim 1 , wherein the processor is further configured to: A neighbor discovery message is provided to the network node prior to the sending of the first message. The apparatus of claim 3 , wherein the processor is configured to provide the neighbor discovery message periodically or in response to an event trigger.

5. The apparatus of claim 3, wherein the processor is configured to provide the neighbor discovery message to the network nodes in a broadcast or a multicast.

6. The apparatus of claim 3, wherein the processor is further configured to: A neighbor discovery response message is obtained from the network node in response to the neighbor discovery message, wherein the neighbor discovery response message indicates that the device is an asymmetric neighbor of the network node.

7. The apparatus of claim 6, wherein the processor is further configured to: An acknowledgement of the neighbor discovery response message is provided to the network node, wherein the acknowledgement indicates that the network node is a symmetric neighbor of the apparatus.

8. The apparatus of claim 7, wherein the processor is further configured to: A confirmation message is obtained from the network node in response to the confirmation, wherein the confirmation message indicates that the device is a symmetric neighbor of the network node.

9. The apparatus of claim 8, wherein the first message is in response to the confirmation message.

10. The apparatus of claim 1, wherein the first message is a neighbor discovery message. The apparatus of claim 10 , wherein the second message is a neighbor discovery response message based on the first FL information.

12. The apparatus of claim 10, wherein the processor is further configured to: An acknowledgement is provided to the network node in response to the second message based on the second FL information.

13. The apparatus of claim 1, wherein the processor is further configured to: providing a second neighbor discovery response message to a second network node in response to a second neighbor discovery message from the second network node; and The association of the second network node as a neighbor node is discarded in response to a lack of acknowledgment of the second neighbor discovery response message within a timeout interval.

14. The apparatus of claim 1, wherein the processor is further configured to: obtaining a third message from the network node, the third message indicating that the network node is a candidate for election as a leader of a FL cluster or a peer-to-peer network; providing, in response to the third message, to the network node a fourth message indicating a vote for the network node as the leader; and A fifth message indicating that the network node is the leader of the FL cluster or the peer-to-peer network including the device and the network node is obtained from the network node in response to the fourth message.

15. The apparatus of claim 1, wherein the processor is further configured to: providing a third message to the network node indicating that the apparatus is a candidate for election as a leader of a FL cluster or peer-to-peer network; obtaining, in response to the third message, from the network node a fourth message indicating a vote for the device as the leader; and A fifth message indicating that the apparatus is the leader of the FL cluster or the peer-to-peer network including the apparatus and the network node is provided in response to the fourth message.

16. The apparatus of claim 15, wherein the processor is further configured to: A sixth message is provided after the deadline of being the leader indicating the end of the deadline.

17. The apparatus of claim 1, wherein the first message further indicates that the apparatus is a candidate to become a FL cluster leader of a FL cluster.

18. The apparatus of claim 17, wherein the second message further comprises a request from the network node to join the FL cluster.

19. The apparatus of claim 18, wherein the processor is further configured to: A confirmation is provided to the network node in response to the second message indicating that the network node is in the FL cluster and that the device is the FL cluster leader of the FL cluster.

20. The apparatus of claim 1, wherein the processor is further configured to: obtaining a third message indicating that the second network node is a candidate to become a first FL cluster leader of the first FL cluster; and providing a fourth message indicating a request to join the first FL cluster; Wherein, in response to a lack of acknowledgment of the fourth message from the second network node within a timeout window, the processor is configured to provide, to the network node, the first message requesting to join a second FL cluster or indicating that the device is a candidate to become a second FL cluster leader of the second FL cluster.

21. The apparatus of claim 1, wherein the processor is further configured to: when the network node is a FL cluster leader of a FL cluster including the device and the network node, obtaining an ML model configuration including initial weights from the network node; wherein the ML model information update provided to the network node includes an update to the initial weights; and An aggregated ML model information update including an aggregation of the ML model information update and a second ML model information update of a second network node in the FL cluster is obtained from the FL cluster leader.

22. The apparatus of claim 21, wherein the aggregated ML model information update further comprises a second aggregation of the ML model information update with a third ML model information update of a third network node in a second FL cluster.

23. The apparatus of claim 1, wherein the processor is further configured to: when the device is a FL cluster leader of a FL cluster including the device and the network node, obtaining a second ML model information update from the network node; The ML model information update includes an aggregation of the second ML model information update and a third ML model information update of a second network node in the FL cluster.

24. The apparatus of claim 1, wherein the processor is further configured to: when the apparatus is a FL cluster leader of a FL cluster including the apparatus and the network node, obtaining, from a FL parameter network entity, an aggregated ML model information update including an aggregation of the ML model information update and a second ML model information update of a second network node in a second FL cluster; and The aggregated ML model information updates are provided to the network nodes in the FL cluster.

25. The apparatus of claim 1, wherein the processor is further configured to: Obtaining a second ML model information update from the network node; and An aggregated ML model information update including an aggregation of the ML model information update and the second ML model information update is provided to the network node.

26. The apparatus of claim 1, wherein the processor is further configured to: providing a request for a second ML model information update to the network node; obtaining the second ML model information update in response to the network node having an ML model associated with a performance metric that satisfies a threshold; and The ML model information update includes an aggregation of the second ML model information update and a third ML model information update from a second network node.

27. The apparatus of claim 1, wherein the processor is further configured to: Obtaining a request for an update of the ML model information from the network node; wherein the ML model information update is associated with an ML model and is responsive to a performance metric of the ML model satisfying a threshold; and An aggregated ML model information update is obtained from the network node including an aggregation of the ML model information update and a second ML model information update from a second network node.

28. A method of wireless communication at a user equipment (UE), the method comprising: providing a first message including first federated learning (FL) information of the UE to a network node; obtaining a second message including second FL information of the network node; as well as A machine learning (ML) model information update is provided to the network node based on the first FL information and the second FL information.

29. An apparatus for wireless communication, the apparatus comprising: means for providing a first message comprising first federated learning (FL) information of the apparatus to a network node; means for obtaining a second message comprising second FL information of said network node; and Wherein the means for providing is further configured to provide a machine learning (ML) model information update to the network node based on the first FL information and the second FL information.

30. A non-transitory computer readable medium storing computer executable code, which, when executed by a processor, causes the processor to: providing a first message including first federated learning (FL) information to a network node; obtaining a second message including second FL information of the network node; and A machine learning (ML) model information update is provided to the network node based on the first FL information and the second FL information.