카테고리 없음

[아르 자형] R에서 e1071 패키지의 'svm'을 사용하여 다중 클래스 분류를 수행하는 방법

행복을전해요 2021. 1. 23. 06:02

홍채 데이터 세트에는 "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 )
-------------------

R 문서에 따르면 "k 레벨 k> 2의 다중 클래스 분류의 경우 libsvm은 k (k-1) / 2 이진 분류 기가 훈련되는 'one-against-one'접근 방식을 사용합니다. 적절한 클래스가 발견됩니다. 투표 방식으로. "



출처
https://stackoverflow.com/questions/22009871