  Single domain generalization (SDG) aims to train a robust model against
unknown target domain shifts using data from a single source domain. Data
augmentation has been proven an effective approach to SDG. However, the utility
of standard augmentations, such as translate, or invert, has not been fully
exploited in SDG; practically, these augmentations are used as a part of a data
preprocessing procedure. Although it is intuitive to use many such
augmentations to boost the robustness of a model to out-of-distribution domain
shifts, we lack a principled approach to harvest the benefit brought from
multiple these augmentations. Here, we conceptualize standard data
augmentations with learnable parameters as semantics transformations that can
manipulate certain semantics of a sample, such as the geometry or color of an
image. Then, we propose Adversarial learning with Semantics Transformations
(AdvST) that augments the source domain data with semantics transformations and
learns a robust model with the augmented data. We theoretically show that AdvST
essentially optimizes a distributionally robust optimization objective defined
on a set of semantics distributions induced by the parameters of semantics
transformations. We demonstrate that AdvST can produce samples that expand the
coverage on target domain data. Compared with the state-of-the-art methods,
AdvST, despite being a simple method, is surprisingly competitive and achieves
the best average SDG performance on the Digits, PACS, and DomainNet datasets.
Our code is available at https://github.com/gtzheng/AdvST.
