vpca_clustering {mlmts} | R Documentation |
Performs the fuzzy clustering algorithm of He and Tan (2020).
Description
vpca_clustering
performs the fuzzy clustering algorithm proposed
by He and Tan (2018).
Usage
vpca_clustering(
X,
k,
m,
var_rate = 0.9,
max_it = 1000,
tol = 1e-05,
crisp = FALSE
)
Arguments
X |
A list of MTS (numerical matrices). |
k |
The number of clusters. |
m |
The fuzziness coefficient (a real number greater than one). |
var_rate |
Rate of retained variability concerning the dimensionality-reduced MTS samples (default is 0.90). |
max_it |
The maximum number of iterations (default is 1000). |
tol |
The tolerance (default is 1e-5). |
crisp |
Logical. If |
Details
This function executes the fuzzy clustering procedure proposed by
. The algorithm represents each MTS in the original collection by means of
a dimensionality-reduced MTS constructed through variable-based principal
component analysis (VPCA). Then, fuzzy K
-means-type procedure is considered
for the set of dimensionalityu-reduced samples. A spatial weighted matrix
dissimilarity is considered to compute the distances between the reduced
MTS and the centroids.
Value
A list with three elements:
-
U
. Ifcrisp = FALSE
(default), the membership matrix. Otherwise, a vector defining the corresponding crisp partition. -
centroids
. Ifcrisp = FALSE
(default), a list containing the series playing the role of centroids, which are dimensionality-reduced averaged MTS. Otherwise, this element is not returned. -
iterations
. The number of iterations before the algorithm stopped.
Author(s)
Ángel López-Oriona, José A. Vilar
References
He H, Tan Y (2018). “Unsupervised classification of multivariate time series using VPCA and fuzzy clustering with spatial weighted matrix distance.” IEEE transactions on cybernetics, 50(3), 1096–1105.
See Also
Examples
fuzzy_clustering <- vpca_clustering(AtrialFibrillation$data, k = 3, m = 1.5)
# Executing the fuzzy clustering algorithm in the dataset AtrialFibrillation
# by considering 3 clusters and a value of 1.5 for the fuziness parameter
fuzzy_clustering$U # The membership matrix
crisp_clustering <- vpca_clustering(AtrialFibrillation$data, k = 3, m = 1.5, crisp = TRUE)
# The same as before, but we are interested in the corresponding crisp partition
crisp_clustering$U # The crisp partition
crisp_clustering$iterations # The number of iterations before the algorithm
# stopped