{'fraction_non_alphanumeric': 0.02437325905292479, 'fraction_numerical': 0.009052924791086351, 'mean_word_length': 5.561643835616438, 'pattern_counts': {'":': 0, '<': 2, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
DataMUX: Data Multiplexing for Neural Networks

In this paper, we introduce data multiplexing (Data-MUX), a technique that enables deep neural networks to process multiple inputs simultaneously using a single compact representation. DataMUX demonstrates that neural networks are capable of generating accurate predictions over mixtures of inputs, resulting in increased throughput with minimal extra memory requirements. Our approach uses two key components – 1) a multiplexing layer that performs a ﬁxed linear transformation to each input before combining them to create a ‘mixed’ representation of the same size as a single input, which is then processed by the base network, and 2) a demultiplexing layer that converts the base network’s output back into independent representations before producing predictions for each input. We show the viability of DataMUX for different architectures (Transformers, and to a lesser extent MLPs and CNNs) across six different tasks spanning sentence classiﬁcation, named entity recognition and image classiﬁcation. For instance, DataMUX for Transformers can multiplex up to 20x/40x inputs, achieving 11x/18x increase in throughput with minimal absolute performance drops of < 2% and < 4% respectively on MNLI, a natural language inference task. We also provide a theoretical construction for multiplexing in self-attention networks and analyze the effect of various design elements in DataMUX. 1