\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}
