什么是神经网络?

4 阅读7分钟

1. 核心定义与生物类比

从本质上讲,神经网络是一种受人脑结构启发的计算模型,用于识别数据中的复杂模式和相关关系。  它由大量相互连接的简单处理单元(称为“神经元”或“节点”)组成,通过调整这些连接之间的强度(称为“权重”)来学习。

生物类比:

  • 生物神经元:大脑中的神经元通过树突接收来自其他神经元的电信号。如果信号总和超过某个阈值,该神经元会被“激活”,通过轴突向下一个神经元发送信号。
  • 人工神经元:这是对生物神经元的极度简化和数学抽象。

2. 人工神经元的数学解剖(核心构建块)

一个典型的人工神经元模型包含三个部分:

  1. 输入(Inputs) : x₁, x₂, ..., xₙ。这些是输入到神经元的数据特征。每个输入都对应一个权重(Weights)  w₁, w₂, ..., wₙ。权重代表了该输入连接的重要性。还有一个特殊的输入,称为偏置(Bias)  b,它可以增加模型的灵活性,使激活函数的阈值可以移动。
  2. 加权求和与偏置(Summation + Bias) : 神经元将所有输入乘以其对应的权重并求和,然后加上偏置。这一步计算出一个“净输入”。
    z = (w₁*x₁ + w₂*x₂ + ... + wₙ*xₙ) + b
    可以更简洁地写成向量形式: z = w·x + b
  3. 激活函数(Activation Function) : f(z)。这是神经网络能够学习非线性关系的关键。净输入 z 被送入一个非线性函数 f,产生该神经元的最终输出 a = f(z)
    a = f(z) = f(w·x + b)

常见激活函数:

  • Sigmoid:将输入压缩到(0,1)之间,常用于二分类问题的输出层。
  • Tanh:将输入压缩到(-1,1)之间,均值是0,收敛性通常比Sigmoid好。
  • ReLU(整流线性单元)f(z) = max(0, z)。这是目前最流行的激活函数,因为它能有效缓解梯度消失问题,计算简单,且能产生稀疏激活。
  • Softmax:常用于多分类问题的输出层,将多个神经元的输出转换为概率分布。

3. 网络架构:层的概念

单个神经元能力有限,因此我们将它们组织成层(Layers)

  1. 输入层(Input Layer) :接收原始数据。这一层的节点数通常等于输入数据的特征维度。
  2. 隐藏层(Hidden Layers) :位于输入层和输出层之间。一个网络可以有一个或多个隐藏层,这些层是神经网络学习复杂表示的核心。具有多个隐藏层的网络被称为深度神经网络,这也是“深度学习”一词的来源。
  3. 输出层(Output Layer) :产生网络的最终预测结果。节点数量和激活函数的选择取决于任务类型(例如,回归任务可能使用一个线性节点,二分类使用一个Sigmoid节点,多分类使用多个Softmax节点)。

前向传播(Forward Propagation) :数据从输入层开始,经过每一层加权求和并应用激活函数,最终到达输出层的过程。这个过程是网络进行“推理”或“预测”的方式。


4. 神经网络如何“学习”?—— 训练过程解析

学习的过程,本质上就是寻找一组最优的权重 W 和偏置 b,使得网络对于所有训练样本的预测输出 ŷ 尽可能接近真实标签 y

这个过程通过一个名为反向传播(Backpropagation)  的算法与梯度下降(Gradient Descent)  优化算法共同实现。

训练循环(Training Loop)的四个关键步骤:

  1. 初始化(Initialization) :随机初始化所有权重和偏置。

  2. 前向传播(Forward Pass) :将一个批量的训练数据输入网络,得到预测输出 ŷ

  3. 计算损失(Loss Calculation) :使用一个损失函数(Loss Function)  来量化预测值 ŷ 与真实值 y 之间的差距。

    • 常见损失函数

      • 均方误差(MSE):用于回归任务。
      • 交叉熵损失(Cross-Entropy Loss):用于分类任务。
  4. 反向传播与梯度下降(Backpropagation & Gradient Descent) :这是学习的核心。

    • 反向传播:这是一个链式法则的巧妙应用。它从输出层开始,反向计算损失函数对于网络中每一个权重和偏置的梯度(Gradient) 。梯度指明了损失函数增长最快的方向。
    • 梯度下降:既然梯度指向了损失增加的方向,那么我们就朝它的反方向(负梯度方向)微调所有的参数。调整的步长由一个超参数学习率(Learning Rate)  控制。
      W_new = W_old - η * ∇W_L
      b_new = b_old - η * ∇b_L
      其中 η 是学习率,∇W_L 和 ∇b_L 是由反向传播计算出的梯度。

这个循环(前向传播 -> 计算损失 -> 反向传播 -> 更新参数)会对整个训练数据集重复多轮(称为Epochs),直到损失收敛到一个较小的值,此时我们认为网络已经“学会”了。


5. 为什么神经网络如此强大?—— 万能近似定理

从理论上看,神经网络的核心力量源于万能近似定理(Universal Approximation Theorem)

该定理指出:一个至少包含一个隐藏层的前馈神经网络,只要隐藏层拥有足够多的神经元,就可以以任意精度近似任何在紧凑子集上的连续函数。

简单来说,即使是单隐藏层的网络,也具备成为“万能函数拟合器”的潜力。深度(多个隐藏层)的引入,使得网络能够以更高效、更参数更少的方式学习到数据的层次化特征表示。

  • 在图像中:浅层可能学习到边缘、角落等低级特征;中间层可能学习到眼睛、鼻子等中级特征;深层则可能学习到人脸、物体等高级特征。
  • 在文本中:浅层可能学习到词性、语法;深层则可能学习到语义、情感。

6. 主要类型与应用

  • 前馈神经网络(FNN) :最基础的类型,数据单向流动。
  • 卷积神经网络(CNN) :专为图像处理设计,通过卷积核高效提取空间特征。
  • 循环神经网络(RNN) :专为序列数据(如时间序列、文本)设计,具有“记忆”功能。其变体如LSTM和GRU解决了长程依赖问题。
  • 生成对抗网络(GAN) :由生成器和判别器组成,能生成高度逼真的新数据。
  • Transformer:基于自注意力机制,彻底改变了自然语言处理领域,成为如BERT、GPT等大语言模型的基础。

总结:专业视角的核心要点

  1. 数学本质:神经网络是一个由可微组件(加权求和+激活函数)构成的复杂复合函数。
  2. 学习机制:通过反向传播高效计算梯度,并利用梯度下降最小化损失函数,从而迭代地优化网络参数。
  3. 非线性能力激活函数是引入非线性的关键,使网络能够逼近任何复杂函数。
  4. 表示学习:深度网络的核心优势在于其能自动从数据中学习层次化的特征表示,无需繁琐的人工特征工程。
  5. 工程系统:现代神经网络是一个庞大的工程系统,涉及数据预处理、架构设计、超参数调优、正则化(如Dropout、L2)和强大的计算硬件(如GPU)。

希望这个从基础构件到核心原理的深入分析,能帮助你从专业角度理解神经网络。