Word2Vec浅谈

论文地址:Efficient Estimation of Word Representations in Vector Space

个人认为,word2vec主要解决的问题是one-hot中维度过高并且稀疏的问题。word2vec是Google团队在2013年发表的一篇paper,当时一经问世直接将NLP领域带到了一个新的高度,在2018年bert被提出之前,word2vec一直是NLP算法工程师追捧的预训练词向量模型。

Word2Vec是轻量级的神经网络,其模型仅仅包括输入层、隐藏层和输出层,模型框架根据输入输出的不同,主要包括CBOW和Skip-gram模型。CBOW是知道 w t − 2 w_{t-2} wt−2, w t − 1 w_{t-1} wt−1, w t + 1 w_{t+1} wt+1, w t + 2 w_{t+2} wt+2,预测 w t w_t wt.而Skip-gram是知道 w t w_t wt,预测 w t − 2 w_{t-2} wt−2, w t − 1 w_{t-1} wt−1, w t + 1 w_{t+1} wt+1, w t + 2 w_{t+2} wt+2

首先,输入层是一个one-hot向量,具体细节请看前面的博客。例如 w t − 2 = [ 0 , 0 , 1 , 0 , 0 , 0 ] w_{t-2}=[0,0,1,0,0,0] wt−2=[0,0,1,0,0,0] 经过一个矩阵 [ 0 1 1 1 1 0 3 5 6 1 1 0 1 0 1 ] \begin{bmatrix} 0&1&1\\ 1&1&0\\ 3&5&6\\ 1&1&0\\ 1&0&1\\ \end{bmatrix} 013111151010601 将高维度的one-hot向量映射为低维度的向量 [ 3 , 5 , 6 ] T [3,5,6]^T [3,5,6]T,再经过一个矩阵,把低维向量映射回高维,得到输出层 [ 1 1 1 1 1 3 1 0 1 1 2 5 6 1 1 ] \begin{bmatrix} 1&1&1&1&1\\ 3&1&0&1&1\\ 2&5&6&1&1\\ \end{bmatrix} 132115106111111 这样可以得到输出为 [ 30 , 38 , 39 , 14 , 14 ] T [30,38,39,14,14]^T [30,38,39,14,14]T这就是根据 w t − 2 w_{t-2} wt−2预测得到 w t w_t wt的结果,将 w t − 2 w_{t-2} wt−2扩展到 w t − 1 w_{t-1} wt−1, w t + 1 w_{t+1} wt+1, w t + 2 w_{t+2} wt+2就是多几个输入的one-hot向量的问题。同理Skip-gram也是一样。总的来说就是一个从高维映射到低维再映射回去的过程。

参考:

  1. 详解Word2Vec原理篇
  2. 深入浅出Word2Vec原理解析
相关推荐
ZHOU_WUYI17 分钟前
4.metagpt中的软件公司智能体 (ProjectManager 角色)
人工智能·metagpt
靴子学长1 小时前
基于字节大模型的论文翻译(含免费源码)
人工智能·深度学习·nlp
AI_NEW_COME2 小时前
知识库管理系统可扩展性深度测评
人工智能
海棠AI实验室2 小时前
AI的进阶之路:从机器学习到深度学习的演变(一)
人工智能·深度学习·机器学习
hunteritself2 小时前
AI Weekly『12月16-22日』:OpenAI公布o3,谷歌发布首个推理模型,GitHub Copilot免费版上线!
人工智能·gpt·chatgpt·github·openai·copilot
IT古董3 小时前
【机器学习】机器学习的基本分类-强化学习-策略梯度(Policy Gradient,PG)
人工智能·机器学习·分类
centurysee3 小时前
【最佳实践】Anthropic:Agentic系统实践案例
人工智能
mahuifa3 小时前
混合开发环境---使用编程AI辅助开发Qt
人工智能·vscode·qt·qtcreator·编程ai
四口鲸鱼爱吃盐3 小时前
Pytorch | 从零构建GoogleNet对CIFAR10进行分类
人工智能·pytorch·分类
蓝天星空3 小时前
Python调用open ai接口
人工智能·python