  There are applications that may require removing the trace of a sample from
the system, e.g., a user requests their data to be deleted, or corrupted data
is discovered. Simply removing a sample from storage units does not necessarily
remove its entire trace since downstream machine learning models may store some
information about the samples used to train them. A sample can be perfectly
unlearned if we retrain all models that used it from scratch with that sample
removed from their training dataset. When multiple such unlearning requests are
expected to be served, unlearning by retraining becomes prohibitively
expensive. Ensemble learning enables the training data to be split into smaller
disjoint shards that are assigned to non-communicating weak learners. Each
shard is used to produce a weak model. These models are then aggregated to
produce the final central model. This setup introduces an inherent trade-off
between performance and unlearning cost, as reducing the shard size reduces the
unlearning cost but may cause degradation in performance. In this paper, we
propose a coded learning protocol where we utilize linear encoders to encode
the training data into shards prior to the learning phase. We also present the
corresponding unlearning protocol and show that it satisfies the perfect
unlearning criterion. Our experimental results show that the proposed coded
machine unlearning provides a better performance versus unlearning cost
trade-off compared to the uncoded baseline.
