Unsupervised Models
v0.1.7Clustering and dimensionality reduction: KMeans with elbow and silhouette analysis, DBSCAN, hierarchical clustering, Gaussian mixtures, PCA with explained variance and TSNE.
Quick Start
cluster.py
python
import synaptix as sx
df = sx.load_dataset("iris")
X = df.drop(columns="species")
# KMeans with built-in diagnostics
km = sx.unsupervised.KMeans(n_clusters=3, random_state=42)
km.fit(X)
print("Inertia:", km.inertia_)
metrics = sx.metrics.clustering_metrics(X, km.labels_)
print(metrics) # silhouette, Calinski-Harabasz, Davies-Bouldin
km.plot_elbow(max_k=10) # elbow curve renders inlineAPI Reference
KMeans
KMeans(n_clusters=8, random_state=None)
DBSCAN
DBSCAN(eps=0.5, min_samples=5)
HierarchicalClustering
HierarchicalClustering(n_clusters=3, linkage='ward')
GaussianMixture
GaussianMixture(n_components=3)
PCA
PCA(n_components=None)
transformed DataFrame
TSNE
TSNE(n_components=2, perplexity=30)