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

上海网站建设推荐q479185700顶你会员卡管理系统怎么开通

上海网站建设推荐q479185700顶你,会员卡管理系统怎么开通,南京seo推广公司,替朋友做网站一、支持向量机 1. 基本概念 1#xff09;什么是支持向量机 支持向量机#xff08;Support Vector Machines#xff09;是一种二分类模型#xff0c;在机器学习、计算机视觉、数据挖掘中广泛应用#xff0c;主要用于解决数据分类问题#xff0c;它的目的是寻找一个超平…一、支持向量机 1. 基本概念 1什么是支持向量机 支持向量机Support Vector Machines是一种二分类模型在机器学习、计算机视觉、数据挖掘中广泛应用主要用于解决数据分类问题它的目的是寻找一个超平面来对样本进行分割分割的原则是间隔最大化即数据集的边缘点到分界线的距离d最大如下图最终转化为一个凸二次规划问题来求解。通常SVM用于二元分类问题对于多元分类可将其分解为多个二元分类问题再进行分类。所谓“支持向量”就是下图中虚线穿过的边缘点。支持向量机就对应着能将数据正确划分并且间隔最大的直线下图中红色直线。 2最优分类边界 什么才是最优分类边界什么条件下的分类边界为最优边界呢 如图中的AB两个样本点B点被预测为正类的确信度要大于A点所以SVM的目标是寻找一个超平面使得离超平面较近的异类点之间能有更大的间隔即不必考虑所有样本点只需让求得的超平面使得离它近的点间隔最大。超平面可以用如下线性方程来描述 w T x b 0 w^T x b 0 wTxb0 其中 x ( x 1 ; x 2 ; . . . ; x n ) x(x_1;x_2;...;x_n) x(x1​;x2​;...;xn​) w ( w 1 ; w 2 ; . . . ; w n ) w(w_1;w_2;...;w_n) w(w1​;w2​;...;wn​) b b b为偏置项. 可以从数学上证明支持向量到超平面距离为 γ 1 ∣ ∣ w ∣ ∣ \gamma \frac{1}{||w||} γ∣∣w∣∣1​ 为了使距离最大只需最小化 ∣ ∣ w ∣ ∣ ||w|| ∣∣w∣∣即可. 3SVM最优边界要求 SVM寻找最优边界时需满足以下几个要求 1正确性对大部分样本都可以正确划分类别 2安全性支持向量即离分类边界最近的样本之间的距离最远 3公平性支持向量与分类边界的距离相等 4简单性采用线性方程直线、平面表示分类边界也称分割超平面。如果在原始维度中无法做线性划分那么就通过升维变换在更高维度空间寻求线性分割超平面. 从低纬度空间到高纬度空间的变换通过核函数进行。 4线性可分与线性不可分 ① 线性可分 如果一组样本能使用一个线性函数将样本正确分类称这些数据样本是线性可分的。那么什么是线性函数呢在二维空间中就是一条直线在三维空间中就是一个平面以此类推如果不考虑空间维数这样的线性函数统称为超平面。 ② 线性不可分 如果一组样本无法找到一个线性函数将样本正确分类则称这些样本线性不可分。以下是一个一维线性不可分的示例 一维线性不可分 以下是一个二维不可分的示例 二维线性不可分 对于该类线性不可分问题可以通过升维将低纬度特征空间映射为高纬度特征空间实现线性可分如下图所示 一维空间升至二维空间实现线性可分 ![在这里插入图片描述](https://img-blog.csdnimg.cn/d5d16fc0eb0f42a29dc6e0fd60aa8536.png#pic_center) 二维空间升至三维空间实现线性可分 那么如何实现升维这就需要用到核函数。 2. 核函数 1线性核函数 线性核函数Linear表示不通过核函数进行升维仅在原始空间寻求线性分类边界主要用于线性可分问题。 示例代码 # 支持向量机示例 import numpy as np import sklearn.model_selection as ms import sklearn.svm as svm import sklearn.metrics as sm import matplotlib.pyplot as mpx, y [], [] with open(../data/multiple2.txt, r) as f:for line in f.readlines():data [float(substr) for substr in line.split(,)]x.append(data[:-1]) # 输入y.append(data[-1]) # 输出# 列表转数组 x np.array(x) y np.array(y, dtypeint)# 线性核函数支持向量机分类器 model svm.SVC(kernellinear) # 线性核函数 # model svm.SVC(kernelpoly, degree3) # 多项式核函数 # print(gamma:, model.gamma) # 径向基核函数支持向量机分类器 # model svm.SVC(kernelrbf, # gamma0.01, # 概率密度标准差 # C200) # 概率强度 model.fit(x, y)# 计算图形边界 l, r, h x[:, 0].min() - 1, x[:, 0].max() 1, 0.005 b, t, v x[:, 1].min() - 1, x[:, 1].max() 1, 0.005# 生成网格矩阵 grid_x np.meshgrid(np.arange(l, r, h), np.arange(b, t, v)) flat_x np.c_[grid_x[0].ravel(), grid_x[1].ravel()] # 合并 flat_y model.predict(flat_x) # 根据网格矩阵预测分类 grid_y flat_y.reshape(grid_x[0].shape) # 还原形状mp.figure(SVM Classifier, facecolorlightgray) mp.title(SVM Classifier, fontsize14)mp.xlabel(x, fontsize14) mp.ylabel(y, fontsize14) mp.tick_params(labelsize10) mp.pcolormesh(grid_x[0], grid_x[1], grid_y, cmapgray)C0, C1 (y 0), (y 1) mp.scatter(x[C0][:, 0], x[C0][:, 1], corangered, s80) mp.scatter(x[C1][:, 0], x[C1][:, 1], climegreen, s80) mp.show()绘制图形 ) 2多项式核函数 多项式核函数Polynomial Kernel用增加高次项特征的方法做升维变换当多项式阶数高时复杂度会很高其表达式为 K ( x y ) ( α x T ⋅ y c ) d K(xy)(αx^T·yc)d K(xy)(αxT⋅yc)d y x 1 x 2 y x 1 2 2 x 1 x 2 x 2 2 y x 1 3 3 x 1 2 x 2 3 x 1 x 2 2 x 2 3 y x_1 x_2\\ y x_1^2 2x_1x_2x_2^2\\ yx_1^3 3x_1^2x_2 3x_1x_2^2 x_2^3 yx1​x2​yx12​2x1​x2​x22​yx13​3x12​x2​3x1​x22​x23​ 其中α表示调节参数d表示最高次项次数c为可选常数。 示例代码将上一示例中创建支持向量机模型改为一下代码即可 model svm.SVC(kernelpoly, degree3) # 多项式核函数生成图像 3径向基核函数 径向基核函数Radial Basis Function Kernel具有很强的灵活性应用很广泛。与多项式核函数相比它的参数少因此大多数情况下都有比较好的性能。在不确定用哪种核函数时可优先验证高斯核函数。由于类似于高斯函数所以也称其为高斯核函数。表达式如下 示例代码将上一示例中分类器模型改为如下代码即可 # 径向基核函数支持向量机分类器 model svm.SVC(kernelrbf,gamma0.01, # 概率密度标准差C600) # 概率强度该值越大对错误分类的容忍度越小分类精度越高但泛化能力越差该值越小对错误分类容忍度越大但泛化能力强生成图像 3. 总结 1支持向量机是二分类模型 2支持向量机通过寻找最优线性模型作为分类边界 3边界要求正确性、公平性、安全性、简单性 4可以通过核函数将线性不可分转换为线性可分问题核函数包括线性核函数、多项式核函数、径向基核函数 5支持向量机适合少量样本的分类 网格搜索 获取一个最优超参数的方式可以绘制验证曲线但是验证曲线只能每次获取一个最优超参数。如果多个超参数有很多排列组合的话就可以使用网格搜索寻求最优超参数组合。 针对超参数组合列表中的每一个超参数组合实例化给定的模型做cv次交叉验证将其中平均f1得分最高的超参数组合作为最佳选择实例化模型对象。 网格搜索相关API import sklearn.model_selection as ms params [{kernel:[linear], C:[1, 10, 100, 1000]},{kernel:[poly], C:[1], degree:[2, 3]}, {kernel:[rbf], C:[1,10,100], gamma:[1, 0.1, 0.01]}]model ms.GridSearchCV(模型, params, cv交叉验证次数) model.fit(输入集输出集) # 获取网格搜索每个参数组合 model.cv_results_[params] # 获取网格搜索每个参数组合所对应的平均测试分值 model.cv_results_[mean_test_score] # 获取最好的参数 model.best_params_ model.best_score_ model.best_estimator_
http://www.pierceye.com/news/947413/

相关文章:

  • 南通建设招聘信息网站平面设计工作室怎么接单
  • 手机网站开发技巧wordpress网站外包
  • 南昌外贸网站建设宿州做企业网站
  • 专题网站建站给医院做网站赚钱吗
  • 泉州市做网站网站建设培训需要多少钱
  • 网站开发的外文翻译静态网站制作视频
  • 小企业做网站有用吗大气网站首页欣赏
  • 常见的企业网站有哪些苏州网站建设一站通
  • 陕西省高速公路建设集团公司网站外包网站开发 收费
  • 免费做网站刮刮卡腾讯html网页制作软件
  • 网站快照网站反链一般怎么做
  • 山东东营建设网官方网站专做h5的公司网站
  • 电商网站建设题库做海岛旅游类网站的背景及意义
  • 网站开发后台框架wordpress 文章同步微信
  • 小型网站有哪些怎么搭建自己的网站
  • 注册网站域名的入口网站开发公司的
  • vs2012 建网站光明区公明街道
  • 公司网站建设属于什么职位杭州专业seo公司
  • 网站SEO容易做吗网络链接推广
  • 建立免费公司网站自适应型网站建设费用
  • 郑州大学现代远程教育《网页设计与网站建设》课程考核要求云南网站建设企业
  • 电商网站的支付功能广州建设诚信评分网站
  • 网站在哪里建立刷推广
  • 网站上的公告怎么做参考文献太原工程建设招投标信息网站
  • 网站建设找云尚网络asp网站文件
  • 广州的企业网站建设网站推广途径和推广要点
  • 如何保存个人网站东营网红餐厅
  • 网站自助建站湖南企业网站建设
  • 网站设计开发网站企业网站推广方案范文
  • 金峰辉网站建设手机系统下载