[보안] Differential Privacy
·
통계 & 머신러닝/연합학습
Differential PrivacyIdea`Differential Privacy(DP)`는 연합학습에만 사용되는 개념은 아닙니다. 이는 원본 정보에 대한 보호를 위해 나온 개념으로, 원래 자료의 보호를 위해 자료 일부분을 임의의 값 또는 일정한 값으로 채워넣는 방법을 사용하거나, 아니면 연합학습처럼 원본 정보에 직접적으로 접근 불가한 구조를 채택하기도 합니다. 하지만, 이 방법들은 결과물을 통해 역추적하여 어느정도의 추정이 가능하기 때문에 보다 섬세한 보안 방법이 적용되어야 합니다. 이러한 관점에서 `DP` 문제가 중요하게 되었습니다. 먼저 `DP`란 단 하나의 개인정보의 변화를 통해 전체셋이 변화가 일어바 원본 유저의 정보를 파악할 수 있을 수 있는 상황을 의미합니다. 거꾸로, `DP` 문제에 대한 ..
[FedProx] 등장 배경
·
통계 & 머신러닝/연합학습
`FedProx`의 첫번째 포스팅입니다.등장 배경이 논문은 기존의 연합학습에서의 이질성(Heterogeneity)을 해결하기 위해 등장한 방법론입니다. 여기서의 이질성은 크게 두가지로, client의 device와 같은 환경이 다름을 나타내는 `system heterogeneity` 와 client의 데이터의 분포가 다름을 나타내는 `statistical heterogeneity` (NON-IID와 거의 같은 개념) 로 나뉩니다. `FedProx`는 `FedAVG` 다음 시점에 등장한 방법론으로 보다 일반화된 방법을 제시합니다. FedAVG에서의 문제점그렇다면 기존의 방법론에서 구체적으로 어떤 문제점이 있을까요? 우선 기존의 방법에서 `local epoch`는 전반적인 수렴에 영향을 끼칩니다. 예를들어,..
[SplitFed] 결과
·
통계 & 머신러닝/연합학습
지난 글 `[SplitFed] 구조`에 이어지는 내용입니다.결과SFL은 구조가 조금 복잡할 뿐이지, 아이디어 자체는 직관적이고 간단합니다. 이러한 이유로 흥미를 끌지만, 결국 결과가 가장 중요합니다. 그리고 이 방법론은 결과적으로 매우 좋지 않은 성능을 보여줍니다. 그렇기 때문에, 과연 이런 복잡한 구조를 사용할 필요가 있을지 의문이 생기게 됩니다. 아래는 실험에 사용된 데이터셋과 모델 구조입니다. 아쉬운 점은 모든 데이터셋이 IID 설정으로 되어 있었다는 점이며, 이미지 데이터가 사용된 이유는 이 논문에서 소개하지 않은 프라이버시 보호 방법 중 컴퓨터 비전에서 사용되는 PixelDP 개념을 사용했기 때문인 것으로 보입니다. 만약 자연어 처리나 기타 다른 입력 형태를 다룬다면, 그에 맞는 프라이버시 보호..
[SplitFed] 구조
·
통계 & 머신러닝/연합학습
지난 글 `[SplitFed] 개념`에 이어지는 내용입니다.구조SplitFed(SFL)는 이름에서 알 수 있듯이, Split Learning(SL)과 Federated Learning(FL)을 결합한 방식입니다. 이 방법의 가장 큰 특징은 두 개의 서버를 사용한다는 점입니다. 하나는 FL을 위한 `fed server`, 다른 하나는 SL을 위한 `main server`로, 그림상 각각 `server2`와 `server1`에 해당됩니다. 주된 학습은 `server1`에서 이루어지기 때문에 이를 `main server`라 부릅니다.SFL에서 모델을 업데이트하는 방식은 FL의 방식을 차용하며, 계산의 효율성과 구조적인 보안성을 고려하여 SL도 활용합니다. 먼저 SL 부분을 살펴보면, SFL은 기존 SL의 모델..
[SplitFed] 개념
·
통계 & 머신러닝/연합학습
`SplitFed`의 첫번째 포스팅입니다.서론SplitFed (SFL)은 Federated Learning (FL)과 Split Learning (SL)을 결합한 방법론입니다. 이 내용은 호주 연방과학산업연구기구(CSIRO)에서 출판한 논문에 등장합니다. 사실 이 논문의 결과는 그리 만족스럽지 않았습니다. 결과 부분을 보고 이 논문에 대한 리뷰를 할지 말지 고민이 많았던 논문입니다. 그럼에도 불구하고 논문을 읽다 보니, 구조적으로 활용 가능하거나 여러 개념을 조립하여 적용할 수 있을 것 같아 결국 끝까지 읽게 되었습니다. 이 논문에서는 새로운 구조의 제시와 프라이버시 보호 방법에 중점을 두고 있지만, 오늘은 이 논문의 구조에 대해서만 집중하여 포스트를 작성하려 합니다.SplitFedSplitFed는 Fe..
[Split Learning] 결과
·
통계 & 머신러닝/연합학습
지난 글 `[Split Learning] 기본 구조`에서 이어지는 내용입니다.결과Split Learning(SL)은 매우 간단하지만 흥미로운 아이디어입니다. 그렇다면 이 방법의 결과는 어떨까요? 아래는 VGG를 사용하여 CIFAR-10을, ResNet-50을 사용하여 CIFAR-100을 학습시킨 결과입니다. 여기서 주목할 점은, Client-side의 연산 부담이 적다는 것입니다. (참고로, 여기서 언급된 Split NN은 SL을 의미합니다.)또한, 주고받는 데이터 양에 대해서도 분석한 그래프가 있습니다.하지만, 이러한 기본적인 데이터셋에 대한 validation accuracy를 살펴볼 때, 기존의 FL 방법론이 수렴하지 못한다는 것은 다소 이상한 현상입니다. 실험 설계 단계에서 무엇인가 잘못된 것이 ..