神经网络基础
神经网络基础
神经元模型、多层感知器结构、前向传播与反向传播算法原理。
激活函数对比
Sigmoid、ReLU、Leaky ReLU、Tanh、Swish 等激活函数的优缺点与适用场景。
梯度消失与梯度爆炸
理解深层网络中梯度传播的挑战,以及 ReLU、残差连接等解决方案。
权重初始化
Xavier、He 初始化等策略,以及 Batch Normalization 的作用与原理。
正则化与优化
正则化技术
L1/L2 正则、Dropout、Early Stopping、Batch Normalization 防止过拟合的原理与实践。
优化器选择指南
SGD、Momentum、Adam、RMSprop 等优化器的原理与选择策略。
卷积神经网络 CNN
卷积操作原理
理解卷积核、步长、填充等概念,以及卷积如何提取空间特征。
经典 CNN 架构
从 LeNet 到 ResNet 的经典网络架构演进,理解残差连接的革命性意义。
经典 CNN 架构
Inception 模块、深度可分离卷积、EfficientNet 等高效网络设计思想。
目标检测算法
从 R-CNN 到 YOLO,理解 One-Stage 与 Two-Stage 检测器的区别与演进。
循环神经网络 RNN
RNN 与 LSTM
理解循环神经网络的梯度问题,以及 LSTM、GRU 如何通过门控机制解决长期依赖。
Seq2Seq 与注意力机制
编码器-解码器架构,以及 Attention 机制如何解决信息瓶颈问题。
PyTorch 示例
import torch.nn as nn
# 定义一个简单的卷积神经网络
class SimpleCNN(nn.Module):
def __init__(self):
super().__init__()
self.conv1 = nn.Conv2d(3, 32, kernel_size=3, padding=1)
self.relu = nn.ReLU()
self.pool = nn.MaxPool2d(2, 2)
self.conv2 = nn.Conv2d(32, 64, kernel_size=3, padding=1)
self.fc = nn.Linear(64 * 8 * 8, 10)
def forward(self, x):
x = self.pool(self.relu(self.conv1(x)))
x = self.pool(self.relu(self.conv2(x)))
x = x.view(x.size(0), -1)
return self.fc(x)