{'fraction_non_alphanumeric': 0.020223152022315203, 'fraction_numerical': 0.000697350069735007, 'mean_word_length': 5.552511415525114, 'pattern_counts': {'":': 0, '<': 0, '<?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}}
Deinterleaving Markov processes: The finite-memory switch case

We study the problem of deinterleaving a set of finite-memory (Markov) processes over disjoint finite alphabets, which have been randomly interleaved by a finite-memory switch, extending previous results obtained for the case of a memoryless switch [1]. The deinterleaver has access to a sample of the resulting interleaved process, but no knowledge of the number or structure of the Markov processes, or of the switch. We study conditions for uniqueness of the interleaved representation of a process, showing that certain switch configurations can cause ambiguities in the representation, in addition to those caused by memoryless component processes, which were known in the memoryless switch case. We show that a deinterleaving scheme based on minimizing a penalized maximum-likelihood cost function is strongly consistent also in the finite-memory switch case, in the sense of reconstructing, almost surely as the observed sequence length tends to infinity, a set of component and switch Markov processes compatible with the original interleaved process. Furthermore, under certain conditions on the structure of the switch, we show that the scheme recovers all possible interleaved representations of the original process. Experimental results are presented demonstrating that the proposed scheme performs well in practice, even for relatively short input samples.