gpt4 book ai didi

python - 使用 SCIPY.OPTIMIZE.FMIN_CG 提取威 bool 分布参数

转载 作者:太空宇宙 更新时间:2023-11-03 13:49:59 25 4
gpt4 key购买 nike

我正在尝试提取满足特定均值和方差的威 bool 分布参数(形状“k”和尺度“lambda”)。在此示例中,均值为 4,方​​差为 8。这是一个 2 个未知数和 2 个方程式的问题。

由于此算法适用于 Excel 2010 的 GRG 求解器,我确信它与我构建问题的方式有关,或者可能与我正在使用的库有关。我对优化库不太熟悉,所以请让我知道错误在哪里。

脚本如下:

from scipy.optimize import fmin_cg
import math

def weibull_mu(k, lmda): #Formula can be found on wikipedia
return lmda*math.gamma(1+1/k)
def weibull_var(k, lmda): #Formula can be found on wikipedia
return lmda**2*math.gamma(1+2/k)-weibull_mu(k, lmda)**2

def min_function(arggs):
actual_mean = 4 # specific to this example
actual_var = 8 # specific to this example
k = arggs[0]
lmda = arggs[1]
output = [weibull_mu(k, lmda)-(var_wei)]
output.append(weibull_var(k, lmda)-(actual_var)**2-(actual_mean)**2)
return output

print fmin(min_function, [1,1])

这个脚本给我以下错误:

[...]
File "C:\Program Files\Python27\lib\site-packages\scipy\optimize\optimize.py", line 278, in fmin
fsim[0] = func(x0)
ValueError: setting an array element with a sequence.

最佳答案

据我所知,min_function 返回一个多维列表,但是 fminfmin_cg如果我没记错的话,确实期望目标函数返回一个标量。

如果您要搜索双方程问题的根,我想您最好应用 root代替功能。据我所知,scipy 没有为矢量函数提供任何通用优化器。

关于python - 使用 SCIPY.OPTIMIZE.FMIN_CG 提取威 bool 分布参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11245869/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com