支持向量机的原理和案例解析

      • 一、支持向量机的核心目标:间隔最大化
        • 步骤1:定义分离超平面
        • 步骤2:定义样本到超平面的距离(间隔)
        • 步骤3:间隔最大化的目标
        • 步骤4:简化目标函数
      • 二、通过拉格朗日乘子法求解优化问题
        • 步骤5:构建拉格朗日函数
        • 步骤6:求解对偶问题(KKT条件)
        • 步骤7:求导化简(核心推导)
        • 步骤8:对偶问题的目标函数
        • 步骤9:求解超平面参数
        • 步骤10:分类决策函数
      • 三、数学案例:线性可分数据的SVM求解
      • 总结

一、支持向量机的核心目标:间隔最大化

支持向量机的核心思想是在两类数据中找到一个最优分离超平面,使得两类数据到超平面的“间隔”最大。我们从线性可分情况开始推导(非线性情况可通过核函数扩展)。

步骤1:定义分离超平面

在n维空间中,线性分离超平面的方程为:
w⋅x+b=0(1)\boldsymbol{w} \cdot \boldsymbol{x} + b = 0 \tag{1}wx+b=0(1)

  • w=(w1,w2,...,wn)T\boldsymbol{w} = (w_1, w_2, ..., w_n)^Tw=(w1,w2,...,wn)T 是超平面的法向量(决定超平面方向);
  • bbb偏置项(决定超平面位置);
  • x=(x1,x2,...,xn)T\boldsymbol{x} = (x_1, x_2, ..., x_n)^Tx=(x1,x2,...,xn)T 是样本点的特征向量。

对于二分类问题,假设样本标签为 y∈{+1,−1}y \in \{+1, -1\}y{+1,1}(分别代表正、负类),则超平面需满足:

  • 正类样本:w⋅x+b>0\boldsymbol{w} \cdot \boldsymbol{x} + b > 0wx+b>0(即 y=+1y=+1y=+1);
  • 负类样本:w⋅x+b<0\boldsymbol{w} \cdot \boldsymbol{x} + b < 0wx+b<0(即 y=−1y=-1y=1)。
步骤2:定义样本到超平面的距离(间隔)

为衡量超平面的“分离能力”,需定义样本到超平面的距离。

  • 函数间隔:对于样本 (xi,yi)(\boldsymbol{x}_i, y_i)(xi,yi),函数间隔为 yi(w⋅xi+b)y_i(\boldsymbol{w} \cdot \boldsymbol{x}_i + b)yi(wxi+b)

    • 意义:若值为正,说明分类正确(yiy_iyiw⋅xi+b\boldsymbol{w} \cdot \boldsymbol{x}_i + bwxi+b 同号);绝对值越大,分类可信度越高。
  • 几何间隔:函数间隔受 w\boldsymbol{w}wbbb 缩放影响(例如 w→2w,b→2b\boldsymbol{w} \to 2\boldsymbol{w}, b \to 2bw2w,b2b 时超平面不变,但函数间隔翻倍),因此需归一化:
    γi=yi(w⋅xi+b)∥w∥(2)\gamma_i = \frac{y_i(\boldsymbol{w} \cdot \boldsymbol{x}_i + b)}{\|\boldsymbol{w}\|} \tag{2}γi=wyi(wxi+b)(2)
    其中 ∥w∥=w⋅w\|\boldsymbol{w}\| = \sqrt{\boldsymbol{w} \cdot \boldsymbol{w}}w=www\boldsymbol{w}w 的L2范数,几何间隔即样本到超平面的实际欧氏距离

步骤3:间隔最大化的目标

最优超平面需满足:所有样本的几何间隔中最小的那个(即“最小间隔”)尽可能大

设数据集的最小几何间隔为 γ=min⁡iγi\gamma = \min_i \gamma_iγ=miniγi,目标是最大化 γ\gammaγ
max⁡w,bγs.t.yi(w⋅xi+b)∥w∥≥γ(∀i)(3)\max_{\boldsymbol{w}, b} \gamma \quad \text{s.t.} \quad \frac{y_i(\boldsymbol{w} \cdot \boldsymbol{x}_i + b)}{\|\boldsymbol{w}\|} \geq \gamma \quad (\forall i) \tag{3}w,bmaxγs.t.wyi(wxi+b)γ(i)(3)

步骤4:简化目标函数

由于超平面 (w,b)(\boldsymbol{w}, b)(w,b)(kw,kb)(k\boldsymbol{w}, kb)(kw,kb)k>0k>0k>0)表示同一平面,可通过缩放将最小函数间隔归一化为1(即 yi(w⋅xi+b)≥1y_i(\boldsymbol{w} \cdot \boldsymbol{x}_i + b) \geq 1yi(wxi+b)1),此时最小几何间隔 γ=1∥w∥\gamma = \frac{1}{\|\boldsymbol{w}\|}γ=w1

因此,最大化 γ\gammaγ 等价于最小化 ∥w∥\|\boldsymbol{w}\|w(或 12∥w∥2\frac{1}{2}\|\boldsymbol{w}\|^221w2,便于求导),目标函数简化为:
min⁡w,b12∥w∥2s.t.yi(w⋅xi+b)≥1(∀i)(4)\min_{\boldsymbol{w}, b} \frac{1}{2}\|\boldsymbol{w}\|^2 \quad \text{s.t.} \quad y_i(\boldsymbol{w} \cdot \boldsymbol{x}_i + b) \geq 1 \quad (\forall i) \tag{4}w,bmin21w2s.t.yi(wxi+b)1(i)(4)

二、通过拉格朗日乘子法求解优化问题

式(4)是带不等式约束的凸优化问题,可通过拉格朗日乘子法转化为对偶问题求解。

步骤5:构建拉格朗日函数

引入拉格朗日乘子 αi≥0\alpha_i \geq 0αi0(对应每个约束条件),拉格朗日函数为:
L(w,b,α)=12∥w∥2−∑i=1Nαi[yi(w⋅xi+b)−1](5)\mathcal{L}(\boldsymbol{w}, b, \boldsymbol{\alpha}) = \frac{1}{2}\|\boldsymbol{w}\|^2 - \sum_{i=1}^N \alpha_i \left[ y_i(\boldsymbol{w} \cdot \boldsymbol{x}_i + b) - 1 \right] \ (5)L(w,b,α)=21w2i=1Nαi[yi(wxi+b)1] (5)

  • 第一项是原目标函数;
  • 第二项是约束条件的惩罚项(αi≥0\alpha_i \geq 0αi0 确保约束被满足)。
步骤6:求解对偶问题(KKT条件)

凸优化的对偶问题需满足KKT(Karush-Kuhn-Tucker)条件,即:

  1. 原始可行性:yi(w⋅xi+b)≥1y_i(\boldsymbol{w} \cdot \boldsymbol{x}_i + b) \geq 1yi(wxi+b)1
  2. 对偶可行性:αi≥0\alpha_i \geq 0αi0
  3. 互补松弛:αi[yi(w⋅xi+b)−1]=0\alpha_i \left[ y_i(\boldsymbol{w} \cdot \boldsymbol{x}_i + b) - 1 \right] = 0αi[yi(wxi+b)1]=0(若 αi>0\alpha_i > 0αi>0,则约束取等号,即 yi(w⋅xi+b)=1y_i(\boldsymbol{w} \cdot \boldsymbol{x}_i + b) = 1yi(wxi+b)=1);
  4. 梯度为零:∇wL=0\nabla_{\boldsymbol{w}} \mathcal{L} = 0wL=0∇bL=0\nabla_b \mathcal{L} = 0bL=0
步骤7:求导化简(核心推导)

w\boldsymbol{w}wbbb 求偏导并令其为0:

  • w\boldsymbol{w}w 求导:
    ∇wL=w−∑i=1Nαiyixi=0⟹w=∑i=1Nαiyixi(6)\nabla_{\boldsymbol{w}} \mathcal{L} = \boldsymbol{w} - \sum_{i=1}^N \alpha_i y_i \boldsymbol{x}_i = 0 \implies \boldsymbol{w} = \sum_{i=1}^N \alpha_i y_i \boldsymbol{x}_i \ (6)wL=wi=1Nαiyixi=0w=i=1Nαiyixi (6)
    w\boldsymbol{w}w 可由样本的线性组合表示,系数为 αiyi\alpha_i y_iαiyi

  • bbb 求导:
    ∇bL=−∑i=1Nαiyi=0⟹∑i=1Nαiyi=0(7)\nabla_b \mathcal{L} = -\sum_{i=1}^N \alpha_i y_i = 0 \implies \sum_{i=1}^N \alpha_i y_i = 0 \ (7)bL=i=1Nαiyi=0i=1Nαiyi=0 (7)

步骤8:对偶问题的目标函数

将式(6)代入拉格朗日函数(5),化简对偶问题:

  1. 展开 12∥w∥2\frac{1}{2}\|\boldsymbol{w}\|^221w2
    12∥w∥2=12(∑i=1Nαiyixi)⋅(∑j=1Nαjyjxj)=12∑i=1N∑j=1Nαiαjyiyj(xi⋅xj)\frac{1}{2}\|\boldsymbol{w}\|^2 = \frac{1}{2} \left( \sum_{i=1}^N \alpha_i y_i \boldsymbol{x}_i \right) \cdot \left( \sum_{j=1}^N \alpha_j y_j \boldsymbol{x}_j \right) = \frac{1}{2} \sum_{i=1}^N \sum_{j=1}^N \alpha_i \alpha_j y_i y_j (\boldsymbol{x}_i \cdot \boldsymbol{x}_j)21w2=21(i=1Nαiyixi)(j=1Nαjyjxj)=21i=1Nj=1Nαiαjyiyj(xixj)

  2. 展开惩罚项:
    ∑i=1Nαi[yi(w⋅xi+b)−1]=∑i=1Nαiyi(w⋅xi)+∑i=1Nαiyib−∑i=1Nαi\sum_{i=1}^N \alpha_i \left[ y_i(\boldsymbol{w} \cdot \boldsymbol{x}_i + b) - 1 \right] = \sum_{i=1}^N \alpha_i y_i (\boldsymbol{w} \cdot \boldsymbol{x}_i) + \sum_{i=1}^N \alpha_i y_i b - \sum_{i=1}^N \alpha_ii=1Nαi[yi(wxi+b)1]=i=1Nαiyi(wxi)+i=1Nαiyibi=1Nαi
    由式(6)和(7),第二项 ∑αiyib=b⋅0=0\sum \alpha_i y_i b = b \cdot 0 = 0αiyib=b0=0,第一项:
    ∑i=1Nαiyi(w⋅xi)=∑i=1Nαiyi(∑j=1Nαjyjxj⋅xi)=∑i=1N∑j=1Nαiαjyiyj(xi⋅xj)\sum_{i=1}^N \alpha_i y_i (\boldsymbol{w} \cdot \boldsymbol{x}_i) = \sum_{i=1}^N \alpha_i y_i \left( \sum_{j=1}^N \alpha_j y_j \boldsymbol{x}_j \cdot \boldsymbol{x}_i \right) = \sum_{i=1}^N \sum_{j=1}^N \alpha_i \alpha_j y_i y_j (\boldsymbol{x}_i \cdot \boldsymbol{x}_j)i=1Nαiyi(wxi)=i=1Nαiyi(j=1Nαjyjxjxi)=i=1Nj=1Nαiαjyiyj(xixj)

  3. 合并化简拉格朗日函数:
    L=12∑i,jαiαjyiyj(xi⋅xj)−[∑i,jαiαjyiyj(xi⋅xj)−∑iαi]\mathcal{L} = \frac{1}{2} \sum_{i,j} \alpha_i \alpha_j y_i y_j (\boldsymbol{x}_i \cdot \boldsymbol{x}_j) - \left[ \sum_{i,j} \alpha_i \alpha_j y_i y_j (\boldsymbol{x}_i \cdot \boldsymbol{x}_j) - \sum_i \alpha_i \right]L=21i,jαiαjyiyj(xixj)[i,jαiαjyiyj(xixj)iαi]
    =−12∑i,jαiαjyiyj(xi⋅xj)+∑iαi= -\frac{1}{2} \sum_{i,j} \alpha_i \alpha_j y_i y_j (\boldsymbol{x}_i \cdot \boldsymbol{x}_j) + \sum_i \alpha_i=21i,jαiαjyiyj(xixj)+iαi

因此,对偶问题转化为最大化以下函数( subject to 约束 αi≥0\alpha_i \geq 0αi0∑αiyi=0\sum \alpha_i y_i = 0αiyi=0):
max⁡α(∑i=1Nαi−12∑i=1N∑j=1Nαiαjyiyj(xi⋅xj))(8)\max_{\boldsymbol{\alpha}} \left( \sum_{i=1}^N \alpha_i - \frac{1}{2} \sum_{i=1}^N \sum_{j=1}^N \alpha_i \alpha_j y_i y_j (\boldsymbol{x}_i \cdot \boldsymbol{x}_j) \right) \tag{8}αmax(i=1Nαi21i=1Nj=1Nαiαjyiyj(xixj))(8)

步骤9:求解超平面参数

通过对偶问题求出 α\boldsymbol{\alpha}α 后,可计算:

  • w\boldsymbol{w}w:由式(6),w=∑αiyixi\boldsymbol{w} = \sum \alpha_i y_i \boldsymbol{x}_iw=αiyixi
  • bbb:由互补松弛条件,对 αi>0\alpha_i > 0αi>0 的样本(即支持向量),yi(w⋅xi+b)=1y_i(\boldsymbol{w} \cdot \boldsymbol{x}_i + b) = 1yi(wxi+b)=1,解得:
    b=yi−w⋅xi=yi−∑j=1Nαjyj(xj⋅xi)(9)b = y_i - \boldsymbol{w} \cdot \boldsymbol{x}_i = y_i - \sum_{j=1}^N \alpha_j y_j (\boldsymbol{x}_j \cdot \boldsymbol{x}_i) \tag{9}b=yiwxi=yij=1Nαjyj(xjxi)(9)
步骤10:分类决策函数

对新样本 x\boldsymbol{x}x,分类结果由超平面的符号决定:
f(x)=sign(w⋅x+b)=sign(∑i=1Nαiyi(xi⋅x)+b)(10)f(\boldsymbol{x}) = \text{sign}(\boldsymbol{w} \cdot \boldsymbol{x} + b) = \text{sign}\left( \sum_{i=1}^N \alpha_i y_i (\boldsymbol{x}_i \cdot \boldsymbol{x}) + b \right) \ (10)f(x)=sign(wx+b)=sign(i=1Nαiyi(xix)+b) (10)

三、数学案例:线性可分数据的SVM求解

设二维数据集如下(线性可分):

  • 正类(y=+1y=+1y=+1):x1=(3,3)T\boldsymbol{x}_1 = (3, 3)^Tx1=(3,3)Tx2=(4,3)T\boldsymbol{x}_2 = (4, 3)^Tx2=(4,3)T
  • 负类(y=−1y=-1y=1):x3=(1,1)T\boldsymbol{x}_3 = (1, 1)^Tx3=(1,1)Tx4=(2,1)T\boldsymbol{x}_4 = (2, 1)^Tx4=(2,1)T
步骤1:直观分析

最优超平面应位于两类数据中间,假设支持向量为 x1\boldsymbol{x}_1x1(正类)和 x3\boldsymbol{x}_3x3(负类),即 α1>0,α3>0\alpha_1 > 0, \alpha_3 > 0α1>0,α3>0α2=α4=0\alpha_2 = \alpha_4 = 0α2=α4=0(非支持向量)。

步骤2:代入对偶问题约束

∑αiyi=0\sum \alpha_i y_i = 0αiyi=0
α1⋅1+α3⋅(−1)=0⟹α1=α3(11)\alpha_1 \cdot 1 + \alpha_3 \cdot (-1) = 0 \implies \alpha_1 = \alpha_3 \tag{11}α11+α3(1)=0α1=α3(11)

步骤3:计算对偶目标函数

目标函数式(8)简化为(仅保留 α1,α3\alpha_1, \alpha_3α1,α3):
W(α)=α1+α3−12[α12(x1⋅x1)+α32(x3⋅x3)+2α1α3y1y3(x1⋅x3)]W(\alpha) = \alpha_1 + \alpha_3 - \frac{1}{2} \left[ \alpha_1^2 (x_1 \cdot x_1) + \alpha_3^2 (x_3 \cdot x_3) + 2\alpha_1 \alpha_3 y_1 y_3 (x_1 \cdot x_3) \right]W(α)=α1+α321[α12(x1x1)+α32(x3x3)+2α1α3y1y3(x1x3)]

代入数据:

  • x1⋅x1=32+32=18x_1 \cdot x_1 = 3^2 + 3^2 = 18x1x1=32+32=18x3⋅x3=12+12=2x_3 \cdot x_3 = 1^2 + 1^2 = 2x3x3=12+12=2
  • x1⋅x3=3⋅1+3⋅1=6x_1 \cdot x_3 = 3 \cdot 1 + 3 \cdot 1 = 6x1x3=31+31=6y1y3=1⋅(−1)=−1y_1 y_3 = 1 \cdot (-1) = -1y1y3=1(1)=1
  • α1=α3=α\alpha_1 = \alpha_3 = \alphaα1=α3=α,得:
    W(α)=2α−12[α2⋅18+α2⋅2+2α2⋅(−1)⋅6]W(\alpha) = 2\alpha - \frac{1}{2} \left[ \alpha^2 \cdot 18 + \alpha^2 \cdot 2 + 2\alpha^2 \cdot (-1) \cdot 6 \right]W(α)=2α21[α218+α22+2α2(1)6]
    =2α−12[20α2−12α2]=2α−4α2= 2\alpha - \frac{1}{2} \left[ 20\alpha^2 - 12\alpha^2 \right] = 2\alpha - 4\alpha^2=2α21[20α212α2]=2α4α2
步骤4:最大化对偶函数

W(α)W(\alpha)W(α) 求导并令其为0:
dWdα=2−8α=0⟹α=14\frac{dW}{d\alpha} = 2 - 8\alpha = 0 \implies \alpha = \frac{1}{4}dαdW=28α=0α=41
因此,α1=α3=14\alpha_1 = \alpha_3 = \frac{1}{4}α1=α3=41α2=α4=0\alpha_2 = \alpha_4 = 0α2=α4=0

步骤5:计算 w\boldsymbol{w}wbbb
  • w=α1y1x1+α3y3x3=14⋅1⋅(3,3)+14⋅(−1)⋅(1,1)=(3−14,3−14)=(0.5,0.5)\boldsymbol{w} = \alpha_1 y_1 \boldsymbol{x}_1 + \alpha_3 y_3 \boldsymbol{x}_3 = \frac{1}{4} \cdot 1 \cdot (3,3) + \frac{1}{4} \cdot (-1) \cdot (1,1) = \left( \frac{3-1}{4}, \frac{3-1}{4} \right) = (0.5, 0.5)w=α1y1x1+α3y3x3=411(3,3)+41(1)(1,1)=(431,431)=(0.5,0.5)
  • 由支持向量 x1\boldsymbol{x}_1x1bbby1(w⋅x1+b)=1y_1(\boldsymbol{w} \cdot \boldsymbol{x}_1 + b) = 1y1(wx1+b)=1
    1⋅(0.5⋅3+0.5⋅3+b)=1⟹3+b=1⟹b=−21 \cdot (0.5 \cdot 3 + 0.5 \cdot 3 + b) = 1 \implies 3 + b = 1 \implies b = -21(0.53+0.53+b)=13+b=1b=2
步骤6:验证超平面

超平面方程:0.5x1+0.5x2−2=00.5x_1 + 0.5x_2 - 2 = 00.5x1+0.5x22=0(即 x1+x2=4x_1 + x_2 = 4x1+x2=4)。

  • 正类样本 x1\boldsymbol{x}_1x1 到超平面的距离:∣3+3−4∣0.52+0.52=2\frac{|3+3-4|}{\sqrt{0.5^2 + 0.5^2}} = \sqrt{2}0.52+0.52∣3+34∣=2
  • 负类样本 x3\boldsymbol{x}_3x3 到超平面的距离:∣1+1−4∣0.52+0.52=2\frac{|1+1-4|}{\sqrt{0.5^2 + 0.5^2}} = \sqrt{2}0.52+0.52∣1+14∣=2,满足间隔最大化。

总结

SVM通过间隔最大化确定最优超平面,利用拉格朗日乘子法将原始问题转化为对偶问题,最终仅通过支持向量(αi>0\alpha_i > 0αi>0 的样本)即可求解超平面参数。这一特性使其在高维空间中仍具高效性,且可通过核函数扩展到非线性分类场景。以下将对支持向量机(SVM)的核心公式原理进行逐步骤详细推导,并结合数学案例说明,确保每一步的逻辑和计算过程清晰可追溯。

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

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

相关文章

【教程】Nginx 源码安装

开发环境&#xff1a;VMWare 操作系统&#xff1a;红帽 Linux 8   前言 以离线环境安装为前提&#xff0c;需准备以下 rmp 包内容&#xff1a; gccmakepcre-develzlib-developenssl-devel 如何准备可参考【教程】准备离线可用的 RPM 包   流程 准备离线包 # 安装 rpm yu…

俄罗斯信封套娃问题-二维最长递增子序列

354. 俄罗斯套娃信封问题 - 力扣&#xff08;LeetCode&#xff09; Solution 对一个维度从小到大排序&#xff0c;然后对另外一个维度求最长上升子序列即可。 class Solution { public:struct node {int w, h;node(int w, int h) {this->w w;this->h h;}};static bool…

区块链:用数学重构信任的数字文明基石

在数字经济浪潮席卷全球的今天&#xff0c;虚拟与现实的融合正面临一个根本性挑战——如何让数字世界的"承诺"拥有与现实世界同等的可信度&#xff1f; 当我们在电商平台下单时&#xff0c;如何确保商品质量与描述一致&#xff1f;当企业签署电子合同时&#xff0c;如…

Go语言defer机制详解与应用

一、defer作用Go语言的defer关键字提供了一种延迟执行机制&#xff0c;它能确保指定的函数调用在当前函数返回前被执行。这一特性常用于资源释放和异常处理场景。二、defer基本特性&#xff08;1&#xff09;执行时机&#xff1a;defer 语句会在外层函数返回前执行&#xff0c;…

服务器安全防护详细介绍

一、方案概述随着信息技术的飞速发展&#xff0c;服务器作为企业数据存储、业务运行的核心载体&#xff0c;其安全性至关重要。本服务器安全防护方案旨在通过多层次、全方位的安全防护策略&#xff0c;构建一个完整的服务器安全防护体系&#xff0c;有效抵御各类安全威胁&#…

网站与政务新媒体自查情况的报告工具功能

要高效地完成网站与政务新媒体的自查&#xff0c;并生成报告&#xff0c;通常需要借助专业的自动化巡检工具。这些工具能够模拟人工检查&#xff0c;但速度更快、覆盖面更广&#xff0c;并且能将发现的问题汇总成结构化的报告。一、网站与政务新媒体自查报告的工具实现功能这类…

JVM核心原理与实战优化指南

一、成为卓越的Java开发者 无论你是大学生还是资深工程师&#xff0c;学习JVM都至关重要。你可能是为了&#xff1a; 征服技术面试进行系统调优深入理解Java生态 学习路径建议&#xff1a; 从Java语言本质切入&#xff0c;逐步深入JVM核心机制&#xff0c;兼顾不同背景学习者…

TCP/IP、socket、http

区分与联系 TCP/IP 是底层规则,规定数据如何传输; Socket 是操作 TCP/IP 的工具,让程序能实现通信; HTTPS 是上层应用,用 Socket 调用 TCP/IP 协议,实现安全的数据传输。 应用层:HTTPS(基于 HTTP + SSL/TLS)| | socket连接了应用层和传输层↓ 传输层:TCP(可靠…

Go语言中的指针接收者

Go语言中的指针接收者&#xff08;Pointer Receiver&#xff09;与Java类中的方法在设计思想上确实有相似之处&#xff0c;尤其在对象状态修改和性能优化上&#xff0c;但两者在实现机制和语言哲学上存在显著差异。以下从核心特性、设计对比和应用场景展开分析&#xff1a;一、…

计算机视觉(opencv)实战三——图像运算、cv2.add()、cv2.addWeighted()

图像运算详解&#xff1a;加法运算与加权运算在数字图像处理中&#xff0c;图像运算是基础且常用的操作之一。它能够对两幅图像或图像与常数进行加减乘除&#xff0c;从而实现亮度调整、融合叠加、特效制作等功能。本文将重点介绍 OpenCV 中的图像加法运算与加权运算&#xff0…

Redis核心架构

一、核心模块如图 Client 客户端&#xff0c;官方提供了 C 语言开发的客户端&#xff0c;可以发送命令&#xff0c;性能分析和测试等。网络层事件驱动模型&#xff0c;基于 I/O 多路复用&#xff0c;封装了一个短小精悍的高性能 ae 库&#xff0c;全称是 a simple event-driven…

Python爬虫大师课:HTTP协议深度解析与工业级请求封装

Python爬虫大师课&#xff1a;HTTP协议深度解析与工业级请求封装 从零构建企业级爬虫框架&#xff08;附完整源码&#xff09; 一、爬虫基础&#xff1a;网络世界的通行证 ​​HTTP协议核心数据​​&#xff1a; 全球网站数量&#xff1a;20亿 HTTP请求占比&#xff1a;83% …

机器学习——PCA(主成分分析)降维

PCA&#xff08;主成分分析&#xff09;降维详解一、什么是 PCAPCA&#xff08;Principal Component Analysis&#xff0c;主成分分析&#xff09;是一种常用的数据降维方法。它通过线性变换将原始的高维数据映射到低维空间&#xff0c;同时尽可能保留原数据的主要信息&#xf…

把 AI 装进“冰箱贴”——基于超低功耗语音合成的小屏电子价签

标签&#xff1a;电子价签、语音合成、TTS、超低功耗、电子墨水、BLE、离线语音 ---- 1. 背景&#xff1a;价签也要开口说话&#xff1f; 超市做促销&#xff0c;顾客拿价签一扫&#xff0c;“今日番茄 2.99 元/斤&#xff0c;会员再享 9 折” 直接语音播放。 硬件限制&#xf…

挖漏洞是什么意思?挖漏洞赚钱入门到精通,收藏这篇就够了!

挖漏洞是什么意思&#xff1f;挖漏洞赚钱入门到精通&#xff0c;收藏这篇就够了&#xff01; 什么是漏洞挖掘 漏洞挖掘是指通过分析软件、系统或网络中存在的安全漏洞来发现并利用这些漏洞。漏洞挖掘是信息安全领域的一项重要工作&#xff0c;可以帮助企业和组织提高系统的安…

如何理解AP中SM中宿主进程?

在AUTOSAR Adaptive Platform&#xff08;AP&#xff09;中&#xff0c;状态管理&#xff08;State Management, SM&#xff09;的宿主进程&#xff08;Host Process&#xff09; 是实现状态机运行的核心载体&#xff0c;其本质与运作机制可通过以下结构化解析深入理解&#xf…

无人机光电探测模块技术分析

一、技术要点1. 多光谱成像技术 可见光与红外融合&#xff1a;白天依赖可见光高分辨率成像&#xff08;识别外形、颜色&#xff09;&#xff0c;夜间或低光照条件下切换至红外热成像&#xff08;捕捉0.5℃级温差&#xff09;&#xff0c;通过双波段互补提升全天候能力。 激光…

第40周——GAN入门

目录 目录 目录 前言 一、定义超参数 二、下载数据 三、配置数据 四、定义鉴别器 五、训练模型并保存 总结 前言 &#x1f368; 本文为&#x1f517;365天深度学习训练营中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 一、定义超参数 import argparse import os i…

Nginx性能优化与安全配置:打造高性能Web服务器

系列文章索引&#xff1a; 第一篇&#xff1a;《Nginx入门与安装详解&#xff1a;从零开始搭建高性能Web服务器》第二篇&#xff1a;《Nginx基础配置详解&#xff1a;nginx.conf核心配置与虚拟主机实战》第三篇&#xff1a;《Nginx代理配置详解&#xff1a;正向代理与反向代理…

二分算法(模板)

例题1&#xff1a; 704. 二分查找 - 力扣&#xff08;LeetCode&#xff09; 算法原理&#xff1a;&#xff08;二分&#xff09; 通过遍历也可以通过&#xff0c;但是二分更优且数据量越大越能体现。 二分思路&#xff1a; 1.mid1 (left right)/2 与 mid2 right (right …