当前位置: 首页 > news >正文

西峡网站开发网站建设方案模版

西峡网站开发,网站建设方案模版,.net做中英文网站,360免费建站网址是什么1.支持向量机(SVM)简介 支持向量机(Support Vector Machine,简称SVM)是一种按监督学习方式对数据进行二元分类的广义线性分类器。它的决策边界是对学习样本求解的最大边距超平面。 SVM是一种常见的分类算法&#xff0c…

1.支持向量机(SVM)简介

        支持向量机(Support Vector Machine,简称SVM)是一种按监督学习方式对数据进行二元分类的广义线性分类器。它的决策边界是对学习样本求解的最大边距超平面。

        SVM是一种常见的分类算法,它被广泛应用于模式识别、文本分类、图像分类等许多领域。SVM的主要思想是将样本点映射到高维空间中,使得样本点在高维空间中形成一种线性可分或近似线性可分的状态,从而将原始的样本点分类问题转化为高维空间中的线性分类问题。

2.超平面最大间隔

        超平面最大间隔指这个超平面到两类样本中最远的一个样本的距离。寻找一个超平面,使得这个超平面到所有支持向量的距离最大化。

        划分超平面的公式

        

        输入数据:x=(x1,x2,x3...xn),n为数据的维度

        法向量:w=(w1,w2,w3...wn),法向量决定超平面的方向

        位移项:b,超平面到原点的距离

        找到一个超平面wx+b=0,使得在超平面上方的点x代入函数y=wT x+b,y全部大于0,在超平面下方的点x代入函数y=wTx+b,y全部小于0。

        支持向量到超平面的距离

        

        两类样本边界的距离

        

        硬间隔与软间隔

        硬间隔:严格地让所有实例都不在最⼤间隔之间, 并且位于正确的⼀边

        软间隔:使⽤更灵活的模型,让⽬标尽可能在保持最⼤间隔宽阔和限制间隔违例之间找到良好的平衡

        核函数

        当处理线性不可分情况时,线性分类器无法解决这种情况,使用核函数

        成为核函数的条件:对称矩阵,半正定矩阵

3.具体实现

        确定平面(软间隔与正则化)

        正则化(Regularization)是机器学习中的一种重要技术,主要用于防止模型过拟合。

        正则化的基本思想是在模型的损失函数中加入一个额外的项,这个项与模型的复杂度有关。简单来说,正则化项会惩罚那些可能导致模型复杂度增加的参数。

        在SVM中,正则化通常用于控制模型的复杂度。正则化项通常与模型的权重向量w有关,通过调整正则化参数,可以平衡模型的复杂度和拟合能力。

        相关代码:

def __init__(self, learning_rate=0.002, lambda_param=8, n_iters=10000):  self.lr = learning_rate  # 学习率  self.lambda_param = lambda_param  # 正则化参数  self.n_iters = n_iters  # 训练次数  self.w = None  # 权重     self.b = None    def fit(self, X, y):  y_ = np.where(y <= 0, -1, 1)  # 将标签转换为+1或-1  n_samples, n_features = X.shape  # 获取特征矩阵的形状  self.w = np.zeros(n_features)  # 初始化权重为零向量  self.b = 0  # 初始化偏置为零  for _ in range(self.n_iters):  # 迭代次数等于训练次数  for idx, x_i in enumerate(X):  # 遍历每个样本  condition = y_[idx] * (np.dot(x_i, self.w) - self.b) >= 1  # 计算条件判断  if condition:  # 如果满足条件,则更新权重和偏置  self.w -= self.lr * (2 * self.lambda_param * self.w)  else:  # 如果不满足条件,则更新权重和偏置,并加上正则化项  self.w -= self.lr * (2 * self.lambda_param * self.w - np.dot(x_i, y_[idx]))  self.b -= self.lr * y_[idx]  # 添加正则化项到偏置中

        绘制SVM决策边界

def plot_decision_boundary(X, y, svm):  # 创建网格覆盖决策区域  x1 = np.linspace(np.min(X[:, 0]) - 1, np.max(X[:, 0]) + 1, 100)  x2 = np.linspace(np.min(X[:, 1]) - 1, np.max(X[:, 1]) + 1, 100)  xx1, xx2 = np.meshgrid(x1, x2)  grid = np.c_[xx1.ravel(), xx2.ravel()]  # 使用SVM模型预测每个网格点的类别  pred = svm.predict(grid)  pred = pred.reshape(xx1.shape)  # 绘制决策边界和训练数据点  plt.contour(xx1, xx2, pred, levels=[-1, 1], colors='k')  plt.scatter(X[:, 0], X[:, 1], c=y, cmap='bgr')  plt.xlabel('Feature 1')  plt.ylabel('Feature 2')  plt.show()

4.总结

        SVM在只有少数样本的情况下也可以取得较好的分类效果,这使得它在一些数据量较小的领域中具有很好的应用价值。

        SVM在进行分类时,不需要过多的特征工程,能够自动地根据样本点在高维空间中的分布情况来进行分类,因此对于特征的权重和数量并不敏感。

        SVM在进行分类时,会尽量寻找一个最优的超平面来将样本点分开,因此对于噪声数据和异常值的干扰具有较强的鲁棒性。

        SVM不仅可以用于二分类问题,也可以扩展到多分类问题中,这使得它在许多领域中都具有广泛的应用。

http://www.yayakq.cn/news/499550/

相关文章:

  • 深圳设计网站多少钱跑业务怎么找客户
  • 电子商务网站建设需要学什么软件wordpress 修改版本号
  • 金融理财网站开发建筑常用的模板下载网站有哪些
  • 有哪些比较好的外贸网站ui培训课程
  • 专门做影评的网站企业网站如何做架构图
  • 成都公司展厅设计公司百度手机网站优化
  • php源码网站修改网上商城购物系统流程图
  • 专业网站建设机构做网站怎样找
  • 宽屏网站模板怎么开网店不用自己发货囤货的
  • 云服务器建站密云网站建设服务
  • 网站制作技术培训软件商店应用
  • 织梦网站怎样做子域名企业网站建设方案效果
  • 移动终端网站建设h5网站建设模板下载
  • 网站地图如何更新青岛正规网站设计公司
  • 西安网站设计方案做信息网站怎么赚钱
  • 高清网站建设的好处wordpress 虚拟商品插件
  • 网站开发后端做那些界面设计职业技能等级证书
  • 网站砍价活动怎么做科技绘画作品图片大全
  • 新都网站建设网站建设刂搜金手指下拉二五
  • 营销网站制作平台有哪些公司网站建设情况说明书
  • 为什么要找对做网站的公司武山县建设局网站
  • 如何建设自己的网站 知乎个人开发app去哪里接广告
  • 猎头做单的网站郑州专业制作网站多少钱
  • 网站实名制查询公司网站建设的视频教程
  • 自营购物网站建设优秀的vi设计手册
  • 黑龙江省中国建设银行网站首页个人类网站有哪些
  • 又名林州站长网hao123网址大全浏览器设为主页
  • 个人cms网站网络页面设计公司
  • 哪些大型网站用mysql网站建设的系统简介
  • 郑州专业网站建设价格网站的权限管理怎么做