- Small update to fix CRAN issues.
- Updated
get_kern_matrix()
accessor function. - Fixed bug in delta method conversion of standard errors in direct optimisation.
- Updated references and README.
- Modification to centering of SE and polynomial kernels.
- Added option
train.samp
andtest.samp
tokernL()
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.
- 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
ggplot2
package. - 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
summary
method foripriorKernel2
objects. - The legacy kernels
Canonical
,FBM
andPearson
are now referred to aslinear
,fbm
andpearson
, but there is backward compatability with the old references. parsm
option for interactions has been removed - it's hardly likely that this is ever useful.rootkern
option for Gaussian process regression has been removed. Should use specialised GPR software for this and keep this package for I-priors only.order
option 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.
- Updated documentation.
- Edit FBM kernel. Corrected a mistake. Initially for multivariate
x
thenH(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
iprobit
package. Added support for categorical response kernel loading. - Exported some helper functions like
is.ipriorKernel()
andis.ipriorMod()
.
- Fixed "override warning" bug in kernel loader when multiple Hurst coefficients used.
- Updated documentation for
iprior()
andkernL()
. - Trimmed down the size of
ipriorMod
objects by not savingPsql
,Sl
,Hlam.mat
, andVarY.inv
. Although these are no longer stored within anipriorMod
object, 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.
- 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 printingipriorKernel
objects. - 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.
- Fix for the installation error (#26) on old R releases (prior to 3.3.0). This error was caused by the generic S3 method
sigma()
not being available from thestats
package prior to R v3.3.0.
- Several bug fixes and cleanups makes this a CRAN-ready release.
- Added documentation for the package.
- Added multi-stage model fitting via
kernL()
.
- Massive improvement to the EM engine which brings about speed improvements.
- Added a plotting feature.
- Bug fixes.
- Added support for Fractional Brownian Motion kernel (i.e. smoothing models).
- Added the 'predicted log-likelihood feature' in the EM reporting.
- WARNING: The I-prior package is currently not optimised for large datasets yet. You might encounter debilitating slowness for
n > 1000
. This is mainly due to the matrix multiplication and data storing process when the EM initialises. See issue #20.
- More bug fixes.
- Fixed an error in the
predict()
functionality.
- Added progress feedback reporting feature for the EM algorithm.
- Improved Pearson kernel generation, but still requires tweaking.
- Added support for Pearson kernels (i.e. regression with categorical variables)
- Major bug fixes.
- Multiple scale parameters supported.
- First useful release.
- Only centred canonical kernel and a single scale parameter able to be used.