Я пытаюсь реализовать кластеризацию k, используя версию apache spark ml версии 2.0.2. После нахождения центра кластера, сталкивайтесь с проблемой в том, как идентификация данных принадлежит той точке кластера. Пожалуйста, помогите мне .. Спасибо заранее. Вы можете найти свой код:K означает кластеризацию библиотеки ml с использованием apache spark
вал tokenFrameprocess = TokenizerProcessor.process («значение», «лексема»)
val stopwordRemover = StopWordsProcessor.process("tokenized", "stopwords")
val stemmingProcess = StemmingProcessor.process("value", "stemmed")
val HashingProcess = HashingTFProcessor.process("stopwords" ,"features")
val pipeline = new Pipeline().setStages(Array(tokenFrameprocess,stopwordRemover,stemmingProcess,HashingProcess))
val finalFrameProcess = pipeline.fit(df)
val finalFramedata = finalFrameProcess.transform(df);
val kmeans = new KMeans().setK(4).setSeed(1L)
val model = kmeans.fit(finalFramedata)
val WSSSE = model.computeCost(finalFramedata)
// Shows the result.
println("Cluster Centers: ")
model.clusterCenters.foreach(println)
@rathika Ответ на ваш вопрос "Столбец прогнозирования обозначает точку кластеров? Я даю значение k как 3, а столбец прогноза имеет значения, равные 0,1,2." Да. Значение столбца прогноза обозначает центр кластера, который принадлежит конкретной точке данных, и начинается с «0». Итак, если вы предоставили 3 кластерных центра, в столбце прогнозирования будет всего три значения, то есть 0,1,2. –