2024-10-02 · Project · AIMLFW · 11/11 · 약 2분
Federated Learning framework 개발
연합학습(Federated Learning)은 훈련 데이터를 중앙 서버로 끌어모으는 대신, 데이터를 각자 자리에 둔 채 학습하는 방식이다. 데이터를 한곳에 모으지 않으니 개인정보 보호에 유리하고, 학습 부하도 여러 노드로 분산된다. 각 노드가 로컬 데이터로 모델을 학습한 뒤, 데이터가 아니라 학습된 모델 파라미터만 서버로 올린다는 게 핵심이다.
이 구조는 O-RAN 아키텍처에 자연스럽게 대응된다. Non-RT RIC이 파라미터를 취합하는 중앙 서버 역할을, Near-RT RIC이 로컬 학습을 맡는 분산 클라이언트 역할을 한다.

[Fig. 1] O-RAN 구조에서의 연합학습 흐름
흐름은 대략 이렇다.
- Near-RT RIC(client)에서 로컬 데이터로 Local Model을 학습한다.
- 학습된 Local Model을 Non-RT RIC(server)로 업로드한다.
- Non-RT RIC(server)이 올라온 Local Model들의 파라미터를 취합한다. 이때 FedAvg, FedSGD 같은 방식을 쓴다.
- 취합한 Global Model을 다시 Near-RT RIC(client)이 내려받아 학습을 이어간다.
이 과정을 반복하다 학습이 끝나면 Near-RT RIC에서 모델을 배포해 추론에 쓴다. 다만 O1/A1 인터페이스를 통한 모델 업로드와 다운로드는 아직 표준상 FFS(For Further Study)로 남아 있는 부분이다.
실제로 이 방식이 효율에 도움이 되는지는 따로 실험으로 확인해봤다. ns-3와 codecarbon으로 연합학습과 중앙집중식 학습의 탄소 배출률을 비교했더니, 학습이 진행될수록 연합학습 쪽 배출률이 더 낮게 나왔다. 데이터를 옮기지 않고 학습 부하를 나눈 덕을 보는 셈이다.