Python MLLib KMeans算法-maxIterations定义

Python MLLib KMeans算法-maxIterations定义,python,k-means,apache-spark-mllib,Python,K Means,Apache Spark Mllib,我第一次在Python中使用MLlib,我正在努力完成一项简单的任务:我需要为KMean算法定义一些maxIterations。而在Scala中,它工作得很好: val kmeans = new KMeans kmeans.setK(K) kmeans.setMaxIterations(maxNumIters) Python的相同方法不会: kmeans = KMeans().setK(K).setMaxIterations(maxNumIters) 我得到了一个错误: AttributeE

我第一次在Python中使用
MLlib
,我正在努力完成一项简单的任务:我需要为
KMean
算法定义一些
maxIterations
。而在Scala中,它工作得很好:

val kmeans = new KMeans
kmeans.setK(K)
kmeans.setMaxIterations(maxNumIters)
Python的相同方法不会:

kmeans = KMeans().setK(K).setMaxIterations(maxNumIters)
我得到了一个错误:

AttributeError:'KMeans'对象没有属性'setMaxIterations'

我在文档中找不到(可能是我的错),但基本上,我的问题是:如何定义
KMeans
算法的
MaxIterations

我找到了一种方法:

kmeans = KMeans().setK(K).setMaxIter(maxNumIters)
顺便说一句,注意细节,我可以在下面的命令中找到一些有用的信息,让我看到它不是
setMaxIterations
,而是
setMaxIter

kmeans = KMeans()
print(kmeans.explainParams())
说明:

featuresCol: features column name. (default: features)
initMode: The initialization algorithm. This can be either "random" to choose random points as initial cluster centers, or "k-means||" to use a parallel variant of k-means++ (default: k-means||)
initSteps: The number of steps for k-means|| initialization mode. Must be > 0. (default: 2)
k: The number of clusters to create. Must be > 1. (default: 2)
maxIter: max number of iterations (>= 0). (default: 20)
predictionCol: prediction column name. (default: prediction)
seed: random seed. (default: -7649703878154674547)
tol: the convergence tolerance for iterative algorithms (>= 0). (default: 0.0001)
我找到了一个方法:

kmeans = KMeans().setK(K).setMaxIter(maxNumIters)
顺便说一句,注意细节,我可以在下面的命令中找到一些有用的信息,让我看到它不是
setMaxIterations
,而是
setMaxIter

kmeans = KMeans()
print(kmeans.explainParams())
说明:

featuresCol: features column name. (default: features)
initMode: The initialization algorithm. This can be either "random" to choose random points as initial cluster centers, or "k-means||" to use a parallel variant of k-means++ (default: k-means||)
initSteps: The number of steps for k-means|| initialization mode. Must be > 0. (default: 2)
k: The number of clusters to create. Must be > 1. (default: 2)
maxIter: max number of iterations (>= 0). (default: 20)
predictionCol: prediction column name. (default: prediction)
seed: random seed. (default: -7649703878154674547)
tol: the convergence tolerance for iterative algorithms (>= 0). (default: 0.0001)

您可以使用以下方法创建kmeans模型:-

model = KMeans.train(sc.parallelize(data), maxIterations=10)

其中数据是您的培训数据。有关更多参数,请参见

您可以使用以下方法制作kmeans模型:-

model = KMeans.train(sc.parallelize(data), maxIterations=10)

其中数据是您的培训数据。有关更多参数,请参见

我认为应该在KMeans中使用“maxIterations”参数,而不是“setMaxIterations”。谢谢,@n1tk肯定这是一种可能的方法-在火车上。我在寻找用这些值进行实例化的可能性。我认为您应该在KMeans中使用“maxIterations”参数,而不是“setMaxIterations”。谢谢,@n1tk肯定这是一种可能的方法-在火车上。不过,我在寻找用这些值进行实例化的可能性。