Дифференциальная конфиденциальность представляет собой основу для измерения гарантий конфиденциальности, предоставляемых алгоритмом, и может быть выражена с использованием значений ε (эпсилон) и δ (дельта). Из этих двух ε важнее и более чувствительна к выбору гиперпараметров. Грубо говоря, они означают следующее:
- ε дает потолок того, насколько вероятность определенного результата может увеличиться за счет включения (или удаления) одного обучающего примера. Обычно вы хотите, чтобы это была небольшая константа (менее 10 или для более строгих гарантий конфиденциальности, менее 1). Однако это только верхняя граница, и большое значение эпсилон может по-прежнему означать хорошую практическую конфиденциальность.
- δ ограничивает вероятность произвольного изменения поведения модели. Обычно вы можете установить очень маленькое число (1e-7 или около того) без ущерба для полезности. Эмпирическое правило состоит в том, чтобы установить его меньше обратного размера обучающих данных.
Взаимосвязь между гиперпараметрами обучения и результирующей конфиденциальностью с точки зрения (ε, δ) сложна, и ее сложно указать явно. Наш текущий рекомендуемый подход приведен в нижней части страницы «Начало работы» и включает в себя поиск максимального множителя шума, который можно использовать, сохраняя разумную полезность, а затем масштабирование множителя шума и количества микропакетов. TensorFlow Privacy предоставляет инструмент compute_dp_sgd_privacy
для вычисления (ε, δ) на основе множителя шума σ, количества предпринятых шагов обучения и доли входных данных, потребляемых на каждом шаге. Степень конфиденциальности увеличивается с увеличением множителя шума σ и уменьшается по мере того, как данные используются для обучения. Как правило, чтобы достичь эпсилон не более 10,0, нам нужно установить множитель шума примерно от 0,3 до 0,5, в зависимости от размера набора данных и количества эпох. См. руководство по конфиденциальности классификации , чтобы увидеть подход.
Подробнее см. в оригинальной статье DP-SGD .
Вы можете использовать compute_dp_sgd_privacy
, чтобы узнать эпсилон с фиксированным значением дельты для вашей модели [../tutorials/classification_privacy.ipynb]:
-
q
: коэффициент выборки — вероятность того, что отдельная точка обучения будет включена в мини-пакет (batch_size/number_of_examples
). -
noise_multiplier
: число с плавающей запятой, определяющее количество шума, добавляемого во время тренировки. Как правило, чем больше шума, тем лучше конфиденциальность и ниже полезность. -
steps
: количество предпринятых глобальных шагов.
Подробное изложение теории вычисления эпсилон и дельта доступно на сайте Дифференциальная конфиденциальность выборочного гауссовского механизма .