计算机视觉 Computer Vision

【三年面试五年模拟】算法工程师的求职面试秘籍 > 从 ReLU 到 GELU,一文概览神经网络的激活函数

  • https://github.com/DWCTOD/interview/blob/master/detail/%E4%BD%9C%E4%B8%9A%E5%B8%AE%20%E8%A7%86%E8%A7%89%E7%AE%97%E6%B3%95%E5%B7%A5%E7%A8%8B%E5%B8%88%20%E9%9D%A2%E7%BB%8F%EF%BC%882020%E5%B1%8A%EF%BC%89.md

  • https://github.com/GYee/CV_interviews_Q-A

图像处理与计算机视觉基础

基本概念

原理

图像预处理

特征提取

对象检测

图像分类

图像分割

OpenCV 库

读写图像

图像滤波

几何变换

特征检测与描述

深度学习基础

梯度下降

滑动平均

模型微调(Fine-tuning)

基础模块

池化层 Pooling Layer

归一化层 Normalization Layer

  • BN,Batch Normalization
  • IN,Instance Normalization
  • LN,Layer Normalization
  • GN,Group Normalization

BN 是怎么做,作用是什么

激活层

  1. 常见激活函数

    • Sigmoid
    • Tanh
    • ReLU
    • LeakyReLU
    • SoftPlus
    • ELU
    • SELU,自归一化
    • Swish,类 Sigmoid 作为开关
    • GELU
    • GLU
  2. 特性

    • 梯度消失 存在偏导过小
    • 梯度爆炸 偏导累乘过大
    • 梯度裁剪
    • 输出均值为 0 能避免每次权重只能往单一反向变化
    • ReLU 计算复杂度低
    • ReLU 的负半轴为输出值增加稀疏性,减少计算量,但同时会让一些神经元不能更新
    • SoftPlus,ReLU 的平滑

全连接层 Linear

嵌入层 Embedding

卷积层 Convolution

  • 特征

    • 局部感知、权值共享、平移不变、多核
  • 1×1 卷积

    • 特征增强
    • 特征融合
    • 改变通道数
    • 分类
  • 空洞卷积

  • 分组卷积

转置卷积层 Transpose Convolution

上采样

  1. 插值
  2. 反卷积
  3. PixelShuffle

优化模块

残差结构 Residual Connection

将输入与层输出相加

  • 优势

    • 缓解梯度消失,增加网络深度
    • 保留信息,特征重用

空间金字塔池化(Spatial Pyramid Pooling,SPP)

空洞空间金字塔池化(Atrous Spatial Pyramid Pooling,ASPP)

HDC

可变形卷积 Deformable Convolution

可分离卷积 Separable Convolution

Transformer

  • 模块结构

    • 多头自注意力机制(Multi-Head Self-Attention Mechanism)
    • 前馈神经网络(Feed-Forward Neural Network)
    • 层归一化(Layer Normalization)
    • 残差连接(Residual Connections)
  • Self-Attention

  • 除以的原因

    • 矩阵计算导致的元素值整体偏大,从而引发梯度消失
    • 计算后的数据平方差为,除以,将分布的方差纠正回接近 1
  • 并行化的体现

    • 序列计算多头注意力
  • 影响计算量的因素

    • 序列长度:点积、矩阵乘
    • 头数量
  • 优势

    • 并行处理整个序列
    • 长距离依赖
  • 缺点

    • 计算量大
    • 超参调优
    • 超长序列处理能力

Cross-Attention

Convolutional Attention

  • SENet -CBAM

基础模型

前馈神经网络

卷积神经网络(CNN)

循环神经网络(RNN)

长短时记忆网络(LSTM)

模型调优

模型优化

正则化

  • L1 正则化
  • L2 正则化

损失函数

已知 softmax 输出概率序列与实际分布概率序列,计算两者交叉熵

超参数调整

在深度学习中,超参数(Hyperparameters)是指在训练开始前设置的模型参数,不是通过训练学习得到的。超参数的选择对模型性能有很大的影响,不同的超参数设置可能导致显著不同的训练结果。

优化器选择

  • SGD
  • AdaGrad
  • RMSProp
  • Adam

学习率衰减

LR 中的连续值特征是如何处理的 为什么 LR 要先对数据进行归一化处理 LR 用了 sigmoid 函数,那么 LR 是线性模型还是非线性模型,为什么

  • 线性
  • 分段
  • 余弦
  • WarmUp
  • 周期性

缩放法则 Scaling-Law

在 AI 领域中,描述模型性能如何随着模型规模(如参数数量、训练数据量、计算资源等)变化而变化的一组经验法则

  • 应用

    1. 设计更大规模的模型

      指导研究人员如何设计和训练更大规模的模型,以实现更高的性能

    2. 优化资源分配

      如确定是否应增加模型参数数量、增加训练数据量,还是增加计算资源,以实现最优的性能提升

    3. 预测性能

      根据现有模型的性能和缩放法则,可以预测更大规模模型的性能

常见模型评估指标

准确率

召回率

F1 分数

浮点数运算次数 FLOPs

帧每秒 FPS

深度学习框架

训练范式

PyTorch

Tensor

  • 存储

    • 头信息区(Tensor):tensor 的形状(size)、步长(stride)、数据类型(type)等
    • 存储区(Storage):数据
  • stride 属性

    指定维度中一个元素到下一个元素的步长

  • view 方法

    返回共享存储区的 tensor

  • 计算图

  • 环境搭建

  • 数据加载

  • 模型定义

  • 训练

  • 验证

  • 保存

  • 加载模型

PytorchLightning

逻辑思维与项目经验

逻辑思维

准备通过解决实际问题来展示你的逻辑思维能力和数据分析洞察力,可以是以往项目中的案例分析。

团队合作与挑战接受度

思考并准备实例说明你如何在团队中有效沟通、协作解决问题,以及面对技术挑战时的态度和解决策略。

p