MCPcopy
hub / github.com/apachecn/ailearning / testRbf

Function testRbf

src/python/6.SVM/svm-complete.py:371–401  ·  view source on GitHub ↗
(k1=1.3)

Source from the content-addressed store, hash-verified

369
370
371def testRbf(k1=1.3):
372 dataArr, labelArr = loadDataSet('input/6.SVM/testSetRBF.txt')
373 b, alphas = smoP(dataArr, labelArr, 200, 0.0001, 10000, ('rbf', k1)) # C=200 important
374 datMat = mat(dataArr)
375 labelMat = mat(labelArr).transpose()
376 svInd = nonzero(alphas.A > 0)[0]
377 sVs = datMat[svInd] # get matrix of only support vectors
378 labelSV = labelMat[svInd]
379 print("there are %d Support Vectors" % shape(sVs)[0])
380 m, n = shape(datMat)
381 errorCount = 0
382 for i in range(m):
383 kernelEval = kernelTrans(sVs, datMat[i, :], ('rbf', k1))
384
385 # 和这个svm-simple类似: fXi = float(multiply(alphas, labelMat).T*(dataMatrix*dataMatrix[i, :].T)) + b
386 predict = kernelEval.T * multiply(labelSV, alphas[svInd]) + b
387 if sign(predict) != sign(labelArr[i]):
388 errorCount += 1
389 print("the training error rate is: %f" % (float(errorCount) / m))
390
391 dataArr, labelArr = loadDataSet('input/6.SVM/testSetRBF2.txt')
392 errorCount = 0
393 datMat = mat(dataArr)
394 labelMat = mat(labelArr).transpose()
395 m, n = shape(datMat)
396 for i in range(m):
397 kernelEval = kernelTrans(sVs, datMat[i, :], ('rbf', k1))
398 predict = kernelEval.T * multiply(labelSV, alphas[svInd]) + b
399 if sign(predict) != sign(labelArr[i]):
400 errorCount += 1
401 print("the test error rate is: %f" % (float(errorCount) / m))
402
403
404def img2vector(filename):

Callers

nothing calls this directly

Calls 3

kernelTransFunction · 0.85
loadDataSetFunction · 0.70
smoPFunction · 0.70

Tested by

no test coverage detected