이러한 Colab 기반 튜토리얼은 실제 사례를 사용하여 주요 TFF 개념과 API를 안내합니다. 참조 문서는 TFF 가이드 에서 찾을 수 있습니다.
연합 학습 시작하기
- 이미지 분류를 위한 연합 학습에서는 FL(Federated Learning) API의 핵심 부분을 소개하고 TFF를 사용하여 연합 MNIST 유사 데이터에 대한 연합 학습을 시뮬레이션하는 방법을 보여줍니다.
- 텍스트 생성을 위한 연합 학습은 TFF의 FL API를 사용하여 언어 모델링 작업을 위해 직렬화된 사전 훈련된 모델을 개선하는 방법을 추가로 보여줍니다.
- 학습을 위한 권장 집계 조정에서는
tff.learning
의 기본 FL 계산이 견고성, 차등 개인 정보 보호, 압축 등을 제공하는 특수 집계 루틴과 결합될 수 있는 방법을 보여줍니다. - 행렬 분해를 위한 연합 재구성에서는 일부 클라이언트 매개변수가 서버에 집계되지 않는 부분적인 로컬 연합 학습을 도입합니다. 이 튜토리얼에서는 Federated Learning API를 사용하여 부분적으로 국소적인 행렬 분해 모델을 훈련하는 방법을 보여줍니다.
연합 분석 시작하기
- 개인용 헤비히터(Private Heavy Hitters)는
tff.analytics.heavy_hitters
사용하여 개인용 헤비히터를 발견하기 위한 연합 분석 계산을 구축하는 방법을 보여줍니다.
사용자 정의 연합 계산 작성
- 나만의 연합 학습 알고리즘 구축에서는 연합 평균화를 예로 들어 TFF Core API를 사용하여 연합 학습 알고리즘을 구현하는 방법을 보여줍니다.
- 학습 알고리즘 구성에서는 TFF 학습 API를 사용하여 새로운 연합 학습 알고리즘, 특히 연합 평균의 변형을 쉽게 구현하는 방법을 보여줍니다.
- 사용자 정의 Federated 알고리즘, 1부: Federated Core 소개 및 2부: Federated Averaging 구현에서는 Federated Core API(FC API)에서 제공하는 주요 개념과 인터페이스를 소개합니다.
- 사용자 정의 집계 구현에서는
tff.aggregators
모듈의 디자인 원칙과 클라이언트에서 서버로 값의 사용자 정의 집계를 구현하는 모범 사례를 설명합니다.
시뮬레이션 모범 사례
가속기(GPU)를 사용한 TFF 시뮬레이션은 TFF의 고성능 런타임을 GPU와 함께 사용할 수 있는 방법을 보여줍니다.
ClientData 작업은 TFF의 ClientData 기반 시뮬레이션 데이터 세트를 TFF 계산에 통합하기 위한 모범 사례를 제공합니다.
중급 및 고급 튜토리얼
무작위 노이즈 생성은 분산 계산에서 무작위성을 사용할 때의 몇 가지 미묘한 점을 지적하고 모범 사례를 제안하고 패턴을 권장합니다.
tff.federated_select를 사용하여 특정 클라이언트에 다른 데이터 보내기
tff.federated_select
연산자를 소개하고 다른 데이터를 다른 클라이언트에 보내는 사용자 정의 연합 알고리즘의 간단한 예를 제공합니다.federated_select 및 희소 집계를 통한 클라이언트 효율적인 대규모 모델 연합 학습은 TFF를 사용하여 각 클라이언트 장치가
tff.federated_select
및 희소 집계를 사용하여 모델의 작은 부분만 다운로드하고 업데이트하는 매우 큰 모델을 교육하는 방법을 보여줍니다.TFF의 차등 개인 정보 보호를 사용하는 연합 학습에서는 TFF를 사용하여 사용자 수준 차등 개인 정보 보호를 통해 모델을 교육하는 방법을 보여줍니다.