Word2Vec
跳到导航
跳到搜索
Intro
Word2Vec 是一种将词语(Word)映射为连续向量(Vector)的高效建模技术,由 Google 的 Tomas Mikolov 团队于 2013 年提出。通过在大规模文本语料中自动学习,Word2Vec 将每个词表示为一个低维、稠密、连续的向量(Embedding),这种向量能够捕捉词语之间的语义和句法关系。与传统将词视为离散 ID 的方法(如 N-gram)不同,Word2Vec 将词嵌入到连续空间中,相似意义的词在向量空间中距离更近,为后续复杂模型(如 Transformer)奠定了基础。
Word2Vec 的底层是一个浅层神经网络,采用 Skip-gram 或 Continuous Bag-of-Words(CBOW)两种架构进行训练。训练后得到的词向量(Word Embedding)被广泛应用于自然语言处理(NLP)任务中,包括机器翻译(Machine Translation)、信息检索(Information Retrieval)、文本分类(Text Classification)和情感分析(Sentiment Analysis)等,成为当前 NLP 领域的重要基础方法之一。
历史背景
- 开发者和提出时间(Tomas Mikolov 等,2013,Google)
- 相关技术的前身(如神经语言模型、潜在语义分析)
- Word2Vec 的影响和后续发展
技术原理
基本概念
- 词嵌入(Word Embedding)的定义
- 分布式假设(Distributional Hypothesis)
- 向量空间模型
模型架构
- 连续词袋模型(CBOW, Continuous Bag of Words)
- 原理:通过上下文预测目标词
- 结构:输入层、隐藏层、输出层
- Skip-gram 模型
- 原理:通过目标词预测上下文
- 与 CBOW 的对比
训练方法
- 负采样(Negative Sampling)
- 层次 Softmax(Hierarchical Softmax)
- 优化算法(如随机梯度下降)
应用领域
- 自然语言处理(语义分析、机器翻译、文本分类)
- 推荐系统
- 信息检索
- 其他领域(如生物信息学、社会科学)
优缺点
优点
- 计算高效
- 能捕捉语义和语法关系
- 适用于大规模语料库
局限性
- 无法处理多义词(Polysemy)
- 依赖局部上下文,忽略全局信息
- 需要大量训练数据
相关技术与扩展
- GloVe(Global Vectors for Word Representation)
- FastText
- BERT 和 Transformer 模型
- 动态词嵌入(如 ELMo)
开源实现与工具
- Gensim 库
- TensorFlow / PyTorch 实现
- 原始 C 语言实现(Google Code)