在python中找到最佳解决方案

时间:2018-07-25 22:57:43

标签: python optimization global

我有这个公式:

1-e ^(log(0.5)*(x / beta)^ alpha)

带有alpha和beta的变量是我必须找到的变量。 x是一堆图像(我的数据),我可以将该公式的输出与来自用户测试的基本事实进行比较。基本上,我可以生成一个损失函数,将其最小化。为了找到最佳的alpha和beta,我尝试使用张量流,但是梯度下降和其他优化器似乎失败了,因为该函数不是凸函数(我尝试了不同的初始条件)。我可以使用python中的全局优化工具来解决此问题吗?

1 个答案:

答案 0 :(得分:1)

您可以使用NLopt,它具有一些全局优化器,例如直接(从gohlke下载)。还是有Scipy的basinhopping。另一个不错的解决方案是NOMAD,这是一个非常好的黑匣子优化器。它也有一个Python界面,但并不友好且直观。