С несбалансированным набором данных у вас ограниченные возможности.Если вы обучите нейронную сеть всему набору данных, она достигнет точности 99,9%, просто прогнозируя ложные срабатывания.Вам необходимо каким-то образом справиться с этим дисбалансом, например, отбрасывать (обширные ряды) ложноположительных выборок или взвесить функцию потерь для учета дисбаланса.С таким экстремальным дисбалансом вам, вероятно, потребуется применить оба варианта (наряду с регуляризацией, чтобы предотвратить перерасход оставшихся данных).
Что касается типа используемой сети, вы можете попробовать просто базовый MLP(Multi-Layer Perceptron), по крайней мере, в качестве базовой линии - нет смысла строить сложную архитектуру с большим количеством параметров для обучения и очень ограниченным набором данных.
На самом деле, вам, вероятно, будет лучшеиспользование алгоритма поверхностного обучения, такого как ускоренные деревья или наивный байесовский алгоритм, или получение большего объема данных для использования нейронной сети.Если новые данные, скорее всего, останутся несбалансированными, вам потребуется очень большое количество дополнительных данных.