Не полагайся на “хитрые” семена случайности в Python!
Python игнорирует знак числа в random.seed, поэтому seed от трех и seed от минус трех дают одинаковые результаты.
Разные seed не обязательно означают разные потоки — Python гарантирует только одно: одинаковый seed → одинаковая последовательность.
Если нужны независимые случайные потоки - создавай отдельные RNG или используй разные числовые диапазоны, а не вариации знака.
import random
rng_train = random.Random(42) # отдельный генератор для train
rng_test = random.Random(99) # отдельный генератор для test
print(rng_train.randint(1, 100))
print(rng_test.randint(1, 100))
https://www.youtube.com/shorts/TLNqDK6qQmU