trait Clusterer extends AnyRef
The Clusterer
trait provides a common framework for several clustering
algorithms.
- Alphabetic
- By Inheritance
- Clusterer
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Abstract Value Members
-
abstract
def
centroids(): MatrixD
Return the centroids (a centroid is the mean of points in a cluster).
Return the centroids (a centroid is the mean of points in a cluster). Should only be called after 'cluster ()'.
-
abstract
def
classify(y: VectorD): Int
Given a new point/vector y, determine which cluster it belongs to.
Given a new point/vector y, determine which cluster it belongs to.
- y
the vector to classify
-
abstract
def
cluster(): Array[Int]
Given a set of points/vectors, put them in clusters, returning the cluster assignment vector.
Given a set of points/vectors, put them in clusters, returning the cluster assignment vector. A basic goal is to minimize the sum of the distances between points within each cluster.
-
abstract
def
csize(): VectorI
Return the sizes (number of points within) of the clusters.
Return the sizes (number of points within) of the clusters. Should only be called after 'cluster ()'.
Concrete Value Members
-
def
distance(u: VectorD, v: VectorD): Double
Compute a distance metric (e.g., distance squared) between vectors/points 'u' and 'v'.
Compute a distance metric (e.g., distance squared) between vectors/points 'u' and 'v'. Override this methods to use a different metric, e.g., 'norm' - the Euclidean distance, 2-norm 'norm1' - the Manhattan distance, 1-norm
- u
the first vector/point
- v
the second vector/point
-
def
getName(i: Int): String
Get the name of the i-th cluster.
-
def
name_(n: Array[String]): Unit
Set the names for the clusters.
Set the names for the clusters.
- n
the array of names
-
def
sse(x: MatrixD): Double
Compute the sum of squared errors within the clusters, where error is indicated by e.g., the distance from a point to its centroid.