Pyspark:基于用户定义metri的交叉验证中的评估

2024-09-23 22:20:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我是Spark的新手。我在Windows上安装了PySpark 2.3.0。我正在处理一个包含3个类的数据集:“正”、“负”、“中性”。在

对于每一个等级,我只想用“正数”和“平均值”来评价每一个等级。在

在以下代码中:

我认为,通过在“多分类评估器”中选择“metricName”为“f1”,根据3个类的平均f1得分来选择最佳参数。。但正如我之前所说的,我只希望选择2个班的平均分。在

from pyspark.ml.tuning import CrossValidator, ParamGridBuilder
from pyspark.ml.classification import LinearSVC
from pyspark.ml.evaluation import MulticlassClassificationEvaluator

LSVC = LinearSVC()
paramGrid = ParamGridBuilder().addGrid(LSVC.maxIter, [10, 100, 1000]).addGrid(LSVC.regParam, [0.01,0.1,10.0,100.0]).build()
crossval = CrossValidator(estimator=LSVC,
                      #estimator=pipeline,
                      estimatorParamMaps=paramGrid,
                      evaluator=MulticlassClassificationEvaluator(metricName="f1"),
                      numFolds=2)

Tags: fromimportmlpysparkf1estimator个类linearsvc