\chapter{设计人工智能的理论框架} 本章建立全书的核心理论框架。我们从“函数描述世界”的理念出发,引入数据模态(Data Modality)作为理解AI技术的组织原则,梳理从小模型到大模型的统一演进规律,并以多层感知机(MLP)作为一切深度学习的基础模型进行系统讲解。 \section{篇章导读} 理解AI不需要逐一学习每种技术。核心理念是:\textbf{所有AI技术都是围绕不同类型的数据(模态)来学习函数}。 无论是处理文本、图像还是三维空间数据,AI的本质工作都是一样的——从数据中学习映射函数 \(y = f(x; \theta)\)。区别仅在于输入数据的形态不同,因此需要不同的网络结构来高效处理。 本章将: - 从函数式视角理解AI的本质 - 建立基于数据模态的全书知识地图 - 揭示所有AI技术背后的统一演进规律 - 深入讲解MLP这一最基础的神经网络 - 建立“环境-智能体-任务”实践框架,降低上手门槛 \section{函数式AI视角} \subsection{学习目标} \begin{itemize} \tightlist \item 理解“Functions Describe the World”的核心理念 \item 掌握从Excel线性回归到神经网络的演进逻辑 \item 理解数据驱动与规则驱动的根本区别 \end{itemize} \subsection{物理定律:用函数描述世界} 物理学是最早用数学函数描述世界的学科。人类科学家花费数百年时间,发现了许多简洁而优美的函数关系: {\def\LTcaptype{none} % do not increment counter \begin{longtable}[]{@{}lll@{}} \toprule\noalign{} 现象 & 函数 & 发现者 \\ \midrule\noalign{} \endhead \bottomrule\noalign{} \endlastfoot 自由落体 & \(h = \frac{1}{2}gt^2\) & 伽利略 \\ 万有引力 & \(F = \frac{Gm_1m_2}{r^2}\) & 牛顿 \\ 电磁感应 & \(\varepsilon = -\frac{d\Phi}{dt}\) & 法拉第 \\ 质能等价 & \(E = mc^2\) & 爱因斯坦 \\ \end{longtable} } 这些函数的共同特点是:\textbf{用简洁的数学关系描述复杂的自然规律}。科学家通过观察现象、收集数据、提出假设,最终找到精确的函数形式。 \subsection{AI的函数观:从数据中学习函数} AI延续了这一传统,但方式截然不同——\textbf{不是由人类发现函数,而是让机器从数据中自动学习函数}。 \begin{lstlisting} 传统科学: 观察 → 假设 → 验证 → 发现函数 f(x) AI方法: 数据 → 训练 → 学习函数 y = f(x; θ) \end{lstlisting} 在AI中,函数的一般形式为: \[y = f(x; \theta)\] 其中: - \(x\) 是\textbf{输入}(如图像、文本、传感器数据) - \(y\) 是\textbf{输出}(如分类标签、预测值、生成内容) - \(\theta\) 是\textbf{可学习参数}(通过训练自动确定) - \(f\) 是\textbf{模型结构}(我们设计的函数框架) 关键区别在于:物理定律中的函数形式是人为确定的(如 \(F=ma\)),而AI中的函数形式由神经网络自动学习,参数 \(\theta\) 通过海量数据训练得到。 \subsection{从Excel线性回归到神经网络} 这个过程可以用一个渐进的例子来理解。 \textbf{第一步:简单线性回归(Excel就能做)} 预测房价,只有一个输入变量——面积: \[房价 \approx 0.015 \times 面积 + 50万\] 这就是 \(y = ax + b\),最简单的线性函数。在Excel中,我们可以用趋势线功能轻松完成。 \textbf{第二步:多元回归} 增加更多特征: \[房价 \approx 0.01 \times 面积 + 0.5 \times 卧室数 + 0.3 \times 地段评分 - 20万\] 这就是 \(y = a_1x_1 + a_2x_2 + a_3x_3 + b\)。从数学上看,这已经是\textbf{单个神经元}的完整形式。 \textbf{第三步:多层函数组合} 现实世界的关系往往不是简单的线性关系。我们需要将多个函数组合起来: \begin{lstlisting} h₁ = σ(W₁x + b₁) # 第一层:提取基础特征 h₂ = σ(W₂h₁ + b₂) # 第二层:组合高级特征 y = σ(W₃h₂ + b₃) # 第三层:输出最终结果 \end{lstlisting} 这就是\textbf{多层神经网络}。每一层都在做线性变换加非线性激活,层层嵌套形成复杂的能力。 \textbf{Python代码示例:简单线性回归} \begin{lstlisting}[language=Python] import numpy as np import matplotlib.pyplot as plt # 生成模拟数据:面积(平方米)与房价(万元) np.random.seed(42) areas = np.random.uniform(50, 200, 100) # 50-200平方米 prices = 0.015 * areas + 50 + np.random.normal(0, 10, 100) # 加入噪声 # 使用最小二乘法拟合线性函数 y = ax + b X = np.column_stack([areas, np.ones_like(areas)]) # 构造设计矩阵 theta = np.linalg.lstsq(X, prices, rcond=None)[0] # 求解参数 a, b = theta print(f"学到的函数: 房价 = {a:.4f} × 面积 + {b:.2f}") print(f"真实函数: 房价 = 0.0150 × 面积 + 50.00") # 可视化 plt.figure(figsize=(8, 5)) plt.scatter(areas, prices, alpha=0.5, label='数据点') plt.plot(areas, a * areas + b, 'r-', linewidth=2, label=f'拟合: y={a:.4f}x+{b:.1f}') plt.xlabel('面积(平方米)') plt.ylabel('房价(万元)') plt.title('线性回归:从数据中学习函数') plt.legend() plt.grid(True, alpha=0.3) plt.show() \end{lstlisting} 这段代码展示了一个完整的“从数据中学习函数”的过程。虽然这只是最简单的线性回归,但它已经包含了AI的核心思想:\textbf{给定数据,自动确定函数参数}。 \subsection{数据驱动 vs 规则驱动} 这是理解AI最重要的思维转变。 \textbf{规则驱动(传统编程)} \begin{lstlisting}[language=Python] # 传统方式:人工编写判断规则 def classify_design_style(image): if has_minimal_lines(image) and is_monochrome(image): return "极简主义" elif has_curved_forms(image) and is_colorful(image): return "波普风格" # ... 需要穷举所有情况 return "未知风格" \end{lstlisting} 问题: - 规则难以穷举所有情况 - 边界情况(edge case)无法覆盖 - 无法处理模糊和不确定的情况 - 维护成本随复杂度指数增长 \textbf{数据驱动(AI方法)} \begin{lstlisting}[language=Python] # AI方式:从标注数据中自动学习 model = NeuralNetwork() model.train(thousands_of_labeled_images) # 从数据中学习规律 result = model.predict(new_image) # 自动判断 \end{lstlisting} 优势: - 自动发现人类难以表达的规律 - 数据越多,性能越好 - 可以处理复杂的、非线性的关系 - 适应性强,可迁移到新任务 \begin{quote} \textbf{设计思维的转变}:从“设计规则”到“设计数据”。在AI时代,设计师不仅要设计规则(设计语言、规范),还要设计和管理训练数据,因为数据决定了AI学到的函数。 \end{quote} \section{数据模态全景} \subsection{学习目标} \begin{itemize} \tightlist \item 理解数据模态(Data Modality)的概念 \item 建立全书各章节之间的知识地图 \item 理解为什么数据模态是组织AI知识的有效框架 \end{itemize} \subsection{什么是数据模态} \textbf{模态(Modality)} 是指信息的存在形式和感知方式。人类通过不同感官感知不同模态的信息:耳朵感知声音(一维时间序列),眼睛感知图像(二维像素矩阵),身体感知空间(三维坐标)。 AI同样需要针对不同模态的数据采用不同的处理方式。一种数据模态决定了: \begin{enumerate} \def\labelenumi{\arabic{enumi}.} \tightlist \item \textbf{数据的组织形式}:文本是符号序列,图像是像素矩阵,三维数据是点云或网格 \item \textbf{适合的网络结构}:序列数据用RNN/Transformer,图像用CNN/ViT,空间数据用PointNet \item \textbf{典型的应用场景}:翻译、分类、检测、生成等 \item \textbf{评估标准}:不同任务的评估指标不同 \end{enumerate} 因此,\textbf{数据模态是理解AI技术最自然的组织框架}。 \subsection{六大数据模态} 本书后续章节将围绕以下六大数据模态展开: {\def\LTcaptype{none} % do not increment counter \begin{longtable}[]{@{} >{\raggedright\arraybackslash}p{(\linewidth - 12\tabcolsep) * \real{0.0857}} >{\raggedright\arraybackslash}p{(\linewidth - 12\tabcolsep) * \real{0.1286}} >{\raggedright\arraybackslash}p{(\linewidth - 12\tabcolsep) * \real{0.1286}} >{\raggedright\arraybackslash}p{(\linewidth - 12\tabcolsep) * \real{0.1286}} >{\raggedright\arraybackslash}p{(\linewidth - 12\tabcolsep) * \real{0.2714}} >{\raggedright\arraybackslash}p{(\linewidth - 12\tabcolsep) * \real{0.1286}} >{\raggedright\arraybackslash}p{(\linewidth - 12\tabcolsep) * \real{0.1286}}@{}} \toprule\noalign{} \begin{minipage}[b]{\linewidth}\raggedright 模态 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 数据维度 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 数据类型 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 输入形式 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 代表模型(小→大) \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 设计应用 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 对应章节 \end{minipage} \\ \midrule\noalign{} \endhead \bottomrule\noalign{} \endlastfoot \textbf{一维:文本与序列} & 1D & 文本、时间序列、音乐 & Token序列 & RNN → LSTM → BERT → GPT-4 & 设计文本生成、用户评论分析、设计趋势预测 & 第3章 \\ \textbf{二维:图像与视觉} & 2D & 图像、视觉设计稿 & 像素矩阵 & LeNet → ResNet → ViT → SAM & 图像分类、目标检测、风格迁移、设计评估 & 第4章 \\ \textbf{三维:空间与几何} & 3D & 点云、网格、体素 & 3D坐标集 & PointNet → DGCNN → Point Transformer & 三维重建、空间分析、建筑设计、数字孪生 & 第5章 \\ \textbf{决策序列} & 时序决策 & 状态-动作对 & 状态→动作映射 & Q-Learning → DQN → PPO → AlphaGo & 布局优化、参数调优、自适应设计 & 第6章 \\ \textbf{生成} & 创造性输出 & 图像、文本、音频 & 噪声/条件 & VAE → GAN → Diffusion → Sora & AIGC设计、概念生成、风格迁移、设计探索 & 第7章 \\ \textbf{行动序列} & 多步行动 & 任务-工具-行动链 & 目标→计划→执行 & ReAct → Toolformer → AutoGPT → GPT-4V & 智能设计助手、自动化工作流、多Agent协作 & 第8章 \\ \end{longtable} } \subsection{模态之间的关系} 这六种模态并非孤立存在,它们之间存在密切的内在联系: \begin{lstlisting} ┌──────────────┐ │ 一维:序列 │ │ (第3章) │ └──────┬───────┘ │ 序列化的基础 ┌──────┴───────┐ │ 二维:视觉 │ │ (第4章) │ └──────┬───────┘ │ 空间维度的扩展 ┌──────┴───────┐ │ 三维:空间 │ │ (第5章) │ └──────┬───────┘ │ ┌────────────┼────────────┐ │ │ │ ┌──────┴──────┐ ┌──┴───┐ ┌──────┴──────┐ │ 决策序列 │ │ 生成 │ │ 行动序列 │ │ (第6章) │ │(第7章)│ │ (第8章) │ └─────────────┘ └──────┘ └─────────────┘ \end{lstlisting} \textbf{从感知到行动的逻辑链条}: - \textbf{一维到三维}是感知智能的递进——从理解语言、识别图像到感知空间 - \textbf{决策序列}将感知转化为行动策略——在环境中做出最优选择 - \textbf{生成}突破感知的局限——不仅理解,还能创造新内容 - \textbf{行动序列}整合所有能力——感知、规划、执行形成闭环 \subsection{为什么模态是有用的组织原则} \textbf{第一,降低学习门槛。} 不需要一次性理解所有AI技术,只需要按数据类型逐一学习。理解了文本处理的方法后,很多概念可以直接迁移到图像处理。 \textbf{第二,揭示统一规律。} 虽然不同模态使用的网络结构不同,但背后遵循相同的学习范式——都是从小模型到大模型的演进(见2.3节)。 \textbf{第三,对应设计实践。} 设计师日常接触的信息天然是按模态划分的:文字(设计说明)、图像(效果图)、三维模型(空间设计)。按模态组织知识,便于直接找到所需技术。 \textbf{第四,预见技术趋势。} 理解了模态框架,就能更好地理解多模态(Multimodal)AI的发展方向——让AI同时处理多种模态的数据,正如人类同时用视觉、听觉和触觉感知世界。 \section{小模型到大模型的演进规律} \subsection{学习目标} \begin{itemize} \tightlist \item 理解AI技术发展的四个阶段 \item 认识到不同模态背后存在统一的演进规律 \item 建立对当前大模型时代的技术定位 \end{itemize} \subsection{四个发展阶段} 纵观AI各个模态的发展历程,可以提炼出一个统一的四阶段演进模式: \textbf{第一阶段:手工特征时代(Hand-crafted Features)} 人类专家根据领域知识,手工设计特征提取方法。例如,图像处理中的边缘检测算子(Sobel、Canny)、纹理特征(HOG、SIFT),自然语言处理中的词袋模型(Bag of Words)、TF-IDF等。 特点: - 特征由人类专家精心设计 - 每个特征都有明确的物理含义 - 性能受限于人类的领域知识和表达能力 - 适合数据量小、计算资源有限的场景 \textbf{第二阶段:自动学习时代(Deep Learning)} 深度学习让模型自动从原始数据中学习特征。卷积神经网络(CNN)自动学习图像特征,循环神经网络(RNN)自动学习序列特征。 特点: - 特征由网络自动学习,无需人工设计 - 端到端(End-to-End)的训练方式 - 需要大量标注数据 - 性能大幅超越手工特征方法 \textbf{第三阶段:预训练时代(Pre-training)} 通过在大规模无标注数据上的预训练,模型学习通用知识,再通过微调(Fine-tuning)适配具体任务。迁移学习使得少量标注数据也能获得优秀性能。 特点: - 先预训练学通用知识,再微调适配任务 - 大幅减少对标注数据的依赖 - 模型开始具备迁移和泛化能力 - “预训练+微调”成为标准范式 \textbf{第四阶段:大模型时代(Foundation Models)} 参数规模达到十亿甚至万亿级别的模型,展现出“涌现能力”(Emergent Abilities)——模型规模大到一定程度后,突然具备了小模型没有的新能力。 特点: - 单一模型处理多种任务(通用性) - 涌现能力:规模带来质变 - 少样本甚至零样本学习 - Scaling Law:性能随规模持续提升 \subsection{四阶段对比} {\def\LTcaptype{none} % do not increment counter \begin{longtable}[]{@{} >{\raggedright\arraybackslash}p{(\linewidth - 8\tabcolsep) * \real{0.1154}} >{\raggedright\arraybackslash}p{(\linewidth - 8\tabcolsep) * \real{0.2308}} >{\raggedright\arraybackslash}p{(\linewidth - 8\tabcolsep) * \real{0.2308}} >{\raggedright\arraybackslash}p{(\linewidth - 8\tabcolsep) * \real{0.2115}} >{\raggedright\arraybackslash}p{(\linewidth - 8\tabcolsep) * \real{0.2115}}@{}} \toprule\noalign{} \begin{minipage}[b]{\linewidth}\raggedright 维度 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 手工特征时代 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 自动学习时代 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 预训练时代 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 大模型时代 \end{minipage} \\ \midrule\noalign{} \endhead \bottomrule\noalign{} \endlastfoot \textbf{特征提取方式} & 人工设计 & 自动学习 & 预训练+微调 & 涌现学习 \\ \textbf{数据需求} & 少量标注数据 & 大量标注数据 & 大量无标注+少量标注 & 海量多模态数据 \\ \textbf{计算资源} & CPU即可 & 需要GPU & 需要多GPU & 需要大规模集群 \\ \textbf{模型特点} & 任务专用 & 任务专用但自动 & 可迁移 & 通用基础模型 \\ \textbf{典型模型} & SIFT、HOG、TF-IDF & AlexNet、LSTM & BERT、ResNet & GPT-4、SAM、Sora \\ \textbf{设计影响} & 基础图像处理 & 自动化设计分析 & 设计知识迁移 & 通用设计智能 \\ \end{longtable} } \subsection{不同模态的演进路径} 每种模态都经历了相同的四个阶段,只是时间线略有不同: \textbf{文本与序列(一维)} \begin{lstlisting} 手工特征 自动学习 预训练 大模型 TF-IDF → Word2Vec → BERT (2018) → GPT-4 (2023) 词袋模型 LSTM/GRU ELMo Claude N-gram Seq2Seq T5 Llama \end{lstlisting} \textbf{图像与视觉(二维)} \begin{lstlisting} 手工特征 自动学习 预训练 大模型 SIFT → AlexNet → ResNet → SAM (2023) HOG VGGNet EfficientNet DINOv2 Canny边缘 YOLO CLIP GPT-4V \end{lstlisting} \textbf{三维空间(三维)} \begin{lstlisting} 手工特征 自动学习 预训练 大模型 FPFH → PointNet → Point-BERT → Point-E 3D形状上下文 DGCNN Point-MAE Shape-E 体素特征 PointNet++ ULIP LRM \end{lstlisting} \textbf{生成模型} \begin{lstlisting} 手工特征 自动学习 预训练 大模型 规则模板 → VAE/GAN → StyleGAN → Stable Diffusion 马尔可夫链 PixelCNN BigGAN DALL-E 3 分形算法 CycleGAN Craiyon Sora \end{lstlisting} \begin{quote} \textbf{关键洞察}:无论哪种模态,发展路径都遵循相同的规律——从人工设计到自动学习,从专用到通用,从小规模到大规模。理解了这个规律,即使面对全新的AI技术,也能快速定位它所处的阶段和意义。 \end{quote} \subsection{对设计师的启示} \begin{enumerate} \def\labelenumi{\arabic{enumi}.} \item \textbf{不要被具体模型名称迷惑}。模型千变万化,但底层逻辑相同。重要的是理解它属于哪个阶段、处理什么模态的数据。 \item \textbf{关注趋势而非细节}。AI技术迭代极快,具体的模型可能很快过时,但从手工到自动、从小到大的趋势不会改变。 \item \textbf{预训练时代是设计师的最佳入口}。利用预训练模型,设计师不需要海量数据和强大算力,就能将AI应用到设计实践中。 \item \textbf{大模型时代带来“民主化”}。大模型通过自然语言交互降低了AI的使用门槛,设计师可以用自然语言指挥AI完成设计任务。 \end{enumerate} \section{MLP:一切的基础} \subsection{学习目标} \begin{itemize} \tightlist \item 理解多层感知机(MLP)的网络架构 \item 掌握前向传播的计算过程 \item 了解激活函数、损失函数和反向传播的基本原理 \item 建立对神经网络训练过程的完整认知 \end{itemize} \subsection{为什么MLP如此重要} 多层感知机(Multi-Layer Perceptron, MLP)是最基础的神经网络结构。虽然现代AI使用CNN、Transformer等更复杂的架构,但它们的底层构件仍然是MLP中的基本操作:线性变换、非线性激活、损失计算和梯度更新。 \textbf{理解MLP是理解所有深度学习的起点。} \begin{lstlisting} MLP(多层感知机) │ ├── CNN(卷积神经网络)= 局部连接的MLP + 权重共享 │ ├── RNN(循环神经网络)= 共享参数的MLP + 时间展开 │ └── Transformer = 注意力机制 + MLP \end{lstlisting} \subsection{网络架构} MLP由三种类型的层组成: \begin{lstlisting} 输入层 隐藏层1 隐藏层2 输出层 ┌─────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────┐ │ x₁ │ │ h₁ │ │ g₁ │ │ y₁ │ │ x₂ │───→│ h₂ │──→│ g₂ │──→│ y₂ │ │ x₃ │ │ h₃ │ │ g₃ │ │ y₃ │ │ ... │ │ ... │ │ ... │ │ ... │ │ xₙ │ │ hₘ │ │ gₖ │ │ yₚ │ └─────────┘ └─────────────┘ └─────────────┘ └─────────┘ │ │ │ │ └───────────────┴─────────────────┴────────────────┘ 全连接(Fully Connected):每个神经元与上一层所有神经元相连 \end{lstlisting} 各层的作用: {\def\LTcaptype{none} % do not increment counter \begin{longtable}[]{@{} >{\raggedright\arraybackslash}p{(\linewidth - 4\tabcolsep) * \real{0.3200}} >{\raggedright\arraybackslash}p{(\linewidth - 4\tabcolsep) * \real{0.2400}} >{\raggedright\arraybackslash}p{(\linewidth - 4\tabcolsep) * \real{0.4400}}@{}} \toprule\noalign{} \begin{minipage}[b]{\linewidth}\raggedright 层类型 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 作用 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 神经元数量 \end{minipage} \\ \midrule\noalign{} \endhead \bottomrule\noalign{} \endlastfoot 输入层 & 接收原始数据,每个神经元对应一个特征 & 取决于数据特征数(如图像像素数) \\ 隐藏层 & 特征变换与组合,逐步提取高级特征 & 可自由设计(超参数) \\ 输出层 & 产生最终预测结果 & 取决于任务(分类数或回归值数) \\ \end{longtable} } \textbf{设计类比}:可以把MLP想象为设计方案的评审流程。输入层是原始需求,隐藏层是不同维度的评估(功能、美学、可行性),输出层是最终的评分或决策。每一层都在对信息进行加工和抽象。 \subsection{前向传播} 前向传播(Forward Propagation)是数据从输入层经过各隐藏层到达输出层的计算过程。 \textbf{单个神经元的计算} 每个神经元执行两个操作: \begin{lstlisting} 步骤1:线性变换 z = W₁x₁ + W₂x₂ + ... + Wₙxₙ + b = Wx + b 步骤2:非线性激活 h = σ(z) \end{lstlisting} 其中 \(W\) 是权重(Weight),\(b\) 是偏置(Bias),\(\sigma\) 是激活函数(Activation Function)。 \textbf{完整网络的前向传播} 对于L层网络,前向传播逐层计算: \begin{lstlisting} # 第1层 h₁ = σ₁(W₁ · x + b₁) # 第2层 h₂ = σ₂(W₂ · h₁ + b₂) # ... 第l层 hₗ = σₗ(Wₗ · hₗ₋₁ + bₗ) # 输出层 y = hₗ \end{lstlisting} 用更简洁的函数组合表示: \[y = f_L(f_{L-1}(\cdots f_2(f_1(x))\cdots))\] \textbf{数据流动示意} \begin{lstlisting} 输入向量 x │ ├─→ 线性变换: z₁ = W₁x + b₁ │ │ │ └─→ 激活函数: h₁ = σ(z₁) │ │ │ └─→ 线性变换: z₂ = W₂h₁ + b₂ │ │ │ └─→ 激活函数: h₂ = σ(z₂) │ │ │ └─→ ... → y(输出) \end{lstlisting} \textbf{Python代码示例:手动实现前向传播} \begin{lstlisting}[language=Python] import numpy as np def sigmoid(x): """Sigmoid激活函数""" return 1 / (1 + np.exp(-x)) def relu(x): """ReLU激活函数""" return np.maximum(0, x) # 定义一个简单的3层MLP # 输入: 4维 → 隐藏层1: 8个神经元 → 隐藏层2: 4个神经元 → 输出: 2维 # 初始化权重和偏置(实际中由训练得到) W1 = np.random.randn(8, 4) * 0.01 # (8, 4) b1 = np.zeros((8, 1)) # (8, 1) W2 = np.random.randn(4, 8) * 0.01 # (4, 8) b2 = np.zeros((4, 1)) # (4, 1) W3 = np.random.randn(2, 4) * 0.01 # (2, 4) b3 = np.zeros((2, 1)) # (2, 1) # 输入数据(4个特征) x = np.array([[0.5], [0.3], [0.8], [0.1]]) # (4, 1) # 前向传播 z1 = np.dot(W1, x) + b1 # 线性变换 h1 = relu(z1) # ReLU激活 z2 = np.dot(W2, h1) + b2 # 线性变换 h2 = relu(z2) # ReLU激活 z3 = np.dot(W3, h2) + b3 # 线性变换 y = sigmoid(z3) # Sigmoid激活(输出层) print(f"输入: {x.flatten()}") print(f"隐藏层1输出: {h1.flatten()}") print(f"隐藏层2输出: {h2.flatten()}") print(f"最终输出: {y.flatten()}") \end{lstlisting} \subsection{激活函数} 激活函数(Activation Function)是神经网络的“灵魂”。没有激活函数,无论网络有多少层,都等价于一个单层线性变换: \[y = W_2(W_1x) = (W_2W_1)x = W'x\] 激活函数引入\textbf{非线性},使网络能够拟合任意复杂的函数关系。 \textbf{常用激活函数对比} {\def\LTcaptype{none} % do not increment counter \begin{longtable}[]{@{} >{\raggedright\arraybackslash}p{(\linewidth - 8\tabcolsep) * \real{0.2308}} >{\raggedright\arraybackslash}p{(\linewidth - 8\tabcolsep) * \real{0.1538}} >{\raggedright\arraybackslash}p{(\linewidth - 8\tabcolsep) * \real{0.2308}} >{\raggedright\arraybackslash}p{(\linewidth - 8\tabcolsep) * \real{0.1538}} >{\raggedright\arraybackslash}p{(\linewidth - 8\tabcolsep) * \real{0.2308}}@{}} \toprule\noalign{} \begin{minipage}[b]{\linewidth}\raggedright 激活函数 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 公式 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 输出范围 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 特点 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 典型应用 \end{minipage} \\ \midrule\noalign{} \endhead \bottomrule\noalign{} \endlastfoot Sigmoid & \(\sigma(z) = \frac{1}{1+e^{-z}}\) & (0, 1) & 输出可解释为概率;两端梯度消失 & 二分类输出层 \\ ReLU & \(\text{ReLU}(z) = \max(0, z)\) & {[}0, +∞) & 计算简单高效;缓解梯度消失 & \textbf{隐藏层首选} \\ Tanh & \(\tanh(z) = \frac{e^z - e^{-z}}{e^z + e^{-z}}\) & (-1, 1) & 零中心化;两端梯度消失 & 循环网络隐藏层 \\ Softmax & \(\text{softmax}(z_i) = \frac{e^{z_i}}{\sum_j e^{z_j}}\) & (0, 1),和为1 & 输出为概率分布 & 多分类输出层 \\ LeakyReLU & \(\text{LeakyReLU}(z) = \max(\alpha z, z)\) & (-∞, +∞) & 解决ReLU“死神经元”问题 & 深层网络隐藏层 \\ \end{longtable} } \textbf{视觉对比} \begin{lstlisting} ReLU: Sigmoid: Tanh: ↑ ___ ___ │ / \ / \ │ / \ / \ │ ____ / \ ____ / \ ____ │___________| │ │ │ │ └───────────┼──→ └──────────┘ └────────────────────┘ -∞ 0 +∞ -∞ 0 +∞ -∞ 0 +∞ 特点:简单,计算快 特点:平滑,输出(0,1) 特点:零中心,输出(-1,1) 正区间梯度恒为1 两端梯度趋近于0 两端梯度趋近于0 负区间输出为0 可能导致梯度消失 可能导致梯度消失 \end{lstlisting} \begin{quote} \textbf{设计类比}:激活函数就像是设计中的“非线性思维”。如果只有线性思维(没有激活函数),无论思考多少层,结论都是线性的——就像在一条直线上来回走。激活函数引入了“跳跃”和“拐弯”的能力,让网络能够表达复杂的设计关系。 \end{quote} \subsection{损失函数} 损失函数(Loss Function)衡量模型预测值与真实值之间的差距,是训练过程的“指南针”。 \textbf{常用损失函数} {\def\LTcaptype{none} % do not increment counter \begin{longtable}[]{@{} >{\raggedright\arraybackslash}p{(\linewidth - 6\tabcolsep) * \real{0.2727}} >{\raggedright\arraybackslash}p{(\linewidth - 6\tabcolsep) * \real{0.2727}} >{\raggedright\arraybackslash}p{(\linewidth - 6\tabcolsep) * \real{0.1818}} >{\raggedright\arraybackslash}p{(\linewidth - 6\tabcolsep) * \real{0.2727}}@{}} \toprule\noalign{} \begin{minipage}[b]{\linewidth}\raggedright 任务类型 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 损失函数 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 公式 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 直观含义 \end{minipage} \\ \midrule\noalign{} \endhead \bottomrule\noalign{} \endlastfoot 回归 & 均方误差 (MSE) & \(L = \frac{1}{n}\sum_{i=1}^{n}(\hat{y}_i - y_i)^2\) & 预测值与真实值差的平方平均 \\ 二分类 & 二元交叉熵 (BCE) & \(L = -[y\log\hat{y} + (1-y)\log(1-\hat{y})]\) & 预测概率与真实标签的偏差 \\ 多分类 & 交叉熵 (CE) & \(L = -\sum_{i=1}^{C}y_i\log\hat{y}_i\) & 预测分布与真实分布的差距 \\ \end{longtable} } 其中 \(\hat{y}\) 是模型预测值,\(y\) 是真实值。 \textbf{损失函数的直观理解} \begin{lstlisting} 好的预测: 差的预测: 预测值: ■ 预测值: ■ 真实值: ■ 真实值: ■ 损失小: | 损失大: |——---| → 参数调整小 → 参数需要大幅调整 \end{lstlisting} \subsection{反向传播与梯度下降} 反向传播(Backpropagation)是训练神经网络的核心算法,它解决了“如何高效计算每个参数对损失的影响程度”这一问题。 \textbf{核心思想:梯度下降} 训练目标是最小化损失函数。梯度下降的思想是:沿着损失函数梯度(下降最快的方向)的相反方向更新参数。 \[\theta = \theta - \alpha \nabla L(\theta)\] 其中: - \(\theta\):模型的所有可学习参数(权重 \(W\) 和偏置 \(b\)) - \(\alpha\):学习率(Learning Rate),控制每次更新的步长 - \(\nabla L(\theta)\):损失函数对参数的梯度 \textbf{直观理解} 想象你站在山上某处(当前参数值),目标是到达谷底(最小损失)。梯度下降就是: - 观察脚下地面的坡度(计算梯度) - 沿着最陡的下坡方向走一步(参数更新) - 重复以上步骤直到到达谷底(收敛) \begin{lstlisting} 损失 L │ ╲ │ ╲ ╱╲ │ ╲╱ ╲ ← 梯度下降的路径 │ ╲ ╲ ╱ │ ╲ ╲╱ │ ╲ └───────────────→ 参数 θ \end{lstlisting} \textbf{反向传播:高效计算梯度} 反向传播利用\textbf{链式法则(Chain Rule)},从输出层向输入层反向逐层计算梯度: \begin{lstlisting} 前向传播(计算输出): x → h₁ → h₂ → ... → y → L(损失) 反向传播(计算梯度): ∂L/∂y → ∂L/∂h₂ → ∂L/∂h₁ → ∂L/∂x(每步用链式法则) \end{lstlisting} 链式法则的具体形式: \[\frac{\partial L}{\partial W_1} = \frac{\partial L}{\partial y} \cdot \frac{\partial y}{\partial h_2} \cdot \frac{\partial h_2}{\partial h_1} \cdot \frac{\partial h_1}{\partial W_1}\] \textbf{训练循环的四个步骤} \begin{lstlisting} 1. 前向传播:用当前参数计算预测值 y = f(x; θ) 2. 计算损失:比较预测值与真实值 L = loss(y, ŷ) 3. 反向传播:计算损失对所有参数的梯度 ∂L/∂θ 4. 参数更新:沿梯度反方向更新参数 θ = θ - α·∂L/∂θ 重复以上步骤,直到损失不再显著下降(收敛) \end{lstlisting} \textbf{Python代码示例:完整的训练循环} \begin{lstlisting}[language=Python] import numpy as np # ===== 1. 准备数据 ===== # 模拟数据:用y = 2x₁ + 3x₂ + 1生成 np.random.seed(42) X = np.random.randn(100, 2) # 100个样本,2个特征 y_true = 2 * X[:, 0:1] + 3 * X[:, 1:2] + 1 # 真实值 y_true += np.random.normal(0, 0.1, y_true.shape) # 加入噪声 # ===== 2. 初始化参数 ===== W = np.random.randn(2, 1) * 0.01 # 权重 (2, 1) b = np.zeros((1, 1)) # 偏置 (1, 1) learning_rate = 0.01 # 学习率 # ===== 3. 训练循环 ===== for epoch in range(500): # 前向传播 y_pred = np.dot(X, W) + b # 线性变换: z = Wx + b # 计算损失(均方误差) loss = np.mean((y_pred - y_true) ** 2) # 反向传播(计算梯度) dL_dy = 2 * (y_pred - y_true) / len(X) # 损失对输出的梯度 dL_dW = np.dot(X.T, dL_dy) # 损失对W的梯度 dL_db = np.sum(dL_dy, axis=0, keepdims=True) # 损失对b的梯度 # 参数更新(梯度下降) W = W - learning_rate * dL_dW b = b - learning_rate * dL_db # 每100轮打印一次 if (epoch + 1) % 100 == 0: print(f"第 {epoch+1:3d} 轮 | 损失: {loss:.6f} " f"| W: [{W[0,0]:.4f}, {W[1,0]:.4f}] | b: {b[0,0]:.4f}") print(f"\n学到的参数: W = {W.flatten()}, b = {b.flatten()}") print(f"真实参数: W = [2.0, 3.0], b = [1.0]") \end{lstlisting} 输出示例: \begin{lstlisting} 第 100 轮 | 损失: 0.352148 | W: [1.5234, 2.3456] | b: 0.8765 第 200 轮 | 损失: 0.053421 | W: [1.8765, 2.8234] | b: 0.9654 第 300 轮 | 损失: 0.008756 | W: [1.9654, 2.9567] | b: 0.9932 第 400 轮 | 损失: 0.001543 | W: [1.9923, 2.9891] | b: 0.9987 第 500 轮 | 损失: 0.000287 | W: [1.9985, 2.9978] | b: 0.9997 学到的参数: W = [1.9985, 2.9978], b = [0.9997] 真实参数: W = [2.0, 3.0], b = [1.0] \end{lstlisting} 可以看到,经过500轮训练,模型学到的参数已经非常接近真实值。 \subsection{MLP的局限性} 虽然MLP是理解神经网络的基础,但它也存在明显的局限性: \begin{enumerate} \def\labelenumi{\arabic{enumi}.} \tightlist \item \textbf{参数量爆炸}:处理高维输入(如高清图像)时,全连接导致参数量过大 \item \textbf{忽略数据结构}:将图像展平成一维向量会丢失空间结构信息 \item \textbf{缺乏平移不变性}:物体在图像中移动后,需要重新学习 \item \textbf{难以处理序列数据}:没有处理时序依赖的机制 \end{enumerate} 正是这些局限性,催生了后续的CNN(处理图像)、RNN(处理序列)、Transformer(处理通用序列)等更专业的架构。但它们的底层原理都与MLP一脉相承。 \section{环境-智能体-任务:AI实践的三元框架} \subsection{学习目标} \begin{itemize} \tightlist \item 理解“环境-智能体-任务”三元框架 \item 认识环境配置是AI实践中的关键瓶颈 \item 掌握降低环境门槛的实用策略 \item 了解推荐的学习资源与平台 \end{itemize} \subsection{三元框架的提出} 学习AI技术可以抽象为一个三元交互模型:\textbf{环境(Environment)--- 智能体(Agent)--- 任务(Task)}。 \begin{lstlisting} ┌──────────────────────────────────────────────────┐ │ │ │ ┌──────────┐ 执行任务 ┌──────────┐ │ │ │ 智能体 │ ──────────────→ │ 任务 │ │ │ │ (Agent) │ ←────────────── │ (Task) │ │ │ │ │ 返回结果 │ │ │ │ └────┬─────┘ └──────────┘ │ │ │ 感知 │ │ │ ▼ │ │ │ ┌──────────┐ │ │ │ │ 环境 │ ◄───────────────────┘ │ │ │(Environ.)│ 环境反馈 │ │ └──────────┘ │ │ │ └──────────────────────────────────────────────────┘ \end{lstlisting} 三个要素的含义: {\def\LTcaptype{none} % do not increment counter \begin{longtable}[]{@{} >{\raggedright\arraybackslash}p{(\linewidth - 4\tabcolsep) * \real{0.1935}} >{\raggedright\arraybackslash}p{(\linewidth - 4\tabcolsep) * \real{0.1935}} >{\raggedright\arraybackslash}p{(\linewidth - 4\tabcolsep) * \real{0.6129}}@{}} \toprule\noalign{} \begin{minipage}[b]{\linewidth}\raggedright 要素 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 含义 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright AI学习中的具体体现 \end{minipage} \\ \midrule\noalign{} \endhead \bottomrule\noalign{} \endlastfoot \textbf{环境} & 智能体所处的操作空间 & Python环境、GPU资源、数据集、网络连接 \\ \textbf{智能体} & 执行任务的学习者 & 设计专业学生、设计师、研究人员 \\ \textbf{任务} & 需要完成的目标 & 运行一个CNN分类器、训练一个生成模型、部署一个Agent \\ \end{longtable} } 这个框架不仅适用于强化学习中的智能体(见第6章),也适用于\textbf{人类学习AI的过程}:学习者(智能体)需要在一个合适的环境(计算环境)中完成学习任务。 \subsection{环境配置:被忽视的瓶颈} 对于计算机专业的学生,搭建Python环境、安装PyTorch、下载预训练模型可能只是日常操作。但对于\textbf{设计专业学生}而言,环境配置往往成为学习AI的最大障碍: \begin{lstlisting} 设计学生尝试运行一个图像分类示例: 1. 安装Python → 版本冲突(3.8? 3.9? 3.11?) 2. 安装pip包 → 权限报错 / 网络超时 3. pip install torch → 下载2GB,断线重连3次 4. 下载预训练权重 → 需要HuggingFace账号 / 网络限制 5. CUDA版本不匹配 → "torch.cuda.is_available() = False" 6. import cv2报错 → 缺少系统依赖 7. 终于跑通 → 已经精疲力竭,失去了学习兴趣 \end{lstlisting} \textbf{典型痛点清单}: {\def\LTcaptype{none} % do not increment counter \begin{longtable}[]{@{}lll@{}} \toprule\noalign{} 痛点 & 具体表现 & 严重程度 \\ \midrule\noalign{} \endhead \bottomrule\noalign{} \endlastfoot Python版本管理 & 多版本共存导致路径混乱 & ★★★★ \\ 包依赖冲突 & numpy版本不兼容PyTorch & ★★★★ \\ GPU/CUDA配置 & 驱动版本与CUDA版本不匹配 & ★★★★★ \\ 数据下载 & 大型数据集下载慢、需要代理 & ★★★★ \\ 网络环境 & HuggingFace/Google Colab访问受限 & ★★★★ \\ 系统差异 & Windows/Mac/Linux命令不同 & ★★★ \\ 内存不足 & 本地机器无法运行大模型 & ★★★★ \\ \end{longtable} } \begin{quote} \textbf{核心观点}:环境问题不是“技术能力不足”的问题,而是\textbf{基础设施鸿沟}。正如设计师不需要理解CAD软件的底层渲染引擎才能画图,学习AI也不应该被环境配置阻挡在门外。 \end{quote} \subsection{降低门槛的实践策略} 针对以上痛点,推荐以下策略: \textbf{策略一:使用云端开发环境} {\def\LTcaptype{none} % do not increment counter \begin{longtable}[]{@{} >{\raggedright\arraybackslash}p{(\linewidth - 6\tabcolsep) * \real{0.2222}} >{\raggedright\arraybackslash}p{(\linewidth - 6\tabcolsep) * \real{0.2222}} >{\raggedright\arraybackslash}p{(\linewidth - 6\tabcolsep) * \real{0.3333}} >{\raggedright\arraybackslash}p{(\linewidth - 6\tabcolsep) * \real{0.2222}}@{}} \toprule\noalign{} \begin{minipage}[b]{\linewidth}\raggedright 平台 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 特点 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 适用场景 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 费用 \end{minipage} \\ \midrule\noalign{} \endhead \bottomrule\noalign{} \endlastfoot Google Colab & 免费GPU、即开即用 & 快速实验、课程练习 & 免费/Pro版\$10/月 \\ Kaggle Notebooks & 免费GPU、数据集内置 & 竞赛学习、数据分析 & 免费 \\ 阿里云天池 & 国内访问快、中文社区 & 国内课程、中文教程 & 免费额度 \\ AutoDL / 矩池云 & 国内GPU租用 & 训练大模型、长时间训练 & 按量计费 \\ \end{longtable} } \textbf{策略二:使用Vibe Coding工具链} 本书附录2详细介绍了Vibe Coding(感觉驱动编程)的理念和工具链。核心思想是:\textbf{让AI辅助编程,降低代码编写的门槛}。 \begin{itemize} \tightlist \item \textbf{Claude Code}:用自然语言描述需求,AI自动生成代码 \item \textbf{Cursor / GitHub Copilot}:IDE内AI辅助编程 \item \textbf{Jupyter Notebook}:交互式编程,所见即所得 \end{itemize} \textbf{策略三:使用容器化环境} \begin{lstlisting}[language=bash] # 一行命令启动预配置的AI开发环境(需安装Docker) docker run -it -p 8888:8888 pytorch/pytorch:latest # 或使用 conda 快速创建隔离环境 conda create -n ai-design python=3.10 conda activate ai-design conda install pytorch torchvision -c pytorch \end{lstlisting} 容器化确保环境一致性——一次配置,到处运行。 \textbf{策略四:渐进式学习路径} \begin{lstlisting} 零门槛入门 进阶实践 深度开发 ───────────────────────────────────────────────────── Google Colab → 本地Python环境 → GPU服务器 自然语言编程 → Vibe Coding → 原生代码编写 在线Notebook → Jupyter本地 → IDE (VSCode) 调用API → 加载预训练模型 → 微调训练 小数据集实验 → 设计数据集构建 → 大规模训练 \end{lstlisting} \begin{quote} \textbf{建议}:初学阶段不必强求本地环境配置完整。先在云端环境跑通案例、建立直觉,再逐步搭建本地环境。 \end{quote} \subsection{推荐学习资源} 以下资源可以作为本章和后续章节的补充学习材料: \textbf{机器学习与深度学习系统课程} {\def\LTcaptype{none} % do not increment counter \begin{longtable}[]{@{} >{\raggedright\arraybackslash}p{(\linewidth - 4\tabcolsep) * \real{0.3333}} >{\raggedright\arraybackslash}p{(\linewidth - 4\tabcolsep) * \real{0.3333}} >{\raggedright\arraybackslash}p{(\linewidth - 4\tabcolsep) * \real{0.3333}}@{}} \toprule\noalign{} \begin{minipage}[b]{\linewidth}\raggedright 资源 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 特点 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 链接 \end{minipage} \\ \midrule\noalign{} \endhead \bottomrule\noalign{} \endlastfoot Datawhale Bishop DL & 基于Bishop《深度学习》的中文笔记,覆盖概率论、回归、分类、DNN、CNN、Transformer & \href{https://datawhalechina.github.io/dive-into-bishop-dl/}{dive-into-bishop-dl} \\ Ai-learn & 完整的AI学习路线图,从数学基础到深度学习实战 & \href{https://github.com/tangyudi/Ai-learn}{Ai-learn} \\ 3Blue1Brown 神经网络 & 顶级可视化讲解,建立直觉理解 & \href{https://www.youtube.com/playlist?list=PLZHQObOWTQDNU6R1_67000Dx_ZCJB-3pi}{YouTube} \\ 李宏毅机器学习 & 中文讲解,理论与应用并重 & \href{https://www.youtube.com/c/HungyiLeeNTU}{YouTube} \\ fast.ai & 顶向下教学,先实践后理论 & \href{https://course.fast.ai/}{course.fast.ai} \\ d2l.ai(动手学深度学习) & 代码驱动,PyTorch/MXNet/TensorFlow多框架 & \href{https://d2l.ai/}{d2l.ai} \\ \end{longtable} } \textbf{设计领域AI资源} {\def\LTcaptype{none} % do not increment counter \begin{longtable}[]{@{}ll@{}} \toprule\noalign{} 资源 & 说明 \\ \midrule\noalign{} \endhead \bottomrule\noalign{} \endlastfoot Hugging Face & 模型和数据集的“GitHub”,可在线体验 \\ Civitai & Stable Diffusion模型分享社区 \\ Papers With Code & 论文+代码+排行榜,追踪最新技术 \\ \end{longtable} } \begin{quote} \textbf{学习方法建议}:不要试图一次性学完所有资源。根据当前章节的学习进度,选择1-2个配套资源即可。例如,学习第3章(Transformer)时,可以对照 Datawhale Bishop DL 中对应的章节加深理解。 \end{quote} \section{思考与练习} \begin{enumerate} \def\labelenumi{\arabic{enumi}.} \item \textbf{函数思维练习}:请列举3个设计领域中的例子,说明它们可以用函数 \(y = f(x; \theta)\) 来描述。思考输入 \(x\)、输出 \(y\) 和需要学习的参数 \(\theta\) 分别是什么。 \item \textbf{模态映射练习}:选择一个你熟悉的设计项目(如建筑设计、产品设计或平面设计),分析该项目涉及哪些数据模态(一维/二维/三维/决策/生成/行动),以及每种模态在该项目中的作用。 \item \textbf{演进规律思考}:回顾2.3节中介绍的四个发展阶段。在你关注的设计领域,AI技术目前处于哪个阶段?未来会如何演进?请给出你的分析和理由。 \item \textbf{环境-智能体-任务练习}:规划你的AI学习路径。评估你当前的计算环境(笔记本配置、网络条件),选择最适合你的入门策略(云端/本地/Vibe Coding),并设定一个本周可完成的小任务(如在Colab上运行一个图像分类示例)。 \end{enumerate} \section{关键术语} {\def\LTcaptype{none} % do not increment counter \begin{longtable}[]{@{} >{\raggedright\arraybackslash}p{(\linewidth - 4\tabcolsep) * \real{0.3333}} >{\raggedright\arraybackslash}p{(\linewidth - 4\tabcolsep) * \real{0.3333}} >{\raggedright\arraybackslash}p{(\linewidth - 4\tabcolsep) * \real{0.3333}}@{}} \toprule\noalign{} \begin{minipage}[b]{\linewidth}\raggedright 中文 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 英文 \end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright 说明 \end{minipage} \\ \midrule\noalign{} \endhead \bottomrule\noalign{} \endlastfoot 数据模态 & Data Modality & 信息的存在形式,如文本、图像、三维等 \\ 线性回归 & Linear Regression & \(y = ax + b\) 形式的函数拟合 \\ 多元回归 & Multiple Regression & 多输入变量的线性模型 \(y = \sum a_ix_i + b\) \\ 多层感知机 & Multi-Layer Perceptron (MLP) & 最基础的前馈神经网络结构 \\ 前向传播 & Forward Propagation & 数据从输入层到输出层的计算过程 \\ 激活函数 & Activation Function & 引入非线性的函数,如ReLU、Sigmoid \\ 损失函数 & Loss Function & 衡量预测值与真实值差距的函数 \\ 反向传播 & Backpropagation & 利用链式法则计算梯度的算法 \\ 梯度下降 & Gradient Descent & 沿梯度反方向更新参数的优化方法 \\ 学习率 & Learning Rate & 梯度下降中控制参数更新步长的超参数 \\ 权重 & Weight & 神经元之间连接的可学习参数 \\ 偏置 & Bias & 调整输出基准的可学习参数 \\ 特征工程 & Feature Engineering & 人工设计和提取数据特征的过程 \\ 迁移学习 & Transfer Learning & 将一个任务学到的知识迁移到新任务 \\ 基础模型 & Foundation Model & 在大规模数据上预训练的大型通用模型 \\ 涌现能力 & Emergent Abilities & 模型规模大到一定程度后出现的新能力 \\ 缩放定律 & Scaling Law & 模型性能与规模(数据量、参数量、计算量)之间的关系规律 \\ 环境-智能体-任务 & Environment-Agent-Task & AI实践的三元框架:环境提供操作空间,智能体执行任务,任务定义目标 \\ Vibe Coding & Vibe Coding & 感觉驱动编程,用自然语言描述需求让AI生成代码的编程范式 \\ 全连接层 & Fully Connected Layer & 每个神经元与上一层所有神经元相连的网络层 \\ 预训练 & Pre-training & 在大规模数据上的初始训练阶段 \\ 微调 & Fine-tuning & 在特定任务数据上对预训练模型进行适配训练 \\ \end{longtable} } \section{延伸阅读} \begin{itemize} \tightlist \item \href{http://neuralnetworksanddeeplearning.com/}{Neural Networks and Deep Learning} --- Michael Nielsen 的在线教材,直观讲解神经网络原理 \item \href{https://arxiv.org/abs/2001.08361}{Scaling Laws for Neural Language Models} --- Kaplan et al., 2020,Scaling Law 的经典论文 \item \href{https://arxiv.org/abs/2108.07258}{On the Opportunities and Risks of Foundation Models} --- Stanford HAI 报告,全面介绍基础模型 \item \href{https://www.youtube.com/watch?v=aircAruvnKk}{3Blue1Brown: But what is a Neural Network?} --- 优秀的神经网络可视化讲解视频 \end{itemize}