우리의 접근법을 "Federated Learning"이라고 부르며, 이는 학습 작업이 참여하는 장치들의 느슨한 연합(이를 클라이언트라고 부릅니다)에 의해 해결되고 중앙 서버에 의해 조정되기 때문입니다. 이 시스템은 불균형하고 비독립적이며 동일한 분포를 따르지 않는 데이터를 처리합니다.
반면에, "Federated Learning" 용어가 소개된 이후에도, 우리는 FL 도전 과제 전체를 직접 다룬 단일 작업에 대해 알지 못하는 것으로 알고 있습니다.
2019년 6월 17일부터 18일까지 구글 시애틀 사무실에서 개최된 "Federated Learning and Analytics" 워크샵입니다.
우리는 이 두 가지 federated learning 설정을 각각 "cross-device"와 "cross-silo"로 명명합니다.
Federated learning은 여러 개체(클라이언트)가 중앙 서버 또는 서비스 제공자의 조정 하에 기계 학습 문제를 해결하기 위해 협력하는 기계 학습 설정입니다. 각 클라이언트의 원시 데이터는 로컬에 저장되고 교환되거나 전송되지 않습니다. 대신, 즉각적인 집계를 위해 사용되는 목적으로 집중적으로 업데이트가 사용되어 학습 목표를 달성합니다.
집중된 업데이트는 현재의 특정 학습 작업에 필요한 최소한의 정보만을 포함하도록 좁은 범위로 업데이트되며, 데이터 최소화를 위해 가능한 빨리 집계가 수행됩니다.
이제 소비자 디지털 제품에서 크로스 디바이스 페더레이티드 러닝과 페더레이티드 데이터 분석이 적용되고 있습니다.
크로스-실로 응용 프로그램은 재보험을 위한 금융 리스크 예측, 의약품 발견, 전자 건강 기록 채굴, 의료 데이터 세분화 및 스마트 제조와 같은 다양한 분야에서 제안되거나 설명되었습니다.
이 논문의 나머지 부분에서는 특별히 언급되지 않는 한 크로스 디바이스 페더레이티드 러닝 설정을 고려합니다. 그러나 많은 문제들이 다른 페더레이티드 러닝 설정에도 적용됩니다
| | Datacenter distributed learning | Cross-silo federated learning | Cross-device federated learning | | --- | --- | --- | --- | | Data distribution | 데이터는 중앙에 저장되어 있으며 클라이언트 간에 섞이고 균형을 맞출 수 있습니다. 모든 클라이언트는 데이터 세트의 어떤 부분이든 읽을 수 있습니다. | 데이터는 로컬에서 생성되며 분산되어 유지됩니다. 각 클라이언트는 자체 데이터를 저장하며 다른 클라이언트의 데이터를 읽을 수 없습니다. 데이터는 독립적이거나 동일하게 분포되어 있지 않습니다. | 데이터는 로컬에서 생성되며 분산되어 유지됩니다. 각 클라이언트는 자체 데이터를 저장하며 다른 클라이언트의 데이터를 읽을 수 없습니다. 데이터는 독립적이거나 동일하게 분포되어 있지 않습니다. | | Orchestration | 중앙에서 조정됩니다. | 중앙 조정 서버/서비스가 훈련을 조직하지만 원시 데이터를 볼 수는 없습니다. | 중앙 조정 서버/서비스가 훈련을 조직하지만 원시 데이터를 볼 수는 없습니다. | | Addressability | 각 클라이언트에는 시스템이 특정하게 액세스할 수 있는 식별 또는 이름이 있습니다. | 클라이언트는 직접 색인화될 수 없습니다 (즉, 클라이언트 식별자의 사용이 없습니다). | 클라이언트는 직접 색인화될 수 없습니다 (즉, 클라이언트 식별자의 사용이 없습니다). | | Client statefulness | Stateful - 각 클라이언트는 각 계산 라운드에 참여할 수 있으며, 라운드마다 상태를 유지합니다. | Stateful - 각 클라이언트는 각 계산 라운드에 참여할 수 있으며, 라운드마다 상태를 유지합니다. | Stateless - 각 클라이언트는 일반적으로 한 번만 작업에 참여하므로, 계산의 각 라운드마다 이전에 본 적이 없는 새로운 샘플의 클라이언트를 가정합니다. |
클라이언트 계산, 집계 및 모델 업데이트 단계의 분리는 페더레이티드 러닝의 엄격한 요구 사항이 아니며, 실제로 모델 업데이트가 즉시 적용되고 집계되는 비동기 SGD와 같은 일부 알고리즘을 제외합니다. 이러한 비동기 접근 방식은 시스템 설계의 일부 측면을 간소화하고 최적화 관점에서도 유익할 수 있습니다(비판의 여지가 있습니다). 그러나 위에서 설명한 접근 방식은 다른 연구 분야 사이의 관심 분리를 제공하는 중요한 이점을 가지고 있습니다. 압축, 차등 프라이버시 및 안전한 다중 당사자 계산과 같은 진보된 기술은 분산 업데이트를 통해 합계 또는 평균을 계산하는 것과 같은 표준 기본 요소에 대해 개발될 수 있으며, 그런 다음 임의의 최적화 또는 분석 알고리즘과 결합될 수 있습니다. 그러나 해당 알고리즘이 집계 기본 요소로 표현된 경우에만입니다. 또한, FL 훈련 과정이 사용자 경험에 영향을 미치지 않아야 한다는 점을 강조해야 합니다. 첫째, 위에서 설명한대로 각 페더레이티드 훈련 라운드의 브로드캐스트 단계 중에 일부 디바이스로 모델 매개변수가 전송되더라도, 이러한 모델은 훈련 과정의 일시적인 부분이며 사용자에게 "실시간" 예측을 보여주기 위해 사용되지 않습니다. 이것은 중요합니다. 왜냐하면 ML 모델의 훈련은 어렵기 때문에 하이퍼파라미터의 잘못된 구성은 나쁜 예측을 내놓을 수 있는 모델을 생성할 수 있습니다. 대신 모델의 사용은 위에서 모델 수명 주기의 단계 6에 자세히 설명된대로 롤아웃 프로세스로 연기됩니다. 둘째, 훈련 자체는 사용자에게 보이지 않도록 의도되어 있습니다. 클라이언트 선택에서 설명한대로, 훈련은 디바이스가 대기 상태이고 전원에 연결된 경우에만 실행되므로 디바이스의 작동 속도를 늦추거나 배터리를 소모하지 않습니다. 그러나 이러한 제약 조건의 제한된 가용성은 반복적 데이터 가용성 및 클라이언트 선택에서 편향 가능성과 같은 개방형 연구 과제로 직접 이어집니다.