선형 지원 벡터 머신 을 훈련시키는 프로세스를 이해하려고 합니다 . SMV의 속성을 통해 2 차 프로그래밍 솔버를 사용하는 것보다 훨씬 빠르게 최적화 할 수 있지만 학습을 위해 이것이 어떻게 작동하는지 알고 싶습니다.
훈련 데이터
set.seed(2015)
df <- data.frame(X1=c(rnorm(5), rnorm(5)+5), X2=c(rnorm(5), rnorm(5)+3), Y=c(rep(1,5), rep(-1, 5)))
df
X1 X2 Y
1 -1.5454484 0.50127 1
2 -0.5283932 -0.80316 1
3 -1.0867588 0.63644 1
4 -0.0001115 1.14290 1
5 0.3889538 0.06119 1
6 5.5326313 3.68034 -1
7 3.1624283 2.71982 -1
8 5.6505985 3.18633 -1
9 4.3757546 1.78240 -1
10 5.8915550 1.66511 -1
library(ggplot2)
ggplot(df, aes(x=X1, y=X2, color=as.factor(Y)))+geom_point()
최대 마진 초평면 찾기
SVM 에 대한 이 Wikipedia 기사에 따르면 해결해야 할 최대 마진 초평면을 찾으려면
(i = 1, ..., n에 해당)
를 결정하기 위해 샘플 데이터를 R의 QP 솔버 (예 : quadprog )에 '플러그'하는 방법은 무엇입니까?
당신은 이중 문제를 해결해야
@fcop 당신은 정교한 수 있습니까? 이 경우 이중은 무엇입니까? 를 사용하여 어떻게 해결
—
벤
R
합니까? 등