Вы не можете сделать это.
Основная идея, лежащая в основе наборов проверки (и тестирования), состоит в том, что они должны состоять исключительно из невидимых данных; и здесь это не так, поскольку данные, использованные для ваших средних значений, уже были видны во время обучения.
В прошлом было много страшных историй (включая исследовательские работы!) от людей, которые наивно думали, что они могут включать свои наборы валидации / тестирования в процесс выбора их функций, если они не используют их для подгонки своих моделей. Они сильно пострадали. В некоторых случаях см. Мой пост в блоге Как НЕ выполнять выбор функции! ; для простого воспроизводимого примера в Python того, что может go быть неправильным в таком случае (tl; dr: все), см. собственный ответ в Должен ли Выбор функций быть сделан перед разделением Train-Test Split или после?
Вторая ключевая (но часто неявная) идея заключается в том, что ваш набор для проверки / тестирования должен качественно похож на на ваши обучающие данные, т.е. теоретически они должны быть получены из одного и того же источника данных. распределение вероятностей. И, возможно, распределение ваших отдельных образцов не совпадает с распределением их средних значений.