NEWS
MagmaClustR 1.2.1 (2024-06-28)
Major
- Add a precondition_hp() function and a whole pipeline to provide data_driven initialisation and pre-explore the HP space before actual MT/MO GP training.
- Add support for multiple latent processes in the multi-output convolution kernel (
convolution_kernel()): the covariance is now a sum over Q latent processes, enabling richer (rank-Q) cross-output correlation structures. Initialise the corresponding hyper-parameters with hp(..., n_latent = Q).
- Change the way prior means work in the MagmaClust framework. They are now optimised during Mstep using a closed-form optimum.
- Update the simu_db() (and add an alias simu_data()) function to handle multi-output scenarios.
- Update the plot_db() function to handle multi-output scenarios, and 2D inputs.
- Add the 'train_shared_gp()' function to provide more robust initialisation of hyperparameters.
Minor
- Fix the deprecation issues of tidyselect() through .data$
- The model assumption 'common_hp' are now named 'shared_hp' instead for clarity.
- The mean process is simulated via generate_mean_process(), whereas task data are derived from generate_single_task_data(). simu_indiv_se() has been removed from the package.
- Add the 'plot_clusters()' function to display clustering results directly after training
- Add an argument to display testing data directly within plotting functions
- Fix the plot_gif() function to avoid saving multiple temporary png files
- Add a minimal implementation of Laplace Matching for binary classification
- Fix a bug when plotting in 2D mean process predictions
- Fix a few bugs when using pred_*() functions with argument data = NULL
- Simplify and improve visualisation with plot_db() and export it for users
- Replace the deprecated
aes_string function with modern syntax of aes
- Fix the wrong definition of GPs mixtures by drawing a cluster instead of averaging
- Fix a bug when using pred_magmaclust() with no data argument.
- Add convolution_kernel() function to generate the convolution process kernel
- kern_to_cov() now natively supports multi-output scenarios. The convolution kernel has been added to the list of documented and supported kernels.
- Added a safety check before returning the covariance matrix. If the matrix contains NaN or Inf values, an explicit warning is now triggered.
- Update hp() to natively support multi-output scenarios.
- Add extensive logic to initialize HPs specifically for the convolution kernel.
- Modernize the internal logic for building the HPs tables in hp().
- In hp(), the chained if/else logic of standard string kernels has been replaced by a 'switch' statement.
- In hp(), 'list_hp' argument has been removed, as custom parameter generation is now safely handled via the 'hp_config' workflow.
- Add format_to_legacy() to reformat from new to old conventions for datasets' column names.
Major
- Make 'get_full_cov = T' the default option when using pred_magmaclust()
Minor
- Remove the useless messages when using samples=T in plotting functions
- Create an error when users try train_magmaclust(nb_cluster = 1)
- Make 'samples = T' the default plot when using prediction functions
- Add mention of the 'hp()' function to the documentation
- Fix Warning message when plotting clusters with exact same posterior probability
- Display plots for the generic (no data provided) prediction that are condistent with classic ones
- Disable the symmetry check when generating posterior samples for predictions
MagmaClustR 1.2.0 (2024-03-21)
Major
- Add new functions sample_gp() and sample_magmaclust() to sample from the posterior predictions of GPs, Magma, and MagmaClust
- Propose a new visualisation based on posterior samples instead of Credible Intervals for both plot_gp() and plot_magmaclust()
- Allow pred_*() functions to be used without providing the 'data' argument by returning the mean processes (or priors) as generic predictions.
Minor
- Add an option to generate multiple curves from sample_gp()
- Fix a bug when the 'Reference' column is present when using plot_gp()
- Fix the '\docType{package}' bug in roxygen2
- Add 'plot_magma()' as a duplicated name for 'plot_gp()'
- Remove the useless 'Reference' column in the prediction of the mean processes
- Fix a bug when both 'pred' and 'samples' are provided in plot_samples()
MagmaClustR 1.1.2 (2023-05-23)
Minor
- Fix a bug occurring in pred_magmaclust() for a 'trained_model' with hp_i=FALSE
- Simplify the use of hyperposterior() and hyperposterior_clust() by providing a 'trained_model' argument.
MagmaClustR 1.1.1 (2023-01-17)
Minor
- Fix an issue regarding deprecation of .data in 'tidyselect'
- Fix a unit testing issue
MagmaClustR 1.1.0 (2022-11-01)
Major
- Provide 4 vignettes explaining in detail how the different features of MagmaClustR work on practical examples.
- Implement expand_grid_inputs() to help create customised n-dimensional input
grids on which to evaluate the GP.
- Implement regularize_data() to project a dataset on a specific input grid,
(possibly to control the size of the resulting covariance matrices and the associated running time).
- Add an internal 'Reference' column to datasets, to provide an adequate identifier for multidimensional inputs.
- Implement a new version of simu_db() to generate more realistic 2-D datasets.
Minor
- Round inputs to 6 significant digits to avoid numerical errors.
- Generalise the creation of a grid in any dimension when 'grid_inputs' is not
specified in the prediction functions.
MagmaClustR 1.0.1 (2022-08-29)
Major
*Remove the package 'optimr' dependency and switch to base 'optim()' function
*Increase convergence tolerance in 'optim()', which was too slow
Minor
*Fix the warnings about the absolute value function in the Cpp code
*Remove error message in 'train_magmaclust()' when common_hp_k = FALSE
*Change the default intervals for hyper-parameters in 'simu_db()'
*Automatically remove rows with missing data
*Change position of the 'grid_inputs' argument in prediction functions
*Remove the internal functions from the index documentation
*Fix 'ID' in hyperposterior() and hyperposterior_clust() when not character
MagmaClustR 1.0.0 (2022-06-06)
Initial release