
364
살아 움직이는 머신러닝 파이프라인 설계
14.3.1
차등 개인 옵티마이저로 학습
옵티마이저 알고리즘은 각 학습 단계에서 그레이디언트에 랜덤 노이즈를 추가하여 수정합니
다. 이렇게 하면 각 개별 데이터 지점을 포함하거나 포함하지 않은 그레이디언트의 업데이트를
비교하고 특정 데이터 지점이 그레이디언트 업데이트에 포함되었는지를 알 수 없습니다. 또한
그레이디언트가 너무 커지지 않도록 자릅니다. 따라서 하나의 학습 예제의 기여가 제한됩니다.
과적합을 방지하는 데에도 도움이 됩니다.
TFP
는
pip
로 설치할 수 있습니다. 이 책을 집필할 당시에는, 텐서플로
1
.
X
를 지원했습니다.
$ pip install tensorflow_privacy
먼저 간단한
tf
.
keras
이진 분류 예제를 살펴보겠습니다.
import
tensorflow
as
tf
model = tf.keras.models.Sequential([
tf.keras.layers.Dense(128, activation=’relu’),
tf.keras.layers.Dense(128, activation=’relu’),
tf.keras.layers.Dense(1, activation=’sigmoid’)
])
차등 개인 옵티마이저를 사용하려면 일반
tf
.
keras
모델보다 추가 하이퍼파라미터를 두 개
(노이즈 승수, ...