Plug-in for Neo4j containing user-defined procedures to perform Spectral Clustering through a single procedure or as individual procedures (Similarity Graph, Laplacian Eigendecomposed Graph, KMeans). Additional procedures available for evaluation with Average Silhouette Score and Adjusted Rand Index, visualization of matrices into String and saving them to CSV.
return simkit.initSimKit('bolt://localhost:7687', 'neo4j', '123412345')
return simkit.nodePropertyToGraph({
label: "Iris",
distance_measure: "euclidean",
graph_type: "full",
parameter: 7,
remove_column: "index,target"
})
return simkit.nodePropertyEigen({
label: "affinity_full_7_Iris",
laplacian_type: "sym",
number_of_eigenvectors: 3
})
return simkit.kMeans({
label: "eigen_sym_3_affinity_full_7_Iris",
number_of_centroids: 3,
number_of_iterations: 100,
distance_measure: "euclidean",
original_set: "Iris",
overlook: "target,sepal_length,sepal_width,petal_length,petal_width",
overlook_original: "target",
silhouette: false
})
return simkit.adjustedRandIndex({
label: "Iris",
true_labels: "target"
})
return simkit.spectralClustering({
label: "Iris",
is_feature_based: true,
distance_measure: "euclidean",
graph_type: "full",
parameter: 7,
remove_columns: "index,target",
laplacian_type: "sym",
number_of_eigenvectors: 3,
number_of_iterations: 100,
distance_measure_kmean: "euclidean",
target_column: "target",
silhouette: false,
seed: 42
})
return simkit.getMatrix("affinity_full_7_Iris","adjacency","/path/to/folder")
- Renamed main. to simkit.
- added initSimkit as initialisation function to remove hardcoded login creds
- Changed test Cases to enable compilation on all devices