Я использую GPR-библиотеку sklearn, но иногда сталкиваюсь с этим надоедливым предупреждением:
ConvergenceWarning: lbfgs failed to converge (status=2):
ABNORMAL_TERMINATION_IN_LNSRCH.
Increase the number of iterations (max_iter) or scale the data as shown in:
https://scikit-learn.org/stable/modules ... ssing.html
_check_optimize_result("lbfgs", opt_res)
Мало того, что я почти не нашел документации по этому предупреждению, max_iter вообще не является параметром в модели GPR sklearn.
Я пытался масштабировать данные, как было предложено, но это не сработало, и, честно говоря, я этого не понял (нужно ли мне также масштабировать выходные данные? Опять же, мало документации).
Увеличение максимального количества итераций в процессе оптимизации имеет смысл, но у sklearn, похоже, нет способа сделать это, и это расстраивает, поскольку они предлагают это в ответ на это предупреждение.
Глядя на исходный код GPR, видно, что именно так sklearn вызывает оптимизатор,
def _constrained_optimization(self, obj_func, initial_theta, bounds):
if self.optimizer == "fmin_l_bfgs_b":
opt_res = scipy.optimize.minimize(
obj_func, initial_theta, method="L-BFGS-B", jac=True,
bounds=bounds)
_check_optimize_result("lbfgs", opt_res)
theta_opt, func_min = opt_res.x, opt_res.fun
elif callable(self.optimizer):
theta_opt, func_min = \
self.optimizer(obj_func, initial_theta, bounds=bounds)
else:
raise ValueError("Unknown optimizer %s." % self.optimizer)
return theta_opt, func_min
где scipy.optimize.minimize() имеет значения по умолчанию
scipy.optimize.minimize(fun, x0, args=(), method='L-BFGS-B', jac=None, bounds=None,
tol=None, callback=None, options={'disp': None, 'maxcor': 10, 'ftol': 2.220446049250313e-09,
'gtol': 1e-05, 'eps': 1e-08, 'maxfun': 15000, 'maxiter': 15000, 'iprint': -1, 'maxls': 20})
согласно документации scipy.
Я хотел бы использовать именно тот оптимизатор, который показан выше в георадаре исходный код, но измените maxiter на большее число. Другими словами, я не хочу менять поведение оптимизатора, кроме изменений, внесенных за счет увеличения максимального количества итераций.
Проблема заключается в том, что другие параметры, такие как obj_func, Initial_theta, границы, устанавливаются в исходном коде GPR и недоступны из объекта GPR.
Проблема заключается в том, что другие параметры, такие как obj_func, Initial_theta, границы, устанавливаются в исходном коде GPR и недоступны из объекта GPR.
Проблема заключается в том, что другие параметры, такие как obj_func, Initial_theta, границы, устанавливаются в исходном коде GPR и недоступны из объекта GPR.
Проблема заключается в том, что другие параметры, такие как obj_func, Initial_theta, границы, устанавливаются в исходном коде GPR и недоступны из объекта GPR.
Проблема заключается в том, что другие параметры, такие как obj_func, Initial_theta, границы, устанавливаются в исходном коде GPR. p>
Так я называю GPR, обратите внимание, что это в основном параметры по умолчанию, за исключением n_restarts_optimizer и ядра.
for kernel in kernels:
gp = gaussian_process.GaussianProcessRegressor(
kernel = kernel,
alpha = 1e-10,
copy_X_train = True,
optimizer = "fmin_l_bfgs_b",
n_restarts_optimizer= 25,
normalize_y = False,
random_state = None)
Подробнее здесь: https://stackoverflow.com/questions/623 ... rocess-reg
Как изменить max_iter в функции оптимизации, используемой регрессией гауссовского процесса sklearn? ⇐ Python
Программы на Python
1736866338
Anonymous
Я использую GPR-библиотеку sklearn, но иногда сталкиваюсь с этим надоедливым предупреждением:
ConvergenceWarning: lbfgs failed to converge (status=2):
ABNORMAL_TERMINATION_IN_LNSRCH.
Increase the number of iterations (max_iter) or scale the data as shown in:
https://scikit-learn.org/stable/modules/preprocessing.html
_check_optimize_result("lbfgs", opt_res)
Мало того, что я почти не нашел документации по этому предупреждению, max_iter вообще не является параметром в модели GPR sklearn.
Я пытался масштабировать данные, как было предложено, но это не сработало, и, честно говоря, я этого не понял (нужно ли мне также масштабировать выходные данные? Опять же, мало документации).
Увеличение максимального количества итераций в процессе оптимизации имеет смысл, но у sklearn, похоже, нет способа сделать это, и это расстраивает, поскольку они предлагают это в ответ на это предупреждение.
Глядя на исходный код GPR, видно, что именно так sklearn вызывает оптимизатор,
def _constrained_optimization(self, obj_func, initial_theta, bounds):
if self.optimizer == "fmin_l_bfgs_b":
opt_res = scipy.optimize.minimize(
obj_func, initial_theta, method="L-BFGS-B", jac=True,
bounds=bounds)
_check_optimize_result("lbfgs", opt_res)
theta_opt, func_min = opt_res.x, opt_res.fun
elif callable(self.optimizer):
theta_opt, func_min = \
self.optimizer(obj_func, initial_theta, bounds=bounds)
else:
raise ValueError("Unknown optimizer %s." % self.optimizer)
return theta_opt, func_min
где scipy.optimize.minimize() имеет значения по умолчанию
scipy.optimize.minimize(fun, x0, args=(), method='L-BFGS-B', jac=None, bounds=None,
tol=None, callback=None, options={'disp': None, 'maxcor': 10, 'ftol': 2.220446049250313e-09,
'gtol': 1e-05, 'eps': 1e-08, 'maxfun': 15000, 'maxiter': 15000, 'iprint': -1, 'maxls': 20})
согласно документации scipy.
Я хотел бы использовать именно тот оптимизатор, который показан выше в георадаре исходный код, [b]но измените maxiter на большее число.[/b] Другими словами, я не хочу менять поведение оптимизатора, кроме изменений, внесенных за счет увеличения максимального количества итераций.
Проблема заключается в том, что другие параметры, такие как obj_func, Initial_theta, границы, устанавливаются в исходном коде GPR и недоступны из объекта GPR.
Проблема заключается в том, что другие параметры, такие как obj_func, Initial_theta, границы, устанавливаются в исходном коде GPR и недоступны из объекта GPR.
Проблема заключается в том, что другие параметры, такие как obj_func, Initial_theta, границы, устанавливаются в исходном коде GPR и недоступны из объекта GPR.
Проблема заключается в том, что другие параметры, такие как obj_func, Initial_theta, границы, устанавливаются в исходном коде GPR и недоступны из объекта GPR.
Проблема заключается в том, что другие параметры, такие как obj_func, Initial_theta, границы, устанавливаются в исходном коде GPR. p>
Так я называю GPR, обратите внимание, что это в основном параметры по умолчанию, за исключением n_restarts_optimizer и ядра.
for kernel in kernels:
gp = gaussian_process.GaussianProcessRegressor(
kernel = kernel,
alpha = 1e-10,
copy_X_train = True,
optimizer = "fmin_l_bfgs_b",
n_restarts_optimizer= 25,
normalize_y = False,
random_state = None)
Подробнее здесь: [url]https://stackoverflow.com/questions/62376164/how-to-change-max-iter-in-optimize-function-used-by-sklearn-gaussian-process-reg[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия