【问题标题】:How to hide `delta_grad == 0.0` warning in scipy.optimize.minimize?如何在 scipy.optimize.minimize 中隐藏“delta_grad == 0.0”警告?
【发布时间】:2021-02-11 15:23:53
【问题描述】:

我有一个使用 scipy.optimize.minimize 执行数百个优化的循环。不幸的是,我不断收到这个烦人的警告:

C:\Users\Leonidas\Anaconda3\lib\site-packages\scipy\optimize\_hessian_update_strategy.py:186: UserWarning: delta_grad == 0.0. Check if the approximated function is linear. If the function is linear better results can be obtained by defining the Hessian as zero instead of using quasi-Newton approximations.
  'approximations.', UserWarning)

因为我正在运行数百次优化,所以这个警告在循环过程中会出现几十次,它只会使控制台变得混乱,并掩盖我程序的其余输出。有没有办法

  1. 检查此警告是否已显示,如果已显示则不再显示,或者
  2. 完全禁止警告?

【问题讨论】:

    标签: python scipy warnings scipy-optimize scipy-optimize-minimize


    【解决方案1】:

    如果你想抑制特定的警告,你可以在脚本的开头添加以下内容:

    import warnings
    warnings.filterwarnings("ignore", message="delta_grad == 0.0. Check if the approximated function is linear.")
    

    【讨论】:

    • 谢谢! +50!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多