KMeans
public class KMeans
K-Means Clustering
-
Method for initialization.
Declaration
Swift
var initializer: String -
Seed for initializing the pseudo-random number generator.
Declaration
Swift
var seed: Int64 -
Maximum number of iterations of the k-means algorithm to run.
Declaration
Swift
var maximumIterationCount: Int -
The number of clusters to form as well as the number of centroids to generate.
Declaration
Swift
var clusterCount: Int -
Cluster centers which data is assigned to.
Declaration
Swift
public var centroids: Tensor<Float> -
Inertia is the sum of square distances of samples to their closest cluster center.
Declaration
Swift
public var inertia: Tensor<Float> -
Predicted cluster for training data.
Declaration
Swift
public var labels: Tensor<Int32> -
Creates a Kmeans cluster.
Declaration
Swift
public init( clusterCount: Int = 2, maximumIterationCount: Int = 300, initializer: String = "kmeans++", seed: Int64 = 0 )Parameters
clusterCountThe number of clusters to form as well as the number of centroids to generate, default to
2.maximumIterationCountMaximum number of iterations of the k-means algorithm to run, default to
300.initializerSelect the initialization method for centroids.
kmeans++,randommethods for initialization, default tokmeans++.seedUsed to initialize a pseudo-random number generator, default to
0. -
Returns the index of centroid having minimum euclidean distance with data.
Declaration
Swift
internal func nearest(centroids: Tensor<Float>, data: Tensor<Float>) -> Tensor<Int32>Parameters
centroidsCentroids with shape
[1, feature count].dataData tensor of shape
[sample count, feature count].Return Value
Index of minimum euclidean distance centroid.
-
Heuristic Initialization of centroids.
Declaration
Swift
internal func kmeansPlusPlus(_ data: Tensor<Float>)Parameters
dataData with shape
[sample count, feature count]. -
Random Initialization of centroids.
Declaration
Swift
internal func randomInitializer(_ data: Tensor<Float>)Parameters
dataData with shape
[sample count, feature count]. -
Fit a k-means cluster.
Declaration
Swift
public func fit(data: Tensor<Float>)Parameters
dataInput data with shape
[sample count, feature count]. -
Returns the prediced cluster labels.
Declaration
Swift
public func prediction(for data: Tensor<Float>) -> Tensor<Int32>Parameters
dataInput data with shape
[sample count, feature count].Return Value
Prediction for input data.
-
Returns fit and prediced cluster labels.
Declaration
Swift
public func fitAndPrediction(for data: Tensor<Float>) -> Tensor<Int32>Parameters
dataInput data with shape
[sample count, feature count].Return Value
Predicted prediction for input data.
-
Returns Transform input to a cluster-distance space.
Declaration
Swift
public func transformation(for data: Tensor<Float>) -> Tensor<Float>Parameters
dataInput data with shape
[sample count, feature count].Return Value
Transformed input to a cluster-distance space.
-
Returns fit and Transform input to a cluster-distance space.
Declaration
Swift
public func fitAndTransformation(for data: Tensor<Float>) -> Tensor<Float>Parameters
dataInput data with shape
[sample count, feature count].Return Value
Transformed data to a cluster-distance space.
-
Returns the sum of square distances of samples to their closest cluster center.
Declaration
Swift
public func score() -> Tensor<Float>Return Value
Sum of square distances of samples to their closest cluster center.
KMeans Class Reference