Apache spark 支持向量机的Spark-MLLib交叉验证
我使用Spark MLLib对标记点的RDD进行SVM分类。 我想交叉验证它。哪种方法最好? 有人有示例代码吗?不过,我找到了依赖于数据帧的CrossValidator类Apache spark 支持向量机的Spark-MLLib交叉验证,apache-spark,svm,cross-validation,apache-spark-mllib,Apache Spark,Svm,Cross Validation,Apache Spark Mllib,我使用Spark MLLib对标记点的RDD进行SVM分类。 我想交叉验证它。哪种方法最好? 有人有示例代码吗?不过,我找到了依赖于数据帧的CrossValidator类 我的目标是获得F分数 你可以找到一个完整的例子,虽然不是SVM而是逻辑回归 最好的方法是使用RDD.toDF()方法将RDD更改为数据帧。一个多月来,我一直面临着同样的问题,直到我意识到我必须使用ML API而不是MLlib API(更多关于两者之间的差异)。在这种情况下,新API的SVM为: 从pyspark.ml.clas
我的目标是获得F分数 你可以找到一个完整的例子,虽然不是SVM而是逻辑回归
最好的方法是使用
RDD.toDF()
方法将RDD更改为数据帧。一个多月来,我一直面临着同样的问题,直到我意识到我必须使用ML API而不是MLlib API(更多关于两者之间的差异)。在这种情况下,新API的SVM为:
从pyspark.ml.classification导入RandomForestClassifier,LinearSVC
从pyspark.ml.tuning导入CrossValidator、ParamGridBuilder、CrossValidator模型
从pyspark.ml.evaluation导入MultiClassificationEvaluator
#支持向量机
crossval=CrossValidator(估计器=LinearSVC(),
estimatorParamMaps=ParamGridBuilder().build(),
evaluator=MultiClassificationEvaluator(metricName='f1'),
numFolds=5,
平行度=4)
#随机森林
crossval=CrossValidator(估计器=RandomForestClassifier(),
estimatorParamMaps=ParamGridBuilder().build(),
evaluator=MultiClassificationEvaluator(metricName='f1'),
numFolds=5,
平行度=4)
在这两种情况下,您都可以调整模型:
cross\u模型:CrossValidatorModel=crossval.fit
非常感谢。在该示例中,LogisticRegression对象被实例化并插入到管道中。但是,它找不到任何支持向量机来实例化适合管道的支持向量机。使用哪个类?