微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

scipy 最小化器和方程的问题

如何解决scipy 最小化器和方程的问题

我正在尝试使用 sklearn 最小化器最小化一个简单的方程,但奇怪的是,最小化器似乎甚至没有尝试将非常糟糕的结果发回给我。

该方程有两个不同的变量,我想对其进行优化以使公式最小化,这是我使用的代码

from scipy.stats import poisson
import scipy.optimize

def objective_function(guess):
    x = guess[0]
    y = guess[1]
    return poisson.pmf(1,x) * poisson.pmf(2,y) - 1/9.4 + poisson.pmf(1,x) * poisson.pmf(3,y) - 1/14

initialGuess = [0.0,0.0]
scipy.optimize.minimize(objective_function,initialGuess)

这是我从最小化器中猜测的结果

 fun: -0.1778115501519757
 hess_inv: array([[1,0],[0,1]])
      jac: array([0.,0.])
  message: 'Optimization terminated successfully.'
     nfev: 3
      nit: 0
     njev: 1
   status: 0
  success: True
        x: array([0.,0.])

站在我这边,我可以清楚地看到它甚至不是最佳答案,例如 [1,1.5] 会返回我 -0.03

我对 scipy 的优化器有什么遗漏吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。