哪个网站服务器比较好,搜索引擎广告的优缺点,广州十大家装品牌,中企动力企业邮箱登录首页支持向量机算法#xff08;一#xff09;#xff1a;像讲故事一样讲明白它的原理及实现奥秘-CSDN博客
支持向量机算法#xff08;二#xff09;#xff1a;层层拆解#xff0c;精读公式每一处细节-CSDN博客
支持向量机算法#xff08;一#xff09;、算法#xff0…支持向量机算法一像讲故事一样讲明白它的原理及实现奥秘-CSDN博客
支持向量机算法二层层拆解精读公式每一处细节-CSDN博客
支持向量机算法一、算法二学习了什么是支持向量机、线性可分支持向量机、线性支持向量机本次学习非线性支持向量机。
在线性支持向量机模型中通过引入松弛因子可以让少量噪声样本也能正确分类并得到最优超平面用线性超平面将非线性数据集近似分离。然而这些被战略性“放弃”的样本是少数样本被认为是噪声或是一种扰动。如果数据集中两种类别的大部分样本都是混叠在一起那么采用这种方法得到的模型效果就不佳了。此时要采用核函数映射的方法将低维空间映射到高维空间将低维空间中的非线性问题转化为高维空间中的线性问题。
因此非线性支持向量机模型为“核函数映射线性支持向量机模型”即在核函数映射后的数据集上训练线性支持向量机模型。 核函数映射的技巧在于不显式地定义映射函数而是通过寻找一个核函数k(·,·)使得通过核函数映射后的结果等价于样本通过映射函数后在特征空间的内积。即核技巧实际是将特征映射与内积两步运算压缩在一起而不关心具体的映射函数本身是哪种形式。
☀我们该如何理解这段话呢
1从映射说起想象你有一些玩具这些玩具就像是原始数据它们在一个小盒子低维空间里摆放着。你想把这些玩具放到一个大仓库高维空间里并且摆放的方式要更有规律这样才能更好地分类或者做其他操作。这个把玩具从盒子放到仓库并且重新摆放的过程就像是映射函数。以前呢我们得先想好怎么把玩具从盒子拿到仓库并且要清楚地告诉别人每个玩具在仓库里放在哪儿这就是明确地定义映射函数。比如你要把一个小方块玩具从盒子里拿到仓库并且规定它在仓库的第三排第五列第二层这就像定义了映射函数后知道样本在高维空间的位置。2核函数的特别之处现在有了核函数就好像有了一个魔法盒子。你不需要知道玩具在大仓库里具体是怎么摆放的不需要知道映射函数。这个魔法盒子有个神奇的功能你只要把两个玩具的名字原始样本告诉它它就能直接告诉你这两个玩具在大仓库里如果按照某种神秘规则摆放后它们离得有多近通过核函数计算得到的结果等价于在高维空间中的内积。比如有两个玩具叫小熊和小兔子你把它们的名字告诉魔法盒子核函数魔法盒子就会告诉你一个数字这个数字就代表了如果把小熊和小兔子放到大仓库里它们之间的一种亲密程度在高维特征空间中的内积。3为什么这样做很好要是用以前的方法你得先把小熊和小兔子按照复杂的规则放到大仓库里计算映射函数然后再量它们之间的距离计算内积这很麻烦。但是有了魔法盒子核函数就简单多了。而且很多时候我们其实只关心小熊和小兔子在大仓库里是不是离得近样本在高维空间中的相似性并不关心它们具体放在仓库的哪个位置具体的映射函数。所以核函数这种方法又简单又能达到我们想要的效果。
核函数的定义如下设Ω为输入空间欧式空间Η为特征空间希尔伯特空间如果存在一个从Ω到H 的映射∅(x):Ω→ Η使得对于所有的x, y∈Ω都有函数k(x,y)满足 则称k(x,y)为核函数∅ (·)定义为映射函数∅(x)·∅(y)表示映射后在特征空间的内积以下是几种常用的核函数。
1线性核函数
线性核函数Linear Kernel是最简单的核函数主要用于线性可分的情况表达式为 其中c为可选的常数。线性核函数是原始输入空间的内积即特征空间和输入空间的维度是一样的参数较少运算速度较快。一般情况下在特征数量相对于样本数量非常多时适合采用线性核函数。
①公式解读
和是输入的向量可以理解为数据点是向量的转置这部分就是两个向量的内积运算c是一个可选的常数。
②线性核函数特点
☛与原始输入空间的关系线性核函数是原始输入空间的内积这意味着它没有对原始数据进行复杂的非线性变换直接使用原始数据的内积来计算核函数的值。例如在二维平面上有一些点使用线性核函数计算它们之间的核函数值就是直接计算这些点坐标向量的内积。 ☛特征空间和输入空间维度因为是原始输入空间的内积所以特征空间和输入空间的维度是一样的。比如原始数据是三维向量那么经过线性核函数处理后在 “特征空间”这里其实就是原始空间中还是三维的。 ☛参数较少相比其他一些复杂的核函数如高斯核函数等线性核函数只有内积运算和一个可选的常数没有其他复杂的参数需要调整所以参数较少。 ☛运算速度较快由于不需要进行复杂的非线性变换等计算只是简单的内积运算和可能的常数加法所以运算速度相对较快。例如在处理大规模数据时计算线性核函数的值比计算一些复杂核函数的值要快很多。
2多项式核函数
多项式核函数Polynomial Kernel的参数比较多当多项式阶数高时复杂度会很高对于正交归一化后的数据可优先选此核函数其表达式如下 其中α表示调节参数p表示最高次项次数c为可选常数。
线性核函数是多项式核函数的特殊情况a1p1多项式核函数通过调整a、c和p的值可以得到不同的核函数形式具有更强的灵活性和适应性。
3径向基核函数高斯核函数
径向基核函数Radial Basis Function Kernel具有很强的灵活性应用很广泛。与多项式核函数相比它的参数少因此大多数情况下都有比较好的性能在不确定用哪种核函数时可优先验证高斯核函数。由于类似于高斯函数所以也称其为高斯核函数。表达式如下 其中σ^2越大高斯核函数变得越平滑模型的偏差和方差大泛化能力差容易过拟合。σ^2越小高斯核函数变化越剧烈模型的偏差和方差越小模型对噪声样本比较敏感。
①公式各部分表达的意思
☛表示核函数的值它衡量了输入向量和之间的某种相似度或关系。
☛表示以自然常数为底的指数函数。
☛这是向量和之间的欧几里得距离的平方。它反映了两个向量在空间中的距离远近距离越近的值越小。
☛是一个超参数称为带宽bandwidth。它控制了高斯核函数的宽度的值越大核函数的曲线越平坦意味着对距离较远的样本也会给予一定的权重的值越小核函数的曲线越陡峭只有距离非常近的样本才会有较大的权重。
☀我们该如何理解超参数呢
在机器学习中超参数是在模型训练之前需要手动设置的参数它不通过模型的训练过程来学习。就是高斯核函数中的一个超参数它对核函数的形状和性质有着重要的影响。
在机器学习任务中的选择至关重要
①如果选择的值过大模型可能会过于平滑导致对训练数据的拟合不足可能无法捕捉到数据中的复杂模式从而在测试数据上的表现不佳出现欠拟合的情况。②相反如果值过小模型可能会对训练数据中的噪声过于敏感过度拟合训练数据在新的数据上泛化能力差。③因此需要通过交叉验证等方法来选择合适的值以平衡模型的拟合能力和泛化能力使得模型在处理实际问题时能够达到较好的性能。
作为高斯核函数的带宽通过控制核函数的宽度影响着样本之间的权重分配进而对基于高斯核函数的机器学习模型的性能产生重要影响需要谨慎选择和调整。
4Sigmoid 核函数
Sigmoid核函数来源于感知机中的激活函数SVM使用Sigmoid相当于一个两层的感知机网络Sigmoid核函数表达式如下 其中α表示调节参数c为可选常数一般c可取为1/nn为数据维度。
☀tanh是什么呢
tanh是双曲正切函数它的定义为 函数的值域在-11之间它具有非线性的特性可以将输入值映射到这个区间内。
非线性支持向量机的算法步骤如下
①选择合适的核函数k(xy)与惩罚参数C并计算核函数的映射结果。
②构造并求解约束最优化问题 ☀公式是什么意思呢
☛是要最大化的目标函数。
☛其中 是拉格朗日乘子 是样本的类别标签通常为 1 或 -1 是核函数用于计算样本 和 在高维特征空间中的内积或相似度。
☛是所有拉格朗日乘子的和是一个关于拉格朗日乘子和样本之间相似度的二次项。通过最大化这个目标函数可以找到最优的拉格朗日乘子值进而确定支持向量机SVM的决策边界。
是一个等式约束表示所有样本对应的拉格朗日乘子与类别标签的乘积之和为 0。这个约束条件保证了模型的分类决策是基于样本之间的相对关系而不是绝对的数值大小。
是不等式约束其中是一个超参数称为惩罚参数。它控制了对误分类样本的惩罚程度。
③使用SMO等算法得到最佳超平面得到最佳分类面的表达式
非线性支持向量机模型核函数的选择非常关键而选定核函数后核函数中的参数也直接影响了模型性能。因此在非线性支持向量机模型中需要优化的超参数有惩罚参数C及核函数的参数如多项式核函数的阶次p、高斯核函数的核函数宽度σ。