Embedding
Embedding
Onehot
对类别数据 one-hot:
- 类别如果用整数编码存在大小关系,计算损失和距离会有问题。
对特征 one-hot:
- 
常见于对词的处理,将词映射到一个欧式空间,便于计算距离等。 
- 
one-hot 向量的维度等同于词表的维度 
- 
存在的问题 - one-hot 的向量无法体现词之间的关联和词义联系,而 embedding 可以通过计算向量的余弦相似度等,衡量两个词的相似度。
- 如果文本序列较短而词表很大,one-hot向量会很稀疏,对存储空间和计算资源的浪费。
 
embedding
将离散取值映射为连续取值,将词嵌入一个高维特征空间:
- 词 1=0.1*特征 1+0.2*特征 2... 词 2=0.2*特征 1+0.3*特征 3...
- 以上,“特征”取值通过端到端学习得到,也许并不能赋予特征的含义,可用于衡量词和词之间的相似度。
embedding:
- 
根据语料建立词表,将文本序列转换为整数序列,整数序列中的整数值为该词在词表中的索引。以此,整数序列代表这个文本序列。 
- 
之后两种常用处理方法:one-hot 和 embedding。 - one-hot: one-hot 向量维度取决于词表维度,无需对序列进行填充。
- embedding:将序列填充(常填充 0)为等长序列,再 embedding 转化为连续向量。
 
世上本没有什么 embedding:
- one-hot 经过一个全连接层(不带偏置和激活函数),全连接层的参数为词向量表,计算得到的结果为词向量。
- one-hot 向量的特性,等价于一个查表的过程,查的是词向量表(全连接层的参数)。
- 全连接层经过反复训练再输出得到一个较好的 embedding 向量。
Reference
 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号