了解什么是嵌入,以及嵌入如何通过捕捉数据中的语义关系为 NLP、推荐和计算机视觉提供人工智能支持。
在机器学习(ML)和人工智能(AI)领域,嵌入是一种将复杂数据(如单词、句子、图像或其他项目)表示为多维空间中密集数字向量的基本技术。这种转换是从数据中学来的,使算法能够捕捉输入数据的语义、上下文或基本特征。其主要优势在于,根据训练数据被认为相似的项目会被映射到这个 "嵌入空间 "中的邻近点上,从而使机器能够理解复杂的关系和模式,这比传统的稀疏表示(如单次编码)要有效得多。
嵌入是离散变量(如单词)或复杂对象(如图像或用户配置文件)的学习型、相对低维的向量表示。单次编码等方法创建的是非常高维的稀疏向量,每个维度对应一个项目,缺乏内在的关系信息,而嵌入则不同,它是高密度向量(通常有数万到数千个维度),每个维度都有助于表示项目的特征。最重要的是,这些向量在嵌入空间中的位置可以捕捉语义关系。例如,在单词嵌入中,具有相似含义或在相似语境中使用的单词,如 "king"(国王)和 "queen"(王后)或 "walking"(行走)和 "ran"(奔跑),其向量在数学上会比较接近(例如,使用余弦相似度)。这种接近性反映了从数据中学习到的语义相似性。
嵌入通常使用神经网络(NN)模型,通过自我监督学习等技术在大型数据集上进行训练生成。例如,以Word2Vec 为例,单词嵌入的一种常用技术是训练一个模型,以根据海量文本语料库中某个单词的周围单词(上下文)来预测该单词。在训练过程中,网络会调整其内部参数,包括每个单词的嵌入向量,以便通过反向传播等方法将预测误差降到最低。由此产生的向量隐含了句法和语义信息。嵌入空间的维数是一个关键的超参数,影响着模型捕捉细节的能力、计算成本和过度拟合的风险。这些高维数据空间的可视化通常需要t-SNE或PCA 等降维技术,可以使用TensorFlow Projector 等工具进行探索。
嵌入式是许多现代人工智能系统的重要组成部分,涉及各个领域:
将嵌入与相关术语区分开来很有帮助:
嵌入为机器学习模型提供了一种强大的数据表示方式,使它们能够理解从文本到图像等各种数据类型中的语义相似性和复杂模式。嵌入式技术是推动众多人工智能应用进步的基石技术,也是现代 ML 框架(如 PyTorch和 TensorFlow.