什么是embedding

知乎回答1.
深度学习和传统推荐方法(协同过滤)中的embedding
1-1embedding的应用之一:通过计算用户和物品的Embedding相似度,Embedding可以直接作为推荐系统的召回层或者召回方法之一。
对embedding在召回方面的应用浓缩总结一下就是:通过计算用户和1-2物品或物品和物品的Embedding相似度,来缩小推荐候选库的范围。
1-3除此之外,通过总结目前主流的ctr预估模型比如wide&deep,deepFM,PNN和DCN等等可以发现,embedding还有一个非常普遍的应用就是实现高维稀疏特征向量向低维稠密特征向量的转换,通俗来讲就是把离散特征经过独热编码后的稀疏向量表达转化成稠密的特征向量表达。
1-4或者从另一个角度看,embedding本身就是对事物的多维度特征表示,因此在ctr预估模型中,训练好的embedding可以当作输入深度学习模型的特征,比如FNN利用FM预训练好的embedding来当作模型的输入,然后通过特征交叉操作比如多层感知机得到这些embedding的交叉特征。
1-5解释基于矩阵分解的协同过滤中的embedding
1-6解释基于自编码器的协同过滤中的embedding
作者:DeePR
链接:https://www.zhihu.com/question/38002635/answer/1045883713
来源:知乎

知乎回答2.
怎么形象理解embedding这个概念? - 「已注销」的回答 - 知乎
https://www.zhihu.com/question/38002635/answer/1047924668
一是为了针对某个目的更好的优化计算过程,二是很多结构并不是欧几里得空间,比如图,处理这些数据更加需要embedding

回答3
embedding 可以理解为比如降维,或者说把一些复杂难以表达的特征用相对来说可以用数学表达或者更易计算的形式来表达的一种映射。比如把单词转化成向量,把数字(的奇偶正负实复等性质)转化成n维矩阵。

回答4
Embedding在数学上表示一个maping: , 也就是一个function。其中该函数满足两个性质:injective (单射的):就是我们所说的单射函数,每个X只有唯一的Y对应;structure-preserving(结构保存):比如在X所属的空间上 x1

作者:披头与枪花
链接:https://www.zhihu.com/question/38002635/answer/245661512
来源:知乎

回答4
其实在通常语境下,embedding特指离散/类别特征的特征表示。为了区分其他的特征表示,那就给了他一个专门的名字。因为机器学习算法大部分没法直接处理字符串,所以尤其在NLP,推荐等,需要将字符,类别等特征转换成数字。但如果简单的只是转化成1,2,3……会人为的引入一种偏差,所以最早的做法是转成one hot向量,然而转成one hot也有问题,那就是虽然人为的偏差没了,可是本来内在的关系也没了(one hot表示中任何两个不同的类别的距离是一致)。所以干脆一个类别分配一个专门的向量,但是这个向量的值是多少呢?不知道,但不重要,让网络自己学就行了。在优化算法的引导下,向量会自动演变成能让loss function最小的形式。
通常情况下,embeddings特指投射到连续空间的特征表示,离散特征/连续特征/离散特征+连续特征都可以通过无监督方法得到embedding向量。

回答5
One-hot + 单层全连接神经网络
这个过程很类似于Embedding。无论是Word2vec还是其他item2vec,其本质都是如何用较少(相较于One-hot:降维)的数字来完整的表示数据集每个个体的特征,同时,这些数字兼具表达不同数据之间的关联程度的作用。得到数据集每个个体的张量表示不是目的,重要的是,张量必须能很好地表达个体的特征,从而很好地计算不同个体之间的相似度(关联程度)。

作者:Gemini向光性
链接:https://www.zhihu.com/question/38002635/answer/1181431539
来源:知乎

回答6
原始信息的高维表示是冗余的,这玩意是用低维向量表示了高维信息,是一种“降维表示”,或者将信息都用统一固定低维度向量进行表示,以方便工程应用。而且,这种“降维表示”至少要保留原始信息之间的区分能力。

回答7
从研究对象到embedding vector的操作变换目前一般都用神经网络(如说话人识别的x-vector),当然也有非神经网络的(比如说话人识别的i-vector)。使用embedding的一个好处是我们可以得到固定维度的vector。还是以说话人识别为例,语音的长度是不固定的,但是最终我们得到的embedding vector维度是一致的,这给embedding vector的后期处理带来了很大的便利。

作者:Golfer
链接:https://www.zhihu.com/question/38002635/answer/1381512850
来源:知乎

回答8
高维稀疏空间映射到低维稠密空间
就是对特征进行固定长度的编码,比如对词进行固定长度的编码就是大名鼎鼎的word-embedding
固定长和可学习还只是一部分,one-hot也是固定长和可学习(不用学习直接得到)。要学习一个低纬度稠密向量表示有一个重要原因。向量之间的差异——我们可以称之为similarity或distance或随便一个词吧,以sim为例,在one-hot编码中,我[1,0,0]和你[0,1,0]和她[0,0,1]的相似度是一样的,它们无法表征在某种语义环境下的词之间的关联性,比如实际上她是我的女人而你是我的陌生人。multi-hot也类似。而使用低维稠密向量表示,学习embedding的结果,举个例子,我[0.8,0.2]和你[0.1,0.9]和她[0.85,0.15],并不知道这个空间的语义是什么,但是知道我和她离得近。我们也许可以猜测这是一个单身/非单身空间。总之这是一个通过学习得到的过程,而学习过程本身和学习的结果也都是semantic的体现。当需要embedding的内容多且种类多,不再是对同一个属性的东西进行embedding时,尤为重要

作者:shelgor
链接:https://www.zhihu.com/question/38002635/answer/1166949423
来源:知乎

推荐领域embedding算法概述

你可能感兴趣的:(什么是embedding)