python - 在python中找到最优解

标签 python optimization global

我有这个公式:

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

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

最佳答案

你可以使用 NLopt ,它有一些全局优化器,例如直接(在 gohlke 下载)。或者有 scipy 的 basinhopping .另一个不错的解决方案是 NOMAD ,一个非常好的黑盒优化器。它也有一个 Python 界面,但不是那么用户友好和直观。

您可以在 this answer 中找到有关局部和全局优化的其他提示或 this answer .

关于python - 在python中找到最优解,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51528778/

相关文章:

javascript:关于全局变量的短信?

创建其构造函数引用全局变量的类的全局实例时,c++程序崩溃

oop - 在 Python 模块中强制执行方法顺序

python - atexit:如何手动触发它?

python - 如何使用 ix 索引到 pandas multiindex

optimization - 神经网络优化

python - 将多个元组添加到列表

c++ - 为什么编译器可以比普通函数更好地优化 lambda?

c++ - 空派生优化

javascript - “PHP 开发人员的 JavaScript -> 内置 API -> 全局对象”: cannot reproduce code in browser