embedding

embedding是指将单词转化为向量表示的技术,它解决了离散符号表示的无意义和稀疏数据问题。VSM(向量空间模型)是其背景,包括经典的tf-idf。分布式假设认为上下文中的词汇具有相似语义,由此发展出词嵌入技术,如Word2Vec,通过神经网络训练得到。词嵌入比one-hot编码更能捕捉语义关系,并且具有平滑功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

what is emdding

embedding就是把字词用向量表示出来,相当于是对字词做encoding

motivation

比如 猫,狗,我们当然可以直接把他们表示为一些独立的离散符号,但是这样的表示毫无意义,而且会产生大量稀疏数据。使我们在训练统计模型时不得不寻求更多的数据。而词汇的向量表示将克服上述的难题。

background
  • VSM(vector space model)
    核心思想就是把一些词用向量空间的表示方法。最基本的应用,就是tf-idf。
    我们把一篇文档用一组向量表示,然后计算文档之间的余弦值来衡量文档相似度。

    vsm在nlp有着非常丰富的应用历史,不过这一模型又是基于分布式假设的。

  • 分布式假设
    其核心思想是:认为出现在上下文情景中的词汇都有着相似的语义。
    基于这一假设的方法,大致可以分为两类:
    – 计数方法。潜在语义分析(latent sematics analysis)
    – 预测方法。神经概率化模型
    用神经网络训练语言模型,比较经典就是Bengio于2003年发表在JMLR上的《A Neural Probabilistic Language Model》
    最简单的词向量,当属于one-hot的表示,这种表示并不是很理想,而distributed represention则比one-hot的好很多,一个猜测是:one-hot的表示相当于是空间中一个孤立的点,而distributed represe

### Embedding 的概念 Embedding 是一种将离散对象映射到连续向量空间的方法,使得这些对象之间的距离能够反映它们在原始数据中的相似度。对于自然语言处理而言,词嵌入是一种将单词转换为数值向量的技术,通过捕捉单词间的语义和句法关系,为自然语言处理任务提供有效的特征表示[^1]。 ### 应用场景 #### 自然语言处理领域 在文本分类、机器翻译等任务中广泛应用了词嵌入技术,这显著提高了模型的表现效果。具体来说: - **文本分类**:通过对文档内的词语进行编码并聚合得到整个文档的表征; - **机器翻译**:帮助理解源语言句子结构并将之转化为目标语言对应的表达形式; #### 推荐系统领域 除了NLP之外,在构建个性化推荐引擎方面也发挥了重要作用。例如可以用来建立基于用户的偏好模式来进行商品或者书籍等内容项之间关联性的建模[^2]。 ### 实现方式 以下是使用 Python 和 TensorFlow/Keras 创建简单的 Word2Vec embedding 层的例子: ```python import tensorflow as tf from tensorflow.keras.layers import Embedding, GlobalAveragePooling1D from tensorflow.keras.models import Sequential vocab_size = 10000 # 字典大小 embedding_dim = 16 # 向量维度 model = Sequential([ Embedding(input_dim=vocab_size, output_dim=embedding_dim), GlobalAveragePooling1D(), # 对序列求平均值以获得固定长度输出 ]) ``` 此代码片段定义了一个 Keras 模型,其中包含了两个层:首先是 `Embedding` 层负责把输入索引映射成稠密向量;其次是全局池化操作用于简化后续计算流程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值