word embedding计算过程剖析

word embedding

定义

词向量,英文也叫word embedding ,按照字面意思,就是词嵌入。就是把单词映射为多维向量。

one-hot编码

要了词向量,就要从one-hot编码说起。one-hot编码就是给句子中的每个字分别用一个0-1编码,以“科、学、空、间、不、错”为例:
在这里插入图片描述
其中,“科学”可以用以下矩阵表示:
在这里插入图片描述
从这个例子可以看出,一个句子中有多少个字,就有多少维度。这样构造出来的矩阵是很大的,而且是稀疏矩阵,浪费资源。

计算过程

在这里插入图片描述
最左边表明,这是一个以2×6的one-hot矩阵为输入,中间层节点数为3的全连接的神经网络层。从右边可以看出,这个计算过程就相当于从 wi,j 矩阵中取出第1,2行,跟字向量的查表操作是一样的(从表中找出对应的向量)。

因此,Embedding层就是以one hot为输入、中间层节点为字向量维数的全连接层!而这个全连接层的参数,就是一个“字向量表”!

one hot型的矩阵相乘,就像是相当于查表,于是它直接用查表作为操作,而不写成矩阵再运算,这大大降低了运算量。再次强调,降低了运算量不是因为词向量的出现,而是因为把one hot型的矩阵运算简化为了查表操作。

计算完成之后,直接用全连接层的参数作为字、词的表示,从而得到字、词向量。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: embeddingword2vec的区别在于: 1. embedding是神经网络中的一,用于将离散的词语转换为连续的向量表示,以便于神经网络的训练和预测。而word2vec是一种词向量模型,用于将词语转换为向量表示,以便于计算词语之间的相似度和距离。 2. embedding是在神经网络中进行训练的,可以根据任务的需要进行调整和优化。而word2vec是一种预训练的模型,需要在大规模的语料库上进行训练,得到固定的词向量表示。 3. embedding可以用于各种不同的任务,如文本分类、情感分析、机器翻译等。而word2vec主要用于词语相似度计算和语言模型训练等任务。 4. embedding可以根据任务的需要进行调整和优化,如调整词向量的维度、使用不同的激活函数等。而word2vec的词向量表示是固定的,无法进行调整和优化。 ### 回答2: embeddingword2vec都是用于将文本转化为向量表示的工具,但是它们有着不同的应用场景和实现方式。 首先,embedding深度学习模型中的一,其作用是将离散的词语转化为连续的向量表示。例如,在通过卷积神经网络进行文本分类任务时,我们需要将文本中的每个词语转化为一个向量作为输入,这时就需要使用embedding来完成这个转化过程。 其次,word2vec则是一种通过训练大量文本来获取词向量的方法。我们可以通过预先训练好的word2vec模型获取每个单词的向量,在自然语言处理任务中使用。word2vec有两种实现方式:CBOW和Skip-Gram。CBOW是通过上下文中的词语来预测当前单词的向量,而Skip-Gram则是通过当前单词来预测上下文中的词语的向量,Skip-Gram在处理大规模训练数据时效果更好一些。 最后,embeddingword2vec之间也有些微小的区别。由于word2vec的词向量是通过无监督训练来获取的,因此它没有对不同任务或不同领域的语言有针对性的优化。而embedding是在深度学习模型中获得的,因此可以根据具体任务来进行调整优化,得到更好的表现。 在实际应用中,embeddingword2vec也经常会结合使用。例如,我们可以使用一个预先训练好的word2vec模型来初始化embedding的权重,或者使用embedding的输出来训练word2vec模型,以获取更好的词向量表示。 ### 回答3: Embeddingword2vec是自然语言处理中广泛使用的两种技术,它们的目的都是将语言单词表示为连续的向量。它们各自的区别在以下几个方面: 1. 应用场景不同 Embedding通常用于深度学习模型中,例如文本分类、情感分析、机器翻译等任务中,可以将词向量与其他特征一起输入神经网络。而Word2Vec则是一种词向量技术,用于将大量的语料库转化为高效的词向量表示。 2. 输入数据不同 Embedding通常以词索引或稠密单词矩阵的形式作为输入,逐渐训练以确定单词之间的关系。而Word2Vec需要语料库作为输入,并考虑单词之间的上下文关系,产生单词嵌入。 3. 训练方法不同 Embedding的训练通常是在神经网络的前/后/并行进行的,可以使用反向传播与其他一起训练,或者根据过去单词预测下一个单词(CBOW)或根据下一个单词预测过去的单词(skip-gram),Word2Vec使用这两种技术进行训练。 4. 词向量表示形式不同 Embedding产生离散性稠密矩阵,每个单词都表示为该矩阵上的一个向量。而Word2Vec则以低维向量的形式表示每个单词,并尝试通过上下文环境创建更好的单词嵌入。 综上,跟据应用场景、输入数据、训练方法以及词向量表示形式的不同,EmbeddingWord2Vec这两种技术有一些显著的区别。但他们的目的是一样的,都是将自然语言中的词汇转换为连续向量的形式,以便于计算机进行理解和分析。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值