This is an efficient Rcpp implementation of the glmnet model for exponentially distributed response variables.
In the proposal for the GSoC project for standard errors 2017, the following 7 deliverables are included:
- Procedures to compute the following: the negative log-likelihood of exponential distribution, the gradient of the negative log-likelihood of exponential distribution, the proximal gradient function of the elastic net regularization, the negative log-likelihood of gamma distribution (thereby extending the use of the method to the entire gamma family of distributions), the gradient of the negative log-likelihood of gamma distribution.
- Procedures to perform optimization of GLM-EXP/EN given λ and α.
- Procedures to perform model selection for λ and α .
- Compare the results of GLM-EXP/EN with vanilla GLM-EXP, i.e., to find out how much the EN provides.
- Test results of speed and accuracy of the new procedure compared with the H2O implementation.
- Implementation with the risk and performance measure functions in PerformanceAnalytics.
- Use our implementation method above, modified as needed, to allow use of nse methods in PerformanceAnalytics.
Of the 7 proposed deliverables, the first 5 have been completed. See the GitHub repo https://github.com/chenx26/glmnetRcpp for the completed package.
For the last two deliverables, preliminary results have been implemented for sample mean and Sharpe ratio and the performances of our new method have been satisfactory. See section 2.4 and 2.5 of the vignette at https://github.com/chenx26/glmnetRcpp/blob/master/vignettes/glmnetRcpp_vignette.pdf. I expect to complete these deliverables during September2017.
Sys.setenv( "PKG_CXXFLAGS"="-std=c++14" )
libary(devtools)
install_github("chenx26/glmnetRcpp")
See the Vignette folder for timings and accuracy