cvi_evaluators function

Cluster comparison based on CVIs

Cluster comparison based on CVIs

Create evaluation functions for compare_clusterings().

cvi_evaluators(type = "valid", fuzzy = FALSE, ground.truth = NULL)

Arguments

  • type: A character vector with options supported by cvi().
  • fuzzy: Logical indicating whether to use fuzzy CVIs or not.
  • ground.truth: A vector that can be coerced to integers used for the calculation of external CVIs (passed as b to cvi()).

Returns

A list with two functions: score and pick.

Details

Think of this as a factory for compare_clusterings() that creates functions that can be passed as its score.clus and pick.clus arguments. It is somewhat limited in scope because it depends on the cluster validity indices available in cvi() for scoring and performs majority voting

for picking. They always assume that no errors occurred.

The scoring function takes the CVIs that are to be minimized and "inverts" them by taking their reciprocal so that maximization can be considered uniformly for the purpose of majority voting. Its ellipsis (...) is passed to cvi().

The picking function returns the best configuration if return.objects is FALSE, or a list with the chosen TSClusters object and the corresponding configuration otherwise.

Refer to the examples in compare_clusterings().

Note

To avoid ambiguity, if this function is used, configurations for both fuzzy and crisp clusterings should not be provided in the same call to compare_clusterings(). In such cases the scoring function may fail entirely, e.g. if it was created with type = "valid".

  • Maintainer: Alexis Sarda
  • License: GPL-3
  • Last published: 2024-07-23