示例#1
0
f.close()

X = np.array(X)
Z = np.array(Z)
y = np.array(y)

print "x"
print X

print "z"
print Z

print "y"
print y

print "p1"
result = trainGsvm(Z,y)
print result

def k(a,b):
    return (2+np.dot(a.T,b))**2


print "p3"
result = kernelSVMwithQP(X,y,k)
print result

for i in range(7):
    print X[i],X[5],y[i],k(X[i],X[5])
示例#2
0
for _ in xrange(100):

    X = []
    y = []

    random.seed()

    # get 80% as train data
    for i in random.sample(range(len(trainX)),num):
        X.append(trainX[i])
        y.append(trainy[i])

    X = np.array(X)
    y = np.array(y)

    result = trainGsvm(X,y)["x"]

    b = result[0]
    w = result[1:]

    margin = 1.0/np.dot(w,w.T)

    err = 0.
    for i in xrange(len(testX)):
        if np.dot(w.T,testX[i]) < 0:
            if testy[i] > 0:
                err = err + 1    
        else:
            if testy[i] < 0:
                err= err + 1