神经网络嵌入详解

本文详述神经网络嵌入的原理和应用,包括为何使用神经网络嵌入、如何学习嵌入以及其在图书推荐系统中的实践,强调其在克服独热编码局限性上的优势,展示了通过嵌入进行数据可视化和构建推荐系统的方法。
摘要由CSDN通过智能技术生成

摘要:将文本转化为向量,深度挖掘变量间的联系,构建更为精确的推荐系统。


深度学习在诸多方面,如图像分割、时序预测和自然语言处理,都优于其他机器学习方法。嵌入(embedding),即用连续向量表示离散变量的方法,在其中起到了不可或缺的作用。像机器翻译中的词嵌入和分类变量中的实体嵌入,都是嵌入的成功应用。


本文将围绕什么是神经网络嵌入、为什么要使用神经网络嵌入以及神经网络嵌入如何学习这三方面进行详细地讲解。相关概念已在之前的工作——将Wikipedia中所有图书转变为向量并构建图书推荐系统中进行了详细讲解。


640?wx_fmt=png

Neural Network Embedding of all books on Wikipedia. (From Jupyter Notebook on GitHub).


嵌入(Embeddings)


在神经网络中,嵌入后的数据维度较低,它能将离散的序列映射为连续的向量。


神经网络嵌入的主要用途有三种:


  1. 在嵌入空间中找到最近邻。

  2. 作为有监督的机器学习模型的输入。

  3. 挖掘变量间的关系。


利用神经网络嵌入,我们能将Wikipedia中的37000多本书转换为至多包含50个数值的向量。


神经网络嵌入还克服了独热编码的局限性。


独热编码(One-Hot Encoding)的局限性


独热编码用于处理类别变量的最简单的嵌入方法,能够将不同的类别映射为不同的向量。独热编码保证了每一个取值只会使得一种状态处于“激活态”,也就是说这N种状态中只有一个状态位值为1,其他状态位都是0。


独热编码有两大缺陷:


  1. 当类别的数量很多时,特征空间会变得非常大。映射后的向量容易产生维数灾难。

  2. “相似”的类别映射在嵌入空间后并不相邻。


第一个问题很容易理解:多一个类别,在

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值