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 (将#修改为@)