Federated PatternsComputational Patterns

Computational Patterns

There are many ways to undertake federated analysis or federated learning and there are benefits and limitations of those processes.

Our work has shown that despite the significant number of federated tools, algorithms and platforms, when you examine the patterns for how these analyses are undertaken they can be simply grouped based on two components:

ComponentDescription
AnalyticalThere are three key concepts that summarise the vast number of analytics and learning that are possible when data is spread across multiple TREs:

Isolated – these are analyses that are replicated individually within each TRE.

Connected – these are analyses that require multiple rounds of local calculation and aggregation, requiring the TREs to receive results from other TREs to be included in the local calculations.

Centralised – these analyses require data to be pooled, even temporarily, for the analyses to be performed.
Data MovementAs determined by the algorithm type, this is how data is required to move in and out of a TRE and how it is executed.

Summary: where a statistical result is shared back that does not relate to any individual but is a calculation based on the confidential data. It is the summary result that moves from the TRE.

Model Parameters: where a machine learning algorithm has been run on the data and the weights are moved from the TRE.

Row level data: where row level data is moving, whether or not the data is anonymised, but each data element is at the level of an individual.

Connections

The patterns we have identified to date indicate that the type of analysis to be run dictates the type of data to move. It is important to state that these classifications of the data movement do not indicate the disclosive data of a specific result. Clearly, summary results are less likely to be disclosive than row-level data; however, we are not stating any safety element to the data movement.

AnalyticalData MovementAssociated Pattern
IsolatedSummary onlyTraditional Pattern
ConnectedModel ParametersShared Pattern
CentralisedRow level data onlyPooled Pattern