嵌入把离散对象映射到连续空间
说明嵌入向量怎样由任务目标学习,以及距离、维度和上下文如何限制相似性的解释。
嵌入把离散对象映射到连续空间
词、商品、地点和用户标识本身是离散符号,编号之间的算术距离通常没有意义。嵌入用一个可学习向量替代每个离散索引,使模型能通过连续计算表达对象在特定任务中的关系。向量靠近只说明训练目标下的表示相似,不自动等于现实语义、因果关系或可互换性。
嵌入矩阵是可学习的查找表
最简单的嵌入层包含一个矩阵,每一行对应词表或对象集合中的一个索引。输入索引取出相应行,得到固定维度向量。这个操作可视为独热向量与矩阵相乘,但实际实现无需构造稀疏独热表示。
训练通过下游损失更新被访问行。经常出现的对象获得更多梯度,稀有对象可能表示不足;未登录对象则需要未知标记、哈希、属性编码或增量词表机制。给新对象随机分配向量但不训练,不会产生可靠关系。
维度是容量选择。太小可能无法保留任务需要的差异,太大会增加内存、计算和过拟合机会。没有一个维度天然对应一个稳定概念,坐标轴可在保持距离关系的变换下改变。
训练目标塑造邻域结构
分布式表示常利用对象在相似上下文中出现的规律学习关系。语言中,共现预测、上下文预测或序列损失会让能够承担相似预测作用的标记形成接近表示。推荐系统则可能依据共同点击、购买或观看行为学习邻域。
不同目标产生不同“相似”。两个商品可能因经常一起购买而接近,也可能因可替代而接近;两种关系甚至方向相反。若训练目标只奖励点击,它可能把曝光策略、热门程度和界面位置一起编码进向量。
负样本选择也影响空间。模型只在见过的正例和构造的对比对象之间学习区分,未被抽到的关系没有同等约束。报告嵌入时应记录数据窗口、目标函数、负采样和版本,而不是只发布向量文件。
静态表示与上下文化表示不同
静态词嵌入为同一标记提供一个固定向量,多义词的不同用法被压入同一表示。上下文化模型根据周围序列为每次出现计算不同向量,使同一标记在不同句子中可以具有不同表示。
Transformer 的输入通常从标记嵌入与位置表示开始,经过多层注意力和前馈变换形成上下文化表示。最终向量依赖层、位置、上下文和模型参数。比较向量时必须说明取自哪一层、如何汇总多个标记,以及是否进行了归一化。
上下文化并不表示语义已被完整理解。模型可能利用表面模式、数据偏差和提示格式。把一句话压缩成单个向量还需要池化或专门训练目标,直接取某个位置未必适合检索。
距离函数决定怎样读取空间
余弦相似度关注向量方向,欧氏距离同时受到方向和长度影响,点积还会随范数增大。训练使用的评分函数与检索使用的距离若不一致,最近邻结果可能偏离模型目标。归一化会改变排序和数值解释,也应作为索引版本的一部分。
高维空间中,距离分布可能集中,少量高频或高范数对象会成为许多查询的近邻。近似最近邻索引又会用速度交换召回率。检索质量必须用与用途相关的标注或行为评估,不能凭二维投影图判断。
降维可视化会扭曲全局距离和密度。图上分开的簇不证明原空间存在清晰类别,参数变化也可能改变布局。可视化适合探索,不应单独成为发布分组或风险判断的证据。
表示会继承数据和决策偏差
嵌入从历史数据学习,历史中的群体不平衡、曝光机制和语言刻板关系会进入空间。删除敏感字段不能保证向量不再包含相关代理信息。使用嵌入进行招聘、信用或内容分发时,需要按受影响群体和错误类型评估。
邻近结果还可能泄露训练数据或敏感关联。公开向量、检索接口和反向查询都需要访问控制、速率限制和数据用途审查。向量数据库不是脱离原数据治理的新资产类型,删除和保留要求仍要传递到派生表示。
模型更新后,空间坐标系通常整体改变。旧索引和新查询向量即使维度相同也可能不兼容,不能只追加部分新向量。嵌入模型、预处理、池化、归一化和索引应共同版本化。
嵌入需要通过任务而不是直觉验证
用于分类的嵌入应检验下游泛化,用于检索的嵌入应评估相关结果的召回、排序和失败案例,用于聚类的嵌入则要检查稳定性与领域意义。单个著名类比或几个漂亮近邻不能代表总体质量。
还应测试文本长度、稀有词、跨语言、时间变化和领域外输入。相似度阈值需要在真实候选分布上设定,不同模型的分数不能直接比较。若向量参与自动决策,应保留原始证据和可复核路径,避免把不可解释距离当作最终事实。
嵌入的价值在于把离散对象转为可优化、可比较的表示。它压缩了信息,也固定了任务视角。可靠使用始终需要回答:向量从什么数据和目标学到,距离代表什么,在哪些输入和决策条件下经过验证。
资料依据
- Ian Goodfellow、Yoshua Bengio、Aaron Courville:《Deep Learning》在线版,https://www.deeplearningbook.org/
- Ashish Vaswani 等:Attention Is All You Need,https://arxiv.org/abs/1706.03762