Methods and apparatus for support of vertical federated learning with successive vertical federated learning client information sharing

Vertical federated learning methods enable secure and efficient data sharing among network entities by using intermediate results aggregation, addressing privacy concerns and enhancing 5G/6G network capabilities for advanced services.

WO2026035098A1PCT designated stage Publication Date: 2026-02-12SAMSUNG ELECTRONICS CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/KR2025/011998
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2025-07-17
Filing Date
2025-08-08
Publication Date
2026-02-12

AI Technical Summary

Technical Problem

Current 5G mobile communication systems face challenges in efficiently coordinating and sharing data among network entities for enhanced performance and functionality, particularly in vertical federated learning scenarios where data privacy and security are paramount, limiting the effectiveness of existing horizontal federated learning techniques.

Method used

Implementing vertical federated learning methods that allow network entities to share intermediate results and perform local computations without exchanging raw data, using a Network Exposure Function (NEF) to aggregate and notify on aggregated results, enabling coordinated model training and inference across network entities.

Benefits of technology

Enhances data security and privacy while improving the efficiency and effectiveness of model training and inference processes, facilitating advanced services like AR, VR, and metaverse support in 5G and 6G networks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure KR2025011998_12022026_PF_FP_ABST
    Figure KR2025011998_12022026_PF_FP_ABST
Patent Text Reader

Abstract

The disclosure relates to a 5G or 6G communication system for supporting a higher data transmission rate. A first network entity transmits, to a second network entity, a subscribe message, receives, from the second network entity, a plurality of first intermediate results, aggregates the plurality of first intermediate results, performs a local computation based on the aggregated plurality of first intermediate results, and transmits, to a Network Exposure Function (NEF), a notification message including a second intermediate result.
Need to check novelty before this filing date? Find Prior Art

Description

METHODS AND APPARATUS FOR SUPPORT OF VERTICAL FEDERATED LEARNING WITH SUCCESSIVE VERTICAL FEDERATED LEARNING CLIENT INFORMATION SHARING

[0001] The disclosure relates to methods and apparatus for support of vertical federated learning with successive vertical federated learning client information sharing.

[0002] 5G mobile communication technologies define broad frequency bands such that high transmission rates and new services are possible, and can be implemented not only in "Sub 6GHz" bands such as 3.5GHz, but also in "Above 6GHz" bands referred to as mmWave including 28GHz and 39GHz. In addition, it has been considered to implement 6G mobile communication technologies (referred to as Beyond 5G systems) in terahertz bands (for example, 95GHz to 3THz bands) in order to accomplish transmission rates fifty times faster than 5G mobile communication technologies and ultra-low latencies one-tenth of 5G mobile communication technologies.

[0003] At the beginning of the development of 5G mobile communication technologies, in order to support services and to satisfy performance requirements in connection with enhanced Mobile BroadBand (eMBB), Ultra Reliable Low Latency Communications (URLLC), and massive Machine-Type Communications (mMTC), there has been ongoing standardization regarding beamforming and massive MIMO for mitigating radio-wave path loss and increasing radio-wave transmission distances in mmWave, supporting numerologies (for example, operating multiple subcarrier spacings) for efficiently utilizing mmWave resources and dynamic operation of slot formats, initial access technologies for supporting multi-beam transmission and broadbands, definition and operation of BWP (BandWidth Part), new channel coding methods such as a LDPC (Low Density Parity Check) code for large amount of data transmission and a polar code for highly reliable transmission of control information, L2 pre-processing, and network slicing for providing a dedicated network specialized to a specific service.

[0004] Currently, there are ongoing discussions regarding improvement and performance enhancement of initial 5G mobile communication technologies in view of services to be supported by 5G mobile communication technologies, and there has been physical layer standardization regarding technologies such as V2X (Vehicle-to-everything) for aiding driving determination by autonomous vehicles based on information regarding positions and states of vehicles transmitted by the vehicles and for enhancing user convenience, NR-U (New Radio Unlicensed) aimed at system operations conforming to various regulation-related requirements in unlicensed bands, NR UE Power Saving, Non-Terrestrial Network (NTN) which is UE-satellite direct communication for providing coverage in an area in which communication with terrestrial networks is unavailable, and positioning.

[0005] Moreover, there has been ongoing standardization in air interface architecture / protocol regarding technologies such as Industrial Internet of Things (IIoT) for supporting new services through interworking and convergence with other industries, IAB (Integrated Access and Backhaul) for providing a node for network service area expansion by supporting a wireless backhaul link and an access link in an integrated manner, mobility enhancement including conditional handover and DAPS (Dual Active Protocol Stack) handover, and two-step random access for simplifying random access procedures (2-step RACH for NR). There also has been ongoing standardization in system architecture / service regarding a 5G baseline architecture (for example, service based architecture or service based interface) for combining Network Functions Virtualization (NFV) and Software-Defined Networking (SDN) technologies, and Mobile Edge Computing (MEC) for receiving services based on UE positions.

[0006] As 5G mobile communication systems are commercialized, connected devices that have been exponentially increasing will be connected to communication networks, and it is accordingly expected that enhanced functions and performances of 5G mobile communication systems and integrated operations of connected devices will be necessary. To this end, new research is scheduled in connection with eXtended Reality (XR) for efficiently supporting AR (Augmented Reality), VR (Virtual Reality), MR (Mixed Reality) and the like, 5G performance improvement and complexity reduction by utilizing Artificial Intelligence (AI) and Machine Learning (ML), AI service support, metaverse service support, and drone communication.

[0007] Furthermore, such development of 5G mobile communication systems will serve as a basis for developing not only new waveforms for providing coverage in terahertz bands of 6G mobile communication technologies, multi-antenna transmission technologies such as Full Dimensional MIMO (FD-MIMO), array antennas and large-scale antennas, metamaterial-based lenses and antennas for improving coverage of terahertz band signals, high-dimensional space multiplexing technology using OAM (Orbital Angular Momentum), and RIS (Reconfigurable Intelligent Surface), but also full-duplex technology for increasing frequency efficiency of 6G mobile communication technologies and improving system networks, AI-based communication technology for implementing system optimization by utilizing satellites and AI (Artificial Intelligence) from the design stage and internalizing end-to-end AI support functions, and next-generation distributed computing technology for implementing services at levels of complexity exceeding the limit of UE operation capability by utilizing ultra-high-performance communication and computing resources.

[0008] In a first aspect of the disclosure, provided herein is a method performed by a first network entity in a wireless communication system, the method comprising: transmitting, to a second network entity, a subscribe message; receiving, from the second network entity, a plurality of first intermediate results; aggregating the plurality of first intermediate results; performing a local computation based on the aggregated plurality of first intermediate results; and transmitting, to a Network Exposure Function (NEF), a notification message including a second intermediate result.

[0009] In a second aspect of the disclosure, provided herein is a first network entity in a wireless communication system, the first network entity comprising: a transceiver; and a processor communicatively coupled to the transceiver, to cause the first network entity to: transmit, to a second network entity, a subscribe message, receive, from the second network entity, a plurality of first intermediate results, aggregate the plurality of first intermediate results, perform a local computation based on the aggregated plurality of first intermediate results, and transmit, to a Network Exposure Function (NEF), a notification message including a second intermediate result.

[0010] Embodiments / examples of the disclosure are further described hereinafter with reference to the accompanying drawings, in which:

[0011] Figures 1 illustrates a registration and discovery procedure for federated learning, according to an embodiment of the disclosure;

[0012] Figures 2 illustrates a general procedure for federated learning among Multiple NWDAFs, according to an embodiment of the disclosure;

[0013] Figures 3 illustrates a procedure where a FL Server NWDAF reselects FL Client NWDAF(s), and FL Client NWDAF(s) join or leave a federated learning process dynamically in a federated learning execution phase, according to an embodiment of the disclosure;

[0014] Figure 3a illustrates a preparation procedure for VFL when a NWDAF / Trusted AF is the VFL Server, according to an embodiment of the disclosure;

[0015] Figures 4 illustrates a procedure for VFL training with successive VFL client information sharing, according to an embodiment of the disclosure;

[0016] Figure 4a illustrates a procedure for VFL model training with information sharing among successive VFL clients, according to an embodiment of the disclosure;

[0017] Figure 4b illustrates a procedure for VFL model training with information sharing among VFL clients and aggregated by a VFL client or a NEF, according to an embodiment of the disclosure;

[0018] Figure 4c illustrates a training procedure for VFL when a NWDAF is acting as a VFL server, according to an embodiment of the disclosure;

[0019] Figure 4d illustrates a training procedure for VFL when an untrusted AF is acting as a VFL server, according to an embodiment of the disclosure;

[0020] Figure 4e illustrates a training procedure for VFL when a NWDAF is acting as a VFL server, according to an embodiment of the disclosure;

[0021] Figure 4f illustrates a training procedure for VFL when an untrusted AF is acting as a VFL server, according to an embodiment of the disclosure;

[0022] Figure 5 illustrates a procedure for VFL inference, according to an embodiment of the disclosure;

[0023] Figure 5a illustrates an inference procedure for VFL when a NWDAF is acting as a VFL server, according to an embodiment of the disclosure;

[0024] Figure 5b illustrates an inference procedure for VFL when an untrusted AF is acting as a VFL server, according to an embodiment of the disclosure;

[0025] Figure 5c illustrates an inference procedure for VFL when a NWDAF or Trusted AF is acting as a VFL server, according to an embodiment of the disclosure;

[0026] Figure 5d illustrates an inference procedure for VFL when an untrusted AF is acting as a VFL server, according to an embodiment of the disclosure;

[0027] Figure 5e1, 5e2, and 5e3 illustrates a training procedure for VFL when NWDAF or trusted AF is acting as VFL server, according to an embodiment of the disclosure;

[0028] Figure 5f illustrates a training procedure for VFL when untrusted AF is acting as VFL server, according to an embodiment of the disclosure;

[0029] Figure 5g illustrates an inference procedure for VFL when untrusted AF is acting as VFL server, according to an embodiment of the disclosure;

[0030] and

[0031] Figure 6 provides a block diagram of an exemplary network entity / function, according to an embodiment of the disclosure.

[0032] The following description of examples of the disclosure, with reference to the accompanying drawings, is provided to assist in a comprehensive understanding of certain examples of the disclosure. The description includes various specific details to assist in that understanding but these are to be regarded as merely exemplary. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the examples described herein can be made without departing from the scope of the disclosure.

[0033] The same or similar components may be designated by the same or similar reference numerals, although they may be illustrated in different drawings.

[0034] Detailed descriptions of techniques, structures, constructions, functions or processes known in the art may be omitted for clarity and conciseness, and to avoid obscuring the subject matter of the disclosure.

[0035] The terms and words used herein are not limited to the bibliographical or standard meanings, but are merely used to enable a clear and consistent understanding of the disclosure.

[0036] Throughout the description of the specification, the words "comprise", "include" and "contain" and variations of the words, for example "comprising" and "comprises", means "including but not limited to", and is not intended to (and does not) exclude other features, elements, components, integers, steps, processes, operations, functions, characteristics, properties and / or groups thereof.

[0037] Throughout the description of the specification, the singular form, for example "a", "an" and "the", encompasses the plural unless the context otherwise requires. For example, reference to "an object" includes reference to one or more of such objects.

[0038] Throughout the description, the expression "at least one of A, B and / or C" (or the like) and the expression "one or more of A, B and / or C" (or the like) should be seen to separately include all possible combinations, for example: A, B, C, A and B, A and C, A and B and C.

[0039] Throughout the description of this specification, language in the general form of "X for Y" (where Y is some action, process, operation, function, activity or step and X is some means for carrying out that action, process, operation, function, activity or step) encompasses means X adapted, configured or arranged specifically, but not necessarily exclusively, to do Y.

[0040] Features, elements, components, integers, steps, processes, operations, functions, characteristics, properties and / or groups thereof described or disclosed in conjunction with a particular aspect, embodiment or example are to be understood to be applicable to any other aspect, embodiment or example described herein unless incompatible therewith.

[0041] The following examples are applicable to, and use terminology associated with, 3GPP 4G (e.g., LTE) and / or 5G (e.g., NR). However, the skilled person will appreciate that the techniques disclosed herein are not limited to these examples or to 3GPP 4G (e.g., LTE) and / or 5G (e.g., NR), and may be applied in any suitable system or standard, for example one or more existing and / or future generation wireless communication systems or standards (e.g., B5G, 5G-Advanced, 6G etc.). The skilled person will appreciate that the techniques disclosed herein may be applied in any existing or future releases of 3GPP 4G (e.g., LTE) and / or 5G (e.g., NR) and / or 5G Advanced and / or 6G, and / or (3GPP Release 17, 18, 19, 20, etc.) or any other relevant standard. For example, the functionality of the various network entities and other features disclosed herein may be applied to corresponding or equivalent entities or features in other communication systems or standards. Corresponding or equivalent entities or features may be regarded as entities or features that perform the same or similar role, function, operation or purpose within the network.

[0042] Furthermore. the following also applies to the disclosure:

[0043] ㆍ The terms functionality / use-case / configuration / scenario / site may be used interchangeably.

[0044] ㆍ The terms model and model functionality may be used interchangeably.

[0045] ㆍ The disclosure also apply to non-3GPP entities.

[0046] ㆍ The concepts, proposals, solutions, methods, embodiments, figures, and / or examples, presented in the disclosure, would apply to various type of communication systems, such as 4G, 4G-Advanced, 5G, 5G-Advanced, and 6G. Moreover, the above may also apply (in full or part or modified) to systems of Non-Terrestrial Networks (NR-NTN and / or IoT-NTN and / or UAV, etc.), in addition to Terrestrial Networks (TN).

[0047] A particular network entity may be implemented as a network element on dedicated hardware, as a software instance running on a dedicated hardware, and / or as a virtualised function instantiated on an appropriate platform, e.g. on a cloud infrastructure.

[0048] The skilled person will appreciate that the disclosure is not limited to the specific examples disclosed herein. For example:

[0049] ㆍ The techniques disclosed herein are not limited to 3GPP 4G or 5G or 5G-Advanced and also apply to B5G and 6G systems.

[0050] ㆍ One or more entities in the examples disclosed herein may be replaced with one or more alternative entities performing equivalent or corresponding functions, processes or operations.

[0051] ㆍ One or more of the messages in the examples disclosed herein may be replaced with one or more alternative messages, signals or other type of information carriers that communicate equivalent or corresponding information.

[0052] ㆍ One or more further elements, entities and / or messages may be added to the examples disclosed herein.

[0053] ㆍ One or more non-essential elements, entities and / or messages may be omitted in certain examples.

[0054] ㆍ The functions, processes or operations of a particular entity in one example may be divided between two or more separate entities in an alternative example.

[0055] ㆍ The functions, processes or operations of two or more separate entities in one example may be performed by a single entity in an alternative example.

[0056] ㆍ Information carried by a particular message in one example may be carried by two or more separate messages in an alternative example.

[0057] ㆍ Information carried by two or more separate messages in one example may be carried by a single message in an alternative example.

[0058] ㆍ The order in which operations are performed may be modified, if possible, in alternative examples.

[0059] ㆍ The transmission of information between network entities is not limited to the specific form, type and / or order of messages described in relation to the examples disclosed herein.

[0060] Certain examples of the disclosure may be provided in the form of an apparatus / device / network entity configured to perform one or more defined network functions and / or a method therefor. Such an apparatus / device / network entity may comprise one or more elements, for example one or more of receivers, transmitters, transceivers, processors, controllers, modules, units, and the like, each element configured to perform one or more corresponding processes, operations and / or method steps for implementing the techniques described herein. For example, an operation / function of X may be performed by a module configured to perform X (or an X-module). Certain examples of the disclosure may be provided in the form of a system (e.g., a network) comprising one or more such apparatuses / devices / network entities, and / or a method therefor.

[0061] It will be appreciated that examples of the disclosure may be realized in the form of hardware, software or a combination of hardware and software. Certain examples of the disclosure may provide a computer program comprising instructions or code which, when executed, implement a method, system and / or apparatus in accordance with any aspect, example and / or embodiment disclosed herein. Certain embodiments of the disclosure provide a machine-readable storage storing such a program.

[0062] The content of the following documents is referred to below and / or their content provides background information and context that the following disclosure should be considered in view of:

[0063] 3GPP TS 23.288 V18.6.0 June 2024

[0064] 3GPP TS 23.288 V19.1.0 December 2024

[0065] 3GPP TR 23.700-84 v1.0.0 June 2024

[0066] [1] Wei, Kang, et al. "Vertical Federated Learning: Challenges, Methodologies and Experiments."arXiv preprint arXiv:2202.04309 (2022)

[0067] [2] Romanini, Daniele, et al. "PyVertical: A Vertical Federated Learning Framework for Multi-Headed splitNN." arXiv preprint arXiv:2104.00489 (2021)

[0068] (Note: the example versions shown for each document are non-limiting, other versions of the documents may be considered also)

[0069] Wireless or mobile (cellular) communications networks in which a mobile terminal (e.g., user equipment (UE), such as a mobile handset) communicates via a radio link with a network of base stations, or other wireless access points or nodes, have undergone rapid development through a number of generations. The 3rdGeneration Partnership Project (3GPP) design, specify and standardise technologies for mobile wireless communication networks. Fourth Generation (4G) and Fifth Generation (5G) systems are now widely deployed, and development of Sixth Generation (6G) Systems is in progress.

[0070] 3GPP standards for 4G systems include an Evolved Packet Core (EPC) and an Enhanced-UTRAN (E-UTRAN: an Enhanced Universal Terrestrial Radio Access Network). The E-UTRAN uses Long Term Evolution (LTE) radio technology. LTE is commonly used to refer to the whole system including both the EPC and the E-UTRAN, and LTE is used in this sense in the remainder of the document. LTE should also be taken to include LTE enhancements such as LTE Advanced and LTE Pro, which offer enhanced data rates compared to LTE.

[0071] In 5G systems a new air interface has been developed, which may be referred to as 5G New Radio (5G NR) or simply NR. NR is designed to support the wide variety of services and use case scenarios envisaged for 5G networks, though builds upon established LTE technologies. New frameworks and architectures are also being developed as part of 5G networks in order to increase the range of functionality and use cases available through 5G networks. New frameworks and architectures are also being developed for 6th Generation (6G) networks.

[0072] 3GPP has also started studying the benefits Artificial Intelligence (AI) / Machine Learning (ML) solutions for communications networks, for example, enhancement of management and orchestration, performance, resource allocation, in addition to reduction of complexity and overhead in the network. Training of AI / ML models / functionality may include federated learning (FL).

[0073] Federated Learning Support at NWDAF

[0074] In current 3GPP SA2 specifications, the Federated Learning (FL) among multiple network data analytics functions (NWDAFs) (so called Horizontal Federated Learning) were supported since 3GPP Rel-18. High-level and detailed descriptions of supporting Federated Learning (FL) among multiple NWDAFs are mainly documented in clause 5.3 and clause 6.2c of TS 23.288.

[0075] In Rel-16, a single instance or multiple instances of NWDAF may be deployed in a Public land mobile network (PLMN). In case multiple NWDAF instances are deployed, the architecture supports deploying the NWDAF as a central network function (NF), as a collection of distributed NFs, or as a combination of both. When multiple NWDAFs exist, not all of them need to be able to provide the same type of analytics results. However, no specific requirement has been defined regarding how different NWDAFs could cooperate in Rel-16. In Rel-16, each NWDAF acts independently from the other NWDAFs.

[0076] In reality, some of the NWDAFs in one network may be providing the same type of analytics, and so may help each other for e.g. specific analytics for specific target user equipment (UEs) or specific analytics for specific area of interest. Although some of these NWDAFs may be providing different type of analytics, they may still be able to help each other if e.g. analytics are somehow related: one example is for expected UE behavioural parameters related network data analytics, which have a tight relation with UE mobility analytics and UE communication analytics. In another example, in order to build abnormal behaviour related network data analytics, the NWDAF would need to collect similar type of data to the data needed to build analytics for UE mobility pattern and for UE communication pattern.

[0077] In order to address the coordination among multiple NWDAFs for Federated Learning (FL), Rel-18 study and normative work were carried out by SA2. As documented in clause 5.3 of TS 23.288:

[0078] Federated learning among multiple NWDAFs is a machine learning technique in core network that trains an ML Model across multiple decentralized entities holding local data set, without exchanging / sharing local data set. This approach stands in contrast to traditional centralized machine learning techniques where all the local datasets are uploaded to one server, thus allowing to address critical issues such as data privacy, data security, data access rights.

[0079] For Federated Learning supported by multiple NWDAFs containing MTLF, there is one NWDAF containing MTLF acting as FL server (called FL server NWDAF for short) and multiple NWDAFs containing MTLF acting as FL client (called FL client NWDAF for short).

[0080] The FL server NWDAF and FL client NWDAF have different functionalities (in clause 5.3 of TS 23.288):

[0081] FL server NWDAF:

[0082] - discovers and selects FL client NWDAFs to participant in an FL procedure

[0083] - requests FL client NWDAFs to do local model training and to report local model information.

[0084] - generates global ML model by aggregating local model information from FL client NWDAFs.

[0085] - sends the global ML model back to FL client NWDAFs and repeats training iteration if needed.

[0086] FL client NWDAF:

[0087] - locally trains ML model that tasked by the FL server NWDAF with the available local data set, which includes the data that is not allowed to share with others due to e.g. data privacy, data security, data access rights.

[0088] - reports the trained local ML model information to the FL server NWDAF.

[0089] - receives the global ML model feedback from FL server NWDAF and repeats training iteration if needed.

[0090] Either the NWDAF containing model training logical function (MTLF) or the NWDAF containing analytics logical function (AnLF) can trigger the ML model training, as a consumer. The NWDAF containing MTLF determines to train an ML model either based on local configuration or when it receives the request from NWDAF containing AnLF. The NWDAF containing MTLF may further determine whether the ML model should be trained via FL mechanism based on different aspects, e.g. Analytic ID, Service Area / DNAI or data cannot be obtained directly from data producer NF (e.g. due to data privacy, data security). However, the NWDAF containing AnLF is not aware whether the ML model is trained based on FL or not.

[0091] In order to perform the FL among multiple NWDAFs, before FL procedure is initiated, appropriate NWDAFs containing MTLF that can act as an FL server and FL clients should be discovered and chosen based on specified criteria and interactions between the FL server and FL clients.

[0092] When starting an FL procedure, the FL server NWDAF provides an initial model to each FL client NWDAFs, and then each FL client NWDAFs perform local model training using their local data set based on the request from FL server.

[0093] During the FL execution phase, in order to maintain a Federation Learning process, considering the performance and capability of FL Client NWDAF(s), the FL Server NWDAF may trigger reselection, addition, or removal of FL Client NWDAF(s), discovers new FL Client NWDAF(s) via NRF and FL Client NWDAF(s) joins or leaves Federated Learning process dynamically.

[0094] The detailed procedures of Registration and Discovery procedure for Federated Learning, General procedure for Federated Learning among Multiple NWDAF Instances, Procedures for Maintaining Federated Learning Processes are documented in clause 6.2C.2.1, 6.2C.2.2 and 6.2C.2.3 of TS 23.288.

[0095] Registration and Discovery procedure for Federated Learning

[0096] As mentioned above, before FL procedure is initiated, appropriate FL server and FL clients are discovered and chosen based on specified criteria, according to the procedures in Figure 1 and in clause 6.2C.2.1 of TS 23.288. The numbered steps below correspond to the procedure illustrated in Figure 1.

[0097] Steps 1 to 3 are the NWDAF registration procedure.

[0098] 1-3. NWDAF containing MTLF as FL Server NWDAF or FL Client NWDAF registers to NRF with its NF profile, which includes NWDAF NF Type, Analytics ID(s), Address information of NWDAF, Service Area, FL capability type information (i.e. FL server or FL client) and Time interval supporting FL as described in clause 5.2.

[0099] Steps 4 to 6 are the NWDAF Discovery procedure.

[0100] 4-6. NWDAF containing MTLF determines ML model requires FL based on operator policy (e.g. pre-configured list of ML models), Analytic ID, Service Area / DNAI or data can not be obtained directly from data producer NF (e.g. due to privacy reasons).

[0101] If the NWDAF containing MTLF can not perform as FL Server NWDAF, the MTLF first discovers and selects FL Server NWDAF from NRF by invoking the Nnrf_NFDiscovery_Request service operation. The following criteria might be used: Analytic ID of the ML model required, Model filter information as defined in TS 23.288 [5], FL capability Type (i.e. FL server), Time Period of Interest, Service Area.

[0102] Once the FL Server NWDAF (the requested or the selected one) is determined, the FL Server NWDAF discovers and selects other NWDAF(s) containing MTLF as FL Client NWDAF(s) from NRF by invoking the Nnrf_NFDiscovery_Request service operation. The following criteria might be used: Analytic ID of the ML model required, FL capability Type (i.e. FL client), Service Area, NF type(s) of data sources from which the FL Client NWDAF is able to collect data for local model training, Time Period of Interest, ML Model Interoperability Indicator.

[0103] 7. FL Server NWDAF sends Federated Learning preparation request to the FL Client NWDAF(s), using Nnwdaf_MLModelTraining_Subscribe or Nnwdaf_MLModelTrainingInfo_Request service with the ML Preparation Flag, to check if the FL Client NWDAF(s) can meet the ML model training requirement (e.g. Analytics ID, ML Model Interoperability information, Available data requirement, Availability time requirement (time span needed for the FL process), etc.). Available data requirement includes a list of Event IDs of the local data for training, and may also include the dataset statistical properties, the time window of the data samples and the minimum number of data samples.

[0104] NOTE: Federated Learning preparation procedure (i.e. steps 7-9) can be skipped if the FL Server NWDAF can decide that the FL Client NWDAF(s) supports the FL procedure to be performed, e.g. based on information acquired from previous FL procedures or from the NRF, or based on local configuration.

[0105] 8. FL Client NWDAF(s) checks if it can meet the ML model training requirement and / or can successfully download the model if the model information is provided in the request and decides whether to join the Federated Learning process based on operator policy (e.g. pre-configured list of ML models) and / or implementation. Example criteria used by FL Client NWDAF(s) may be based on its data availability and time availability, computation and communication capability and ML Model Interoperability information.

[0106] 9. FL Client NWDAF(s) invokes Nnwdaf_MLModelTraining_Notify or Nnwdaf_MLModelTraining_Subscribe response service operation or Nnwdaf_MLModelTrainingInfo_Request response service operation to indicate to the FL Server NWDAF whether it will join the FL procedure and may include the reason in the response message if it cannot join the FL process.

[0107] 10. FL Server NWDAF determines the final list of FL Client NWDAF(s) to be involved in the FL procedures based on the information received in step 6 and other information received in step 9 (if available).

[0108] General Procedure for Federated Learning Among Multiple NWDAF Instances

[0109] The general procedure for Federated Learning among Multiple NWDAF is shown in Figure 2, and documented in clause 6.2C.2.2 of TS 23.288. The numbered steps below correspond to the procedure illustrated in Figure 2.

[0110] 0. The consumer (NWDAF containing AnLF or NWDAF containing MTLF) sends a subscription request to FL server NWDAF to retrieve an ML model, using Nnwdaf_MLModelProvision service as defined in clause 7.5 including Analytics ID, ML model metric (e.g., ML model Accuracy), Accuracy reporting interval, pre-determined status (ML model Accuracy threshold or Time when the ML model is needed).

[0111] If the consumer (i.e. the NWDAF containing AnLF or NWDAF containing MTLF) provides the Time when the ML model is needed, the FL Server NWDAF can take this information into account to decide the maximum response time for its FL Client NWDAF(s).

[0112] 1. FL Server NWDAF selects NWDAF(s) containing MTLF (FL Client NWDAF(s)) as described in clause 6.2C.2.1.

[0113] 2. FL Server NWDAF sends a Nnwdaf_MLModelTraining_Subscribe or Nnwdaf_MLModelTrainingInfo_Request to the selected NWDAF containing MTLF (FL Client NWDAF(s)), which participates in the Federated learning to perform the local model training and determine the interim local ML model information based on the input parameter in the request from FL Server NWDAF. The request includes ML model metric and initial ML model and also includes the maximum response time, the FL Client NWDAF has to report the interim local ML model information to the FL Server NWDAF before the maximum response time elapses.

[0114] 3. [Optional] Each FL Client NWDAF collects its local data by using the current mechanism in clause 6.2 if the Client NWDAF has not local data available already.

[0115] 4. During Federated Learning training procedure, each FL Client NWDAF further trains the ML model provided by the FL Server NWDAF based on its own data and reports the interim local ML model information to the FL Server NWDAF in Nnwdaf_MLModelTraining_Notify or Nnwdaf_MLModelTrainingInfo_Request response. The Nnwdaf_MLModelTraining_Notify or Nnwdaf_MLModelTrainingInfo_Request response may also include the Status report of FL training that includes local ML model metric computed by the FL Client NWDAF and Training Input Data Information (e.g. areas covered by the data set, sampling ratio, maximum / minimum of value of each dimension of data, etc.) in the FL Client NWDAF. The Nnwdaf_MLModelTraining_Notify or Nnwdaf_MLModelTrainingInfo_Response also includes the global ML Model Accuracy when the ML Model Accuracy Check Flag was included in the Nnwdaf_MLModelTraining_Subscribe or Nnwdaf_MLModelTrainingInfo_Request (as described in step 7), the global ML Model Accuracy is calculated by the FL Client NWDAF using the local training data as the testing dataset.

[0116] The local ML model, which is sent from the FL Client NWDAF(s) to the FL Server NWDAF during the FL training process, is the information needed by the FL Server NWDAF to build the aggregated model.

[0117] If the FL Client NWDAF is not able to complete the training of the interim local ML model within the maximum response time provided by the FL Server NWDAF, the FL Client NWDAF shall send the Delay Event Notification that include the delay event indication, an optional cause code (e.g. local ML model training failure, more time necessary for local ML model training) and the expected time to complete the training if available to the FL Server NWDAF before the maximum response time elapses.

[0118] 4a. [Optional] If FL Server NWDAF receives notification / response that the FL Client NWDAF is not able to complete the training within the maximum response time, the FL Server NWDAF may send to the FL Client NWDAF a new maximum response time in Nnwdaf_MLModelTraining_Subscribe or Nnwdaf_MLModelTrainingInfo_Request, before which the FL Client NWDAF has to report the interim local ML model information to the FL Server NWDAF. Otherwise, the FL Server NWDAF may indicate FL Client NWDAF to skip reporting for this iteration. FL Server NWDAF includes the current iteration round ID in the message to indicate that the request is to modify the training parameters of the current iteration round.

[0119] Alternatively, the FL Server NWDAF may inform the FL Client NWDAF to cease the ML model training by sending termination request and to report back the current local ML model updates.

[0120] 5. The FL Server NWDAF aggregates all the local ML model information retrieved at step 4, to update the global ML model. The FL Server NWDAF may also compute the global ML model metric, e.g. based on the local ML model metric(s) or by applying the global model on the validation dataset (if available). The FL Server NWDAF may update the global ML model each time a FL Client NWDAF provides updated local ML model information, or the FL Server NWDAF may decide to wait for local ML model information from all FL Client NWDAFs before updating the global ML model.

[0121] If the FL Server NWDAF provides the maximum response time for the FL Client NWDAF(s) to provide the interim local ML model information in step 2, or the new maximum response time in step 4a, the FL Server NWDAF decides either to wait for the FL Client NWDAF(s) which have not yet provided their interim local ML model within the new maximum response time or to aggregate only the retrieved local ML model information instances to update global ML model. The FL Server NWDAF makes this decision, considering the notification / response from the FL Client NWDAF or, if the notification is not received, based on local configuration.

[0122] 6a. [Optional] Based on the consumer request in step 0, the FL Server NWDAF sends a Nnwdaf_MLModelProvision_Notify message to update the ML model metric to the consumer periodically (e.g. a certain number of training rounds or every 10 min) or dynamically when some pre-determined status is achieved (e.g. the ML Model Accuracy threshold is achieved or training time expires).

[0123] 6b. [Optional] The consumer decides whether the current model can fulfil the requirement, e.g. global ML model metric is satisfactory for the consumer and determines to stop or continue the training process. The consumer re-invokes Nnwdaf_MLModelProvision_Subscribe service operation as used in step 0 to continue the training process or invokes Nnwdaf_MLModelProvision_Unsubscribe service operation to stop the training process.

[0124] 6c. [Optional] Based on the subscription request sent from the consumer in step 6b, the FL Server NWDAF updates or terminates the current FL training process.

[0125] If the FL Server NWDAF received a request in step 6b to stop the Federated Training process, steps 7 and 8 are skipped.

[0126] 7. If the FL procedure continues, FL Server NWDAF may determine FL Client NWDAF as described in clause 6.2C.2.3 and sends Nnwdaf_MLModelTraining_Subscribe or Nnwdaf_MLModelTrainingInfo_Request that includes the aggregated ML model information to selected FL Client NWDAF(s) for next round of Federated Training. The request may also include the ML Model Accuracy Check Flag, that indicates the FL Client NWDAF(s) to use the local training data as the testing dataset to calculate the Model Accuracy of the global ML model provided by the FL Server NWDAF.

[0127] 8. Each FL Client NWDAF updates its own ML model based on the aggregated ML model information distributed by the FL Server NWDAF at step 7.

[0128] When the Federated Training procedure is complete, the FL Server NWDAF requests the FL client NWDAF(s) to terminate the FL procedure by invoking Nnwdaf_MLModelTraining_Unsubscribe service with a cause code that the FL process has finished and optionally with the final aggregated ML model information. Then the FL client NWDAF(s) terminate the local model training and if the final aggregated ML model information is received from the FL server NWDAF, the FL client NWDAF(s) can store it for further use.

[0129] 9. After the training process is complete, the FL Server NWDAF may send Nnwdaf_MLModelProvision_Notify that includes the globally optimal ML model information to the consumer.

[0130] Procedures for Maintaining Federated Learning Processes

[0131] In order to maintain a Federated Learning process during the FL execution phase, the FL Server NWDAF may trigger reselection, addition, or removal of FL Client NWDAF(s), discover new FL Client NWDAF(s) via NRF, and FL Client NWDAF(s) may join or leave a Federated Learning process dynamically, considering the performance and capability of FL Client NWDAF(s). The detailed procedures are shown in Figure 3 and described in 6.2C.2.3 of TS 23.288. The numbered steps below correspond to the procedure illustrated in Figure 3.

[0132] 1a. FL Server NWDAF may get the updated status of current FL Client NWDAF(s) via NRF by using Nnrf_NFManagement service (as in clause 5.2.7.2 of TS 23.502 [3]) in the Federated Learning execution phase.

[0133] FL Server NWDAF may subscribe to NRF for notifications of status changes of the current NWDAF(s) (FL Client NWDAFs 1...N) by invoking an Nnrf_NFManagement_NFStatusSubscribe service operation. NRF notifies the FL Server NWDAF the status changes of the current FL Client NWDAF(s) by invoking Nnrf_NFManagement_NFStatusNotify service operation(s).

[0134] The status of a current FL Client NWDAF could be availability changes, capability changes (e.g. it will not support FL anymore, etc.).

[0135] 1b. The current FL Client NWDAF(s) may inform FL Server NWDAF that it is leaving the Federated Learning process by invoking Nnwdaf_MLModelTraining_Notify service operation with Termination Request and cause code (reason for leaving, e.g. high NF load, time availability changes).

[0136] 1c. FL Server NWDAF may get the information of the new FL Client NWDAF(s) dynamically via NRF by subscribing to the event that a new FL Client NWDAF registers (Nnrf_NFManagement_NFStatusSubscribe service as in clause 5.2.7.2 of TS 23.502 [3]).

[0137] 1d. NWDAF may subscribe for NF load analytics of the FL Client NWDAF(s).

[0138] 1e. FL Client NWDAF(s) may send Status report of FL training and Global ML Model Accuracy Information by invoking Nnwdaf_MLModelTraining_Notify service.

[0139] 2. FL Server NWDAF checks FL Client NWDAF(s) status based on the received information and may determine whether reselection of FL Client NWDAF(s) for the next round(s) of Federated Learning is needed based on the received information from step 1.

[0140] 3. [If re-selection is needed as judged in step 2] If step 1c is not performed, FL Server NWDAF may discover new candidate FL Client NWDAF(s) via NRF by using Nnrf_NFDiscovery services as in clause 5.2.7.3 of TS 23.502 [3]. FL Server NWDAF reselects FL Client NWDAF(s) from the current FL Client NWDAF(s) and the new candidate FL Client NWDAF(s) (found in steps 1c or 3). For the new candidate FL Client NWDAF(s), the interaction between FL Server NWDAF and FL Client NWDAF(s) is same as the selection procedure described in clause 6.2C.2.1. The adding / deleting FL Client NWDAF(s) may happen at the end of each iteration.

[0141] 4. FL Server NWDAF sends termination request by invoking Nnwdaf_MLModelTraining_Unsubscribe service operation or Nnwdaf_MLModelTrainingInfo_Request service operation with Correlation Termination Flag to the FL Client NWDAF(s), optionally indicating the reason, e.g. FL Client NWDAF is unselected by the FL Server NWDAF for the FL process, or the FL process is suspended, etc. And FL server may also send the updated global ML model information to the unselected FL client NWDAF. FL Client NWDAF(s) terminates operations for the Federated Learning process if receive termination request from the FL Server NWDAF and may perform further action to be qualified in participation of FL training in the next cycles.

[0142] Vertical Federated Learning

[0143] 3GPP SA2 Rel-19 Study in AIML (FS_AIML_CN)

[0144] New SID on Core Network Enhanced Support for Artificial Intelligence (AI) / Machine Learning (ML) was approved in SP-231800 in TSG SA Meeting #102 (Dec 2023). In WT#2 in the SID:

[0145] in SP-231800:

[0146] - WT2: Study whether and what potential enhancements are needed to enable 5G system to assist in collaborative AI / ML operation involving 5GC / NWDAF and / or AF for "Vertical Federated Learning (VFL)". The work will be based only on and limited to the scope of justified use cases.

[0147] NOTE 7: RAN and UE aspects are out of scope. Solutions based on interactions between the application client and 5GS are out of scope. The necessary communication between AF and UE application client to support the collaborative AI / ML operation is understood as no normative procedure impact. Horizontal FL procedure defined in R18 should be taken into account and reused whenever possible.

[0148] NOTE 8: coordination with SA6 is required.

[0149] In WG SA2 Meeting #160-Ad Hoc-e meeting (Jan 2024), the Key Issue (KI) description of WT#2 was agreed in S2-2401830 as KI#2. The detailed description of KI#2: 5GC Support for Vertical Federated Learning was documented in clause 5.2.2 of TR 23.700-84. The issues to be addressed for KI#2 by SA2 during Rel-19 study phase include:

[0150] in S2-2401830:

[0151] This key issue aims to provide solutions for enabling 5GC support for vertical federated learning (VFL) involving NWDAF and / or AF, where no raw data need to be exchanged but some level of coordination is still required when training and inference are performed on local models. In particular, datasets used for each local model need to share the same samples while holding different features.

[0152] In Rel-18, ML model sharing between NWDAFs has been studied as a part of Horizontal Federated Learning. However, Federated learning between NWDAF and AF has not been studied (e.g. when the NWDAFs and / or AFs are in different domains, locations, regions etc).

[0153] Vertical Federated Learning (VFL) can be considered as an alternative mechanism for distributed functionalities of an ML model. Note that, as scoped in Rel-19, NWDAF and / or AF may be involved for VFL.

[0154] This Key Issue aims to study architecture enhancement to support VFL, which allows the cooperative AI / ML training and inference with the following aspects:

[0155] - Identify VFL use cases and under which conditions, and for which entities these VFL use cases show that VFL is justified to train ML models.

[0156] - Whether and how to support architecture enhancement for supporting VFL for model training and / or inference. In particular:

[0157] - Whether and how the existing NF discovery and selection needs to be enhanced.

[0158] - Whether and how ML Model training and / or inference related procedures need to be enhanced to support VFL

[0159] - Whether and how to do performance monitoring for the ML model trained via VFL

[0160] - Whether and how to provide ML Models to the participants in the VFL training process.

[0161] - How to support sample and feature alignment among the participating network entities when performing VFL

[0162] NOTE 1: Application layer-based VFL requiring communication between AFs and / or UEs application client, is out of scope.

[0163] NOTE 2: During the study on this KI, consultation with SA3 is required for handling security aspects.

[0164] NOTE 3: RAN and UE aspects are out of scope.

[0165] NOTE 4: The existing procedures defined for Horizontal FL in 3GPP TS 23.288 [x] will be taken into account when studying the procedure for VFL.

[0166] In order to clarify the scenarios of using Vertical Federated Learning, VFL use cases are to be identified. One possible use case of implementing VFL is to deploy NWDAF to Support for Sample and Feature Alignment in VFL, as explained below:

[0167] It is well known in the AI / ML literature that VFL is a federated learning setting where multiple parties perform training on data sets that share the same sample space but differ in feature space. Because of this, an alignment in sample and feature spaces among participating entities is usually required before applying VFL. VFL further allows to perform joint training without exposing raw data or model parameters, the latter being a way in which VFL differs from HFL. TS 23.288 [X] provides NWDAF specification support for HFL but no VFL support is available.

[0168] This use case proposes NWDAF support for VFL in analytics derivation by means of sample and feature alignment between the entities participating in VFL, where the main entity facilitating the VFL operation is NWDAF and other entities may be other NWDAF instances and / or AF(s). The motivation for this use case is mainly two-fold: i) in a multi-vendor scenario, VFL may be more suitable than HFL for multiple NWDAF deployments since such accuracy increase may be achieved without the need to share model parameters among the participating NWDAF from different vendors, and ii) VFL allows an enhanced accuracy of the NWDAF predictions as models trained via VFL usually generalize better by learning from a broader feature set.

[0169] In PLMNs where multiple NWDAFs are deployed, each NWDAF instance may perform data collection locally according to their suitable data sources. Depending on the Analytics ID, the different NWDAF instances may share the sample ID space (e.g. S-NSSAI) or train on different sample ID spaces (e.g. UE IDs within their corresponding Area of Interest). Furthermore, the NWDAF instances are not all obliged to collect the same input data for the same Analytics ID as most input data is optional, thus their feature spaces may range from full to little overlap. Finally, while an AF may also participate on VFL supported by NWDAF, an alignment of samples would still be needed between the two entities, and feature alignment may also prove beneficial.

[0170] Depending on the range of overlap in sample and feature spaces of the participating entities, VFL may be a more or less suitable technique to combine models at NWDAF. Hence, support for sample and feature alignment would allow the VFL supported by NWDAF to be more effective for those scenarios that are suitable.

[0171] Based on the above background information and analysis of the given use case, compared to HFL, VFL is able to increase the accuracy of FL without sharing model parameters among the participating NWDAF from different vendors and also allows an enhanced accuracy of the NWDAF predictions as models.

[0172] In SA2 163 meeting (May 2024), the following conclusions have been documented in clause 8.2 of TR 23.700-84:

[0173] P#2.4.1: Either the NWDAF or the AF can act as VFL server and initiate VFL training process with the VFL client(s).

[0174] P#2.4.2: If an untrusted AF is involved in the VFL training process, their interactions with the NWDAF(s) are via NEF. When the NWDAF acts as VFL Server, the NWDAF can receive labels from an AF.

[0175] P#2.4.3: An identifier is allocated by a VFL server, which is used to correlate the participants during the VFL training and subsequent VFL inference processes and it is associated with the distributed ML Models in the VFL joint model training process.

[0176] P#2.4.4: VFL Clients compute the intermediate results for their local ML models involved in the VFL training and provide reports with the intermediate results to the AF or NWDAF acting as VFL server.

[0177] P#2.4.5: VFL clients may also provide intermediate results (e.g. gradient information, loss information) to other VFL clients as instructed by the VFL server.

[0178] P#2.4.6: An AF or NWDAF acting as VFL server aggregates intermediate results from VFL client(s), trains a local model, computes intermediate results based on its local ML model, and sends the intermediate results towards VFL clients involved in the joint VFL training process.

[0179] P#2.4.7: VFL server may compute different intermediate training information (e.g. gradient information, loss information) for updating its own local model and the models of VFL clients during the VFL training process after processing the received intermediate results (that may include convergence reports), sends the updates to the VFL client(s), and the VFL server / client(s) update their local ML model based on the received information. The VFL server determines when the VFL training process terminates, then it will inform the VFL Clients that the training ends.

[0180] As it has been agreed by SA2, the following issues should be addressed during SA2 Rel-19 study to support Vertical Federated Learning:

[0181] in S2-2401830:

[0182] This Key Issue aims to study architecture enhancement to support VFL, which allows the cooperative AI / ML training and inference with the following aspects:

[0183] - Identify VFL use cases and under which conditions, and for which entities these VFL use cases show that VFL is justified to train ML models.

[0184] - Whether and how to support architecture enhancement for supporting VFL for model training and / or inference. In particular:

[0185] - Whether and how the existing NF discovery and selection needs to be enhanced.

[0186] - Whether and how ML Model training and / or inference related procedures need to be enhanced to support VFL

[0187] - Whether and how to do performance monitoring for the ML model trained via VFL

[0188] - Whether and how to provide ML Models to the participants in the VFL training process.

[0189] - How to support sample and feature alignment among the participating network entities when performing VFL

[0190] It has also been concluded that

[0191] P#2.4.5: VFL clients may also provide intermediate results (e.g. gradient information, loss information) to other VFL clients as instructed by the VFL server.

[0192] However, currently there is no specified method to support the interaction between VFL clients to indicate intermediate results for VFL training and inference.

[0193] It is an aim of certain examples of the disclosure to address, solve and / or mitigate, at least partly, at least one of the problems and / or disadvantages associated with the related art, for example at least one of the problems and / or disadvantages described herein. It is an aim of certain examples of the disclosure to provide at least one advantage over the related art, for example at least one of the advantages described herein.

[0194] In particular, the disclosure provides procedures and service operations to support VFL training and / or inference with successive VFL client information sharing.

[0195] In accordance with a first aspect of the disclosure, there is provided a method for a network data analytics function (NWDAF) vertical federated learning (VFL) client in a wireless communications network, the method comprising: transmitting, to one or more other NWDAF VFL clients, a second training subscribe message; receiving, from the one or more other NWDAF VFL clients, intermediate training results; aggregating the received intermediate training results; performing local computation on the aggregated received intermediate training results to produce a further intermediate training result; and transmitting the further intermediate training result to a network exposure function (NEF).

[0196] According to an embodiment of the disclosure, the NWDAF VFL client and the one or more other NWDAF VFL clients are selected by a VFL server and / or the NEF.

[0197] According to an embodiment of the disclosure, the method further comprises receiving, from the NEF, a first training subscribe message, wherein the first training subscribe message includes an indication of the one or more other NWDAF VFL clients.

[0198] According to an embodiment of the disclosure, the one or more other NWDAF VFL clients are selected based on one or more of an VFL interoperability indicator, parameters in VFL interoperability information, and a respective supporting gradient.

[0199] According to an embodiment of the disclosure, performing local computation on the aggregated received intermediate training results includes performing local computation on the aggregated received intermediate training results and a local (i.e. the NWDAF VFL client's own) intermediate training result.

[0200] According to an embodiment of the disclosure, the method further comprises transmitting an unsubscribe message to the one or more other NWDAF VFL clients.

[0201] According to an embodiment of the disclosure, the one or more other NWDAF VFL clients are indirect NWDAF VFL clients.

[0202] According to an embodiment of the disclosure, the first and / or second training subscribe messages are Nnwdaf_VFL_Training_Subscribe messages.

[0203] According to an embodiment of the disclosure, the intermediate training results are received in an Nnwdaf_VFL_Training_Notify message(s).

[0204] According to an embodiment of the disclosure, the further intermediate training result is transmitted to the NEF in an Nnef_VFL_Training_Notify message.

[0205] According to an embodiment of the disclosure, the further intermediate training result is transmitted to an VFL server via the NEF, and wherein the VFL server is an untrusted application function (AF).

[0206] In accordance with a second aspect of the present disclosure, there is provided a method for a wireless communication network comprising a vertical federated learning (VFL) server, a network exposure function (NEF), and a plurality of network data analytics function (NWDAF) VFL clients, the method comprising: transmitting, from the VFL server to the NEF, a first training subscribe message; transmitting, from the NEF to a first NWDAF VFL client among the plurality of NWDAF VFL clients, a second training subscribe message; transmitting, from the first NWDAF VFL client to one or more second NWDAF VFL clients among the plurality of NWDAF VFL clients, a third training subscribe message; transmitting, from the one or more second NWDAF VFL clients to the first NWDAF VFL client, intermediate training results; aggregating, at the first NWDAF VFL client, the received intermediate training results; performing, by the first NWDAF VFL client, local computation on the aggregated received intermediate training results to produce a further intermediate training result; transmitting, from the first NWDAF VFL client to the NEF, the further intermediate training result; and transmitting, from the NEF to the VFL server, the further intermediate training result.

[0207] According to an embodiment of the disclosure, the first NWDAF VFL client and / or the one or more second NWDAF VFL clients are selected by the VFL server and / or the NEF.

[0208] According to an embodiment of the disclosure, the selection is performed during an NWDAF VFL client discovery procedure.

[0209] According to an embodiment of the disclosure, the second training subscribe message includes an indication of the one or more second NWDAF VFL clients.

[0210] According to an embodiment of the disclosure, the one or more second NWDAF VFL clients are selected based on one or more of an VFL interoperability indicator, parameters in VFL interoperability information, and a respective supporting gradient.

[0211] According to an embodiment of the disclosure, performing local computation on the aggregated received intermediate training results includes performing local computation on the aggregated received intermediate training results and a local (i.e. the first NWDAF VFL client's own) intermediate training result.

[0212] According to an embodiment of the disclosure, the method further comprises transmitting, from the first NWDAF VFL client to the one or more second NWDAF VFL clients, an unsubscribe message.

[0213] According to an embodiment of the disclosure, the one or more second NWDAF VFL clients are indirect NWDAF VFL clients.

[0214] According to an embodiment of the disclosure, the first training subscribe message is an Nnef_VFL_Training_Subscribe message.

[0215] According to an embodiment of the disclosure, the second and / or third training subscribe messages are Nnwdaf_VFL_Training_Subscribe messages.

[0216] According to an embodiment of the disclosure, the intermediate training results and / or the further intermediate training result are transmitted in an Nnwdaf_VFL_Training_Notify message(s).

[0217] According to an embodiment of the disclosure, the further intermediate training result is transmitted to the NEF in an Nnef_VFL_Training_Notify message.

[0218] According to an embodiment of the disclosure, the VFL server is an untrusted application function (AF).

[0219] According to an embodiment of the disclosure, the VFL server does not communicate with the one or more second NWDAF VFL clients during the training procedure.

[0220] According to an embodiment of the disclosure, the method further comprises converting, by the NEF, internal identifiers of the NWDAF VFL clients to external identifiers.

[0221] According to an embodiment of the disclosure, the NEF communicates with only the first NWDAF VFL client among the plurality of NWDAF VFL clients during the VFL training.

[0222] In accordance with a third aspect of the present disclosure, there is provided a method for a network data analytics function (NWDAF) vertical federated learning (VFL) client in a wireless communications network, the method comprising: transmitting, to one or more other NWDAF VFL clients, a second inference subscribe message; receiving, from the one or more other NWDAF VFL clients, intermediate inference results; aggregating the received intermediate inference results; performing local computation on the aggregated received intermediate inference results to produce a further intermediate inference result; and transmitting the further intermediate inference result to a network exposure function (NEF).

[0223] In accordance with a fourth aspect of the present disclosure, there is provided a method for a wireless communication network comprising a vertical federated learning (VFL) server, a network exposure function (NEF), and a plurality of network data analytics function (NWDAF) VFL clients, the method comprising: transmitting, from the VFL server to the NEF, a first inference subscribe message; transmitting, from the NEF to a first NWDAF VFL client among the plurality of NWDAF VFL clients, a second inference subscribe message; transmitting, from the first NWDAF VFL client to one or more second NWDAF VFL clients among the plurality of NWDAF VFL clients, a third inference subscribe message; transmitting, from the one or more second NWDAF VFL clients to the first NWDAF VFL client, intermediate inference results; aggregating, at the first NWDAF VFL client, the received intermediate inference results; performing, by the first NWDAF VFL client, local computation on the aggregated received intermediate inference results to produce a further intermediate inference result; transmitting, from the first NWDAF VFL client to the NEF, the further intermediate inference result; and transmitting, from the NEF to the VFL server, the further intermediate inference result.

[0224] In accordance with a fifth aspect of the present disclosure, there is provided a network data analytics function (NWDAF) vertical federated learning (VFL) client configured to perform the method of any of the first and third aspect and the associated examples.

[0225] In accordance with a sixth aspect of the present disclosure, there is provided a wireless communication network comprising a vertical federated learning (VFL) server, a network exposure function (NEF), and a plurality of network data analytics function (NWDAF) VFL clients, wherein the wireless communication network is configured to perform the method of any of the second and fourth aspects and the associated examples.

[0226] Other aspects, advantages, and salient features of the disclosure will become apparent to those skilled in the art from the following detailed description taken in conjunction with the accompanying drawings.

[0227] In accordance with the disclosure, a procedure for supporting VFL training and / or inference with successive VFL client information sharing in a core network (e.g. 5GC) is provided. In particular, the disclosed procedure may assist with interaction between VFL clients to indicate intermediate results for VFL training and inference.

[0228] Compared to Horizontal Federated Learning (HFL), the total computation and communication cost of VFL is generally higher as widely adopted batch computation method in HFL cannot be applied to VFL [1]. In order to improve energy consumption and computing resource distribution of VFL operation, VFL algorithms using split neural networks are commonly used and are a more future-proof method.

[0229] In the splitting methods for VFL models, the model will be carefully segmented into different parts and will be held by different VFL clients and maybe also the VFL server [2]. How the VFL server determines the split of the VFL model is out of 3GPP scope. Each VFL client and VFL server will train different segments locally, rather than the entire model. The computation load of each VFL client will be reduced and therefore also reduce the energy consumption and / or improve the overall VFL efficiency.

[0230] During the model training, there are two potential approaches:

[0231] a) The VFL clients train their local segments successively by sharing the intermediate results with the next VFL client. For example, VFL client 1 trains its local segment 1 and shares intermediate results 1 with VFL client 2. Using intermediate results 1, VFL client 2 trains its local segment 2 and shares intermediate results 2 with VFL client 3. The procedure will propagate to the last VFL client N. The VFL client N shares the intermediate results N with VFL server. Details of such a procedure are set out below under "Procedure for VFL with Information Sharing Among Successive VFL Clients".

[0232] b) Each VFL client performs computation using local segments and sends intermediate results to the VFL server separately. Details of such a procedure are set out below under "Procedure for VFL model Training with Information Sharing Among VFL Clients and Aggregated by VFL Client or NEF".

[0233] Expressed in an alternative manner, during the model training, each VFL clients perform local computation using the local model to generate the client intermediate training results. Then one possible way is that the VFL clients report the client intermediate training results to the VFL server and the VFL server perform the local computation using all of the client intermediate training results. This approach may result in high load of the VFL server. Furthermore, if the VFL server is an untrusted AF, exposing the client intermediate training results of all VFL clients may result in potential high risk of 5GC privacy leaking, as there is no privacy preserving methods are specified for 3GPP VFL operation.

[0234] Another approach is aggregating the client intermediate training results of multiple VFL clients by one VFL client, e.g. VFL client N. For VFL using linear splitNN models, the VFL client N can even consolidate the receive client intermediate training results to perform its local computation. Then only one client intermediate training result of VFL client N will be indicate to the VFL server, which distributed the computation load, reduce the signalling load, and reveal much 5GC privacy in particular when the VFL server is untrusted AF. The VFL client N might be selected by the VFL server and indicated to each VFL clients.

[0235] After receiving the client intermediate results via either approach a) or b), the VFL server will behave as it has been documented in step 6 and 7 of clause 6.2H.2.3.1 in TS 23.288 v19.1.0:

[0236] 6. The VFL server may collect the local data and generate its own local intermediate training result. The NWDAF acting as VFL Server computes the intermediate model training information (e.g. gradient information or loss information) based on the VFL Client(s)' intermediate training result(s) received in step 4, its own local intermediate results and the label. The intermediate model training information is used for updating the models of VFL clients. Different intermediate model training information may be computed for different VFL clients and for the VFL Server itself.

[0237] The VFL server may also compute the ML model metric (e.g. ML model accuracy) based on all or some of the intermediate training result received from VFL clients and the label.

[0238] 7. [Optional] The NWDAF acting as VFL server evaluates (e.g. based on the convergence of a loss function or loss value and / or if the pre-set iteration number is reached) whether the VFL Training process has converged. If the VFL Server evaluates the VFL Training process has not converged, the NWDAF acting as a VFL Server determines another round of VFL training is required and repeats step 2 - 6. If the VFL Server evaluates the VFL training process has converged, it determines the VFL Training is completed. In this case, the VFL Server terminates the current VFL training process via step 7.

[0239] To reduce SA2 workload in the late R19 stage, a simplification was presented in which intermediate results of training and inference were only shared between the NWDAF VFL clients, not with AF VFL clients.

[0240] Please note the intermediate results can be intermediate training results and / or intermediate inference results. The intermediate results can be the intermediate results of VFL clients and / or a VFL server.

[0241] In the disclosure, the sequence / order of the successive VFL process (VFL training and / or inference) may be configured by the VFL server. The sequence / order of the successive VFL training indicates which VFL client will perform in the VFL process (VFL training and / or inference), e.g. the VFL client 1 transfers the intermediate results to VFL client 2, then VFL client 2 transfers the intermediate results to VFL client 3, until the last VFL client N, the sequence / order of the successive VFL process is (1, 2, 3, ... N).

[0242] The VFL clients may be configured with the sequence / order and / or the corresponding IDs / addresses of the NWDAF / AF VFL clients by the VFL server (e.g. before the VFL training and / or inference starts or during the VFL training and / or inference) or by the previous VFL client.

[0243] The sequence / order of the successive VFL process may be the same for all forward computation iterations (the model training / inference prorogation starts from the VFL server). As a result, in some examples, the sequence / order may only need to be indicated in the 1st iteration of VFL model training or in the inference request.

[0244] The sequence / order of all backwards computation iterations (the model training / inference prorogation starts from the last VFL client and propagates to the VFL server) may be opposite to the sequence / order of the forward propagation. For example, the sequence / order of the successive VFL process for forward propagation is (VFL client 1, VFL client 2, VFL client 3, ... VFL client N), that for the backwards propagation is (VFL client N, ..., VFL client 3, VFL client 2, VFL client 1). Therefore, in some examples, the sequence / order only needs to be indicated in the 1st iteration of VFL model training or in the inference request.

[0245] The sequence / order may be indicated by the ID / addresses of VFL clients / server, e.g. in this indicate: (VFL client 1, VFL client 2, VFL client 3, ..., VFL client N), VFL client 1 will perform VFL process firstly, then VFL client 2, then VFL client 3, until to N.

[0246] A preparation procedure for VFL when a NWDAF / Trusted AF is the VFL Server is described below with reference to Figure 3a. This preparation procedure may be used in conjunction with any of the approaches of the disclosure.

[0247] It should be noted that the procedure of Figure 3a is not limited to steps included therein nor their order, and one or more steps may be omitted, skipped, introduced, combined, or rearranged unless otherwise stated. Furthermore, the procedure of Figure 3a should be taken in the context of TS 23.288 v19.1.0.

[0248] 1. An NWDAF as VFL Server may send a Vertical Federated Learning preparation request including the Analytics ID to each of the NWDAF VFL Client(s), using Nnwdaf_VFLTraining_Request and to each of the AF VFL Clients(s), using Naf_VFLTraining_Request possibly via NEF when the VFL Client is an untrusted AF. An AF as VFL Server may send a Vertical Federated Learning preparation request including the Analytics ID to each of the NWDAF VFL Client(s), using Nnwdaf_VFLTraining_Request. The NWDAF or trusted AF as a VFL Server also provides, the suggested VFL Interoperability Information to negotiate the intermediate results that will be used in training, the suggested list of sample IDs that will be used in training., and optionally, as additional criteria for sample alignment, time window of the data samples, and required minimum sample size. When a Trusted AF is acting as a VFL Server, the VFL Client can only be an NWDAF.

[0249] 2. Each VFL Client checks if it can meet the ML Model training requirement. Each VFL Client ID checks the list of sample IDs and required criteria for sample alignment suggested by the VFL Server, and then provides to the VFL Server the list of sample IDs that it can accept out of the sample IDs suggested by the VFL Server and satisfying the required criteria for sample alignment. Each VFL Client checks the VFL Interoperability Information and determines which VFL Interoperability information that the VFL Client supports. The VFL Clients provides the list of supported Feature IDs, which is associated to the VFL Interoperability information, to the VFL Server, if available, or VFL Server may know the supported FeatureIDs for a VFL Client based on configuration

[0250] 3. Each NWDAF VFL Client invokes Nnwdaf_VFLTraining_Response or and each AF VFL Client invokes Naf_VFLTrainingRequest_Response, possibly via NEF when the AF is untrusted, to indicate to the VFL Server whether it accepts the ML Model training requirements, the VFL Client can also indicate that it cannot join the FL process.

[0251] 4. The VFL server determines the final list of samples considering the samples that all selected VFL clients support, if used the Feature ID per VFL client and VFL Interoperability Information to be used for training and provide them to the selected VFL Clients at the start of the training phase, as described below and in clause 6.2H.2.3.1 of TS 23.288 v19.1.0.

[0252] The VFL server may also determine the VFL client aggregator and indirect VFL clients based on the information received in step 3 (e.g. the gradient and other information can be supported by VFL clients).

[0253] For UEs as samples, additional discussion is needed on whether UE needs to be registered or not and whether the NWDAF as VFL server can check whether UEs are registered before interacting with VFL clients.

[0254] A procedure for VFL training is described below with reference to Figure 4. More specifically, a procedure to support VFL model training with AF or NWDAF acting as the VFL server and successive VFL client information sharing is illustrated in Figure 4 and described below, where the numbered steps correspond to those of Figure 4.

[0255] It should be noted that the procedure of Figure 4 is not limited to steps included therein nor their order, and one or more steps may be omitted, skipped, introduced, combined, or rearranged unless otherwise stated. Furthermore, the procedure of Figure 4 should be taken in the context of TS 23.288.

[0256] 0. VFL server (i.e. AF or NWDAF) and / or VFL clients (i.e. NWDAF(s)) register to NRF. The registration may include one or more of their NF profiles, Analytics ID(s), Address information of NWDAF, Service Area, VFL capability type information (i.e. VFL server and VFL client type), VFL client coordination capability VFL client computational capability, and Time interval supporting VFL. The latter parameter can be the same as Time interval supporting FL described in clause 5.2.

[0257] The VFL server and clients are discovered via NRF by invoking the Nnrf_NFDiscovery_Request service operation. The VFL server may include the requirements on the VFL clients and server in the discovery request, e.g. one or more of the location of the VFL clients and server, the (minimum) available capacity of the VFL clients and server, the capability of VFL client coordination, etc.

[0258] NOTE 1: The initial selection of VFL clients by the VFL server may happen in step 0. The selection of VFL clients by the VFL server may also be finalized in step 2.

[0259] NOTE 2: The details of sample and / or feature alignment is out of scope of this procedure.

[0260] 1. The VFL server determines to initiate the VFL model training based on its internal logic and sends a VFL preparation request to the VFL client NWDAF(s) (via NEF if the VFL server AF is untrusted AF).

[0261] If the VFL Server is trusted AF or NWDAF, the VFL Server invokes Nnwdaf_MLModelTrainingInfo_Request or Nnwdaf_MLModelTraining_Subscribe service operation towards the VFL Client NWDAF(s). For untrusted VFL Server AF, the AF sends a new service operation Nnef_MLModelTrainingInfo_Request or Nnef_MLModelTraining_Subscribe request towards the NEF. Then the NEF forwards the model preparation request to the corresponding VFL client NWDAF(s) by invoking Nnwdaf_MLModelTrainingInfo_Request or Nnwdaf_MLModelTraining_Subscribe service operation.

[0262] The details of the new NEF service operations, including Nnef_MLModelTrainingInfo_Request, Nnef_MLModelTraining_Subscribe, Nnef_MLModelTraining_Notify, Nnef_MLModelTraining_Unsubscribe, etc., are for further study.

[0263] The VFL Server may include ML Preparation Flag to check if the VFL Clients can meet the ML model training requirements in the VFL preparation request. The VFL Server may also include one or more of Analytics ID and VFL process ID, the target samples (e.g. UE ID, application ID, etc.), optional target features, ML Model Interoperability information, Available data requirement, Availability time requirement, required NWDAF capacity for the VFL process etc.

[0264] Additionally, where multiple VFL clients need to coordinate by communicating directly with each other, the VFL server should include in the VFL preparation request the sequence or IDs that specify the order in which the VFL clients are to exchange their forward and backward pass data. This information ensures proper coordination among the VFL clients, enabling them to perform the distributed training process efficiently and accurately.

[0265] The VFL Clients may respond to the VFL Server indicating whether they will join the VFL operation and may include the reason in the response message if it cannot join the VFL operation, e.g. due to no sufficient capacity to perform VFL model training, not able to coordinate with other VFL client NWDAF(s), etc.

[0266] 2. The VFL server may performed VFL client selection or refinement based on the responses received by from the VFL clients.

[0267] 3. The VFL requests the VFL Clients to start the VFL Model training process where intermediate training results are shared and coordinated by the VFL server, facilitating a collaborative approach to model refinement across the VFL clients.

[0268] The VFL Server triggers the VFL training by invoking a ML Model Training request towards VFL Client #1 (NWDAF) (via NEF if the AF is untrusted).

[0269] 3a. For untrusted VFL server AF, the AF invokes new service operation Nnef_MLModelTraining_Subscribe request or Nnef_MLModelTrainingInfo_Request towards the NEF for VFL training request. Then the NEF forwards the received VEL training request to the selected VFL client NWDAF(s) by invoking Nnwdaf_MLModelTraining_Subscribe or Nnwdaf_MLModelTrainingInfo_Request service operation.

[0270] 3b. If the VFL Server is trusted AF or NWDAF, the VFL server invokes Nnwdaf_MLModelTraining_Subscribe request or Nnwdaf_MLModelTrainingInfo_Request towards the selected VFL client NWDAF(s).

[0271] The VFL Server may indicate one or more of the Analytics ID and a VFL process ID associated to the VFL training, target samples (e.g. UE ID, application ID, etc.), optional target features, ML Model Interoperability information, Available data requirement, Availability time requirement, the VFL Clients that participate the VFL process, the order(s) of VFL Clients for performing local model computation to the VFL clients.

[0272] The detailed list of parameters to support in successive VFL client information sharing in different service operations is for further study.

[0273] 4a. The VFL Client #1 (NWDAF) triggers the local model computation to calculate the intermediate results. The VFL Client may collect data for model training if the local data is not sufficient.

[0274] 4b. VFL Client#1 notifies the intermediate results to the next VFL Client #2 (NWDAF) based on the order configured by the VFL Server, by invoking the Nnwdaf_MLModelTrainingInfo_Request or Nnwdaf_MLModelTraining_Subscribe service operation.

[0275] VFL Client#1 may indicate the remaining VFL Clients that participate the VFL training process, the order of the remaining VFL Clients for performing local model computation and other information as detailed in Step 3 to VFL Client #2 (NWDAF).

[0276] Alternatively, the full list of the VFL Clients that participate the VFL training process and the order of the VFL Clients to perform VFL training might be indicated to each client by the server, e.g. in step 1 or in parallel with step 3, And. In this case, each VFL client can work out the next VFL client to interact with based on the VFL client list, the order, the previous VFL client.

[0277] 4c - 4e. Repeat Step 4a and 4b until the VFL training procedure propagates to the last VFL Client based on the order configured by the VFL Server.

[0278] 5. The VFL Client #N NWDAF notifies the intermediate results to the VFL Server.

[0279] 5a. If the VFL client is untrusted AF, the VFL Client #N NWDAF notifies the intermediate results to the VFL Server via NEF by invoking new service operation Nnef_MLModelTrainingInfo_Request response or Nnef_MLModelTraining_Notify based on the service operation used in Step 3. The NEF forwards the model training response to the VFL Server by invoking Nnwdaf_MLModelTrainingInfo_Request response or Nnwdaf_MLModelTraining_Notify service operation based on the service operation used in Step 3

[0280] 5b. If the VFL client is trusted AF or NWDAF, the VFL Client #N invokes Nnwdaf_MLModelTrainingInfo_Request response or Nnwdaf_MLModelTraining_Notify based on the service operation used in Step 3.

[0281] 6. The VFL Server performs further VFL computation and aggregation for local model by using the intermediate results received from the VFL Client #N, the VFL server calculates the loss using the labels.

[0282] 7. In the subsequent iteration, the VFL server triggers the backwards propagation VFL computation for model refinement in each successive VFL Clients, in the revered order of VFL forward computation. VFL server sends VFL model refinement request to the last client in the previous iteration, e.g. VFL client #N.

[0283] 7a. If the VFL client is untrusted AF, the VFL server invokes new service operation Nnef_MLModelTraining_Notify towards NEF. Then the NEF forwards the request to the VFL client by invoking Nnwdaf_MLModelTraining_Notify.

[0284] 7b. If the VFL client is trusted AF or NWDAF, the VFL server invokes Nnwdaf_MLModelTraining_Notify service operation toward VFL client #N.

[0285] The VFL server may include the intermediate results (e.g. the loss which will be used by the VFL client to compute gradient for model refinement), and optionally the VFL Clients that participate the VFL and the order(s) of VFL Clients for performing local model computation for model refinement to the VFL Client #N.

[0286] NOTE 3: the orders of VFL clients to perform model refinement in step 8a-8e might be reserved order of forward computation in step 4a-4e. In this case, the VFL clients may derive the order of the backward propagation based on the ID of the previous VFL client.

[0287] 8a. VFL Client #N performs VFL local computation to refine the local model based on the intermediate results provided by the VFL server.

[0288] 8b. VFL Client #N deliveries the model refinement results to the subsequent VFL client based on the order configured by the VFL server by derived by itself by invoking Nnwdaf_MLModelTraining_Notify.

[0289] 8c. - 8e. Repeat Step 8a and 8b until the VFL local computation for model refinement propagates to the VFL Client which is the first VFL client to perform the forward computation, e.g. VFL Client #1.

[0290] 9. The last VFL Client notifies the model refinement results to the VFL server.

[0291] 9a. If the VFL client is untrusted AF, the VFL Client #1 NWDAF notifies the intermediate results to the VFL Server via NEF by invoking new service operation Nnef_MLModelTrainingInfo_Request response or Nnef_MLModelTraining_Notify based on the service operation used in Step 7. The NEF forwards the model refinement response to the VFL Server by invoking Nnwdaf_MLModelTrainingInfo_Request response or Nnwdaf_MLModelTraining_Notify service operation based on the service operation used in Step 7.

[0292] 9b. If the VFL client is trusted AF or NWDAF, the VFL Client #1 invokes Nnwdaf_MLModelTrainingInfo_Request response or Nnwdaf_MLModelTraining_Notify based on the service operation used in Step 8.

[0293] 10. The VFL Server performs further VFL computation and model refinement (e.g. by calculating the gradient information based on loss information) for local model by using the results received from VFL Client #1.

[0294] Step 3-10 will be repeated until the VFL server determines to terminate the VFL model training.

[0295] 11. The VFL server determines to terminate the VFL model training process based on its internal logic, e.g. if the model is converged.

[0296] If the VFL client is untrusted AF, the VFL server invokes new service operation Nnef_MLModelTraining_Unsubscribe service operation towards NEF, and then the NEF forwards the request to the corresponding VFL clients by invoking Nnwdaf_MLModelTraining_Unsubscribe service operation.

[0297] If the VFL Server is trusted AF or NWDAF, the VFL server sends VFL model training termination request by invoking Nnwdaf_MLModelTraining_Unsubscribe service operation toward NWDAF.

[0298] Step 11 may also happen after Step 6. In this case, Step 7-10 will be skipped.

[0299] The details of the VFL inference with successive VFL client coordination are for further study.

[0300] Procedure For VFL Model Training With Information Sharing Among Successive VFL Clients

[0301] The following procedure described with reference to Figure 4a is proposed on top of the procedures in 6.2H.2.3 of TS 23.288 v19.1.0.

[0302] It should be noted that the procedure of Figure 4a is not limited to steps included therein nor their order, and one or more steps may be omitted, skipped, introduced, combined, or rearranged unless otherwise stated. Furthermore, the procedure of Figure 4a should be taken in the context of TS 23.288 v19.1.0.

[0303] In this procedure, NWDAF VFL clients are merely used as examples, and the VFL clients may be also an AF, e.g. trusted AF and / or untrusted AF.

[0304] The following procedure uses NWDAF merely as an example of VFL server, and the VFL server may also be an AF, e.g. trusted AF and / or untrusted AF.

[0305] 1. As described in 6.2H.2.3.1 of TS 23.288 v19.1.0, the AF / NWDAF acting as VFL server determines the VFL clients that participate in the VFL procedure in the VFL clients discovery and preparation phase as described in the clause 6.2H.2.1 and clause 6.2H.2.2 of TS 23.288 v19.1.0.

[0306] Steps 2-11 of Figure 4a are repeated until the training termination condition is reached.

[0307] 2.1 To start the VFL training, the VFL server sends a request to start the training to the 1st VFL client, e.g. VFL client 1. Please note that 2.x, 3.x, 4.x etc. is referring to step 2, 3, 4 etc. being performed by xth VFL client.

[0308] As described in 6.2H.2.3 of TS 23.288 v19.1.0, the request includes a VFL correlation ID, and at least the parameters negotiated during the preparation phase. Optionally, the VFL Server includes one or more of: Analytic filter information, maximum response time (i.e. the maximum time between VFL clients receiving intermediate model training information and sending back intermediate training result). Although not shown in Figure 4a, Step 2.1 may include one or more of:

[0309] a. The VFL server sends a Nnwdaf_VFLTraining_Subscribe to the selected NWDAF VFL clients(s).

[0310] b. The VFL server sends a Naf_VFLTraining_Subscribe to the selected trusted AF VFL clients(s).

[0311] c. For each selected untrusted AF VFL client, the VFL server sends a Nnef_VFLTraining_AFClient_Subscribe to the NEF handling that AF.

[0312] d. For each selected untrusted AF VFL clients, the NEF sends a Naf_VFLTraining_Subscribe to that AF. The NEF may also translate the analytic filter information if needed, e.g. TAIs into geographical area.

[0313] 3.1 Optionally, VFL client 1 collects its local data by using the current mechanism if the VFL client has no local data already available. The data used by each VFL Client is collected as per alignment information.

[0314] 4.1 During the VFL training procedure, VFL client 1 further trains the local ML model associated with the same VFL Correlation ID based on their own collected or available data and, when applicable (e.g. after the first round of training), possible intermediate model training information distributed by the VFL server in the previous training iteration. Each VFL Client computes and reports the client intermediate training result of the local ML model to the VFL server.

[0315] 2.2 To continue the VFL training for the corresponding iteration, the VFL client 1 sends the intermediate training results (e.g. including gradient and / or loss information) in a VFL training request to the next VFL client 2, based on the sequence / order of the successive VFL process.

[0316] In 3.2 and 4.2, the VFL client 2 repeats step 3.1 and 4.1 to collect data and train local a model, e.g. using the intermediated results received from VFL client 1.

[0317] Then to continue the VFL training for the corresponding iteration, the VFL client 2 sends the intermediate training results (e.g. including gradient and / or loss information) in a VFL training request to the next VFL client 3, based on the sequence / order of the successive VFL process. The VFL client 3 repeats step 3.1 and 4.1 to collect data and train a local model and then shares the intermediate training results with next VFL client. The process is propagated until the last VFL client N, in the sequence / order of the successive VFL process.

[0318] 5. VFL client N reports the computed client intermediate training result of the local ML model to the VFL server. Although not shown in Figure 4a, Step 5 may include one or more of:

[0319] a. An NWDAF VFL client sends a Nnwdaf_VFLTraining_Notify to the VFL server.

[0320] b. A trusted AF VFL client sends a Naf_VFLTraining_Notify to the VFL server.

[0321] c. An untrusted AF VFL client sends a Naf_VFLTraining_Notify to the NEF.

[0322] d. For each untrusted AF VFL client, the NEF converts any external identifiers to internal identifiers and sends a Nnef_VFLTraining_AFClient_Notify to the VFL server.

[0323] 6. As described in 6.2H.2.3 of TS 23.288 v19.1.0, the VFL server may collect the local data and generate its own local intermediate training result. The NWDAF acting as VFL Server computes the intermediate model training information (e.g. gradient information and / or loss information) based on one or more of the VFL Client(s) intermediate training result(s) received in step 4, its own local intermediate results, and the label. The intermediate model training information is used for updating the models of VFL clients. Different intermediate model training information may be computed for different VFL clients and for the VFL Server itself.

[0324] The VFL server may also compute the ML model metric (e.g. ML model accuracy) based on all the intermediate training results received from VFL clients and the label.

[0325] 7. As described in 6.2H.2.3 of TS 23.288 v19.1.0, optionally, the NWDAF acting as VFL server evaluates (e.g. based on the convergence of a loss function and / or loss value and / or if the pre-set iteration number is reached) whether VFL Training process has converged. If the VFL Server evaluates the VFL Training process has not converged, the NWDAF acting as a VFL Server determines another round of VFL training is required and repeats step 2 - 6. If the VFL Server evaluates the VFL training process has converged, it determines the VFL Training is completed. In this case, the VFL Server terminates the current VFL training process via step 7.

[0326] The VFL training termination decision may be also made as follows:

[0327] Based on the consumer request, the VFL server sends a VFL status report to the consumer. The status report may include a model metric (e.g. ML model accuracy).

[0328] The consumer decides whether the current model can fulfil the requirement, e.g. ML model metric is satisfactory for the consumer and determines to stop or continue the training process accordingly. The consumer continues the training process or stops the training process.

[0329] Based on the subscription request sent from the consumer, the VFL server updates or terminates the current VFL training process.

[0330] 8.1 For the backward propagation / computation, the VFL server sends a request to continue the training to the last VFL client in the VFL client in the sequence / order of the successive VFL process, e.g. VFL client N; or the 1st client for the backward propagation / computation.

[0331] 9.1 Optionally, VFL client N collects its local data by using the current mechanism if the VFL client has no local data already available. The data used by each VFL Client is collected as per alignment information.

[0332] 10.1 During the VFL training procedure, VFL client N further trains the local ML model. The model is associated with the same VFL Correlation ID based on their own collected or available data and, when applicable (e.g. after the first round of training), possible intermediate model training information distributed by the VFL server in the previous training iteration. Each VFL Client computes and reports the client intermediate training result of the local ML model to the VFL server.

[0333] 8.2 similar to step 2.2, to continue the VFL training, the VFL client N sends the intermediate training results (e.g. including gradient and / or loss information) in a VFL training request to the next / previous VFL client (N-1), based on the sequence / order of the successive VFL process.

[0334] In 9.2 and 10.2, the VFL client (N-1) repeats step 9.1 and 10.1 to collect data and train a local model, e.g. using the intermediated results received from VFL client (N-1).

[0335] Then to continue the VFL training for the corresponding iteration, the VFL client (N-1) sends the intermediate training results (e.g. including gradient and / or loss information) in a VFL training request to the next / previous VFL client (N-2), based on the sequence / order of the successive VFL process. The VFL client (N-2) repeats step 9.1 and 10.1 to collect data and train a local model and then share the intermediate training results with next / previous VFL client. The process propagates until the last / first VFL client 1, in the sequence / order of the successive VFL process.

[0336] If the procedure represented by Steps 2-11 is terminated, steps 8-9 as described in 6.2H.2.3.1 of TS 23.288 v19.1.0 may follow (e.g. step 8 may correspond to a step 12 of Figure 4a and step 9 correspond to a step 13 of Figure 4a. For completeness, steps 8-9 of 6.2H.2.3.1 of TS 23.288 v19.1.0 as set out below.

[0337] 8 The VFL server sends VFL training termination message to VFL Client if it decides to terminate the VFL training process, the termination message contains VFL Correlation ID. Step 8 may include one or more of:

[0338] 8a. The VFL server sends a Nnwdaf_VFLTraining_Unsubscribe to the selected NWDAF VFL clients(s).

[0339] 8b. The VFL server sends a Naf_VFLTraining_Unsubscribe to the selected trusted AF VFL clients(s).

[0340] 8c. For each selected untrusted AF VFL clients, the VFL server sends a Nnef_VFLTraining_AFClient_Unubscribe to the NEF handling that AF.

[0341] 8d. For each selected untrusted AF VFL clients, the NEF sends a Naf_VFLTraining_Unsubscribe to that AF.

[0342] 9 The VFL Server, stores VFL correlation ID, the local trained ML Model, the mapping information of the VFL correlation ID to the following parameters: Analytics ID related to the VFL training process, locally trained Model. Additionally, the VFL server stores the VFL client information, which may be used to determine associated VFL client in the VFL inference.

[0343] Each VFL client stores VFL correlation ID, the locally trained ML Model, the mapping information of the VFL correlation ID to locally trained Model.

[0344] Procedure for VFL Model Training With Information Sharing Among VFL Clients and Aggregated by VFL Client or NEF

[0345] A procedure for VFL model training with information sharing among VFL clients and aggregated by VFL client or NEF is described below with reference to Figure 4b.

[0346] It should be noted that the procedure of Figure 4b is not limited to steps included therein nor their order, and one or more steps may be omitted, skipped, introduced, combined, or rearranged unless otherwise stated. Furthermore, the procedure of Figure 4b should be taken in the context of TS 23.288 v19.1.0.

[0347] 1. As described in 6.2H.2.3 of TS 23.288 v19.1.0, The AF / NWDAF acting as VFL server determines the VFL clients that participate in VFL procedure in the VFL client discovery and preparation phase as described in the clause 6.2H.2.1 and clause 6.2H.2.2 of TS 23.288 v19.1.0.

[0348] NOTE 1: VFL Server can determine to start the training based on local configuration and agreement among vendors and / or application providers participating in the same group for specific VFL task(s).

[0349] Steps 2-9 of Figure 4b are repeated until the training termination condition is reached.

[0350] 2. As described in 6.2H.2.3 of TS 23.288 v19.1.0, to start the VFL training, the VFL server sends a request to start the training to all selected VFL clients The request includes VFL correlation ID, and at least the parameters negotiated during the preparation phase, Optionally, the VFL Server includes: Analytic filter information and / or maximum response time (i.e. the maximum time between VFL clients receiving intermediate model training information and sending back an intermediate training result). Step 2 may include one or more of:

[0351] If the VFL procedure continues in subsequent iterations, the VFL server sends a request for a new VFL training iteration containing the VFL correlation ID and intermediate model training information to each of the VFL clients for next round of VFL training.

[0352] a. The VFL server sends a Nnwdaf_VFLTraining_Subscribe to the selected NWDAF VFL clients(s).

[0353] b. The VFL server sends a Naf_VFLTraining_Subscribe to the selected trusted AF VFL clients(s).

[0354] c. For each selected untrusted AF VFL client, the VFL server sends a Nnef_VFLTraining_AFClient_Subscribe to the NEF handling that AF.

[0355] d. For each selected untrusted AF VFL clients, the NEF sends a Naf_VFLTraining_Subscribe to that AF. The NEF may also translate the analytic filter information if needed, e.g. TAIs into geographical area.

[0356] e. If the VFL server is an untrusted AF, the sever may send the request to the NWDAF VFL clients via NEF. NEF forwards the VFL training subscription request to the NWDAF VFL clients upon receiving from untrusted AF VFL server.

[0357] 3. As described in 6.2H.2.3 of TS 23.288 v19.1.0, optionally each VFL client collects its local data by using the current mechanism if the VFL client has no local data already available. The data used by each VFL Client is collected as per alignment information.

[0358] 4. As described in 6.2H.2.3 of TS 23.288 v19.1.0, during VFL training procedure, each VFL client further trains the local ML model associated with the same VFL Correlation ID based on their own collected or available data and, when applicable (e.g. after the first round of training), possible intermediate model training information distributed by the VFL server in the previous training iteration. Each VFL Client computes and reports the client intermediate training result of the local ML model to the VFL server.

[0359] In the following, xa refers to an implementation where aggregation is performed at a VFL client and xb refers to an implementation where aggregation is performed by an NEF.

[0360] 5a. VFL clients share the computed client intermediate training result of the local ML model with one or more other VFL client(s).

[0361] The other VFL client(s) may be configured by the VFL server, e.g. in step 2 or during the VFL preparation phase. The VFL preparation phase has been specified in clause 6.2H.2.2 "Preparation procedure for Vertical Federated Learning" of TS 23.288 v19.1.0. The VFL server may indicate the name / ID / address of the other VFL client(s) in addition, the VFL server may also indicate the name / ID / address of the other VFL client(s) is the VFL client(s) to share the client intermediate training result with.

[0362] 6a. the other VFL client(s) receive the client intermediate training result shared by VFL clients in step 5a. The other VFL client(s) aggregates the client intermediate training results shared by VFL clients in step 5a.

[0363] 6a1. The other VFL client(s) may aggregate / merge the client intermediate training results shared by VFL clients in step 5a into one VFL training notify message.

[0364] 6a2. The other VFL client(s) may perform model update / model training using the client intermediate training results shared by VFL clients in step 5a and / or its local model trained in step 4. Then other VFL client(s) calculate and generate a new client intermediate training result. By performing this, the computation load of the VFL server can be distributed into one or more VFL clients, therefore improving the overall VFL training performance and / or reducing the load on the VFL server.

[0365] 7a. The other VFL client(s) reports the client intermediate training results to the VFL server.

[0366] The client intermediate training results might be the client intermediate training results of all the VFL clients, including the VFL clients that are configured by VFL server to share the client intermediate training results with the other VFL client(s) and the other VFL client(s) themselves / itself; and / or the client intermediate training results might be the client intermediate training results calculated in 6a2.

[0367] If only client intermediate training results calculated in 6a2 are reported, the size of the report will be smaller than including all intermediate training results from all VFL clients; therefore saving network resources and / or reducing network load. This may also improve the privacy protection, as only the NWDAF ID of the VFL client reporting the client intermediate training results to the NEF will be indicated to the VFL server, not the IDs of the VFL clients reporting their intermediate training results to this VFL clients. Step 7a may include one or more of:

[0368] a. A NWDAF VFL client sends a Nnwdaf_VFLTraining_Notify to the VFL server.

[0369] b. A trusted AF VFL client sends a Naf_VFLTraining_Notify to the VFL server.

[0370] c. An untrusted AF VFL client sends a Naf_VFLTraining_Notify to the NEF.

[0371] d. For each untrusted AF VFL client, the NEF converts any external identifiers to internal identifiers and sends a Nnef_VFLTraining_AFClient_Notify to the VFL server.

[0372] e. For each untrusted AF VFL server, the results are reported to the VFL server via the NEF.

[0373] 5b. VFL clients report the computed client intermediate training results of the local ML model to NEF.

[0374] The VFL client(s) may be configured by the VFL server to report the computed client intermediate training results of the local ML model to NEF, in any scenario.

[0375] 6b. The NEF aggregates the client intermediate training results shared by VFL clients in step 5b.

[0376] 6b1. The NEF may aggregate / merge the client intermediate training results shared by THE VFL clients in step 5b into one VFL training notify message / service operation.

[0377] 6b2. The NEF may perform model update / model training using the client intermediate training results shared by VFL clients in step 5b. The NEF calculates and generates an intermediate training result.

[0378] 7b. The NEF reports the client intermediate training results to the VFL server via VFL training notify service operation.

[0379] The client intermediate training results might be the client intermediate training results of all the VFL clients received in 5b, and / or the client intermediate training results might be the intermediate training results calculated by NEF in 6b2.

[0380] Steps 8-9 are the same as (correspond to) steps 6-7 in clause 6.2H.2.3.1 of TS 23.288 v19.1.0.

[0381] Step 10-11 are the same as (i.e. correspond to) steps 8-9 in clause 6.2H.2.3.1 of TS 23.288 v19.1.0.

[0382] Figure 4c illustrates a training procedure for VFL when a NWDAF is acting as VFL server, according to an embodiment of the disclosure. The procedure of Figure 4c may be considered to be similar to that described with reference to Figure 4b but where a NWDAF VFL client may perform the aggregation. For completeness, a full description of Figure 4c is set out below where steps other than 5e1-5e3 correspond to the equivalent numbered steps in 6.2H.2.3.1 (Figure 6.2H2.3.1-1) of TS 23.288 v19.1.0. All references to 6.2.H... refer to TS 23.288 v19.1.0.

[0383] It should be noted that the procedure of Figure 4c is not limited to steps included therein nor their order, and one or more steps may be omitted, skipped, introduced, combined, or rearranged unless otherwise stated.

[0384] 1. The NWDAF acting as VFL server determines the VFL clients that participate in VFL procedure in the VFL clients discovery and preparation phase as described in the clause 6.2H.2.1 and clause 6.2H.2.2.

[0385] NOTE 1: VFL Server can determine to start the training based on local configuration and agreement among vendors and / or application providers participating in the same group for specific VFL task(s).

[0386] Steps 2-6 are repeated until the training termination condition is reached.

[0387] 2. To start the VFL training, the VFL server sends a request to start the training to all selected VFL clients The request includes VFL correlation ID, at least the parameters negotiated during the preparation phase, Optionally, the VFL Server includes: Analytic filter information, maximum response time (i.e. the maximum time between VFL clients receive intermediate model training information and send back intermediate training result).

[0388] If the VFL procedure continues in subsequent iterations, the VFL server sends a request for a new VFL training iteration containing the VFL correlation ID and intermediate model training information to each of the VFL clients for next round of VFL training.

[0389] 2a. The VFL server sends a Nnwdaf_VFLTraining_Subscribe to the selected NWDAF VFL clients(s).

[0390] 2b. The VFL server sends a Naf_VFLTraining_Subscribe to the selected trusted AF VFL clients(s).

[0391] 2c. For each selected untrusted AF VFL clients, the VFL server sends a Nnef_VFLTraining_AFClient_Subscribe to the NEF handling that AF.

[0392] 2d. For each selected untrusted AF VFL clients, the NEF sends a Naf_VFLTraining_Subscribe to that AF. The NEF may also translate the analytic filter information if needed, e.g. TAIs into geographical area.

[0393] NOTE 2: In this release (i.e. v19.1.0), the same NF associated with a VFL Server or VFL Client capability during the VFL training for a VFL correlation ID is also the same NF during the VFL inference.

[0394] 3. [Optional] Each VFL client collects its local data by using the current mechanism if the VFL client has no local data already available. The data used by each VFL Client is collected as per alignment information.

[0395] 4. During VFL training procedure, each VFL client further trains the local ML model associated with the same VFL Correlation ID based on their own collected or available data and when applicable (e.g. after the first round of training) and possible intermediate model training information distributed by the VFL server in the previous training iteration. Each VFL Client computes and reports the client intermediate training result of the local ML model to the VFL server.

[0396] NOTE 3: The intermediate model training information and intermediate training result are constructed in per sample granularity.

[0397] 5. Each VFL client reports the computed client intermediate training result of the local ML model to the VFL server.

[0398] 5a. A NWDAF VFL client sends a Nnwdaf_VFLTraining_Notify.

[0399] 5b. A trusted AF VFL client sends a Naf_VFLTraining_Notify to the VFL server.

[0400] 5c. An untrusted AF VFL client sends a Naf_VFLTraining_Notify to the NEF.

[0401] 5d. For each untrusted AF VFL client , the NEF converts any external identifiers to internal identifiers and sends a Nnef_VFLTraining_AFClient_Notify to the VFL server.

[0402] 5e1 - 5e3. Alternatively, the NWDAF VFL clients may share the client intermediate training results with a NWDAF VFL client configured by the VFL server. This NWDAF VFL client aggregates the received client intermediate training results and perform local computation on its local model using the aggregated client intermediate training results. Then it sends one Nnwdaf_VFLTraining_Notify or Nnwdaf_VFLTraining_Request response that includes the client intermediate training result of this NWDAF VFL client to the VFL server.

[0403] 6. The VFL server may collect the local data and generate its own local intermediate training result. The NWDAF acting as VFL Server computes the intermediate model training information (e.g. gradient information or loss information) based on the VFL Client(s) intermediate training result(s) received in step 4, its own local intermediate results and the label. The intermediate model training information is used for updating the models of VFL clients. Different intermediate model training information may be computed for different VFL clients and for the VFL Server itself.

[0404] The VFL server may also compute the ML model metric (e.g. ML model accuracy) based on all the intermediate training result received from VFL clients and the label.

[0405] 7. [Optional] The NWDAF acting as VFL server evaluates (e.g. based on the convergence of a loss function or loss value and / or if the pre-set iteration number is reached) whether VFL Training process converged. If the VFL Server evaluates the VFL Training process did not converge, the NWDAF acting as a VFL Server determines another round of VFL training is required and repeats step 2 - 6. If the VFL Server evaluates the VFL training process converged, it determines the VFL Training is completed. In this case, the VFL Server terminates the current VFL training process via step 7.

[0406] The VFL training termination decision may be also made as follows:

[0407] Based on the consumer request, the VFL server sends VFL status report to the consumer. The status report may include model metric (e.g. ML model accuracy).

[0408] The consumer decides whether the current model can fulfil the requirement, e.g. ML model metric is satisfactory for the consumer and determines to stop or continue the training process. The consumer continues the training process or stops the training process.

[0409] Based on the subscription request sent from the consumer, the VFL server updates or terminates the current VFL training process.

[0410] 8. The VFL server sends VFL training termination message to VFL Client if it decides to terminate the VFL training process, the termination message contains VFL Correlation ID.

[0411] 8a. The VFL server sends a Nnwdaf_VFLTraining_Unsubscribe t to the selected NWDAF VFL clients(s).

[0412] 8b. The VFL server sends a Naf_VFLTraining_Unsubscribe to the selected trusted AF VFL clients(s).

[0413] 8c. For each selected untrusted AF VFL clients, the VFL server sends a Nnef_VFLTraining_AFClient_Unubscribe to the NEF handling that AF.

[0414] 8d. For each selected untrusted AF VFL clients, the NEF sends a Naf_VFLTraining_Unsubscribe to that AF.

[0415] 9. The VFL Server, stores VFL correlation ID, the local trained ML Model, the mapping information of the VFL correlation ID to the following parameters: Analytics ID related to the VFL training process, locally trained Model. Additionally, the VFL server stores the VFL client information, which may be used to determine associated VFL client in the VFL inference.

[0416] Each VFL client stores VFL correlation ID, the locally trained ML Model, the mapping information of the VFL correlation ID to locally trained Model.

[0417] NOTE 4: The VFL correlation ID and the stored mapping information are used later for inference as described in Clause 6.2H.2.4.1.

[0418] NOTE 5: If untrusted AF is involved in VFL Clients, the message between NWDAF acting as VFL Server and the untrusted AF is via NEF.

[0419] Figure 4d illustrates a training procedure for Vertical Federated Learning when untrusted AF is acting as an VFL server, according to an embodiment of the disclosure. The procedure of Figure 4d may be considered to be similar to that described with reference to Figure 4b but where a NWDAF VFL client may perform the aggregation and then provides the aggregated results to the untrusted AF (i.e. VFL server) via an NEF. For completeness, a full description of Figure 4d is set out below where steps other than 5c-5e and 5f correspond to the equivalent numbered steps in 6.2H.2.3.1 (Figure 6.2H.2.3.2-1) of TS 23.288 v19.1.0. All references to 6.2.H... refer to TS 23.288 v19.1.0. References to Steps of Figure 6.2H.2.3.1-1 refer to Figure 6.2H.2.3.1-1 of TS23.288 v19.1.0 but also Figure 4c of the present application.

[0420] It should be noted that the procedure of Figure 4d is not limited to steps included therein nor their order, and one or more steps may be omitted, skipped, introduced, combined, or rearranged unless otherwise stated.

[0421] 1. Same as step 1 in Figure 6.2H.2.3.1-1.

[0422] 2. To start VFL training, the VFL server do same as in step 1 in Figure 6.2H.2.3.1-1, using Nnef_VFLTraining_Subcribe.

[0423] Steps 3-7 are repeated until the training termination condition is reached.

[0424] 3. [Optional] Same as step 3 in Figure 6.2H.2.3.1-1.

[0425] 4. Same as step 4 in Figure 6.2H.2.3.1-1.

[0426] 5. Same as step 5 in Figure 6.2H.2.3.1-1.

[0427] 5a. A NWDAF VFL client sends a Nnwdaf_VFLTraining_Notify.

[0428] 5b. For an untrusted AF acting as VFL server, the NEF converts any internal identifiers to external identifiers, provides the external NWDAF ID and sends a Nnef_VFLTrainingNotify to the VFL server.

[0429] Alternatively,

[0430] 5c-5e. the NWDAF VFL clients share the client intermediate training results with a NWDAF VFL client configured by the VFL server. This NWDAF VFL client aggregates the received client intermediate training results and perform local computation on its local model using the aggregated client intermediate training results. Then it sends one notify message to the NEF by including its client intermediate training result.

[0431] 5f. For an untrusted AF acting as VFL server, the NEF converts the internal identifier to external identifier of the NWDAF VFL client that aggregates the intermediate training results, provides the external NWDAF ID and sends a Nnef_VFLTrainingNotify to the VFL server.

[0432] 6. [Optional] Same as step 6 in Figure 6.2H.2.3.1-1.

[0433] 7. Same as step 7 in Figure 6.2H.2.3.1-1.

[0434] 8. Same as step 8 of Figure 6.2H.2.3.1-1. However, sub steps in that figure are not applicable.

[0435] 8a. For each NWDAF VFL client, the untrusted AF as VFL server sends a Nnef_VFLTraining Unsubscribe to the NEF handling that AF. The untrusted AF identifies the VFL client using the external NWDAF ID assigned in the discovery procedure (see clause 6.2H.2.1.1).

[0436] 8b. The NEF sends an Nnwdaf_VFLTraining_Unsubscribe to the NWDAF VFL client indicated by the received external NWDAF ID.

[0437] 9. Same as step 9 of Figure 6.2H.2.3.1-1.

[0438] Although the procedures of Figures 4c and 4d have been described as being similar to that of Figure 4b, features of Figures 4c and 4d (e.g. new steps 5e / f) may also be applied to the procedure of Figure 4a.

[0439] A training procedure for VFL when a NWDAF is acting as a VFL server is described with reference to Figure 4e. The procedure of Figure 4e may be considered to be a refinement / alternative to that of Figure 4c. Context surrounding and further information on the procedure of Figure 4e can be found in Appendix D and Appendix E.

[0440] It should be noted that the procedure of Figure 4e is not limited to steps included therein nor their order, and one or more steps may be omitted, skipped, introduced, combined, or rearranged unless otherwise stated. Furthermore, the procedure of Figure 4e should be taken in the context of TS 23.288 v19.1.0. This procedure of Figure 4e may be used in conjunction with any of the approaches of the present disclosure.

[0441] 1. The NWDAF acting as VFL server determines the VFL clients that participate in VFL procedure in the VFL clients discovery and preparation phase as described in the clause 6.2H.2.1 and clause 6.2H.2.2 of TS 23.288 v19.1.0.

[0442] NOTE 1: VFL Server can determine to start the training based on local configuration and agreement among vendors and / or application providers participating in the same group for specific VFL task(s).

[0443] Steps 2-6 are repeated until the training termination condition is reached.

[0444] 2. To start the VFL training, the VFL server sends a request to start the training to all selected VFL clients The request includes VFL correlation ID, at least the parameters negotiated during the preparation phase, Optionally, the VFL Server includes: Analytic filter information, maximum response time (i.e. the maximum time between VFL clients receive intermediate model training information and send back intermediate training result).

[0445] Whether the parameters negotiated in the preparation phase are provided at the end of the preparation phase or at the start of the training is for further study (FFS).

[0446] If the VFL procedure continues in subsequent iterations, the VFL server sends a request for a new VFL training iteration containing the VFL correlation ID and intermediate model training information to each of the VFL clients for next round of VFL training.

[0447] 2a. The VFL server sends a Nnwdaf_VFLTraining_Subscribe to the selected NWDAF VFL clients(s).

[0448] 2b. The VFL server sends a Naf_VFLTraining_Subscribe to the selected trusted AF VFL clients(s).

[0449] 2c. For each selected untrusted AF VFL clients, the VFL server sends a Nnef_VFLTraining_AFClient_Subscribe to the NEF handling that AF.

[0450] 2d. For each selected untrusted AF VFL clients, the NEF sends a Naf_VFLTraining_Subscribe to that AF. The NEF may also translate the analytic filter information if needed, e.g. TAIs into geographical area.

[0451] 2e. If a NWDAF VFL client is selected as VFL client aggregator by the VFL server, this NWDAF VFL client may send Nnwdaf_VFLTraining_Subscribe to the one or more indirect NWDAF VFL client(s) as configured by the VFL server from which it desires to receive the client intermediate training results.

[0452] NOTE 2: In this release, the same NF associated with a VFL Server or VFL Client capability during the VFL training for a VFL correlation ID is also the same NF during the VFL inference.

[0453] Additional Parameters to be provided in the request are FFS.

[0454] It is FFS whether and how the local ML model is obtained by VFL Client in VFL training process.

[0455] 3. [Optional] Each VFL client collects its local data by using the current mechanism if the VFL client has no local data already available. The data used by each VFL Client is collected as per alignment information.

[0456] 4. During VFL training procedure, each VFL client further trains the local ML model associated with the same VFL Correlation ID based on their own collected or available data and when applicable (e.g. after the first round of training) and possible intermediate model training information distributed by the VFL server in the previous training iteration. Each VFL Client computes and reports the client intermediate training result of the local ML model to the VFL server.

[0457] NOTE 3: The intermediate model training information and intermediate training result are constructed in per sample granularity.

[0458] It is FFS and may depend on the service design: When the clients report the client intermediate training result, it also includes the corresponding VFL correlation ID.

[0459] 5. Each VFL client reports the computed client intermediate training result of the local ML model to the VFL server.

[0460] 5a. A NWDAF VFL client sends a Nnwdaf_VFLTraining_Notify.

[0461] 5b. A trusted AF VFL client sends a Naf_VFLTraining_Notify to the VFL server.

[0462] 5c. An untrusted AF VFL client sends a Naf_VFLTraining_Notify to the NEF.

[0463] 5d. For each untrusted AF VFL client, the NEF converts any external identifiers to internal identifiers and sends a Nnef_VFLTraining_AFClient_Notify to the VFL server.

[0464] 5e - 5f. An indirect NWDAF VFL client may send the client intermediate training results to the NWDAF VFL client aggregator from which it received the subscription request step 2e. This NWDAF VFL client aggregator aggregates the received client intermediate training results from the indirect NWDAF VFL clients, performs local computation, then sends one Nnwdaf_VFLTraining_Notify that includes its client intermediate training result to the VFL server.

[0465] 6. The VFL server may collect the local data and generate its own local intermediate training result. The NWDAF acting as VFL Server computes the intermediate model training information (e.g. gradient information or loss information) based on the VFL Client(s) intermediate training result(s) received in step 4, its own local intermediate results and the label. The intermediate model training information is used for updating the models of VFL clients. Different intermediate model training information may be computed for different VFL clients and for the VFL Server itself.

[0466] The VFL server may also compute the ML model metric (e.g. ML model accuracy) based on all the intermediate training result received from VFL clients and the label.

[0467] Whether weight of the VFL Client is computed by VFL server is FFS.

[0468] Whether VFL server and VFL clients share feature information is FFS.

[0469] 7. [Optional] The NWDAF acting as VFL server evaluates (e.g. based on the convergence of a loss function or loss value and / or if the pre-set iteration number is reached) whether VFL Training process converged. If the VFL Server evaluates the VFL Training process did not converge, the NWDAF acting as a VFL Server determines another round of VFL training is required and repeats step 2 - 6. If the VFL Server evaluates the VFL training process converged, it determines the VFL Training is completed. In this case, the VFL Server terminates the current VFL training process via step 7.

[0470] The VFL training termination decision may be also made as follows:

[0471] Based on the consumer request, the VFL server sends VFL status report to the consumer. The status report may include model metric (e.g. ML model accuracy).

[0472] The content of the VFL status report is FFS.

[0473] Whether VFL server sending convergence report to the VFL client and what is convergence report are FFS.

[0474] The consumer decides whether the current model can fulfil the requirement, e.g. ML model metric is satisfactory for the consumer and determines to stop or continue the training process. The consumer continues the training process or stops the training process.

[0475] Based on the subscription request sent from the consumer, the VFL server updates or terminates the current VFL training process.

[0476] Whether the ML model metric (e.g. ML model accuracy) defined for HFL can be re-applied to VFL is FFS.

[0477] 8. The VFL server sends VFL training termination message to VFL Client if it decides to terminate the VFL training process, the termination message contains VFL Correlation ID.

[0478] 8a. The VFL server sends a Nnwdaf_VFLTraining_Unsubscribe t to the selected NWDAF VFL clients(s).

[0479] 8b. The VFL server sends a Naf_VFLTraining_Unsubscribe to the selected trusted AF VFL clients(s).

[0480] 8c. For each selected untrusted AF VFL clients, the VFL server sends a Nnef_VFLTraining_AFClient_Unubscribe to the NEF handling that AF.

[0481] 8d. For each selected untrusted AF VFL clients, the NEF sends a Naf_VFLTraining_Unsubscribe to that AF.

[0482] 8e. An NWDAF VFL client aggregator may send Nnwdaf_VFLTraining_Unsubscribe to other one or more indirect NWDAF VFL client in step 2e.

[0483] 9. The VFL Server, stores VFL correlation ID, the local trained ML Model, the mapping information of the VFL correlation ID to the following parameters: Analytics ID related to the VFL training process, locally trained Model. Additionally, the VFL server stores the VFL client information, which may be used to determine associated VFL client in the VFL inference.

[0484] Each VFL client stores VFL correlation ID, the locally trained ML Model, the mapping information of the VFL correlation ID to locally trained Model.

[0485] NOTE 4: The VFL correlation ID and the stored mapping information are used later for inference as described in Clause 6.2H.2.4.1 of TS23.288 v19.1.0.

[0486] Whether VFL Training termination Flag in the termination message is required is determined after settling down the service operation.

[0487] NOTE 5: If untrusted AF is involved in VFL Clients, the message between NWDAF acting as VFL Server and the untrusted AF is via NEF.

[0488] How the NEF assists the VFL training process as well as whether the service operations going via NEF is using the existing or new service operation are FFS.

[0489] The details of the services in the procedure and whether VFL Training Start Flag is needed are FFS.

[0490] It is FFS whether sample / feature information is required to be provided or updated in each training.

[0491] Whether and how to include interoperability information in the VFL training procedure is FFS.

[0492] Whether and how to define the trigger of VFL training is FFS.

[0493] Whether and how to transfer the confirmation in VFL Preparation Phase at the beginning of VFL Training Phase is FFS.

[0494] A training procedure for VFL when an untrusted AF is acting as a VFL server is described with reference to Figure 4f. The procedure of Figure 4f may be considered to be a refinement / alternative to that of Figure 4d. Context surrounding and further information on the procedure of Figure 4f can be found in Appendix D and Appendix E.

[0495] It should be noted that the procedure of Figure 4f is not limited to steps included therein nor their order, and one or more steps may be omitted, skipped, introduced, combined, or rearranged unless otherwise stated. Furthermore, the procedure of Figure 4f should be taken in the context of TS 23.288 v19.1.0. This procedure of Figure 4f may be used in conjunction with any of the approaches of the present disclosure.

[0496] The ENs listed in clause 6.2H.2.3.1 of TS23.288 v19.1.0 are also applied to the procedure of Figure 4f.

[0497] 1. Same as step 1 in Figure 6.2H.2.3.1-1 of TS23.288 v19.1.0 (e.g. Figure 4c, 4e).

[0498] Steps 2-7 are repeated until the training termination condition is reached.

[0499] 2. To start VFL training, the VFL server do same as in step 2 in Figure 6.2H.2.3.1-1 (e.g. Figure 4c, 4e), using Nnef_VFLTraining_Subcribe.

[0500] 2c. If a NWDAF VFL client is selected as VFL client aggregator by the VFL server, this NWDAF VFL client may send Nnwdaf_VFLTraining_Subscribe to other one or more indirect NWDAF VFL client as configured by the VFL server from which it desires to receive the client intermediate training results.

[0501] 3. [Optional] Same as step 3 in Figure 6.2H.2.3.1-1 (e.g. Figure 4c, 4e).

[0502] 4. Same as step 4 in Figure 6.2H.2.3.1-1 (e.g. Figure 4c, 4e).

[0503] 5. Same as step 5 in Figure 6.2H.2.3.1-1 (e.g. Figure 4c, 4e).

[0504] 5a. A NWDAF VFL client sends a Nnwdaf_VFLTraining_Notify.

[0505] 5b. For an untrusted AF acting as VFL server, the NEF converts any internal identifiers to external identifiers, provides the external NWDAF ID and sends a Nnef_VFLTrainingNotify to the VFL server.

[0506] 5c-5d The indirect NWDAF VFL clients share the client intermediate training results with the NWDAF VFL client aggregator from which it received subscription request in step 2c. This NWDAF VFL client aggregates the received client intermediate training results from the indirect NWDAF VFL clients, performs local computation, then sends one Nnef_VFLTraining_Notify to the NEF by including its client intermediate training result.

[0507] 6. [Optional] Same as step 6 in Figure 6.2H.2.3.1-1 (e.g. Figure 4c, 4e).

[0508] 7. Same as step 7 in Figure 6.2H.2.3.1-1 (e.g. Figure 4c, 4e).

[0509] 8. Same as step 8 of Figure 6.2H.2.3.1-1 (e.g. Figure 4c, 4e). However, sub steps in that figure are not applicable.

[0510] 8a. For each NWDAF VFL client, the untrusted AF as VFL server sends a Nnef_VFLTraining Unsubscribe to the NEF handling that AF. The untrusted AF identifies the VFL client using the external NWDAF ID assigned in the discovery procedure (see clause 6.2H.2.1.1 of TS23.288 v19.1.0).

[0511] 8b. The NEF sends an Nnwdaf_VFLTraining_Unsubscribe to the NWDAF VFL client indicated by the received external NWDAF ID.

[0512] 8c. An NWDAF VFL client may send Nnwdaf_VFLTraining_Unsubscribe to other one or more indirect NWDAF VFL client in step 2c.

[0513] 9. Same as step 9 of Figure 6.2H.2.3.1-1 (e.g. Figure 4c, 4e).

[0514] Procedure for VFL Inference

[0515] The procedure in Figure 5 is to support VFL inference with AF or NWDAF acting as the VFL server. During the inference, the local inference results might be:

[0516] ㆍ shared between some VFL clients, and / or

[0517] ㆍ sent to the VFL server by the VFL clients after it finished local inference.

[0518] If the VFL server is untrusted AF, the NWDAF VFL clients send the intermediate results (for VFL model training) and / or local inference results to the VFL sever via NEF.

[0519] If the VFL client(s) is untrusted AF, the server might be NWDAF, the VFL untrusted AF client, interacted with the VFL server NWDAF and other VFL clients NWDAF via NEF.

[0520] It should be noted that the procedure of Figure 5 is not limited to steps included therein nor their order, and one or more steps may be omitted, skipped, introduced, combined, or rearranged unless otherwise stated. The numbered steps correspond to those of Figure 5.

[0521] 0. The analytics consumer sends an Analytics request / subscribe (including e.g. Analytics ID, Target of Analytics Reporting= e.g. UE IDs, slices IDs, NF (instance) IDs etc., Analytics Reporting Information=Analytics target period)) to NWDAF containing AnLF by invoking a Nnwdaf_AnalyticsInfo_Request or a Nnwdaf_AnalyticsSubscription_Subscribe.

[0522] 1. If the NWDAF containing AnLF can act as the VFL server to generate the VFL inference results for the requested analytics ID, the NWDAF containing AnLF triggers the VFL inference as requested by the analytics consumer. Then step 2 is skipped.

[0523] If the NWDAF containing AnLF cannot generate the analytics output or the inference results, the NWDAF containing AnLF sends a subscription request to a VFL server that is capable to support the VFL inference to generate the outputs of the required analytics ID by performing step 2.

[0524] ㆍ Before step 2, the NWDAF containing AnLF may perform VFL server discovery to find the VFL that is able to act as VFL server for the required analytics ID, sample IDs (e.g. UE IDs, slices IDs, NF (instance) IDs, etc.), e.g. by invoking the Nnrf_NFDiscovery_Request service operation towards the NRF by indicating one or more of the following: ID of the VFL Model required (e.g. analytics ID, VFL process (model training and / or inference) related ID, correlation ID, etc.), Model filter information, VFL related capability Type (i.e. VFL server), Time Period of Interest, Service Area, sample ID, or feature space / ID, etc.

[0525] 2. [optional] the NWDAF containing AnLF that cannot act as VFL sever sends request / subscribe to the VFL server, e.g. based on discovery outcome.

[0526] 2a. If the VFL server is the NWDAF, the NWDAF containing AnLF sends a subscription request to VFL server NWDAF using Nnwdaf_AnalyticsInfo_Request or Nnwdaf_AnalyticsSubscription_Subscribe including Analytics ID, Target of Analytics Reporting = e.g. UE IDs.

[0527] 2b. If the VFL server is (trusted) AF, the NWDAF containing AnLF sends a subscription request to VFL server AF using Naf_AnalyticsExposure_Subscribe including Analytics ID, Target of Analytics Reporting = e.g. UE IDs.

[0528] 2c1 and 2c2. If the VFL server is (untrusted) AF, the NWDAF containing AnLF sends a subscription or request to VFL server via NEF, by invoking e.g. NEF service (operation) for analytics exposure including Nnef_AnalyticsExposure_Subscribe or Nnef_AnalyticsExposure_request; then the NEF forwards the request or subscription to the AF by invoking service (operation) for analytics exposure, e.g. Naf_AnalyticsExposure_Subscribe or Naf_AnalyticsExposure_request.

[0529] For the AF service for analytics exposure, the existing Naf_EventExposure service might be reused by introducing enhancement, or new service (operation) might be specified.

[0530] 3. Based on the information received in the previous steps, the VFL server decides to initiate the VFL inference procedure with the VFL clients.

[0531] The VFL clients might be the same as or a subset of those performed VFL model training of the VFL model for the same ID (e.g. analytics ID, correlation ID, VFL process ID, etc.).

[0532] The VFL server may require information sharing between VFL clients, such as, sharing local or intermediate inference results and / or coordinating inference steps among clients. e.g. one VFL client may share the local / intermediate inference results with other VFL client(s). The VFL clients may need to use the local / intermediate inference results from these VFL clients to generate its intermediate output.

[0533] The VFL server may indicate to the VFL clients whether and / or how to coordinate with other VFL clients / the coordination requirement and configuration between / among VFL clients, by one or more of the following:

[0534] ㆍ Grouping the VFL clients into different categories / group. Indicating group membership to clients for coordination purposes The VFL server may indicate the group information to the VFL clients. e.g. the VFL clients in the group (by indicating the ID of the clients), some VFL clients will coordinate with other VFL clients, some VFL clients could send the local / intermediate inference results back to the server without coordinating with other VFL clients.

[0535] ㆍ The VFL server may only indicate to each VFL client about the (information of the) group that this VFL client belongs to.

[0536] For VFL clients that need to coordinate with others, the VFL server provides each client with a list of VFL client IDs to which it should transmit its intermediate outputs or local results. This approach ensures that each VFL client knows exactly which other clients it needs to communicate with during the inference process.

[0537] ㆍ Example: The VFL server, or a designated "master" VFL client, assigns to each VFL client a specific list of VFL client IDs. For instance:

[0538] o VFL Client 1 receives the list: [VFL Client 2]

[0539] o VFL Client 2 receives the list: [VFL Client 3]

[0540] o VFL Client 3 receives the list: [VFL Client 4]

[0541] o ...and so on.

[0542] After VFL Client 1 completes its local computation and generates intermediate results, it transmits this information to VFL Client 2 as specified in its list. VFL Client 2, upon receiving the data from VFL Client 1 and completing its own computation, sends its results to VFL Client 3. This process continues sequentially until the last VFL client in the list completes the inference as configured by the VFL server.

[0543] ㆍ The "master" VFL client, which might be an active participant in the VFL process, can oversee and control the inference procedure among the group of VFL clients based on the configuration provided by the VFL server.

[0544] Alternatively, the VFL server or a VFL client may inform each VFL client of multiple VFL client IDs to which it needs to transmit its intermediate outputs or local results. This allows for more complex coordination, where a VFL client can share its results with multiple other clients simultaneously or in a specified order.

[0545] ㆍ Example: VFL Client 1 receives the list: [VFL Client 2, VFL Client 3]. This means that after completing its local computation, VFL Client 1 sends its intermediate results to both VFL Client 2 and VFL Client 3. These clients can then proceed with their computations using the data received from VFL Client 1.

[0546] ㆍ For the VFL clients that need to coordinate with other, the VFL server may indicate the sequence of local / intermediate inference results between VFL client; or the VFL client may indicate the sequence of local / intermediate inference results between VFL client or the ID of the next VFL client to share information with.

[0547] o E.g. the VFL server or (the master) VFL client may indicate VFL client IDs in a sequence, VFL client ID1, ID2, ID3.... then the VFL client 1 will share the local computation information with VFL client 2; VFL client 2 will share its local computation information with VFL client 3, the inference will be performed successively until the last VFL client as configured by the VFL server. (The master) VFL client, might be a VFL active participant, may control the VFL inference of a group of VFL clients, e.g. as configured by VFL server.

[0548] o The VFL client / server may inform ID(s) of VFL client(s) that this VFL client 1 need to coordinate with; or the ID of the (next) VFL client that this VFL client 1 need to coordinate with.

[0549] ㆍ The VFL server includes the above VFL inference coordination requirement and configuration.

[0550] One or more of the following procedures may happen in parallel or within one VFL inference procedure.

[0551] 3a. If the VFL server is the NWDAF and one or more of the VFL client is the NWDAF: VFL server NWDAF sends a VFL Inference request / subscription to the VFL clients which includes an Analytics ID, the UE ID(s), the VFL model correlation ID to indicate the VFL client which previously well-trained VFL local model associated with this ID will be used, e.g. by invoking NWDAF services.

[0552] ㆍ e.g. the NWDAF service could be the Nnwdaf_AnalyticsInfo_Request service, Nnwdaf_AnalyticsSubscription_Subscribe service, or Nnwdaf_MLModelTraining_Subscribe, Nnwdaf_MLModelTrainingInfo_Request, by adding the VFL model correlation ID / VFL process ID / VFL inference ID, the sample IDs (e.g. UE IDs) and / or the feature (IDs / indicators) for the VFL inference; VFL model ID to indicate the model that has been trained for the analytics ID, feature space, sample IDs, etc.; indication for VFL inference procedure (e.g. VFL inference flag / indication) to clarify this subscription or request is to run VFL inference procedure.

[0553] ㆍ the NWDAF service could be new types of services for VFL inference procedure, e.g. Nnwdaf_VFLinference_Subscribe service, Nnwdaf_VFLinference_request service, details are given in clause 3.5.4 ("NWDAF Services for VFL / ML Model Training and / or Inference").

[0554] 3b. If the VFL server is the NWDAF and one or more of the VFL client is the (trusted) AF, VFL server NWDAF sends a VFL Inference request / subscription to the VFL clients which includes an Analytics ID, the UE ID(s), the VFL model correlation ID to indicate the VFL client which previously well-trained VFL local model associated with this ID will be used, e.g. by invoking the AF services to request the relevant AF to perform local VFL inference / computation.

[0555] ㆍ The service sent by the NWDAF VFL server to the VFL client AF might be Naf_EventExposure service by introducing the VFL model correlation ID / VFL process ID / VFL inference ID, the sample IDs (e.g. UE IDs) and / or the feature (IDs / indicators) for the VFL inference; VFL model ID to indicate the model that has been trained for the analytics ID, feature space, sample IDs, etc.; indication for VFL inference procedure (e.g. VFL inference flag / indication) to clarify this subscription or request is to run VFL inference procedure.

[0556] ㆍ the service could be new types of services for VFL inference procedure and / or VFL model training procedure, e.g. Naf_VFLinference_Subscribe service, Naf_VFLinference_request service, details are given in clause 3.5.5 ("AF Services for VFL / ML Model Training and / or Inference").

[0557] 3c. If the VFL server is the NWDAF, the VFL client AF is untrusted, the VFL server NWDAF sends the VFL inference request to the NEF, and then the NEF forwards the VFL inference request to the untrusted AF VFL client.

[0558] ㆍ The VFL server NWDAF sends the request to the NEF, e.g. by invoking the Nnef_MLModelTraining_Subscribe or Nnef_MLModelTraining_Request which is define for VFL model training and / or VFL inference; or Nnef_VFLinference_Subscribe or Nnef_MLinference_Request which are defined for VFL inference, e.g. the service consumer invokes those service operation to request the NEF forward to VFL inference request and parameters to VFL client AF.

[0559] ㆍ Then, the NEF forwards the VFL inference request to the untrusted AF VFL, e.g.

[0560] o by invoking Naf_EventExposure service. Need to introduce the following to existing AF service (operation): the VFL model correlation ID / VFL process ID / VFL inference ID, the sample IDs (e.g. UE IDs) and / or the feature (IDs / indicators) for the VFL inference; VFL model ID to indicate the model that has been trained for the analytics ID, feature space, sample IDs, etc.; indication for VFL inference procedure (e.g. VFL inference flag / indication) to clarify this subscription or request is to run VFL inference procedure.

[0561] o by invoking new AF service, e.g. new types of services for VFL inference procedure and / or VFL model training procedure, e.g. Naf_VFLinference_Subscribe service, Naf_VFLinference_request service, details are given in clause 3.5.5 ("AF Services for VFL / ML Model Training and / or Inference").

[0562] 3d. If the VFL server is the (trusted) AF and one or more of the VFL client is the NWDAF, VFL server AF sends a VFL Inference request / subscription to the VFL clients which includes an Analytics ID, the UE IDs, the VFL model correlation ID to indicate the VFL client which previously well-trained VFL local model associated with this ID will be used. The procedure is similar to / the same as 3a.

[0563] ㆍ e.g. VFL server invokes the Nnwdaf_AnalyticsInfo_Request service, Nnwdaf_AnalyticsSubscription_Subscribe service, or Nnwdaf_MLModelTraining_Subscribe, Nnwdaf_MLModelTrainingInfo_Request, by adding the VFL model correlation ID / VFL process ID / VFL inference ID, the sample IDs (e.g. UE IDs) and / or the feature (IDs / indicators) for the VFL inference; VFL model ID to indicate the model that has been trained for the analytics ID, feature space, sample IDs, etc.; indication for VFL inference procedure (e.g. VFL inference flag / indication) to clarify this subscription or request is to run VFL inference procedure.

[0564] ㆍ Or VFL server may invoke new types of NWDAF services for VFL inference procedure, e.g. Nnwdaf_VFLinference_Subscribe service, Nnwdaf_VFLinference_request service, details are given in clause 3.5.4 ("NWDAF Services for VFL / ML Model Training and / or Inference").

[0565] 3e. If the VFL sever is (untrusted) AF and one or more of theVFL client is the NWDAF, the VFL server AF sends the request to the NEF, and NEF forwards the request to the VFL client NWDAF(s).

[0566] ㆍ The VFL server NWDAF sends the request to the NEF, e.g. by invoking the Nnef_MLModelTraining_Subscribe or Nnef_MLModelTraining_Request which is define for VFL model training and / or VFL inference; or Nnef_VFLinference_Subscribe or Nnef_MLinference_Request which are defined for VFL inference, e.g. the service consumer invokes those service operation to request the NEF forward to VFL inference request and parameters to VFL client AF.

[0567] ㆍ Then, the NEF forwards the VFL inference request to the VFL client, e.g. by using NWDAF services.

[0568] o e.g. the NEF forwards the VFL inference request by invoking the Nnwdaf_AnalyticsInfo_Request service, Nnwdaf_AnalyticsSubscription_Subscribe service, or Nnwdaf_MLModelTraining_Subscribe, Nnwdaf_MLModelTrainingInfo_Request, by adding the VFL model correlation ID / VFL process ID / VFL inference ID, the sample IDs (e.g. UE IDs) and / or the feature (IDs / indicators) for the VFL inference; VFL model ID to indicate the model that has been trained for the analytics ID, feature space, sample IDs, etc.; indication for VFL inference procedure (e.g. VFL inference flag / indication) to clarify this subscription or request is to run VFL inference procedure.

[0569] o the NEF forwards the VFL inference by invoking new types of services for VFL inference procedure and / or VFL model training, e.g. Nnwdaf_VFLinference_Subscribe service, Nnwdaf_VFLinference_request service, details are given in clause 3.5.4 ("NWDAF Services for VFL / ML Model Training and / or Inference").

[0570] 4. The VFL clients perform local VFL inference, based on requirement, parameters and configurations provided by the VFL server.

[0571] If the VFL clients do not have sufficient local data for the VFL inference, the VFL clients may collect data from 5GC NF, AF, OAM, RAN node, etc.

[0572] 4.1 VFL clients may coordinate with other VFL client(s) to perform VFL inference, e.g. based on requirement, configuration and parameters from the VFL server or other VFL clients, as described in step 3. Step 4a - 4e describe the coordinate between VFL clients.

[0573] ㆍ 4a. The VFL Client #1 (e.g. a NWDAF, a trusted AF, or an untrusted AF) initiates / triggers local model computation to calculate intermediate results for VFL inference.

[0574] ㆍ 4b. VFL Client#1 transmits the intermediate inference results to the next VFL client(s), based on the sequence configured by the VFL server or as determined by VFL Client #1.

[0575] o According to the instructions provided in Step 3, the VFL server may have supplied each VFL client with a list of VFL client IDs and the sequence in which they should perform local inference. This list includes the IDs of participating VFL clients and the order of coordination (e.g., VFL Client #1 is first, then VFL Client #2, etc.). In this case, each VFL client knows exactly which client(s) to interact with next.

[0576] o The VFL Client#1 may indicate the full list of the VFL Clients that participate the VFL inference with VFL client coordination (e.g. IDs of the VFL clients) and the order of the VFL Clients to perform VFL inference (e.g. VFL Client#1 is the first client to perform local inference, then VFL Client#2, etc.). In this case, each VFL client can work out the next VFL client to interact with based on the VFL client list, the order, the previous VFL client

[0577] o VFL Client #1 may include the remaining list of VFL clients and their sequence when transmitting intermediate results to VFL Client #2. This allows VFL Client #2 to determine subsequent clients for coordination based on the received information.

[0578] o If the VFL server specifies that a VFL client should transmit its intermediate outputs or local results to multiple VFL clients, the provided list may include multiple VFL client IDs. This enables parallel processing or more complex coordination patterns.

[0579] o Or the server may indicate the full list of the VFL Clients that participate the VFL inference with VFL client coordination (e.g. IDs of the VFL clients) and the order of the VFL Clients to perform VFL inference (e.g. VFL Client#1 is the first client to perform local inference, then VFL Client#2, etc.), to all of the VFL clients or the VFL clients that need to coordinate with other VFL clients, e.g. in step 3. In this case, each VFL client can work out the next VFL client to interact with based on the VFL client list, the order, the previous VFL client

[0580] o VFL Client#1 may indicate the remaining VFL Clients that participate the VFL inference process with VFL client coordination, the order of the remaining VFL Clients for performing local inference to VFL Client #2 / next VFL Client for VFL inference.

[0581] ㆍ 4c - 4e. Repeat Step 4a and 4b until the VFL training procedure propagates to the last VFL Client based on the order of VFL inference configured by the VFL Server.

[0582] o Each VFL client performs its local computation upon receiving intermediate results from the previous client(s) and then transmits its intermediate results to the next VFL client(s) in the sequence.

[0583] o If any VFL client encounters an error or cannot proceed, it should immediately notify the VFL server, and / or the other VFL clients it coordinates with, then the other VFL server can report the absence / error of this VFL client to the VFL server. The VFL server can then handle the exception by reconfiguring the sequence, assigning the task to another VFL client, or taking other corrective actions, skip this error VFL client for inference, etc.

[0584] ㆍ If the coordination is between NWDAF clients, the service (operation) invoked to perform VFL inference might be NWDAF service, e.g. Nnwdaf_AnalyticsInfo_Request service, Nnwdaf_AnalyticsSubscription_Subscribe service, or Nnwdaf_MLModelTraining_Subscribe, Nnwdaf_MLModelTrainingInfo_Request, or new service (operation). The service (operation) carries the VFL (intermediate) inference results, the VFL client coordination requirement / configuration.

[0585] ㆍ If the coordination is between a NWDAF client and a AF client:

[0586] o If the coordination is triggered by a NWDAF client towards to a trusted AF client, Naf_EventExposure service or new types of AF services for VFL inference procedure could be used. The service (operation) carries the VFL (intermediate) inference results, the VFL client coordination requirement / configuration.

[0587] o If the coordination is triggered by a NWDAF client towards to an untrusted AF client, the request for VFL inference (coordination) will be transferred via NEF. E.g. the VFL client NWDAF sends the request to the NEF, e.g. by invoking the Nnef_MLModelTraining_Subscribe or Nnef_MLModelTraining_Request or new types of services for VFL inference procedure and / or VFL model training procedure that carry VFL (intermediate) inference results, the VFL client coordination requirement / configuration. The NEF invokes the following service towards the untrusted AF: Naf_EventExposure service or new AF service (e.g. new types of services for VFL (inference) process) that carries the VFL (intermediate) inference results, the VFL client coordination requirement / configuration.

[0588] ㆍ the coordination between clients AF is out of 3GPP scope.

[0589] 5. The VFL Client #N notifies the intermediate (inference) results to the VFL Server. After completing its local computation and any necessary coordination with other VFL clients as per the sequence defined in Step 3, VFL Client #N (the last client in the sequence) notifies the VFL server of the intermediate inference results. The method of notification depends on the types of VFL server and client involved.

[0590] 5a. If the VFL server is untrusted AF, the VFL Client #N is NWDAF, the client notifies the intermediate (inference) results to the VFL Server via NEF by invoking Nnwdaf service for VFL (inference) process that carries the intermediate inference results, then the NEF service VFL (inference) process that carries the intermediate inference results. The client NWDAF and NEF will invoke the Notify or Response service operation depends on the service operations used in step 3, based on the existing Subscribe-Notify model or Request-Response model.

[0591] Please note, in this disclosure, the service operations could be Subscribe-Notify model or Request-Response model, based on existing mechanism defined in 3GPP specifications, e.g. if the Subscribe-Notify model could be Nnef_VFLinference_Subscribe and Nnef_VFLinference_Notify, Request-Response model could be Nnef_VFLinference_Request and Nnef_VFLinference_Response.

[0592] 5b. If the VFL server is trusted AF, the VFL Client #N is NWDAF, the client invokes the NWDAF service for (intermediate) VFL inference result indication / notification / response. To use Notify or Response service operation depends on the service operations used in step 3.

[0593] 5c. If the VFL server is NWDAF, the VFL Client #N is NWDAF, same as 5b.

[0594] 5d. If the VFL server is NWDAF, the VFL Client #N is trusted AF, the client invokes the AF service for (intermediate) VFL inference result indication / notification / response. To use Notify or Response service operation depends on the service operations used in step 3.

[0595] 5e. If the VFL server is NWDAF, the VFL Client #N is untrusted AF, the client invokes the AF service then NEF service for (intermediate) VFL inference result indication / notification / response. To use Notify or Response service operation depends on the service operations used in step 3.

[0596] For the VFL clients that do not need to coordinate with other VFL clients for VFL inference, those VFL clients performs step 4a, then perform step 5 (one or more of 5a - 5e).

[0597] 6. VFL Server aggregates intermediate inference results:

[0598] o The VFL server may also process its own local data to generate intermediate inference results.

[0599] o The VFL server aggregates the intermediate inference results received from all participating VFL clients (including its own results, if applicable) to generate the final VFL inference results.

[0600] o Aggregation is based on identifiers such as the VFL model correlation ID, VFL process ID, or Analytics ID, as established in Step 3.

[0601] o The VFL server might perform validation checks on the received results to ensure data integrity and consistency before aggregation.

[0602] 7. The VFL server sends the inference results of the required analytics ID to the NWDAF containing AnLF.

[0603] 7a. If the NWDAF is the VFL server, the VFL server sends Nnwdaf_AnalyticsInfo_Response or Nnwdaf_AnalyticsSubscription_Notify to the consumer (i.e NWDAF containing AnLF) including the VFL inference results.

[0604] 7b. If the AF is the VFL server, the VFL server AF sends Naf_AnalyticsExposure_ Notify to the consumer (i.e NWDAF containing AnLF) including the VFL inference results.

[0605] 7c1 and 7c2. If the VFL server is (untrusted) AF, the VFL server is (untrusted) AF sends NWDAF containing AnLF sends a notify or response via NEF, by invoking e.g. AF then NEF service (operation) for analytics exposure or VFL inference results exposure / notification / response.

[0606] 8. The NWDAF containing AnLF provides the analytics output to the analytics consumer NF based on the VFL inference results by means of either Nnwdaf_AnalyticsInfo_Response or Nnwdaf_AnalyticsSubscription_Notify, depending on the service used in step 0.

[0607] Procedure for VFL Inference with Information Sharing Among Successive VFL Clients

[0608] The procedures for VFL inference with information sharing among successive VFL clients is similar to that described above under "Procedure for VFL Model Training with Information Sharing Among Successive VFL Clients". However, a difference is that for inference steps 2-7, these may only be performed once rather than being repeated.

[0609] Procedure for VFL Inference with Information Sharing Among VFL Clients and Aggregated by VFL Client or NEF

[0610] The procedures for VFL inference with information sharing among VFL clients and aggregated by VFL client or NEF is similar to that described above under "Procedure for VFL Model Training with Information Sharing Among VFL Clients and Aggregated by a VFL Client or NEF". However, a difference is that for inference steps 2-9 / 7, these may only be performed once rather than being repeated.

[0611] Figure 5a illustrates an inference procedure for vertical federated learning when a NWDAF is acting as VFL server, according to an embodiment of the disclosure. For completeness, a full description of Figure 5a is set out below where steps other than 5e1-5e3 correspond to the equivalent numbered steps in 6.2H.2.4.1 of TS 23.288 v19.1.0. All references to 6.2.H... refer to TS 23.288 v19.1.0.

[0612] It should be noted that the procedure of Figure 5a is not limited to steps included therein nor their order, and one or more steps may be omitted, skipped, introduced, combined, or rearranged unless otherwise stated.

[0613] 0. The analytics consumer NF sends an Analytics request / subscribe (Analytics ID, Target of Analytics Reporting= e.g. UE IDs and optionally Analytics Reporting Information=Analytics target period and Analytics Filter) to NWDAF containing AnLF by invoking a Nnwdaf_AnalyticsInfo_Request or a Nnwdaf_AnalyticsSubscription_Subscribe.

[0614] 1. If the NWDAF containing AnLF can be the VFL server to generate the VFL inference results for the requested analytics ID, then step 1 is skipped.

[0615] If the NWDAF containing AnLF can not generate the analytics output, the NWDAF containing AnLF determines the VFL Server for the requested analtyics, sends a subscription request to NWDAF VFL server using Nnwdaf_AnalyticsInfo_Request or Nnwdaf_AnalyticsSubscription_Subscribe including Analytics ID, Target of Analytics Reporting = e.g. UE IDs and optionally Analytics Reporting Information=Analytics target period and Analytics Filter.

[0616] 2. Based on the information received in the step 0 or 1, VFL server decides to initiate the VFL inference procedure with the VFL clients. VFL Server selects clients(s) using information stored in the VFL training process. The server may select some or no clients, e.g. depending on the accuracy of the VFL model, the contribution to the training result and the current status of the VFL clients.

[0617] When no VFL Clients are selected, the VFL server may generates the VFL inference results based only on its local trained ML model associated with the determined VFL correlation ID, skipping the steps 2 - 6 (and 7 if step 1 was also skipped).

[0618] VFL server NWDAF sends a VFL Inference request / subscription to the VFL clients including the Target of VFL inference = e.g. UE IDs, VFL correlation ID to indicate the VFL client which previously well-trained VFL local model associated with this ID will be used and optionally VFL inference filter.

[0619] 2a. For each NWDAF VFL client, the VFL Server NWDAF sends an Nnwdaf_VFLInference_Subscribe or Nnwdaf_VFLInference_Request to the VFL client.

[0620] 2b. For each trusted AF VFL client, the VFL Server NWDAF sends an Naf_VFLInference_Subscribe or Naf_VFLInference_Request to the VFL client.

[0621] 2c. For each untrusted AF VFL client, the VFL Server NWDAF sends an Nnef_VFLInference_Subscribe or Nnef_VFLInference_Request to the NEF serving the AF.

[0622] 2d. For each untrusted AF VFL client, the NEF converts any internal identifiers to external identifiers and sends an Naf_VFLInference_Subscribe or Naf_VFLInference_Request to the untrusted AF VFL client.

[0623] 3. Each VFL Client collects its local data by using the current mechanism if the VFL Client does not have local data available already.

[0624] 4. Based on the VFL correlation ID, each VFL Client determines the VFL local model to generate the intermediate local inference results.

[0625] 5. VFL Client sends the client intermediate results to the VFL server.

[0626] The intermediate results, which are sent from the VFL Client to the VFL Server during the VFL inference process, are the information for the VFL Server to combine and generate the VFL inference results.

[0627] If the VFL server used an inference subscription in step 2, step 5 may be repeated.

[0628] 5a. Each NWDAF VFL client sends an Nnwdaf_VFLInference_Notify or Nnwdaf_VFLInference_Request response to the VFL Server NWDAF.

[0629] 5b. Each trusted AF VFL client sends a Naf_VFLInference_Notify or Naf_VFLInference_Request response to the VFL Server NWDAF.

[0630] 5c. Each untrusted AF VFL client sends a Naf_VFLInference_Notify or Naf_VFLInference_Request response to the NEF.

[0631] 5d. For each untrusted AF VFL client, the NEF converts any external to internal identifiers and sends an Nnef_VFLInference_Notify or Nnef_VFLInference_Request response to the NWDAF VFL server.

[0632] 5e1 - 5e3. Alternatively, the NWDAF VFL clients may share the client intermediate inference results with a NWDAF VFL client configured by the VFL server. This NWDAF VFL client aggregates the received client intermediate inference results and perform local computation on its local model using the aggregated client intermediate inference results. Then it sends one Nnwdaf_VFLInference_Notify or Nnwdaf_VFLInference_Request response that includes the client intermediate inference result of this NWDAF VFL client to the VFL server.

[0633] 6. The VFL server may collect its local data and generate the intermediate local inference results. When the VFL Server selected VFL clients to participate in the VFL Inference process, it combines all the intermediate results to generate the VFL inference results based on the VFL correlation ID. The VFL server takes into account the participation of each VFL client during the ML training process and the importance of the intermediate results when generates the combined inference output.

[0634] 7. Depending on request, the NWDAF VFL server sends Nnwdaf_AnalyticsInfo_Response or Nnwdaf_AnalyticsSubscription_Notify to the consumer (i.e NWDAF containing AnLF) including the VFL inference results.

[0635] 8. The NWDAF containing AnLF provides the analytics output to the analytics consumer NF based on the VFL inference results by means of either Nnwdaf_AnalyticsInfo_Response or Nnwdaf_AnalyticsSubscription_Notify, depending on the service used in step 0.

[0636] Figure 5b illustrates an inference procedure for vertical federated learning when an untrusted AF is acting as a VFL server, according to an embodiment of the disclosure. For completeness, a full description of Figure 5b is set out below where steps other than 5c-5e and 5f correspond to the equivalent numbered steps in 6.2H.2.4.1 of TS 23.288 v19.1.0 (or described with reference to Figure 5a of the present application). All references to 6.2.H... refer to TS 23.288 v19.1.0.

[0637] It should be noted that the procedure of Figure 5b is not limited to steps included therein nor their order, and one or more steps may be omitted, skipped, introduced, combined, or rearranged unless otherwise stated.

[0638] The inference procedure when untrusted AF is acting as VFL server may be triggered by a request or subscription from a 5GC consumer NF or internal service logic of the AF acting as VFL server. If triggered by internal service logic of the AF acting as VFL server, the steps 0, 1,7 and 8 are skipped. The inference procedure triggered by internal service logic of the AF acting as VFL server is out of 3GPP scope.

[0639] 0. Same as step 0 in clause 6.2H.2.4.1.

[0640] 1. Same as step 1 in clause 6.2H.2.4.1, to NEF using Nnef_Inference_subscribe. NEF forwards the subscription request to AF using Naf_Inference_subscribe.

[0641] 2. Same as step 2 in clause 6.2H.2.4.1, to NEF using Nnef_VFLInference_subscribe. An untrusted AF includes the external NWDAF ID and sends the request to the NEF.

[0642] NEF converts any received external identifiers to internal identifiers and forwards the subscription request to NWDAF using Nnwdaf_VFLInference_subscribe.

[0643] 3. Same as step 3 in clause 6.2H.2.4.1.

[0644] 4. Same as step 4 in clause 6.2H.2.4.1.

[0645] 5. Same as step 5 in clause 6.2H.2.4.1, to NEF using Nnwdaf_VFLInference_Notify.

[0646] Alternatively,

[0647] 5c-5e. the NWDAF VFL clients share the client intermediate inference results with a NWDAF VFL client configured by the VFL server. This NWDAF VFL client aggregates the received client intermediate inference results and perform local computation on its local model using the aggregated client intermediate inference results. Then it sends one notify message to the NEF by including its client intermediate inference result.

[0648] 5f. For an untrusted AF acting as VFL server, the NEF converts the internal identifier to external identifier of the NWDAF VFL client that aggregates the intermediate inference results, provides the external NWDAF ID and sends a Nnef_VFLTrainingNotify to the VFL server.

[0649] If the VFL server used an inference subscription in step 2, step 5 may be repeated.

[0650] 6. Same as step 6 in clause 6.2H.2.4.1.

[0651] 7. Same as step 7 in clause 6.2H.2.4.1, to NEF using Naf_Inference_Notify.

[0652] NEF converts any received internal identifiers to external identifiers and forwards the subscription Notify to NWDAF using Nnef_Inference_Notify.

[0653] 8. Same as step 8 in clause 6.2H.2.4.1.

[0654] The procedures of Figures 5a and 5b and any feature thereof (e.g. new steps 5c-e / f) may also be applied to any of the inference procedures described herein.

[0655] An inference procedure for VFL when a NWDAF or Trusted AF is acting as a VFL server is described with reference to Figure 5c. The procedure of Figure 5c may be considered to be a refinement / alternative to that of Figure 5a. Context surrounding and further information on the procedure of Figure 5c can be found in Appendix D and Appendix E.

[0656] It should be noted that the procedure of Figure 5c is not limited to steps included therein nor their order, and one or more steps may be omitted, skipped, introduced, combined, or rearranged unless otherwise stated. Furthermore, the procedure of Figure 5c should be taken in the context of TS 23.288 v19.1.0. This procedure of Figure 5c may be used in conjunction with any of the approaches of the present disclosure.

[0657] 0. The analytics consumer NF sends an Analytics request / subscribe (Analytics ID, Target of Analytics Reporting= e.g. UE IDs and optionally Analytics Reporting Information=Analytics target period and Analytics Filter) to NWDAF containing AnLF by invoking a Nnwdaf_AnalyticsInfo_Request or a Nnwdaf_AnalyticsSubscription_Subscribe.

[0658] 1. If the NWDAF containing AnLF can be the VFL server to generate the VFL inference results for the requested analytics ID, then step 1 is skipped.

[0659] If the NWDAF containing AnLF can not generate the analytics output, the NWDAF containing AnLF determines the VFL Server for the requested analytics, sends a subscription request to NWDAF VFL server using Nnwdaf_AnalyticsInfo_Request or Nnwdaf_AnalyticsSubscription_Subscribe including Analytics ID, Target of Analytics Reporting = e.g. UE IDs and optionally Analytics Reporting Information=Analytics target period and Analytics Filter.

[0660] 2. Based on the information received in the step 0 or 1, VFL server decides to initiate the VFL inference procedure with the VFL clients. VFL Server selects clients(s) using information stored in the VFL training process. The server may select some or no clients, e.g. depending on the accuracy of the VFL model, the contribution to the training result and the current status of the VFL clients.

[0661] VFL server NWDAF sends a VFL Inference request / subscription to the VFL clients including the Target of VFL inference = e.g. UE IDs, VFL correlation ID to indicate the VFL client which previously well-trained VFL local model associated with this ID will be used and optionally VFL inference filter.

[0662] It is FFS whether additional parameters are needed to send from the VFL server to VFL client, e.g. parameters used in training phase and parameters from Analytics request.

[0663] It is FFS how the origin of analytics results can be traced and explained if not all clients participate and results are not satisfying.

[0664] 2a. For each NWDAF VFL client, the VFL Server NWDAF sends an Nnwdaf_VFLInference_Subscribe or Nnwdaf_VFLInference_Request to the VFL client.

[0665] 2b. For each trusted AF VFL client, the VFL Server NWDAF sends an Naf_VFLInference_Subscribe or Naf_VFLInference_Request to the VFL client.

[0666] 2c. For each untrusted AF VFL client, the VFL Server NWDAF sends an Nnef_VFLInference_Subscribe or Nnef_VFLInference_Request to the NEF serving the AF.

[0667] 2d. For each untrusted AF VFL client, the NEF converts any internal identifiers to external identifiers and sends an Naf_VFLInference_Subscribe or Naf_VFLInference_Request to the untrusted AF VFL client.

[0668] 2e. An NWDAF VFL client aggregator may send Nnwdaf_VFLInference_Subscribe or Nnwdaf_VFLInference_Request to other one or more indirect NWDAF VFL client(s) as configured by the VFL server from which it desires to receive the client intermediate inference results.

[0669] 3. Each VFL Client collects its local data by using the current mechanism if the VFL Client does not have local data available already.

[0670] 4. Based on the VFL correlation ID, each VFL Client determines the VFL local model to generate the intermediate local inference results.

[0671] 5. VFL Client sends the client intermediate results to the VFL server.

[0672] The intermediate results, which are sent from the VFL Client to the VFL Server during the VFL inference process, are the information for the VFL Server to combine and generate the VFL inference results.

[0673] It is FFS additional parameters are needed to send from the VFL client to VFL server.

[0674] If the VFL server used an inference subscription in step 2, step 5 may be repeated.

[0675] 5a. Each NWDAF VFL client sends an Nnwdaf_VFLInference_Notify or Nnwdaf_VFLInference_Request response to the VFL Server NWDAF.

[0676] 5b. Each trusted AF VFL client sends a Naf_VFLInference_Notify or Naf_VFLInference_Request response to the VFL Server NWDAF.

[0677] 5c. Each untrusted AF VFL client sends a Naf_VFLInference_Notify or Naf_VFLInference_Request response to the NEF.

[0678] 5d. For each untrusted AF VFL client, the NEF converts any external to internal identifiers and sends an Nnef_VFLInference_Notify or Nnef_VFLInference_Request response to the NWDAF VFL server.

[0679] 5e - 5f. The indirect NWDAF VFL clients may share the client intermediate inference results with a NWDAF VFL client aggregator from which it received request in step 2e. The NWDAF VFL client aggregator aggregates the received client intermediate inference results, performs local computation, then sends one Nnwdaf_VFLInference_Notify or Nnwdaf_VFLInference_Request response that includes the client intermediate inference result of the NWDAF VFL client aggregator to the VFL server.

[0680] 6. The VFL server may collect its local data and generate the intermediate local inference results. When the VFL Server selected VFL clients to participate in the VFL Inference process, it combines all the intermediate results to generate the VFL inference results based on the VFL correlation ID. The VFL server takes into account the participation of each VFL client during the ML training process and the importance of the intermediate results when generates the combined inference output.

[0681] 7. Depending on request, the NWDAF VFL server sends Nnwdaf_AnalyticsInfo_Response or Nnwdaf_AnalyticsSubscription_Notify to the consumer (i.e NWDAF containing AnLF) including the VFL inference results.

[0682] 8. The NWDAF containing AnLF provides the analytics output to the analytics consumer NF based on the VFL inference results by means of either Nnwdaf_AnalyticsInfo_Response or Nnwdaf_AnalyticsSubscription_Notify, depending on the service used in step 0.

[0683] An inference procedure for VFL when an untrusted AF is acting as a VFL server is described with reference to Figure 5d. The procedure of Figure 5d may be considered to be a refinement / alternative to that of Figure 5b. Context surrounding and further information on the procedure of Figure 5d can be found in Appendix D and Appendix E.

[0684] It should be noted that the procedure of Figure 5d is not limited to steps included therein nor their order, and one or more steps may be omitted, skipped, introduced, combined, or rearranged unless otherwise stated. Furthermore, the procedure of Figure 5d should be taken in the context of TS 23.288 v19.1.0. This procedure of Figure 5d may be used in conjunction with any of the approaches of the present disclosure.

[0685] The inference procedure when untrusted AF is acting as VFL server may be triggered by a request or subscription from a 5GC consumer NF or internal service logic of the AF acting as VFL server. If triggerd by internal service logic of the AF acting as VFL server, the steps 0, 1, 7 and 8 are skipped. The inference procedure triggerd by internal service logic of the AF acting as VFL server is out of 3GPP scope.

[0686] 0. Same as step 0 in clause 6.2H.2.4.1 of TS 23.288 v19.1.0.

[0687] 1. Same as step 1 in clause 6.2H.2.4.1 of TS 23.288 v19.1.0, to NEF using Nnef_Inference_subscribe. NEF forwards the subscription request to AF using Naf_Inference_subscribe.

[0688] When the AnLF determine the VFL server AF is FFS. For example, during the training phase.

[0689] The service name between the AnLF and untrusted AF as VFL server is FFS.

[0690] 2. Same as step 2 in clause 6.2H.2.4.1 of TS 23.288 v19.1.0, to NEF using Nnef_VFLInference_subscribe. An untrusted AF includes the external NWDAF ID and sends the request to the NEF.

[0691] NEF converts any received external identifiers to internal identifiers and forwards the subscription request to NWDAF using Nnwdaf_VFLInference_subscribe.

[0692] 2c An NWDAF VFL client aggregator may send Nnwdaf_VFLInference_Subscribe or Nnwdaf_VFLInference_Request to the VFL client to other one or more indirect NWDAF VFL client as configured by the VFL server from which it desires to receive the client intermediate inference results.

[0693] It is FFS additional parameters are needed to send from the VFL server to VFL client.

[0694] 3. Same as step 3 in clause 6.2H.2.4.1 of TS 23.288 v19.1.0.

[0695] 4. Same as step 4 in clause 6.2H.2.4.1 of TS 23.288 v19.1.0.

[0696] Whether VFL client may also provide local intermediate inference results to other VFL client is FFS.

[0697] 5. Same as step 5 in clause 6.2H.2.4.1 of TS 23.288 v19.1.0, to NEF using Nnwdaf_VFLInference_Notify.

[0698] NEF converts any received internal identifiers to external identifiers and forwards the subscription notify to the untrusted AF using Nnef_VFLInference_Notify.

[0699] 5c-5d. The indirect NWDAF VFL clients share the client intermediate inference results with the NWDAF VFL client aggregator from which it received request in step 2c. This NWDAF VFL client aggregator aggregates the received client intermediate inference results, performs local computation then sends one notify message to the NEF by including its client intermediate inference result.

[0700] It is FFS additional parameters are needed to send from the VFL client to VFL server.

[0701] If the VFL server used an inference subscription in step 2, step 5 may be repeated.

[0702] 6. Same as step 6 in clause 6.2H.2.4.1 of TS 23.288 v19.1.0.

[0703] 7. Same as step 7 in clause 6.2H.2.4.1 of TS 23.288 v19.1.0, to NEF using Naf_Inference_Notify.

[0704] NEF converts any received internal identifiers to external identifiers and forwards the subscription Notify to NWDAF using Nnef_Inference_Notify.

[0705] 8. Same as step 8 in clause 6.2H.2.4.1 of TS 23.288 v19.1.0.

[0706] Training Procedure for Vertical Federated Learning when NWDAF or trusted AF is acting as VFL server

[0707] Figure 5e1, 5e2, and 5e3 illustrates a training procedure for Vertical Federated Learning when NWDAF or trusted AF is acting as VFL server, according to an embodiment of the disclosure. All references to 6.2H... refer to TS 23.288 v19.2.0. Context surrounding and further information on the procedure of Figure 5e1, 5e2, and 5e3 can be found in Appendix F.

[0708] It should be noted that the procedure of Figure 5e1, 5e2, and 5e3 is not limited to steps included therein nor their order, and one or more steps may be omitted, skipped, introduced, combined, or rearranged unless otherwise stated.

[0709] 0. [OPTIONAL] VFL training is triggered in the VFL server for the following cases:

[0710] - Based on local configuration and agreement among vendors and / or application providers participating in the same group for specific VFL task(s).

[0711] - Triggered by either Analytics consumer, AnLF via ML model provisioning or MTLF internal (VFL Server is a trusted AF):

[0712] Step 0a (case A). If the NWDAF containing AnLF that wants to perform inference and does not have a model, it discovers an NWDAF containing MTLF from NRF and sends a subscription request for a model to the NWDAF containing MTLF using Nnwdaf_MLModelProvision_Subscribe.

[0713] Step 0b. (case A). If the discovered NWDAF containing MTLF decides to use VFL for the subscription and realizes it cannot be VFL server but wants an AF to act as VFL server, the NWDAF containing MTLF discovers an AF as VFL server according to 6.2H.2.1, and may send a request to the VFL server AF using Naf_Training_Subscribe including Analytics ID, optionally Notification target address, the AF as VFL server starts VFL Training according to step 2. The NWDAF containing MTLF may either send in the service subscription response that no ML model available due to VFL model to be used, the NWDAF containing AnLF may request the inference output using the requested Analytics ID as described in step 1 of clause 6.2H.2.4.1. Alternatively, the NWDAF containing MTLF may indicate that training is ongoing, then step 1 follows.

[0714] NOTE 1: The AF may have registered in NRF for the particular Analytics ID that it can perform Inference for it. In this case no training will be performed.

[0715] - Triggered by either Analytics consumer, AnLF via ML model provisioning (VFL Server is a trusted AF):

[0716] Step 0c. (case B). Same as step 0a, in addition if the discovered NWDAF containing MTLF decides to use VFL for the subscription and it can be VFL server, the VFL server starts VFL Training according to step 2.

[0717] If decision to start VFL training is triggered on ML model provisioning from an NWDAF in step 0b or 0c, the VFL server sends in the service subscription response that no ML model available due to VFL model to be used and that the subscription is terminated (i.e. as new cause code). The VFL server may send training is done to the first NWDAF containing AnLF. When VFL training is done, the first NWDAF contain AnLF will be needing to perform VFL Inference using the requested Analytics ID to retrieve an VFL Inference output from the VFL Server (AF or NWDAF) using the requested Analytics ID as described in step 1 of clause 6.2H.2.4.1.

[0718] - Triggered by either Analytics consumer, AnLF via ML model provisioning (VFL Server is a trusted AF):

[0719] Step 0d. (case C). If the NWDAF containing AnLF that wants to perform inference and does not have a model, it discovers an NWDAF containing MTLF from NRF and sends a subscription request for a model to the NWDAF containing MTLF using Nnwdaf_MLModelProvision_Subscribe. If the discovered NWDAF containing MTLF does not have a model, it sends a response to the AnLF that no Model is available due to VFL used and that the subscription is terminated (i.e. as new cause code), and may also provide VFL server ID. If no VFL Server ID is sent, the NWDAF it discovers VLF Server from NRF that supports the Analytics ID, then requests to train a ML Model to the VFL Server. Alternatively, the NWDAF containing AnLF knows by configuration that the AnalyticsID is trained using VFL, then the AnLF discovers the VFL Server and requests the VFL Server to train the ML Model.

[0720] - Triggered by analytics consumer. (VFL Server is either an AF or an NWDAF):

[0721] Step 0e. (case 5). NF consumer needs analytics output for a specific Analytics ID, it discovers an NWDAF from NRF to provide the analytics ID. If the discovered NWDAF is a VFL server which supports the analytics ID, then to generate the analytics output via VFL inference as defined in clause 6.2H.2.4, the VFL server may trigger VFL training if no corresponding VFL training has been performed.

[0722] NOTE 2: In the case when AF is server the clients can only be NWDAFs.

[0723] NOTE 3: VFL server can also decide to initiate VFL training based on operator policy or internal configuration.

[0724] 1. The NWDAF acting as VFL server determines the VFL clients that participate in VFL procedure in the VFL clients discovery and preparation phase as described in the clause 6.2H.2.1 and clause 6.2H.2.2.

[0725] NOTE 4: VFL Server can determine to start the training based on local configuration and agreement among vendors and / or application providers participating in the same group for specific VFL task(s).

[0726] Steps 2-6 are repeated until the training termination condition is reached.

[0727] 2. To start the VFL training, the VFL server sends a request to start the training to all selected VFL clients. The request includes VFL correlation ID, at least the parameters negotiated during the preparation phase and theVFL training iteration number set to 0, and a Notification Correlation ID. Optionally, the VFL Server includes parameters according to clause 6.2H.3.

[0728] If the VFL procedure continues in subsequent iterations, the VFL server sends a request for a new VFL training iteration containing an incremented a VFL training iteration number and intermediate model training information to each of the VFL clients for next round of VFL training. The VFL Server, based on internal logic, may provide checkpoint information according to clause 6.2H.3.

[0729] 2a. The VFL server sends a Nnwdaf_VFLTraining_Subscribe to the selected NWDAF VFL clients(s).

[0730] 2b. The VFL server sends a Naf_VFLTraining_Subscribe to the selected trusted AF VFL clients(s).

[0731] 2c. For each selected untrusted AF VFL clients, the VFL server sends a Nnef_VFLTraining_AFClient_Subscribe to the NEF handling that AF.

[0732] 2d. For each selected untrusted AF VFL client, the NEF sends a Naf_VFLTraining_Subscribe to that AF. The NEF may also translate the analytic filter information if needed, e.g. TAIs into geographical area.

[0733] 3. [Optional] Each VFL client collects its local data by using the current mechanism if the VFL client has no local data already available. The data used by each VFL Client is collected as per alignment information.

[0734] 4. During VFL training procedure, each VFL client further trains the local ML model associated with the same VFL Correlation ID based on their own collected or available data and when applicable (e.g. after the first round of training) and possible intermediate model training information distributed by the VFL server in the previous training iteration. Each VFL Client computes and reports the client intermediate training result of the local ML model to the VFL server. VFL client(s) may also report a delta from the initial list of samples according to clause 6.2H.3. Based on internal logic, the VFL server may indicate if the training has to resume from a previous checkpoint by using its training iteration round ID.

[0735] NOTE 5: The intermediate model training information and intermediate training result are constructed in per sample granularity.

[0736] NOTE 6: The contents of intermediate training result depend on the type of ML Model or algorithm used in VFL training and are up to implementation.

[0737] 5. Each VFL client reports the computed client intermediate training result of the local ML model to the VFL server. The Notification Correlation ID and a VFL training iteration number. A client may indicate in message for a request to leave the VFL.

[0738] NOTE 7: If the VFL Server deems the training can continue, it responds back by informing the FL Client to cease the ML Model training by performing step 8 for this client.

[0739] 5a. A NWDAF VFL client sends a Nnwdaf_VFLTraining_Notify.

[0740] 5b. A trusted AF VFL client sends a Naf_VFLTraining_Notify to the VFL server.

[0741] 5c. An untrusted AF VFL client sends a Naf_VFLTraining_Notify to the NEF.

[0742] 5d. For each untrusted AF VFL client, the NEF converts any external identifiers to internal identifiers and sends a Nnef_VFLTraining_AFClient_Notify to the VFL server.

[0743] 6. The VFL server may collect the local data and generate its own local intermediate training result. The VFL Server computes the intermediate model training information (e.g. gradient information or loss information that may contain loss function or loss value) based on the VFL Client(s) intermediate training result(s) received in step 4, its own local intermediate results and the label. The intermediate model training information is used for updating the models of VFL clients and / or the model of the VFL Server. Different intermediate model training information may be computed for different VFL clients and for the VFL Server itself.

[0744] NOTE 8: The contents of loss information and gradient information depend on the type of ML Model or algorithm used in VFL training and are determined by implementation.

[0745] The VFL server may locally compute contribution weights for each VFL client participating in the VFL pocess and store them for subsequent use, e.g. during inference. How the VFL computes the VFL contribution weights is up to implementation.

[0746] The VFL server may also decide to compute the global ML model metric (e.g. ML model accuracy) based on all the intermediate training result received from VFL clients and the label at any time of VFL training. When determining to generate the ML model metric, the VFL server includes an indication to indicate to the VFL clients to use the sample ID of the dataset for accuracy monitoring to calculate intermediate training results in Nnwdaf_VFLTraining_Subscribe service operation. Corresponding to the sample IDs for accuracy monitoring, each VFL client collects local data as input data for local ML model trained in step 4, then the VFL client generates the intermediate training result based on the trained local ML model and the input data, and it provides the intermediate training result to VFL server. The VFL server computes the ML model metric (e.g. VFL accuracy) based on the received intermediate training result and the label, which are both corresponding to the sample IDs for accuracy monitoring. The VFL server may optionally take account the local ML model accuracy monitoring information received from VFL client(s) when computing global ML Model metric.

[0747] Editor's note: Whether weight of the VFL Client is computed by VFL server is FFS.

[0748] 7. [Optional] The VFL server evaluates (e.g. based on the convergence of a loss function or loss value and / or if the pre-set iteration number is reached and / or global ML model metric is stable) whether VFL Training process converged. If the VFL Server evaluates the VFL Training process did not converge, the VFL Server determines another round of VFL training is required and repeats step 2 - 6. If the VFL Server evaluates the VFL training process converged, it determines the VFL Training is completed. In this case, the VFL Server terminates the current VFL training process via step 7.

[0749] The VFL training termination decision may be also made as follows:

[0750] Step 7b, 7c, 7f and 7h. Based on the consumer request, the VFL server notifies VFL status report to the consumer, to update the metric value to the consumer periodically (e.g. a certain number of training rounds or at fixed periods) or dynamically when some pre-determined status is achieved (e.g. the ML Model Accuracy threshold is achieved or training time expires).The status report may include global model metric (e.g. ML model accuracy).

[0751] If NWDAF including MTLF has forwarded a subscription request to VFL server AF in step 0b, and it did not add Notification target set to the first NWDAF containing AnLF, it adds the AF ID, in the Notification to the first NWDAF containing AnLF.

[0752] Steps 7d, 7e, 7g and 7i. The consumer decides whether the current model can fulfil the requirement, e.g. ML model metric is satisfactory for the consumer and determines to either unsubscribe or continue the training process.

[0753] Based on the subscription request sent from the consumer, the VFL server updates or terminates the current VFL training process.

[0754] 8. The VFL server sends VFL training termination message to VFL Client if it decides to terminate the VFL training process, the termination message contains VFL Correlation ID and may contain the intermediate model training information to each of the VFL clients.

[0755] 8a. The VFL server sends a Nnwdaf_VFLTraining_Unsubscribe t to the selected NWDAF VFL clients(s).

[0756] 8b. The VFL server sends a Naf_VFLTraining_Unsubscribe to the selected trusted AF VFL clients(s).

[0757] 8c. For each selected untrusted AF VFL clients, the VFL server sends a Nnef_VFLTraining_AFClient_Unubscribe to the NEF handling that AF.

[0758] 8d. For each selected untrusted AF VFL clients, the NEF sends a Naf_VFLTraining_Unsubscribe to that AF.

[0759] 9. The VFL Server, stores VFL correlation ID, the local trained ML Model, the mapping information of the VFL correlation ID to the following parameters: Analytics ID related to the VFL training process, locally trained Model. Additionally, the VFL server stores the VFL client information (including the NF ID of the VFL Client), which may be used to determine associated VFL client in the VFL inference.

[0760] Each VFL client updates local ML model based on the intermediate model training information, if received and stores VFL correlation ID, the locally trained ML Model, the mapping information of the VFL correlation ID to locally trained Model

[0761] NOTE 9: The VFL correlation ID and the stored mapping information are used later for inference as described in Clause 6.2H.2.4.1.

[0762] NOTE 10: If untrusted AF is involved in VFL Clients, the message between NWDAF acting as VFL Server and the untrusted AF is via NEF.

[0763] Training Procedure for Vertical Federated Learning untrusted AF is acting as VFL server

[0764] Figure 5f illustrates a training procedure for VFL when untrusted AF is acting as VFL server, according to an embodiment of the disclosure. All references to 6.2H... refer to TS 23.288 v19.2.0. For completeness, a full description of Figure 5f is set out below where various steps correspond to the equivalent numbered steps in Figure 6.2H.2.3.1-1 of TS 23.288 v19.2.0, as noted. Missing steps may be understood by referring to the equivalent numbered steps in Figure 6.2H.2.3.1-1 of TS 23.288 v19.2.0. Context surrounding and further information on the procedure of Figure 5f can be found in Appendix F.

[0765] It should be noted that the procedure of Figure 5f is not limited to steps included therein nor their order, and one or more steps may be omitted, skipped, introduced, combined, or rearranged unless otherwise stated.

[0766] The ENs listed in clause 6.2H.2.3.1 may also apply to this figure.

[0767] 0. [CONDITIONAL] Same as in step 0 in clause 6.2H.2.3.1, when the AF is the VFL Server, but AF is replaced with untrusted AF, and Nnef_Training_Subscribe offered by NEF is used.

[0768] NEF forwards the subscription request to AF using Naf_Training_Subscribe.

[0769] In addition:

[0770] - Either based on the information received or internal configuration, VFL server decides to initiate VFL training procedure, or

[0771] - case E) same as step 0d, but the Analytics consumer contacts the NWDAF containing AnLF that wants to perform inference and does not have a model, it discovers VLF Server from NRF that is a VFL Server, then request the VFL Server via NEF to perform inference. The VFL server may trigger VFL training if no corresponding VFL training has been performed.

[0772] 1. Same as step 1 in Figure 6.2H.2.3.1-1.

[0773] Steps 2-7 are repeated until the training termination condition is reached.

[0774] 2. To start VFL training, the VFL server do same as in step 2 in Figure 6.2H.2.3.1-1, using Nnef_VFLTraining_Subcribe.

[0775] 2c. If a NWDAF VFL client is selected by the server or NEF to aggregate the intermediate training results of other VFL client clients, this NWDAF VFL client may send Nnwdaf_VFLTraining_Subscribe to other one or more indirect NWDAF VFL client as configured by the VFL server from which it desires to receive the client intermediate training results. The VFL server may indicate the NWDAF ID(s) of the indirect NWDAF VFL client(s) to this VFL client via NEF in step 2a and 2b. The NEF translates the external NWDAF ID received from the VFL server into internal NWDAF instance ID. The VFL server may also include a 'VFL client aggregator flag' to indicate which NWDAF is the VFL client aggregator to the VFL client aggregator and / or NEF.

[0776] If a NWDAF VFL client is selected by the NEF, the NEF indicates the NWDAF (instance) ID(s) of the indirect NWDAF VFL client(s) to this VFL client via 2b. The NEF may also indicate a 'VFL client aggregator flag' to indicate which NWDAF is the VFL client aggregator to the VFL client aggregator.

[0777] NOTE: To support the intermediate results sharing between VFL clients in step 2c, the VFL clients might be selected based on the VFL Interoperability Indicators and / or the parameters in VFL Interoperability Information (e.g. gradient dimension of local model, split point of the preconfigured initial model, etc.).

[0778] 3. [Optional] Same as step 3 in Figure 6.2H.2.3.1-1.

[0779] 4. Same as step 4 in Figure 6.2H.2.3.1-1.

[0780] 5. Same as step 5 in Figure 6.2H.2.3.1-1.

[0781] 5a. A NWDAF VFL client sends a Nnwdaf_VFLTraining_Notify.

[0782] 5b. For an untrusted AF acting as VFL server, the NEF converts any internal identifiers to external identifiers, provides the external NWDAF ID and sends a Nnef_VFLTrainingNotify to the VFL server.

[0783] 5c-5d. The NWDAF VFL clients share the client intermediate training results with the NWDAF VFL client from which it received subscription request in step 2c. This NWDAF VFL client aggregates the received client intermediate training results from the NWDAF VFL clients, performs local computation using the aggregated intermediate inference results, then sends one notification to the NEF by including its client intermediate training result and the list of NWDAF IDs of the indirect VFL clients.

[0784] 6. [Optional] Same as step 6 in Figure 6.2H.2.3.1-1.

[0785] 7. Same as step 7 in Figure 6.2H.2.3.1-1. Same as in step 0 in clause 6.2H.2.3.1, when the AF is the VFL Server, but AF is replaced with untrusted AF, and Nnef_Training_Notify offered by NEF is used. NEF forwards the subscription request to AF using Naf_Training_Notify.

[0786] 8. Same as step 8 of Figure 6.2H.2.3.1-1. However, sub steps in that figure are not applicable.

[0787] 8a. For each NWDAF VFL client, the untrusted AF as VFL server sends a Nnef_VFLTraining Unsubscribe to the NEF handling that AF. The untrusted AF identifies the VFL client using the external NWDAF ID assigned in the discovery procedure (see clause 6.2H.2.1.1).

[0788] 8b. The NEF sends an Nnwdaf_VFLTraining_Unsubscribe to the NWDAF VFL client indicated by the received external NWDAF ID.

[0789] 8c. An NWDAF VFL client may send Nnwdaf_VFLTraining_Unsubscribe to other one or more NWDAF VFL clients in step 2c.

[0790] 9. Same as step 9 of Figure 6.2H.2.3.1-1.

[0791] If the VFL server unsubscribes to the VFL aggregator, the VFL aggregator may unsubscribe to its indirect VFL clients.

[0792] If the VFL server may unsubscribe / drop one or more of the indirect VFL clients, this unsubscribe request might be sent directly from VFL server to the indirect VFL client (via NEF), or be sent from VFL server to the VFL aggregator (via NEF), then the aggregator sends the unsubscribe request to the indirect VFL client.

[0793] The VFL aggregator may also determines to unsubscribe to its one or more indirect VFL clients, e.g. based on internal logic or request from VFL server.

[0794] Same unsubscribe principles can be also applied to VFL inference procedures.

[0795] Inference procedure for vertical federated learning when untrusted AF is acting as VFL server

[0796] Figure 5g illustrates an inference procedure for VFL when untrusted AF is acting as VFL server, according to an embodiment of the disclosure. All references to 6.2H... refer to TS 23.288 v19.2.0. For completeness, a full description of Figure 5g is set out below where various steps correspond to the equivalent numbered steps in 6.2H.2.4.1 of TS 23.288 v19.2.0, as noted. Missing steps may be understood by referring to the equivalent numbered steps in Figure 6.2H.2.4.1 of TS 23.288 v19.1.0. Context surrounding and further information on the procedure of Figure 5g can be found in Appendix F.

[0797] It should be noted that the procedure of Figure 5g is not limited to steps included therein nor their order, and one or more steps may be omitted, skipped, introduced, combined, or rearranged unless otherwise stated.

[0798] The inference procedure when untrusted AF is acting as VFL server may be triggered by a request or subscription from a 5GC consumer NF or internal service logic of the AF acting as VFL server. If triggerd by internal service logic of the AF acting as VFL server, the steps 0, 1,7 and 8 are skipped.

[0799] 0. Same as step 0 in clause 6.2H.2.4.1.

[0800] 1. Same as step 1 in clause 6.2H.2.4.1, to NEF using Nnef_Inference_subscribe / request. NEF forwards the subscription request to AF using Naf_Inference_subscribe / request.

[0801] Editor's note: When the AnLF determine the VFL server AF is FFS. For example, during the training phase.

[0802] 2. Same as step 2 in clause 6.2H.2.4.1, to NEF using Nnef_VFLInference_subscribe / request. An untrusted AF includes the external NWDAF ID and sends the request to the NEF.

[0803] NEF converts any received external identifiers to internal identifiers and forwards the subscription request to NWDAF using Nnwdaf_VFLInference_subscribe / request.

[0804] 2c An NWDAF VFL client may send Nnwdaf_VFLInference_Subscribe or Nnwdaf_VFLInference_Request to the VFL client to other one or more indirect NWDAF VFL client as configured by the VFL server from which it desires to receive the client intermediate inference results. The VFL server may indicate the list of NWDAF ID(s) of the indirect NWDAF VFL client(s) to this VFL client via NEF in step 2a and 2b. The NEF translates the external NWDAF ID received from the VFL server into internal NWDAF instance ID. The VFL server may also include a 'VFL client aggregator flag' to indicate which NWDAF is the VFL client aggregator to the VFL client aggregator and / or NEF.

[0805] If a NWDAF VFL client is selected by the NEF, the NEF indicates the NWDAF (instance) ID(s) of the indirect NWDAF VFL client(s) to this VFL client via 2b. The NEF may also indicate a 'VFL client aggregator flag' to indicate which NWDAF is the VFL client aggregator to the VFL client aggregator.

[0806] For inference, the NWDAF VFL client aggregator and indirect VFL clients might be the same as the VFL model training for the same model / analytics ID, e.g. using the same VFL correlation ID or Subscription Correlation ID, or analytics ID. If the indirect VFL client participates into model training but not chosen for VFL inference, this indirect VFL client will be also dropped for the intermediate result sharing. Therefore the VFL client aggregator will not trigger the inference computation towards this dropped VFL client, but only towards the chosen VFL clients. New indirect VFL client may join the intermediate results sharing, even though they are not participate the intermediate results sharing during VFL model training.

[0807] NOTE 1: To support the intermediate results sharing between VFL clients in step 2c, the VFL clients might be selected based on the VFL Interoperability Indicators and / or the parameters in VFL Interoperability Information (e.g. gradient dimension of local model, split point of the preconfigured initial model, etc.).

[0808] 3. Same as step 3 in clause 6.2H.2.4.1.

[0809] 4. Same as step 4 in clause 6.2H.2.4.1.

[0810] NOTE 2: In this Release, it is assumed that local intermediate inference is shared between VFL server and VFL client.

[0811] 5. Same as step 5 in clause 6.2H.2.4.1, to NEF using Nnwdaf_VFLInference_Notify / Request Response.

[0812] NEF converts any received internal identifiers to external identifiers and forwards the subscription notify to the untrusted AF using Nnef_VFLInference_Notify / Request Response.

[0813] 5c-5d. The indirect NWDAF VFL clients share the client intermediate inference results with the NWDAF VFL client from which it received request in step 2c. This NWDAF VFL client aggregates the received client intermediate inference results, performs local computation using the aggregated intermediate inference results, then sends one notify message to the NEF by including its client intermediate inference result and list of NWDAF IDs of the indirect VFL clients.

[0814] If the VFL server used an inference subscription in step 2, step 5 may be repeated.

[0815] 6. Same as step 6 in clause 6.2H.2.4.1.

[0816] 7. Same as step 7 in clause 6.2H.2.4.1, to NEF using Naf_Inference_Notify / Request Response.

[0817] NEF converts any received internal identifiers to external identifiers and forwards the subscription Notify to NWDAF using Nnef_Inference_Notify / Request Response.

[0818] 8. Same as step 8 in clause 6.2H.2.4.1.

[0819] NWDAF Services for VFL / ML Model Training and / or Inference

[0820] To support VFL process, e.g. VFL model training and / or inference, when NWDAF is involved into the procedure as VFL client and / or VFL sever, NWDAF services should be deployed and specified.

[0821] NWDAF ML (machine learning) / VFL Model Training and / or Inference Service

[0822] Service Description: This service enables the consumer to subscribe / unsubscribe / notify / modify / terminate / request information for ML / VFL Model training and / or inference.

[0823] When used for (vertical) Federated Learning, this service enables (V)FL server (e.g. NWDAF, trusted AF, untrusted AF) to (vertical) enable Federated Learning. The (V)FL server may provide local / global ML Model / VFL model information to (V)FL Client (e.g. NWDAF) and (V)FL getting local computation results (e.g. intermediate results of VFL model training and / or intermediate results of VFL model training of inference) and status report of (V)FL training from the (V)FL Client NWDAF.

[0824] The VFL server may provide one or more of the following information to the VFL client:

[0825] ㆍ local / global ML Model / VFL model information to (V)FL Client (e.g. NWDAF), e.g. for VFL model training, model ID, VFL process ID, analytics ID, etc.

[0826] ㆍ labels for VFL model training

[0827] ㆍ VFL training and / or inference requirements, e.g. (max. / average) delay / latency requirements,

[0828] This service may also be used by the consumer (e.g. (V)FL Server NWDAF, trusted AF or untrusted AF) to check if the service provider (i.e. (V)FL Client NWDAF) can meet the (V)ML Model training requirement or not, e.g. the delay / latency requirements, the capacity / ability of computation, the load of the VFL server, etc.

[0829] This service may also be used by the consumer (e.g. (V)FL Server NWDAF) to request the service provider (e.g. (V)FL Server NWDAF, trusted AF or untrusted AF) to calculate and provide Model Accuracy of the (V)ML Model.

[0830] The NWDAF ML (machine learning) / VFL Model Training and / or inference Service includes one or more of the following operations:

[0831] ㆍ Subscribe service operation

[0832] ㆍ unsubscribe service operation

[0833] ㆍ Notify service operation

[0834] ㆍ VFL model training / inference Request service operation

[0835] Subscribe Service Operation

[0836] The Subscribe service operation is used by the service consumer / (V)FL server (e.g. NWDAF, trusted AF, untrusted AF) to trigger / enable the (vertical) Federated Learning (e.g. VFL model training and / or VFL inference) at the VFL client NWDAF.

[0837] Service operation name: Nnwdaf_(V)MLModelTraining_Subscribe, Nnwdaf_(V)MLModelInference_Subscribe, etc.

[0838] Description: (VFL server) Subscribes to VFL client NWDAF for VFL / ML Model training and / or inference with specific parameters.

[0839] Inputs may include:

[0840] - Analytics ID as defined in Table 7.1-2 of TS 23.288;

[0841] - ML Model Interoperability information;

[0842] - Notification Target Address (+ Notification Correlation ID).

[0843] - labels for local VFL model training

[0844] - Indication / flag for VFL model training and / or VFL inference: e.g.

[0845] ㆍ if the service consumer enables the VFL model training by invoking this service, VFL model training Indication / flag is included; if the service consumer enables the VFL inference by invoking this service, VFL inference Indication / flag is included.

[0846] ㆍ Or if the service consumer enables the VFL model training by invoking this service, VFL model training may not include Indication / flag; if the service consumer enables the VFL inference by invoking this service, Indication / flag for VFL inference is included.

[0847] - VFL / ML Model identifier: identifies the provided ML Model.

[0848] - VFL / ML Model Information

[0849] - VFL Correlation ID and / or VFL process ID, which can correlate the VFL clients and VFL server, the local VFL models, intermediate training / inference results, etc. The ID might be same for both VFL model training and VFL inference using this trained VFL model.

[0850] Outputs may include: When the request is accepted: Subscription Correlation ID (required for management of this subscription). When the request is not accepted, an error response with cause code (e.g. NWDAF does not meet the VFL model training and / or inference requirements, VFL inference is not complete, not available for the VFL model training and / or inference, etc.). VFL Correlation ID (e.g. confirm of the subscription for this VFL process).

[0851] Unsubscribe Service Operation

[0852] The unsubscribe service operation is used by the service consumer / (V)FL server (e.g. NWDAF, trusted AF, untrusted AF) to terminate / disenable the (vertical) Federated Learning (e.g. VFL model training and / or VFL inference) at the VFL client NWDAF.

[0853] Service operation name: Nnwdaf_(V)MLModelTraining_Unsubscribe, Nnwdaf_(V)MLModelInference_Unsubscribe, etc.

[0854] Description: Terminate the (on-going) VFL procedure, e.g. could be used for terminating VFL model training and / or VFL inference at VFL client by the VFL server service consumer.

[0855] Inputs:

[0856] - Subscription Correlation ID,

[0857] - Indication / flag for VFL model training and / or VFL inference

[0858] o if the service consumer terminates the VFL model training by invoking this service, VFL model training Indication / flag is included; if the service consumer terminates the VFL inference by invoking this service, VFL inference Indication / flag is included.

[0859] o Or if the service consumer terminates the VFL model training by invoking this service, VFL model training may not include Indication / flag; if the service consumer terminates the VFL inference by invoking this service, Indication / flag for VFL inference is included.

[0860] Outputs: Cause code, e.g.

[0861] - VFL Client NWDAF is unselected by the VFL server for the VFL model training and / or inference, as it cannot achieve the requirements (computation accuracy, delay is too long etc.)

[0862] - the VFL model training or VFL inference is suspended or finished, etc.

[0863] - Final aggregated VFL inference result or VFL model training result (if VFL inference or model training has finished)

[0864] - The analytics ID consumer unsubscribe or terminate the analytics information subscription, e.g. if the VFL inference and / or model training is trigger because a analytics consumer requests the outputs of a analytics ID.

[0865] Notify Service Operation

[0866] The notify service is used by the VFL client to notify the consumer instance of the intermediate results of VFL model training and / or VFL inference.

[0867] The VFL client may also use this service to indicate to consumer / VFL server that it will terminate / join the VFL model training and / or VFL inference.

[0868] Service operation name: Nnwdaf_(V)MLModelTraining_Notify, Nnwdaf_(V)MLModelInference_ Notify, etc.

[0869] Inputs may include one or more of:

[0870] - intermediate results of local VFL model training if VFL model training was triggered by VFL server

[0871] - Intermediate results of local VFL inference if VFL inference was triggered by VFL server

[0872] - VFL Correlation ID and / or VFL process ID, which can correlate the VFL clients and VFL server, the local VFL models, intermediate training / inference results, etc. The ID might be same for both VFL model training and VFL inference using this trained VFL model.

[0873] - Termination Request: this parameter indicates that the VFL client NWDAF requests to terminate the VFL model training or VFL inference, with cause code (e.g. NWDAF overload, not available for the FL process anymore, etc.);

[0874] - ML Model identifier: this parameter identifies the provisioned ML Model;

[0875] - Iteration round ID, if the subscription service from the VFL server is to enable the VFL client to perform local VFL model training.

[0876] VFL Model Training / Inference Information Request Service Operation

[0877] The VFL information request service operation is used by the service consumer / (V)FL server (e.g. NWDAF, trusted AF, untrusted AF) to request the VFL clients to enable / to provide in the information of the (vertical) Federated Learning (e.g. VFL model training and / or VFL inference) at the VFL client NWDAF.

[0878] Service operation name: Nnwdaf_(V)MLModelTraininginfo_Request, Nnwdaf_(V)MLModelInferenceinfo_Requst, etc.

[0879] Description: (VFL server) requests the VFL client NWDAF to provide information of VFL / ML Model training and / or inference with specific parameters.

[0880] Inputs may include:

[0881] - Analytics ID as defined in Table 7.1-2 of TS 23.288;

[0882] - ML Model Interoperability information;

[0883] - Notification Target Address (+ Notification Correlation ID).

[0884] - labels for local VFL model training

[0885] - Indication / flag for VFL model training and / or VFL inference: e.g.

[0886] ㆍ if the service consumer enables the VFL model training by invoking this service, VFL model training Indication / flag is included; if the service consumer enables the VFL inference by invoking this service, VFL inference Indication / flag is included.

[0887] ㆍ Or if the service consumer enables the VFL model training by invoking this service, VFL model training may not include Indication / flag; if the service consumer enables the VFL inference by invoking this service, Indication / flag for VFL inference is included.

[0888] - VFL / ML Model identifier: identifies the provided ML Model.

[0889] - VFL / ML Model Information

[0890] - VFL Correlation ID and / or VFL process ID, which can correlate the VFL clients and VFL server, the local VFL models, intermediate training / inference results, etc. The ID might be same for both VFL model training and VFL inference using this trained VFL model.

[0891] Outputs may include: When the request is accepted: Subscription Correlation ID (required for management of this subscription). When the request is not accepted, an error response with cause code (e.g. NWDAF does not meet the VFL model training and / or inference requirements, VFL inference is not complete, not available for the VFL model training and / or inference, etc.). VFL Correlation ID (e.g. confirm of the subscription for this VFL process).

[0892] AF Services for VFL / ML Model Training and / or Inference

[0893] To support VFL process, e.g. VFL model training and / or inference, when AF is involved into the procedure as VFL client and / or VFL server, AF services should be deployed and specified.

[0894] This service enables the consumer (e.g. VFL server or other VFL clients, or NEF) to subscribe / unsubscribe / notify / modify / terminate / request information for ML / VFL Model training and / or inference.

[0895] Based on the service operation invoked by the consumer and the information indicated by the consumer, the VFL client (e.g. AF) may provide the local intermediate training / inference results to the consumer, or modify / terminate the VFL model training and / or inference.

[0896] The information provided by the service consumer / VFL server is the same as those detailed in clause 3.5.4.1.

[0897] The AF ML (machine learning) / VFL Model Training and / or inference Service includes one or more of the following operations:

[0898] ㆍ Subscribe service operation

[0899] ㆍ unsubscribe service operation

[0900] ㆍ Notify service operation

[0901] ㆍ VFL model training / inference Request service operation

[0902] In inputs and outputs of each AF service operation is the same as those detailed in clause 3.5.4.1.

[0903] Nnwdaf_VFLTraining Service

[0904] General

[0905] Service Description: This service is provided by an NWDAF acting as VFL client and enables an NWDAF VFL server, an AF VFL server, an NEF acting on its behalf as consumer or a NWDAF VFL client acting as a VFL client aggregator to request the NWDAF to participate in VFL preparation and model training as VFL client or enables an NWDAF VFL client to subscribe / unsubscribe to other NWDAF VFL client(s) to share intermediate training results for aggregation.

[0906] Parameters of the service operations are FFS and more will be added when procedures and content of services are agreed.

[0907] It is FFS whether this service can also be provided by an NWDAF acting as VFL server to enable a consumer to request VFL.

[0908] Nnwdaf_VFLTraining_Subscribe service operation

[0909] Service operation name: Nnwdaf_VFLTraining_Subscribe

[0910] Description: Subscribes to VFL ML Model training information.

[0911] Inputs may include:

[0912] For new subscription:

[0913] - Analytics ID as defined in Table 7.1-2 of TS23.288 v19.1.0;

[0914] - Notification Target Address (+ Notification Correlation ID).

[0915] When updating a subscription: Subscription Correlation ID

[0916] - Analytics filter information

[0917] - maximum response time

[0918] - intermediate training information

[0919] - VFL Correlation ID is added by server at VFL training process start

[0920] - VFL Interoperability Information

[0921] - NWDAF ID(s) of the indirect VFL client(s)

[0922] NOTE: the indirect VFL client ID is only indicated to the VFL aggregator when the VFL server determines to aggregate the client intermediate training results of indirect VFL clients by VFL client aggregator.

[0923] Outputs may include:

[0924] - When the request is accepted: Subscription Correlation ID (required for management of this subscription). When the request is not accepted, an error response with cause code.

[0925] NOTE: The detail reasons in the cause code are up to Stage 3.

[0926] - client intermediate training results

[0927] - VFL status report to the consumer, according to 6.2H.2.3.1 of TS23.288 v19.1.0.

[0928] Addition of Feature ID as input parameter is FFS. It is also FFS whether VFL correlation ID is optional or mandatory.

[0929] In various examples, Nnwdaf_VFLTraining_Subscribe service operation may alternatively be as follows:

[0930] Service operation name: Nnwdaf_VFLTraining_Subscribe

[0931] Description: Subscribes to VFL ML Model training information.

[0932] Inputs, Required:

[0933] For new subscription:

[0934] - Analytics ID as defined in Table 7.1-2.

[0935] - Notification Target Address (+ Notification Correlation ID).

[0936] When updating a subscription:

[0937] - Subscription Correlation ID.

[0938] Inputs, Optional:

[0939] - Analytics filter information.

[0940] - maximum response time.

[0941] - intermediate training information.

[0942] - VFL Correlation ID is added by server at VFL training process start.

[0943] - VFL Interoperability Information.

[0944] - Feature ID.

[0945] - VFL client aggregator flag.

[0946] - List of the NWDAF instance ID of one or more indirect VFL client.

[0947] Outputs Required: When the request is accepted: Subscription Correlation ID (required for management of this subscription). When the request is not accepted, an error response with cause code

[0948] NOTE: The detail reasons in the cause code are up to Stage 3.

[0949] Outputs, Optional:

[0950] - client intermediate training results.

[0951] - VFL status report to the consumer, according to clause 6.2H.2.3.1.

[0952] - List of NWDAF instance ID of one or more indirect VFL client.

[0953] NOTE: VFL client aggregator flag and / or List of NWDAF instance ID of one or more indirect VFL client will be included only when the intermediate training results are shared between VFL clients.

[0954] Nnwdaf_VFLInference Service

[0955] General

[0956] Service Description: This service is provided by an NWDAF acting as VFL client and enables an VFL server or VFL client aggregator as consumer to request or subscribe / unsubscribe for a VFL inference.

[0957] When the subscription is accepted by the NWDAF containing AnLF, the consumer receives from the NWDAF an identifier (Subscription Correlation ID) allowing to further manage (modify, delete) this subscription.

[0958] Parameters of the service operations are FFS and more will be added when procedures and content of services are agreed. Addition of VFL correlation ID as input parameter is FFS.

[0959] Nnwdaf_VFLInference_Subscribe service operation

[0960] Service operation name: Nnwdaf_ VFLInference_Subscribe

[0961] Description: Subscribe to VFL inference.

[0962] Inputs may include:

[0963] For new subscriptions:

[0964] - Notification Target Address (+ Notification Correlation ID).

[0965] - Analytics ID

[0966] - Target of VFL inference;

[0967] When updating a subscription:

[0968] - Subscription Correlation ID

[0969] Inputs may also include:

[0970] - VFL inference filter

[0971] - NWDAF ID(s) of the indirect VFL client(s)

[0972] NOTE: the indirect VFL client ID is only indicated to the VFL aggregator when the VFL server determines to aggregate the client intermediate inference results of indirect VFL clients by VFL client aggregator.

[0973] Outputs may include:

[0974] - When the subscription is accepted: Subscription Correlation ID (required for management of this subscription). When the subscription is not accepted, an error response.

[0975] - client intermediate results

[0976] In various examples, Nnwdaf_VFLInference_Subscribe service operation may alternatively be as follows:

[0977] Service operation name: Nnwdaf_VFLInference_Subscribe

[0978] Description: Subscribe to VFL inference.

[0979] Inputs, Required:

[0980] For new subscription:

[0981] - Notification Target Address (+ Notification Correlation ID).

[0982] - Analytics ID.

[0983] - VFL Correlation ID.

[0984] - Target of VFL inference.

[0985] When updating a subscription:

[0986] - Subscription Correlation ID.

[0987] Inputs, Optional:

[0988] - VFL inference filter.

[0989] - VFL client aggregator flag.

[0990] - List of external NWDAF ID of one or more indirect VFL client.

[0991] Outputs Required: When the subscription is accepted: Subscription Correlation ID (required for management of this subscription). When the subscription is not accepted, an error response.

[0992] Outputs, Optional:

[0993] - Client intermediate results.

[0994] - List of external NWDAF ID of one or more indirect VFL client.

[0995] NOTE: VFL client aggregator flag and List of external NWDAF ID of one or more indirect VFL client will be included only when the intermediate inference results are shared between VFL clients.

[0996] Nnwdaf_VFLInference_Request service operation

[0997] Service operation name: Nnwdaf_VFLInference_Request

[0998] Description: The consumer requests the NWDAF to perform a one-time VFL inference.

[0999] Inputs may include:

[1000] - Target of VFL inference

[1001] - VFL inference filter

[1002] - NWDAF ID(s) of the indirect VFL client(s)

[1003] NOTE: the indirect VFL client ID is only indicated to the VFL aggregator when the VFL server determines to aggregate the client intermediate inference results of indirect VFL clients by VFL client aggregator.

[1004] Outputs may include:

[1005] - If the request is accepted, then client intermediate results. When the request is not accepted, an error response.

[1006] In various examples, Nnwdaf_VFLInference_Request service operation may alternatively be as follows:

[1007] Service operation name: Nnwdaf_VFLInference_Request

[1008] Description: The consumer requests the NWDAF to perform a one-time VFL inference.

[1009] Inputs, Required:

[1010] - Target of VFL inference.

[1011] - VFL Correlation ID.

[1012] - Analytics ID.

[1013] Inputs, Optional:

[1014] - VFL inference filter.

[1015] - VFL client aggregator flag.

[1016] - List of the NWDAF instance ID of one or more indirect VFL client.

[1017] Outputs, Required: If the request is accepted, then client intermediate results. When the request is not accepted, an error response.

[1018] Outputs, Optional:

[1019] - client intermediate inference results.

[1020] - List of the NWDAF instance ID of one or more indirect VFL client.

[1021] - NOTE: VFL client aggregator flag and List of NWDAF instance ID of one or more indirect VFL client will be included only when the intermediate inference results are shared between VFL clients.

[1022] Nnef_VFLTraining_Subscribe service operation

[1023] Service operation name: Nnef_VFLTraining_Subscribe

[1024] Description: Subscribes to VFL ML Model training with AF as VFL client.

[1025] Inputs may include:

[1026] For new subscriptions:

[1027] - Analytics ID;

[1028] - Notification Target Address (+ Notification Correlation ID).

[1029] When updating a subscription: Subscription Correlation ID:

[1030] - For NWDAF as VFL client, external NWDAF ID

[1031] Inputs may also include:

[1032] - Analytics filter information

[1033] - maximum response time

[1034] - intermediate training information

[1035] - VFL Correlation ID is added by server at VFL training process start

[1036] - VFL Interoperability Information

[1037] - External NWDAF ID(s) of the indirect VFL client(s)

[1038] NOTE: subject to operator polices, to protect 5GC privacy, the untrusted AF might be required to choose VFL client aggregator and indirect VFL client. The external NWDAF ID is indicated by untrusted AF as VFL server to NWDAF VFL client aggregator in such scenario. in such scenario.

[1039] Outputs may include:

[1040] - When the request is accepted: Subscription Correlation ID (required for management of this subscription). When the request is not accepted, an error response with cause code

[1041] NOTE: The detail reasons in the cause code are up to Stage 3.

[1042] - client intermediate training result

[1043] Addition of Feature ID as input parameter is FFS

[1044] In various examples, Nnef_VFLTraining_Subscribe service operation may alternatively be as follows:

[1045] Service operation name: Nnef_VFLTraining_Subscribe

[1046] Description: Subscribes to VFL ML Model training with AF as VFL client.

[1047] Inputs, Required:

[1048] For new subscription:

[1049] - Analytics ID.

[1050] - Notification Target Address (+ Notification Correlation ID).

[1051] When updating a subscription:

[1052] - Subscription Correlation ID.

[1053] - For NWDAF as VFL client, external NWDAF ID.

[1054] Inputs, Optional:

[1055] - Analytics filter information.

[1056] - Maximum response time.

[1057] - Intermediate training information.

[1058] - VFL Correlation ID is added by server at VFL training process start.

[1059] - VFL Interoperability Information.

[1060] - Feature ID.

[1061] - VFL client aggregator flag.

[1062] - List of external NWDAF ID of one or more indirect VFL client.

[1063] Outputs Required: When the request is accepted: Subscription Correlation ID (required for management of this subscription). When the request is not accepted, an error response with cause code.

[1064] NOTE: The detail reasons in the cause code are up to Stage 3.

[1065] Outputs, Optional:

[1066] - Client intermediate training result.

[1067] - List of external NWDAF ID of one or more indirect VFL client.

[1068] NOTE: VFL client aggregator flag and List of external NWDAF ID of one or more indirect VFL client will be included only when the intermediate training results are shared between VFL clients.

[1069] Nnef_VFLInference_Subscribe service operation

[1070] Service operation name: Nnef_VFLInference_Subscribe

[1071] Description: Subscribe to VFL inference.

[1072] Inputs may include:

[1073] For new subscription:

[1074] - Notification Target Address (+ Notification Correlation ID).

[1075] - VFL Correlation ID

[1076] - Target of VFL inference;

[1077] When updating a subscription:

[1078] - Subscription Correlation ID.

[1079] - For NWDAF as VFL client, external NWDAF ID.

[1080] Inputs may also include:

[1081] - VFL inference filter

[1082] - External NWDAF ID(s) of the indirect VFL client(s)

[1083] NOTE: subject to operator polices, to protect 5GC privacy, the untrusted AF might be required to choose VFL client aggregator and indirect VFL client. The external NWDAF ID is indicated by untrusted AF as VFL server to NWDAF VFL client aggregator in such scenario.

[1084] Outputs may include:

[1085] - When the subscription is accepted: Subscription Correlation ID (required for management of this subscription). When the subscription is not accepted, an error response.

[1086] - client intermediate results

[1087] In various examples, Nnef_VFLInference_Subscribe service operation may alternatively be as follows:

[1088] Service operation name: Nnef_VFLInference_Subscribe

[1089] Description: Subscribe to VFL inference.

[1090] Inputs, Required:

[1091] For new subscription:

[1092] - Notification Target Address (+ Notification Correlation ID).

[1093] - VFL Correlation ID.

[1094] - Target of VFL inference.

[1095] When updating a subscription:

[1096] - Subscription Correlation ID.

[1097] - For NWDAF as VFL client, external NWDAF ID.

[1098] Inputs, Optional:

[1099] - VFL inference filter.

[1100] - VFL client aggregator flag.

[1101] - List of external NWDAF ID of one or more indirect VFL client.

[1102] Outputs Required: When the subscription is accepted: Subscription Correlation ID (required for management of this subscription). When the subscription is not accepted, an error response.

[1103] Outputs, Optional:

[1104] - Client intermediate results.

[1105] - List of external NWDAF ID of one or more indirect VFL client.

[1106] NOTE: VFL client aggregator flag and List of external NWDAF ID of one or more indirect VFL client will be included only when the intermediate inference results are shared between VFL clients.

[1107] Nnef_VFLInference_Request service operation

[1108] Service operation name: Nnef_VFLInference_Request

[1109] Description: The consumer requests the NWDAF to perform a one-time VFL inference.

[1110] Inputs may include:

[1111] - Target of VFL inference;

[1112] - VFL Correlation ID

[1113] - VFL inference filter

[1114] - External NWDAF ID(s) of the indirect VFL client(s)

[1115] NOTE: subject to operator polices, to protect 5GC privacy, the untrusted AF might be required to choose VFL client aggregator and indirect VFL client. The external NWDAF ID is indicated by untrusted AF as VFL server to NWDAF VFL client aggregator in such scenario.

[1116] Outputs may include:

[1117] - If the request is accepted, then client intermediate results. When the request is not accepted, an error response.

[1118] In various examples, Nnef_VFLInference_Request service operation may alternatively be as follows:

[1119] Service operation name: Nnef_VFLInference_Request

[1120] Description: The consumer requests the NWDAF to perform a one-time VFL inference.

[1121] Inputs, Required:

[1122] - Target of VFL inference.

[1123] - VFL Correlation ID.

[1124] - Analytics ID.

[1125] Inputs, Optional:

[1126] - VFL inference filter.

[1127] - VFL client aggregator flag.

[1128] - List of external NWDAF ID of one or more indirect VFL client.

[1129] Outputs, Required: If the request is accepted, then client intermediate results. When the request is not accepted, an error response.

[1130] Outputs, Optional: None.

[1131] - Client intermediate results.

[1132] - List of external NWDAF ID of one or more indirect VFL client.

[1133] NOTE: VFL client aggregator flag and List of external NWDAF ID of one or more indirect VFL client will be included only when the intermediate inference results are shared between VFL clients.

[1134] Nnwdaf_VFLTraining_Notify service operation

[1135] Service operation name: Nnwdaf_VFLTraining_Notify

[1136] Description: NWDAF notifies the consumer of client intermediate training result of the local ML model.

[1137] Inputs, Required:

[1138] - Notification Correlation Information.

[1139] Inputs, Optional:

[1140] - Client intermediate training result.

[1141] - List of external NWDAF ID of one or more indirect VFL client.

[1142] NOTE: VFL client aggregator flag and List of external NWDAF ID of one or more indirect VFL client will be included only when the intermediate inference results are shared between VFL clients.

[1143] Outputs, Required: Operation execution result indication.

[1144] Outputs, Optional: None.

[1145] Nnwdaf_VFLInference_Notify service operation

[1146] Service operation name: Nnwdaf_VFLInference_Notify

[1147] Description: Notify VFL inference result.

[1148] Inputs, Required:

[1149] - Notification Correlation Information.

[1150] Inputs, Optional:

[1151] - client intermediate results.

[1152] - List of external NWDAF ID of one or more indirect VFL client.

[1153] NOTE: VFL client aggregator flag and List of external NWDAF ID of one or more indirect VFL client will be included only when the intermediate inference results are shared between VFL clients.

[1154] Outputs, Required: Operation execution result indication.

[1155] Outputs, Optional: None.

[1156] Nnef_VFLTraining_Notify service operation

[1157] Service operation name: Nnef_VFLTraining_Notify

[1158] Description: NEF notifies the consumer of client intermediate training result of the local ML mode.

[1159] Inputs, Required:

[1160] - Notification Correlation Information.

[1161] Inputs, Optional:

[1162] - Client intermediate training result.

[1163] - List of external NWDAF ID of one or more indirect VFL client.

[1164] NOTE: VFL client aggregator flag and List of external NWDAF ID of one or more indirect VFL client will be included only when the intermediate training results are shared between VFL clients.

[1165] Outputs, Required: Operation execution result indication.

[1166] Outputs, Optional: None.

[1167] Nnef_VFLTraining_Notify service operation

[1168] Service operation name: Nnef_VFLTraining_Notify

[1169] Description: NEF notifies the consumer of client intermediate training result of the local ML mode.

[1170] Inputs, Required:

[1171] - Notification Correlation Information.

[1172] Inputs, Optional:

[1173] - Client intermediate training result.

[1174] - List of external NWDAF ID of one or more indirect VFL client.

[1175] NOTE: VFL client aggregator flag and List of external NWDAF ID of one or more indirect VFL client will be included only when the intermediate inference results are shared between VFL clients.

[1176] Outputs, Required: Operation execution result indication.

[1177] Outputs, Optional: None.

[1178] Nnef_VFLInference_Request service operation

[1179] Above are described a number of services (e.g. NWDAF services, NEF services, AF services, NF services, service consumer services etc.) in which inputs and outputs may be identified as being "Required" or "Optional". It will be appreciated that the disclosure also includes examples of each of these services in which all inputs and / or outputs are considered to be optional, such that all combinations of inputs and all combinations of outputs are included within examples of the disclosure.

[1180] Further details on the above described procedures are set out in Appendices A, B, C, D, E, and F where details set out in the appendices may be combined with those set out in the main body of the disclosure and also provide context to and motivation for the subject matter of the main body of the disclosure.

[1181] Figure 6 is a block diagram of an exemplary network entity / function, according to an embodiment of the disclosure, such as the techniques disclosed in relation to any of the figures. For example, any of the network entities, network function etc. may be provided in the form of the network entity illustrated in Figure 6. The skilled person will appreciate that a network entity / function may be implemented, for example, as a network element on a dedicated hardware, as a software instance running on a dedicated hardware, and / or as a virtualised function instantiated on an appropriate platform, e.g. on a cloud infrastructure.

[1182] The entity 600 comprises a processor (or controller) 601, a transmitter 603 and a receiver 605. The receiver 605 is configured for receiving one or more messages from one or more other network entities, for example as described above. The transmitter 603 is configured for transmitting one or more messages to one or more other network entities, for example as described above. The processor 601 is configured for performing one or more operations, for example according to the operations as described above.

[1183] According to an embodiment of the disclosure, wherein the second intermediate result is determined by performing the local computation of the aggregated plurality of first intermediate results.

[1184] According to an embodiment of the disclosure, the method further comprises: transmitting, to the second network entity, an unsubscribe message.

[1185] According to an embodiment of the disclosure, wherein the first network entity is selected by the NEF.

[1186] According to an embodiment of the disclosure, wherein the first network entity, and not the second network entity, is indicated to a server.

[1187] According to an embodiment of the disclosure, wherein the first network entity and the second network entity are selected based on interoperability information.

[1188] According to an embodiment of the disclosure, the method is performed during a training procedure or an inference procedure.

[1189] According to an embodiment of the disclosure, wherein the second network entity is indirect network entity.

[1190] According to an embodiment of the disclosure, wherein the first network entity is further caused to: transmit, to the second network entity, an unsubscribe message.

[1191] According to an embodiment of the disclosure, wherein the first network entity is caused to operate during a training procedure or an inference procedure.

[1192] For all of the examples / aspects / embodiments etc. described above / herein, it should be considered that the corresponding features / operations apply in any order or combination, and that furthermore there exists the possibility to omit one or more features / operations.

[1193] Moreover, for all of the examples, embodiments, aspects etc. above, these apply to at least LTE, NR, NR NTN or IoT NTN (note this list is merely to give some examples and should not be seen as limiting), including any related signalling / messages on any of the inferences X2, Xn, NG, S1, F1, etc (again, this list is merely to give some examples and should not be seen as limiting). It will be appreciated that, in each example / embodiment / aspect etc. described above, one or more features or operations may be omitted, modified or moved (e.g., to change the order of the features or the operations), if desired and appropriate.

[1194] Additionally, where the figures illustrating example method flows include text in relation to a specific step / operation, it will be appreciated that this text is simply an example of the corresponding step / operation, where a more general definition (such as may be found in the description of the corresponding step) may apply for the step / operation.

[1195] Additionally, regarding all of the above, one or more features or operations etc. from any example / embodiment may be combined with features or operations from any other example / embodiment. That is, the disclosure should be considered to include all combinations of examples / embodiments disclosed herein, as appropriate, as well as combinations of individual features within and between each example / embodiment, as appropriate.

[1196] The techniques described herein may be implemented using any suitably configured apparatus and / or system. Such an apparatus and / or system may be configured to perform a method according to any aspect, embodiment or example disclosed herein. Such an apparatus may comprise one or more elements, for example one or more of receivers, transmitters, transceivers, processors, controllers, modules, units, and the like, each element configured to perform one or more corresponding processes, operations and / or method steps for implementing the techniques described herein. For example, an operation / function of X may be performed by a module configured to perform X (or an X-module). The one or more elements may be implemented in the form of hardware, software, or any combination of hardware and software.

[1197] It will be appreciated that examples of the disclosure may be implemented in the form of hardware, software or any combination of hardware and software. Any such software may be stored in the form of volatile or non-volatile storage, for example a storage device like a ROM, whether erasable or rewritable or not, or in the form of memory such as, for example, RAM, memory chips, device or integrated circuits or on an optically or magnetically readable medium such as, for example, a CD, DVD, magnetic disk or magnetic tape or the like.

[1198] It will be appreciated that the storage devices and storage media are embodiments of machine-readable storage that are suitable for storing a program or programs comprising instructions that, when executed, implement certain examples of the present disclosure. Accordingly, certain examples provide a program comprising code for implementing a method, apparatus or system according to any example, embodiment and / or aspect disclosed herein, and / or a machine-readable storage storing such a program. Still further, such programs may be conveyed electronically via any medium, for example a communication signal carried over a wired or wireless connection.

[1199] While the disclosure has been shown and described with reference to certain examples, it will be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the scope of the disclosure.

[1200] The reader's attention is directed to all papers and documents which are filed concurrently with or previous to this specification in connection with this application and which are open to public inspection with this specification, and the contents of all such papers and documents are incorporated herein by reference.

[1201] Further examples in accordance with the disclosure are set out in the following numbered clauses.

[1202] 1. A method for a network data analytics function (NWDAF) vertical federated learning (VFL) client in a wireless communications network, the method comprising:

[1203] transmitting, to one or more other NWDAF VFL clients, a second inference subscribe message;

[1204] receiving, from the one or more other NWDAF VFL clients, intermediate inference results;

[1205] aggregating the received intermediate inference results;

[1206] performing local computation on the aggregated received intermediate inference results to produce a further intermediate inference result; and

[1207] transmitting the further intermediate inference result to a network exposure function (NEF).

[1208] 2. The method of clause 1, wherein the NWDAF VFL client and the one or more other NWDAF VFL clients are selected by a VFL server and / or the NEF.

[1209] 3. The method of clause 2, further comprising receiving, from the NEF, a first inference subscribe message, wherein the first inference subscribe message includes an indication of the one or more other NWDAF VFL clients.

[1210] 4. The method of any preceding clause, wherein the one or more other NWDAF VFL clients are selected based on one or more of an VFL interoperability indicator, parameters in VFL interoperability information, and a respective supporting gradient.

[1211] 5. The method of any preceding clause, wherein performing local computation on the aggregated received intermediate inference results includes performing local computation on the aggregated received intermediate inference results and a local (i.e. the NWDAF VFL client's own) intermediate inference result.

[1212] 6. The method of any preceding clause, further comprising transmitting an unsubscribe message to the one or more other NWDAF VFL clients.

[1213] 7. The method of any preceding clause, wherein the one or more other NWDAF VFL clients are indirect NWDAF VFL clients.

[1214] 8. The method of any preceding clause, wherein the first and / or second inference subscribe messages are Nnwdaf_VFL_Inference_Subscribe messages.

[1215] 9. The method of any preceding clause, wherein the intermediate inference results are received in an Nnwdaf_VFL_Inference_Notify message(s).

[1216] 10. The method of any preceding clause, wherein the further intermediate inference result is transmitted to the NEF in an Nnef_VFL_Inference_Notify message.

[1217] 11. The method of any preceding clause, wherein the further intermediate inference result is transmitted to an VFL server via the NEF, and wherein the VFL server is an untrusted application function (AF).

[1218] 12. A method for a wireless communication network comprising a vertical federated learning (VFL) server, a network exposure function (NEF), and a plurality of network data analytics function (NWDAF) VFL clients, the method comprising:

[1219] transmitting, from the VFL server to the NEF, a first inference subscribe message;

[1220] transmitting, from the NEF to a first NWDAF VFL client among the plurality of NWDAF VFL clients, a second inference subscribe message;

[1221] transmitting, from the first NWDAF VFL client to one or more second NWDAF VFL clients among the plurality of NWDAF VFL clients, a third inference subscribe message;

[1222] transmitting, from the one or more second NWDAF VFL clients to the first NWDAF VFL client, intermediate inference results;

[1223] aggregating, at the first NWDAF VFL client, the received intermediate inference results;

[1224] performing, by the first NWDAF VFL client, local computation on the aggregated received intermediate inference results to produce a further intermediate inference result;

[1225] transmitting, from the first NWDAF VFL client to the NEF, the further intermediate inference result; and

[1226] transmitting, from the NEF to the VFL server, the further intermediate inference result.

[1227] 13. The method of clause 12, wherein the first NWDAF VFL client and / or the one or more second NWDAF VFL clients are selected by the VFL server and / or the NEF.

[1228] 14. The method of clause 13, wherein the selection is performed during an NWDAF VFL client discovery procedure.

[1229] 15. The method of any of clauses 12 to 14, wherein the second inference subscribe message includes an indication of the one or more second NWDAF VFL clients.

[1230] 16. The method of any of clauses 12 to 15, wherein the one or more second NWDAF VFL clients are selected based on one or more of an VFL interoperability indicator, parameters in VFL interoperability information, and a respective supporting gradient.

[1231] 17. The method of any of clauses 12 to 16, wherein performing local computation on the aggregated received intermediate inference results includes performing local computation on the aggregated received intermediate inference results and a local (i.e. the first NWDAF VFL client's own) intermediate inference result.

[1232] 18. The method of any of clauses 12 to 17, further comprising transmitting, from the first NWDAF VFL client to the one or more second NWDAF VFL clients, an unsubscribe message.

[1233] 19. The method of any of clauses 12 to 18, wherein the one or more second NWDAF VFL clients are indirect NWDAF VFL clients.

[1234] 20. The method of any of clauses 12 to 19, wherein the first inference subscribe message is an Nnef_VFL_Inference_Subscribe message.

[1235] 21. The method of any of clauses 12 to 20, wherein the second and / or third inference subscribe messages are Nnwdaf_VFL_Inference_Subscribe messages.

[1236] 22. The method of any of clauses 12 to 21, wherein the intermediate inference results and / or the further intermediate inference result are transmitted in an Nnwdaf_VFL_Inference_Notify message(s).

[1237] 23. The method of any of clauses 12 to 22, wherein the further intermediate inference result is transmitted to the NEF in an Nnef_VFL_Inference_Notify message.

[1238] 24. The method of any of clauses 12 to 23, wherein the VFL server is an untrusted application function (AF).

[1239] 25. The method of any of clauses 12 to 24, wherein the VFL server does not communicate with the one or more second NWDAF VFL clients during the inference procedure.

[1240] 26. The method of any of clauses 12 to 25, further comprising converting, by the NEF, internal identifiers of the NWDAF VFL clients to external identifiers.

[1241] 27. The method of any of clauses 12 to 26, wherein the NEF communicates with only the first NWDAF VFL client among the plurality of NWDAF VFL clients during the VFL inference.

[1242] 28. A network data analytics function (NWDAF) vertical federated learning (VFL) client configured to perform the method of any of clauses 1 to 11.

[1243] 29. A wireless communication network comprising a vertical federated learning (VFL) server, a network exposure function (NEF), and a plurality of network data analytics function (NWDAF) VFL clients, wherein the wireless communication network is configured to perform the method of any of clauses 12 to 27.

[1244] Acronyms and Definitions

[1245] 3GPP 3rdGeneration Partnership Project

[1246] 5G 5thGeneration

[1247] 5GC 5G Core

[1248] 5QI 5G QoS Identifier

[1249] 5GS 5G System

[1250] 5GSM 5G System Session Management

[1251] 5GMM 5G System Mobility Management

[1252] AF Application Function

[1253] AI Artificial Intelligence

[1254] AM Acknowledged Mode

[1255] AMF Access and Mobility Management Function

[1256] AnLF Analytics Logical Function

[1257] AS Application Server

[1258] ASP Application Service Provider

[1259] ATG Air-To-Ground

[1260] AUSF Authentication Server Function

[1261] CDN Content Delivery Network

[1262] DCAF Data Collection Application Function

[1263] DNAI Data Network Access Identifier

[1264] DNN Data Network Name

[1265] DNS Domain Name Server

[1266] DRB Data Radio Bearer

[1267] eNB Evolved Node B

[1268] EPC Evolved Packet Core

[1269] FEC Forward Error Correction

[1270] FL Federated Learning

[1271] FQDN Fully Qualified Domain Name

[1272] GBR Guaranteed Bit Rate

[1273] gNB Next generation Node B

[1274] GPSI Generic Public Subscription Identifier

[1275] GW Gateway

[1276] HFL Horizontal Federated Learning

[1277] HSS Home Subscriber Service

[1278] IAB Integrated Access and Backhaul

[1279] ID Identity / Identifier

[1280] IIoT Industrial Internet of Things

[1281] IoT Internet of Things

[1282] IMEI International Mobile Equipment Identities

[1283] IP Internet Protocol

[1284] I-SMF Intermediate SMF

[1285] LADN Local Area Data Network

[1286] LL SSM Lower Layer SSM

[1287] MBMS Multimedia Broadcast / Multicast Service

[1288] MBS Multicast / Broadcast Service

[1289] MBSF Multicast / Broadcast Service Function

[1290] MBSTF Multicast / Broadcast Service Transport Function

[1291] MB-SMF Multicast / Broadcast Session Management Function

[1292] MB-UPF Multicast / Broadcast User Plane Function

[1293] ML Machine Learning

[1294] MME Mobility Management Entity

[1295] MN Master Node

[1296] MNF Monitoring Network Function

[1297] MNO Mobile Network Operator

[1298] MT Mobile Termination

[1299] MTLF Model Training Logical Function

[1300] NAS Non-Access Stratum

[1301] NEF Network Exposure Function

[1302] NF Network Function

[1303] NR New Radio

[1304] NRF Network Repository Function

[1305] NG-RAN Next Generation Radio Access Network

[1306] NG-eNB Next Generation eNB

[1307] NSA Non-Standalone

[1308] NSSF Network Slice Selection Function

[1309] NTN Non-Terrestrial Networks

[1310] NW Network

[1311] NWDAF Network Data Analytics Function

[1312] OS Operating System

[1313] OSAPP OS Application

[1314] PCF Policy Control Function

[1315] PCO Protocol Configuration Options

[1316] PDR Packet Detection Rule

[1317] PDU Protocol Data Unit

[1318] PTM Point To Multipoint

[1319] PTP Point to Point

[1320] QFI QoS Flow Identifier (ID)

[1321] QoS Quality of Service

[1322] RACH Random Access Channel

[1323] RAN Radio Access Network

[1324] RRC Radio Resource Control

[1325] RSD Route Selection Descriptor

[1326] RSRP Reference Signal Received Power

[1327] SA Standalone

[1328] SDAP Service Data Adaptation Protocol

[1329] SDU Service Data Unit

[1330] SGW Serving Gateway

[1331] SIM Subscriber Identity Module

[1332] SLA Service Level Agreement

[1333] SM Session Management

[1334] SMF Session Management Function

[1335] SN Secondary Node

[1336] S-NSSAI Single Network Slice Selection Assistance Information

[1337] SSB Synchronization Signal Block

[1338] SSM Source Specific IP Multicast address

[1339] SSC Session and Service Continuity

[1340] SRB Signaling Radio Bearer

[1341] SUPI Subscription Permanent Identifier

[1342] TA Tracking Area

[1343] TAI Tracking Area Identity

[1344] TE Terminal Equipment

[1345] TM Transparent Mode

[1346] TMGI Temporary Mobile Group Identity

[1347] TS Technical Specification

[1348] UAV Unmanned Aerial Vehicle

[1349] UDM Unified Data Manager

[1350] UDR Unified Data Repository

[1351] UE User Equipment

[1352] UL Uplink

[1353] UM Unacknowledged Mode

[1354] UP User Plane

[1355] UPF User Plane Function

[1356] URLLC Ultra-Reliable and Low-Latency Communication

[1357] URSP UE Route Selection Policy

[1358] VFL Vertical Federated Learning

[1359] Appendix A

[1360] 3GPP TSG-SA2 Meeting #164 S2-2407755

[1361] 19 - 23 August, 2024, Maastricht, Netherlands

[1362] 6.2X Vertical Federated Learning

[1363] 6.2X.1 General

[1364] This clause specifies support for VFL in the 5GC.

[1365] 6.2X.2 Procedures for VFL training

[1366] The procedure in Figure 6.2x.2-1 to support VFL model training with AF or NWDAF acting as the VFL server and successive VFL client information sharing is described step by step below.

[1367] 0. VFL server (i.e. AF or NWDAF) and VFL clients (i.e. NWDAF) register to NRF. The registration may include their NF profiles, Analytics ID(s), Address information of NWDAF, Service Area, VFL capability type information (i.e. VFL server and VFL client type), VFL client coordination capability, VFL computational capability (i.e. acting as VFL server and / or VFL client ), and Time interval supporting VFL. The latter parameter can be the same as Time interval supporting FL described in clause 5.2.

[1368] The VFL server and clients are discovered via NRF by invoking the Nnrf_NFDiscovery_Request service operation. During the discovery, the VFL server may include the requirements on the VFL clients and server in the discovery request, e.g. the location of the VFL clients and server, the (minimum) available capacity of the VFL clients and server, VFL client coordination capability.

[1369] NOTE 1: The initial selection of VFL clients by the VFL server may happen in step 0. The selection of VFL clients by the VFL server may also be finalized in step 2.

[1370] NOTE 2: The details of sample and / or feature alignment are out of scope of this procedure.

[1371] 1. The VFL server determines to initiate the VFL model training based on its internal logic and sends a VFL preparation request to the VFL client NWDAF(s) (via NEF if the VFL server AF is untrusted AF).

[1372] If the VFL server is trusted AF or NWDAF, the VFL server invokes Nnwdaf_MLModelTrainingInfo_Request or Nnwdaf_MLModelTraining_Subscribe service operation towards the VFL client NWDAF(s).

[1373] For untrusted VFL server AF, the AF invokes new service operation Nnef_MLModelTrainingInfo_Request or Nnef_MLModelTraining_Subscribe request towards the NEF. Then the NEF forwards the model preparation request to the corresponding VFL client NWDAF(s) by invoking Nnwdaf_MLModelTrainingInfo_Request or Nnwdaf_MLModelTraining_Subscribe service operation.

[1374] Editor's note: The details of the new NEF service operations, including Nnef_MLModelTrainingInfo_Request, Nnef_MLModelTraining_Subscribe, Nnef_MLModelTraining_Notify, Nnef_MLModelTraining_Unsubscribe, etc., are FFS.

[1375] The VFL server may include ML Preparation Flag to check if the VFL clients can meet the ML model training requirements in the VFL preparation request. The VFL server may also include Analytics ID and VFL process ID, the target samples (e.g. UE ID, application ID, etc.), optional target features, ML Model Interoperability information, Available data requirement, Availability time requirement, required NWDAF capacity for the VFL process etc.

[1376] The VFL clients may respond to the VFL server by indicating whether they will join the VFL operation and may include the reason in the response message if it cannot join the VFL operation, e.g. due to no sufficient capacity to perform VFL model training, not able to coordinate with other VFL client NWDAF(s), etc.

[1377] 2. The VFL server may performed VFL client selection or refinement based on the responses received by from the VFL clients.

[1378] 3. The VFL requests the VFL clients to start the VFL Model training process where intermediate training results are shared and coordinated by the VFL server, facilitating a collaborative approach to model refinement across the VFL clients.

[1379] The VFL server may trigger the VFL training by invoking a ML Model Training request towards VFL client #1 (NWDAF) (via NEF if the AF is untrusted).

[1380] 3a. For untrusted VFL server AF, the AF invokes new service operation Nnef_MLModelTraining_Subscribe request or Nnef_MLModelTrainingInfo_Request towards the NEF for VFL training request. Then the NEF forwards the received VEL training request to the selected VFL client NWDAF(s) by invoking Nnwdaf_MLModelTraining_Subscribe or Nnwdaf_MLModelTrainingInfo_Request service operation.

[1381] 3b. If the VFL server is trusted AF or NWDAF, the VFL server invokes Nnwdaf_MLModelTraining_Subscribe request or Nnwdaf_MLModelTrainingInfo_Request towards the selected VFL client NWDAF(s).

[1382] The VFL server may indicate the Analytics ID and a VFL process ID associated to the VFL training, target samples (e.g. UE ID, application ID, etc.), optional target features, ML Model Interoperability information, Available data requirement, Availability time requirement, the VFL clients that participate the VFL process, the order of VFL clients for performing local model computation to the VFL clients.

[1383] Editor's note: The complete list of parameters to support the successive VFL client information sharing is FFS.

[1384] 4a. VFL client #1 (NWDAF) triggers the local model computation to calculate the intermediate results. The VFL client may collect data for model training if the local data is not sufficient.

[1385] 4b. VFL client#1 notifies the intermediate results to the next VFL client #2 based on the order configured by the VFL server, by invoking the Nnwdaf_MLModelTrainingInfo_Request or Nnwdaf_MLModelTraining_Subscribe service operation.

[1386] VFL client#1 may indicate the remaining VFL clients that participate the VFL training process, the order of the remaining VFL clients for performing local model computation and other information as detailed in Step 3 to VFL client #2 (NWDAF).

[1387] Alternatively, the full list of the VFL clients that participate the VFL training process and the order of the VFL clients to perform VFL training might be indicated to each client by the server, e.g. in step 1 or in parallel with step 3, And. In this case, each VFL client can work out the next VFL client to interact with based on the VFL client list, the order, and the ID of the previous VFL client.

[1388] 4c - 4e. Repeat Step 4a and 4b until the VFL training procedure propagates to the last VFL client based on the order configured by the VFL server.

[1389] 5. The VFL client #N NWDAF notifies the intermediate results to the VFL server.

[1390] 5a. If the VFL client is untrusted AF, the VFL client #N NWDAF notifies the intermediate results to the VFL server via NEF by invoking new service operation Nnef_MLModelTrainingInfo_Request response or Nnef_MLModelTraining_Notify based on the service operation used in Step 3. The NEF forwards the intermediate results to the VFL server by invoking Nnwdaf_MLModelTrainingInfo_Request response or Nnwdaf_MLModelTraining_Notify service operation based on the service operation received from VFL client.

[1391] 5b. If the VFL client is trusted AF or NWDAF, the VFL client #N invokes Nnwdaf_MLModelTrainingInfo_Request response or Nnwdaf_MLModelTraining_Notify based on the service operation used in Step 3.

[1392] 6. The VFL server performs further VFL computation and aggregation for local model (e.g. calculates the loss using the labels) by using the intermediate results received from VFL client #N. The VFL server updates its local model.

[1393] 7. In the subsequent iteration, the VFL server triggers the backwards propagation VFL computation for model update and refinement in each successive VFL clients, in the reversed order of VFL forward computation in step 4a-4e. VFL server sends VFL model refinement request to the last client in the previous iteration, e.g. VFL client #N.

[1394] 7a. If the VFL client is untrusted AF, the VFL server invokes new service operation Nnef_MLModelTraining_Notify towards NEF. Then the NEF forwards the request to the VFL client by invoking Nnwdaf_MLModelTraining_Notify.

[1395] 7b. If the VFL client is trusted AF or NWDAF, the VFL server invokes Nnwdaf_MLModelTraining_Notify service operation toward VFL client #N.

[1396] The VFL server may include the intermediate results (e.g. the loss which will be used by the VFL client to compute gradient for model refinement and update), and optionally the VFL clients that participate in the VFL training process and the order of VFL clients for performing local computation for model refinement to the VFL client #N.

[1397] NOTE 3: the order of VFL clients to perform model refinement in step 8a-8e might be reserved order of forward computation in step 4a-4e. The VFL clients that participate in the forward computation and backward propagation are the same. In this case, the VFL clients may derive the order of the backward propagation based on the ID of the previous VFL client.

[1398] 8a. VFL client #N performs VFL local computation to refine the local model based on the intermediate results provided by the VFL server.

[1399] 8b. VFL client #N deliveries the model refinement results to the subsequent VFL client based on the order configured by the VFL server or derived by itself by invoking Nnwdaf_MLModelTraining_Notify.

[1400] 8c. - 8e. Repeat Step 8a and 8b until the VFL local computation for model refinement procedure propagates to the VFL client which is the first VFL client to perform the forward computation in step 4a, e.g. VFL client #1.

[1401] 9. VFL client #1 notifies the model refinement results to the VFL server.

[1402] 9a. If the VFL client is untrusted AF, the VFL client #1 NWDAF notifies the intermediate results to the VFL server via NEF by invoking new service operation Nnef_MLModelTraining_Notify. The NEF forwards the model refinement response to the VFL server by invoking Nnwdaf_MLModelTraining_Notify service operation.

[1403] 9b. If the VFL client is trusted AF or NWDAF, VFL client #1 invokes Nnwdaf_MLModelTraining_Notify.

[1404] 10. The VFL server performs further VFL computation and model to update local model by using the intermediate results received from VFL client #1.

[1405] Steps 3-10 will be repeated until the VFL server determines to terminate the VFL model training.

[1406] 11. The VFL server determines to terminate the VFL model training process based on its internal logic, e.g. if the model is converged.

[1407] If the VFL server is untrusted AF, the VFL server invokes new service operation Nnef_MLModelTraining_Unsubscribe service operation towards NEF, and then the NEF forwards the request to the corresponding VFL client(s) by invoking Nnwdaf_MLModelTraining_Unsubscribe service operation.

[1408] If the VFL server is trusted AF or NWDAF , the VFL server sends VFL model training termination request by invoking Nnwdaf_MLModelTraining_Unsubscribe service operation toward NWDAF.

[1409] Step 11 may also happen after Step 6. In this case, Step 7-10 will be skipped.

[1410] Editor's note: The VFL inference procedure with successive VFL client information sharing is FFS.

[1411] Appendix B

[1412] 3GPP TSG-SA2 Meeting #166-Ad-Hoc-e S2-2500232

[1413] 20 - 24 January, 2025, Electronic meeting

[1414] 6.2H.2.3.1 Training Procedure for Vertical Federated Learning when NWDAF is acting as VFL server

[1415] The figure 6.2H.2.3.1-1 below shows the training procedure for Vertical Federated Learning when NWDAF is acting as VFL server.

[1416] Editor's note: How the NEF assists the VFL training process as well as whether the service operations going via NEF is using the existing or new service operation are FFS.

[1417] Editor's note: The details of the services in the procedure and whether VFL Training Start Flag is needed are FFS.

[1418] Editor's note: It is FFS whether sample / feature information is required to be provided or updated in each training.

[1419] Editor's note: Whether and how to include interoperability information in the VFL training procedure is FFS.

[1420] Editor's note: Whether and how to define the trigger of VFL training is FFS.

[1421] Editor's note: Whether and how to transfer the confirmation in VFL Preparation Phase at the beginning of VFL Training Phase is FFS.

[1422] 1. The NWDAF acting as VFL server determines the VFL clients that participate in VFL procedure in the VFL clients discovery and preparation phase as described in the clause 6.2H.2.1 and clause 6.2H.2.2.

[1423] NOTE 1: VFL Server can determine to start the training based on local configuration and agreement among vendors and / or application providers participating in the same group for specific VFL task(s).

[1424] Steps 2-6 are repeated until the training termination condition is reached.

[1425] 2. To start the VFL training, the VFL server sends a request to start the training to all selected VFL clients The request includes VFL correlation ID, at least the parameters negotiated during the preparation phase, Optionally, the VFL Server includes: Analytic filter information, maximum response time (i.e. the maximum time between VFL clients receive intermediate model training information and send back intermediate training result).

[1426] Editor's note: Whether the parameters negotiated in the preparation phase are provided at the end of the preparation phase or at the start of the training is FFS.

[1427] If the VFL procedure continues in subsequent iterations, the VFL server sends a request for a new VFL training iteration containing the VFL correlation ID and intermediate model training information to each of the VFL clients for next round of VFL training.

[1428] 2a. The VFL server sends a Nnwdaf_VFLTraining_Subscribe to the selected NWDAF VFL clients(s).

[1429] 2b. The VFL server sends a Naf_VFLTraining_Subscribe to the selected trusted AF VFL clients(s).

[1430] 2c. For each selected untrusted AF VFL clients, the VFL server sends a Nnef_VFLTraining_AFClient_Subscribe to the NEF handling that AF.

[1431] 2d. For each selected untrusted AF VFL clients, the NEF sends a Naf_VFLTraining_Subscribe to that AF. The NEF may also translate the analytic filter information if needed, e.g. TAIs into geographical area.

[1432] NOTE 2: In this release, the same NF associated with a VFL Server or VFL Client capability during the VFL training for a VFL correlation ID is also the same NF during the VFL inference.

[1433] Editor's note: Additional Parameters to be provided in the request are FFS.

[1434] Editor's note: It is FFS whether and how the local ML model is obtained by VFL Client in VFL training process.

[1435] 3. [Optional] Each VFL client collects its local data by using the current mechanism if the VFL client has no local data already available. The data used by each VFL Client is collected as per alignment information.

[1436] 4. During VFL training procedure, each VFL client further trains the local ML model associated with the same VFL Correlation ID based on their own collected or available data and when applicable (e.g. after the first round of training) and possible intermediate model training information distributed by the VFL server in the previous training iteration. Each VFL Client computes and reports the client intermediate training result of the local ML model to the VFL server.

[1437] NOTE 3: The intermediate model training information and intermediate training result are constructed in per sample granularity.

[1438] Editor's note: It is FFS and may depend on the service design: When the clients report the client intermediate training result, it also includes the corresponding VFL correlation ID.

[1439] 5. Each VFL client reports the computed client intermediate training result of the local ML model to the VFL server.

[1440] 5a. A NWDAF VFL client sends a Nnwdaf_VFLTraining_Notify.

[1441] 5b. A trusted AF VFL client sends a Naf_VFLTraining_Notify to the VFL server.

[1442] 5c. An untrusted AF VFL client sends a Naf_VFLTraining_Notify to the NEF.

[1443] 5d. For each untrusted AF VFL client , the NEF converts any external identifiers to internal identifiers and sends a Nnef_VFLTraining_AFClient_Notify to the VFL server.

[1444] 5e1 - 5e3. Alternatively, the NWDAF VFL clients may share the client intermediate training results with a NWDAF VFL client configured by the VFL server. This NWDAF VFL client aggregates the received client intermediate training results and perform local computation on its local model using the aggregated client intermediate training results. Then it sends one Nnwdaf_VFLTraining_Notify or Nnwdaf_VFLTraining_Request response that includes the client intermediate training result of this NWDAF VFL client to the VFL server.

[1445] 6. The VFL server may collect the local data and generate its own local intermediate training result. The NWDAF acting as VFL Server computes the intermediate model training information (e.g. gradient information or loss information) based on the VFL Client(s) intermediate training result(s) received in step 4, its own local intermediate results and the label. The intermediate model training information is used for updating the models of VFL clients. Different intermediate model training information may be computed for different VFL clients and for the VFL Server itself.

[1446] The VFL server may also compute the ML model metric (e.g. ML model accuracy) based on all the intermediate training result received from VFL clients and the label.

[1447] Editor's note: Whether weight of the VFL Client is computed by VFL server is FFS.

[1448] Editor's note: Whether VFL server and VFL clients share feature information is FFS.

[1449] 7. [Optional] The NWDAF acting as VFL server evaluates (e.g. based on the convergence of a loss function or loss value and / or if the pre-set iteration number is reached) whether VFL Training process converged. If the VFL Server evaluates the VFL Training process did not converge, the NWDAF acting as a VFL Server determines another round of VFL training is required and repeats step 2 - 6. If the VFL Server evaluates the VFL training process converged, it determines the VFL Training is completed. In this case, the VFL Server terminates the current VFL training process via step 7.

[1450] The VFL training termination decision may be also made as follows:

[1451] Based on the consumer request, the VFL server sends VFL status report to the consumer. The status report may include model metric (e.g. ML model accuracy).

[1452] Editor's note: The content of the VFL status report is FFS.

[1453] Editor's note: Whether VFL server sending convergence report to the VFL client and what is convergence report are FFS.

[1454] The consumer decides whether the current model can fulfil the requirement, e.g. ML model metric is satisfactory for the consumer and determines to stop or continue the training process. The consumer continues the training process or stops the training process.

[1455] Based on the subscription request sent from the consumer, the VFL server updates or terminates the current VFL training process.

[1456] Editor's note: Whether the ML model metric (e.g. ML model accuracy) defined for HFL can be re-applied to VFL is FFS.

[1457] 8. The VFL server sends VFL training termination message to VFL Client if it decides to terminate the VFL training process, the termination message contains VFL Correlation ID.

[1458] 8a. The VFL server sends a Nnwdaf_VFLTraining_Unsubscribe t to the selected NWDAF VFL clients(s).

[1459] 8b. The VFL server sends a Naf_VFLTraining_Unsubscribe to the selected trusted AF VFL clients(s).

[1460] 8c. For each selected untrusted AF VFL clients, the VFL server sends a Nnef_VFLTraining_AFClient_Unubscribe to the NEF handling that AF.

[1461] 8d. For each selected untrusted AF VFL clients, the NEF sends a Naf_VFLTraining_Unsubscribe to that AF.

[1462] 9. The VFL Server, stores VFL correlation ID, the local trained ML Model, the mapping information of the VFL correlation ID to the following parameters: Analytics ID related to the VFL training process, locally trained Model. Additionally, the VFL server stores the VFL client information, which may be used to determine associated VFL client in the VFL inference.

[1463] Each VFL client stores VFL correlation ID, the locally trained ML Model, the mapping information of the VFL correlation ID to locally trained Model

[1464] NOTE 4: The VFL correlation ID and the stored mapping information are used later for inference as described in Clause 6.2H.2.4.1.

[1465] Editor's note: Whether VFL Training termination Flag in the termination message is required is determined after settling down the service operation.

[1466] NOTE 5: If untrusted AF is involved in VFL Clients, the message between NWDAF acting as VFL Server and the untrusted AF is via NEF.

[1467] 6.2H.2.3.2 Training Procedure for Vertical Federated Learning untrusted AF is acting as VFL server

[1468] Editor's note: The ENs listed in clause 6.2H.2.3.1 are also applied to this clause.

[1469] 1. Same as step 1 in Figure 6.2H.2.3.1-1.

[1470] 2. To start VFL training, the VFL server do same as in step 1 in Figure 6.2H.2.3.1-1, using Nnef_VFLTraining_Subcribe.

[1471] Steps 3-7 are repeated until the training termination condition is reached.

[1472] 3. [Optional] Same as step 3 in Figure 6.2H.2.3.1-1.

[1473] 4. Same as step 4 in Figure 6.2H.2.3.1-1.

[1474] 5. Same as step 5 in Figure 6.2H.2.3.1-1.

[1475] 5a. A NWDAF VFL client sends a Nnwdaf_VFLTraining_Notify.

[1476] 5b. For an untrusted AF acting as VFL server, the NEF converts any internal identifiers to external identifiers, provides the external NWDAF ID and sends a Nnef_VFLTrainingNotify to the VFL server.

[1477] Alternatively,

[1478] 5c-5e. the NWDAF VFL clients share the client intermediate training results with a NWDAF VFL client configured by the VFL server. This NWDAF VFL client aggregates the received client intermediate training results and perform local computation on its local model using the aggregated client intermediate training results. Then it sends one notify message to the NEF by including its client intermediate training result.

[1479] 5f. For an untrusted AF acting as VFL server, the NEF converts the internal identifier to external identifier of the NWDAF VFL client that aggregates the intermediate training results, provides the external NWDAF ID and sends a Nnef_VFLTrainingNotify to the VFL server.

[1480] 6. [Optional] Same as step 6 in Figure 6.2H.2.3.1-1.

[1481] 7. Same as step 7 in Figure 6.2H.2.3.1-1.

[1482] 8. Same as step 8 of Figure 6.2H.2.3.1-1. However, sub steps in that figure are not applicable.

[1483] 8a. For each NWDAF VFL client, the untrusted AF as VFL server sends a Nnef_VFLTraining Unsubscribe to the NEF handling that AF. The untrusted AF identifies the VFL client using the external NWDAF ID assigned in the discovery procedure (see clause 6.2H.2.1.1).

[1484] 8b. The NEF sends an Nnwdaf_VFLTraining_Unsubscribe to the NWDAF VFL client indicated by the received external NWDAF ID.

[1485] 9. Same as step 9 of Figure 6.2H.2.3.1-1.

[1486] 6.2H.2.4.1 Inference procedure for vertical federated learning when NWDAF is acting as VFL server

[1487] 0. The analytics consumer NF sends an Analytics request / subscribe (Analytics ID, Target of Analytics Reporting= e.g. UE IDs and optionally Analytics Reporting Information=Analytics target period and Analytics Filter) to NWDAF containing AnLF by invoking a Nnwdaf_AnalyticsInfo_Request or a Nnwdaf_AnalyticsSubscription_Subscribe.

[1488] 1. If the NWDAF containing AnLF can be the VFL server to generate the VFL inference results for the requested analytics ID, then step 1 is skipped.

[1489] If the NWDAF containing AnLF can not generate the analytics output, the NWDAF containing AnLF determines the VFL Server for the requested analtyics, sends a subscription request to NWDAF VFL server using Nnwdaf_AnalyticsInfo_Request or Nnwdaf_AnalyticsSubscription_Subscribe including Analytics ID, Target of Analytics Reporting = e.g. UE IDs and optionally Analytics Reporting Information=Analytics target period and Analytics Filter.

[1490] 2. Based on the information received in the step 0 or 1, VFL server decides to initiate the VFL inference procedure with the VFL clients. VFL Server selects clients(s) using information stored in the VFL training process. The server may select some or no clients, e.g. depending on the accuracy of the VFL model, the contribution to the training result and the current status of the VFL clients.

[1491] When no VFL Clients are selected, the VFL server may generates the VFL inference results based only on its local trained ML model associated with the determined VFL correlation ID, skipping the steps 2 - 6 (and 7 if step 1 was also skipped).

[1492] VFL server NWDAF sends a VFL Inference request / subscription to the VFL clients including the Target of VFL inference = e.g. UE IDs, VFL correlation ID to indicate the VFL client which previously well-trained VFL local model associated with this ID will be used and optionlly VFL inference filter.

[1493] Editor's note: It is FFS whether additional parameters are needed to send from the VFL server to VFL client, e.g. parameters used in training phase and parameters from Analytics request.

[1494] Editor's note: It is FFS how the origin of analytics results can be traced and explained if not all clients participate and results are not satisfying.

[1495] 2a. For each NWDAF VFL client, the VFL Server NWDAF sends an Nnwdaf_VFLInference_Subscribe or Nnwdaf_VFLInference_Request to the VFL client.

[1496] 2b. For each trusted AF VFL client, the VFL Server NWDAF sends an Naf_VFLInference_Subscribe or Naf_VFLInference_Request to the VFL client.

[1497] 2c. For each untrusted AF VFL client, the VFL Server NWDAF sends an Nnef_VFLInference_Subscribe or Nnef_VFLInference_Request to the NEF serving the AF.

[1498] 2d. For each untrusted AF VFL client, the NEF converts any internal identifiers to external identifiers and sends an Naf_VFLInference_Subscribe or Naf_VFLInference_Request to the untrusted AF VFL client.

[1499] 3. Each VFL Client collects its local data by using the current mechanism if the VFL Client does not have local data available already.

[1500] 4. Based on the VFL correlation ID, each VFL Client determines the VFL local model to generate the intermediate local inference results.

[1501] 5. VFL Client sends the client intermediate results to the VFL server.

[1502] The intermediate results, which are sent from the VFL Client to the VFL Server during the VFL inference process, are the information for the VFL Server to combine and generate the VFL inference results.

[1503] Editor's note: It is FFS additional parameters are needed to send from the VFL client to VFL server.

[1504] If the VFL server used an inference subscription in step 2, step 5 may be repeated.

[1505] 5a. Each NWDAF VFL client sends an Nnwdaf_VFLInference_Notify or Nnwdaf_VFLInference_Request response to the VFL Server NWDAF.

[1506] 5b. Each trusted AF VFL client sends a Naf_VFLInference_Notify or Naf_VFLInference_Request response to the VFL Server NWDAF.

[1507] 5c. Each untrusted AF VFL client sends a Naf_VFLInference_Notify or Naf_VFLInference_Request response to the NEF.

[1508] 5d. For each untrusted AF VFL client, the NEF converts any external to internal identifiers and sends an Nnef_VFLInference_Notify or Nnef_VFLInference_Request response to the NWDAF VFL server.

[1509] 5e1 - 5e3. Alternatively, the NWDAF VFL clients may share the client intermediate inference results with a NWDAF VFL client configured by the VFL server. This NWDAF VFL client aggregates the received client intermediate inference results and perform local computation on its local model using the aggregated client intermediate inference results. Then it sends one Nnwdaf_VFLInference_Notify or Nnwdaf_VFLInference_Request response that includes the client intermediate inference result of this NWDAF VFL client to the VFL server.

[1510] 6. The VFL server may collect its local data and generate the intermediate local inference results. When the VFL Server selected VFL clients to participate in the VFL Inference process, it combines all the intermediate results to generate the VFL inference results based on the VFL correlation ID. The VFL server takes into account the participation of each VFL client during the ML training process and the importance of the intermediate results when generates the combined inference output.

[1511] 7. Depending on request, the NWDAF VFL server sends Nnwdaf_AnalyticsInfo_Response or Nnwdaf_AnalyticsSubscription_Notify to the consumer (i.e NWDAF containing AnLF) including the VFL inference results.

[1512] 8. The NWDAF containing AnLF provides the analytics output to the analytics consumer NF based on the VFL inference results by means of either Nnwdaf_AnalyticsInfo_Response or Nnwdaf_AnalyticsSubscription_Notify, depending on the service used in step 0.

[1513] 6.2H.2.4.2 Inference procedure for vertical federated learning when untrusted AF is acting as VFL server

[1514] The inference procedure when untrusted AF is acting as VFL server may be triggered by a request or subscription from a 5GC consumer NF or internal service logic of the AF acting as VFL server. If triggerd by internal service logic of the AF acting as VFL server, the steps 0, 1,7 and 8 are skipped. The inference procedure triggerd by internal service logic of the AF acting as VFL server is out of 3GPP scope.

[1515] 0. Same as step 0 in clause 6.2H.2.4.1.

[1516] 1. Same as step 1 in clause 6.2H.2.4.1, to NEF using Nnef_Inference_subscribe. NEF forwards the subscription request to AF using Naf_Inference_subscribe.

[1517] Editor's note: When the AnLF determine the VFL server AF is FFS. For example, during the training phase.

[1518] Editor's note: The service name between the AnLF and untrusted AF as VFL server is FFS.

[1519] 2. Same as step 2 in clause 6.2H.2.4.1, to NEF using Nnef_VFLInference_subscribe. An untrusted AF includes the external NWDAF ID and sends the request to the NEF.

[1520] NEF converts any received external identifiers to internal identifiers and forwards the subscription request to NWDAF using Nnwdaf_VFLInference_subscribe.

[1521] Editor's note: It is FFS additional parameters are needed to send from the VFL server to VFL client.

[1522] 3. Same as step 3 in clause 6.2H.2.4.1.

[1523] 4. Same as step 4 in clause 6.2H.2.4.1.

[1524] Editor's note: Whether VFL client may also provide local intermediate inference results to other VFL client is FFS.

[1525] 5. Same as step 5 in clause 6.2H.2.4.1, to NEF using Nnwdaf_VFLInference_Notify.

[1526] NEF converts any received internal identifiers to external identifiers and forwards the subscription notify to the untrusted AF using Nnef_VFLInference_Notify.

[1527] Alternatively,

[1528] 5c-5e. the NWDAF VFL clients share the client intermediate inference results with a NWDAF VFL client configured by the VFL server. This NWDAF VFL client aggregates the received client intermediate inference results and perform local computation on its local model using the aggregated client intermediate inference results. Then it sends one notify message to the NEF by including its client intermediate inference result.

[1529] 5f. For an untrusted AF acting as VFL server, the NEF converts the internal identifier to external identifier of the NWDAF VFL client that aggregates the intermediate inference results, provides the external NWDAF ID and sends a Nnef_VFLTrainingNotify to the VFL server

[1530] Editor's note: It is FFS additional parameters are needed to send from the VFL client to VFL server.

[1531] If the VFL server used an inference subscription in step 2, step 5 may be repeated.

[1532] 6. Same as step 6 in clause 6.2H.2.4.1.

[1533] 7. Same as step 7 in clause 6.2H.2.4.1, to NEF using Naf_Inference_Notify.

[1534] NEF converts any received internal identifiers to external identifiers and forwards the subscription Notify to NWDAF using Nnef_Inference_Notify.

[1535] 8. Same as step 8 in clause 6.2H.2.4.1.

[1536] Appendix C

[1537] SA WG2 Meeting #166-Ad-Hoc-e S2-2500233

[1538] 20 - 24 January, 2025, Electronic meeting

[1539] Title: Discussion on VFL model training and inference with client intermediate results sharing between VFL clients

[1540] Source: Samsung

[1541] Document for: Discussion

[1542] Agenda Item: 19.15.2

[1543] Abstract:

[1544] 1. Discussion

[1545] 1.1 relevant agreements and exception

[1546] In the SI conclusions for VFL training, the following agreement is documented in clause 8.2 of TR 23.700-84:

[1547] P#2.4.5: VFL clients may also provide intermediate results (e.g. gradient information, loss information) to other VFL clients as instructed by the VFL server.

[1548] As it has been agreed in exception sheet in SP-241513 / S2-2413037, the following issue should be addressed:

[1549] Vertical Federated Learning (VFL):

[1550] Whether and how to exchange intermediate training results between VFL clients during VFL training and inference

[1551] 1.2 Discussion on VFL client information sharing during VFL model training and inference

[1552] Comparing to HFL, the total computation and communication cost of VFL is generally higher as widely adopted batch computation method in HFL cannot be applied to VFL [1]. In order to improve energy consumption and computing resource distribution of VFL operation, the VFL algorithms using split neural network (NN) is a commonly used and future-proof method.

[1553] In the splitting methods for VFL models, the model will be carefully segmented into different parts and will be held by different VFL clients and maybe also the VFL server [2]. How the VFL server will split the VFL model is out of 3GPP scope. Each VFL clients and VFL server will train different segments locally, rather than the entire model. In this case, the computation load of each VFL clients will be reduced significantly and therefore reduce the energy consumption and improve the overall VFL operation efficiency.

[1554] Observation 1: VFL algorithms using split neural network (NN) is widely used, as it can the computation load of VFL participant significantly; and therefore, reduce the energy consumption and improve the overall VFL efficiency.

[1555] During the model training, each VFL clients perform local computation using the local model to generate the client intermediate training results. Then one possible way is that the VFL clients report the client intermediate training results to the VFL server and the VFL server perform the local computation using all of the client intermediate training results. However, this approach will result in high load of the VFL server. Furthermore, if the VFL server is untrusted AF, exposing the client intermediate training results of all VFL clients may result in potential high risk of 5GC privacy leaking, as there is no privacy preserving methods are specified for 3GPP VFL operation.

[1556] Another approach aggregate the client intermediate training results of multiple VFL clients by one VFL client, e.g. VFL client N. For VFL using linear splitNN models, the VFL client N can even consolidate the receive client intermediate training results to perform its local computation. Then only one client intermediate training result of VFL client N will be indicate to the VFL server, which distributed the computation load, reduce the signalling load, and reveal much 5GC privacy in particular when the VFL server is untrusted AF. The VFL client N might be selected by the VFL server and indicated to each VFL clients.

[1557] Therefore, to distribute the computation load of VFL server and avoid 5GC privacy and security issues, client intermediate training results sharing between VFL clients should be supported in R19.

[1558] The above discussion is also applied to VFL inference procedure.

[1559] Observation 2: for VFL using split neural network (NN) network, the VFL clients may share client intermediate results with a selected VFL client for intermediate results aggregation to distribute the computation load of VFL server during VFL model training and inference.

[1560] Observation 3: when the VFL server is untrusted AF, exposing the client intermediate results of every single VFL client may increase risks of 5GC privacy issues, as no privacy preserving methods are specified.

[1561] Proposal: support client intermediate results sharing between VFL clients during VFL model training and inference in R19 AIML_CN.

[1562] 2. Conclusion and Proposal

[1563] Observation 1: VFL algorithms using split neural network (NN) is widely used, as it can the computation load of VFL participant significantly; and therefore, reduce the energy consumption and improve the overall VFL efficiency.

[1564] Observation 2: for VFL using split neural network (NN) network, the VFL clients may share client intermediate results with a selected VFL client for intermediate results aggregation to distribute the computation load of VFL server during VFL model training and inference.

[1565] Observation 3: when the VFL server is untrusted AF, exposing the client intermediate results of every single VFL client may increase risks of 5GC privacy issues, as no privacy preserving methods are specified.

[1566] Proposal: support client intermediate results sharing between VFL clients during VFL model training and inference in R19 AIML_CN.

[1567] 3. Reference

[1568] [1]. Wei, Kang, et al. "Vertical federated learning: Challenges, methodologies and experiments."arXiv preprint arXiv:2202.04309 (2022).

[1569] [2]. Romanini, Daniele, et al. "Pyvertical: A vertical federated learning framework for multi-headed splitnn." arXiv preprint arXiv:2104.00489 (2021).

[1570] Appendix D

[1571] SA WG2 Meeting #167 S2-2501451

[1572] 17 - 21 February, 2025, Athens, Greece

[1573] 6.2H.2.2.1 Preparation procedure for Vertical Federated Learning when NWDAF / trusted AF is the VFL Server

[1574] Editor´s note: For UEs as samples, additional discussion is needed on whether UE needs to be registered or not and whether the NWDAF as VFL server can check whether UEs are registered before interacting with VFL clients.

[1575] 1. An NWDAF as VFL Server may send a Vertical Federated Learning preparation request including the Analytics ID to each of the NWDAF VFL Client(s), using Nnwdaf_VFLTraining_Request and to each of the AF VFL Clients(s), using Naf_VFLTraining_Request possibly via NEF when the VFL Client is an untrusted AF. An AF as VFL Server may send a Vertical Federated Learning preparation request including the Analytics ID to each of the NWDAF VFL Client(s), using Nnwdaf_VFLTraining_Request. The NWDAF or trusted AF as a VFL Server also provides, the suggested VFL Interoperability Information to negotiate the intermediate resuls that will be used in training, the suggested list of sample IDs that will be used in training, and optionally, as additional criteria for sample alignment, time window of the data samples, and required minimum sample size. When a Trusted AF is acting as a VFL Server, the VFL Client can only be an NWDAF.

[1576] 2. Each VFL Client checks if it can meet the ML Model training requirement. Each VFL Client checks the list of sample IDs and required criteria for sample alignment suggested by the VFL Server, and then provides to the VFL Server the list of sample IDs that it can accept out of the sample IDs suggested by the VFL Server and satisfying the required criteria for sample alignment. Each VFL Client checks the VFL Interoperability Information and determines which VFL Interoperability information that the VFL Client supports. The VFL Clients provides the list of supported Feature IDs, which is associated to the VFL Interoperability information, to the VFL Server, if available, or VFL Server may know the supported FeatureIDs for a VFL Client based on configuration.

[1577] 3. Each NWDAF VFL Client invokes Nnwdaf_VFLTraining_Response or and each AF VFL Client invokes Naf_VFLTrainingRequest_Response, possibly via NEF when the AF is untrusted, to indicate to the VFL Server whether it accepts the ML Model training requirements, the VFL Client can also indicate that it cannot join the FL process.

[1578] 4. The VFL server determines the final list of samples considering the samples that all selected VFL clients support, if used the Feature ID per VFL client and VFL Interoperability Information to be used for training and provide them to the selected VFL Clients at the start of the training phase, as described in clause 6.2H.2.3.1.

[1579] The VFL server may also determine the VFL client aggregator and indirect VFL clients based on the information received in step 3 (e.g. the gradient and other information can be supported by VFL clients).

[1580] 6.2H.2.3.1 Training Procedure for Vertical Federated Learning when NWDAF is acting as VFL server

[1581] The figure 6.2H.2.3.1-1 below shows the training procedure for Vertical Federated Learning when NWDAF is acting as VFL server.

[1582] Editor's note: How the NEF assists the VFL training process as well as whether the service operations going via NEF is using the existing or new service operation are FFS.

[1583] Editor's note: The details of the services in the procedure and whether VFL Training Start Flag is needed are FFS.

[1584] Editor's note: It is FFS whether sample / feature information is required to be provided or updated in each training.

[1585] Editor's note: Whether and how to include interoperability information in the VFL training procedure is FFS.

[1586] Editor's note: Whether and how to define the trigger of VFL training is FFS.

[1587] Editor's note: Whether and how to transfer the confirmation in VFL Preparation Phase at the beginning of VFL Training Phase is FFS.

[1588] 1. The NWDAF acting as VFL server determines the VFL clients that participate in VFL procedure in the VFL clients discovery and preparation phase as described in the clause 6.2H.2.1 and clause 6.2H.2.2.

[1589] NOTE 1: VFL Server can determine to start the training based on local configuration and agreement among vendors and / or application providers participating in the same group for specific VFL task(s).

[1590] Steps 2-6 are repeated until the training termination condition is reached.

[1591] 2. To start the VFL training, the VFL server sends a request to start the training to all selected VFL clients The request includes VFL correlation ID, at least the parameters negotiated during the preparation phase, Optionally, the VFL Server includes: Analytic filter information, maximum response time (i.e. the maximum time between VFL clients receive intermediate model training information and send back intermediate training result).

[1592] Editor's note: Whether the parameters negotiated in the preparation phase are provided at the end of the preparation phase or at the start of the training is FFS.

[1593] If the VFL procedure continues in subsequent iterations, the VFL server sends a request for a new VFL training iteration containing the VFL correlation ID and intermediate model training information to each of the VFL clients for next round of VFL training.

[1594] 2a. The VFL server sends a Nnwdaf_VFLTraining_Subscribe to the selected NWDAF VFL clients(s).

[1595] 2b. The VFL server sends a Naf_VFLTraining_Subscribe to the selected trusted AF VFL clients(s).

[1596] 2c. For each selected untrusted AF VFL clients, the VFL server sends a Nnef_VFLTraining_AFClient_Subscribe to the NEF handling that AF.

[1597] 2d. For each selected untrusted AF VFL clients, the NEF sends a Naf_VFLTraining_Subscribe to that AF. The NEF may also translate the analytic filter information if needed, e.g. TAIs into geographical area.

[1598] 2e. If a NWDAF VFL client is selected as VFL client aggregator by the VFL server, this NWDAF VFL client may send Nnwdaf_VFLTraining_Subscribe to the one or more indirect NWDAF VFL client(s) as configured by the VFL server from which it desires to receive the client intermediate training results.

[1599] NOTE 2: In this release, the same NF associated with a VFL Server or VFL Client capability during the VFL training for a VFL correlation ID is also the same NF during the VFL inference.

[1600] Editor's note: Additional Parameters to be provided in the request are FFS.

[1601] Editor's note: It is FFS whether and how the local ML model is obtained by VFL Client in VFL training process.

[1602] 3. [Optional] Each VFL client collects its local data by using the current mechanism if the VFL client has no local data already available. The data used by each VFL Client is collected as per alignment information.

[1603] 4. During VFL training procedure, each VFL client further trains the local ML model associated with the same VFL Correlation ID based on their own collected or available data and when applicable (e.g. after the first round of training) and possible intermediate model training information distributed by the VFL server in the previous training iteration. Each VFL Client computes and reports the client intermediate training result of the local ML model to the VFL server.

[1604] NOTE 3: The intermediate model training information and intermediate training result are constructed in per sample granularity.

[1605] Editor's note: It is FFS and may depend on the service design: When the clients report the client intermediate training result, it also includes the corresponding VFL correlation ID.

[1606] 5. Each VFL client reports the computed client intermediate training result of the local ML model to the VFL server.

[1607] 5a. A NWDAF VFL client sends a Nnwdaf_VFLTraining_Notify.

[1608] 5b. A trusted AF VFL client sends a Naf_VFLTraining_Notify to the VFL server.

[1609] 5c. An untrusted AF VFL client sends a Naf_VFLTraining_Notify to the NEF.

[1610] 5d. For each untrusted AF VFL client , the NEF converts any external identifiers to internal identifiers and sends a Nnef_VFLTraining_AFClient_Notify to the VFL server.

[1611] 5e - 5f. An indirect NWDAF VFL client may send the client intermediate training results to the NWDAF VFL client aggregator from which it received the subscription request step 2e. This NWDAF VFL client aggregator aggregates the received client intermediate training results from the indirect NWDAF VFL clients, performs local computation, then sends one Nnwdaf_VFLTraining_Notify that includes its client intermediate training result to the VFL server.

[1612] 6. The VFL server may collect the local data and generate its own local intermediate training result. The NWDAF acting as VFL Server computes the intermediate model training information (e.g. gradient information or loss information) based on the VFL Client(s) intermediate training result(s) received in step 4, its own local intermediate results and the label. The intermediate model training information is used for updating the models of VFL clients. Different intermediate model training information may be computed for different VFL clients and for the VFL Server itself.

[1613] The VFL server may also compute the ML model metric (e.g. ML model accuracy) based on all the intermediate training result received from VFL clients and the label.

[1614] Editor's note: Whether weight of the VFL Client is computed by VFL server is FFS.

[1615] Editor's note: Whether VFL server and VFL clients share feature information is FFS.

[1616] 7. [Optional] The NWDAF acting as VFL server evaluates (e.g. based on the convergence of a loss function or loss value and / or if the pre-set iteration number is reached) whether VFL Training process converged. If the VFL Server evaluates the VFL Training process did not converge, the NWDAF acting as a VFL Server determines another round of VFL training is required and repeats step 2 - 6. If the VFL Server evaluates the VFL training process converged, it determines the VFL Training is completed. In this case, the VFL Server terminates the current VFL training process via step 7.

[1617] The VFL training termination decision may be also made as follows:

[1618] Based on the consumer request, the VFL server sends VFL status report to the consumer. The status report may include model metric (e.g. ML model accuracy).

[1619] Editor's note: The content of the VFL status report is FFS.

[1620] Editor's note: Whether VFL server sending convergence report to the VFL client and what is convergence report are FFS.

[1621] The consumer decides whether the current model can fulfil the requirement, e.g. ML model metric is satisfactory for the consumer and determines to stop or continue the training process. The consumer continues the training process or stops the training process.

[1622] Based on the subscription request sent from the consumer, the VFL server updates or terminates the current VFL training process.

[1623] Editor's note: Whether the ML model metric (e.g. ML model accuracy) defined for HFL can be re-applied to VFL is FFS.

[1624] 8. The VFL server sends VFL training termination message to VFL Client if it decides to terminate the VFL training process, the termination message contains VFL Correlation ID.

[1625] 8a. The VFL server sends a Nnwdaf_VFLTraining_Unsubscribe t to the selected NWDAF VFL clients(s).

[1626] 8b. The VFL server sends a Naf_VFLTraining_Unsubscribe to the selected trusted AF VFL clients(s).

[1627] 8c. For each selected untrusted AF VFL clients, the VFL server sends a Nnef_VFLTraining_AFClient_Unubscribe to the NEF handling that AF.

[1628] 8d. For each selected untrusted AF VFL clients, the NEF sends a Naf_VFLTraining_Unsubscribe to that AF.

[1629] 8e. An NWDAF VFL client aggregator may send Nnwdaf_VFLTraining_Unsubscribe to other one or more indirect NWDAF VFL client in step 2e.

[1630] 9. The VFL Server, stores VFL correlation ID, the local trained ML Model, the mapping information of the VFL correlation ID to the following parameters: Analytics ID related to the VFL training process, locally trained Model. Additionally, the VFL server stores the VFL client information, which may be used to determine associated VFL client in the VFL inference.

[1631] Each VFL client stores VFL correlation ID, the locally trained ML Model, the mapping information of the VFL correlation ID to locally trained Model

[1632] NOTE 4: The VFL correlation ID and the stored mapping information are used later for inference as described in Clause 6.2H.2.4.1.

[1633] Editor's note: Whether VFL Training termination Flag in the termination message is required is determined after settling down the service operation.

[1634] NOTE 5: If untrusted AF is involved in VFL Clients, the message between NWDAF acting as VFL Server and the untrusted AF is via NEF.

[1635] 6.2H.2.3.2 Training Procedure for Vertical Federated Learning untrusted AF is acting as VFL server

[1636] Editor's note: The ENs listed in clause 6.2H.2.3.1 are also applied to this clause.

[1637] 1. Same as step 1 in Figure 6.2H.2.3.1-1.

[1638] Steps 2-7 are repeated until the training termination condition is reached.

[1639] 2. To start VFL training, the VFL server do same as in step 2 in Figure 6.2H.2.3.1-1, using Nnef_VFLTraining_Subcribe.

[1640] 2c. If a NWDAF VFL client is selected as VFL client aggregator by the VFL server, this NWDAF VFL client may send Nnwdaf_VFLTraining_Subscribe to other one or more indirect NWDAF VFL client as configured by the VFL server from which it desires to receive the client intermediate training results

[1641] 3. [Optional] Same as step 3 in Figure 6.2H.2.3.1-1.

[1642] 4. Same as step 4 in Figure 6.2H.2.3.1-1.

[1643] 5. Same as step 5 in Figure 6.2H.2.3.1-1.

[1644] 5a. A NWDAF VFL client sends a Nnwdaf_VFLTraining_Notify.

[1645] 5b. For an untrusted AF acting as VFL server, the NEF converts any internal identifiers to external identifiers, provides the external NWDAF ID and sends a Nnef_VFLTrainingNotify to the VFL server.

[1646] 5c-5d The indirect NWDAF VFL clients share the client intermediate training results with the NWDAF VFL client aggregator from which it received subscription request in step 2c. This NWDAF VFL client aggregates the received client intermediate training results from the indirect NWDAF VFL clients, performs local computation, then sends one Nnef_VFLTraining_Notify to the NEF by including its client intermediate training result.

[1647] 6. [Optional] Same as step 6 in Figure 6.2H.2.3.1-1.

[1648] 7. Same as step 7 in Figure 6.2H.2.3.1-1.

[1649] 8. Same as step 8 of Figure 6.2H.2.3.1-1. However, sub steps in that figure are not applicable.

[1650] 8a. For each NWDAF VFL client, the untrusted AF as VFL server sends a Nnef_VFLTraining Unsubscribe to the NEF handling that AF. The untrusted AF identifies the VFL client using the external NWDAF ID assigned in the discovery procedure (see clause 6.2H.2.1.1).

[1651] 8b. The NEF sends an Nnwdaf_VFLTraining_Unsubscribe to the NWDAF VFL client indicated by the received external NWDAF ID.

[1652] 8c. An NWDAF VFL client may send Nnwdaf_VFLTraining_Unsubscribe to other one or more indirect NWDAF VFL client in step 2c.

[1653] 9. Same as step 9 of Figure 6.2H.2.3.1-1.

[1654] 6.2H.2.4.1 Inference procedure for vertical federated learning when NWDAF or Trusted AF is acting as VFL server

[1655] 0. The analytics consumer NF sends an Analytics request / subscribe (Analytics ID, Target of Analytics Reporting= e.g. UE IDs and optionally Analytics Reporting Information=Analytics target period and Analytics Filter) to NWDAF containing AnLF by invoking a Nnwdaf_AnalyticsInfo_Request or a Nnwdaf_AnalyticsSubscription_Subscribe.

[1656] 1. If the NWDAF containing AnLF can be the VFL server to generate the VFL inference results for the requested analytics ID, then step 1 is skipped.

[1657] If the NWDAF containing AnLF can not generate the analytics output, the NWDAF containing AnLF determines the VFL Server for the requested analytics, sends a subscr...

Claims

1.A method performed by a first network entity in a wireless communication system, the method comprising:transmitting, to a second network entity, a subscribe message;receiving, from the second network entity, a plurality of first intermediate results;aggregating the plurality of first intermediate results;performing a local computation based on the aggregated plurality of first intermediate results; andtransmitting, to a Network Exposure Function (NEF), a notification message including a second intermediate result.2.The method of claim 1, wherein the second intermediate result is determined by performing the local computation of the aggregated plurality of first intermediate results.3.The method of claim 1, further comprising:transmitting, to the second network entity, an unsubscribe message.4.The method of claim 1, wherein the first network entity is selected by the NEF.5.The method of claim 1, wherein the first network entity, and not the second network entity, is indicated to a server.6.The method of claim 1, wherein the first network entity and the second network entity are selected based on interoperability information.7.The method of claim 1, the method is performed during a training procedure or an inference procedure.8.The method of claim 1, wherein the second network entity is indirect network entity.9.A first network entity in a wireless communication system, the first network entity comprising:a transceiver; anda processor communicatively coupled to the transceiver, to cause the first network entity to:transmit, to a second network entity, a subscribe message,receive, from the second network entity, a plurality of first intermediate results,aggregate the plurality of first intermediate results,perform a local computation based on the aggregated plurality of first intermediate results, andtransmit, to a Network Exposure Function (NEF), a notification message including a second intermediate result.10.The first network entity of claim 9, wherein the second intermediate result is determined by performing the local computation of the aggregated plurality of first intermediate results.11.The first network entity of claim 9, wherein the first network entity is further caused to:transmit, to the second network entity, an unsubscribe message.12.The first network entity of claim 9, wherein the first network entity is selected by the NEF.13.The first network entity of claim 9, wherein the first network entity, and not the second network entity, is indicated to a server.14.The first network entity of claim 9, wherein the first network entity and the second network entity are selected based on interoperability information.15.The first network entity of claim 9, wherein the first network entity is caused to operate during a training procedure or an inference procedure.

Citation Information

Patent Citations

  • Network data analytics function, access and mobility function, and control method for UE analytics assistance for network automation and optimisation

    US20220039046A1

  • Semi-Supervised Vertical Federated Learning

    US20230342655A1

  • Method and apparatus for supporting hybrid federated learning workload in communication system

    WO2024128676A1

  • Aggregation of different analytics for multi-layer network functions

    WO2024149469A1

  • Model training in a wireless communication network

    WO2024153361A1