【发布时间】:2016-06-08 10:58:07
【问题描述】:
我正在使用scipy.optimize.minimize 的 COBYLA 方法来查找分类分布的参数矩阵。我需要施加约束,每个参数都大于零,并且参数矩阵的行之和是一列。
我不清楚如何在scipy.minimize 中实现这一点,因为检查了约束的非负性而不是真实性。如果我只是将数组作为约束传递,则最小化会引发异常。
有人知道如何实施这些约束吗?
【问题讨论】:
-
我实验室的一位成员提出了一个技巧,将最后一列参数固定为一个,参数由输出的 softmax 给出。这消除了对我提到的约束的需要。不过,我认为这个问题的答案对其他人有用。
-
这个建议不是很清楚,你能提供更多细节吗?
标签: python numpy machine-learning scipy mathematical-optimization