Skip to main content

Welcome to BranchKey

BranchKey offers a federated distribution platform for machine learning agents. Our core interest is ensuring the barriers to scaling the models you build are not the deployment and distribution steps.

Quick Overview

BranchKey provides a federated learning platform that allows you to:

  • Collaborate across distributed datasets without sharing raw data
  • Maintain privacy and security of sensitive information
  • Scale efficiently with concurrent processing
  • Deploy easily with our provided SDKs and web interface

What is Federated Learning?

Federated Learning is a method to perform learning in a distributed environment. It handles asynchronous learners operating on heterogeneous, non-identically and independently distributed (non-IID) data. These datasets may be unbalanced, sensitive, or large in volume.

Hence, we provide a platform to aggregate the learnings of all these distributed datasets without having to transfer the training data out of their individual locations. This caters for:

  • Security of sensitive datasets. Data is learned on location, and only parameters are transmitted over the wire.
  • Efficiency of large or remote datasets. On location processing measn IoT or remote devices can learn from data on location, without needing to transfer large datasets.
  • Concurrent processing of distributed datasets. Distributed processing is one of the origins of Federated Learning. Model and Data Parallelism are closely related.

Getting Started

To get started with BranchKey:

  1. Request an account via email - Accounts are provisioned by our team
  2. Create your first Tree and Branch (use Dashboard link in navbar)
  3. Connect your learning agents as Leaves
  4. Start federated learning with our Python SDK

Ready to begin? Check out our Getting Started Guide.

New to machine learning terminology?

If you're a domain researcher rather than a software engineer, start with Concepts. It explains — from the ground up — what model weights are, what "shapes" mean, and how you extract weights from your model and send them to BranchKey. No prior Python-ML background assumed.

Resources

API Documentation

Interactive API documentation and machine-readable OpenAPI specifications:

ServiceSwagger UIOpenAPI Spec
API Gateway/api/docsdoc.json
Authentication/auth/docsdoc.json

llms.txt - AI-navigable site summary