0

Я могу построить модель Spark Kmeans с использованием набора учебных данных. Я бы хотел, чтобы моя модель адаптировалась к новым данным, поэтому Spark StreamingKmeans кажется мне отличным.Инициализация модели StreamingKmeans со статическими данными обучения

Однако, похоже, что StreamingKmeans от Spark можно обучить только потоку данных. Невозможно инициализировать его с помощью модели kmeans по умолчанию, обученной некоторым статическим обучающим данным, а затем с течением времени обучать модель новым потоковым данным.

Существует ли способ инициализации модели KMeans в Spark с использованием статических данных обучения? И с течением времени обучать их новым данным с помощью StreamingKmeans?

ответ

1

Согласно документации, StreamingKMeans имеет метод setInitialCenters(centers: Array[Vector], weights: Array[Double]). И статически обученный KMeansModel имеет метод clusterCenters(): Array[Vector]. Таким образом, вы можете инициализировать StreamingKMeans с помощью clusterCenters() предварительно подготовленной модели KMeansModel.

0

Если у вас все еще есть доступ к данным статической тренировки, вы можете отправить их StreamingKMeans в DStream; в противном случае, я не думаю, что есть другой способ инициализировать объект StreamingKMeans.

Смежные вопросы