字数
2214 字
阅读时间
9 分钟
AI/机器学习基础学习指南(测试工程师向)
这份内容专为希望系统了解AI/机器学习基础概念、并能快速识别常见模型类型的学习者设计。内容涵盖核心术语、学习范式、关键理论以及模型分类与代表模型,语言简洁、举例实用。
第一部分:核心概念(必须掌握的基石)
1. 什么是机器学习?
机器学习是让计算机从数据中自动学习规律,而无需显式编写规则的方法。
通俗例子:
- 传统编程:告诉计算机“如果邮件包含‘免费’且‘中奖’,则标记为垃圾邮件”。
- 机器学习:给计算机大量已标记的垃圾/正常邮件,让它自己学到哪些词组合更可能是垃圾。
2. 三大学习范式
| 范式 | 数据特点 | 目标 | 例子 |
|---|---|---|---|
| 监督学习 | 有标签(输入+期望输出) | 学习从输入到输出的映射 | 分类(猫/狗识别)、回归(房价预测) |
| 无监督学习 | 无标签 | 发现数据内在结构 | 聚类(用户分群)、降维(可视化) |
| 强化学习 | 通过与环境的交互获得奖励信号 | 学习最大化累计奖励的策略 | AlphaGo、自动驾驶决策 |
3. 核心术语解释
- 特征(Feature):输入变量,比如房屋的面积、卧室数量。
- 标签(Label):真实输出,比如房价。
- 训练集/验证集/测试集:
- 训练集:用于学习参数。
- 验证集:用于调整超参数(如网络层数、学习率)。
- 测试集:用于最终评估模型泛化能力(从未用于训练)。
- 过拟合(Overfitting):模型死记硬背训练数据,在新数据上表现差。
- 表现:训练集准确率99%,测试集只有60%。
- 缓解:增加数据量、降低模型复杂度、正则化、早停。
- 欠拟合(Underfitting):模型连训练数据都没学好。
- 表现:训练集准确率60%,测试集55%。
- 缓解:增加模型复杂度、特征工程、减少正则化。
- 偏差与方差:
- 高偏差 → 欠拟合。
- 高方差 → 过拟合。
- 目标:找到偏差与方差的平衡点。
4. 常用评估指标(面试常见)
| 任务类型 | 指标 | 含义 |
|---|---|---|
| 二分类 | 准确率(Accuracy) | 全部预测正确的比例 |
| 二分类 | 精确率(Precision) | 预测为正的样本中实际为正的比例 |
| 二分类 | 召回率(Recall) | 实际为正的样本中被正确预测的比例 |
| 二分类 | F1分数 | 精确率和召回率的调和平均 |
| 回归 | MAE(平均绝对误差) | 预测值与真实值绝对差值的平均 |
| 回归 | RMSE(均方根误差) | 预测误差的标准差,对大误差惩罚更强 |
| 分类 | ROC-AUC | 衡量模型区分正负类的能力 |
第二部分:常见AI模型类型及代表模型
一、传统机器学习模型(依然活跃在生产环境)
| 类别 | 代表模型 | 核心特点 | 适用场景 |
|---|---|---|---|
| 线性模型 | 线性回归、逻辑回归、Lasso、Ridge | 简单、可解释、训练快 | 金融评分卡、点击率预估基线 |
| 决策树 | CART、ID3 | 直观、可可视化、易过拟合 | 小规模表格数据 |
| 集成学习 | 随机森林、GBDT、XGBoost、LightGBM | 精度高、鲁棒、处理混合特征 | 风控、推荐、广告点击预测(常拿冠军) |
| 支持向量机 | 线性SVM、核SVM(RBF核) | 对小样本高维数据有效 | 文本分类、人脸识别(早期) |
| 朴素贝叶斯 | 高斯朴素贝叶斯、多项式朴素贝叶斯 | 基于贝叶斯定理、假设特征独立 | 垃圾邮件过滤、情感分析 |
| 聚类 | K-Means、DBSCAN、层次聚类 | 无监督、自动发现群体 | 客户分群、异常检测 |
| 降维 | PCA、t-SNE、UMAP | 减少特征维度、可视化 | 数据预处理、高维数据可视化 |
二、深度学习模型(当前主流)
| 类别 | 代表模型 | 核心特点 | 典型应用 |
|---|---|---|---|
| 全连接网络(DNN/MLP) | 多层感知机 | 基础结构,万能逼近器 | 简单分类/回归 |
| 卷积神经网络(CNN) | LeNet、AlexNet、VGG、ResNet、EfficientNet | 局部连接、权值共享、自动提取空间特征 | 图像分类、目标检测、OCR |
| 循环神经网络(RNN) | 传统RNN、LSTM、GRU | 处理序列、有记忆单元 | 文本生成、时间序列预测 |
| Transformer | BERT、GPT(GPT-3/4)、T5、ViT | 自注意力机制、并行计算、长距离依赖 | NLP大模型基石、图像分类(ViT) |
| 生成对抗网络(GAN) | DCGAN、StyleGAN、CycleGAN | 生成器与判别器对抗 | 图像生成、风格迁移、数据增强 |
| 图神经网络(GNN) | GCN、GraphSAGE、GAT | 处理图结构数据 | 社交网络分析、分子性质预测 |
三、大语言模型(LLMs)——测试工程师需关注
| 模型系列 | 代表模型 | 特点 |
|---|---|---|
| GPT系列 | GPT-3.5, GPT-4, ChatGPT | 通用对话、代码生成、推理能力 |
| LLaMA系列 | LLaMA 2/3, Vicuna | 开源、可商用、性能逼近GPT-3.5 |
| 国产系列 | 文心一言、通义千问、智谱ChatGLM | 中文优化、合规 |
| 其他 | Claude, Gemini, Mistral | 长上下文、安全性强 |
第三部分:学习路线建议(入门→面试够用)
1. 理论学习(2周)
- 先掌握:监督/无监督、过拟合/欠拟合、评估指标(准确率/召回率/F1)。
- 了解:梯度下降、交叉验证、偏差方差权衡。
- 推荐资源:李宏毅机器学习课程(前5节)、吴恩达《Machine Learning》前三章。
2. 模型类型记忆(3天)
- 画一张表格,列出上面传统模型+深度学习模型,每天背一遍。
- 重点能说出:随机森林 vs GBDT 的区别(随机森林并行,GBDT串行);CNN和全连接的区别(局部连接+参数共享)。
3. 结合测试场景理解(1周)
- 思考:如何测试一个图像分类模型? → 评估指标(准确率、混淆矩阵)、对抗样本攻击、数据漂移检测。
- 思考:如何测试大语言模型? → Prompt测试、输出一致性、安全性(越狱注入)。
4. 实践(可选但加分)
- 在Kaggle上跑一个Titanic生存预测(用逻辑回归、随机森林),观察过拟合。
- 用Hugging Face加载一个小型BERT模型,尝试做情感分析并手动构造测试用例。
附录:面试中常见AI相关问题的回答示例
问:你了解哪些机器学习模型?
答:我了解传统模型如线性回归、逻辑回归、随机森林、XGBoost,以及深度学习中的CNN、RNN和Transformer。在实际项目中,我使用过随机森林做特征重要性分析(比如在AI创新大赛中),也理解CNN在图像任务中的优势是局部特征提取。
问:什么是过拟合?怎么避免?
答:过拟合是指模型在训练集上表现极好,但在测试集上泛化差。避免方法有:增加训练数据、降低模型复杂度(如减少神经网络层数)、正则化(L1/L2)、早停、Dropout等。
问:你在测试工作中会怎么用到AI?
答:第一,用AI生成测试用例(如输入边界值、异常场景);第二,用AI辅助缺陷分析(聚类相似Bug);第三,如果测试AI模型本身,我会用对抗样本测试鲁棒性,并监控模型评估指标(如F1分数)。
这份内容你可以打印出来,作为学习提纲。建议你对照表格逐个模型去查一个应用例子(比如“ResNet用于人脸识别”),加深印象。