-推荐关注-
1. Embedding往往包含语义关系
2. 举个通俗的例子来说明
2.1 Embedding 像是一种“翻译器”
2.2 Embedding 像地图上的“坐标”
Embedding 是一种机器学习概念,用于将数据映射到高维空间,将语义相似的数据放在一起。Embedding模型通常是 BERT 或其他 Transformer 系列中的深度神经网络,可以用一系列称为向量(vectors)的数字有效地表示文本、图像和其他数据类型的语义。这些模型的一个主要特点是,向量之间在高维空间中的数学距离可以表示原始文本或图像语义的相似性。这一特性开启了许多信息检索应用,如谷歌和必应等网络搜索引擎、电子商务网站上的产品搜索和推荐,以及最近流行的生成式人工智能中的检索增强生成(RAG)范式。
RAG详情见:本地知识库,通过RAG来解决信息的精准生成
Embedding 有两大类,每一类都能产生不同类型的向量:
密集嵌入:大多数嵌入模型将信息表示为数百到数千维的浮点向量。由于大多数维度的值都不为零,因此输出的向量被称为 "密集 "向量。例如,流行的开源嵌入模型 BAAI/bge-base-en-v1.5 输出的向量为 768 个浮点数(768 维浮点向量)。 稀疏嵌入:相比之下,稀疏嵌入的输出向量大部分维数为零,即 "稀疏 "向量。这些向量通常具有更高的维度(数万或更多),这是由标记词汇量的大小决定的。稀疏向量可由深度神经网络或文本语料库统计分析生成。由于稀疏嵌入向量具有可解释性和更好的域外泛化能力,越来越多的开发人员采用稀疏嵌入向量作为高密度嵌入向量的补充。
如向量数据库Milvus,专为向量数据管理、存储和检索而设计。通过整合主流的嵌入(embedding )和重排 (reranking)模型,可以轻松地将原始文本转换为可搜索的向量,或使用强大的模型对结果进行重排,从而获得更准确的 RAG 结果
向量数据库Milvus详见:为AI而生的向量数据库 - milvus(一) | milvus是什么
对于 AI 或机器学习算法来说,原始数据如文字、视频、图片等,这些数据并没有相似性或距离的概念。例如“手机”与“苹果”,对于现代人来说,会知道“苹果”在语义上会联想到“手机”,Embedding 在这当中加入了距离来表达它们之间的关联性,距离越近相关性越高。这使得数据维度大幅减少,而且节省了很多存储空间。
可以使用余弦相似度来判断相似性,见:人工智能小白到高手:余弦相似度(Cosine Similarity)的简单理解
1. Embedding往往包含语义关系
Embedding能捕捉词与词之间的语义关系。相似词的向量通常在空间中接近,并能区分同义词(如“big”和“large”),还能捕捉更复杂的语义关系:
“king” - “man” + “woman” ≈ “queen”
king去掉man的语义,再加上woman的语义,就和queen的语义相近
像 BERT 或 GPT 这样的模型会根据上下文调整词的向量。例如,“bank” 在“河岸”和“银行”中的向量会不同。“bank” 在“river bank”和“money bank”中的表示是不同的。
2. 举个通俗的例子来说明
2.1 Embedding 像是一种“翻译器”:
它把复杂的事物(比如单词、句子、图片)转化成“机器能理解的数字”。 但这些数字不仅仅是随便的编码,而是带有意义的,比如让相似的东西靠得更近。
2.2 Embedding 像地图上的“坐标”:
想象有一个巨大的地图,每个单词、句子或图片都被标记成一个点。 Embedding 会把相似的内容放在地图上靠得更近,比如“猫”和“狗”会靠近,而“猫”和“汽车”距离较远。 通过 Embedding,我们可以用数字坐标(如 [2.3, 4.1])来表示这些东西的位置,机器就能用数学方法分析它们的关系了。
往日文章:
- 为AI而生的向量数据库 - milvus(一) | milvus是什么
- 人工智能小白到高手:余弦相似度(Cosine Similarity)的简单理解
- 免费开源AI最先进的2D和3D人脸识别项目insightface-活体检测(六)
--END--