J'ai couru un modèle k-meansSpark K-sortiras d'origine Centre/Centroïdes Cluster avec Normalization
val kmeans = new KMeans().setK(k).setSeed(1L)
val model = kmeans.fit(train_dataset)
puis extraire les centres de cluster (centroïdes)
var clusterCenters:Seq[(Double,Double,Double,Double,Double,Double,Double,Double,Double)] = Seq()
for(e <- model.clusterCenters){
clusterCenters = clusterCenters :+ ((e(0)),e(1),e(2),e(3),e(4),e(5),e(6),e(7),e(8))
}
import sc.implicits._
var centroidsDF = clusterCenters.toDF()
pour écrire de nouveau les résultats Je crée un DataFrame des centres de cluster résultants.
Maintenant, j'ai le problème que j'ai normalisé les données au préalable pour améliorer les résultats de la mise en grappe. Comment puis-je obtenir les centroïdes dans leur forme originale dénormalisée?
Comment le savez-vous amélioré les résultats? –