공부/R & Python
11-2. 서포트벡터머신 2 (Support Vector Machine)
드인
2020. 3. 4. 13:33
11-2. 서포트벡터머신 2 (Support Vector Machine)
1) 서포트벡터머신 (kernel 함수)
- 커널이란?

- 서포트벡터머신을 수행하기 위한 패키지 : e1071
- 오분류율 교차표(confusion matrix) 생성을 위한 패키지 : caret
library (e1071)
install.packages("caret")
library(caret)
- Iris 데이터 (학습데이터와 검증데이터의 분할)
set.seed(1000)
N=nrow(iris)
tr.idx=sample(1:N, size=N*2/3, replace=FALSE)
데이터분할 (학습데이터 2/3, 검증데이터 1/3)
y=iris[,5]
train=iris[tr.idx,]
test=iris[-tr.idx,]
train(100개의 데이터)
test(50개의 데이터)
2) kernel 함수에 따른 결과비교
- iris 데이터 (학습데이터와 검증데이터의 분할)
m1<-svm(Species~., data = train)
summary(m1)
m2<-svm(Species~., data = train,kernel="polynomial")
summary(m2)
m3<-svm(Species~., data = train,kernel="sigmoid")
summary(m3)
m1-kernel : radial
m2-kernel : polynomial
m3-kernel : sigmoid
- 서포트벡터머신 결과(kernel-radial basis function)



