采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
/** 通过K-Means模型对用户进行分群*/ val kms = new KMeansModel() //kms.setK(rfm_scaler,2,11) val prediction = kms.kmsCluster(rfm_scaler,4)
老师好,这里通过手肘法获取k值是通过运行kms.setK(rfm_scaler,2,11),然后人工观察运行结果得出K值填入的,实际项目如何自动获取到手肘法的K值呢?
补充一下,通过数组获得最佳的k值后,如何将这个k值传递给模型呢?通常是写到hdfs的一个文件里,然后模型从这个文件读取k值。
非常感谢!
同学你好,通常是把这些计算出来的SSE放到一个数组里,然后求这个数组的最小值,即最小的SSE,即可获得最佳的k值。scala数组有自带的min函数。祝学习愉快!
登录后可查看更多问答,登录/注册
大数据主流技术,数据挖掘核心算法,用户画像完整知识轻松掌握
817 12
317 10
859 8
757 7
185 6