我正在尝试了解训练线性支持向量机的过程。我意识到,与使用二次编程求解器相比,SMV的属性可以更快地对其进行优化,但是出于学习目的,我希望了解其工作原理。
训练数据
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吗?在这种情况下,对偶是什么?我该如何解决
—
2015年
R
?等