微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

带正约束的最小化返回零参数

如何解决带正约束的最小化返回零参数

我正在使用 scipy.optimize.minimize 来最小化具有 l2 范数约束和对计算参数的非负约束的函数(一些相关链接 12、{{ 3}})。更具体地说,我已经尝试过

con = ({'type': 'ineq','fun': lambda x: x},{'type': 'eq','fun': lambda x: np.dot(x.T,x) - 1})

con = {'type': 'eq',x) - 1}
bounds = [(0.,None)] * n_features

使用方法 SLSQP。如果不使用正约束,算法的准确性很好。然而,当使用正约束时,大多数计算参数 x 变为零并且算法返回低准确度。为了避免这种情况,我尝试了不同的初始化,例如,非负 x0l2 范数等于 1,x0 值接近于零,x0 值接近于1 但没有帮助。任何改进算法功能的建议都非常感谢。

EDIT:可以在 3 中找到一个正在运行的示例。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。