mirror of
https://github.com/zoo-apps/papers.git
synced 2026-11-02 17:38:34 +00:00
Bylines, paper authorship, correspondence addresses and the founder blurb under each post named an individual. They name the organisation that published the work instead: the brand on posts and pages, the research byline on papers, and research@ in place of a personal address. Both are what these repositories already used elsewhere — nothing new was coined. Co-authors are untouched. Where a paper named someone else alongside, they stay named; only the one byline changed. Bibliography entries, running heads, PDF metadata and affiliations move with it, so a citation still resolves to whoever the cited paper names. Sample and fixture data uses the placeholder name these tests already use elsewhere, so no assertion changed meaning. Co-authored-by: Hanzo Dev <[email protected]>
522 lines
24 KiB
TeX
522 lines
24 KiB
TeX
\documentclass[11pt,letterpaper]{article}
|
|
\usepackage{shared/zoocover}
|
|
|
|
% Packages
|
|
\usepackage[utf8]{inputenc}
|
|
\usepackage[T1]{fontenc}
|
|
\usepackage{amsmath,amssymb,amsthm}
|
|
\usepackage{algorithm}
|
|
\usepackage{algorithmic}
|
|
\usepackage{graphicx}
|
|
\usepackage{hyperref}
|
|
\usepackage{xcolor}
|
|
\usepackage{booktabs}
|
|
\usepackage{tikz}
|
|
\usetikzlibrary{shapes,arrows,positioning,calc}
|
|
\usepackage{listings}
|
|
\input{shared/lstlang}
|
|
\usepackage{caption}
|
|
\usepackage{subcaption}
|
|
% geometry loaded by zoocover
|
|
|
|
% Theorem environments
|
|
\newtheorem{theorem}{Theorem}[section]
|
|
\newtheorem{lemma}[theorem]{Lemma}
|
|
\newtheorem{proposition}[theorem]{Proposition}
|
|
\newtheorem{corollary}[theorem]{Corollary}
|
|
\newtheorem{definition}{Definition}[section]
|
|
\newtheorem{example}{Example}[section]
|
|
\newtheorem{remark}{Remark}[section]
|
|
|
|
% Custom commands
|
|
\newcommand{\Zoo}{\textsc{Zoo}}
|
|
\newcommand{\NFT}{\textsc{nft}}
|
|
\newcommand{\ERC}{\textsc{erc}}
|
|
\newcommand{\LLM}{\textsc{llm}}
|
|
\newcommand{\DAO}{\textsc{dao}}
|
|
\newcommand{\R}{\mathbb{R}}
|
|
\newcommand{\E}{\mathbb{E}}
|
|
\newcommand{\KL}{\mathrm{KL}}
|
|
|
|
% Hyperref setup
|
|
\hypersetup{
|
|
colorlinks=true,
|
|
linkcolor=blue,
|
|
citecolor=blue,
|
|
urlcolor=blue
|
|
}
|
|
|
|
% Title and authors
|
|
\title{\textbf{BitDelta and DeltaSoup: Personalized and Community AI\\through Compact Model Updates}}
|
|
|
|
\author{
|
|
Antje Worring, Zoo Labs Foundation Research\thanks{[email protected]}\\
|
|
\textit{Hanzo Industries \quad Lux Industries \quad Zoo Labs Foundation}\\
|
|
\texttt{[email protected]}
|
|
}
|
|
|
|
\date{January 2025}
|
|
|
|
\begin{document}
|
|
|
|
\zoocoverpage
|
|
|
|
\begin{abstract}
|
|
We present \textbf{BitDelta}, a 1-bit delta compression scheme for personalized AI model adaptations, and \textbf{DeltaSoup}, a Byzantine-robust aggregation protocol that merges individual deltas into community Reference Adapters. Given base model weights $W_b$ and fine-tuned weights $W_f$, BitDelta compresses the delta $\delta = W_f - W_b$ to a sign matrix $\text{sign}(\delta) \in \{-1, +1\}^{m \times n}$ and a per-tensor scale $\gamma \in \R^+$, achieving $10\times$ memory reduction while preserving $\geq 90\%$ of task performance. We prove that 1-bit quantization of deltas acts as a regularizer on the fine-tuning manifold, reducing jailbreak attack success rates by approximately 60\% compared to full-precision deltas. DeltaSoup aggregates user deltas via coordinate-wise trimmed mean, tolerating up to 30\% Byzantine (poisoned) contributions. The aggregated adapter is recorded on-chain as an NFT (ZIP-0006), with royalty distributions proportional to each contributor's delta weight norm. We deploy both systems across Zoo's application domains---education (avatar tutors), gaming (NPCs), and finance (DeFi advisors)---as the unified personalization layer described in ZIP-0009.
|
|
|
|
\textbf{Keywords}: model compression, personalization, federated learning, Byzantine robustness, on-chain model ownership
|
|
\end{abstract}
|
|
|
|
\section{Introduction}
|
|
|
|
Personalizing a large language model for each user requires storing a separate set of weights per user. For a 70B-parameter model at float16 precision, this is 140GB per user. Serving one million users would require 140PB of storage and corresponding GPU memory---clearly infeasible.
|
|
|
|
Two existing approaches mitigate this. LoRA~\cite{hu2022lora} represents the delta as a low-rank matrix $\delta = BA$ with $B \in \R^{m \times r}$ and $A \in \R^{r \times n}$, reducing storage to $O((m+n)r)$. QLoRA~\cite{dettmers2024qlora} adds 4-bit quantization of the base model. Both are effective but still require $O(r(m+n))$ per user per layer.
|
|
|
|
BitDelta~\cite{liu2024bitdelta} takes a more aggressive approach: the delta is compressed to 1 bit per parameter plus a single scalar per tensor. For a 70B model, the per-user storage drops from 140GB to approximately 0.7GB---a $200\times$ reduction over full precision and $10\times$ over LoRA with rank 16.
|
|
|
|
This paper extends BitDelta in two directions:
|
|
|
|
\begin{enumerate}
|
|
\item \textbf{Safety analysis.} We prove that 1-bit quantization constrains the delta to a discrete manifold that is intrinsically resistant to adversarial fine-tuning (Section~\ref{sec:safety}).
|
|
\item \textbf{DeltaSoup.} We introduce a community aggregation protocol that merges per-user BitDelta adapters into shared Reference Adapters via Byzantine-robust averaging (Section~\ref{sec:deltasoup}).
|
|
\end{enumerate}
|
|
|
|
\section{BitDelta: 1-Bit Delta Compression}
|
|
\label{sec:bitdelta}
|
|
|
|
\subsection{Formulation}
|
|
|
|
\begin{definition}[BitDelta Adapter]
|
|
Given base weights $W_b \in \R^{m \times n}$ and fine-tuned weights $W_f \in \R^{m \times n}$, the BitDelta adapter is the pair $(S, \gamma)$ where:
|
|
\begin{align}
|
|
S &= \text{sign}(W_f - W_b) \in \{-1, +1\}^{m \times n} \\
|
|
\gamma &= \arg\min_{\gamma' \geq 0} \| (W_b + \gamma' S) - W_f \|_F^2
|
|
\end{align}
|
|
The reconstructed weights are $\hat{W}_f = W_b + \gamma S$.
|
|
\end{definition}
|
|
|
|
\begin{proposition}[Optimal Scale]
|
|
\label{prop:scale}
|
|
The closed-form optimal scale is:
|
|
\begin{equation}
|
|
\gamma^* = \frac{\langle S, W_f - W_b \rangle_F}{\|S\|_F^2} = \frac{\|W_f - W_b\|_1}{mn}
|
|
\end{equation}
|
|
where $\langle \cdot, \cdot \rangle_F$ is the Frobenius inner product.
|
|
\end{proposition}
|
|
|
|
\begin{proof}
|
|
Setting $\frac{\partial}{\partial \gamma}\|W_b + \gamma S - W_f\|_F^2 = 0$ yields $\gamma = \langle S, W_f - W_b \rangle_F / \|S\|_F^2$. Since $S = \text{sign}(W_f - W_b)$, we have $\langle S, W_f - W_b \rangle_F = \|W_f - W_b\|_1$ and $\|S\|_F^2 = mn$.
|
|
\end{proof}
|
|
|
|
In practice, we use a calibration-aware scale that minimizes KL divergence on a held-out dataset rather than the Frobenius norm:
|
|
|
|
\begin{equation}
|
|
\gamma^* = \arg\min_{\gamma} \KL\!\left[p_\theta(\cdot; W_f) \,\|\, p_\theta(\cdot; W_b + \gamma S)\right]
|
|
\label{eq:kl_scale}
|
|
\end{equation}
|
|
|
|
This is solved by scalar line search on a small calibration set (100 examples).
|
|
|
|
\subsection{Compression Analysis}
|
|
|
|
\begin{table}[t]
|
|
\centering
|
|
\begin{tabular}{lccc}
|
|
\toprule
|
|
\textbf{Method} & \textbf{Bits/param} & \textbf{Per-user (70B)} & \textbf{Ratio} \\
|
|
\midrule
|
|
Full delta (float16) & 16 & 140 GB & $1\times$ \\
|
|
LoRA ($r=16$) & $\approx 0.46$ & 4.0 GB & $35\times$ \\
|
|
QLoRA ($r=16$, 4-bit base) & $\approx 0.46$ & 4.0 GB & $35\times$ \\
|
|
BitDelta & $\approx 1.0005$ & 0.7 GB & $200\times$ \\
|
|
\bottomrule
|
|
\end{tabular}
|
|
\caption{Per-user storage comparison for a 70B-parameter model.}
|
|
\label{tab:compression}
|
|
\end{table}
|
|
|
|
The 0.0005 overhead beyond 1 bit per parameter comes from the per-tensor scale $\gamma$ (one float32 per weight tensor, typically $\sim$300 tensors for a 70B model).
|
|
|
|
\subsection{Fused Inference Kernel}
|
|
|
|
The BitDelta reconstruction $\hat{W}_f = W_b + \gamma S$ can be computed in a single fused CUDA kernel:
|
|
|
|
\begin{lstlisting}[language=Python,caption=Fused BitDelta kernel (PyTorch)]
|
|
@torch.jit.script
|
|
def fused_bitdelta_matmul(x, W_base, signs, gamma):
|
|
"""
|
|
Compute (W_base + gamma * signs) @ x
|
|
without materializing the full weight matrix.
|
|
signs stored as int8 (-1 or +1).
|
|
"""
|
|
base_out = F.linear(x, W_base)
|
|
# signs @ x is efficient: multiply by +/- 1
|
|
delta_out = gamma * F.linear(x, signs.float())
|
|
return base_out + delta_out
|
|
\end{lstlisting}
|
|
|
|
This avoids materializing the full personalized weight matrix, keeping GPU memory usage at the base model level plus $O(mn / 8)$ for the packed sign bits.
|
|
|
|
\section{Safety Properties of BitDelta}
|
|
\label{sec:safety}
|
|
|
|
\subsection{Quantization as Regularization}
|
|
|
|
\begin{theorem}[BitDelta Safety Preservation]
|
|
\label{thm:safety}
|
|
Let $S_{\text{base}}$ be the safety score of the base model on a standardized benchmark (e.g., TruthfulQA, HarmBench), and let $S_{\text{BD}}$ be the safety score after applying a BitDelta adapter. Then:
|
|
\[
|
|
S_{\text{BD}} \geq S_{\text{base}} - \frac{2\gamma \sqrt{mn}}{\lambda_{\min}(H_{\text{safety}})}
|
|
\]
|
|
where $\lambda_{\min}(H_{\text{safety}})$ is the smallest eigenvalue of the Hessian of the safety loss at the base model weights, and $\gamma$ is the BitDelta scale.
|
|
\end{theorem}
|
|
|
|
\begin{proof}
|
|
The BitDelta perturbation $\Delta W = \gamma S$ satisfies $\|\Delta W\|_F = \gamma \sqrt{mn}$. By Taylor expansion of the safety loss around the base weights:
|
|
\[
|
|
L_{\text{safety}}(W_b + \Delta W) \leq L_{\text{safety}}(W_b) + \langle \nabla L, \Delta W \rangle + \frac{1}{2} \|\Delta W\|_{H}^2
|
|
\]
|
|
At a safety-aligned base model, $\nabla L_{\text{safety}} \approx 0$ (the gradient is near zero because the model is at a local minimum of the safety loss). The quadratic term is bounded by $\frac{\gamma^2 mn}{2\lambda_{\min}(H_{\text{safety}})}$. The safety score degradation is proportional to this bound.
|
|
\end{proof}
|
|
|
|
\begin{corollary}[Jailbreak Resistance]
|
|
Full-precision fine-tuning can move weights in any direction in $\R^{m \times n}$. BitDelta restricts the perturbation to $\{-\gamma, +\gamma\}^{m \times n}$---a discrete lattice. The number of directions that reduce safety scores is exponentially smaller on this lattice than in $\R^{m \times n}$.
|
|
\end{corollary}
|
|
|
|
\subsection{Empirical Safety Evaluation}
|
|
|
|
\begin{table}[t]
|
|
\centering
|
|
\begin{tabular}{lccc}
|
|
\toprule
|
|
\textbf{Adaptation} & \textbf{TruthfulQA} & \textbf{HarmBench} & \textbf{Jailbreak Rate} \\
|
|
\midrule
|
|
Base model & 0.71 & 0.93 & 8.2\% \\
|
|
Full fine-tune & 0.64 & 0.81 & 21.4\% \\
|
|
LoRA ($r=16$) & 0.67 & 0.86 & 15.7\% \\
|
|
BitDelta & 0.69 & 0.91 & 8.6\% \\
|
|
\bottomrule
|
|
\end{tabular}
|
|
\caption{Safety scores across adaptation methods. Higher is better for TruthfulQA and HarmBench; lower is better for jailbreak rate.}
|
|
\label{tab:safety}
|
|
\end{table}
|
|
|
|
BitDelta reduces jailbreak success from 21.4\% (full fine-tune) to 8.6\% (close to the 8.2\% base rate), consistent with the theoretical prediction that 1-bit quantization acts as a safety regularizer.
|
|
|
|
\section{DeltaSoup: Community Aggregation}
|
|
\label{sec:deltasoup}
|
|
|
|
\subsection{Motivation}
|
|
|
|
Individual users create BitDelta adapters from their personal interactions. DeltaSoup aggregates these into \emph{Reference Adapters} that benefit the entire community---analogous to how federated learning~\cite{mcmahan2017federated} aggregates gradients, but operating on compressed deltas with on-chain provenance.
|
|
|
|
\subsection{Byzantine-Robust Aggregation}
|
|
|
|
Not all user deltas are benign. Some may be adversarial (backdoor injection) or simply noisy (insufficient training data). We use coordinate-wise trimmed mean~\cite{blanchard2017machine}:
|
|
|
|
\begin{definition}[Trimmed Mean Aggregation]
|
|
Given $N$ BitDelta adapters $\{(S_i, \gamma_i)\}_{i=1}^N$ and trim ratio $\beta \in (0, 0.5)$:
|
|
\begin{enumerate}
|
|
\item For each parameter coordinate $(j, k)$, sort the values $\{\gamma_i \cdot S_i^{(j,k)}\}_{i=1}^N$.
|
|
\item Remove the bottom $\lfloor \beta N \rfloor$ and top $\lfloor \beta N \rfloor$ values.
|
|
\item Average the remaining $(1 - 2\beta)N$ values.
|
|
\end{enumerate}
|
|
\end{definition}
|
|
|
|
\begin{theorem}[Byzantine Tolerance]
|
|
\label{thm:byzantine}
|
|
The trimmed mean aggregation with trim ratio $\beta$ tolerates up to $\lfloor \beta N \rfloor$ Byzantine (adversarial) contributions. With $\beta = 0.15$ and $N \geq 100$:
|
|
\[
|
|
\|\text{TrimMean}(\delta_1, \ldots, \delta_N) - \bar{\delta}_{\text{honest}}\|_\infty \leq \frac{2\beta}{1-2\beta} \cdot \max_i \|\delta_i\|_\infty
|
|
\]
|
|
where $\bar{\delta}_{\text{honest}}$ is the mean of honest contributions.
|
|
\end{theorem}
|
|
|
|
\subsection{Greedy Soup Mixing}
|
|
|
|
Following Model Soups~\cite{wortsman2022model}, we iteratively add deltas to the Reference Adapter only if they improve performance without degrading safety:
|
|
|
|
\begin{algorithm}[t]
|
|
\caption{Greedy DeltaSoup Construction}
|
|
\label{alg:greedy_soup}
|
|
\begin{algorithmic}[1]
|
|
\STATE \textbf{Input}: Trimmed-mean aggregate $\bar{\delta}$, candidate deltas $\{\delta_i\}_{i=1}^N$, step size $\eta$
|
|
\STATE \textbf{Output}: Reference Adapter $R$
|
|
\STATE $R \leftarrow \bar{\delta}$
|
|
\STATE $s^* \leftarrow \text{eval}(W_b + R)$
|
|
\FOR{each $\delta_i$ sorted by quality score descending}
|
|
\STATE $R' \leftarrow R + \eta \cdot \delta_i$
|
|
\STATE $s' \leftarrow \text{eval}(W_b + R')$
|
|
\STATE $\text{safe} \leftarrow \text{safety\_check}(W_b + R')$
|
|
\IF{$s' > s^*$ \textbf{and} safe}
|
|
\STATE $R \leftarrow R'$
|
|
\STATE $s^* \leftarrow s'$
|
|
\STATE Record contributor $i$ with weight $\eta$
|
|
\ENDIF
|
|
\ENDFOR
|
|
\RETURN $R$
|
|
\end{algorithmic}
|
|
\end{algorithm}
|
|
|
|
\subsection{On-Chain Royalties}
|
|
|
|
Contributors to a DeltaSoup Reference Adapter receive royalties proportional to their contribution:
|
|
|
|
\begin{equation}
|
|
r_i = \frac{\eta_i \|\delta_i\|_1}{\sum_{j \in \text{accepted}} \eta_j \|\delta_j\|_1}
|
|
\label{eq:royalty}
|
|
\end{equation}
|
|
|
|
These royalty shares are recorded on-chain via LP-106 (RoyaltyMap) and paid out automatically when the Reference Adapter generates revenue (e.g., through inference fees).
|
|
|
|
\begin{lstlisting}[language=Solidity,caption=DeltaSoup royalty contract]
|
|
contract DeltaSoupRoyalties {
|
|
struct Contribution {
|
|
string contributorLuxId; // did:lux:122:0x...
|
|
bytes32 deltaHash;
|
|
uint256 weight; // basis points
|
|
}
|
|
|
|
mapping(bytes32 => Contribution[]) public soups;
|
|
|
|
function distribute(bytes32 soupHash,
|
|
uint256 amount) external {
|
|
Contribution[] memory c = soups[soupHash];
|
|
for (uint i = 0; i < c.length; i++) {
|
|
uint256 share = amount * c[i].weight / 10000;
|
|
payable(resolve(c[i].contributorLuxId))
|
|
.transfer(share);
|
|
}
|
|
}
|
|
}
|
|
\end{lstlisting}
|
|
|
|
\section{Unified Architecture (ZIP-0009)}
|
|
|
|
ZIP-0009 standardizes BitDelta as the personalization layer across all Zoo AI systems. The core abstraction:
|
|
|
|
\begin{lstlisting}[language=Python,caption=Unified BitDelta interface]
|
|
class UnifiedBitDelta:
|
|
def __init__(self, base_model, domain):
|
|
self.base = base_model
|
|
self.domain = domain # education, gaming, defi
|
|
|
|
def create_adapter(self, user_lux_id, data):
|
|
ft = self.finetune(self.base, data, self.domain)
|
|
delta = ft.state_dict() - self.base.state_dict()
|
|
signs = {k: torch.sign(v) for k, v in delta.items()}
|
|
scales = {k: self.optimal_scale(k, v)
|
|
for k, v in delta.items()}
|
|
return BitDeltaAdapter(user_lux_id, signs, scales)
|
|
|
|
def optimal_scale(self, layer, delta):
|
|
# Domain-specific scale optimization
|
|
if self.domain == "education":
|
|
return self.optimize_pedagogical(layer, delta)
|
|
elif self.domain == "gaming":
|
|
return self.optimize_behavioral(layer, delta)
|
|
elif self.domain == "defi":
|
|
return self.optimize_strategy(layer, delta)
|
|
return delta.abs().mean()
|
|
\end{lstlisting}
|
|
|
|
\subsection{Domain-Specific Scale Optimization}
|
|
|
|
Each domain defines a different objective for the scale parameter $\gamma$:
|
|
|
|
\begin{itemize}
|
|
\item \textbf{Education}: Minimize the KL divergence between the adapted model's explanations and pedagogically-validated reference explanations.
|
|
\item \textbf{Gaming}: Maximize behavioral consistency (measured as the autocorrelation of the agent's action distribution across consecutive game states).
|
|
\item \textbf{DeFi}: Maximize risk-adjusted returns (Sharpe ratio) on backtested trading recommendations.
|
|
\end{itemize}
|
|
|
|
\section{Experiments}
|
|
|
|
\subsection{Compression Quality}
|
|
|
|
\begin{table}[t]
|
|
\centering
|
|
\begin{tabular}{lcccc}
|
|
\toprule
|
|
\textbf{Model} & \textbf{Method} & \textbf{MMLU} & \textbf{HumanEval} & \textbf{MT-Bench} \\
|
|
\midrule
|
|
Eco-1 72B & Full fine-tune & 82.4 & 81.2 & 8.9 \\
|
|
Eco-1 72B & LoRA $r$=16 & 81.1 & 79.8 & 8.7 \\
|
|
Eco-1 72B & BitDelta & 79.6 & 77.3 & 8.5 \\
|
|
\midrule
|
|
Coder-1 32B & Full fine-tune & 74.3 & 92.1 & 8.1 \\
|
|
Coder-1 32B & BitDelta & 72.8 & 89.4 & 7.9 \\
|
|
\midrule
|
|
Nano-1 3B & Full fine-tune & 65.2 & 52.1 & 6.8 \\
|
|
Nano-1 3B & BitDelta & 63.1 & 49.7 & 6.5 \\
|
|
\bottomrule
|
|
\end{tabular}
|
|
\caption{BitDelta quality vs.\ full fine-tuning and LoRA.}
|
|
\label{tab:quality}
|
|
\end{table}
|
|
|
|
BitDelta retains $\geq 90\%$ of full fine-tune performance across all models and benchmarks, consistent with the original BitDelta findings~\cite{liu2024bitdelta}.
|
|
|
|
\subsection{DeltaSoup Quality}
|
|
|
|
\begin{table}[t]
|
|
\centering
|
|
\begin{tabular}{lccc}
|
|
\toprule
|
|
\textbf{Contributors} & \textbf{Byzantine \%} & \textbf{Soup Quality} & \textbf{Best Individual} \\
|
|
\midrule
|
|
50 & 0\% & 81.3 & 79.6 \\
|
|
50 & 10\% & 80.9 & 79.6 \\
|
|
50 & 20\% & 80.2 & 79.6 \\
|
|
50 & 30\% & 78.8 & 79.6 \\
|
|
100 & 0\% & 83.1 & 79.6 \\
|
|
100 & 30\% & 80.7 & 79.6 \\
|
|
\bottomrule
|
|
\end{tabular}
|
|
\caption{DeltaSoup MMLU accuracy with varying Byzantine fraction. The soup outperforms the best individual adapter when fewer than 30\% of contributors are adversarial.}
|
|
\label{tab:soup}
|
|
\end{table}
|
|
|
|
\subsection{Serving Performance}
|
|
|
|
\begin{table}[t]
|
|
\centering
|
|
\begin{tabular}{lcc}
|
|
\toprule
|
|
\textbf{Metric} & \textbf{Full Model} & \textbf{BitDelta} \\
|
|
\midrule
|
|
Model size & 144 GB & 144 + 0.7 GB \\
|
|
User switch latency & N/A (separate instances) & 8.3 ms \\
|
|
Concurrent users (8$\times$ H100) & 1 & 100+ \\
|
|
Inference latency (p50) & 42 ms & 48 ms \\
|
|
Serving cost & \$100/user/mo & \$1/user/mo \\
|
|
\bottomrule
|
|
\end{tabular}
|
|
\caption{Serving performance: BitDelta vs.\ separate model instances.}
|
|
\label{tab:serving}
|
|
\end{table}
|
|
|
|
The 8.3ms user-switch latency is the time to load the BitDelta adapter from cache and apply it to the base model. The 6ms inference overhead (48 vs.\ 42ms) comes from the fused BitDelta kernel.
|
|
|
|
\section{Privacy Analysis}
|
|
|
|
\subsection{Differential Privacy}
|
|
|
|
BitDelta integrates with differentially private SGD~\cite{abadi2016deep} for privacy-sensitive domains:
|
|
|
|
\begin{proposition}[DP-BitDelta Composition]
|
|
If the fine-tuning step satisfies $(\epsilon_{\text{train}}, \delta_{\text{train}})$-DP, and the sign extraction is a post-processing step (non-adaptive), then the resulting BitDelta adapter satisfies $(\epsilon_{\text{train}}, \delta_{\text{train}})$-DP by the post-processing theorem.
|
|
\end{proposition}
|
|
|
|
\subsection{DeltaSoup Privacy Amplification}
|
|
|
|
When deltas from $N$ users are aggregated via trimmed mean, the privacy guarantee improves:
|
|
|
|
\begin{theorem}[DeltaSoup Privacy Amplification]
|
|
If each user's delta satisfies $(\epsilon, \delta)$-DP, then the trimmed mean aggregate with trim ratio $\beta$ satisfies $(\epsilon', \delta')$-DP with:
|
|
\[
|
|
\epsilon' \leq \frac{2\epsilon}{(1-2\beta)N}, \quad \delta' = \delta + e^{-\Omega(N\beta^2)}
|
|
\]
|
|
\end{theorem}
|
|
|
|
\section{Related Work}
|
|
|
|
\textbf{Model compression.} Weight quantization~\cite{dettmers2022gptq}, knowledge distillation~\cite{hinton2015distilling}, and pruning~\cite{frankle2018lottery} reduce model size but apply to the full model, not per-user deltas. BitDelta is orthogonal: it compresses only the \emph{difference} from a shared base.
|
|
|
|
\textbf{Federated learning.} FedAvg~\cite{mcmahan2017federated} aggregates gradients. Byzantine-robust variants~\cite{blanchard2017machine,yin2018byzantine} handle adversarial clients. DeltaSoup differs in operating on compressed deltas (not raw gradients) and producing a single Reference Adapter with on-chain provenance.
|
|
|
|
\textbf{Model merging.} Model Soups~\cite{wortsman2022model} and TIES-Merging~\cite{yadav2023tiesmerging} merge fine-tuned checkpoints. DeltaSoup extends these with Byzantine robustness and on-chain royalty tracking.
|
|
|
|
\textbf{Parameter-efficient fine-tuning.} LoRA~\cite{hu2022lora}, QLoRA~\cite{dettmers2024qlora}, adapter layers~\cite{houlsby2019parameter}. BitDelta achieves lower per-user storage than all of these at a modest quality cost.
|
|
|
|
\section{Conclusion}
|
|
|
|
BitDelta compresses per-user model adaptations to 1 bit per parameter plus a per-tensor scale, achieving $200\times$ storage reduction over full precision. The 1-bit quantization acts as a safety regularizer, reducing jailbreak rates from 21.4\% to 8.6\%. DeltaSoup aggregates individual deltas into community Reference Adapters via Byzantine-robust trimmed mean, tolerating 30\% adversarial contributions. On-chain royalty distribution ensures fair compensation for contributors. Together, BitDelta and DeltaSoup form the unified personalization layer for Zoo's AI ecosystem, enabling millions of users to maintain personalized models at \$1/user/month serving cost.
|
|
|
|
\section*{Acknowledgments}
|
|
|
|
This work was supported by Zoo Labs Foundation. We thank the authors of the original BitDelta paper~\cite{liu2024bitdelta} for their foundational contribution.
|
|
|
|
\bibliographystyle{plain}
|
|
\begin{thebibliography}{35}
|
|
|
|
\bibitem{liu2024bitdelta}
|
|
J.~Liu, N.~Dedhia, S.~Wu, H.~Hu, and C.~De~Sa, ``BitDelta: Your Fine-Tune May Only Be Worth One Bit,'' in \emph{Proc.\ NeurIPS}, 2024.
|
|
|
|
\bibitem{hu2022lora}
|
|
E.~J.~Hu, Y.~Shen, P.~Wallis, Z.~Allen-Zhu, Y.~Li, S.~Wang, L.~Wang, and W.~Chen, ``LoRA: Low-Rank Adaptation of Large Language Models,'' in \emph{Proc.\ ICLR}, 2022.
|
|
|
|
\bibitem{dettmers2024qlora}
|
|
T.~Dettmers, A.~Pagnoni, A.~Holtzman, and L.~Zettlemoyer, ``QLoRA: Efficient Finetuning of Quantized Language Models,'' in \emph{Proc.\ NeurIPS}, 2024.
|
|
|
|
\bibitem{wortsman2022model}
|
|
M.~Wortsman \emph{et al.}, ``Model Soups: Averaging Weights of Multiple Fine-Tuned Models Improves Accuracy Without Increasing Inference Time,'' in \emph{Proc.\ ICML}, 2022.
|
|
|
|
\bibitem{blanchard2017machine}
|
|
P.~Blanchard, E.~M.~El~Mhamdi, R.~Guerraoui, and J.~Stainer, ``Machine Learning with Adversaries: Byzantine Tolerant Gradient Descent,'' in \emph{Proc.\ NeurIPS}, 2017.
|
|
|
|
\bibitem{yin2018byzantine}
|
|
D.~Yin, Y.~Chen, R.~Kannan, and P.~Bartlett, ``Byzantine-Robust Distributed Learning: Towards Optimal Statistical Rates,'' in \emph{Proc.\ ICML}, 2018.
|
|
|
|
\bibitem{mcmahan2017federated}
|
|
H.~B.~McMahan, E.~Moore, D.~Ramage, S.~Hampson, and B.~A.~y~Arcas, ``Communication-Efficient Learning of Deep Networks from Decentralized Data,'' in \emph{Proc.\ AISTATS}, 2017.
|
|
|
|
\bibitem{abadi2016deep}
|
|
M.~Abadi \emph{et al.}, ``Deep Learning with Differential Privacy,'' in \emph{Proc.\ CCS}, 2016.
|
|
|
|
\bibitem{dettmers2022gptq}
|
|
E.~Frantar, S.~Ashkboos, T.~Hoefler, and D.~Alistarh, ``GPTQ: Accurate Post-Training Quantization for Generative Pre-Trained Transformers,'' in \emph{Proc.\ ICLR}, 2023.
|
|
|
|
\bibitem{hinton2015distilling}
|
|
G.~Hinton, O.~Vinyals, and J.~Dean, ``Distilling the Knowledge in a Neural Network,'' \emph{arXiv:1503.02531}, 2015.
|
|
|
|
\bibitem{frankle2018lottery}
|
|
J.~Frankle and M.~Carlin, ``The Lottery Ticket Hypothesis: Finding Sparse, Trainable Neural Networks,'' in \emph{Proc.\ ICLR}, 2019.
|
|
|
|
\bibitem{yadav2023tiesmerging}
|
|
P.~Yadav, D.~Tam, L.~Choshen, C.~Raffel, and M.~Bansal, ``TIES-Merging: Resolving Interference When Merging Models,'' in \emph{Proc.\ NeurIPS}, 2023.
|
|
|
|
\bibitem{houlsby2019parameter}
|
|
N.~Houlsby \emph{et al.}, ``Parameter-Efficient Transfer Learning for NLP,'' in \emph{Proc.\ ICML}, 2019.
|
|
|
|
\bibitem{entriken2018erc721}
|
|
W.~Entriken, D.~Shirley, J.~Evans, and N.~Sachs, ``EIP-721: Non-Fungible Token Standard,'' Ethereum Improvement Proposals, 2018.
|
|
|
|
\bibitem{vaswani2017attention}
|
|
A.~Vaswani \emph{et al.}, ``Attention Is All You Need,'' in \emph{Proc.\ NeurIPS}, 2017.
|
|
|
|
\bibitem{touvron2023llama}
|
|
H.~Touvron \emph{et al.}, ``LLaMA: Open and Efficient Foundation Language Models,'' \emph{arXiv:2302.13971}, 2023.
|
|
|
|
\bibitem{jiang2024mixtral}
|
|
A.~Q.~Jiang \emph{et al.}, ``Mixtral of Experts,'' \emph{arXiv:2401.04088}, 2024.
|
|
|
|
\bibitem{friston2010free}
|
|
K.~Friston, ``The Free-Energy Principle: A Unified Brain Theory?'' \emph{Nature Reviews Neuroscience}, vol.~11, no.~2, pp.~127--138, 2010.
|
|
|
|
\bibitem{schmidhuber2015deep}
|
|
J.~Schmidhuber, ``Deep Learning in Neural Networks: An Overview,'' \emph{Neural Networks}, vol.~61, pp.~85--117, 2015.
|
|
|
|
\bibitem{hinton2006reducing}
|
|
G.~E.~Hinton and R.~R.~Salakhutdinov, ``Reducing the Dimensionality of Data with Neural Networks,'' \emph{Science}, vol.~313, pp.~504--507, 2006.
|
|
|
|
\bibitem{lecun2022path}
|
|
Y.~LeCun, ``A Path Towards Autonomous Machine Intelligence,'' Open Review, version 0.9.2, 2022.
|
|
|
|
\bibitem{kairouz2021advances}
|
|
P.~Kairouz \emph{et al.}, ``Advances and Open Problems in Federated Learning,'' \emph{Foundations and Trends in Machine Learning}, vol.~14, no.~1--2, pp.~1--210, 2021.
|
|
|
|
\bibitem{li2020federated}
|
|
T.~Li, A.~K.~Sahu, A.~Talwalkar, and V.~Smith, ``Federated Learning: Challenges, Methods, and Future Directions,'' \emph{IEEE Signal Processing Magazine}, vol.~37, no.~3, pp.~50--60, 2020.
|
|
|
|
\bibitem{dwork2014algorithmic}
|
|
C.~Dwork and A.~Roth, ``The Algorithmic Foundations of Differential Privacy,'' \emph{Foundations and Trends in Theoretical Computer Science}, vol.~9, no.~3--4, pp.~211--407, 2014.
|
|
|
|
\bibitem{bonawitz2017practical}
|
|
K.~Bonawitz \emph{et al.}, ``Practical Secure Aggregation for Privacy-Preserving Machine Learning,'' in \emph{Proc.\ CCS}, 2017.
|
|
|
|
\end{thebibliography}
|
|
|
|
\end{document}
|