  The dichotomy between the challenging nature of obtaining annotations for
activities, and the more straightforward nature of data collection from
wearables, has resulted in significant interest in the development of
techniques that utilize large quantities of unlabeled data for learning
representations. Contrastive Predictive Coding (CPC) is one such method,
learning effective representations by leveraging properties of time-series data
to setup a contrastive future timestep prediction task. In this work, we
propose enhancements to CPC, by systematically investigating the encoder
architecture, the aggregator network, and the future timestep prediction,
resulting in a fully convolutional architecture, thereby improving
parallelizability. Across sensor positions and activities, our method shows
substantial improvements on four of six target datasets, demonstrating its
ability to empower a wide range of application scenarios. Further, in the
presence of very limited labeled data, our technique significantly outperforms
both supervised and self-supervised baselines, positively impacting situations
where collecting only a few seconds of labeled data may be possible. This is
promising, as CPC does not require specialized data transformations or
reconstructions for learning effective representations.
