Interface IArt2aClustering
- All Known Implementing Classes:
Art2aDoubleClustering
,Art2aFloatClustering
public interface IArt2aClustering
Interface for implementing float and double Art-2a clustering.
-
Method Summary
Modifier and TypeMethodDescriptiongetClusterResult
(boolean anIsClusteringResultExported, int aSeedValue) Starts an Art-2A clustering algorithm.int[]
Since the Art-2a algorithm randomly selects any input vector, the input vectors must first be randomized.void
Initialise the cluster matrices.
-
Method Details
-
initializeMatrices
void initializeMatrices()Initialise the cluster matrices. -
getRandomizeVectorIndices
int[] getRandomizeVectorIndices()Since the Art-2a algorithm randomly selects any input vector, the input vectors must first be randomized. The input vectors/fingerprints are randomized so that all input vectors can be clustered by random selection. Here, the Fisher-Yates method is used to randomize the inputs.- Returns:
- an array with vector indices in a random order
-
getClusterResult
IArt2aClusteringResult getClusterResult(boolean anIsClusteringResultExported, int aSeedValue) throws ConvergenceFailedException Starts an Art-2A clustering algorithm. The clustering process begins by randomly selecting an input vector/fingerprint from the data matrix. After normalizing the first input vector, it is assigned to the first cluster. For all other subsequent input vectors, they also undergo certain normalization steps. If there is sufficient similarity to an existing cluster, they are assigned to that cluster. Otherwise, a new cluster is formed, and the input is added to it. Null vectors are not clustered.- Parameters:
anIsClusteringResultExported
- If the parameter == true, all information about the clustering is exported to 2 text files.The first exported text file is a detailed log of the clustering process and the intermediate results and the second file is a rough overview of the final result.aSeedValue
- user-defined seed value to randomize input vectors.- Returns:
- IArt2aClusteringResult
- Throws:
ConvergenceFailedException
- is thrown, when convergence fails.
-