嵌入就是一个查找表,其余的一切只是你如何填充它

空逐月AI 前沿📡 BestBlogs·AI高分精选⭐ 852026-09-221183 阅读💛 264 收藏
嵌入就是一个查找表,其余的一切只是你如何填充它

📌 One-Sentence Summary 本文将嵌入解释为无需模式迁移的查找表,对比了静态嵌入与上下文嵌入,量化了模型变更时索引失效的程度,并提供了可靠管理嵌入索引的具体工程实践。 📝 Summary 本文将嵌入视为简单的「整数到向量」查找表,重点介绍了两种填充方式:作为训练好的模型参数(静态)或根据模型输出动态计算(上下文)。文章详细阐述了池化(pooling)如何压缩每个 Token 的向量,以及为什么生成的空间没有迁移路径——更换模型会静默地使所有存储的向量失效。通过一个 48 行的运行手册实验,作者展示了将 MiniLM-L6 模型更换为 L12 时,召回率下降了 60 %,并解释了为什么池化选择、归一化和维度大小至关重要。作者提出了四个实用的工程习惯:在索引中存储完整的模型元数据、采用直接切换而非滚动更新、测量邻居重合度而非原始余弦值,以及将维度视为一种成本。本文专为转向机器学习的工程师编写,在清晰的技术阐述与可操作的工程指导之间取得了平衡。 💡 Main Points 嵌入是无迁移路径的整数索引查找表。 与软件数据结构不同,模型的嵌入矩阵是冻结的参数;更换模型会创建一个没有映射关系的新向量空间,导致存储的向量在不知不觉中失效。 填充查找表的两种不同方式决定了其使用模式。 静态嵌入是训练好的参数(通过梯度学习到的行),而上下文嵌入是根据模型输出按需计算的,这使得同一个 Token 可以根据周围的上下文生成不同的向量。 索引失效是可衡量的,且通常非常严重。 一个 48 行的代码测试表明,从 MiniLM-L6 升级到 L12 时,召回率下降了 60 %,这说明了模型变更如何在没有明显警告的情况下破坏搜索质量。 四个工程习惯可以降低迁移风险。 在索引中存储完整的模型元数据、采用完全切换而非滚动更新、监控邻居重合度而非原始余弦值,并将嵌入维度视为未来扩展的成本因素。 💬 Key Quotes 「如果你写过哈希表,你就已经写好了嵌入层的大部分内容。」 「单词 bank 在该句子模型的输入表中占有一行,即第 2,924 行。」 「60 % 的下降并不意味着索引彻底混乱,原因在于这两个模型都是从重合的数据中学习英文的:同一行在两个模型下的自身余弦相似度平均为 0.54,远非正交。」 「嵌入器是索引的一部分。」 📊 Article Meta AI Screening: 85 Source: DEV Community: machinelearning Author: Carlos Chinchilla Corbacho Category: 人工智能 Language: 英文 Read Time: 9 min Word Count: 2099 Tags: AI 与智能应用 , 机器学习 , 模型训练与推理 , 上下文工程 , 大语言模型 (LLM) Read Full Article

#AI 与智能应用# 机器学习# 模型训练与推理# 上下文工程# 大语言模型 (LLM)

文章评论(0

暂无评论,快来抢沙发~