数学之路(三)-机器学习(3)-机器学习算法-SVM[8]

数学之路(3)-机器学习(3)-机器学习算法-SVM[8]

我们用非线性核尝试将分别属于下面2个函数的座标点分开

y=x^a+b(a<=2)

y=x^a+b(a>=3)


本博客所有内容是原创,如果转载请注明来源

http://blog.****.net/myhaspl/


训练代码如下:

#!/usr/bin/env python
#-*- coding: utf-8 -*-
#email:myhaspl@qq.com
#author:麦好
#2013-07-25
import numpy as np
import matplotlib.pyplot as plt
import mlpy

print 'http://blog.****.net/myhaspl'  
print 'myhaspl@qq.com'  
print  
print 'loading  ...'

x = [[1,1],[2,4],[3,12],[9,70],[5,130],[4,13],[5,29],[5,135],[4,68],[10,1000],[8,520],[7,340],[6,40],[10,150]]
y=[1,1,1,1,0,1,1,0,0,0,0,0,1,1]
showpoint=['ro','bo']
tshowpoint=['r*','b*']
x=np.array(x)
y=np.array(y)
svm = mlpy.LibSvm(svm_type='c_svc', kernel_type='poly', gamma=10)
svm.learn(x, y)

效果不错

数学之路(三)-机器学习(3)-机器学习算法-SVM[8]