• 问答
  • 技术
  • 实践
  • 资源
有哪些简便好用的解凸优化的工具箱或者包?
问答

比如说现在要求解一个LASSO回归问题,有没有可以直接输入优化的目标式子就能够解出来的工具箱呢?比方说直接输入min(sum((y-Ax)^2)+lambda*nrom(A,1))就能求解出参数A?

zhihu


我简单介绍几个凸优化的工具包:

  1. Welcome to CVXPY 。cvxpy是Python的一个包,例子比较简单,上手很容易,直接可以拿来模仿着求解最优化问题。
  2. Home - CVXOPT 。cvxopt是Python的一个包,安装依赖稍多,上手稍微麻烦一点,不过功能很强大,而且有专门的文档介绍。具体怎么使用可以参考:[量化学堂-策略开发]使用cvxopt包实现马科维茨投资组合优化:以一个股票策略为例
  3. Python scipy.optimize.minimize Examples 。 Scipy是Python科学计算的一个常用包,里面的optimize方法可以求解一些简单的线性优化问题,遇到非线性问题求解比较费劲。
  4. Python Optimization Package 。APM是一个优化求解器。 可以解决线性规划,二次规划,整数规划,非线性优化,动态非线性方程组,多目标优化等问题。 功能比较强大。
  5. Debian Neuroscience Package Repository 。 Python中开发的数值优化框架,它具有简单和统一的OpenOpt语法。 功能也是比较强大。
  6. http://stanford.edu/~boyd/cvx/ .一款用于凸优化的matlab软件
  7. CVXGEN: Code Generation for Convex Optimization 快速求解小型的优化问题。 以最小的努力,将数学问题描述转化为高速求解器。


一分钟学 Trick | 两个深度学习必备画图包

  • 0
  • 0
  • 3181
收藏
暂无评论