[논문 리뷰] S++: A Fast and Deployable Secure-Computation Framework for Privacy-Preserving Neural Network Training
S++는 3자간 설정에서 비밀 분할을 사용하여 기밀 보장 신경망 학습을 위한 빠르고 구현 가능한 보안 계산 프레임워크이다. 이 프레임워크는 거듭제곱 및 일반적인 비선형 활성화 함수—시그모이드, 하이퍼볼릭 탄젠트, 소프트맥스—에 대해 효율적이고 검증 가능한 프로토콜을 도입하여 아키텍처 변경 없이 표준 신경망의 보안 학습을 가능하게 하며, LAN 환경에서 낮은 지연 시간과 통신 오버헤드를 보여주는 벤치마크 결과를 제공한다.
We introduce S++, a simple, robust, and deployable framework for training a neural network (NN) using private data from multiple sources, using secret-shared secure function evaluation. In short, consider a virtual third party to whom every data-holder sends their inputs, and which computes the neural network: in our case, this virtual third party is actually a set of servers which individually learn nothing, even with a malicious (but non-colluding) adversary. Previous work in this area has been limited to just one specific activation function: ReLU, rendering the approach impractical for many use-cases. For the first time, we provide fast and verifiable protocols for all common activation functions and optimize them for running in a secret-shared manner. The ability to quickly, verifiably, and robustly compute exponentiation, softmax, sigmoid, etc., allows us to use previously written NNs without modification, vastly reducing developer effort and complexity of code. In recent times, ReLU has been found to converge much faster and be more computationally efficient as compared to non-linear functions like sigmoid or tanh. However, we argue that it would be remiss not to extend the mechanism to non-linear functions such as the logistic sigmoid, tanh, and softmax that are fundamental due to their ability to express outputs as probabilities and their universal approximation property. Their contribution in RNNs and a few recent advancements also makes them more relevant.
연구 동기 및 목표
- 다양한 데이터 소스로부터의 기밀 보장 학습을 가능하게 하여 개인 정보를暴露하지 않고 신경망을 학습시키는 것.
- 이전의 MPC 기반 프레임워크가 ReLU만 지원하는 한계를 극복하기 위해 거듭제곱 기반 활성화 함수의 지원을 추가하는 것.
- 3자간 계산(3PC) 환경에서 시그모이드, 하이퍼볼릭 탄젠트, 소프트맥스 및 그 도함수에 대해 효율적이고 검증 가능하며 실용적인 프로토콜을 제공하는 것.
- 기존 신경망 모델을 보안 환경에서 수정 없이 사용할 수 있도록 개발자 작업 부담을 줄이는 것.
- 기존 기술과의 실용성 격차를 해소하기 위해 확률적 및 보편 근사 함수를 완전히 지원하는 것.
제안 방법
- 프레임워크는 세 서버 간의 덧셈 기반 비밀 분할을 사용하며, 데이터 소유자가 두 대의 주요 서버와 보조 서버에 분할된 데이터를 배포한다.
- SCALE MAMBA 및 Catrina-Saxena 기반의 새로운 보안 거듭제곱 프로토콜을 도입하여 비밀 분할 입력을 가진 3자간 계산에 적합하게 조정한다.
- 거듭제곱 프로토콜은 오버플로우를 방지하고 신경망 레이어에서의 사용을 가능하게 하기 위해 Z_128 내에서 고정소수점 산술을 지원한다.
- 시그모이드, 하이퍼볼릭 탄젠트, 소프트맥스는 거듭제곱 프로토콜을 기반으로 구현되며, 역전파를 지원하기 위해 보안 산술을 통해 도함수를 계산한다.
- 보안 환경에서의 거듭제곱을 위해 타일러 급수 근사를 사용하며, 작은 입력 값에 최적화되어 있다.
- 프로토콜은 C++로 구현되었으며, Z_64 및 Z_128 내의 고정소수점 산술을 사용하고, LAN 벤치마크에서 통신 및 실행 시간을 측정한다.
실험 결과
연구 질문
- RQ1보안 계산 프레임워크는 확률 모델링과 보편 근사에 필수적인 ReLU 외 활성화 함수인 시그모이드, 하이퍼볼릭 탄젠트, 소프트맥스를 지원할 수 있는가?
- RQ23자 비밀 분할 환경에서 신경망 학습에 사용하기 위해 효율적이고 검증 가능한 거듭제곱을 어떻게 구현할 수 있는가?
- RQ3ReLU 전용 접근 방식에 비해 복잡한 활성화 함수 지원을 추가했을 때 보안 신경망 학습의 성능 오버헤드는 어떠한가?
- RQ4거듭제곱 기반 활성화 함수를 사용할 때 기존 신경망 모델을 아키텍처 변경 없이 보안적으로 배포할 수 있는가?
- RQ5실제 LAN 환경에서 보안 시그모이드, 하이퍼볼릭 탄젠트, 소프트맥스 계산의 실용적 통신 및 지연 비용은 어떠한가?
주요 결과
- S++ 프레임워크는 LAN 환경에서 128x128 입력에 대해 평균 실행 시간이 5.631초인 낮은 지연 시간을 기록하여 보안 시그모이드, 하이퍼볼릭 탄젠트, 소프트맥스 함수를 효과적으로 처리한다.
- 통신 오버헤드는 관리 가능하며, 소프트맥스 및 도함수 프로토콜은 128x128 입력에 대해 약 41.3 MB의 데이터를 전송한다.
- 타일러 급수 기반의 거듭제곱 프로토콜은 1초 이내 성능을 달성하여, 128x128 입력에 대해 0.092초의 실행 시간과 0.079 MB의 통신량을 기록한다.
- 프레임워크는 아키텍처 재설계 없이도 일반적인 활성화 함수를 사용하여 표준 신경망의 보안 학습을 지원한다.
- 현재 구현은 더 큰 거듭제곱 값에서 오버플로우를 일으켜 거듭제곱 및 유도된 함수의 실용적 사용을 제한하며, 향후 연구에서의 주요 한계로 지적된다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.