## Diagram: Split Learning / Vertical Federated Learning Architecture
### Overview
This diagram illustrates a distributed machine learning architecture, specifically a "Split Learning" or "Vertical Federated Learning" process. It depicts how multiple clients (A, B, and C) collaborate to train a global model without sharing raw data. The process is iterative, involving the separation of a model into a "Lower model" (residing on clients) and an "Upper model" (residing on an "Active Client").
### Components/Axes
* **Left Column (Clients):**
* **Client A, Client B, Client C:** Each contains a "Data" cylinder and a neural network icon representing the "Lower model."
* **Vertical Arrow (1):** Spans the height of the three clients, labeled "(1) IDs matched between clients."
* **Center (Active Client):**
* **Header:** "Active Client" (Purple background).
* **Content:** Contains a neural network icon (the "Upper model") and receives vector inputs from the clients.
* **Vector Data:**
* Top vector (from Client A): `[1.0, 2.1, -5.0]`
* Bottom vector (from Client C): `[3.6, -0.1, -8.5]`
* **Right Box (Overall Model):**
* **Header:** "Overall model"
* **Content:** Shows the "Lower model" (Clients A, B, C) connected to the "Upper model."
* **Annotations/Steps:**
* **Top Bubble:** "Overall model is learned by repeating steps (2) to (4)."
* **Top-Center Bubble:** "(2) The same ID data is submitted between clients and each output of lower model is sent to the active server."
* **Center Box Text:** "(3) The output of each client is used as input to update upper model."
* **Bottom-Right Text:** "(4) Propagate the error to each client and learn the lower model."
* **Icons:**
* **Person I:** Located below the Active Client bubble.
* **Person II:** Located below Client C.
* **Person III:** Located next to a globe icon, below Client C.
### Detailed Analysis
**The Iterative Process:**
1. **Step (1) - Alignment:** The vertical arrow indicates that the clients are aligned by ID. This confirms the architecture is designed for **Vertical Federated Learning**, where different clients hold different features for the same set of entities (IDs).
2. **Step (2) - Forward Pass:** Clients A, B, and C process their local data through their respective "Lower models." The resulting intermediate activations (vectors) are sent to the "Active Client."
* *Data Point 1:* Client A sends `[1.0, 2.1, -5.0]`.
* *Data Point 2:* Client C sends `[3.6, -0.1, -8.5]`.
3. **Step (3) - Aggregation/Update:** The "Active Client" receives these vectors and uses them as inputs for the "Upper model" (the final layers of the neural network).
4. **Step (4) - Backward Pass:** The error (gradient) is calculated at the "Upper model" and propagated back to the clients to update the weights of the "Lower model."
### Key Observations
* **Split Architecture:** The model is physically and logically split. The "Lower model" acts as a feature extractor on the client side, while the "Upper model" acts as the decision/classification layer on the server (Active Client) side.
* **Data Privacy:** The diagram implies that raw data never leaves the client cylinders. Only the intermediate vector outputs (activations) are transmitted, which is a core privacy-preserving feature of Split Learning.
* **Active Client Role:** The "Active Client" acts as the central orchestrator or server in this topology, holding the final layers of the model.
* **Visual Flow:** The thick blue arrows indicate the flow of data from the clients to the Active Client (forward pass) and the return path for error propagation (backward pass).
### Interpretation
This diagram demonstrates a collaborative learning framework designed for scenarios where data is vertically partitioned.
* **Why it matters:** In many real-world scenarios (e.g., banking, healthcare), different organizations hold different types of information about the same individuals. This architecture allows them to train a joint model (the "Overall model") without the legal or security risks of pooling raw data into a single database.
* **Peircean/Reading between the lines:** The inclusion of "Person I," "Person II," and "Person III" icons suggests distinct roles or entities. Person I is the "Active Client" (the server/aggregator), while Person II and III represent the participating data owners. The "Overall model" box on the right is a conceptual abstraction—it does not exist in one place, but is rather the *sum* of the distributed parts (Lower + Upper models) working in concert. The process is cyclical, implying that the "Overall model" is not static but evolves through the continuous repetition of the forward and backward passes.