AI 1000 问|Flomo 原始专题迁移¶
本页保留原始专题导航与问题内容,作为 Wiki 的可追溯副本。
原始来源: https://v.flomoapp.com/mine/?memo_id=MjQ2Mzc0NzUw
创建时间: 2026-07-12T10:52:41+08:00
最近更新: 2026-10-06T21:03:44+08:00
原文长度: 10662 字
专栏⑯·导航:AI 1000 问全景——从基础概念到大模型落地
📎 专栏⑮嵌入式导航 → https://v.flomoapp.com/mine/?memo_id=MjQ1NzMzNDk3
▎目录(10篇)
-
AI 用在哪——对话式索引:让 AI 搜你的笔记,而不是全文搜索
-
AI 在知识管理里的角色——6 层闭环里最擅长整理和存储
-
Embedding 与 RAG——文档讲不清、实际用起来完全不一样的两个概念
-
LLM 架构基础——Transformer、注意力、训练三阶段
-
RAG 实战——分块、向量、检索、对齐
-
AI Agent 与工作流——智能体、ReAct、工具调用
-
AI + 嵌入式——端侧推理、TinyML、量化部署
-
AI 内容创作与风险——视频生成、新闻解析、版权与幻觉
-
AI 与知识管理方法论——从 1000 问到个人知识库的闭环
-
AI 15 项自检清单——上车前逐项打勾
▎补充篇(4篇)
-
补充一:本地模型部署与量化——你的数字分身跑在什么上 → https://v.flomoapp.com/mine/?memo_id=MjUxMDI5Njgz
-
补充二:微调与提示工程——不换模型,让它更懂你 → https://v.flomoapp.com/mine/?memo_id=MjUxMDI5NzAy
-
补充三:多模态与视频生成——Sora 为什么叫「世界模拟器」 → https://v.flomoapp.com/mine/?memo_id=MjUxMDI5NzE4
-
补充四:Agent 深化——从 ReAct 概念到能干活的多智能体 → https://v.flomoapp.com/mine/?memo_id=MjUxMDI5NzQw
▎1000 问全景(问题库)
▎ 基础概念
-
"人工智能"、"机器学习"、"深度学习"这三个概念之间的关系是什么样的?用一张包含关系图怎么画?
-
图灵测试是什么?如果一个AI通过了图灵测试,它真的"理解"了吗?还是只是装得像在理解?
-
"强AI"和"弱AI"的区别是什么?现在用的ChatGPT、Midjourney属于哪一种?
-
人工智能历史上经历了三次"寒冬"和两次"春天"——每次寒冬的触发因素是什么?每次春天又是因为什么突破?
▎ 机器学习基础
-
什么是"监督学习"、"无监督学习"、"半监督学习"、"强化学习"?它们的核心区别在于训练时有没有"标签"?
-
"过拟合"是什么意思?一个模型在训练集上准确率99%、在测试集上只有60%——这个差距说明了什么?
-
"欠拟合"和"过拟合"的平衡——模型太简单会欠拟合、太复杂会过拟合,中间那个点怎么找到?
-
训练集、验证集、测试集——三个集合各有什么用?为什么不能拿测试集来做模型选择?
▎ 深度学习基础
-
一个神经网络最基本的组成单元是什么?一个"神经元"在数学上做了什么操作——加权求和+激活函数?
-
为什么神经网络需要"激活函数"?如果激活函数是线性的(f(x)=x),再多层也能合并成一层——能理解这个问题吗?
-
ReLU、Sigmoid、Tanh——三种激活函数各有什么优缺点?为什么ReLU在深度网络里比Sigmoid更常用?
-
反向传播(backpropagation)的直觉是什么?链式法则在这里起了什么作用?
▎ 监督学习算法
-
线性回归为什么叫"线性"?如果数据不是线性的(比如抛物线形状),线性回归还能用吗?
-
逻辑回归(Logistic Regression)名字里带"回归",但做的是分类任务——它到底回归了什么?
-
决策树是怎么做分类的?根节点选哪个特征来分裂——选择标准是什么?
-
支持向量机(SVM)的"间隔最大化"是什么意思?为什么它要找离两类数据最远的那条分界线?
-
k近邻(k-NN)为什么是"懒学习"?训练阶段不需要做什么,预测时反而要大量计算——合理吗?
▎ 模型评估
-
准确率(Accuracy)在什么情况下会骗人?一个99%准确率的癌症检测模型,如果发病率只有1%,它可能什么都没检测出来——为什么?
-
精确率(Precision)和召回率(Recall)的区别是什么?搜索引擎更关心哪个?
-
F1分数为什么是精确率和召回率的"调和平均"而不是算术平均?什么时候该用F1而不是单独用P或R?
-
ROC曲线和AUC——ROC曲线画的是什么?AUC=0.5意味着什么、AUC=1.0又意味着什么?
▎ 优化方法
-
梯度下降(Gradient Descent)的直觉是什么?沿着梯度反方向走为什么能找到最小值?
-
学习率太大了会怎样?太小了呢?有没有"自适应"的学习率方法?
-
随机梯度下降(SGD)和批量梯度下降(Batch GD)的区别是什么?SGD一次只看一个样本就更新参数——这样参数会不会"乱跳"?
-
什么是"局部最优"和"全局最优"?在非凸函数的优化里,梯度下降会被困在局部最优吗?
▎ 无监督学习
-
K-means聚类是怎么工作的?"K"代表什么?为什么需要先确定K?
-
K-means的"初始质心"怎么选?选不好会怎么样?
-
主成分分析(PCA)在做什么?为什么说它"找数据里方差最大的方向"?这个方向和"保留最多信息"有什么关系?
▎ 神经网络架构——CNN
-
卷积层(Convolution)在图像上做了什么操作?一个3×3卷积核和一个5×5卷积核的区别是什么?
-
池化(Pooling)层有什么用?最大池化和平均池化各自提取了什么特征?
-
卷积神经网络为什么比全连接网络更适合处理图像?"平移不变性"和"局部连接"在这起了什么作用?
▎ 神经网络架构——RNN / 序列模型
-
循环神经网络(RNN)是怎么处理序列数据的?为什么说它的"隐藏状态"在记忆之前的信息?
-
RNN的"梯度消失"问题是怎么产生的?为什么长句子RNN记不住开头的信息?
-
LSTM(长短期记忆网络)的三个门(遗忘门、输入门、输出门)各在控制什么?为什么它能记住远距离的信息?
▎ NLP / 词嵌入基础
- Word2Vec是怎么把"单词"变成"向量"的?为什么"国王-男人+女人≈女王"能成立?
▎ 计算机视觉基础
- 图像分类任务里,一张224×224的彩色图片在计算机里是几个数?如果输入到神经网络,第一层要处理多少参数?
▎ Transformer 与注意力机制
-
注意力机制(Attention)的直觉是什么——"在翻译一句话时,模型不应该平等地看所有词,而是应该关注当前输出位置最相关的输入词"——它的数学表达 Q、K、V 三个矩阵分别代表什么?
-
Transformer 的"自注意力"(Self-Attention)和 RNN 在处理序列上的本质区别是什么?为什么说 Transformer 是"并行"而 RNN 是"串行"的——这个并行带来了什么好处?
-
Transformer 里的位置编码(Positional Encoding)为什么需要?既然输入是并行处理的,模型怎么知道哪个词在前、哪个词在后?
▎ 大语言模型(LLM)基础
-
GPT 的"自回归"(Autoregressive)是什么意思——生成下一个词时,它能看到哪些词?这和 BERT 的"双向"有什么本质不同?
-
什么是"涌现能力"(Emergent Abilities)?为什么 7B 的模型不会做算术,70B 的模型突然会了——这个"突然"是哪来的?
-
为什么大模型需要"上下文窗口"(context window)的限制?如果一次给它输入 10 万字的对话,为什么它会"忘掉"开头说了什么?
▎ 强化学习基础
-
强化学习里的"智能体"(Agent)、"环境"(Environment)、"动作"(Action)、"奖励"(Reward)四个要素是什么关系?AlphaGo 下围棋——每一步落子是 Action,赢了是 Reward(+1),这是一个什么过程?
-
强化学习里的"探索"(Exploration)和"利用"(Exploitation)的权衡是什么?一个扫地机器人总是在同一个角落转(利用它已知的最好路径)和去新区域试试(探索)——怎么决定什么时候试新路?
▎ 集成学习(Bagging / Boosting)
-
随机森林(Random Forest)是怎么通过"多个弱分类器组合成一个强分类器"的?为什么每棵树只用部分数据和部分特征,结果反而比一棵全数据的决策树好?
-
XGBoost 和随机森林在"构建多棵树"时的理念有什么不同——一个并行建树再投票(Bagging),一个串行建树、每棵新树纠正前一棵的错(Boosting)?
▎ 生成式模型(GAN / VAE / 扩散模型)
-
生成对抗网络(GAN)的"生成器"和"判别器"在玩一个什么游戏?生成器画假画,判别器鉴定真假——为什么这个博弈能训练出能画逼真人脸的生成器?
-
Stable Diffusion 这类"扩散模型"的原理直觉是什么——从一个全是噪声的图片开始,一步步"去噪"直到变成一张清晰的猫的图片?每一步去掉一点噪声,这个"去噪"过程是谁教给模型的?
▎ 迁移学习与微调
-
ImageNet 上预训练好的 ResNet 模型,被迁移到"X光胸片分类"任务上——前几层(识别边缘、纹理)不用重学,只需要在最后几层重新训练——为什么前几层的特征是"通用的"?
-
"全量微调"和"LoRA(低秩适配)"微调的区别是什么?为什么 LoRA 只需要训练参数量 0.1% 的权重就能达到接近全量微调的效果?
▎ 模型可解释性
- 深度模型经常被说成"黑箱"——可解释性方法 LIME 和 SHAP 各自怎么解释一个模型为什么把某张图片分类为"猫"?LIME 在图片的局部区域加模糊,看分类结果变化;SHAP 根据每个像素对最终判断的贡献分配"重要性分数"——两个思路有什么不同?
▎ 推荐系统基础
-
协同过滤(Collaborative Filtering)和基于内容的推荐(Content-based)的本质区别是什么?Amazon 的"买了这个商品的用户也买了..."是哪种?
-
推荐系统里的"冷启动"(Cold Start)问题是什么?一个新用户没有任何行为记录,一个新商品没有任何用户评价——推荐系统怎么给它们推荐?
▎ 目标检测与语义分割
-
图像分类、目标检测、语义分割——三个任务的输出分别是什么?分类输出"猫",检测输出"猫在 (x,y,w,h)",分割输出"图片里每一个像素属于猫还是背景"——哪一步最难?
-
YOLO(You Only Look Once)为什么叫这个名字?它把目标检测当成一个"回归问题"——输入一张图,直接输出所有边界框的位置和类别,一步到位,跟 R-CNN 两阶段方法的区别在哪?
▎ 图神经网络(GNN)
-
图神经网络在解决什么问题?社交网络里的每个人是一个节点,朋友关系是一条边——如果只给部分节点标注了"高消费用户",怎么预测其他节点是否高消费?
-
GNN 的"消息传递"(Message Passing)是什么意思?每个节点收齐邻居的信息,"更新"自己的特征——重复几轮后,相隔两跳的节点也能互相影响吗?
▎ 自监督学习与对比学习
-
自监督学习(Self-Supervised Learning)为什么叫"自"监督——数据没有人类标注的标签,模型自己给自己造"伪标签"来学习。在 NLP 里 BERT 的做法是"盖住一些词让模型猜",这跟"有监督学习"有什么不同?
-
对比学习(Contrastive Learning)的核心思想是什么——"让同一张猫的两张不同变换(裁剪、旋转)后的图片在特征空间里靠近,让不同图片远离"?这个"拉近同类、推远异类"的训练目标跟分类的交叉熵损失比,优势在哪?
▎ 模型部署与推理优化
-
训练好的 PyTorch 模型要部署到手机或服务器上,为什么要"导出"成 ONNX 或 TensorRT 格式?直接用 PyTorch 的 .pt 文件跑推理不行吗?
-
模型量化(Quantization)把 float32 变成 int8 后,模型大小变成原来的四分之一,推理速度大幅提升——但精度为什么几乎不掉?这是因为神经网络对噪声的"鲁棒性"吗?
▎ AI伦理与公平性
-
人脸识别系统对不同肤色人群的准确率不同——这个"偏差"来自哪里?是模型的偏见还是训练数据分布不均匀?
-
一个银行的贷款审批模型,训练数据里过去批准的大多数贷款给了男性,模型学会把"性别"作为重要特征——怎么检测并消除这个偏见?用"性别"这个敏感属性不能作为输入就能解决吗?
▎ 语音与音频处理基础
-
语音识别(ASR)的第一步通常是把声音信号变成频谱图(Mel频谱)——为什么原始波形不好直接用?人耳对频率的感知不是线性的,Mel 刻度就是模拟了这个非线性特性?
-
文本到语音(TTS)是怎么让合成的语音听起来不像机器人的?现在的主流 TTS(如 Tacotron、VITS)的核心思路是"从文本到频谱再到波形"——中间的频谱怎么反过来变成声音?
▎ 强化学习深入(Q-Learning / DQN)
-
Q-Learning 的 Q 值代表什么?"Q(s, a)"——在一个状态 s 下执行动作 a,未来能获得的总回报期望。为什么 Q 值不是一个数而是一张"状态×动作"的表?当状态空间连续(比如机器人关节角度)时,这张表存不下怎么办?
-
Deep Q-Network(DQN)用神经网络代替了 Q 表——输入是状态,输出是每个动作的 Q 值。那 DQN 怎么解决"用网络当前预测的 Q 值来更新网络自身"这个循环依赖问题?"目标网络"(Target Network)在这做了什么?
-
Policy Gradient 方法和 Q-Learning 的思维方式本质区别是什么?一个直接学"在每个状态选什么动作最好",另一个学"每个动作值多少钱",然后根据值来选——PPO 为什么在实践中比 DQN 更稳定?
▎ RAG(检索增强生成)
-
RAG 的核心链路是:用户提问 → 把问题转成向量 → 从向量数据库里检索最相关的几段文本 → 把检索到的文本拼到 prompt 里 → LLM 回答。为什么说 RAG 解决了 LLM 的"知识截止日期"和"幻觉"两个问题?它跟直接把大段资料塞进上下文的做法有什么不同?
-
RAG 里的"分块策略"(chunking)——一段 500 页的 PDF,是按每 256 个字切块、还是按段落切块、还是按语义切块?如果切得太碎,检索回来的片段说了一半的话没有上下文;切得太大,一个块里混合了多个主题。怎么找到中间的平衡点?
▎ AI Agent / 工具使用
-
一个"AI Agent"和普通的 LLM 聊天有什么区别?Agent 的核心是"能自己决定调用工具"——比如问天气,Agent 不直接回答,而是决定去调用天气 API——这个"决定调用哪个函数"的行为是什么机制控制的?
-
ReAct(Reasoning + Acting)模式是怎么工作的?Agent 收到问题后,不是一步给出答案,而是"想一下 → 查一下 → 再想想 → 再查一下"的循环,直到有足够信息才回答——这个"思考-行动-观察"的循环跟人类解决问题的流程有什么相似之处?
▎ 向量数据库与嵌入搜索
-
向量数据库存的是什么?不是存原始文本,而是存"文本的语义向量"——"猫追老鼠"和"猫咪在抓耗子"两句话的向量距离很近。那么问题来了:怎么把"语义相似"映射成"向量距离近"?这个映射是谁训练的?
-
向量数据库做搜索时的"近似最近邻"(ANN)和传统的"精确最近邻"有什么区别?一个 100 万条向量精确找最近的 10 条,逐条比对太慢——ANN 通过牺牲一点精度(比如只找到 95% 的正确答案)来换取千倍的速度提升,它用了什么数据结构?
▎ 时间序列分析与预测
-
时间序列预测跟普通回归预测的本质区别是什么?普通回归假设样本相互独立,但今天的气温和昨天的气温是高度相关的——时间序列预测的核心是捕捉这个"时间依赖结构"。ARIMA 模型怎么通过"自回归"(AR)和"滑动平均"(MA)两种成分来描述时间序列?
-
LSTM 在时间序列预测里跟传统统计方法(ARIMA、指数平滑)比,有什么不可替代的优势?如果一个任务是预测明天某个化工反应釜的温度——历史数据有 3 年的每小时记录,数据有明显的季节性模式和偶尔的异常波动——LSTM 能比 ARIMA 多抓住什么?
▎ AutoML 与超参数优化
-
手动调参的问题在哪?一个 XGBoost 模型有十几个超参数,每个参数连续取值——搜索空间是天文数字。网格搜索(Grid Search)为什么在这个场景下不可行?
-
贝叶斯优化(Bayesian Optimization)是怎么用更少的试验次数找到好超参数的?它给每个超参数组合一个"期望分数"和"不确定性"——每次选那些"可能好但不确定"的参数来试,而不是"确定好但已经试过的"。为什么这个策略比随机搜索高效?
▎ 多模态学习(Vision + Language)
-
CLIP 模型是怎么同时理解图片和文字的?OpenAI 用 4 亿张(图片,文字描述)对来训练——让"一张猫的图片"的向量和"一只橘猫在晒太阳"的文本向量靠近,跟不匹配的图片-文本对远离。训练完后,怎么用 CLIP 做"零样本分类"——给它一张它没见过的品种的狗的照片,它怎么猜出这是"狗"?
-
多模态大模型(如 GPT-4V、LLaVA)是怎么实现"看图说话"的?一个典型的做法是把图片切成 patch,用视觉编码器(如 ViT)把每个 patch 转成向量,然后把图像向量序列当 prompt 拼到文本 token 前面——这样 LLM 就能"看到"图片的内容了?这个拼接方式有什么问题?
▎ 知识图谱
-
知识图谱的"三元组"(头实体—关系—尾实体)是什么?"北京是中国的首都"三元组化后变成(北京,首都,中国)。知识图谱为什么用这种结构来表示知识——如果用关系数据库的表来存,跟三元组比差在哪?
-
知识图谱的"补全"(Knowledge Graph Completion)是在解决什么问题?知识图谱通常是不完整的——如果已知(姚明,妻子,___)缺了尾实体,怎么用已有的三元组推断出缺失的部分?TransE 模型的思路是把每个实体和关系都投影到向量空间,通过"头实体向量+关系向量≈尾实体向量"来预测缺失联系?
相关的链接:
▎ 异常检测(Anomaly Detection)
-
异常检测的三种类型——点异常(一个数据点偏离全局分布)、上下文异常(某时刻的数值跟它前后时刻比不对)、集体异常(一组数据一起出现但单独看每个都正常)。
-
孤立森林(Isolation Forest)检测异常的原理是什么?正常数据点需要很多次分割才能被"孤立",异常点只需要很少几次分割就能被孤立出来。
▎ 特征工程与数据预处理
-
为什么机器学习模型通常需要"特征缩放"?SVM 和 KNN 依赖距离计算,树模型不需要——为什么?
-
类别特征怎么变成数值输入?独热编码导致维度暴涨时,目标编码(Target Encoding)有什么风险和怎么处理?
▎ 联邦学习(Federated Learning)
-
联邦学习的核心——数据不出本地,模型参数聚合。客户端上传的是什么参数?服务器怎么做聚合?
-
Non-IID 问题——不同机构的数据分布天差地别,简单平均模型为什么可能比单独训练更差?
▎ 小样本学习与零样本学习
-
Few-shot Learning 的核心——用 5 张图片学会一个新概念?元学习(Meta-Learning)在学什么——"学会如何快速适应"?
-
MAML——找一个"对变化最敏感"的参数初始点,在新样本上一步梯度更新就能收敛。
▎ 模型剪枝与压缩
-
剪枝——把权值接近零的连接剪掉。结构化剪枝和非结构化剪枝各有什么取舍?
-
知识蒸馏——学生模型学教师模型的"软输出",软输出为什么信息量更大?
▎ 端侧 AI
-
手机上跑 AI 的核心限制——GPU、内存、功耗、发热。端侧优化策略有哪些?
-
苹果 Neural Engine 和 Google TPU 在芯片里怎么加速神经网络计算?
▎ 因果推断
- "相关"和"因果"的区别——P(Y|X) vs P(Y|do(X)),do 算子代表主动干预。推荐系统应该用关联还是因果?
▎ 偏差-方差权衡
- 高偏差=欠拟合,高方差=过拟合。为什么降低一个必然升高另一个?
▎ 半监督学习
- 少量标签+大量无标签数据。自训练(Self-training)用伪标签迭代——会不会让错误自我强化?
▎ 主动学习
- 模型主动问人类要标签——不确定性采样为什么比随机选样本标注更高效?
▎ Actor-Critic 与 PPO
-
Actor-Critic 减去基线为什么能降低方差?
-
PPO 裁剪目标函数限制策略更新步长——"可以进步,但步子不要迈太大"。
▎ Mamba / 状态空间模型
- Mamba 基于 SSM,跟 Self-Attention 处理长序列的方式有什么不同?为什么 Mamba O(n) 而 Transformer O(n²)?
▎ AGI / AI 安全与对齐
- 对齐问题——怎么确保超级智能的目标反映人类的真实意图?"可扩展监督"和"可解释性"两条路线各在做什么?
▎ Scaling Laws 与规模定律
-
Scaling Laws 发现模型性能随规模按幂律增长——这是否意味着"算法创新不再重要了"?
-
Chinchilla 定律建议参数和数据量按 1:20 配比。为什么实际模型不一定按这个最佳比例来?
▎ 大模型训练详解
-
训练为什么分三个阶段——预训练→SFT→RLHF?为什么不能跳过预训练只做 SFT?
-
RLHF 的奖励模型怎么训练?PPO 用奖励模型分数更新模型——"奖励黑客"(Reward Hacking)风险是什么?
▎ 长上下文技术
-
FlashAttention 通过分块计算和重计算减少显存——为什么能同时变快和变省?
-
RoPE(旋转位置编码)怎么同时实现位置编码和远程衰减?为什么比绝对位置编码更适合长上下文?
▎ 混合专家模型(MoE)
-
MoE 拆成大模型为多个专家,每次只激活几个——Mixtral 8×7B 参数量 56B 但每次只算 14B。这个"参量大但计算少"的设计为什么高效?
-
路由(Router)怎么决定 token 给哪个专家?负载不均衡怎么办——load balancing loss 在做什么?
▎ Diffusion 模型深入
-
前向加噪→反向去噪。为什么不能直接一步去噪而要分几千步?
-
Classifier-Free Guidance(CFG)混合条件预测和无条件预测——引导尺度设太高为什么会导致图像失真?
▎ AI for Science
-
AlphaFold 解决了蛋白质折叠——为什么是"五十年未解难题"?它怎么做到的?
-
GNoME 发现新材料、GraphCast 做气象预测——AI 在科学领域的共同模式是什么?
▎ 视频理解与生成
-
视频理解的核心——时间维度。3D 卷积还是时序注意力?怎么跨帧建模?
-
Sora 为什么被称为"世界模拟器"而不是视频生成器?它也会犯常识错误——为什么模型只学像素分布不学物理规律?
专栏⑯进度:导航 + 10/10篇 + 补充一~四(共 14 篇)✅ 全部完成
Area/技术/AI¶
Wiki 维护说明¶
- 原始 Flomo 笔记保留不动。
- 后续可按子专题拆分页面,避免单页过长。
- 区分问题清单、初稿答案与已验证答案,并保留参考来源。
专题建设补全|从问题清单到可执行学习路线¶
本节在原有 Flomo 问题库基础上补齐学习路径、实践项目、工程工具与验收标准。原始问题清单继续保留,不以本节替代原文。
一、知识地图与学习顺序¶
flowchart TD
A[数学与 Python 基础] --> B[机器学习]
B --> C[深度学习与 PyTorch]
C --> D[Transformer 与大语言模型]
D --> E1[RAG 与知识库]
D --> E2[微调与模型适配]
D --> E3[Agent 与工具调用]
C --> F[计算机视觉 / 语音 / 多模态]
E1 --> G[评估、部署与监控]
E2 --> G
E3 --> G
F --> G
G --> H[安全、隐私、成本与持续迭代]
| 阶段 | 核心目标 | 必须掌握的知识 | 可验收成果 |
|---|---|---|---|
| 0. 编程与数学 | 能读懂训练代码和公式 | Python、NumPy、线性代数、概率、梯度 | 实现线性回归与梯度下降 |
| 1. 机器学习 | 建立数据到预测的完整流程 | 数据切分、特征工程、基线、指标、交叉验证 | 完成分类/回归项目并写评估报告 |
| 2. 深度学习 | 理解神经网络训练 | 张量、自动微分、损失函数、优化器、正则化 | 用 PyTorch 训练并保存模型 |
| 3. Transformer/LLM | 理解生成模型的基本机制 | Token、Embedding、Attention、预训练、SFT、推理 | 调用模型 API,完成结构化输出任务 |
| 4. RAG | 构建可追溯的私有知识问答 | 文档解析、切块、向量检索、重排、引用 | 回答能引用原文并识别无答案问题 |
| 5. Agent | 让模型可靠地使用工具 | 工具 schema、状态机、权限、超时、重试 | 实现带确认步骤的工具工作流 |
| 6. 部署与治理 | 将原型变成可维护服务 | 评估集、日志、延迟、成本、隐私、回滚 | 形成可复现部署和监控清单 |
二、专题模块索引¶
A. 数学、编程与机器学习基础¶
- Python 数据处理:NumPy、pandas、Matplotlib、数据清洗、缺失值和异常值。
- 数学基础:向量与矩阵、矩阵乘法、特征值、条件概率、贝叶斯公式、期望与方差、微积分和链式法则。
- 经典算法:线性/逻辑回归、决策树、随机森林、梯度提升、SVM、K-means、PCA。
- 评估方法:训练/验证/测试集、交叉验证、数据泄漏、类别不平衡、置信区间。
- 实践验收:与多数类/均值等简单基线比较;报告 Accuracy、Precision、Recall、F1、ROC-AUC 或 MAE/RMSE,并解释指标选择。
B. 深度学习与模型架构¶
- 网络基础:前向传播、反向传播、激活函数、初始化、归一化、Dropout、权重衰减。
- CNN:卷积、感受野、池化、数据增强、迁移学习。
- 序列模型:RNN、LSTM、GRU、时间序列切分和滚动验证。
- Transformer:Q/K/V、缩放点积注意力、多头注意力、残差、LayerNorm、位置编码、FFN。
- 生成模型:自回归语言模型、VAE、GAN、Diffusion;区分训练目标、采样过程和适用任务。
- 实践验收:记录数据版本、随机种子、超参数、训练曲线和模型权重;比较至少一个简单基线。
C. 大语言模型与提示工程¶
- Tokenizer、上下文窗口、采样温度、Top-p、最大输出长度和停止条件。
- 预训练、监督微调(SFT)、偏好优化/RLHF 的目的与局限。
- Prompt 设计:角色、背景、约束、示例、输出 schema、拒答条件。
- 结构化输出:JSON Schema 校验、类型检查、失败重试和降级策略。
- 模型选择:质量、延迟、上下文长度、工具能力、隐私要求与总成本综合评估。
- 实践验收:建立 30–100 条代表性测试样本,比较提示词或模型版本,保存错误案例而不是只挑成功示例。
D. RAG 与个人知识库¶
flowchart LR
A[PDF / Markdown / 网页] --> B[解析与清洗]
B --> C[按标题和语义切块]
C --> D[元数据与权限]
D --> E[Embedding]
E --> F[向量/关键词索引]
Q[用户问题] --> R[问题改写]
R --> S[混合检索]
F --> S
S --> T[重排与去重]
T --> U[上下文组装]
U --> V[LLM 生成]
V --> W[引用校验与拒答]
关键检查点:
- 文档解析是否保留标题、表格、代码块、页码和来源链接。
- 切块是否避免把定义、条件和结论切散;重叠窗口不能替代合理的结构切分。
- 检索是否同时考虑语义匹配、关键词、元数据过滤与权限边界。
- 评估应拆成检索质量(Recall@k、MRR/nDCG)和答案质量(正确性、忠实度、引用准确性)。
- 必须测试知识库无答案、文档冲突、过期内容、提示注入和越权检索。
- 答案中的引用应能定位到原始文件/章节;检索不到证据时明确说明不确定,不应编造出处。
E. Agent、工具调用与工作流¶
- Agent 不等于“会聊天的模型”:它还需要工具、状态、控制流程、权限和终止条件。
- 先用确定性工作流解决可预测任务;只有需要动态决策时才增加 Agent 自主性。
- 工具设计:输入 schema、参数校验、最小权限、幂等性、超时、重试上限和审计日志。
- 安全边界:把检索到的网页/文件视为不可信数据;模型输出不能直接成为 shell 命令、SQL 或高权限操作。
- 高风险动作应设置人工确认、预览、撤销机制和操作记录。
- 实践项目:实现“搜索资料 → 摘要 → 生成草稿 → 检查引用 → 人工确认”的流程;每一步都可追踪和单独重试。
F. 微调、量化与推理部署¶
- 先判断问题是否真的需要微调:知识更新通常先考虑 RAG,格式/风格/行为稳定性才考虑微调。
- LoRA/QLoRA:理解低秩适配、训练参数量、数据质量、过拟合与模型合并。
- 量化:区分权重量化与激活量化,比较 FP16/BF16/INT8/INT4 的内存、速度和精度影响。
- 推理优化:批处理、KV Cache、连续批处理、流式输出、上下文裁剪和缓存。
- 部署验收:报告吞吐、首 token 延迟、总延迟、峰值显存、单次请求成本和错误率。
- 版本治理:模型、提示词、索引、数据集和依赖均需有版本;保留回滚路径。
G. 视觉、语音与多模态¶
- 视觉:分类、检测、分割、OCR、图文对齐、视频时序理解。
- 语音:ASR、TTS、说话人分离、噪声鲁棒性、实时流式处理。
- 多模态:图像 patch/视觉编码器、跨模态投影、视频帧采样、时间信息和文本对齐。
- 评估:除总体准确率外,按光照、遮挡、噪声、语言、设备和长尾场景分组。
- 实践项目:建立小型多模态数据集,记录数据许可、标注规范、错误类型与人工复核结果。
H. 端侧 AI 与汽车电子应用¶
- 部署链路:训练框架 → ONNX/中间表示 → 目标运行时 → NPU/DSP/CPU → 性能与功耗测试。
- 优化手段:量化、剪枝、蒸馏、算子融合、静态内存规划和输入尺寸控制。
- 车载场景:驾驶员监测、舱内语音、传感器异常检测、预测性维护;明确安全边界与失效后的降级行为。
- 工程要求:数据闭环、需求追踪、可复现测试、边界场景覆盖、资源预算和版本回滚。
- 不应把通用模型输出直接作为安全关键控制指令;需要独立的安全机制、确定性约束与验证。
I. AI 安全、隐私与治理¶
- 幻觉:区分事实错误、推理错误、引用错误和过度自信。
- 数据风险:个人信息、训练数据许可、机密信息泄露、数据保留和删除机制。
- 对抗风险:提示注入、工具滥用、数据投毒、模型窃取和越权访问。
- 公平性:按人群和场景切分评估,检查代表性、错误成本和代理变量。
- 人机协作:对医疗、法律、财务、安全关键等高风险用途设置专业复核。
- 上线前检查:威胁建模、红队测试、日志脱敏、访问控制、事故响应与回滚预案。
三、可复现实践项目清单¶
| 项目 | 最小交付物 | 核心验收指标 |
|---|---|---|
| 经典 ML 分类器 | 数据清洗脚本、训练脚本、评估报告 | 与基线对比、无数据泄漏 |
| PyTorch 图像分类 | 训练/验证代码、模型权重、混淆矩阵 | 分类别指标、复现实验 |
| 个人 Markdown RAG | 文档导入、检索、答案引用、删除文档 | Recall@k、引用正确率、无答案测试 |
| 结构化 LLM 助手 | JSON schema、校验、失败重试 | 结构合规率、任务成功率 |
| 工具调用工作流 | 工具清单、权限、日志、人工确认 | 工具成功率、超时恢复、安全测试 |
| 端侧模型部署 | 转换脚本、设备测试、资源报告 | 延迟、内存/显存、功耗、精度差异 |
| AI 评测基准 | 版本化测试集、自动评分、人工抽检 | 回归测试覆盖、错误分类与复测 |
四、推荐官方资料与代码入口¶
以下链接用于建立长期维护的学习入口;阅读时应优先查看官方文档、版本说明和许可证。
- Python 官方教程
- NumPy 官方学习资源
- scikit-learn 用户指南
- PyTorch Tutorials
- Hugging Face Learn
- Hugging Face Transformers 文档
- Hugging Face PEFT 文档
- Hugging Face Datasets 文档
- ONNX 文档
- ONNX Runtime 文档
- vLLM 文档
- FAISS 项目
- Sentence Transformers 文档
- LangChain 文档
- LlamaIndex 文档
- MLflow 文档
- OWASP Top 10 for LLM Applications
五、专题维护规则¶
- 每个问题逐步补充:简明答案 → 原理解释 → 最小示例 → 常见误区 → 实践题 → 参考来源。
- 对变化快的模型、框架和价格标注核查日期与版本;不要把某一时点的模型能力当作永久事实。
- 资源清单优先保留官方文档、原始论文、维护活跃的代码仓库和可复现实验。
- 区分“问题已收录”“答案已初稿”“已实验验证”“已复核来源”,不要把问题清单误认为已完成课程。
- 每个实践项目至少保留 README、依赖版本、运行步骤、测试样本、结果与已知限制。