1. A computer-implemented data compression apparatus comprising: a processor configured to act as an encoder, wherein the encoder is configured to receive an input data item and to compress the data item into an encoding comprising a plurality of numerical values, where the numerical values are grouped at least according to whether they relate to content of the input data item or style of the input data item; a memory configured to store the encoding; and wherein the encoder has been trained using: a plurality of groups of training data items grouped according to the content and where training data items within individual ones of the groups vary with respect to the style, and a training objective which takes into account the groups.