SH

Soloharness

概念 · 辨析 · Agent

← 返回概念辨析

Concept Contrast Fable

把什么东西都变成向量的大家伙和其中只把单词变成向量的老前辈

嵌入是通用技术——把文本、图片、音频、代码甚至整个文档映射到向量空间,保留语义相似性。词嵌入是最早的嵌入形态,专门为词级语义建模而生,用静态向量表示单个词。把词嵌入当成嵌入的全貌,会以为所有嵌入都是静态单词语义;把句子嵌入当成词嵌入的简单升级,会忽略不同粒度建模需要完全不同的训练思路。

寓言

画院里从给每个字画像升级到给整段话画像

镇上有一群画像师。最早的一批叫字画师,天天做一件事:给每个字定一组坐标。比如“河”字,不管出现在“黄河”还是“滑河”,在藏书馆所有书里统一用一组数字。坐标的来源是统计——这个字跟镇上所有书里其他字的相邻频率。“河”和“水”经常挨着,坐标就靠近;“河”和“桌子”极少同框,坐标就拉远。

后来镇上来了句画师。他不给一个字画像,而是看一整句话,给整句话定一组坐标。“黄河在城北拐了个弯”——句画师的画法一气呵成,把整句吞进去再吐出一组数字。这句和“大河从城北弯过去啦”坐标很近,虽然字面差了一大截。“黄河”和“淮河”在字画师那里因为都带个“河”字离得近,在句画师那里却隔得远,因为整句话里说的是完全不同的事。

教书先生做藏书馆的检索系统,先用了字画师的路线。搜索“夏季的雨水”,系统把“夏季”“的”“雨水”三张画像凑一块,去库里面找坐标最近的书。结果回来的是《冬季的雪花》——“冬季”和“夏季”坐标靠近,“雪花”和“雨水”坐标也靠近,“的”一模一样。先生摇头:字没找错,书找全错了。

换了句画师的方法,搜索“夏季的雨水”拿的是整句话的画像。靠近的不再是《冬季的雪花》,而是《江南梅雨季》和《六月雷阵雨防范指南》。先生高兴之余开始追问:一句话多长才刚好?太短退化成字画师的路线,太长画出来的坐标模糊一片。句画师的回答是一张自制标尺——话的长度要刚好包住一个完整的意思。

镇上后来涌进了更多画像师。有给照片画像的,有给声音波形画像的,有给一段代码画像的。字画师发现自己只是一个更大画院里的一个小工作室。所有画像师用的数学工具是一套——高维向量——但训练语料和优化目标完全不同。

藏书馆的检索系统后来挂了三种画像师:字画师做精确匹配,搜罕见术语不漏;句画师做语义搜索,搜概念能找到不同措辞的段落;图画的画像师管跨模态,拍一张插图就找到对应书页。

画院的学徒守则多了新条目:字画师是祖传手艺,从词的共现频率里推敲语义。句画师是父辈的发明,从上下文的上下文里推敲语义。图画师、音画师、码画师是孙辈,把画像从文字带到了所有能变成序列的东西上。同一套数学工具在不同粒度上展开,各自捕捉不同层级的相似性。

嵌入

将任意对象映射到连续向量空间的通用技术。输入可以是词、句子、段落、图片、音频甚至图结构,输出是保留语义相似性的向量表示。是现代深度学习最基础的抽象之一。

词嵌入

嵌入技术在词级别的早期应用,如 Word2Vec 和 GloVe,为每个词生成静态向量。同一个词在所有上下文里用同一个向量,优点是简单高效,缺点是无法区分多义词的不同语义。

故事对应

  • 字画师:词嵌入,为每个词生成静态向量,不同上下文里不变
  • 句画师:句子和段落嵌入,为整段话生成上下文相关的向量
  • “夏季的雨水”搜到“冬季的雪花”:静态词嵌入只看字面共现,丢了语义
  • 句画师找到《江南梅雨季》:上下文敏感的嵌入更能捕捉真实意图
  • 图画师、音画师、码画师:嵌入技术从文字扩展到多模态
  • 藏书馆三套并行:不同粒度的嵌入各司其职,组合使用才能覆盖全场景

落到向量检索和语义搜索设计

做关键词级别的精确匹配时词嵌入仍然有用——搜术语、缩写、特定实体时效率很高。做语义搜索和意图匹配时用句子或文档级别的嵌入模型,它能跨过字面差异捕捉真实意思。多模态场景需要对应类型的嵌入模型,文字向量空间和图片向量空间有各自的坐标系,不能混用。成本敏感的场景先评估静态词嵌入能不能满足需求,再考虑上预训练句子嵌入模型——省下的推理预算可能足够覆盖一个额外功能。