This class represents the extensible Markov Model. It consists
of a simple data stream clustering algorithm (class "tNN") and
a temporal layer (class "TRACDS").
Create a new object of class "EMM".
Arguments
- threshold
Object of class
"numeric"with the dissimilarity threshold used by the clustering algorithm for assigning a new observation to existing clusters.- measure
Object of class
"character"containing the name of the dissimilarity measure used (seedistin proxy for available measures).- distFun
Specify a function passed on as method to
distin proxy (seedistin proxy). The character string passed on asmeasurewill be used as the measure's name.- centroids
Object of class
"logical"indicating if centroids are used for clusters. IfFALSE, pseudo medians (first observation of a cluster) are used to represent a cluster.- lambda
Object of class
"numeric"specifying the rate for fading.- data
Initial data to build the EMM. This just calls
buildon the new EMM.
Objects from the Class
Objects can be created using the creator function EMM or by
directly calling new("EMM", ...). Most slots for the extended
classes can be used as parameters for EMM.
Methods
- copy
signature(x = "EMM"): Make a copy of the EMM object. Making explicit copies is necessary since the subclasses store information in environments which are not copied for regular assignements.- size
signature(x = "EMM"): Returns the size of the EMM (number of clusters/states).
References
M.H. Dunham, Y. Meng, J. Huang (2004): Extensible Markov Model, In: ICDM '04: Proceedings of the Fourth IEEE International Conference on Data Mining, pp. 371–374.
See also
build,
fade,
merge_clusters,
plot,
prune,
rare_clusters,
rare_transitions,
remove_clusters,
remove_transitions,
remove_selftransitions,
recluster, and
score.
EMM-class
Examples
## load EMMTraffic data
data(EMMTraffic)
## create empty EMM
emm <- EMM(threshold=0.2, measure="eJaccard", lambda=.1)
emm
#> EMM with 0 states/clusters.
#> Measure: eJaccard
#> Threshold: 0.2
#> Centroid: FALSE
#> Lambda: 0.1
## cluster some data
build(emm, EMMTraffic)
emm
#> EMM with 7 states/clusters.
#> Measure: eJaccard
#> Threshold: 0.2
#> Centroid: FALSE
#> Lambda: 0.1
## what clusters were the data points assigned to?
last_clustering(emm)
#> [1] "1" "2" "1" "2" "3" "4" "5" "2" "6" "4" "5" "7"
## plot the clustering as a graph
plot(emm)