差别
这里会显示出您选择的修订版和当前版本之间的差别。
| 后一修订版 | 前一修订版 | ||
| 深度学习:自然语言处理 [2026/03/02 20:30] – 创建 张叶安 | 深度学习:自然语言处理 [2026/03/03 13:05] (当前版本) – [12.2.1 分布式语义假说] 张叶安 | ||
|---|---|---|---|
| 行 46: | 行 46: | ||
| 与传统的独热编码(one-hot encoding)相比,分布式表示具有以下优势: | 与传统的独热编码(one-hot encoding)相比,分布式表示具有以下优势: | ||
| - | - **维度低**:独热编码维度等于词汇表大小,而词嵌入通常只有几百维 | + | |
| - | - **捕捉语义关系**:语义相似的词语在向量空间中距离较近 | + | - **捕捉语义关系**:语义相似的词语在向量空间中距离较近 |
| - | - **支持向量运算**:可以进行有意义的向量算术运算,如" | + | - **支持向量运算**:可以进行有意义的向量算术运算,如" |
| ==== 12.2.2 Word2Vec模型 ==== | ==== 12.2.2 Word2Vec模型 ==== | ||
| 行 83: | 行 83: | ||
| 这种表示方式的优势在于: | 这种表示方式的优势在于: | ||
| - | - **处理OOV词**:即使未见过某个词,只要其包含的子词出现过,就能获得向量 | + | |
| - | - **捕捉形态信息**:具有相同词根或词缀的词语会有相似的表示 | + | - **捕捉形态信息**:具有相同词根或词缀的词语会有相似的表示 |
| - | - **提高稀有词表示质量**:稀有词通过其子词获得更丰富的信息 | + | - **提高稀有词表示质量**:稀有词通过其子词获得更丰富的信息 |
| ===== 12.3 预训练语言模型 ===== | ===== 12.3 预训练语言模型 ===== | ||
| 行 104: | 行 104: | ||
| **架构特点**: | **架构特点**: | ||
| - | - 基于Transformer的编码器结构 | + | |
| - | - 完全双向:同时考虑左右两侧的上下文 | + | - 完全双向:同时考虑左右两侧的上下文 |
| - | - 多层深度表示:基础版12层,大型版24层 | + | - 多层深度表示:基础版12层,大型版24层 |
| **预训练任务**: | **预训练任务**: | ||
| 行 116: | 行 116: | ||
| **输入表示**: | **输入表示**: | ||
| BERT的输入由三部分组成: | BERT的输入由三部分组成: | ||
| - | - **Token Embeddings**:词语的词嵌入 | + | |
| - | - **Segment Embeddings**:区分句子A和句子B | + | - **Segment Embeddings**:区分句子A和句子B |
| - | - **Position Embeddings**:表示词语的位置信息 | + | - **Position Embeddings**:表示词语的位置信息 |
| ==== 12.3.3 GPT系列模型 ==== | ==== 12.3.3 GPT系列模型 ==== | ||
| 行 125: | 行 125: | ||
| **架构特点**: | **架构特点**: | ||
| - | - 基于Transformer的解码器结构 | + | |
| - | - 单向(自回归):只能看到左侧的上下文 | + | - 单向(自回归):只能看到左侧的上下文 |
| - | - 适合生成任务 | + | - 适合生成任务 |
| **GPT训练范式**: | **GPT训练范式**: | ||
| + | |||
| 1. **无监督预训练**:在大规模无标注文本上训练语言模型,预测下一个词 | 1. **无监督预训练**:在大规模无标注文本上训练语言模型,预测下一个词 | ||
| + | |||
| 2. **有监督微调**:在具体任务上进行微调 | 2. **有监督微调**:在具体任务上进行微调 | ||
| **GPT演进**: | **GPT演进**: | ||
| - | - **GPT-1**(2018):1.17亿参数,证明了预训练+微调范式的有效性 | + | |
| - | - **GPT-2**(2019):15亿参数,展现了强大的零样本能力 | + | - **GPT-2**(2019):15亿参数,展现了强大的零样本能力 |
| - | - **GPT-3**(2020):1750亿参数,展现了惊人的少样本学习能力 | + | - **GPT-3**(2020):1750亿参数,展现了惊人的少样本学习能力 |
| - | - **GPT-4**(2023):多模态能力,在多种任务上达到人类水平 | + | - **GPT-4**(2023):多模态能力,在多种任务上达到人类水平 |
| ==== 12.3.4 其他重要预训练模型 ==== | ==== 12.3.4 其他重要预训练模型 ==== | ||
| **RoBERTa**:对BERT的训练过程进行了优化,包括: | **RoBERTa**:对BERT的训练过程进行了优化,包括: | ||
| - | - 更大的batch size和更长的训练时间 | + | |
| - | - 移除NSP任务 | + | - 移除NSP任务 |
| - | - 动态掩码模式 | + | - 动态掩码模式 |
| - | - 更大规模的训练数据 | + | - 更大规模的训练数据 |
| RoBERTa在多个基准测试上超过了原始BERT的性能。 | RoBERTa在多个基准测试上超过了原始BERT的性能。 | ||
| 行 190: | 行 192: | ||
| 1. 计算解码器当前状态与所有编码器状态的相似度(注意力分数) | 1. 计算解码器当前状态与所有编码器状态的相似度(注意力分数) | ||
| + | |||
| 2. 将注意力分数归一化为注意力权重 | 2. 将注意力分数归一化为注意力权重 | ||
| + | |||
| 3. 用注意力权重对编码器状态进行加权求和,得到上下文向量 | 3. 用注意力权重对编码器状态进行加权求和,得到上下文向量 | ||
| + | |||
| 4. 将上下文向量与解码器状态结合,预测下一个词 | 4. 将上下文向量与解码器状态结合,预测下一个词 | ||
| 行 201: | 行 206: | ||
| **架构特点**: | **架构特点**: | ||
| - | - 编码器-解码器结构,两者都由多层Transformer块组成 | + | |
| - | - 自注意力机制捕捉序列内部的长距离依赖 | + | - 自注意力机制捕捉序列内部的长距离依赖 |
| - | - 多头注意力提供多角度的语义表示 | + | - 多头注意力提供多角度的语义表示 |
| - | - 位置编码注入序列顺序信息 | + | - 位置编码注入序列顺序信息 |
| **训练技巧**: | **训练技巧**: | ||
| - | - **标签平滑(Label Smoothing)**:将硬标签替换为软标签,防止模型过度自信 | + | |
| - | - **dropout**:防止过拟合 | + | - **dropout**:防止过拟合 |
| - | - **学习率预热**:训练初期逐渐增加学习率 | + | - **学习率预热**:训练初期逐渐增加学习率 |
| - | - **BLEU评估**:使用BLEU分数自动评估翻译质量 | + | - **BLEU评估**:使用BLEU分数自动评估翻译质量 |
| ==== 12.4.4 非自回归翻译 ==== | ==== 12.4.4 非自回归翻译 ==== | ||
| 行 217: | 行 222: | ||
| NAT的挑战在于处理目标词之间的依赖关系。主要方法包括: | NAT的挑战在于处理目标词之间的依赖关系。主要方法包括: | ||
| - | - **迭代解码**:多次迭代精化翻译结果 | + | |
| - | - **知识蒸馏**:从自回归教师模型学习 | + | - **知识蒸馏**:从自回归教师模型学习 |
| - | - **位置预测**:显式建模目标序列的长度 | + | - **位置预测**:显式建模目标序列的长度 |
| ===== 12.5 文本生成与对话系统 ===== | ===== 12.5 文本生成与对话系统 ===== | ||
| 行 230: | 行 235: | ||
| 条件$c$可以通过多种方式融入模型: | 条件$c$可以通过多种方式融入模型: | ||
| - | - **编码器表示**:将条件编码为向量,作为解码器的初始状态 | + | |
| - | - **注意力机制**:在解码时关注条件的相关部分 | + | - **注意力机制**:在解码时关注条件的相关部分 |
| - | - **前缀提示**:将条件作为生成的前缀 | + | - **前缀提示**:将条件作为生成的前缀 |
| ==== 12.5.2 解码策略 ==== | ==== 12.5.2 解码策略 ==== | ||
| 行 243: | 行 248: | ||
| **采样方法**: | **采样方法**: | ||
| - | - **随机采样**:按概率分布随机采样下一个词,增加多样性 | + | |
| - | - **温度采样**:通过温度参数$T$调整概率分布:$P' | + | - **温度采样**:通过温度参数$T$调整概率分布:$P' |
| - | - **Top-k采样**:只在概率最高的k个词中采样 | + | - **Top-k采样**:只在概率最高的k个词中采样 |
| - | - **Top-p(核)采样**:在累积概率达到p的最小词集中采样 | + | - **Top-p(核)采样**:在累积概率达到p的最小词集中采样 |
| ==== 12.5.3 对话系统架构 ==== | ==== 12.5.3 对话系统架构 ==== | ||
| 行 279: | 行 284: | ||
| **传统方法**:将NER视为序列标注问题,使用BIO(Begin-Inside-Outside)标注方案: | **传统方法**:将NER视为序列标注问题,使用BIO(Begin-Inside-Outside)标注方案: | ||
| - | - B-XXX:实体开始 | + | |
| - | - I-XXX:实体内部 | + | - I-XXX:实体内部 |
| - | - O:非实体 | + | - O:非实体 |
| **深度学习方法**: | **深度学习方法**: | ||
| - | - BiLSTM-CRF:双向LSTM提取特征,条件随机场(CRF)建模标签依赖 | + | |
| - | - BERT-based:使用BERT获取上下文嵌入,然后进行分类 | + | - BERT-based:使用BERT获取上下文嵌入,然后进行分类 |
| ==== 12.6.2 关系抽取 ==== | ==== 12.6.2 关系抽取 ==== | ||
| 行 292: | 行 297: | ||
| **主要方法**: | **主要方法**: | ||
| - | - **管道方法**:先进行实体识别,再进行关系分类 | + | |
| - | - **联合抽取**:同时识别实体和关系,避免错误传播 | + | - **联合抽取**:同时识别实体和关系,避免错误传播 |
| - | - **基于阅读理解的框架**:将关系抽取转化为问答问题 | + | - **基于阅读理解的框架**:将关系抽取转化为问答问题 |
| ==== 12.6.3 事件抽取 ==== | ==== 12.6.3 事件抽取 ==== | ||
| 行 301: | 行 306: | ||
| 例如,在" | 例如,在" | ||
| - | - 触发词:" | + | |
| - | - 事件类型:产品发布 | + | - 事件类型:产品发布 |
| - | - 论元:苹果公司(发布方)、iPhone(产品)、2007年(时间) | + | - 论元:苹果公司(发布方)、iPhone(产品)、2007年(时间) |
| ==== 12.6.4 知识图谱构建 ==== | ==== 12.6.4 知识图谱构建 ==== | ||
| 行 310: | 行 315: | ||
| **知识图谱构建流程**: | **知识图谱构建流程**: | ||
| + | |||
| 1. **知识抽取**:从非结构化文本中抽取实体、关系和事件 | 1. **知识抽取**:从非结构化文本中抽取实体、关系和事件 | ||
| + | |||
| 2. **知识融合**:将来自不同来源的知识进行整合,解决实体歧义和共指问题 | 2. **知识融合**:将来自不同来源的知识进行整合,解决实体歧义和共指问题 | ||
| + | |||
| 3. **知识推理**:基于已有知识推断新知识 | 3. **知识推理**:基于已有知识推断新知识 | ||
| + | |||
| 4. **知识存储与查询**:使用图数据库(如Neo4j)存储和查询知识 | 4. **知识存储与查询**:使用图数据库(如Neo4j)存储和查询知识 | ||
| 行 332: | 行 341: | ||
| 更一般地,词嵌入可以捕捉各种语义关系: | 更一般地,词嵌入可以捕捉各种语义关系: | ||
| - | - 首都关系:北京 - 中国 + 日本 ≈ 东京 | + | |
| - | - 时态关系:walked - walk + eat ≈ ate | + | - 时态关系:walked - walk + eat ≈ ate |
| - | - 复数关系:cats - cat + apple ≈ apples | + | - 复数关系:cats - cat + apple ≈ apples |
| 这种向量运算的能力是词嵌入的重要特性,也是评估词嵌入质量的标准之一。 | 这种向量运算的能力是词嵌入的重要特性,也是评估词嵌入质量的标准之一。 | ||
| - | --- | + | |
| **例题2:Transformer注意力计算** | **例题2:Transformer注意力计算** | ||
| 假设有一个Transformer模型,词嵌入维度$d_{model}=512$,注意力头数$h=8$。计算: | 假设有一个Transformer模型,词嵌入维度$d_{model}=512$,注意力头数$h=8$。计算: | ||
| + | |||
| (1) 每个头的维度$d_k$是多少? | (1) 每个头的维度$d_k$是多少? | ||
| + | |||
| (2) 如果输入序列长度为$n=100$,单个注意力头的计算复杂度是多少? | (2) 如果输入序列长度为$n=100$,单个注意力头的计算复杂度是多少? | ||
| 行 355: | 行 366: | ||
| (2) 单个注意力头的计算包括: | (2) 单个注意力头的计算包括: | ||
| - | - 计算注意力分数:$QK^T$,其中$Q, | + | |
| - | - 计算复杂度:$O(n \times d_k \times n) = O(n^2 \cdot d_k)$ | + | - 计算复杂度:$O(n \times d_k \times n) = O(n^2 \cdot d_k)$ |
| - | - Softmax归一化:$O(n^2)$ | + | - Softmax归一化:$O(n^2)$ |
| - | - 加权求和:$\text{softmax}(\frac{QK^T}{\sqrt{d_k}})V$,其中$V \in \mathbb{R}^{n \times d_k}$ | + | - 加权求和:$\text{softmax}(\frac{QK^T}{\sqrt{d_k}})V$,其中$V \in \mathbb{R}^{n \times d_k}$ |
| - | - 计算复杂度:$O(n \times n \times d_k) = O(n^2 \cdot d_k)$ | + | - 计算复杂度:$O(n \times n \times d_k) = O(n^2 \cdot d_k)$ |
| 总复杂度为$O(n^2 \cdot d_k) = O(n^2 \cdot d_{model}/ | 总复杂度为$O(n^2 \cdot d_k) = O(n^2 \cdot d_{model}/ | ||
| 对于$h=8$,$d_k=64$,$n=100$: | 对于$h=8$,$d_k=64$,$n=100$: | ||
| - | - $n^2 \cdot d_k = 10000 \times 64 = 640000$次乘加运算 | + | |
| 相比RNN的$O(n \cdot d^2)$复杂度,Transformer在序列较长时优势更明显(假设$d \approx d_{model}$)。但注意力机制的$O(n^2)$复杂度也是其处理超长序列时的瓶颈。 | 相比RNN的$O(n \cdot d^2)$复杂度,Transformer在序列较长时优势更明显(假设$d \approx d_{model}$)。但注意力机制的$O(n^2)$复杂度也是其处理超长序列时的瓶颈。 | ||
| - | --- | ||
| **例题3:BERT掩码语言模型** | **例题3:BERT掩码语言模型** | ||
| 在BERT的MLM预训练中,输入句子" | 在BERT的MLM预训练中,输入句子" | ||
| + | |||
| (1) 实际的掩码策略是什么? | (1) 实际的掩码策略是什么? | ||
| + | |||
| (2) 模型的训练目标是什么? | (2) 模型的训练目标是什么? | ||
| 行 379: | 行 391: | ||
| (1) BERT的掩码策略并不是简单地将选中token替换为[MASK],而是: | (1) BERT的掩码策略并不是简单地将选中token替换为[MASK],而是: | ||
| - | - 80%的概率替换为[MASK]标记 | + | |
| - | - 10%的概率替换为随机token | + | - 10%的概率替换为随机token |
| - | - 10%的概率保持不变 | + | - 10%的概率保持不变 |
| 假设" | 假设" | ||
| - | - " | + | |
| - | - " | + | - " |
| 这种策略的原因是:在微调阶段没有[MASK]标记,预训练和微调存在不匹配。通过混合策略,模型学会基于上下文预测词,即使该词没有被掩码。 | 这种策略的原因是:在微调阶段没有[MASK]标记,预训练和微调存在不匹配。通过混合策略,模型学会基于上下文预测词,即使该词没有被掩码。 | ||
| (2) 训练目标是预测被掩码的原始token。具体来说: | (2) 训练目标是预测被掩码的原始token。具体来说: | ||
| - | - 模型输出每个位置的词表分布 | + | |
| - | - 只对被掩码的位置计算交叉熵损失 | + | - 只对被掩码的位置计算交叉熵损失 |
| - | - 优化目标是最大化被掩码词的对数似然:$\mathcal{L} = -\sum_{i \in \mathcal{M}} \log P(x_i | \tilde{X})$ | + | - 优化目标是最大化被掩码词的对数似然:$\mathcal{L} = -\sum_{i \in \mathcal{M}} \log P(x_i | \tilde{X})$ |
| 其中$\mathcal{M}$是被掩码位置的集合,$\tilde{X}$是掩码后的输入。 | 其中$\mathcal{M}$是被掩码位置的集合,$\tilde{X}$是掩码后的输入。 | ||
| 行 398: | 行 410: | ||
| 除了MLM,BERT还有一个辅助任务NSP(下一句预测),判断句子B是否是句子A的下一句。不过在后续研究中,NSP的效果被质疑,RoBERTa等模型移除了这个任务。 | 除了MLM,BERT还有一个辅助任务NSP(下一句预测),判断句子B是否是句子A的下一句。不过在后续研究中,NSP的效果被质疑,RoBERTa等模型移除了这个任务。 | ||
| - | --- | ||
| **例题4:机器翻译BLEU评分** | **例题4:机器翻译BLEU评分** | ||
| 假设机器翻译系统生成的翻译为" | 假设机器翻译系统生成的翻译为" | ||
| - | - 参考1:" | + | |
| - | - 参考2:" | + | - 参考2:" |
| 计算该翻译的BLEU-2分数(考虑1-gram和2-gram)。 | 计算该翻译的BLEU-2分数(考虑1-gram和2-gram)。 | ||
| 行 413: | 行 424: | ||
| **1-gram精度**: | **1-gram精度**: | ||
| - | - 候选翻译1-gram:[" | + | |
| - | - 候选翻译中出现次数:the: | + | - 候选翻译中出现次数:the: |
| - | - 在参考翻译中最大匹配次数:the: | + | - 在参考翻译中最大匹配次数:the: |
| - | - 1-gram精度 = $(2+1+1+1+1) / 6 = 6/6 = 1.0$ | + | - 1-gram精度 = $(2+1+1+1+1) / 6 = 6/6 = 1.0$ |
| **2-gram精度**: | **2-gram精度**: | ||
| - | - 候选翻译2-gram:[" | + | |
| - | - 候选翻译中出现次数:各为1 | + | - 候选翻译中出现次数:各为1 |
| - | - 在参考1中的匹配:" | + | - 在参考1中的匹配:" |
| - | - 在参考2中的匹配:" | + | - 在参考2中的匹配:" |
| - | - 2-gram精度 = $3 / 5 = 0.6$ | + | - 2-gram精度 = $3 / 5 = 0.6$ |
| **简洁性惩罚(Brevity Penalty)**: | **简洁性惩罚(Brevity Penalty)**: | ||
| + | |||
| 候选长度$c=6$,最接近的参考长度$r=6$(参考1) | 候选长度$c=6$,最接近的参考长度$r=6$(参考1) | ||
| + | |||
| 由于$c = r$,BP = 1 | 由于$c = r$,BP = 1 | ||
| **BLEU分数**: | **BLEU分数**: | ||
| + | |||
| $$\text{BLEU} = \text{BP} \times \exp(\frac{1}{2}\log p_1 + \frac{1}{2}\log p_2)$$ | $$\text{BLEU} = \text{BP} \times \exp(\frac{1}{2}\log p_1 + \frac{1}{2}\log p_2)$$ | ||
| + | |||
| $$= 1 \times \exp(0.5 \times \log 1.0 + 0.5 \times \log 0.6)$$ | $$= 1 \times \exp(0.5 \times \log 1.0 + 0.5 \times \log 0.6)$$ | ||
| + | |||
| $$= \exp(0 + 0.5 \times (-0.511))$$ | $$= \exp(0 + 0.5 \times (-0.511))$$ | ||
| + | |||
| $$= \exp(-0.255) \approx 0.775$$ | $$= \exp(-0.255) \approx 0.775$$ | ||
| 行 473: | 行 490: | ||
| ==== 12.8.2 填空题 ==== | ==== 12.8.2 填空题 ==== | ||
| - | 6. 词嵌入Word2Vec包含两种架构:______和Skip-gram。 | + | 6. 词嵌入Word2Vec包含两种架构:$\_\_\_\_$和Skip-gram。 |
| - | 7. BERT的全称是______。 | + | 7. BERT的全称是$\_\_\_\_$。 |
| - | 8. Transformer架构由Google在论文______中提出。 | + | 8. Transformer架构由Google在论文$\_\_\_\_$中提出。 |
| - | 9. 在Seq2Seq模型中,编码器将输入序列编码为______表示。 | + | 9. 在Seq2Seq模型中,编码器将输入序列编码为$\_\_\_\_$表示。 |
| - | 10. BLEU评分中的BP表示______。 | + | 10. BLEU评分中的BP表示$\_\_\_\_$。 |
| ==== 12.8.3 计算题 ==== | ==== 12.8.3 计算题 ==== | ||
| 11. 假设一个Transformer模型,输入序列长度$n=50$,模型维度$d_{model}=768$,前馈网络维度$d_{ff}=3072$。计算: | 11. 假设一个Transformer模型,输入序列长度$n=50$,模型维度$d_{model}=768$,前馈网络维度$d_{ff}=3072$。计算: | ||
| + | | ||
| (1) 自注意力层的参数量(忽略偏置) | (1) 自注意力层的参数量(忽略偏置) | ||
| + | | ||
| (2) 前馈网络的参数量(忽略偏置) | (2) 前馈网络的参数量(忽略偏置) | ||
| + | | ||
| (3) 该层的总参数量 | (3) 该层的总参数量 | ||
| 行 497: | 行 517: | ||
| 1. **答案:B** | 1. **答案:B** | ||
| - | 解析:Skip-gram通过中心词预测周围的上下文词,而CBOW是通过上下文词预测中心词。 | + | |
| + | 解析:Skip-gram通过中心词预测周围的上下文词,而CBOW是通过上下文词预测中心词。 | ||
| 2. **答案:C** | 2. **答案:C** | ||
| - | 解析:BERT的预训练任务包括掩码语言模型(MLM)和下一句预测(NSP),词性标注是下游任务,不是预训练任务。 | + | |
| + | 解析:BERT的预训练任务包括掩码语言模型(MLM)和下一句预测(NSP),词性标注是下游任务,不是预训练任务。 | ||
| 3. **答案:A** | 3. **答案:A** | ||
| - | 解析:Transformer使用缩放点积注意力:$\text{Attention}(Q, | + | |
| + | 解析:Transformer使用缩放点积注意力:$\text{Attention}(Q, | ||
| 4. **答案:B** | 4. **答案:B** | ||
| - | 解析:BIO标注方案包括B(Begin,实体开始)、I(Inside,实体内部)、O(Outside,非实体)。 | + | |
| + | 解析:BIO标注方案包括B(Begin,实体开始)、I(Inside,实体内部)、O(Outside,非实体)。 | ||
| 5. **答案:B** | 5. **答案:B** | ||
| - | 解析:束宽为1时,束搜索退化为贪婪解码,每步只保留得分最高的一个候选。 | + | |
| + | 解析:束宽为1时,束搜索退化为贪婪解码,每步只保留得分最高的一个候选。 | ||
| ==== 12.9.2 填空题答案 ==== | ==== 12.9.2 填空题答案 ==== | ||
| 6. **答案:CBOW(Continuous Bag of Words)** | 6. **答案:CBOW(Continuous Bag of Words)** | ||
| - | 解析:CBOW通过上下文词预测中心词,Skip-gram通过中心词预测上下文词。 | + | |
| + | 解析:CBOW通过上下文词预测中心词,Skip-gram通过中心词预测上下文词。 | ||
| 7. **答案:Bidirectional Encoder Representations from Transformers** | 7. **答案:Bidirectional Encoder Representations from Transformers** | ||
| - | 解析:BERT是基于Transformer的双向编码器表示。 | + | |
| + | 解析:BERT是基于Transformer的双向编码器表示。 | ||
| 8. **答案:《Attention Is All You Need》** | 8. **答案:《Attention Is All You Need》** | ||
| - | 解析:Transformer架构于2017年在这篇论文中提出。 | + | |
| + | 解析:Transformer架构于2017年在这篇论文中提出。 | ||
| 9. **答案:上下文(或:语义/ | 9. **答案:上下文(或:语义/ | ||
| - | 解析:编码器将变长输入序列编码为固定长度的上下文表示。 | + | |
| + | 解析:编码器将变长输入序列编码为固定长度的上下文表示。 | ||
| 10. **答案:简洁性惩罚(Brevity Penalty)** | 10. **答案:简洁性惩罚(Brevity Penalty)** | ||
| - | | + | |
| + | 解析:BP用于惩罚过短的翻译,防止模型生成过短的输出来获得高分。 | ||
| ==== 12.9.3 计算题答案 ==== | ==== 12.9.3 计算题答案 ==== | ||
| 11. **解答**: | 11. **解答**: | ||
| - | | + | |
| - | - 查询、键、值投影:$3 \times d_{model} \times d_{model} = 3 \times 768 \times 768 = 1, | + | (1) 自注意力层参数: |
| - | - 输出投影:$d_{model} \times d_{model} = 768 \times 768 = 589,824$ | + | |
| - | - 总计:$1, | + | |
| + | - 输出投影:$d_{model} \times d_{model} = 768 \times 768 = 589,824$ | ||
| + | - 总计:$1, | ||
| | | ||
| - | | + | (2) 前馈网络参数: |
| - | - 第一层:$d_{model} \times d_{ff} = 768 \times 3072 = 2, | + | - 第一层:$d_{model} \times d_{ff} = 768 \times 3072 = 2, |
| - | - 第二层:$d_{ff} \times d_{model} = 3072 \times 768 = 2, | + | - 第二层:$d_{ff} \times d_{model} = 3072 \times 768 = 2, |
| - | - 总计:$2, | + | - 总计:$2, |
| | | ||
| - | | + | (3) 总参数量:$2, |
| 12. **解答**: | 12. **解答**: | ||
| - | | + | |
| - | $= [2-1+0, 1-0+1, 0-0+0]$ | + | $v_{国王} - v_{男人} + v_{女人} = [2, 1, 0] - [1, 0, 0] + [0, 1, 0]$ |
| - | $= [1, 2, 0]$ | + | |
| + | $= [2-1+0, 1-0+1, 0-0+0]$ | ||
| + | |||
| + | $= [1, 2, 0]$ | ||
| | | ||
| - | | + | 与$v_{女王} = [1, 1, 0]$对比: |
| - | - 第一维相同(1) | + | - 第一维相同(1) |
| - | - 第二维不同(2 vs 1) | + | - 第二维不同(2 vs 1) |
| - | - 第三维相同(0) | + | - 第三维相同(0) |
| | | ||
| - | | + | 欧氏距离:$\sqrt{(1-1)^2 + (2-1)^2 + (0-0)^2} = 1$ |
| | | ||
| - | | + | 结果表明:通过词向量运算得到了一个与" |