一、AI基础知识核心考点速记

1.1 机器学习三大范式对比

┌──────────────────────────────────────────────────────────────┐
│              机器学习三大范式关系图                              │
│                                                              │
│    ┌───────────┐    ┌──────────────┐    ┌──────────────┐     │
│    │  监督学习   │    │  无监督学习    │    │  强化学习     │     │
│    │  有标签数据 │    │  无标签数据    │    │  环境交互     │     │
│    ├───────────┤    ├──────────────┤    ├──────────────┤     │
│    │分类+回归   │    │聚类+降维      │    │策略优化      │     │
│    │            │    │              │    │              │     │
│    │▸ 分类算法: │    │▸ K-Means     │    │▸ Q-Learning  │     │
│    │  SVM/KNN/ │    │▸ DBSCAN      │    │▸ DQN/PPO     │     │
│    │  决策树    │    │▸ 层次聚类     │    │▸ 策略梯度     │     │
│    │▸ 回归算法: │    │▸ PCA降维     │    │              │     │
│    │  线性/逻辑 │    │              │    │              │     │
│    └───────────┘    └──────────────┘    └──────────────┘     │
│         │                 │                   │              │
│         └── 半监督学习 ────┘                   │              │
│              (少量标签+大量无标签)               │              │
└──────────────────────────────────────────────────────────────┘

1.2 机器学习类型核心对比表

特征 监督学习 无监督学习 半监督学习 强化学习
数据要求 有标签 无标签 少量标签+大量无标签 环境反馈
典型任务 分类/回归 聚类/降维 分类(标签不足时) 决策/控制
代表算法 SVM、KNN、决策树、逻辑回归 K-Means、DBSCAN、PCA 标签传播、自训练 Q-Learning、DQN、PPO
评估方式 准确率/F1/RMSE 轮廓系数/重建误差 准确率(标签测试集) 累计奖励
考试高频 ★★★★★ ★★★ ★★★ ★★

1.3 深度学习核心组件速记

组件 功能 关键参数 易混淆点
CNN 图像特征提取 卷积核大小/步长/通道数 池化≠卷积,池化是降维
RNN/LSTM 序列特征处理 隐藏层维度/序列长度 LSTM有3个门(输入/遗忘/输出),GRU只有2个
Transformer 并行注意力机制 注意力头数/模型维度 自注意力≠CNN局部,Transformer全局建模
BatchNorm 训练稳定加速 BN在训练和推理行为不同 训练用batch统计,推理用全局统计
Dropout 防过拟合 丢弃率p 训练启用,推理关闭
Softmax 多分类概率输出 Softmax输出和为1,Sigmoid不要求

1.4 NLP与CV核心任务对照

领域 核心任务 具体子任务 考试关键词
NLP 文本理解 分词→NER→情感→意图→句法 序列标注是基础
NLP 文本生成 机器翻译→摘要→对话→创作 Seq2Seq架构
CV 图像识别 分类→检测→分割→关键点 精度递进:分类最粗,关键点最细
CV 视频理解 动作识别→目标跟踪→视频摘要 时序信息是关键

1.5 易混淆概念辨析表

易混淆组 A概念 B概念 区别要点
分类vs回归 离散标签输出 连续数值输出 输出类型不同
深度学习vs机器学习 含隐层的神经网络 统计学习方法集合 深度学习是ML子集
Fine-tuning vs Pre-training 在预训练模型上微调 从零开始大规模训练 起点不同,数据量不同
Prompt vs Fine-tuning 不改模型,引导输出 改模型参数 是否修改模型权重
RAG vs Fine-tuning 外部知识检索增强 修改模型内部知识 知识在模型外vs内

二、数据标注核心考点速记

2.1 标注类型与方法速记图

┌──────────────────────────────────────────────────────────┐
│                  数据标注类型体系                           │
│                                                          │
│                    ┌─标注类型─┐                            │
│                    │         │                            │
│        ┌──────────┼──────────┼──────────┐                │
│        │          │          │          │                │
│   ┌────┴───┐ ┌───┴───┐ ┌───┴───┐ ┌───┴───┐             │
│   │文本标注│ │图像标注│ │语音标注│ │视频标注│             │
│   ├────┬───┤ ├────┬───┤ ├────┬───┤ ├────┬───┤             │
│   │NER │情感│ │分类│检测│ │ASR │TTS│ │动作│跟踪│             │
│   │意图│关系│ │分割│关键│ │评测│情绪│ │分割│摘要│             │
│   └───┴────┘ └───┴────┘ └───┴────┘ └───┴────┘             │
└──────────────────────────────────────────────────────────┘

2.2 四类标注方法对比表

标注类型 标注对象 标注方法 质量指标 代表工具
文本标注 文本段落 NER标注、情感标签、意图分类、关系抽取 IAA(一致性)、准确率 Doccano、Label Studio
图像标注 图片像素 分类标签、bbox检测框、语义分割掩码、关键点坐标 IoU精度、标注一致性 Label Studio、CVAT
语音标注 音频波形 ASR转写、语音评测打分、情绪标注、说话人分离 WER(词错误率)、一致性 Praat、Label Studio
视频标注 视频帧序列 动作标签、目标跟踪轨迹、时间戳标注 时序一致性、帧精度 CVAT、Label Studio

2.3 数据标注质量标准速记

质量维度 定义 量化指标 考试要点
一致性 多标注者结果趋同程度 IAA(Cohen’s K / Fleiss’ K) K>0.8为优,0.6-0.8可接受
准确性 与标准答案的匹配度 准确率/召回率 质检抽样≥10%
完整性 标注覆盖范围 缺失率/遗漏率 漏标=不合格
规范性 遵守标注规范程度 规范违规率 格式错误也是质量问题

2.4 IAA一致性指标速记

指标 适用场景 值范围 评价标准
Cohen’s K 2名标注者 [-1, 1] >0.8优秀, 0.6-0.8中等, <0.6差
Fleiss’ K ≥3名标注者 [-1, 1] 同上分级标准
Krippendorff’s α 多标注者+缺失数据 [-1, 1] ≥0.8可接受

速记口诀:K值0.8是金线,低于0.6要返工,Fleiss适用三人组,Cohen专管双人局。

2.5 标注工具功能对比

功能 Label Studio Doccano CVAT
文本标注 ✅ NER/情感/分类 ✅ NER/分类/序列
图像标注 ✅ 分类/检测/分割 ✅ 检测/分割/跟踪
语音标注 ✅ ASR/评测
视频标注 ✅ 时间轴标注 ✅ 跟踪/动作
团队协作 ✅ 多人+质检 ✅ 基础协作 ✅ 多人
API集成 ✅ ML backend ✅ REST API ✅ SDK

三、Python工具:FlashCardGenerator — 考点闪卡生成器

import json
import random
from dataclasses import dataclass, field
from typing import List, Dict, Optional

@dataclass
class FlashCard:
    """考点闪卡"""
    id: int
    category: str        # 模块分类
    concept: str         # 概念名称
    definition: str      # 核心定义(一句话)
    key_points: List[str] # 关键要点
    confusion: Optional[str] = None  # 易混淆对比
    mnemonic: Optional[str] = None   # 记忆口诀
    difficulty: int = 3   # 难度1-5

    def quiz_front(self) -> str:
        """闪卡正面:概念名"""
        return f"[{self.category}] {self.concept}"

    def quiz_back(self) -> str:
        """闪卡背面:定义+要点"""
        back = f"定义:{self.definition}\n要点:"
        for pt in self.key_points:
            back += f"\n  • {pt}"
        if self.confusion:
            back += f"\n易混淆:{self.confusion}"
        if self.mnemonic:
            back += f"\n口诀:{self.mnemonic}"
        return back

class FlashCardGenerator:
    """考点闪卡生成器 — AI基础+数据标注核心考点"""

    CARD_DATABASE: List[Dict] = [
        # AI基础模块
        {"category": "AI基础", "concept": "监督学习",
         "definition": "使用有标签数据训练模型,学习输入到输出的映射",
         "key_points": ["需要标注数据", "任务:分类+回归", "代表:SVM/KNN/决策树"],
         "confusion": "区别于无监督学习:监督有标签,无监督无标签",
         "mnemonic": "监督=有老师带,标签就是答案", "difficulty": 2},
        {"category": "AI基础", "concept": "无监督学习",
         "definition": "使用无标签数据发现数据内在结构与模式",
         "key_points": ["无需标注数据", "任务:聚类+降维", "代表:K-Means/PCA"],
         "confusion": "区别于监督学习:无标签,找模式而非预测",
         "mnemonic": "无监督=自学成才,数据里找规律", "difficulty": 2},
        {"category": "AI基础", "concept": "CNN",
         "definition": "卷积神经网络,通过卷积核提取局部空间特征",
         "key_points": ["局部连接+权值共享", "卷积→池化→全连接", "擅长图像任务"],
         "confusion": "池化是降维不是特征提取;卷积核≠滤波器(概念相近但有区别)",
         "mnemonic": "CNN=小窗扫描图,池化缩尺寸", "difficulty": 3},
        {"category": "AI基础", "concept": "LSTM",
         "definition": "长短期记忆网络,通过门控机制解决RNN长程依赖问题",
         "key_points": ["三个门:输入门+遗忘门+输出门", "缓解梯度消失", "擅长序列任务"],
         "confusion": "GRU只有2个门(更新门+重置门),LSTM更复杂但更稳定",
         "mnemonic": "LSTM三道门,输入遗忘和输出", "difficulty": 4},
        {"category": "AI基础", "concept": "Transformer",
         "definition": "基于自注意力机制的并行序列模型",
         "key_points": ["自注意力:全局关联", "位置编码补时序", "并行计算高效"],
         "confusion": "Transformer≠RNN,前者并行后者串行",
         "mnemonic": "Transformer=全局看,RNN=逐个看", "difficulty": 4},
        {"category": "AI基础", "concept": "Fine-tuning",
         "definition": "在预训练模型基础上用特定数据继续训练调整参数",
         "key_points": ["继承预训练知识", "少量数据即可", "参数部分或全部更新"],
         "confusion": "Prompt不改模型权重,Fine-tuning改权重",
         "mnemonic": "微调=站在巨人肩上稍作调整", "difficulty": 3},
        # 数据标注模块
        {"category": "数据标注", "concept": "NER标注",
         "definition": "命名实体识别标注,为文本中实体标注类别标签",
         "key_points": ["实体类型:人名/地名/组织/时间", "BIO标注体系", "序列标注任务"],
         "confusion": "NER≠关系抽取,NER标注实体类型,关系抽取标注实体间关系",
         "mnemonic": "NER=给实体戴标签帽", "difficulty": 3},
        {"category": "数据标注", "concept": "Cohen's K",
         "definition": "衡量两名标注者之间一致性的统计指标",
         "key_points": ["范围[-1,1]", ">0.8优秀", "排除偶然一致"],
         "confusion": "Cohen's K适用于2人,Fleiss' K适用于≥3人",
         "mnemonic": "Cohen=双人K值,三人以上找Fleiss", "difficulty": 3},
        {"category": "数据标注", "concept": "IoU",
         "definition": "交并比,衡量检测框与真实框的重合程度",
         "key_points": ["IoU=交集面积/并集面积", ">0.5可接受", "检测标注核心指标"],
         "confusion": "IoU≠准确率,IoU衡量空间重合,准确率衡量分类正确",
         "mnemonic": "IoU=重合比例,越高越准", "difficulty": 2},
        {"category": "数据标注", "concept": "质检抽样",
         "definition": "从标注数据中抽取样本进行质量检查",
         "key_points": ["抽样率≥10%", "不合格率>5%需返工", "分层抽样更科学"],
         "confusion": "质检≠全检,质检是抽检代表性样本",
         "mnemonic": "质检10%起步,超5%不合格要返工", "difficulty": 2},
    ]

    def __init__(self):
        self.cards = []
        for i, d in enumerate(self.CARD_DATABASE, 1):
            self.cards.append(FlashCard(id=i, **d))

    def generate_by_category(self, category: str) -> List[FlashCard]:
        """按模块筛选闪卡"""
        return [c for c in self.cards if c.category == category]

    def generate_by_difficulty(self, max_diff: int = 5) -> List[FlashCard]:
        """按难度筛选闪卡"""
        return [c for c in self.cards if c.difficulty <= max_diff]

    def random_quiz(self, n: int = 5) -> List[FlashCard]:
        """随机抽n张闪卡进行自测"""
        return random.sample(self.cards, min(n, len(self.cards)))

    def print_quiz_mode(self, cards: List[FlashCard]):
        """打印自测模式:先显示正面,思考后显示背面"""
        print("=" * 50)
        print("  考点闪卡自测模式")
        print("=" * 50)
        for card in cards:
            print(f"\n📌 Q{card.id}: {card.quiz_front()}")
            print("   (思考3秒后翻卡...)")
            print(f"   ✅ {card.quiz_back()}")
        print("=" * 50)

    def export_cards_json(self, filepath: str = "flashcards.json"):
        """导出闪卡为JSON"""
        data = [{"id": c.id, "category": c.category, "concept": c.concept,
                 "definition": c.definition, "key_points": c.key_points,
                 "confusion": c.confusion, "mnemonic": c.mnemonic,
                 "difficulty": c.difficulty} for c in self.cards]
        with open(filepath, "w", encoding="utf-8") as f:
            json.dump(data, f, ensure_ascii=False, indent=2)
        print(f"已导出 {len(self.cards)} 张闪卡至 {filepath}")

# 使用示例
if __name__ == "__main__":
    gen = FlashCardGenerator()

    # 按模块生成闪卡
    ai_cards = gen.generate_by_category("AI基础")
    print(f"\nAI基础模块:共 {len(ai_cards)} 张闪卡")
    gen.print_quiz_mode(ai_cards[:3])

    # 随机自测5张
    print("\n随机自测模式:")
    quiz = gen.random_quiz(5)
    gen.print_quiz_mode(quiz)

    # 导出全部闪卡
    gen.export_cards_json()

四、考试要点速记表

要点 内容 记忆口诀
监督学习三要素 有标签+分类回归+评估指标 “有师带路,标签为答”
CNN核心流程 卷积→池化→全连接 “卷积扫图,池化缩尺”
LSTM三门 输入门+遗忘门+输出门 “进、忘、出三道门”
Transformer优势 全局注意力+并行计算 “全局看+并行算”
Fine-tuning vs Prompt 改权重vs不改权重 “微调改内,提示引外”
Cohen’s K阈值 >0.8优秀,0.6-0.8可接受,<0.6差 “0.8金线,0.6底线”
质检抽样率 ≥10% “十抽一检”
IoU阈值 >0.5可接受 “五成重叠是底线”
NER标注体系 BIO(Begin/Inside/Outside) “B开头I在内O在外”
标注质量四维 一致性+准确性+完整性+规范性 “一准完规四维评”

思维导图

V4-02 考点速记上

AI基础知识

机器学习类型

分类+回归

聚类+降维

半监督学习

策略+奖励

深度学习组件

卷积+池化

三门控

自注意力

BatchNorm/Dropout

NLP核心任务

分词/NER/情感/意图

Seq2Seq生成

CV核心任务

分类/检测/分割/关键点

数据标注

标注类型

NER/情感/意图

分类/检测/分割

ASR/TTS/评测

动作/跟踪

质量标准

IAA/K值

抽检≥10%

无漏标

格式合规

标注工具

全类型

文本

图像视频

更多推荐