Pho*_*ham 4 k-means apache-spark apache-spark-ml apache-spark-mllib
现在我使用 K-means 进行聚类并遵循本教程和 API。
但我想使用自定义公式来计算距离。那么如何使用 PySpark 在 k-means 中传递自定义距离函数?
通常,使用不同的距离度量没有意义,因为 k-means(与k-medoids不同)算法仅针对欧几里德距离进行了明确定义。
请参阅为什么 k 均值聚类算法仅使用欧几里得距离度量?为解释。
此外,MLlib 算法是在 Scala 中实现的,而 PySpark 仅提供执行 Scala 代码所需的包装器。因此,如果 API 没有重大变化,将自定义指标作为 Python 函数提供在技术上是不可能的。
请注意,从Spark 2.4 开始,有两个内置度量可以与pyspark.ml.clustering.KMeans和一起使用pyspark.ml.clustering.BisectingKMeans。(见DistanceMeasure Param)。
使用风险自负。
| 归档时间: |
|
| 查看次数: |
4465 次 |
| 最近记录: |