word2vec笔记二

本文介绍了word2vec模型在处理大规模语料时如何解决内存不足的问题,提出使用生成器逐步读取数据进行训练。同时,文章讨论了word2vec的N-gram模型、损失函数以及One-Hot编码的局限性,强调了词向量的连续表示对于捕捉词汇语义关系的重要性。此外,还对比了基于神经概率模型和CBOW的word2vec架构,并提供了多个参考资料链接。
摘要由CSDN通过智能技术生成

在语言模型中(包括word2vec),由于参数空间过大、数据过于稀疏,计算不方便,所以只考虑近邻n个词对其影响,以简化计算。即为N-gram模型,N为超参数。

需要定义loss function(一般为交叉熵代价函数),采用梯度下降算法更新W。训练完毕后,输入层的每个单词与矩阵W相乘得到的向量的就是我们想要的词向量(word embedding),也就是说,任何一个单词的onehot乘以这个矩阵都将得到自己的词向量。

但是使用One-Hot Encoder有以下问题。一方面,城市编码是随机的,向量之间相互独立,看不出城市之间可能存在的关联关系。其次,向量维度的大小取决于语料库中字词的多少。如果将世界所有城市名称对应的向量合为一个矩阵的话,那这个矩阵过于稀疏,并且会造成维度灾难。 使用Vector Representations可以有效解决这个问题。Word2Vec可以将One-Hot Encoder转化为低维度的连续值,也就是稠密向量,并且其中意思相近的词将被映射到向量空间中相近的位置。

两次训练出来的词向量不一样是很正常的,因为在你给模型指定的任务中,并没有对每个词向量的绝对位置的约束,这也就导致了每次生成的词向量不一样。https://www.zhihu.com/question/57144800/answer/681943645

训练word2vec词向量时,内存不足如何解决?可以使用生成器,一点一点的从
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值