  In this paper we propose a sequential learning framework for Domain
Generalization (DG), the problem of training a model that is robust to domain
shift by design. Various DG approaches have been proposed with different
motivating intuitions, but they typically optimize for a single step of domain
generalization -- training on one set of domains and generalizing to one other.
Our sequential learning is inspired by the idea lifelong learning, where
accumulated experience means that learning the $n^{th}$ thing becomes easier
than the $1^{st}$ thing. In DG this means encountering a sequence of domains
and at each step training to maximise performance on the next domain. The
performance at domain $n$ then depends on the previous $n-1$ learning problems.
Thus backpropagating through the sequence means optimizing performance not just
for the next domain, but all following domains. Training on all such sequences
of domains provides dramatically more `practice' for a base DG learner compared
to existing approaches, thus improving performance on a true testing domain.
This strategy can be instantiated for different base DG algorithms, but we
focus on its application to the recently proposed Meta-Learning Domain
generalization (MLDG). We show that for MLDG it leads to a simple to implement
and fast algorithm that provides consistent performance improvement on a
variety of DG benchmarks.
