Flatten — слой «выпрямления» тензора: многомерный вход разворачивается в одномерный вектор построчно (data_format='channels_last' по умолчанию). Вход формы (H, W, C) превращается в вектор длиной H × W × C. Batch-размерность сохраняется.
Не имеет обучаемых параметров. Применяется перед Dense-слоями, которые ожидают 1D-вход. В современных архитектурах часто заменяется на GlobalAveragePooling2D — тот даёт значительно меньше параметров и лучше обобщает на новые данные.