关于矢量嵌入的是如此特别

2021-05-05 20:49:32

传染媒介嵌入式是机器学习中最令人迷人和最有用的概念之一。它们是许多NLP,推荐和搜索算法的核心。如果您曾使用过推荐引擎,语音助理,语言翻译,则遇到依赖Embeddings的系统。

ML算法,如大多数软件算法,需要使用数字。有时我们有一个数据集,其中包含可以转换为它们的数字值或值列(序数,分类等)。其他时候,我们遇到了更多抽象的东西,就像整个文本文件一样。我们创建vector fembedings,这只是数字列表,用于这样的数据,以便与它们执行各种操作。整个文本或任何其他对象的整个段落都可以减少到向量。甚至数值数据也可以转换为更容易操作的向量。

但是有些关于载体的东西,使它们如此有用。该表示使得可以将人类感知的语义相似性转化为在传染媒介空间中的邻近。

换句话说,当我们代表现实世界对象和概念,例如图像,音频记录,新闻文章,用户简档,天气模式和导航嵌入的政治观点,这些对象和概念的语义相似度可以通过接近量化它们彼此作为矢量空间中的点。因此,向量嵌入表示适用于诸如聚类,推荐和分类等共同机器学习任务。

例如,在群集任务中,群集算法将类似的点分配到同一群集,同时将来自不同群集的点保持不变,尽可能不同。在推荐任务中,在向未经调整对象制作建议时,推荐系统将查找与所讨论的对象最相似的对象,如其相似性如何作为向量嵌入。在分类任务中,我们通过对类似对象的标签进行分类,通过返回的标签分类了一个看不见的对象的标签。

创建载体嵌入的一种方法是使用域知识来设计矢量值。这被称为特征工程。例如,在医学成像中,我们使用医学专业知识来量化捕获语义的图像中的图像,颜色和区域等特征。但是,工程矢量嵌入需要域知识,缩放太昂贵。

而不是工程矢量嵌入式,我们经常培训模型来将对象转化为向量。深度神经网络是培训此类模型的常用工具。由此产生的嵌入式通常是高维(最多两千维度)和密集(所有值是非零)。对于文本数据,Word2VEC,手套和BERT的型号如媒体,句子或段落到向量嵌入中。

可以使用诸如卷积神经网络(CNNS)的模型来嵌入图像,CNN的示例包括vgg,并且可以使用嵌入图像嵌入式转换在音频频率视觉表示(例如,使用其频谱图)中转换到向量中的矢量。

考虑以下示例,其中原始图像表示为灰度像素。这相当于0至255范围内整数值的矩阵(或表)。其中,值0对应于黑色和255到白色。下面的图像描绘了灰度图像及其对应的麦克风。

左子图像描绘了灰度像素,中间子图像包含像素灰度值,并且最右边的子图像定义矩阵。注意矩阵值定义其第一坐标是矩阵左上单元的向量嵌入,然后向右向右移动,直到对应于右下矩阵单元的最后一个坐标。

这种嵌入式非常擅长维护图像中像素的邻域的语义信息。但是,它们对变换,缩放,裁剪和其他图像操纵操作等变换非常敏感。因此,它们通常被用作原始输入,以了解更强大的嵌入。

卷积神经网络(CNN或GROMNET)是一类深度学习架构,通常应用于视觉数据转换为嵌入的图像。

CNN通过分层小本地子输入处理输入,该输入是被称为接收字段的分层小本地子输入。每个网络层中的每个神经元从前层处理特定的接收场。每个层要么适用于接收字段上的卷积,或者降低输入大小,称为子采样。

下面的图像描绘了典型的CNN结构。注意每个层中的子方块的接收字段,作为前面层内的单个神经元的服务作为输入。请注意,子采样操作还原图层大小,而卷积操作会扩展图层大小。通过完全连接的层接收所得到的矢量嵌入。

学习网络权重(即嵌入式模型)需要大量标记的图像。与具有不同标签的图像相比,以与具有相同标签的图像嵌入更接近的方式进行优化。一旦我们学习CNN嵌入式模型,我们就可以将图像转换为向量并用K-Cirest-Neibeld索引存储它们。现在,给定新的看不见图像,我们可以用CNN模型转换它,检索其K-最相似的向量,从而将其检索到相应的类似图像。

虽然我们用图像和CNNS作为示例,但可以为任何类型的数据创建矢量嵌入品,并且有多种模型/方法我们可以使用它来创建它们。

嵌入物可以代表一个对象作为包含其语义信息的密集矢量的对象使它们非常有用于各种ML应用。

相似性搜索是矢量嵌入式最受欢迎的用途之一。像KNN和ANN等搜索算法要求我们计算对象之间的距离以确定相似性。矢量嵌入式可用于计算这些距离。最近的邻居搜索又可以用于De-Depplication,推荐,异常检测,反向图像搜索等任务。

即使我们不直接为应用程序使用Embeddings,许多流行的ML模型和方法内部依赖于它们。例如,在编码器 - 解码器架构中,编码器生成的嵌入式包含用于产生结果的解码器的必要信息。该架构广泛用于应用程序,例如机器转换和字幕生成。