ANSGD¶
Implements ANSGD, a noisy projected SGD for learning across data owners under joint differential privacy.
Parameters split into per-owner personalized components \(x_j\) and a globally shared component \(u\). At each step the optimizer samples one owner \(j_t\) and one of its records \(z_{i_t,j_t}\), takes a projected gradient step on the corresponding loss, and injects Gaussian noise into the shared coordinate only. Because the personalized blocks stay noise-free, privacy is spent solely on \(u\), and the returned model is the iterate average.
where \(\eta\) is the learning rate, \(T\) the number of iterations, \(h\) the \(L\)-Lipschitz loss, \(g_t = \nabla h(\cdot)\) the sampled gradient, \(\Pi_{\mathcal{X}\times\mathcal{U}}\) the Euclidean projection onto the convex parameter sets, \(b_t\) the noise added to the shared block \(u\), \((\varepsilon,\delta)\) the privacy budget, \(m\) the number of owners, and \(n\) the number of records per owner.
Reference: Yangsibo Huang, Haotian Jiang, Daogao Liu, Mohammad Mahdian, Jieming Mao, Vahab Mirrokni, "Learning across Data Owners with Joint Differential Privacy", arXiv 2023. https://arxiv.org/abs/2305.15723