我使用的是吡火花(Spark2.4.4),我试图为ALS推荐模型使用coldStartStrategy选项,但这对我不起作用。我尝试过这样做(来自2.4.0文档:https://spark.apache.org/docs/2.4.0/api/python/pyspark.ml.html#pyspark.ml.recommendation.ALS):
from pyspark.mllib.recommendation import ALS
als = ALS(maxIter=5, regParam=0.01,coldStartStrategy="drop")这是我所犯的错误:
TypeError: object()不接受参数
我还尝试创建一个空对象,使用如下所示的setter:
als = ALS()
als.setColdStartStrategy('drop')这是我所犯的错误:
AttributeError:'ALS‘对象没有属性'setColdStartStrategy’
ALS构造器不采用任何参数,ALS类只采用三种方法:coldStartStrategy mor、train和trainImplicit,没有人接受ALS参数。即使是ALS类的实例,我也导航到她的所有方法,而且也没有人接受这个参数。我还浏览了2.2.0火花文档(https://spark.apache.org/docs/2.2.0/api/python/pyspark.ml.html#pyspark.ml.recommendation.ALS),这也是同样的问题。
我还试着训练模型,然后设置测试阶段的coldStartStrategy参数。
model = ALS.train(rdd_train, rank, numIterations)但我也不能像这里提到的那样创建setParams方法:https://spark.apache.org/docs/latest/api/python/_modules/pyspark/ml/recommendation.html
发布于 2020-04-14 21:36:13
这个问题是由输入引起的,从pyspark.mllib导入的ALS模型似乎与从pyspark.ml导入的ALS不同,通过更改输入,我修复了这个错误。结论:我只是改变了:
from pyspark.mllib.recommendation import ALS至
from pyspark.ml.recommendation import ALShttps://stackoverflow.com/questions/61216848
复制相似问题