AI大模型应用面试:深度学习知识点汇总与面试指导

🎯 适用岗位 :AI应用开发工程师、算法工程师、大模型应用工程师

📅 更新时间 :2024年

📊 难度等级 :⭐⭐⭐⭐(中高级)

⏱️ 阅读时长:约45分钟


目录


一、机器学习基础

问题1:机器学习的方式有哪几类?

标准回答:

机器学习主要分为三大类:
机器学习
监督学习

Supervised Learning
无监督学习

Unsupervised Learning
强化学习

Reinforcement Learning
有标签数据
学习输入输出映射
无标签数据
发现数据内在结构
环境交互
最大化奖励

详细说明:

1. 监督学习(Supervised Learning)

  • 定义:使用有标签的数据进行训练
  • 特点:输入X和输出Y都已知,学习X→Y的映射关系
  • 示例
    • 分类:垃圾邮件识别、图像分类
    • 回归:房价预测、股票预测

2. 无监督学习(Unsupervised Learning)

  • 定义:使用无标签的数据进行训练
  • 特点:只有输入X,发现数据的内在结构和模式
  • 示例
    • 聚类:客户分群、新闻聚类
    • 降维:PCA、t-SNE

3. 强化学习(Reinforcement Learning)

  • 定义:通过与环境交互学习最优策略
  • 特点:通过奖励和惩罚机制学习
  • 示例
    • 游戏AI:AlphaGo、Atari游戏
    • 机器人控制:自动驾驶、机械臂

面试技巧:

复制代码
回答时可以这样组织:
1. 先说三大类:监督学习、无监督学习、强化学习
2. 每类简要说明特点
3. 举1-2个实际例子
4. 如果有时间,可以提到半监督学习、自监督学习等扩展

问题2:每种方式对应的任务是什么?

标准回答:
强化学习任务
控制任务

Control
动作决策
游戏任务

Game
策略优化
无监督学习任务
聚类任务

Clustering
数据分组
降维任务

Dimensionality Reduction
特征压缩
生成任务

Generation
数据生成
监督学习任务
分类任务

Classification
预测离散标签
回归任务

Regression
预测连续值

详细说明:

学习方式 任务类型 具体任务 应用场景
监督学习 分类 二分类、多分类 垃圾邮件识别、疾病诊断
回归 线性回归、非线性回归 房价预测、销量预测
无监督学习 聚类 K-Means、DBSCAN 客户分群、图像分割
降维 PCA、t-SNE 数据可视化、特征压缩
生成 GAN、VAE 图像生成、文本生成
强化学习 控制 策略优化 机器人控制、自动驾驶
游戏 博弈策略 AlphaGo、游戏AI

面试技巧:

复制代码
回答时可以这样组织:
1. 按学习方式分类说明
2. 每类列举2-3个主要任务
3. 结合实际应用场景
4. 可以提到自己项目中用到的任务类型

问题3:为什么要划分数据集?数据集为什么要标准归一化?

标准回答:

3.1 为什么要划分数据集?

原始数据
训练集

Training Set

60%-80%
验证集

Validation Set

10%-20%
测试集

Test Set

10%-20%
模型训练

学习参数
模型选择

调整超参数
模型评估

最终性能

划分原因:

1. 防止过拟合

  • 如果只用训练集,模型可能"记住"训练数据
  • 需要独立的数据评估模型的泛化能力

2. 模型选择

  • 验证集用于调整超参数
  • 选择最优模型配置

3. 客观评估

  • 测试集提供模型性能的客观评估
  • 模拟真实场景的未知数据

常见划分比例:

  • 小数据集:60%训练 + 20%验证 + 20%测试
  • 中等数据集:80%训练 + 10%验证 + 10%测试
  • 大数据集:98%训练 + 1%验证 + 1%测试
3.2 为什么要标准归一化?

归一化后
特征1: 0-1
量纲统一
特征2: 0-1
梯度下降快

模型稳定
归一化前
特征1: 0-1000
量纲差异大
特征2: 0-1
梯度下降慢

模型不稳定

归一化原因:

1. 加速收敛

  • 不同特征的量纲不同,影响梯度下降速度
  • 归一化后,所有特征在同一尺度,加速收敛

2. 提高精度

  • 避免大数值特征主导模型
  • 让模型更公平地学习每个特征

3. 数值稳定

  • 避免数值计算中的溢出问题
  • 提高数值计算的稳定性

常见归一化方法:

1. Min-Max归一化

python 复制代码
X_normalized = (X - X_min) / (X_max - X_min)
# 范围:[0, 1]

2. Z-Score标准化

python 复制代码
X_standardized = (X - X_mean) / X_std
# 均值为0,标准差为1

面试技巧:

复制代码
回答时可以这样组织:
1. 数据集划分:先说目的(防止过拟合、模型选择、客观评估)
2. 说明三个数据集的作用
3. 归一化:先说问题(量纲不同、收敛慢)
4. 说明好处(加速收敛、提高精度、数值稳定)
5. 可以举一个具体的例子

问题4:机器学习常见的算法模型有哪些?

标准回答:
机器学习算法
监督学习
无监督学习
强化学习
线性模型

线性回归、逻辑回归
决策树

ID3、C4.5、CART
集成学习

随机森林、GBDT、XGBoost
支持向量机

SVM
神经网络

CNN、RNN、Transformer
聚类算法

K-Means、DBSCAN
降维算法

PCA、t-SNE
生成模型

GAN、VAE
值函数方法

Q-Learning、DQN
策略梯度方法

Policy Gradient、PPO

详细说明:

1. 监督学习算法

算法 类型 优点 缺点 应用场景
线性回归 回归 简单、可解释性强 只能处理线性关系 房价预测
逻辑回归 分类 简单、概率输出 只能处理线性可分 二分类问题
决策树 分类/回归 可解释性强、处理非线性 容易过拟合 特征选择
随机森林 分类/回归 不易过拟合、特征重要性 训练慢 风控模型
XGBoost 分类/回归 性能强、速度快 调参复杂 竞赛首选
SVM 分类 高维数据表现好 大数据集慢 文本分类
神经网络 分类/回归 表达能力强 需要大量数据 图像、NLP

2. 无监督学习算法

算法 类型 应用场景
K-Means 聚类 客户分群、图像压缩
DBSCAN 聚类 异常检测、地理数据
PCA 降维 数据可视化、特征压缩
t-SNE 降维 高维数据可视化
GAN 生成 图像生成、数据增强

面试技巧:

复制代码
回答时可以这样组织:
1. 按学习方式分类说明
2. 每类列举3-5个常用算法
3. 说明每个算法的特点和应用场景
4. 可以提到自己项目中用过的算法

问题5:评价回归任务的指标有哪些?

标准回答:
回归评价指标
绝对误差
平方误差
百分比误差
MAE

平均绝对误差
Median AE

中位数绝对误差
MSE

均方误差
RMSE

均方根误差
MAPE

平均绝对百分比误差

决定系数

详细说明:

1. MAE(Mean Absolute Error)平均绝对误差

python 复制代码
MAE = (1/n) * Σ|y_true - y_pred|
  • 含义:预测值与真实值的平均绝对距离
  • 优点:对异常值不敏感
  • 缺点:不能反映误差的分布情况

2. MSE(Mean Squared Error)均方误差

python 复制代码
MSE = (1/n) * Σ(y_true - y_pred)²
  • 含义:预测值与真实值的平均平方距离
  • 优点:数学性质好,可导
  • 缺点:对异常值敏感

3. RMSE(Root Mean Squared Error)均方根误差

python 复制代码
RMSE = √MSE
  • 含义:MSE的平方根
  • 优点:与原始数据同量纲,易于理解
  • 缺点:对异常值敏感

4. MAPE(Mean Absolute Percentage Error)平均绝对百分比误差

python 复制代码
MAPE = (100/n) * Σ|y_true - y_pred| / y_true|
  • 含义:误差占真实值的百分比
  • 优点:不受量纲影响
  • 缺点:真实值为0时无法计算

5. R²(R-Squared)决定系数

python 复制代码
R² = 1 - (SS_res / SS_tot)
   = 1 - Σ(y_true - y_pred)² / Σ(y_true - y_mean)²
  • 含义:模型解释的方差比例
  • 范围:0-1,越接近1越好
  • 优点:不受量纲影响,易于比较

面试技巧:

复制代码
回答时可以这样组织:
1. 先列举常用指标:MAE、MSE、RMSE、R²
2. 说明每个指标的含义和公式
3. 说明优缺点和适用场景
4. 可以提到自己项目中用过的指标

问题6:什么是正则化,用自己的话表述一下

标准回答:
有正则化
限制模型复杂度
泛化能力强

训练集和测试集

表现均衡
无正则化
模型复杂
过拟合

训练集表现好

测试集表现差

通俗解释:

正则化就是给模型"戴紧箍咒",防止模型"太聪明"导致过拟合。

具体来说:

1. 为什么需要正则化?

  • 模型太复杂时,会"记住"训练数据的噪声
  • 就像学生死记硬背,考试时遇到新题就不会了
  • 正则化限制模型复杂度,让模型学到"规律"而不是"死记硬背"

2. 正则化的作用

  • 防止过拟合:限制模型复杂度
  • 特征选择:让不重要的特征权重趋近于0
  • 提高泛化能力:让模型在新数据上表现更好

3. 常见正则化方法

L1正则化(Lasso)

python 复制代码
Loss = MSE + λ * Σ|w|
  • 特点:让部分权重变为0,实现特征选择
  • 适用:特征选择、稀疏模型

L2正则化(Ridge)

python 复制代码
Loss = MSE + λ * Σw²
  • 特点:让权重变小,但不为0
  • 适用:防止过拟合、处理共线性

Dropout

python 复制代码
# 随机丢弃神经元
output = dropout(layer_output, p=0.5)
  • 特点:训练时随机丢弃部分神经元
  • 适用:神经网络正则化

面试技巧:

复制代码
用自己的话表述:
1. 先用通俗的比喻:正则化就是给模型"戴紧箍咒"
2. 解释为什么需要:防止模型"太聪明"导致过拟合
3. 说明作用:防止过拟合、特征选择、提高泛化能力
4. 举例说明:L1、L2、Dropout

问题7:什么是超参数?

标准回答:
模型参数
模型参数

Model Parameters
超参数

Hyperparameters
训练过程中学习
如:权重、偏置
自动优化
训练前设定
如:学习率、批次大小
手动调整

详细说明:

1. 什么是超参数?

  • 定义:在模型训练前需要手动设定的参数
  • 特点:不能通过训练数据学习得到
  • 作用:控制模型的学习过程和复杂度

2. 常见超参数

超参数 含义 典型值 影响
学习率 梯度下降的步长 0.001-0.1 收敛速度、稳定性
批次大小 一次训练的样本数 16-256 训练速度、泛化能力
训练轮数 遍历数据集的次数 10-1000 欠拟合/过拟合
隐藏层数 神经网络的深度 2-100 模型复杂度
神经元数 每层的神经元数量 64-1024 模型容量
正则化系数 正则化的强度 0.001-0.1 过拟合控制
Dropout率 神经元丢弃概率 0.2-0.5 过拟合控制

3. 超参数 vs 模型参数

特性 模型参数 超参数
获取方式 训练过程中学习 训练前手动设定
示例 权重、偏置 学习率、批次大小
优化方式 梯度下降等 网格搜索、贝叶斯优化
数量 通常很多(百万级) 通常较少(几十个)

面试技巧:

复制代码
回答时可以这样组织:
1. 定义:训练前手动设定的参数
2. 特点:不能通过训练学习
3. 举例:学习率、批次大小、训练轮数等
4. 对比:与模型参数的区别

二、模型训练与评估

问题8:模型训练是在做什么事情?用自己的话表述一下,学习率是什么?

标准回答:

8.1 模型训练是在做什么?



初始化参数
前向传播

计算预测值
计算损失

评估预测误差
反向传播

计算梯度
更新参数

梯度下降
损失足够小?
训练完成

通俗解释:

模型训练就是"不断试错,逐步优化"的过程。

具体来说:

1. 初始化

  • 随机初始化模型参数(权重和偏置)
  • 就像学生刚开始学习,什么都不会

2. 前向传播

  • 用当前参数计算预测值
  • 就像学生做题,给出答案

3. 计算损失

  • 比较预测值和真实值的差距
  • 就像老师批改作业,指出错误

4. 反向传播

  • 计算每个参数对损失的贡献
  • 就像学生分析错误原因

5. 更新参数

  • 根据梯度调整参数
  • 就像学生改正错误,下次做得更好

6. 循环迭代

  • 重复上述过程,直到损失足够小
  • 就像学生反复练习,直到掌握知识
8.2 学习率是什么?

学习率过小
步长太小
收敛太慢

训练时间长
学习率适中
步长合适
稳定收敛

找到最优解
学习率过大
步长太大
震荡不收敛

错过最优解

通俗解释:

学习率就是"每次改正错误的步子大小"。

具体来说:

1. 定义

  • 学习率控制参数更新的步长
  • 公式:新参数 = 旧参数 - 学习率 × 梯度

2. 作用

  • 学习率太大:步子太大,可能跨过最优解,甚至发散
  • 学习率太小:步子太小,收敛太慢,训练时间长
  • 学习率适中:稳定收敛,快速找到最优解

3. 学习率调整策略

  • 固定学习率:全程使用相同学习率
  • 学习率衰减:随着训练逐渐减小学习率
  • 自适应学习率:Adam、AdaGrad等自适应调整

面试技巧:

复制代码
用自己的话表述:
1. 模型训练:不断试错,逐步优化的过程
2. 用学生学习的类比:做题→批改→分析→改正→反复练习
3. 学习率:每次改正错误的步子大小
4. 说明学习率大小的影响:太大震荡,太小太慢

三、神经网络基础

问题9:什么是神经网络?

标准回答:
输入层

Input Layer
隐藏层1

Hidden Layer 1
隐藏层2

Hidden Layer 2
输出层

Output Layer

详细说明:

1. 定义

  • 神经网络是一种模拟人脑神经元连接的数学模型
  • 由大量相互连接的节点(神经元)组成
  • 通过学习数据中的模式来完成预测任务

2. 基本结构

神经元(Neuron)

python 复制代码
output = activation(W * X + b)
  • X:输入特征
  • W:权重
  • b:偏置
  • activation:激活函数

层级结构

  • 输入层:接收原始数据
  • 隐藏层:提取特征,进行非线性变换
  • 输出层:输出预测结果

3. 工作原理

  1. 前向传播:数据从输入层流向输出层
  2. 计算损失:比较预测值和真实值
  3. 反向传播:计算梯度,更新参数
  4. 迭代训练:重复上述过程

面试技巧:

复制代码
回答时可以这样组织:
1. 定义:模拟人脑神经元连接的数学模型
2. 结构:输入层、隐藏层、输出层
3. 工作原理:前向传播、反向传播
4. 可以画一个简单的神经网络图

问题10:深度学习的深在哪?

标准回答:
深度学习
多层神经网络

10-100+层
特征层次化

表达能力强大
浅层学习
1-2层
特征简单

表达能力有限

详细说明:

1. "深"的含义

  • 层数深:神经网络有很多层(10-100+层)
  • 特征深:学习层次化的特征表示
  • 抽象深:从低级特征到高级语义

2. 深度的价值

层次化特征学习

复制代码
原始数据
  ↓
低级特征(边缘、纹理)
  ↓
中级特征(形状、部件)
  ↓
高级特征(物体、语义)
  ↓
预测结果

示例:图像识别

  • 第1层:学习边缘、纹理
  • 第2层:学习形状、部件
  • 第3层:学习物体、场景
  • 第4层:学习语义、概念

3. 为什么需要深度?

  • 表达能力:深层网络可以学习更复杂的函数
  • 特征复用:低级特征可以组合成高级特征
  • 自动特征工程:不需要人工设计特征

面试技巧:

复制代码
回答时可以这样组织:
1. 直接回答:层数多(10-100+层)
2. 解释价值:层次化特征学习
3. 举例说明:图像识别的特征层次
4. 说明优势:表达能力强、自动特征工程

问题11:一个简单神经网络结构有哪些,经典神经网络架构有哪些,解决什么问题?

标准回答:

11.1 简单神经网络结构

简单神经网络
输入层

特征输入
隐藏层

特征提取
输出层

预测输出

基本组件:

  1. 输入层:接收原始特征
  2. 隐藏层:进行非线性变换
  3. 输出层:输出预测结果
  4. 激活函数:引入非线性
  5. 损失函数:评估预测误差
11.2 经典神经网络架构

经典架构
CNN

卷积神经网络
RNN

循环神经网络
Transformer

注意力机制
图像处理

计算机视觉
序列数据

文本、语音
大模型

NLP、多模态

详细说明:

1. CNN(卷积神经网络)

  • 解决问题:图像识别、计算机视觉
  • 核心思想:局部连接、权值共享、池化
  • 经典模型:LeNet、AlexNet、VGG、ResNet
  • 应用场景:图像分类、目标检测、图像分割

2. RNN(循环神经网络)

  • 解决问题:序列数据建模
  • 核心思想:处理序列数据,保留历史信息
  • 经典模型:RNN、LSTM、GRU
  • 应用场景:文本生成、语音识别、机器翻译

3. Transformer

  • 解决问题:长序列依赖、并行计算
  • 核心思想:自注意力机制
  • 经典模型:BERT、GPT、LLaMA
  • 应用场景:NLP、大模型、多模态

面试技巧:

复制代码
回答时可以这样组织:
1. 简单结构:输入层、隐藏层、输出层
2. 经典架构:CNN、RNN、Transformer
3. 每个架构说明:解决问题、核心思想、经典模型、应用场景
4. 可以提到自己项目中用过的架构

问题12:什么是激活函数,常见的激活函数有哪些?

标准回答:
激活函数
Sigmoid
Tanh
ReLU
Leaky ReLU
Softmax
范围: 0-1

二分类输出
范围: -1到1

隐藏层
范围: 0到+∞

最常用
解决ReLU

神经元死亡
多分类输出

概率分布

详细说明:

1. 什么是激活函数?

  • 定义:引入非线性变换的函数
  • 作用:让神经网络学习非线性关系
  • 必要性:没有激活函数,多层神经网络等价于单层

2. 常见激活函数

Sigmoid

python 复制代码
f(x) = 1 / (1 + e^(-x))
  • 范围:(0, 1)
  • 优点:输出在0-1之间,适合概率输出
  • 缺点:梯度消失、输出不以0为中心
  • 应用:二分类输出层

Tanh

python 复制代码
f(x) = (e^x - e^(-x)) / (e^x + e^(-x))
  • 范围:(-1, 1)
  • 优点:输出以0为中心
  • 缺点:梯度消失
  • 应用:隐藏层

ReLU(最常用)

python 复制代码
f(x) = max(0, x)
  • 范围:[0, +∞)
  • 优点:计算简单、缓解梯度消失、稀疏激活
  • 缺点:神经元死亡(输入<0时梯度为0)
  • 应用:隐藏层(默认选择)

Leaky ReLU

python 复制代码
f(x) = max(0.01x, x)
  • 优点:解决ReLU神经元死亡问题
  • 应用:隐藏层

Softmax

python 复制代码
f(x_i) = e^(x_i) / Σe^(x_j)
  • 作用:将输出转换为概率分布
  • 应用:多分类输出层

面试技巧:

复制代码
回答时可以这样组织:
1. 定义:引入非线性变换的函数
2. 作用:让神经网络学习非线性关系
3. 列举常见激活函数:Sigmoid、Tanh、ReLU、Softmax
4. 说明每个函数的特点和应用场景

四、深度学习核心概念

问题13:什么是前向传播?

标准回答:
输入X
第1层

W1·X + b1
激活函数1

a1
第2层

W2·a1 + b2
激活函数2

a2
输出层

预测值Y'

详细说明:

1. 定义

  • 前向传播是数据从输入层流向输出层的过程
  • 逐层计算每一层的输出,最终得到预测值

2. 计算过程

python 复制代码
# 第1层
z1 = W1 · X + b1
a1 = activation(z1)

# 第2层
z2 = W2 · a1 + b2
a2 = activation(z2)

# 输出层
y_pred = W3 · a2 + b3

3. 作用

  • 将输入数据转换为预测输出
  • 为反向传播提供计算图

面试技巧:

复制代码
回答时可以这样组织:
1. 定义:数据从输入层流向输出层
2. 计算过程:逐层线性变换+激活函数
3. 作用:得到预测值,为反向传播做准备

问题14:什么是反向传播?

标准回答:
计算损失

Loss
计算输出层梯度

∂L/∂y
反向传播到第2层

∂L/∂W2, ∂L/∂b2
反向传播到第1层

∂L/∂W1, ∂L/∂b1
更新参数

W = W - lr·∂L/∂W

详细说明:

1. 定义

  • 反向传播是利用链式法则计算梯度的过程
  • 从输出层向输入层反向传递误差

2. 计算过程

python 复制代码
# 计算损失
loss = loss_function(y_pred, y_true)

# 计算输出层梯度
∂L/∂y = ∂loss/∂y_pred

# 反向传播到第2层
∂L/∂W2 = ∂L/∂y · ∂y/∂W2
∂L/∂b2 = ∂L/∂y · ∂y/∂b2

# 反向传播到第1层
∂L/∂W1 = ∂L/∂W2 · ∂W2/∂a1 · ∂a1/∂W1
∂L/∂b1 = ∂L/∂W2 · ∂W2/∂a1 · ∂a1/∂b1

# 更新参数
W2 = W2 - learning_rate · ∂L/∂W2
W1 = W1 - learning_rate · ∂L/∂W1

3. 核心思想

  • 链式法则:复合函数的导数等于各层导数的乘积
  • 梯度传播:误差从输出层向输入层传播
  • 参数更新:根据梯度调整参数

面试技巧:

复制代码
回答时可以这样组织:
1. 定义:利用链式法则计算梯度
2. 过程:从输出层向输入层反向传递误差
3. 核心思想:链式法则、梯度传播、参数更新

问题15:什么是损失函数,说一个你知道的损失函数?

标准回答:
损失函数
回归损失
分类损失
MSE

均方误差
MAE

平均绝对误差
交叉熵损失

Cross-Entropy
二元交叉熵

Binary Cross-Entropy

详细说明:

1. 什么是损失函数?

  • 定义:衡量模型预测值与真实值差距的函数
  • 作用:指导模型优化方向
  • 目标:最小化损失函数

2. 常见损失函数

MSE(均方误差)- 回归任务

python 复制代码
MSE = (1/n) * Σ(y_true - y_pred)²
  • 应用:回归问题
  • 特点:对异常值敏感

交叉熵损失 - 分类任务

python 复制代码
Cross-Entropy = -Σy_true * log(y_pred)
  • 应用:多分类问题
  • 特点:衡量概率分布的差异

二元交叉熵 - 二分类任务

python 复制代码
Binary Cross-Entropy = -[y*log(ŷ) + (1-y)*log(1-ŷ)]
  • 应用:二分类问题
  • 特点:适合概率输出

面试技巧:

复制代码
回答时可以这样组织:
1. 定义:衡量预测值与真实值差距的函数
2. 作用:指导模型优化方向
3. 举例:MSE(回归)、交叉熵(分类)
4. 说明应用场景

五、Transformer架构

问题16:什么是词嵌入?

标准回答:
渲染错误: Mermaid 渲染失败: Parse error on line 2: ...ph LR A[文本
"深度学习"] --> B[分词
----------------------^ Expecting 'SQE', 'DOUBLECIRCLEEND', 'PE', '-)', 'STADIUMEND', 'SUBROUTINEEND', 'PIPE', 'CYLINDEREND', 'DIAMOND_STOP', 'TAGEND', 'TRAPEND', 'INVTRAPEND', 'UNICODE_TEXT', 'TEXT', 'TAGSTART', got 'STR'

详细说明:

1. 定义

  • 词嵌入是将词语转换为稠密向量的技术
  • 每个词对应一个固定长度的实数向量

2. 为什么需要词嵌入?

  • 计算机只能处理数字:文本需要转换为数值
  • 保留语义信息:相似词语的向量距离近
  • 降低维度:相比One-Hot编码,维度更低

3. 常见词嵌入方法

方法 特点 应用
Word2Vec 预训练词向量 传统NLP
GloVe 全局词共现统计 传统NLP
BERT Embedding 上下文相关 现代NLP
Transformer Embedding 可学习、上下文相关 大模型

4. 词嵌入的优势

  • 语义相似性:相似词语的向量距离近
  • 类比关系 :向量运算可以表示语义关系
    • 例如:King - Man + Woman ≈ Queen
  • 降维:从词汇表大小降到几百维

面试技巧:

复制代码
回答时可以这样组织:
1. 定义:将词语转换为稠密向量
2. 为什么需要:计算机只能处理数字、保留语义信息
3. 常见方法:Word2Vec、BERT Embedding
4. 优势:语义相似性、类比关系、降维

问题17:Transformer的全称是什么?它主要分成哪两部分,分工是什么?

标准回答:
Transformer
Encoder

编码器
Decoder

解码器
理解输入序列

提取特征
双向注意力

看到完整输入
生成输出序列

预测下一个token
单向注意力

只能看到之前的内容

详细说明:

1. Transformer全称

  • 全称:Attention Is All You Need
  • 论文:2017年Google发表的论文
  • 创新:完全基于注意力机制,无需RNN/CNN

2. 两大部分

Encoder(编码器)

  • 功能:理解输入序列,提取特征
  • 特点:双向注意力,可以看到完整输入
  • 应用:BERT、文本分类、命名实体识别

Decoder(解码器)

  • 功能:生成输出序列,预测下一个token
  • 特点:单向注意力,只能看到之前的内容
  • 应用:GPT、文本生成、机器翻译

3. 工作流程

复制代码
输入序列 → Encoder → 语义表示 → Decoder → 输出序列

面试技巧:

复制代码
回答时可以这样组织:
1. 全称:Attention Is All You Need
2. 两部分:Encoder(编码器)、Decoder(解码器)
3. 分工:
   - Encoder:理解输入,提取特征,双向注意力
   - Decoder:生成输出,预测下一个token,单向注意力
4. 应用:BERT(Encoder-only)、GPT(Decoder-only)

问题18:说出你印象深刻的组件,思考它解决什么问题?能不能从架构删去它呢?

标准回答:

我印象最深刻的组件是:残差连接
渲染错误: Mermaid 渲染失败: Parse error on line 2: ...输入X] --> B[层变换
F(X)] B --> C[残差连 -----------------------^ Expecting 'SQE', 'DOUBLECIRCLEEND', 'PE', '-)', 'STADIUMEND', 'SUBROUTINEEND', 'PIPE', 'CYLINDEREND', 'DIAMOND_STOP', 'TAGEND', 'TRAPEND', 'INVTRAPEND', 'UNICODE_TEXT', 'TEXT', 'TAGSTART', got 'PS'

详细说明:

1. 残差连接解决什么问题?

问题:梯度消失

  • 深层网络训练困难
  • 梯度在反向传播过程中逐渐消失
  • 导致深层网络难以训练

解决方案:残差连接

python 复制代码
# 普通连接
output = F(x)

# 残差连接
output = x + F(x)

原理:

  • 梯度可以直接通过残差连接传递
  • 即使F(x)的梯度很小,梯度仍可通过x传递
  • 缓解梯度消失问题

2. 能不能删去残差连接?

答案:不能!

原因:

  1. 梯度消失:删去后,深层网络无法训练
  2. 性能下降:实验证明,删去残差连接后性能大幅下降
  3. 深度限制:没有残差连接,网络深度受限(通常不超过20层)

实验证明:

  • ResNet-50(有残差):准确率76%
  • PlainNet-50(无残差):准确率仅60%

面试技巧:

复制代码
回答时可以这样组织:
1. 选择一个组件:残差连接
2. 解决问题:梯度消失、深层网络训练困难
3. 能否删去:不能,会导致性能大幅下降
4. 实验证明:ResNet vs PlainNet的性能对比

问题19:你如何理解注意力机制?

标准回答:
注意力机制
Query

查询向量
Key

键向量
Value

值向量
计算注意力分数

Q·K^T
Softmax归一化
加权求和

Attention·V
输出

通俗解释:

注意力机制就是"找重点"。

具体来说:

1. 核心思想

  • 在处理序列时,不同位置的重要性不同
  • 注意力机制让模型关注重要的位置
  • 就像人看图时,会关注重点区域

2. 三要素

Query(查询)

  • "我要找什么"
  • 例如:翻译时,当前要翻译的词

Key(键)

  • "我是什么"
  • 例如:源语言中的每个词

Value(值)

  • "我的内容是什么"
  • 例如:源语言中每个词的语义信息

3. 计算过程

python 复制代码
# 1. 计算注意力分数
scores = Q · K^T / √d_k

# 2. Softmax归一化
attention_weights = softmax(scores)

# 3. 加权求和
output = attention_weights · V

4. 为什么有效?

  • 动态权重:根据输入动态计算权重
  • 长距离依赖:直接连接任意距离的位置
  • 并行计算:所有位置同时计算

面试技巧:

复制代码
用自己的话表述:
1. 通俗解释:注意力机制就是"找重点"
2. 三要素:Query(查询)、Key(键)、Value(值)
3. 计算过程:计算分数→归一化→加权求和
4. 为什么有效:动态权重、长距离依赖、并行计算

六、大模型微调

问题20:微调解决什么问题?LoRA微调跟传统微调的区别是什么?

标准回答:
预训练模型

通用能力
微调
专业模型

特定任务
传统微调

全量参数更新
LoRA微调

低秩矩阵分解
显存占用大

训练慢
显存占用小

训练快

详细说明:

20.1 微调解决什么问题?

问题:预训练模型的局限性

  1. 专业性不足:预训练模型是通用的,缺乏领域知识
  2. 任务不匹配:预训练任务与实际任务不一致
  3. 输出不规范:输出格式不符合业务需求

解决方案:微调

  • 在特定领域数据上继续训练
  • 让模型适应特定任务
  • 提高模型在特定任务上的性能
20.2 LoRA微调 vs 传统微调
特性 传统微调 LoRA微调
参数更新 更新所有参数 只更新低秩矩阵
参数量 100% 0.1-1%
显存占用 大(16GB+) 小(4-8GB)
训练速度
切换成本 高(需要重新加载模型) 低(只切换LoRA权重)
性能 最高 接近传统微调

LoRA核心原理:

python 复制代码
# 传统微调
W' = W + ΔW  # 更新所有参数

# LoRA微调
W' = W + BA  # 只更新低秩矩阵B和A
# B: d×r, A: r×d, r << d

面试技巧:

复制代码
回答时可以这样组织:
1. 微调解决的问题:预训练模型专业性不足、任务不匹配
2. LoRA vs 传统微调:参数量、显存、速度、切换成本
3. LoRA原理:低秩矩阵分解,只更新少量参数

问题21:LoRA微调的优势在哪?为什么可以使用低秩矩阵来实现微调?

标准回答:

21.1 LoRA微调的优势

LoRA优势
参数高效
显存友好
训练快速
灵活切换
参数量减少90%+
显存占用降低4倍
训练速度快
可切换多个LoRA权重

详细说明:

1. 参数高效

  • 参数量减少90%以上
  • 例如:7B模型 → 只需训练58M参数

2. 显存友好

  • 显存占用降低4倍
  • 可以在消费级显卡上训练

3. 训练快速

  • 训练速度快,迭代周期短
  • 适合快速原型验证

4. 灵活切换

  • 可以为不同任务训练不同的LoRA权重
  • 切换时只需加载不同的LoRA权重
21.2 为什么可以使用低秩矩阵?

权重更新矩阵

ΔW
低秩假设

ΔW具有低秩特性
矩阵分解

ΔW = BA
参数大幅减少

d² → 2dr

理论依据:

1. 低秩假设

  • 预训练模型的权重更新矩阵ΔW具有低秩特性
  • 即ΔW可以用两个小矩阵的乘积近似

2. 内在维度理论

  • 模型适应新任务所需的参数维度远小于原始维度
  • 权重更新可以在低维子空间中完成

3. 数学证明

python 复制代码
# 原始参数
参数量 = d × d = d²

# LoRA参数
参数量 = d × r + r × d = 2dr

# 当 r << d 时
2dr << d²

# 例如:d=4096, r=8
原始参数:4096² = 16,777,216
LoRA参数:4096×8×2 = 65,536
减少比例:99.6%

面试技巧:

复制代码
回答时可以这样组织:
1. LoRA优势:参数高效、显存友好、训练快速、灵活切换
2. 为什么可以用低秩矩阵:
   - 低秩假设:权重更新矩阵具有低秩特性
   - 内在维度理论:适应新任务所需维度远小于原始维度
   - 数学证明:参数量从d²减少到2dr

问题22:LLaMA Factory 是什么?

标准回答:
LLaMA Factory
一站式微调平台
支持多种模型
支持多种微调方法
WebUI界面
命令行工具
LLaMA、Qwen、ChatGLM等
LoRA、QLoRA、全量微调
可视化操作
脚本化训练

详细说明:

1. 定义

  • LLaMA Factory是一个开源的大模型微调框架
  • 提供一站式的大模型训练、微调、评估解决方案

2. 核心特点

支持多种模型

  • LLaMA系列、Qwen、ChatGLM、Baichuan等主流模型

支持多种微调方法

  • LoRA、QLoRA、全量微调、Prefix Tuning等

易用性

  • WebUI界面:可视化操作,无需编程
  • 命令行工具:脚本化训练,适合批量任务

功能完整

  • 数据处理、模型训练、效果评估、模型导出

3. 使用场景

  • 快速微调大模型
  • 对比不同微调方法
  • 批量训练多个模型

面试技巧:

复制代码
回答时可以这样组织:
1. 定义:开源的大模型微调框架
2. 特点:支持多种模型、多种微调方法、易用性强
3. 使用场景:快速微调、方法对比、批量训练

问题23:微调的数据集长什么样子?

标准回答:
微调数据集
指令数据格式
Instruction

任务指令
Input

输入数据
Output

期望输出

详细说明:

1. 数据格式

JSON格式

json 复制代码
{
  "instruction": "请根据以下要求生成一道题目",
  "input": "年级:高一\n科目:数学\n知识点:二次函数",
  "output": "已知二次函数f(x) = x² - 4x + 3,求f(x)的最小值。"
}

JSONL格式(推荐)

jsonl 复制代码
{"instruction": "请根据以下要求生成一道题目", "input": "年级:高一\n科目:数学\n知识点:二次函数", "output": "已知二次函数f(x) = x² - 4x + 3,求f(x)的最小值。"}
{"instruction": "请判断以下题目的质量", "input": "题目:1+1=?", "output": "题目质量较差,建议增加难度和知识点考查。"}

2. 数据要求

质量要求

  • 数据准确:内容正确无误
  • 格式规范:符合模型输入格式
  • 多样性:覆盖各种场景

数量要求

  • 简单任务:100-1000条
  • 中等任务:1000-10000条
  • 复杂任务:10000+条

3. 数据示例

教育题目生成

json 复制代码
{
  "instruction": "你是一位专业的教育出题专家。请根据以下要求生成一道高质量题目。",
  "input": "年级:高一\n科目:数学\n题型:选择题\n难度:中等\n知识点:二次函数的最值问题",
  "output": "题干:已知二次函数f(x) = x² - 4x + 3,求f(x)的最小值。\n选项:A. -1  B. 0  C. 1  D. 3\n答案:A\n解析:将二次函数配方:f(x) = (x-2)² - 1,当x=2时取得最小值-1。"
}

面试技巧:

复制代码
回答时可以这样组织:
1. 数据格式:JSON或JSONL格式
2. 包含字段:instruction(指令)、input(输入)、output(输出)
3. 数据要求:质量准确、格式规范、数量充足
4. 举一个具体例子

问题24:参考案例中训练集和验证集划分大概比例是多少?

标准回答:
数据集划分
小数据集

<10000条
中等数据集

10000-100000条
大数据集

>100000条
训练60%

验证20%

测试20%
训练80%

验证10%

测试10%
训练98%

验证1%

测试1%

详细说明:

1. 常见划分比例

小数据集(<10000条)

  • 训练集:60%
  • 验证集:20%
  • 测试集:20%
  • 原因:数据少,需要更多数据验证

中等数据集(10000-100000条)

  • 训练集:80%
  • 验证集:10%
  • 测试集:10%
  • 原因:平衡训练和验证

大数据集(>100000条)

  • 训练集:98%
  • 验证集:1%
  • 测试集:1%
  • 原因:数据充足,少量数据即可验证

2. 微调场景的划分

LoRA微调

  • 训练集:90%
  • 验证集:10%
  • 原因:数据量通常较少

QLoRA微调

  • 训练集:90%
  • 验证集:10%
  • 原因:数据量通常较少

3. 实际案例

E教千问项目

  • 总数据:5000条
  • 训练集:4500条(90%)
  • 验证集:500条(10%)

LLaMA Factory默认

  • 训练集:90%
  • 验证集:10%

面试技巧:

复制代码
回答时可以这样组织:
1. 常见比例:小数据60/20/20,中等数据80/10/10,大数据98/1/1
2. 微调场景:通常90%训练,10%验证
3. 实际案例:E教千问项目90/10划分

七、面试技巧总结

7.1 回答结构化

面试回答
先说结论
再解释原因
举例说明
总结升华

回答模板:

复制代码
1. 先说结论:直接回答问题
2. 再解释原因:说明原理和机制
3. 举例说明:结合实际案例
4. 总结升华:说明应用场景或优势

7.2 常见问题应对

问题类型 应对策略 示例
概念题 定义+特点+应用 什么是神经网络?
原理题 原理+过程+优势 反向传播原理?
对比题 对比维度+表格 LoRA vs 传统微调?
应用题 场景+方案+效果 如何解决过拟合?

7.3 面试注意事项

1. 回答技巧

  • ✅ 先说结论,再展开
  • ✅ 用自己的话表述,不要背诵
  • ✅ 结合项目经验
  • ✅ 举具体例子

2. 避免的问题

  • ❌ 回答过于简单(只说定义)
  • ❌ 回答过于复杂(偏离主题)
  • ❌ 没有实际经验支撑
  • ❌ 不能举例说明

3. 加分项

  • ✅ 结合最新技术发展
  • ✅ 提到实际项目经验
  • ✅ 能够深入浅出
  • ✅ 有自己的理解

八、总结

8.1 知识点回顾

深度学习面试
机器学习基础
学习方式
数据集划分
常见算法
评价指标
神经网络
基本结构
激活函数
前向传播
反向传播
Transformer
架构组成
注意力机制
词嵌入
残差连接
大模型微调
LoRA原理
数据格式
训练技巧
工具使用

8.2 面试准备清单

基础知识:

  • 机器学习三大方式
  • 常见算法和评价指标
  • 神经网络基本结构
  • 激活函数和损失函数

深度学习:

  • 前向传播和反向传播
  • 正则化和优化方法
  • 经典网络架构
  • Transformer原理

大模型:

  • 词嵌入和注意力机制
  • LoRA微调原理
  • 数据集格式
  • 实际项目经验

8.3 学习建议

理论学习:

  1. 理解基本概念和原理
  2. 掌握核心算法和模型
  3. 了解最新技术发展

实践积累:

  1. 动手实现经典模型
  2. 参与实际项目
  3. 积累项目经验

面试准备:

  1. 整理知识点
  2. 准备项目案例
  3. 练习表达能力

祝你面试成功!加油!🚀

相关推荐
rosmis2 小时前
复杂工程拆解:自顶向下设计,自底向上实现
人工智能·python·机器人·自动化·自动驾驶·硬件工程·制造
hughnz2 小时前
斯伦贝谢成功的创新策略
人工智能·能源·钻井
m0_612591972 小时前
尚航科技 IDC 服务综合实力对比分析
人工智能·科技
柯儿的天空2 小时前
2026年AI技术突破与产业落地全景:从GPT-5到多模态智能体的新纪元
人工智能·gpt·microsoft·开源·aigc·ai编程·ai写作
人工智能AI技术2 小时前
GitHub Trending榜首:Python Agentic RAG企业级落地指南
人工智能·python
柯儿的天空2 小时前
边缘计算与AI部署优化技术分析:从云端到边缘的智能化演进
人工智能·gpt·aigc·边缘计算·ai编程·ai写作·agi
chushiyunen2 小时前
大模型.safetensors文件
人工智能·pytorch·深度学习
带娃的IT创业者2 小时前
信号链双路径陷阱:新增 Signal 路径后 AI 回复重复的根因与修复
人工智能
光羽隹衡2 小时前
计算机视觉——Opencv(人脸检测)
人工智能·opencv·计算机视觉