tron优化器的python绑定

pytron的Python项目详细描述


啊!危险!

这是阿尔法质量的软件,仍然相当粗糙的边缘。 特别是错误管理仍然缺乏(这意味着 如果在优化过程中出了问题,就不会看到错误 信息,但只是垃圾)。这些事情正在解决,但是 我们还没到。

http://fa.bianp.net/blog/static/images/2013/comparison_logistic_corr_10.png

主要功能是pytron.minimize:

def minimize(func, grad_hess, x0, args=(), max_iter=1000, tol=1e-6):

    Parameters
    ----------
    func : callable
        func(w, *args) is the evaluation of the function at w, It
        should return a float.
    grad_hess: callable
        returns the gradient and a callable with the hessian times
        an arbitrary vector.
    tol: float
        stopping criterion. XXX TODO. what is the stopping criterion ?

    Returns
    -------
    w : array

停止标准

当它停止时,它就停止了。 达到。

TOdo:添加公差

示例

代码

此软件使用了TRON optimization software(文件Src/Tr.{h,CPP})的C++实现。 从liblinear源(v1.93)分发,它是bsd许可的。 注意,最初的fortran tron实现(可用 here)未打开 源,但不在此项目中使用。

对原始代码的修改是:

  • Do not initialize values to zero, allow arbitrary initializations
  • Modify stopping criterion to comply with scipy.optimize API. Stop whenever gradient is smaller than a given quantity, specified in the gtol argument
  • Return the gradient from TRON::tron (pass by reference)
  • Add tol option to TRON
  • Rename eps to gtol.
  • Use infinity norm as stopping criterion for gradient instead of L2.

待办事项

  • return status from TRON::TRON
  • callback argument

参考文献

如果您使用该软件,请考虑引用下面的一些参考资料。

这一方法在“牛顿法 “有界约束优化问题”,Chih Jen Lin和Jorge J.Moré (http://epubs.siam.org/doi/abs/10.1137/S1052623498345075

在“信任”一文中,还讨论了logistic回归的内容。 logistic回归的区域牛顿法”,林志仁,翁红宝石, Sathiya Keerthi先生(http://dl.acm.org/citation.cfm?id=1390703

网站http://www.mcs.anl.gov/~more/tron/包含对此的引用 实现,尽管到软件的链接似乎是 破碎(2013年5月)。

许可证

此代码是根据BSD许可的条款授权的。参见文件复制 更多细节。

确认

的源代码

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
如何在java中模拟按键?   尽管元素存在,但HtmlUnit中的java ElementNotFoundException   在Java中,长双精度并发写入不是原子的吗?   java如何在另一个对象数组中打印对象的int值?   java在显示或更改视图后执行一些代码   java JFR:读取时发生OutOfMemoryError。jfr文件   java Android助手检查是否购买   java这种设计模式的好处是什么?   Weblogic 10.3中针对托管服务器的java部署问题   java如何获取字符串。在编译时投诉的格式   声明字符串数组时发生java错误   java JPA在多个并行线程中从表中删除时发生死锁   java Android:在按钮动画之后启动活动   java并发与JMS主题在春季   使用Lucene spatial search/DateRangePrefixTree进行java日期范围查询?   java可选接口问题   JavaDbUnit没有在每个方法之后清洗和插入数据库,所以测试不是独立的   java在IAIK PKCS11包装器中一对私钥和证书如何匹配?