Limited-memory BFGS Optimization

A wrapper built around the libLBFGS optimization library by Naoaki Okazaki. The lbfgs package implements both the Limited-memory Broyden-Fletcher-Goldfarb-Shanno (L-BFGS) and the Orthant-Wise Quasi-Newton Limited-Memory (OWL-QN) optimization algorithms. The L-BFGS algorithm solves the problem of minimizing an objective, given its gradient, by iteratively computing approximations of the inverse Hessian matrix. The OWL-QN algorithm finds the optimum of an objective plus the L1-norm of the problem's parameters. The package offers a fast and memory-efficient implementation of these optimization routines, which is particularly suited for high-dimensional problems.


A wrapper built around the libLBFGS optimization library written by Naoaki Okazaki. The lbfgs package implements both the Limited-memory Broyden-Fletcher-Goldfarb-Shanno (L-BFGS) and the Orthant-Wise Quasi-Newton Limited-Memory (OWL-QN) optimization algorithms. The L-BFGS algorithm solves the problem of minimizing an objective, given its gradient, by iteratively computing approximations of the inverse Hessian matrix. The OWL-QN algorithm finds the optimum of an objective plus the L1-norm of the problem's parameters, and can be used to train log-linear models with L1-regularization. The package offers a fast and memory-efficient implementation of these optimization routines, which is particularly suited for high-dimensional problems. The lbfgs package compares favorably with other optimization packages for R in microbenchmark tests. A vignette is forthcoming.

Installation and Usage

Download the package tarball and build using R commands, or alternatively instally directly from Github using Hadley Wickham's devtools package. The R command is:

library(devtools)
install_github("lbfgs", "AntonioCoppola")

For usage, please refer to the documentation and to the PDF manual.

News

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("lbfgs")

1.2.1 by Antonio Coppola, 4 years ago


Browse source code at https://github.com/cran/lbfgs


Authors: Antonio Coppola [aut, cre, cph] , Brandon Stewart [aut, cph] , Naoaki Okazaki [aut, cph] , David Ardia [ctb, cph] , Dirk Eddelbuettel [ctb, cph] , Katharine Mullen [ctb, cph] , Jorge Nocedal [ctb, cph]


Documentation:   PDF Manual  


Task views: Optimization and Mathematical Programming


GPL (>= 2) license


Imports Rcpp

Linking to Rcpp


Imported by GauPro, LUCIDus, nlmixr, splitfngr.

Suggested by PlackettLuce, ROI.plugin.optimx, optimx, regsem.


See at CRAN