Как выполнить классификацию нескольких классов, используя 'svm' пакета e1071 в R - программирование
Подтвердить что ты не робот

Как выполнить классификацию нескольких классов, используя 'svm' пакета e1071 в R

Я хочу выполнить классификацию нескольких классов, используя функцию svm пакета e1071. Но из того, что я узнал из документации svm, он может выполнять только двоичную классификацию. Документ vignettes сообщает об этом для классификации по нескольким классам: "Чтобы разрешить многоклассовое классифицирование, libsvm использует метод" один против одного ", устанавливая все двоичные подклассы и находим правильный класс механизмом голосования". < ш > Что я до сих пор не понимаю, так это, если мы можем выполнить классификацию с несколькими классами с svm of e1071 в R? Если да, пожалуйста, объясните, как мы можем сделать это с помощью набора данных iris.

4b9b3361

Ответ 1

Набор диафрагмы содержит три метки класса: "Iris setosa" , "Iris virginica" и "Iris versicolor" . Чтобы использовать сбалансированную стратегию классификации "один против одного" с помощью svm, вы можете обучить три бинарных классификатора:

Первый набор обучения классификатора содержит только экземпляры "Iris setosa" и "Iris virginica" . Второй набор обучения классификатора содержит только экземпляры "Iris setosa" и "Iris versicolor" . Третий обучающий набор классификаторов - я думаю, теперь вы уже знаете - содержит только "Iris virginica" и "Iris versicolor" экземпляры.

Чтобы классифицировать неизвестный экземпляр, вы применяете все три классификатора. Простая стратегия голосования могла бы выбрать наиболее часто назначаемую метку класса, более сложная может также учитывать оценки доверия svm для каждого назначенного ярлыка класса.

Изменить (этот принцип работает из коробки с svm):

# install.packages( 'e1071' )
library( 'e1071' )
data( iris )
model <- svm( iris$Species~., iris )
res <- predict( model, newdata=iris )

Ответ 2

R-документ гласит, что "для многоклассовой классификации с k уровнями k > 2 libsvm использует метод" один против одного ", в котором обучаются бинарные классификаторы k (k-1)/2, соответствующий класс определяется схемой голосования.