文本嵌入
文本嵌入概述
文本嵌入(Text Embedding)是将自然语言文本映射到稠密向量空间的技术。在这个空间中,语义相似的文本距离较近,语义不同的文本距离较远。文本嵌入是现代NLP和信息检索的基石。
技术演进
词向量时代
- Word2Vec:词级别的分布式表示
- GloVe:基于全局共现统计的词向量
- FastText:考虑子词信息的词向量
上下文嵌入
- ELMo:基于双向LSTM的上下文嵌入
- BERT:基于Transformer的上下文嵌入
密集检索嵌入
- Sentence-BERT:针对句子级任务优化
- SimCSE:对比学习框架
- 现代嵌入模型:BGE、E5、GTE等
嵌入方法
平均池化
对所有token的表示取平均:
- 简单高效
- 可能丢失重要信息
CLS token
使用[CLS]标记的输出:
- BERT的标准方法
- 需要微调才能有效
注意力加权
使用注意力机制加权聚合:
- 自适应地关注重要token
- 效果更好但计算量更大
嵌入空间特性
语义聚类
语义相似的文本自然聚类:
- 同一主题的文档聚集
- 不同主题形成不同簇
线性关系
嵌入空间中存在线性语义关系:
- 类比关系:king - man + woman ≈ queen
- 层次关系:上位概念与下位概念
各向异性
原始嵌入可能各向异性:
- 向量分布不均匀
- 影响检索效果
- 需要后处理矫正
相似度计算
余弦相似度
$$\text{sim}(a, b) = \frac{a \cdot b}{|a| |b|}$$
- 最常用的相似度指标
- 范围[-1, 1]
- 不受向量长度影响
内积
$$\text{sim}(a, b) = a \cdot b$$
- 计算效率高
- 需要归一化处理
欧氏距离
$$d(a, b) = |a - b|_2$$
- 直接的几何距离
- 适合聚类任务
质量评估
- MTEB基准:最全面的嵌入评估
- 检索质量:NDCG、MRR等指标
- 聚类质量:NMI、ARI等指标
- 语义相似度:与人类判断的相关性
实践建议
- 选择适合任务的嵌入模型
- 对长文本进行分段处理
- 使用向量数据库高效存储和检索
- 定期更新嵌入以适应数据变化
- 监控嵌入质量指标
文本嵌入技术的持续进步正在推动语义搜索和RAG应用的发展。