flash型的著名网站网站增加栏目费用

pingmian/2026/1/27 5:26:28/文章来源:
flash型的著名网站,网站增加栏目费用,杭州网站的建设,陕西建站公司简介 SVM是一种二类分类模型#xff0c;其基本模型定义为特征空间上的间隔最大的线性分类器#xff0c;即支持向量机的学习策略便是间隔最大化#xff0c;最终可转化为一个凸二次规划问题的求解。或者简单的可以理解为就是在高维空间中寻找一个合理的超平面将数据点分隔开来…简介 SVM是一种二类分类模型其基本模型定义为特征空间上的间隔最大的线性分类器即支持向量机的学习策略便是间隔最大化最终可转化为一个凸二次规划问题的求解。或者简单的可以理解为就是在高维空间中寻找一个合理的超平面将数据点分隔开来其中涉及到非线性数据到高维的映射以达到数据线性可分的目的。 训练数据线性可分时通过硬间隔最大化学习一个线性分类器即线性可分支持向量机又称为硬间隔支持向量机训练数据近似线性可分时通过软间隔最大化也学习一个线性分类器即线性支持向量机也称为软间隔支持向量机训练数据线性不可分时通过使用核技巧和软间隔最大化学习非线性支持向量机。 线性可分支持向量机和硬间隔最大化 接下来主要是手写的笔记主要参考 《统计学习方法》SVM详解(包含它的参数C为什么影响着分类器行为)-scikit-learn拟合线性和非线性的SVM机器学习常见算法个人总结面试用SVM-支持向量机算法概述机器学习算法与Python实践之二支持向量机SVM初级机器学习算法与Python实践之三支持向量机SVM进阶机器学习算法与Python实践之四支持向量机SVM实现 关于凸函数凸集是指有这么一个点的集合其中任取两个点连一条直线这条线上的点仍然在这个集合内部因此说“凸”是很形象的。例如下图对于凸函数在数学表示上满足约束条件是仿射函数也就是线性的Axb的形式来说局部最优就是全局最优但对非凸函数来说就不是了。 支持向量是训练数据集的样本点中与分离超平面距离最近的样本点的实例。 如下图所示 图中对类1即Class 1的支持向量就在超平面H2:wxb−1H_2: wx+b=-1上而对于类2即Class 2正类的支持向量就在超平面H1:wxb1H_1: wx+b=1上。而在这两个超平面中间的距离即图中标着m的距离称为间隔它依赖于分离超平面的法向量ww,等于2||w||\frac{2}{|| w ||}而两个超平面和H1和H2和H_1 和H_2称为间隔平面。 在决定分离超平面时只有支持向量其作用其他实例点并不起作用。如果移动支持向量将改变所求的解。正是因为支持向量在确定分离超平面中起着决定性作用 所以将这种分类模型称为支持向量机。支持向量的个数一般很少所以支持向量机由很少的“重要的”训练样本确定。 线性支持向量机和软间隔最大化 核函数 采用不同的核函数就相当于采用不同的相似度的衡量方法。从计算的角度不管Φ(x)Φ(x)变换的空间维度有多高甚至是无限维函数就是无限维的这个空间的线性支持向量机的求解都可以在原空间通过核函数进行这样就可以避免了高维空间里的计算而计算核函数的复杂度和计算原始样本内积的复杂度没有实质性的增加。 一般情况下RBF效果是不会差于Linear 但是时间上RBF会耗费更多 下面是吴恩达的见解 如果Feature的数量很大跟样本数量差不多这时候选用LR或者是Linear Kernel的SVM如果Feature的数量比较小样本数量一般不算大也不算小选用SVMGaussian Kernel如果Feature的数量比较小而样本数量很多需要手工添加一些feature变成第一种情况 更多有关核函数可以参考【模式识别】SVM核函数和SVM的核函数如何选取?–知乎。 这里总结一下支持向量机的基本思想可以概括为首先通过非线性变换将输入空间变换到一个高维的空间然后在这个新的空间求最优分类面即最大间隔分类面而这种非线性变换是通过定义适当的内积核函数来实现的。**SVM实际上是根据统计学习理论依照结构风险最小化的原则提出的要求实现两个目的**1两类问题能够分开经验风险最小2margin最大化风险上界最小既是在保证风险最小的子集中选择经验风险最小的函数。 SVM优缺点 优点 使用核函数可以向高维空间进行映射使用核函数可以解决非线性的分类分类思想很简单就是将样本与决策面的间隔最大化分类效果较好 缺点 对大规模数据训练比较困难无法直接支持多分类但是可以使用间接的方法来做 多类分类 直接法 直接在目标函数上进行修改将多个分类面的参数求解合并到一个最优化问题中通过求解该优化就可以实现多分类。但是计算复杂度很高实现起来较为困难。 间接法 1 一对多方法就是每次训练的时候设置其中某个类为一类其余所有类为另一个类。比如有A,B,C,D四个类第一次A是一个类{B,C,D}是一个类训练一个分类器第二次B是一个类然后A,C,D是一个类训练一个分类器依次类推。因此如果总共有nn个类,最终将训练nn个分类器。测试的时候将测试样本都分别送入所有分类器中取得到最大值的类别作为其分类结果。这是因为到分类面距离越大分类越可信。 这种方法的优点是每个优化问题的规模比较小而且分类速度很快因为分类器数目和类别数目相同但是有时会出现这样两种情况对一个测试样本每个分类器都得到它属于分类器所在类别或者都不属于任意一个分类器的类别。前者称为分类重叠现象后者叫不可分类现象。前者可以任意选择一个结果或者就按照其到每个超平面的距离来分哪个远选哪个类别而后者只能分给新的第n1n+1个类别了。最大的缺点还是由于将n−1n-1个类别作为一个类别其数目会数倍于只有1个类的类别这样会人为造成数据集偏斜的问题。 2 一对一方法是任意两个类都训练一个分类器那么nn个类就需要n(n−1)2\frac{n(n-1)}{2}个分类器。预测的时候通过投票选择最终结果。 这个方法同样会有分类重叠的现象但不会有不可分类现象因为不可能所有类别的票数都是0。此外就是计算代价会很大。 3 层次支持向量机H-SVMs。层次分类法首先将所有类别分成两个子类再将子类进一步划分成两个次级子类如此循环直到得到一个单独的类别为止。 4 DAG-SVMS是由Platt提出的决策导向的循环图DDAG导出的,是针对“一对一”SVMS存在误分、拒分现象提出的。 序列最小最优化算法(SMO) SMO是用于快速求解SVM的是一种启发式算法。 基本思路如下如果所有变量的解都满足此最优化问题的KKT条件那么这个最优化问题的解就得到了。因为KKT条件是该最优化问题的充分必要条件。否则它选择凸二次规划的两个变量其他的变量保持不变然后根据这两个变量构建一个二次规划问题这个二次规划关于这两个变量解会更加的接近原始二次规划的解通过这样的子问题划分可以大大增加整个算法的计算速度关于这两个变量 其中一个是严重违反KKT条件的一个变量另一个变量由约束条件自动确定。 整个SMO算法分为两部分求解两个变量二次规划的解析方法和选择变量的启发式方法。 SMO称选择第一个变量的过程为外层循环。外层循环在训练样本中选取违反KKT条件最严重的样本点并将其对应的变量作为第一个变量。具体的检验训练样本(xi,yix_i, y_i)是否满足KKT条件也就是 该检验是在εε范围内进行的。在检验过程中,外层循环首先遍历所有满足条件0αjC0的样本点即在间隔边界上的支持向量点检验他们是否满足KKT条件然后选择违反KKT条件最严重的αiα_i。如果这些样本点都满足KKT条件那么遍历整个训练集检验他们是否满足KKT条件然后选择违反KKT条件最严重的αiα_i。 优先选择遍历非边界数据样本因为非边界数据样本更有可能需要调整边界数据样本常常不能得到进一步调整而留在边界上。由于大部分数据样本都很明显不可能是支持向量因此对应的αα乘子一旦取得零值就无需再调整。遍历非边界数据样本并选出他们当中违反KKT 条件为止。当某一次遍历发现没有非边界数据样本得到调整时,遍历所有数据样本,以检验是否整个集合都满足KKT条件。如果整个集合的检验中又有数据样本被进一步进化,则有必要再遍历非边界数据样本。这样,不停地在遍历所有数据样本和遍历非边界数据样本之间切换,直到整个样本集合都满足KKT条件为止。以上用KKT条件对数据样本所做的检验都以达到一定精度ε就可以停止为条件。如果要求十分精确的输出算法,则往往不能很快收敛。对整个数据集的遍历扫描相当容易,而实现对非边界αiα_i的扫描时首先需要将所有非边界样本的αiα_i值也就是满足0αiC0保存到新的一个列表中然后再对其进行遍历。同时该步骤跳过那些已知的不会改变的αiα_i值。 SMO称选择第2个变量的过程为内层循环。第2个变量选择的标准是希望能使α2\alpha_2有足够大的变化。 记g(x)∑Ni1αiyiK(xi,x)bg(x) = \sum_{i=1}^N \alpha_i y_iK(x_i, x) + b, 令Eig(xi)−yi(∑Ni1αiyiK(xi,x)b)−yi,i1,2E_i = g(x_i) - y_i= (\sum_{i=1}^N \alpha_i y_iK(x_i, x) + b) - y_i,\qquad i = 1, 2。 当i1,2i = 1, 2时EiE_i是函数g(xi)g(x_i)对输入xix_i的预测值与真实输出yiy_i之差。 对于第2个变量α2\alpha_2的选择一个简单的做法是选择让|E1−E2||E_1 - E_2|最大的变化。为了节省计算时间将所有EiE_i值保存在一个列表中。 如果上述方法选择的变量不能使目标函数有足够的下降那么采用以下启发式规则继续选择第2个变量。遍历在间隔边界上的支持向量点依次将其对应的向量作为α2\alpha_2试用直到目标函数有足够的下降。若找不到合适的则遍历训练数据集若仍找不到合适的α2\alpha_2则放弃第一个变量α1\alpha_1再通过外层循环寻求另外的α1\alpha_1。 选择这两个拉格朗日乘子后我们需要先计算这些参数的约束值。然后再求解这个约束最大化问题,下面用αi,αj\alpha_i, \alpha_j表示选择的第1个和第2个变量。 首先我们需要给αjα_j找到边界L≤αj≤HL\le α_j \le H以保证αjα_j满足0≤αj≤C0\le α_j\le C的约束。这意味着αjα_j必须落入这个盒子中。由于只有两个变量(αi,αjα_i, α_j)约束可以用二维空间中的图形来表示如下图 不等式约束使得(αi,αjα_i, α_j)在盒子[0, C]x[0, C]内等式约束使得(αi,αjα_i, α_j)在平行于盒子[0, C]x[0, C]的对角线的直线上。因此要求的是目标函数在一条平行于对角线的线段上的最优值。这使得两个变量的最优化问题成为实质的单变量的最优化问题。由图可以得到αjα_j的上下界可以通过下面的方法得到 我们优化的时候αjα_j必须要满足上面这个约束。也就是说上面是αjα_j的可行域。然后我们开始寻找αjα_j使得目标函数最大化。通过推导得到αjα_j的更新公式如下 这里EkE_k可以看做对第kk个样本,SVM的输出与期待输出,也就是样本标签的误差。而ηη实际上是度量两个样本和i和j和i和j的相似性的。在计算ηη的时候,我们需要使用核函数,那么就可以用核函数来取代上面的内积。得到新的αjα_j后我们需要保证它处于边界内。换句话说如果这个优化后的值跑出了边界L和H我们就需要简单的裁剪将αjα_j收回这个范围 最后得到优化的αjα_j后我们需要用它来计算αiα_i 到这里和αi和αj和α_i和α_j的优化就完成了 最后就是更新阈值bb了,使得两个样本和i和j和i和j都满足KKT条件。如果优化后αiα_i不在边界上也就是满足0αiC0这时候根据KKT条件可以得到yigi(xi)1y_ig_i(x_i)=1这样我们才可以计算bb),那下面的阈值b1b_1是有效的因为当输入xix_i时它迫使SVM输出yiy_i。 同样如果0αjC0 ,那么下面的b2b_2也是有效的 如果0αiC0 和0αjC0 都满足那么和b1和b2和b_1和b_2都有效而且他们是相等的。如果他们两个都处于边界上也就是αi0α_i=0或者αiCα_i=C同时αj0α_j=0或者αjCα_j=C那么在b1b_1和b2b_2之间的阈值都满足KKT条件一般我们取他们的平均值bb1b22b=\frac{b1+b2}{2}。所以总的来说对bb的更新如下:每次完成两个变量的优化后,还必须更新对应的EiE_i值并将它们保存在列表中。 KKT条件分析 KKT条件具体可以查看深入理解拉格朗日乘子法Lagrange Multiplier) 和KKT条件。 假设我们优化得到的最优解是和αi,βi,ξi,w和b和α_i,β_i, ξ_i, w和b。我们的最优解需要满足KKT条件 同时βi,ξiβ_i, ξ_i都需要大于等于0而αiα_i需要在0和C之间。那可以分三种情况讨论 因此KKT条件变成了 第一个式子表明如果αi0α_i=0那么该样本落在两条间隔线外。第二个式子表明如果αiCα_i=C那么该样本有可能落在两条间隔线内部也有可能落在两条间隔线上面主要看对应的松弛变量的取值是等于0还是大于0第三个式子表明如果0αiC0那么该样本一定落在分隔线上这点很重要bb就是拿这些落在分隔线上的点来求的,因为在分割线上wTx+b=1w^Tx+b=1或者wTxb−1w^Tx+b=-1嘛才是等式在其他地方都是不等式求解不了bb)。具体形象化的表示如下:通过KKT条件可知,αiα_i不等于0的都是支持向量它有可能落在分隔线上也有可能落在两条分隔线内部。KKT条件是非常重要的在SMO也就是SVM的其中一个实现算法中我们可以看到它的重要应用。 代码实现 下面是线性SVM的代码实现 from sklearn import datasets import numpy as np from sklearn.cross_validation import train_test_splitiris datasets.load_iris() # 由于Iris是很有名的数据集scikit-learn已经原生自带了。 X iris.data[:, [2, 3]] y iris.target # 标签已经转换成012了 X_train, X_test, y_train, y_test train_test_split(X, y, test_size0.3, random_state0) # 为了看模型在没有见过数据集上的表现随机拿出数据集中30%的部分做测试# 为了追求机器学习和最优化算法的最佳性能我们将特征缩放 from sklearn.preprocessing import StandardScaler sc StandardScaler() sc.fit(X_train) # 估算每个特征的平均值和标准差 sc.mean_ # 查看特征的平均值由于Iris我们只用了两个特征所以结果是array([ 3.82857143, 1.22666667]) sc.scale_ # 查看特征的标准差这个结果是array([ 1.79595918, 0.77769705]) X_train_std sc.transform(X_train) # 注意这里我们要用同样的参数来标准化测试集使得测试集和训练集之间有可比性 X_test_std sc.transform(X_test) X_combined_std np.vstack((X_train_std, X_test_std)) y_combined np.hstack((y_train, y_test))# 导入SVC from sklearn.svm import SVC svm SVC(kernellinear, C1.0, random_state0) # 用线性核你也可以通过kernel参数指定其它的核。 svm.fit(X_train_std, y_train) # 打印决策边界这个函数是我自己写的如果你想要的话我发给你 plot_decision_regions(X_combined_std, y_combined, classifiersvm, test_idxrange(105,150)) plt.xlabel(petal length [standardized]) plt.ylabel(petal width [standardized]) plt.legend(locupper left) plt.show() 接下来是使用非线性SVM的代码 svm SVC(kernelrbf, random_state0, gammax, C1.0) # 令gamma参数中的x分别等于0.2和100.0 svm.fit(X_train_std, y_train) # 这两个参数和上面代码中的训练集一样 plot_decision_regions(X_combined_std, y_combined, classifiersvm, test_idxrange(105,150)) plt.xlabel(petal length [standardized]) plt.ylabel(petal width [standardized]) plt.legend(locupper left) plt.show() SVM的知识点就总结到这里还是参考了不少文章和看书才完成但是需要继续通过实践才能加深对SVM的了解。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/85278.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

望京网站建设单位邮箱怎么申请

点击蓝字关注我们因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享来源于网络,侵删1、分治法概念:将一个难以直接解决的大问题,分割成一些规模较小的相同问题,以便各个击破,分而治之…

网站建设维护保密协议杭州it外包公司

崩溃报告结构如下,每个部分都包含可帮助定位崩溃位置的信息: 1. Header 描述崩溃发生的环境,包含设备、系统、时间、版本等信息。如: Incident Identifier: 6156848E-344E-4D9E-84E0-87AFD0D0AE7B CrashReporter Key: 76f2fb…

深圳一百讯网站建设做电商网站搭建就业岗位

设计模式——七大设计原则 1、单一职责原则(SRP)2、开放封闭原则(OCP)3、依赖倒转原则(DIP)4、里氏替换原则 (LSP)5、接口隔离原则 (ISP)6、合成/聚合复用原则 (CARP)7、迪米特法则 (LoD) 了解 设计模式 的…

宁海县建设局网站一个网站的后台怎么做

大多数人在使用电脑时都可能会遇到误删文件的情况。一不小心,重要的文件或数据就消失了,情急之下,大多会感到慌乱和无助。但其实,文件误删除并非不可挽回的灾难。本文将为大家介绍几种有效的文件恢复方法,以帮助大家在…

网站快速盈利免费网站收录入口

https://link.springer.com/article/10.1007/s42452-019-0989-z 描述了构建零知识区间证明(ZKRP)的不同策略,例如2001年Boudot提出的方案;2008年Camenisch等人提出的方案;以及2017年提出的Bulletproofs。 Introducti…

国外服装图案设计网站网站用户登录流程图

SetConsoleCursorPosition是一个计算机函数,如果用户定义了 COORD pos,那么pos其实是一个结构体变量,其中X和Y是它的成员, 通过修改pos.X和pos.Y的值就可以实现光标的位置控制。 复制粘贴运行一下,你就明白代码什么意…

姑苏网站建设345诛仙网站是谁做的

在图像分类任务中,针对单个图片得到100%的准确率是有可能但极其罕见的,并且不代表模型在整个测试集上也能达到100%的准确率。   针对单个图片获得100%准确率的情况可能包括以下几种情形: 图片本身特殊性: 如果测试集中的某张图片在训练集中…

济南集团网站建设费用wordpress app发表

并发计算机用户想当然地认为他们的系统一次可以做不止一件事,他们设想他们可以继续在文字处理器中工作,而其他应用程序则下载文件、管理打印队列和流音频,即使是单个应用程序通常也希望一次完成多个任务。例如,流式音频应用程序必…

网站建设龙采科技dm建站系统

目录 1 前言2 HTML2.1 元素(Element)2.1.1 块级元素和内联(行级)元素2.1.2 空元素 2.2 html页面的文档结构2.3 常见标签使用2.3.1 注释2.3.2 标题2.3.3 段落2.3.4 列表2.3.5 超链接2.3.6 图片2.3.7 内联(行级)标签2.3.8 换行 2.4 属性2.4.1 布尔属性 2.5 实体引用2.6 空格2.7 D…

广东专业做网站排名哪家好宁城网站建设公司

这是Python程序开发系列原创文章,我的第198篇原创文章。 一、问题 对于表格数据,一套完整的机器学习建模流程如下: 针对不同的数据集,有些步骤不适用即不需要做,其中橘红色框为必要步骤,由于数据质量较高&…

淘宝客怎么建设自己网站怎么利用网站开发app

在使用USB OTG将“自己移植的固件”烧写到eMMC中时,串口会输出“Boot interface 6 not supported”,发现很多人踩坑,我也一样。 见下图: 解决办法: 1、打开终端 输入“ls回车”,列出当前目录下所有的文件…

怀化市建设局门户网站如何使用模板建设网站

springboot配置swagger Swagger 是什么Swagger配置springboot代码展示总结 Swagger 是什么 Swagger 是一个用于构建、文档和调用 RESTful Web 服务的强大工具。它提供了以下几方面的好处: 自动生成 API 文档: Swagger 可以自动生成 API 文档,包括接口的…

江苏省城乡建设厅建设网站无水印logo免费一键生成

文章目录 在 Python 中将数据类转换为 JSON在 Python 中将数据类实现为字典在 Python 中为每个 JSON 根节点创建一个数据类 在本篇文章中,我们将了解 Python 如何支持 JSON 来为每个 JSON 根节点创建数据类。 我们还将学习 dataclass 作为 Python 字典的实现。 在 P…

湖州 网站建设网站建设分金手指专业十六

本章概要 关系运算符 测试对象等价 逻辑运算符 短路 字面值常量 下划线指数计数法 位运算符 关系运算符 关系运算符会通过产生一个布尔(boolean)结果来表示操作数之间的关系。如果关系为真,则结果为 true,如果关系为假&#xf…

专门做水生植物销售网站无极修仙网站

用antlr解析简单的语法很简单 。 您要做的就是使用正则表达式描述您的语言,并让antlr生成词法分析器和解析器。 解析大型或复杂的语言有时会需要更多,因为仅使用正则表达式描述它们是困难的,甚至是不可能的。 语义谓词是在语法内部编写的Jav…

龙岩企业网站建设制作自己如何在家做网站

介绍 在实际项目中,MySQL数据库服务器有时会位于另外一台主机,需要通过网络来访问数据库;即使应用程序与MySQL数据库在同一个主机中,访问MySQL也涉及到磁盘IO操作(MySQL也有一些数据预读技术,能够减少磁盘I…

泰州专业网站建设制作西宁哪家公司做网站

转载于:https://www.cnblogs.com/BrightMoon/p/4479375.html

响应式网站如何设计h5响应式 wordpress

目录 1. 什么是零拷贝2. 传统的IO执行流程3. 零拷贝相关知识3-1. 内核空间和用户空间3-2. 什么是用户态、内核态3-3. 什么是上下文切换3-4. 虚拟内存3-5. DMA技术 4. 零拷贝实现的几种方式4-1. mmapwrite实现的零拷贝4-2. sendfile实现的零拷贝4-3. sendfileDMA scatter/gather…

江津做电子商务网站织梦移动网站模板

起因是公司的crm录入不规范,有重复数据。 之后考虑到需要手动处理,首先需要自动找出重复的数据 查重要求: 存在多个不允许重复的字段,任一字段重复,则判断为同一个客户。划分到同一重复组中。 查重sql如下 SELECT CONCAT(组, dense_rank() OVER (ORDER BY group_key)) …

wordpress二次开发seo推广网站

[申明]转载请保留原作网站:[url]http://www.sjhf.net[/url] 关键字[LINUX误删除数据恢复][摘要]国家认证认可监督管理委员会,用于正常工作的一个重要ORACLE数据库,存储于LINUX EXT3文件系统之上。一次,管理员在建立测试库时选错了…