Monday, July 4, 2016

SVM演算法於python的使用

svm

前言

在很久以前,我是做演算法的,我记得,我最后一个接触的演算法就是SVM。 但那时只到听过这个演算法而已。 几年后,竟然有机会接触到演算法,竟然还是SVM。这过程真有趣。 以前总是想实现算法,现在python实在太方便了,lib呼叫就什么事情都解决了。

这也是当初我学Golang,最后转回python的原因。python的lib太强大了。

也感谢,聪明又美丽的北一女学妹,给我以下的blog,加速我的学习。

http://yourgene.pixnet.net/blog/post/115169530

SVM用法

from sklearn import svm
X = [[0, 0], [1, 1],[2, 2]]
y = [0, 1, 2]
clf = svm.SVC()
clf.fit(X, y)
print clf.predict([[5., 5.]])

X為多維的training data,y為label。

One-Class SVM

One-Class

http://scikit-learn.org/stable/autoexamples/svm/plotoneclass.html

What's the meaning of nu

http://qiita.com/SE96UoC5AfUt7uY/items/88006646179adf68cb95

One-Class SVM,异常判定。 有的时候,我们有大量资料,我们只想知道,我们现在的资料是否为异常。 我们可以用以下的方式,实现。

from sklearn import svm
X = [[0, 0], [1, 1],[2, 2]]
y = [0, 1, 2]
clf = svm.OneClassSVM(nu=0.1, kernel="rbf", gamma=0.1)
clf.fit(X)

print clf.predict([[3, 3]])

return值-1為異常。

No comments:

Post a Comment