Skip to content

Latest commit

 

History

History
138 lines (93 loc) · 6.45 KB

NEWS.md

File metadata and controls

138 lines (93 loc) · 6.45 KB

v0.7.4

  • Small update to fix CRAN issues.

v0.7.2

  • Updated get_kern_matrix() accessor function.
  • Fixed bug in delta method conversion of standard errors in direct optimisation.
  • Updated references and README.

v0.7.1

  • Modification to centering of SE and polynomial kernels.
  • Added option train.samp and test.samp to kernL() and iprior() 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.

v0.7.0

  • 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 offset c.
  • 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 for ipriorKernel2 objects.
  • The legacy kernels Canonical, FBM and Pearson are now referred to as linear, fbm and pearson, 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:
    1. Direct minimisation of the marginal deviance;
    2. EM algorithm (efficient closed-form version and the "regular" version);
    3. Combination of direct and EM methods;
    4. A fixed estimation method to obtain the posterior regression function without estimating any hyperparameters; and
    5. 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(), and plot_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 x then H(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 multivariate x_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() and is.ipriorMod().

v0.6.4

  • Fixed "override warning" bug in kernel loader when multiple Hurst coefficients used.
  • Updated documentation for iprior() and kernL().
  • Trimmed down the size of ipriorMod objects by not saving Psql, Sl, Hlam.mat, and VarY.inv. Although these are no longer stored within an ipriorMod object, they can still be retrieved via the functions Hlam() and vary().
  • Fixed a bug with ipriorOptim() or fbmOptim() 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.

v0.6.3

  • 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 printing ipriorKernel 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.

v0.6.2

  • 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 the stats package prior to R v3.3.0.

v0.6.1

  • Several bug fixes and cleanups makes this a CRAN-ready release.

v0.6

  • Added documentation for the package.

v0.5.1

  • Added multi-stage model fitting via kernL().

v0.5

  • Massive improvement to the EM engine which brings about speed improvements.
  • Added a plotting feature.

v0.4.7

  • Bug fixes.

v0.4.6

  • Added support for Fractional Brownian Motion kernel (i.e. smoothing models).

v0.4.5

  • 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.

v0.4.4

  • More bug fixes.

v0.4.3

  • Fixed an error in the predict() functionality.

v0.4.2

  • Added progress feedback reporting feature for the EM algorithm.

v0.4.1

  • Improved Pearson kernel generation, but still requires tweaking.

v0.4

  • Added support for Pearson kernels (i.e. regression with categorical variables)

v0.3

  • Major bug fixes.

v0.2

  • Multiple scale parameters supported.

v0.1

  • First useful release.
  • Only centred canonical kernel and a single scale parameter able to be used.