SVM解释为什么可以约束min y(wx+b)=1的问题

本文探讨了在特定约束条件下,原始优化问题与其转换后的优化问题之间的等价性。通过数学推导证明,在约束min1...nyn(wxn+b)=1下,尽管问题的形式发生了改变,但最优解并未受到影响,从而确保了优化目标的一致性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在<计算机技巧>课程中,考虑到w,b同时放大或者缩小对原来的优化问题没有任何影响,为了化简这个问题,作者引入min1...nyn(wxn+b)=1,这里证明在这个约束下问题其实对原始的优化问题没有影响,即:
这里写图片描述
加上上面约束后没有影响。
假设wop,bop是原始问题的最优解,那么转换的优化问题求出的解一定是wop/A,bop/A这种形式的。
假设两个点:y1(wx1+b)=2,y2(wx2+b)=3
因此:y1(w2x1+b2)=1,y2(w2x2+b2)=1.5
显然wop/2,bop/2首先是新问题的最优解,同时也满足约束条件。
原始问题变成新问题必然严格了很多,但是原始问题最优解为2/||wop||,新问题最优解也为2/||wop||,因此约束的严格并没有带来优化最值的下降,故而两种优化问题是等价的。
(优化问题的等价性:优化目标最值没有变化)

这行代码主要用于计算偏置项 \( b \) 的值,常见于支持向量机(SVM)等相关算法中。下面是详细的解释: --- ### 代码分析: ```python b = -0.5 * (np.max(wx[y == -1]) + np.min(wx[y == 1])) ``` #### 1. **背景知识** - 在 SVM 中,超平面方程可以表示为:\( f(x) = w^T x + b \),其中 \( w \) 是权重向量,\( b \) 是偏置项。 - 目标是最小化几何间隔的同时最大化分类边界,因此需要合理选择 \( b \),使其能够正确地划分正负两类数据。 #### 2. **逐步解析** - **`wx`**: 这是前一步计算得到的值(通常是样本点到当前超平面的距离分数),假设它的形状为 `(n_samples,)` 或者 `(n_samples, 1)`。 - **`y == -1` 和 `y == 1`**: - `y` 表示标签,取值可能是 `-1`(负类)或 `+1`(正类)。 - 条件过滤分别选出正类和支持类的得分。 - **`np.max(wx[y == -1])`**: 找到所有负类样本中的最大得分(即最接近超平面的那个负类点的分值)。 - **`np.min(wx[y == 1])`**: 找到所有正类样本中的最小得分(即最接近超平面的那个正类点的分值)。 - **结合两项并乘以 `-0.5`**: 根据 SVM 公式推导得出一种估算偏置 \( b \) 的方法——平均两条平行边界的中间位置作为新的参考基准点,再移至坐标系原点方向即可完成设置过程。 --- ### 总结说明 此公式旨在确定最优分割面上所对应的常数项目 B 值,确保决策界限正好处于两个极端类别之间中心地带附近区域之内。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值