Tech-invite3GPPspaceIETFspace
21222324252627282931323334353637384‑5x

Content for  TS 23.288  Word version:  19.2.0

Top   Top   Up   Prev   Next
1…   4…   5…   5A…   6…   6.1.3   6.1.4…   6.1.4.4…   6.1.5…   6.1A…   6.1B…   6.1B.2.3…   6.1C   6.2…   6.2.3…   6.2.6…   6.2.6.2   6.2.6.3…   6.2.6.3.3   6.2.6.3.4   6.2.6.3.5   6.2.6.3.6…   6.2.7…   6.2.8…   6.2.9…   6.2.13…   6.2A…   6.2B…   6.2B.3   6.2B.4…   6.2C…   6.2D…   6.2E…   6.2F…   6.2H…   6.2H.2.2…   6.2H.2.3…   6.2H.2.4…   6.3…   6.4…   6.5…   6.6…   6.7…   6.7.3…   6.7.4…   6.7.5…   6.8…   6.9…   6.10…   6.11…   6.12…   6.13…   6.14…   6.16…   6.17…   6.18…   6.19…   6.20…   6.21…   6.22…   6.23…   7…   7.4…   7.7…   7.9…   8…   9…   10…   11…   12…   A…

 

6.2H.2.3  Training Procedure for Vertical Federated Learningp. 172

6.2H.2.3.1  Training Procedure for Vertical Federated Learning when NWDAF or trusted AF is acting as VFL serverp. 172
The Figure 6.2H.2.3.1-1 below shows the training procedure for Vertical Federated Learning when NWDAF is acting as VFL server.
Reproduction of 3GPP TS 23.288, Fig. 6.2H.2.3.1-1: Training procedure for Vertical Federated Learning when NWDAF or trusted AF is acting as VFL server
Up
Step 0.
[OPTIONAL] VFL training is triggered in the VFL server for the following cases:
  • Based on local configuration and agreement among vendors and/or application providers participating in the same group for specific VFL task(s).
  • Triggered by either Analytics consumer, AnLF via ML model provisioning or MTLF internal (VFL Server is a trusted AF):
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.
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.
  • Triggered by either Analytics consumer, AnLF via ML model provisioning (VFL Server is a trusted AF):
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.
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.
  • Triggered by either Analytics consumer, AnLF via ML model provisioning (VFL Server is a trusted AF):
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.
  • Triggered by analytics consumer. (VFL Server is either an AF or an NWDAF):
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.
Step 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.
Steps 2-6 are repeated until the training termination condition is reached.
Step 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.
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.
Step 2a.
The VFL server sends a Nnwdaf_VFLTraining_Subscribe to the selected NWDAF VFL clients(s).
Step 2b.
The VFL server sends a Naf_VFLTraining_Subscribe to the selected trusted AF VFL clients(s).
Step 2c.
For each selected untrusted AF VFL clients, the VFL server sends a Nnef_VFLTraining_AFClient_Subscribe to the NEF handling that AF.
Step 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.
Step 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.
Step 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.
Step 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.
Step 5a.
A NWDAF VFL client sends a Nnwdaf_VFLTraining_Notify.
Step 5b.
A trusted AF VFL client sends a Naf_VFLTraining_Notify to the VFL server.
Step 5c.
An untrusted AF VFL client sends a Naf_VFLTraining_Notify to the NEF.
Step 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.
Step 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.
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.
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.
Step 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.
The VFL training termination decision may be also made as follows:
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).
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.
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.
Based on the subscription request sent from the consumer, the VFL server updates or terminates the current VFL training process.
Step 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.
Step 8a.
The VFL server sends a Nnwdaf_VFLTraining_Unsubscribe t to the selected NWDAF VFL clients(s).
Step 8b.
The VFL server sends a Naf_VFLTraining_Unsubscribe to the selected trusted AF VFL clients(s).
Step 8c.
For each selected untrusted AF VFL clients, the VFL server sends a Nnef_VFLTraining_AFClient_Unubscribe to the NEF handling that AF.
Step 8d.
For each selected untrusted AF VFL clients, the NEF sends a Naf_VFLTraining_Unsubscribe to that AF.
Step 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.
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
Up
6.2H.2.3.2  Training Procedure for Vertical Federated Learning untrusted AF is acting as VFL serverp. 178
Reproduction of 3GPP TS 23.288, Fig. 6.2H.2.3.2-1: Training procedure for Vertical Federated Learning when untrusted AF is acting as VFL server
Up
Step 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.
NEF forwards the subscription request to AF using Naf_Training_Subscribe.
In addition:
  • Either based on the information received or internal configuration, VFL server decides to initiate VFL training procedure, or
  • 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.
Step 1.
Same as step 1 in Figure 6.2H.2.3.1-1.
Steps 2-7 are repeated until the training termination condition is reached.
Step 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.
Step 2c.
If a NWDAF VFL client is selected to aggregate the intermediate training results of other VFL client clients, thisNWDAF 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.
Step 3.
[Optional] Same as step 3 in Figure 6.2H.2.3.1-1.
Step 4.
Same as step 4 in Figure 6.2H.2.3.1-1.
Step 5.
Same as step 5 in Figure 6.2H.2.3.1-1.
Step 5a.
A NWDAF VFL client sends a Nnwdaf_VFLTraining_Notify.
Step 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.
Step 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.
Step 6.
[Optional] Same as step 6 in Figure 6.2H.2.3.1-1.
Step 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.
Step 8.
Same as step 8 of Figure 6.2H.2.3.1-1. However, sub steps in that Figure are not applicable.
Step 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).
Step 8b.
The NEF sends an Nnwdaf_VFLTraining_Unsubscribe to the NWDAF VFL client indicated by the received external NWDAF ID.
Step 8c.
An NWDAF VFL client may send Nnwdaf_VFLTraining_Unsubscribe to other one or more NWDAF VFL clients in step 2c.
Step 9.
Same as step 9 of Figure 6.2H.2.3.1-1.
Up

Up   Top   ToC