Почему GaussianProcessRegressor дает разные решения после каждого запуска?
Я работаю над кодом Python, чтобы прогнозировать данные из обучающего набора, предоставленного для соответствия GaussianProcessRegressor
. Каждый раз, когда я запускаю код, он дает разные предсказанные значения для одних и тех же данных тестирования. Я хотел бы знать причину такого поведения, а также способы предотвращения этого.
1 ответ
Реализации GP по своей сути содержат случайный характер для оптимизации модели.
Для теоретического введения вы можете прочитать главы 2 и 6 отсюда.
С точки зрения кодирования, sklearn предоставляет random_state
параметр, чтобы получить воспроизводимые результаты при нескольких вызовах функций.
Для GaussianProcessRegressor вы можете указать его через:
model = GaussianProcessRegressor(random_state=42)