【深度学习】1. 感知器,MLP, 梯度下降,激活函数,反向传播,链式法则

news2025/7/27 18:06:25

一、感知机

对于分类问题,我们设定一个映射,将x通过函数f(x)映射到y

1. 感知机的基本结构

感知机(Perceptron)是最早期的神经网络模型,由 Rosenblatt 在 1958 年提出,是现代神经网络和深度学习模型的雏形。

Deep Learning Methods - Introduction to Machine Learning

其模拟的是人脑内的神经元。神经元会接受到一些信号(我们给到模型的输入),之后神经元会决定是否激活这个信号,如果需要激活,就会产生一些神经冲动(Nerve Impulses),将信息传播到下一个链接。从而完成了信息端到端的传递。

Deep Learning 101: Lesson 7: Perceptron | by Muneeb S. Ahmad | Medium

在深度学习中,其定义如下

基本结构如下:

  • 输入向量 x = [ x 1 , x 2 , . . . , x d ] \mathbf{x} = [x_1, x_2, ..., x_d] x=[x1,x2,...,xd]
  • 权重向量 w = [ w 1 , w 2 , . . . , w d ] \mathbf{w} = [w_1, w_2, ..., w_d] w=[w1,w2,...,wd]
  • 偏置项 b b b
  • 输出函数: o = sign ( w ⊤ x + b ) o = \text{sign}(\mathbf{w}^\top \mathbf{x} + b) o=sign(wx+b)

sign ( s ) = { + 1 , s ≥ 0 − 1 , s < 0 \text{sign}(s) = \begin{cases} +1, & s \geq 0 \\\\ -1, & s < 0 \end{cases} sign(s)= +1,1,s0s<0

这是一个线性分类器,决策边界是一个超平面。

2. 感知机的数学定义与决策规则

感知机的核心是对输入的加权求和,并加上一个偏置项 b b b,用于输出一个实值:

y ^ = ∑ i = 1 d w i x i + b = w ⊤ x + b \hat{y} = \sum_{i=1}^{d} w_i x_i + b = \mathbf{w}^\top \mathbf{x} + b y^=i=1dwixi+b=wx+b

其中:

  • y ^ \hat{y} y^:神经元对期望输出的估计(输出值)
  • w \mathbf{w} w:权重向量(weight vector)
  • x \mathbf{x} x:输入向量(input vector)
  • b b b:偏置项(bias)
决策规则(Decision Rule)

感知机的最终分类结果是通过符号函数决定的:

o = sign ( y ^ ) = { + 1 , y ^ ≥ 0 − 1 , y ^ < 0 o = \text{sign}(\hat{y}) = \begin{cases} +1, & \hat{y} \geq 0 \\\\ -1, & \hat{y} < 0 \end{cases} o=sign(y^)= +1,1,y^0y^<0

这个函数将连续输出 y ^ \hat{y} y^ 映射到离散类别 { + 1 , − 1 } \{+1, -1\} {+1,1}

分类条件判断

感知机判断一个样本是否被正确分类,依据如下公式:

  • 如果样本分类正确,则:

y ( w ⊤ x + b ) ≥ 0 y(\mathbf{w}^\top \mathbf{x} + b) \geq 0 y(wx+b)0

  • 否则(分类错误):

y ( w ⊤ x + b ) < 0 y(\mathbf{w}^\top \mathbf{x} + b) < 0 y(wx+b)<0

这里的 y y y 是样本的真实标签(取值为 +1 或 -1)。这个不等式体现了分类面的位置是否与样本标签方向一致。

对于一个训练样本 ( x i , y i ) (\mathbf{x}_i, y_i) (xi,yi)

  • 如果分类正确: y i ( w ⊤ x i + b ) ≥ 0 y_i(\mathbf{w}^\top \mathbf{x}_i + b) \geq 0 yi(wxi+b)0
  • 否则分类错误。

直观理解:

y 表示 ground truth 真实标签

( w ⊤ x i + b ) (\mathbf{w}^\top \mathbf{x}_i + b) (wxi+b) 表示 y ^ \hat{y} y^ 即模型预测标签

而sign函数,把预测值分为了两个:+1,-1

因此预测正确的情况有两种:(+1, +1) 或者 (-1, -1) 这两种情况二者的乘积都是 >0

预测错误的情况: (+1, -1) 或者 (-1, +1) 这两种情况的乘积 < 0

感知机的损失函数仅考虑错误分类的样本:

m i n L ( w , b ) = − ∑ i ∈ M y i ( w ⊤ x i + b ) min L(\mathbf{w}, b) = -\sum_{i \in \mathcal{M}} y_i (\mathbf{w}^\top \mathbf{x}_i + b) minL(w,b)=iMyi(wxi+b)

其中 M \mathcal{M} M 是错误分类样本的集合。

为什么有个负号? 按照原始的公式定义, ∑ i ∈ M y i ( w ⊤ x i + b ) \sum_{i \in \mathcal{M}} y_i (\mathbf{w}^\top \mathbf{x}_i + b) iMyi(wxi+b) 的最大值才是我们的优化目标。

此时的乘积是一种分类边界距离的粗略估计,但并不适用于衡量回归或概率分布的“误差大小”。 (因此不能用误差大小的思路来想。)

说回负号,在机器学习中,我们习惯用**最小化(minimization)**问题来构造损失函数,也方便求导。

优化器SGD、Adam等是梯度下降,适配最小化的loss函数

3. 优化算法:梯度下降

通过求偏导得到:

  • 权重更新: ∇ w L = − ∑ i ∈ M y i x i \nabla_\mathbf{w} L = - \sum_{i \in \mathcal{M}} y_i \mathbf{x}_i wL=iMyixi
  • 偏置更新: ∇ b L = − ∑ i ∈ M y i \nabla_b L = - \sum_{i \in \mathcal{M}} y_i bL=iMyi

偏导后得到的是梯度,同时包含“变化的方向”与“变化的速率”

每次迭代更新:

w ← w + η y i x i , b ← b + η y i \mathbf{w} \leftarrow \mathbf{w} + \eta y_i \mathbf{x}_i, \quad b \leftarrow b + \eta y_i ww+ηyixi,bb+ηyi

具体而言 ∇ w L = − ∑ i ∈ M y i x i \nabla_\mathbf{w} L = - \sum_{i \in \mathcal{M}} y_i \mathbf{x}_i wL=iMyixi 告诉我们:朝着这个方向,损失上升最快

所以我们应该:

w ← w − η ∇ w L \mathbf{w} \leftarrow \mathbf{w} - \eta \nabla_\mathbf{w}L wwηwL

来减小损失

4. 激活函数:Sign 函数

g ( x ) = sign ( w ⊤ x + b ) g(\mathbf{x}) = \text{sign}(\mathbf{w}^\top \mathbf{x} + b) g(x)=sign(wx+b)

定义如下:

sign ( s ) = { + 1 , s ≥ 0 − 1 , s < 0 \text{sign}(s) = \begin{cases} +1, & s \geq 0 \\\\ -1, & s < 0 \end{cases} sign(s)= +1,1,s0s<0

5. 感知机的局限性

  • 感知机无法处理非线性可分问题。
  • 经典反例:XOR 任务。

在这里插入图片描述

x1x2y (XOR)
000
011
101
110

线性模型无法分割这两类。

6. AI 寒冬与转折点

  • Minsky 与 Papert 在《Perceptrons》中指出感知机的局限,引发“AI寒冬”。

二、多层感知机(MLP)与非线性建模

1. 多层网络结构

1986年,Hinton 等人提出反向传播算法(Backpropagation)

  • 支持隐藏层训练
  • 支持非线性组合

组成: 输入层 → 隐藏层 → 输出层

Unsupervised Feature Learning and Deep Learning Tutorial

2. 网络表示为函数复合

y = f ( L ) ( … f ( 2 ) ( f ( 1 ) ( x ) ) ) y = f^{(L)}(\dots f^{(2)}(f^{(1)}(x))) y=f(L)(f(2)(f(1)(x)))

对应结构是一个有向无环图(DAG),每层将上一层的输出作为输入。

3. 非线性激活函数

激活函数必须非线性,否则多层仍等效于单层。

常见激活函数:

  • Sigmoid: f ( s ) = 1 1 + e − s f(s) = \frac{1}{1 + e^{-s}} f(s)=1+es1

  • Tanh: f ( s ) = e s − e − s e s + e − s f(s) = \frac{e^s - e^{-s}}{e^s + e^{-s}} f(s)=es+eseses

  • ReLU: f ( s ) = max ⁡ ( 0 , s ) f(s) = \max(0, s) f(s)=max(0,s)

  • Leaky ReLU:
    f ( s ) = { s , s ≥ 0 α s , s < 0 f(s) = \begin{cases} s, & s \geq 0 \\\\ \alpha s, & s < 0 \end{cases} f(s)= s,αs,s0s<0

  • GELU: 使用高斯误差函数的平滑激活

4. 通用逼近定理(Universal Approximation Theorem)

通用逼近定理是神经网络理论的核心之一。它说明:

只要一个前馈神经网络具有单隐藏层,且隐藏单元数量足够多,它就能以任意精度逼近任何连续函数。

数学表述

设激活函数 f ( ⋅ ) f(\cdot) f() 是一个非常数、有界、单调递增的连续函数

定义 I m = [ 0 , 1 ] m I_m = [0,1]^m Im=[0,1]m 表示 m m m 维单位超立方体, C ( I m ) C(I_m) C(Im) 表示定义在 I m I_m Im 上的所有连续函数的集合。

则对于任意 ε > 0 \varepsilon > 0 ε>0 和任意函数 F ∈ C ( I m ) F \in C(I_m) FC(Im),总存在整数 N N N、实数 v i , b i ∈ R v_i, b_i \in \mathbb{R} vi,biR 和向量 w i ∈ R m \mathbf{w}_i \in \mathbb{R}^m wiRm,使得:

F ^ ( x ) = ∑ i = 1 N v i f ( w i ⊤ x + b i ) \hat{F}(x) = \sum_{i=1}^{N} v_i f(\mathbf{w}_i^\top \mathbf{x} + b_i) F^(x)=i=1Nvif(wix+bi)

满足:

∣ F ^ ( x ) − F ( x ) ∣ < ε , ∀ x ∈ I m \left| \hat{F}(x) - F(x) \right| < \varepsilon, \quad \forall x \in I_m F^(x)F(x) <ε,xIm

即函数 F ^ ( x ) \hat{F}(x) F^(x) 可以任意逼近 F ( x ) F(x) F(x)

直观解释
  • 神经网络可以通过一个隐藏层 + 足够多的神经元来逼近任何连续函数
  • 每个隐藏神经元做一个线性变换 + 激活函数(如 Sigmoid 或 Tanh)
  • 输出层再对它们加权求和,实现对复杂函数的拟合
实际意义
项目说明
所需层数仅需单隐藏层(前馈)
所需神经元足够多即可,不一定很深
所逼近的函数任何连续函数(理论上)
激活函数要求非常数、有界、单调递增、连续
引用

Universality Theorem (Hecht-Nielsen, 1989):
“Neural networks with a single hidden layer can be used to approximate any continuous function to any desired precision.”

5. 可视化解释(单输入 → 单输出)

  • 增加权重 → 激活函数更陡峭
  • 改变偏置 → 平移激活区域(会移动图形,但不会改变图形的形状。)
  • 组合多个隐藏神经元 → 构造阶跃、凸包、塔型结构等更复杂函数

在二维输入时,通过构建多个线性超平面与组合,网络可以学习更复杂的输入空间划分。

Neural Networks, the Universal Approximation Theorem and Option Valuation |  by Abhisek | Analytics Vidhya | Medium

6. 激活函数的作用与常见形式

激活函数是神经元中引入非线性的关键部分,它决定了每个神经元的响应形式。

必须是非线性的:否则就等同于线性分类器

几乎处处连续且可微单调性:否则会在误差面引入额外的局部极值

在这里插入图片描述

比如 sin 函数就不可以作为激活函数,因为有多个局部极值,不符合单调性。

激活函数的基本结构

一个神经元的输出形式如下:

a = f ( w ⊤ x + b ) a = f(w^\top x + b) a=f(wx+b)

其中:

  • f f f 是激活函数
  • w ⊤ x + b w^\top x + b wx+b 是线性部分,决定输入的加权求和和偏移

激活函数 f ( ⋅ ) f(\cdot) f() 的引入,使得神经网络具备学习非线性关系的能力。

常见激活函数
1. Sigmoid(S型函数)

f ( x ) = 1 1 + e − x f(x) = \frac{1}{1 + e^{-x}} f(x)=1+ex1

  • 输出范围: ( 0 , 1 ) (0, 1) (0,1)

  • 常用于早期网络、概率建模

  • 缺点:梯度容易消失、饱和区间较大

    Sigmoid Activation Function: An Introduction | Built In

2. Tanh(双曲正切)

f ( x ) = e x − e − x e x + e − x = 2 ⋅ sigmoid ( 2 x ) − 1 f(x) = \frac{e^x - e^{-x}}{e^x + e^{-x}} = 2 \cdot \text{sigmoid}(2x) - 1 f(x)=ex+exexex=2sigmoid(2x)1

  • 输出范围: ( − 1 , 1 ) (-1, 1) (1,1)
  • 中心化特性优于 sigmoid,训练更稳定

Tanh Activation Explained | Papers With Code

3. ReLU(Rectified Linear Unit)

f ( x ) = max ⁡ ( 0 , x ) f(x) = \max(0, x) f(x)=max(0,x)

  • 当前主流激活函数
  • 计算简单,不饱和区域梯度稳定
  • 缺点:负区间完全为零(神经元死亡)
    在这里插入图片描述
4. Leaky ReLU

f ( x ) = { x , x ≥ 0 α x , x < 0 f(x) = \begin{cases} x, & x \geq 0 \\ \alpha x, & x < 0 \end{cases} f(x)={x,αx,x0x<0

  • 弥补 ReLU 在负区间完全为 0 的问题

  • α \alpha α 是一个很小的正数(如 0.01)

    Leaky ReLU Explained | Papers With Code

5. GELU(Gaussian Error Linear Unit)

f ( x ) = x ⋅ Φ ( x ) f(x) = x \cdot \Phi(x) f(x)=xΦ(x)

其中 Φ ( x ) \Phi(x) Φ(x) 是标准正态分布的累积分布函数。

  • 更平滑的 ReLU 变体
  • 被用于 BERT、GPT 等大模型中

在这里插入图片描述

激活函数的可视化与作用
  • 权重 w w w 控制曲线的陡峭程度(斜率)
  • 偏置 b b b 控制曲线在输入空间的位置(左右平移)
  • 激活函数本身决定了形状(阶跃、平滑、非线性)

举例说明:

  • f ( w x + b ) f(wx + b) f(wx+b) 中改变 w w w 会使 Sigmoid 更陡或更平缓
  • 改变 b b b 会让激活区间左移或右移

但注意:

偏置 b b b 不会改变激活函数的形状,只是移动它的激活位置。

而组合多个神经元后,整个网络的输出函数形状就可以被灵活控制,例如拼接成阶梯函数、塔函数等复杂结构。

7. 反向传播与激活函数的梯度问题

在神经网络训练中,我们通过最小化损失函数来更新权重和偏置,这一过程依赖于反向传播算法(Backpropagation)。

反向传播的核心思想是利用链式法则计算每一层参数对损失函数的梯度。

链式法则回顾

对于复合函数:
L = f ( g ( x ) ) ⇒ d L d x = f ′ ( g ( x ) ) ⋅ g ′ ( x ) L = f(g(x)) \Rightarrow \frac{dL}{dx} = f'(g(x)) \cdot g'(x) L=f(g(x))dxdL=f(g(x))g(x)

在神经网络中每一层都相当于一次嵌套函数变换,因而可以通过链式法则将梯度从输出层反传至输入层。

激活函数对梯度的影响

梯度的传播会经过每一层的激活函数:

  • 若激活函数的导数为零或极小(如 sigmoid 饱和区),则梯度容易消失
  • 若激活函数导数过大或不连续,可能造成不稳定训练(如 ReLU 的断点)
各类激活函数的导数
  • Sigmoid:
    f ′ ( x ) = f ( x ) ( 1 − f ( x ) ) f'(x) = f(x)(1 - f(x)) f(x)=f(x)(1f(x))
    → 导数最大为 0.25,容易出现梯度消失

  • Tanh:
    f ′ ( x ) = 1 − f ( x ) 2 f'(x) = 1 - f(x)^2 f(x)=1f(x)2
    → 比 sigmoid 好,但也有饱和区

  • ReLU:
    f ′ ( x ) = { 1 , x > 0 0 , x ≤ 0 f'(x) = \begin{cases} 1, & x > 0 \\ 0, & x \leq 0 \end{cases} f(x)={1,0,x>0x0
    → 在正区间梯度为 1,负区间为 0(死亡神经元)

  • Leaky ReLU:
    f ′ ( x ) = { 1 , x > 0 α , x < 0 f'(x) = \begin{cases} 1, & x > 0 \\ \alpha, & x < 0 \end{cases} f(x)={1,α,x>0x<0
    → 解决了 ReLU 在负区间的“零梯度”问题

  • GELU:
    f ′ ( x ) ≈ Φ ( x ) + x ⋅ ϕ ( x ) f'(x) \approx \Phi(x) + x \cdot \phi(x) f(x)Φ(x)+xϕ(x)
    其中 ϕ ( x ) \phi(x) ϕ(x) 是标准正态分布密度函数

    → 与ReLU相比平滑,使其能够更好地保留小梯度信息,增强模型的表达能力。

    GELU通常比ReLU和Leaky实现更好的收敛性.

激活函数选择对训练的影响
激活函数优点缺点
Sigmoid平滑、输出为概率梯度消失严重
Tanh零中心、平滑饱和区影响训练
ReLU快速收敛、稀疏激活死亡神经元问题
Leaky ReLU缓解死神经元引入超参 α \alpha α
GELU平滑 & 有理论支持计算复杂

因此,在实际模型设计中,需要根据任务和模型深度选择合适的激活函数,以保证训练稳定和效率。

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

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

相关文章

云原生安全:网络协议TCP详解

&#x1f525;「炎码工坊」技术弹药已装填&#xff01; 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 &#xff08;注&#xff1a;文末附可视化流程图与专有名词说明表&#xff09; 1. 基础概念 TCP&#xff08;Transmission Control Protocol&#xff09;是…

使用CentOS部署本地DeekSeek

一、查看服务器的操作系统版本 cat /etc/centos-release二、下载并安装ollama 1、ollama下载地址&#xff1a; Releases ollama/ollama GitHubGet up and running with Llama 3.3, DeepSeek-R1, Phi-4, Gemma 3, Mistral Small 3.1 and other large language models. - Re…

LLMs之Qwen:《Qwen3 Technical Report》翻译与解读

LLMs之Qwen&#xff1a;《Qwen3 Technical Report》翻译与解读 导读&#xff1a;Qwen3是Qwen系列最新的大型语言模型&#xff0c;它通过集成思考和非思考模式、引入思考调度机制、扩展多语言支持以及采用强到弱的知识等创新技术&#xff0c;在性能、效率和多语言能力方面都取得…

从工程实践角度分析H.264与H.265的技术差异

作为音视频从业者&#xff0c;我们时刻关注着视频编解码技术的最新发展。RTMP推流、轻量级RTSP服务、RTMP播放、RTSP播放等模块是大牛直播SDK的核心功能&#xff0c;在这些模块的实现过程中&#xff0c;H.264和H.265两种视频编码格式的应用实践差异是我们技术团队不断深入思考的…

如何设计一个高性能的短链设计

1.什么是短链 短链接&#xff08;Short URL&#xff09; 是通过算法将长 URL 压缩成简短字符串的技术方案。例如将 https://flowus.cn/veal/share/3306b991-e1e3-4c92-9105-95abf086ae4e 缩短为 https://sourl.cn/aY95qu&#xff0c;用户点击短链时会自动重定向到原始长链接。其…

提升工作效率的可视化笔记应用程序

StickyNotes桌面便签软件介绍 StickyNotes是一款极为简洁的桌面便签应用程序&#xff0c;让您能够快速记录想法、待办事项或其他重要信息。这款工具操作极其直观&#xff0c;只需输入文字内容&#xff0c;选择合适的字体大小和颜色&#xff0c;然后点击添加按钮即可创建个性化…

11|省下钱买显卡,如何利用开源模型节约成本?

不知道课程上到这里&#xff0c;你账户里免费的5美元的额度还剩下多少了&#xff1f;如果你尝试着完成我给的几个数据集里的思考题&#xff0c;相信这个额度应该是不太够用的。而ChatCompletion的接口&#xff0c;又需要传入大量的上下文信息&#xff0c;实际消耗的Token数量其…

机器学习圣经PRML作者Bishop20年后新作中文版出版!

机器学习圣经PRML作者Bishop20年后新书《深度学习&#xff1a;基础与概念》出版。作者克里斯托弗M. 毕晓普&#xff08;Christopher M. Bishop&#xff09;微软公司技术研究员、微软研究 院 科学智 能 中 心&#xff08;Microsoft Research AI4Science&#xff09;负责人。剑桥…

吴恩达机器学习笔记:逻辑回归3

3.判定边界 现在说下决策边界(decision boundary)的概念。这个概念能更好地帮助我们理解逻辑回归的假设函数在计算什么。 在逻辑回归中&#xff0c;我们预测&#xff1a; 当ℎθ (x) > 0.5时&#xff0c;预测 y 1。 当ℎθ (x) < 0.5时&#xff0c;预测 y 0 。 根据…

docker中使用openresty

1.为什么要使用openresty 我这边是因为要使用1Panel&#xff0c;第一个最大的原因&#xff0c;就是图方便&#xff0c;比较可以一键安装。但以前一直都是直接安装nginx。所以需要一个过度。 2.如何查看openResty使用了nginx哪个版本 /usr/local/openresty/nginx/sbin/nginx …

Java 中的 super 关键字

个人总结&#xff1a; 1.子类构造方法中没有显式使用super&#xff0c;Java 也会默认调用父类的无参构造方法 2.当父类中没有无参构造方法&#xff0c;只有有参构造方法时&#xff0c;子类构造方法就必须显式地使用super来调用父类的有参构造方法。 3.如果父类没有定义任何构造…

PCM音频数据的编解码

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、pandas是什么&#xff1f;二、使用步骤 1.引入库2.读入数据 总结 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 例如&#xff1a…

Ubuntu 通过指令远程命令行配置WiFi连接

前提设备已经安装了无线网卡。 1、先通过命令行 ssh 登录机器。 2、搜索wifi设备&#xff0c;指令如下&#xff1a; sudo nmcli device wifi 3、输入需要联接的 wifi 名称和对应的wifi密码&#xff0c;指令如下&#xff1a; sudo nmcli device wifi connect wifi名称 passw…

8天Python从入门到精通【itheima】-41~44

目录 41节-while循环的嵌套应用 1.学习目标 2.while循环的伪代码和生活情境中的应用 3.图片应用的代码案例 4.代码实例【Patrick自己亲手写的】&#xff1a; 5.whlie嵌套循环的注意点 6.小节总结 42节-while循环的嵌套案例-九九乘法表 1.补充知识-print的不换行 2.补充…

深度图数据增强方案-随机增加ROI区域的深度

主要思想&#xff1a;随机增加ROI区域的深度&#xff0c;模拟物体处在不同位置的形态。 首先打印一张深度图中的深度信息分布&#xff1a; import cv2 import matplotlib.pyplot as plt import numpy as np import seaborn as sns def plot_grayscale_histogram(image_path)…

两个mysql的maven依赖要用哪个?

背景 <dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId> </dependency>和 <dependency><groupId>com.mysql</groupId><artifactId>mysql-connector-j</artifactId> &l…

Kafka Consumer工作流程

Kafka Consumer工作流程图 1、启动与加入组 消费者启动后&#xff0c;会向 Kafka 集群中的某个 Broker 发送请求&#xff0c;请求加入特定消费者组。这个 Broker 中的消费者协调器&#xff08;Consumer Coordinator&#xff09;负责管理消费者组相关事宜。 2、组内分区分配&am…

大腾智能 PDM 系统:全生命周期管理重塑制造企业数字化转型路径

在当今激烈的市场竞争中&#xff0c;产品迭代速度与质量已成为企业生存与发展的核心命脉。面对客户需求多元化、供应链协同复杂化、研发成本管控精细化等挑战&#xff0c;企业亟需一套能够贯穿产品全生命周期的数字化解决方案。 大腾智能PDM系统通过构建覆盖设计、研发、生产、…

【短距离通信】【WiFi】WiFi7关键技术之4096-QAM、MRU

目录 3. 4096-QAM 3.1 4096-QAM 3.2 QAM 的阶数越高越好吗&#xff1f; 4. MRU 4.1 OFDMA 和 RU 4.2 MRU 资源分配 3. 4096-QAM 摘要 本章主要介绍了Wi-Fi 7引入的4096-QAM对数据传输速率的提升。 3.1 4096-QAM 对速率的提升 Wi-Fi 标准一直致力于提升数据传输速率&a…

线程池实战——数据库连接池

引言 作者在前面写了很多并发编程知识深度探索系列文章&#xff0c;反馈得知友友们收获颇丰&#xff0c;同时我也了解到友友们也有了对知识如何应用感到很模糊的问题。所以作者就打算写一个实战系列文章&#xff0c;让友友们切身感受一下怎么应用知识。话不多说&#xff0c;开…