Функция Predict.svm в пакете e1071 R - PullRequest
0 голосов
/ 28 ноября 2011

Я использую функцию svm в пакете e1071 из R. Используя функцию svm, я могу получить точность 74% для своих данных, но когда я пытаюсь использовать функцию прогнозирования для тестового набора данных, он возвращает вседанные в одной из двух категорий и показывает 0 в другой.Вот как выглядит код

test <- read.table(file.choose(), header=T)
pred <- predict(modelb, test)
summary(pred)
0   1 
101   0 

1 Ответ

1 голос
/ 21 ноября 2012

Одна из возможностей состоит в том, что ваш обучающий набор данных не сбалансирован.

Допустим, у вас есть 100 выборок в классе 0 и 1 выборка в классе 1. В некоторых случаях наилучшее решение дается путемкаждый новый пример в классе 0.

Несколько решений включают в себя:

  1. работа с сбалансированными наборами данных
  2. назначение различных весов классам.Я использую пакет kernlab, но я думаю, что код не так уж отличается, и при вычислении модели должна быть опция class.weight.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...