## 把同一句话变成两种有答案的题 ## 解释、算例与证据 # P05 · 文字演示了一种答案来源 借同一句话构造next-token与masked-token题,核心是答案来源和可见条件,不是语言架构课。 图内标签与数值:P05 学习表示机制图,状态 1;原文:红色杯子放在桌上;预测后续:只用前文;红色;文字预测器;目标:杯子;预测缺失:使用允许看到的两侧内容;红色 [遮挡] 放在桌上;目标:杯子;此处把“杯子”当一个教学用文字单位;不是指定某个 tokenizer 的切分。 同一句红色杯子放在桌上,前文预测杯子与中间遮挡预测杯子两种可见性规则。 - 原文:红色杯子放在桌上 - 预测后续:只用前文 - 红色 - 文字预测器 - 目标:杯子 - 预测缺失:使用允许看到的两侧内容 - 红色 [遮挡] 放在桌上 - 目标:杯子 - 此处把“杯子”当一个教学用文字单位;不是指定某个 tokenizer 的切分。同一句红色杯子放在桌上,前文预测杯子与中间遮挡预测杯子两种可见性规则。 [查看对应图解状态](/#/l3-r2-p05/0)[查看完整图解](/course/figures/l3-r2-p05-0.html) ## 课堂讲述 看这句话。把后面的内容暂时挡住,就能用前面的文字预测接下来出现的文字单位;把中间一部分遮掉,又能用其余内容预测缺失部分。训练用的答案就在原文中,不需要标注者为每个位置再写一次。 两种构造并不相同:预测后续时,只能利用允许看到的前文;预测被遮住的部分时,可以利用另一种可见上下文。这里先不研究内部怎样组织长序列,我们只看输入、目标和反馈从哪里来。 这对视觉研究的启发是:不额外给类别标签,仍然可以有明确的预测任务和误差。文本本来也是人写出来的,“没有额外逐条标注”不是“没有人的知识”。那么,对图像,我们能构造什么样的预测或对应关系? ### 同一句原文怎样生成两种预测题 [独立阅读](/course/blocks/text-target-construction.html) 用教学单位切分 `The / red / cup / is / on / the / table / .`。从左到右预测的一题是:输入 `The red cup`,正确目标是 `is`。遮词预测的一题是:输入 `The red [MASK] is on the table .`,目标是被取走的 `cup`。答案都从原文取得,但模型可见条件不同:前者不能偷看未来,后者可以使用遮词两侧。 训练时原文目标已知。若模型给正确词概率0.25,这一位置的负对数损失是 $-\ln0.25\approx1.386$;提高到0.5后是0.693。这个反馈足以更新参数,不需要先把整句话人工标成“描述桌面”。 本页只借文字说明目标来源。实际 tokenizer 可能把单词分成多个单位,预测器也有不同架构;这些细节不影响这里的闭环:**隐藏一部分信息→用可见条件预测→拿原文作答案**。架构、完整注意力和循环状态留后续课程。 **出处:**[BERT 原论文](https://aclanthology.org/N19-1423/) · [GPT-2 技术报告](https://cdn.openai.com/better-language-models/language_models_are_unsupervised_multitask_learners.pdf) ## 沿这个问题继续 手算正确词概率0.25与0.5的损失,回到P6区分目标来源、输出任务和损失。 **出处:**[S2 · 教材与出处](/course/round2-sources.html#S2) · [S8 · 教材与出处](/course/round2-sources.html#S8) #### 图示条件与公式约定 “红色 / 杯子 / 放在 / 桌上”只作词语级教学切分,未声称对应任何 tokenizer。内部序列机制不在本页展开。 #### 这条线索的展开与后续阅读 - [一段原文,可以产生许多预测题](/supplement.html?return=l3-r2-p05/0#/l3-language-next/0) 本页说明 - [遮住中间一个词,可见的条件就变了](/supplement.html?return=l3-r2-p05/0#/l3-language-mask/0) 本页说明 - [回到从左到右预测:输出成为下一步条件](/supplement.html?return=l3-r2-p05/0#/l3-language-use/0) 第五讲预备阅读 - [序列为什么需要状态|问题从哪里出现](/supplement.html?return=l3-r2-p05/0#/l3-sequence-state-problem/0) 第五讲预备阅读 - [序列为什么需要状态|核心改动怎样工作](/supplement.html?return=l3-r2-p05/0#/l3-sequence-state-mechanism/0) 第五讲预备阅读 - [序列为什么需要状态|一起算一个完整例子](/supplement.html?return=l3-r2-p05/0#/l3-sequence-state-example/0) 第五讲预备阅读 - [序列为什么需要状态|怎样检查这项解释](/supplement.html?return=l3-r2-p05/0#/l3-sequence-state-evidence/0) 第五讲预备阅读 - [序列为什么需要状态|什么结论还不能推出](/supplement.html?return=l3-r2-p05/0#/l3-sequence-state-boundary/0) 第五讲预备阅读 - [门控改变了什么|问题从哪里出现](/supplement.html?return=l3-r2-p05/0#/l3-lstm-gates-problem/0) 第五讲预备阅读 - [门控改变了什么|核心改动怎样工作](/supplement.html?return=l3-r2-p05/0#/l3-lstm-gates-mechanism/0) 第五讲预备阅读 - [门控改变了什么|一起算一个完整例子](/supplement.html?return=l3-r2-p05/0#/l3-lstm-gates-example/0) 第五讲预备阅读 - [门控改变了什么|怎样检查这项解释](/supplement.html?return=l3-r2-p05/0#/l3-lstm-gates-evidence/0) 第五讲预备阅读 - [门控改变了什么|什么结论还不能推出](/supplement.html?return=l3-r2-p05/0#/l3-lstm-gates-boundary/0) 第五讲预备阅读 - [架构、目标与解码必须分开|问题从哪里出现](/supplement.html?return=l3-r2-p05/0#/l3-architecture-objective-decoding-problem/0) 第五讲预备阅读 - [架构、目标与解码必须分开|核心改动怎样工作](/supplement.html?return=l3-r2-p05/0#/l3-architecture-objective-decoding-mechanism/0) 第五讲预备阅读