When the test changes the winner
Same six models, two ways of splitting the data
A traffic dataset is recorded in sessions: someone streams for an hour, chats for twenty minutes, downloads a file. If the flows of one session land on both sides of the train/test split, the model is tested on traffic it has, in effect, already seen. It looks brilliant, but partly because it remembers the session.
We trained six modern deep time-series models 2,016 times on two public datasets. With the usual split, one model, Informer, led everywhere. Once we kept each recording session on one side only, Informer fell from first to last on the VNAT dataset, losing 15 points of macro-F1, and the runner-up took first place. The reason: 55.7% of VNAT’s flows come from just three recordings. On a dataset whose recordings are spread thin, the same change left the ranking untouched.
Two further lessons. Giving every model a slightly richer description of each moment of a flow (volume and timing per direction, not just packet counts) helped in 323 of 324 comparisons, more than any choice of architecture. And this echoes our earlier finding that a plain Random Forest can beat deep networks on malicious traffic. Before crediting a new model, check how it was tested.