按此处所述使用iforest:https://github.com/titicaca/spark-iforest
但是model.save()抛出异常。

遵循提到的git页面上“ Python API”部分下提到的代码段。

从pyspark.ml.feature导入VectorAssembler
导入操作系统
导入临时文件
从pyspark_iforest.ml.iforest导入*

col_1:整数
col_2:整数
col_3:整数

汇编程序= VectorAssembler(inputCols = in_cols,outputCol =“ features”)
功能化= assembler.transform(df)

iforest = IForest(污染= 0.5,maxDepth = 2)
型号= iforest.fit(df)

model.save(“ model_path”)
例外:
scala.NotImplementedError:默认jsonEncode仅支持字符串,向量和矩阵。 org.apache.spark.ml.param.Param必须覆盖java.lang.Double的jsonEncode。

下面是执行“ model.transform(df)”后得到的输出数据帧。 model.save()应该能够保存模型文件。
col_1:整数
col_2:整数
col_3:整数
特点:udt
异常得分:双
预测:双

最佳答案

我已经解决了这个问题。这是由不正确的参数类型引起的。您可以在master分支中签出最新代码,然后重试。

关于machine-learning - 无法使用pyspark保存pyspark iforest模型,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56791931/

10-10 07:18