이러한 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 계산에 통합하기 위한 모범 사례를 제공합니다.
중급 및 고급 튜토리얼
무작위 노이즈 생성은 분산 계산에서 무작위성을 사용할 때의 몇 가지 미묘한 점을 지적하고 모범 사례를 제안하고 패턴을 권장합니다.
federated_언어.federated_select를 사용하여 특정 클라이언트에 다른 데이터 보내기에서는
federated_language.federated_select연산자를 소개하고 다른 클라이언트에 다른 데이터를 보내는 사용자 정의 연합 알고리즘의 간단한 예를 제공합니다.federated_select 및 희소 집계를 통한 클라이언트 효율적인 대규모 모델 연합 학습은 TFF를 사용하여 각 클라이언트 장치가
federated_language.federated_select및 희소 집계를 사용하여 모델의 작은 부분만 다운로드하고 업데이트하는 매우 큰 모델을 교육하는 방법을 보여줍니다.TFF의 차등 개인 정보 보호를 사용하는 연합 학습에서는 TFF를 사용하여 사용자 수준 차등 개인 정보 보호를 통해 모델을 교육하는 방법을 보여줍니다.