Я работаю над проблемой двоичной классификации и использую SparkML, я обучил и оценил свои данные с использованием моделей случайного леса и логистической регрессии, и теперь я хотел проверить, насколько хорошо SVM классифицирует мои данные.
Фрагмент моих тренировочных данных : -
+----------+------+
| spam | count|
+----------+------+
| No|197378|
| Yes| 7652|
+----------+------+
Note:- My dependent variable: 'spam': string (nullable = true)
+-----+------+
|label| count|
+-----+------+
| 0.0|197488|
| 1.0| 7650|
+-----+------+
Note:- label: double (nullable = false)
Обновления к моему вопросу : -
trainingData.select('label').distinct().show()
+-----+
|label|
+-----+
| 0.0|
| 1.0|
+-----+
Итак, я использовал приведенный ниже код для подгонки моих тренировочных данных, используя Линейный SVC : -
pyspark.ml.classification import LinearSVC
lsvc = LinearSVC()
# Fit the model
lsvcModel = lsvc.fit(trainingData)
В моем фрейме данных метка и зависимая переменная имеют только 2 класса, но я получаю сообщение об ошибке, сообщающее, что обнаружено больше классов. Не совсем уверен, что вызывает это исключение.
Любая помощь очень ценится!
Error : -
IllegalArgumentException: u'requirement failed: LinearSVC only supports
binary classification. 3 classes detected in
LinearSVC_4240bb949b9fad486ec0__labelCol'