資源簡介
支持向量機(jī)(support vector machine,簡稱SVM)于1964年由Vapnik和Chervonenkis建立,在上世紀(jì)90年代獲得快速發(fā)展并衍生出一系列改進(jìn)和擴(kuò)展算法,在人像識(shí)別、文本分類、手寫字識(shí)別及生物信息學(xué)等領(lǐng)域獲得廣泛應(yīng)用。
代碼片段和文件信息
#?-*-?coding:?utf-8?-*-
“““
Created?on?Tue?May??7?17:17:22?2019
@author:?wwc
“““
import?numpy?as?np
import?matplotlib.pyplot?as?plt
from?sklearn.datasets.samples_generator?import?make_blobs
class?SMO(object):
????def?__init__(self?C?=?100?toler?=?0.001?maxIter?=?10000):
????????self.C?=?C
????????self.tol?=?toler
????????self.maxIter?=?maxIter
????????????
????def?fit(self?X?y):
????????self.X?self.y?=?X?y
????????self.n_samples?=?len(X)
????????self.alphas?=?np.zeros(self.n_samples?dtype?=?float)
????????self.b?=?0.
????????self.Error?=?np.zeros_like(self.alphas)
????????self.iterNum?=?0
????????iterNum?=?0
????????examineAll?=?True
????????alphaChanged?=?0
????????while?iterNum??0?or?examineAll?==?True):
????????????alphaChanged?=?0
????????????if?examineAll:
????????????????for?i?in?range(len(self.X)):?alphaChanged?+=?self._innerLoop(i)
????????????????iterNum?+=?1
????????????????examineAll?=?False
??????
評(píng)論
共有 條評(píng)論