Releases: haziqj/iprior
Releases · haziqj/iprior
v0.7.2
v0.7.1
- Modification to centering of SE and polynomial kernels.
- Added option
train.sampandtest.samptokernL()andiprior()to easily split training and test samples for cross-validation. - Added a function to perform k-fold cross validation experiments for I-prior models.
- Fixed minor bug in
iprior_em_closed()which caused lambda to expand together with the number of iterations. - Fixed incorrect calculation of polynomial kernel.
- Removed all legacy functions.
- Updated vignette.
- Added vignette for cross-validation function.
iprior2
- This udpate provides a complete redesign of the internals of the package. There are more kernels supported, new estimation methods, and plots are done using the
ggplot2package. - Enhanced the methods and calculations for the linear (canonical) kernel, the fractional Brownian motion kernel, and the Pearson kernel.
- Added support for the squared exponential kernel and the
d-degree polynomial kernel with offsetc. - Newly redesigned kernel loader function
kernL(), while still keeping support for the legacy.kernL()function - although there are plans to phase out this in favour of the new one. - There is now a
summarymethod foripriorKernel2objects. - The legacy kernels
Canonical,FBMandPearsonare now referred to aslinear,fbmandpearson, but there is backward compatability with the old references. parsmoption for interactions has been removed - it's hardly likely that this is ever useful.rootkernoption for Gaussian process regression has been removed. Should use specialised GPR software for this and keep this package for I-priors only.orderoption to specify higher order terms has been removed in favour of polynomial kernels.- The package now supports the following estimation methods:
- Direct minimisation of the marginal deviance;
- EM algorithm (efficient closed-form version and the "regular" version);
- Combination of direct and EM methods;
- A fixed estimation method to obtain the posterior regression function without estimating any hyperparameters; and
- The Nystrom kernel approximation method.
- Parallel restarts is supported via
control = list(restarts = TRUE). By default it will use the maximum number of available cores to fit the model in parallel from different random initial values. - New plot functions added:
plot_fitted(),plot_predict(), andplot_iter(). - Updated documentation throughout.
- New vignette added which gives an overview of regression modelling using I-priors.
v0.6.5
- Updated documentation.
- Edit FBM kernel. Corrected a mistake. Initially for multivariate
xthenH(x) = H1(x[1]) + ... + H_p(x[p]). This is only true for Canonical kernel. Now correctly applies the FBM kernel using the norm function on each multivariatex_i. - Added support for Gaussian process regression with the currently available kernels.
- Fixed memory leak in FBM kernel function. Also made Canonical kernel function more efficient.
- While linear I-prior models can perform classification tasks, one cannot obtain estimation of probabilities for the classes. This is the motivation behind the [
iprobit] (https://github.com/haziqjamil/iprobit) package. By using a probit link, the I-prior methodology is extended to categorical responses. - Most functions written here can be used by I-prior probit models in the
iprobitpackage. Added support for categorical response kernel loading. - Exported some helper functions like
is.ipriorKernel()andis.ipriorMod().
v0.6.4
- Fixed "override warning" bug in kernel loader when multiple Hurst coefficients used.
- Updated documentation for
iprior()andkernL(). - Trimmed down the size of
ipriorModobjects by not savingPsql,Sl,Hlam.mat, andVarY.inv. Although these are no longer stored within anipriorModobject, they can still be retrieved via the functionsHlam()andvary(). - Fixed a bug with
ipriorOptim()orfbmOptim()whereby standard errors could not be calculated. - Added new features to
fbmOptim(): Ability to specify an interval to search for, and also the maximum number of iterations for the initial EM step.
fbmOptim
- Changed some code to match JSS paper.
- Commented on the line where Pearson kernels are always used for factor-type variables. Should this always be the case?
- Added control option to set intercept at a fixed value.
- Added (hidden) options for
str()when printingipriorKernelobjects. - Added
fbmOptim()function to find optimum Hurst coefficient for fitting FBM I-prior models. - Added new way to specify Hurst coefficient using the syntax
kernel = "FBM,<value>". - Wrote vignette manual guide which details how to calculate the matrices required for the closed form estimate of
lambda. - Removed the T2 statistic from the
summary()output for now.
first-cran
This is the first CRAN-ready release. It is also obtainable directly from CRAN.