首页 > 其他分享 >Word2Vec模型介绍

Word2Vec模型介绍

时间:2024-08-11 21:50:21浏览次数:10  
标签:中心词 Word2Vec Skip 模型 介绍 CBOW 上下文

Word2Vec 是一种用于生成词向量的模型,由 Tomas Mikolov 等人在 2013 年提出。它通过从大量语料库中学习,捕捉词汇之间的语义关系。Word2Vec 主要包括两种模型架构:

1. CBOW(Continuous Bag of Words)模型

CBOW 模型通过上下文词来预测中心词。它的工作原理如下:

  • 输入:上下文词(例如,选取中心词的前后几个词)。
  • 输出:中心词的概率分布。
  • 方法:将上下文词的词向量取平均值,然后用这个平均值预测中心词的概率。目标是最大化中心词的预测概率。

特点

  • 适合处理大规模数据,计算效率较高。
  • 由于是通过上下文词来预测中心词,更加注重词汇的共现关系。

2. Skip-gram 模型

Skip-gram 模型则与 CBOW 相反,它通过中心词来预测上下文词。具体原理如下:

  • 输入:中心词。
  • 输出:上下文词的概率分布。
  • 方法:对于每个中心词,预测它周围的上下文词。目标是最大化上下文词的预测概率。

特点

  • 适合处理较小规模的数据,尤其在处理稀有词汇时效果更好。
  • 更加注重捕捉词汇之间的精细语义关系。

3. 其他相关扩展模型

虽然 CBOW 和 Skip-gram 是 Word2Vec 的主要模型,但还有一些相关的扩展或变种模型:

  • Negative Sampling:为了解决全词汇表的 softmax 计算开销,Skip-gram 模型中常使用负采样。它通过从非上下文词中随机采样来简化计算。

  • Hierarchical Softmax:一种替代传统 softmax 的方法,使用霍夫曼树(Huffman Tree)来表示词汇表,从而减少计算复杂度。

  • Subword Information(如 FastText):FastText 是 Word2Vec 的一种扩展,它不仅学习词的向量表示,还考虑词的子词(subword)信息。这使得模型可以更好地处理拼写错误或新词。

总结

  • CBOW:基于上下文词预测中心词,适合大规模数据,效率高。
  • Skip-gram:基于中心词预测上下文词,适合捕捉细粒度语义关系,对稀有词效果更好。
  • Negative SamplingHierarchical Softmax:用于优化模型计算效率。
  • FastText:一种考虑子词信息的扩展,适合处理拼写变化和低频词。

Word2Vec 的这些模型和扩展广泛应用于自然语言处理任务中,如文本分类、情感分析、信息检索等。

标签:中心词,Word2Vec,Skip,模型,介绍,CBOW,上下文
From: https://www.cnblogs.com/chentiao/p/18353959

相关文章

  • 深度学习武器库-timm-非常好用的pytorch CV模型库 - 常用模型操作
    简要介绍timm库,全称pytorch-image-models,是最前沿的PyTorch图像模型、预训练权重和实用脚本的开源集合库,其中的模型可用于训练、推理和验证。github源码链接:https://github.com/huggingface/pytorch-image-models文档教程文档:https://huggingface.co/docs/hub/timm上手教程:h......
  • Word2Vec模型之CBOW
    CBOW(ContinuousBagofWords)是一种常用于自然语言处理的词嵌入模型,属于Word2Vec的一部分。CBOW模型的目标是通过上下文词来预测中心词。它通过在大规模语料库中学习词汇之间的共现关系,生成词向量表示。CBOW模型的工作原理上下文窗口:CBOW模型的核心思想是利用上下文窗口中的词......
  • 基于Python的大模型学习手册(入门级)
    前言大模型(全称为大语言模型,英文名称:LargeLanguageModel),这个2023年刷爆了互联网圈的“现象级明星”,几乎以前所未有的姿态,席卷了各行各业,世人一时为之惊叹。同时,也开辟了各大厂商投入AI研发的新赛道。乘着这波“西风”,国内大模型开启了雨后春笋般的神奇发育,简直是“一浪......
  • 一步一步微调小模型
    本文记录一下,使用自顶向下的编程法一步步编写微调小语言模型的代码。微调一个语言模型,本质上是把一个已经预训练过的语言模型在一个新的数据集上继续训练。那么一次微调模型的任务,可以分为下面三个大个步骤(不包含evaluation):加载已经预训练好的模型和新的数据集预处理模型和......
  • 公主少爷都爱看的haproxy七层代理详细介绍及常见实验详解
    目录一、负载均衡1.1什么是负载均衡1.2为什么要实验负载均衡1.3四层负载均衡1.4七层负载均衡1.5四层负载均衡和七层负载均衡的对比二、什么是haproxy2.1定义2. 2功能和特点2.3应用场景 2.4haproxy的分类 三、安装及基本配置的信息3.1软件的安装3.2haproxy基本......
  • AI Native应用中的模型微调
    关注我,持续分享逻辑思维&管理思维&面试题;可提供大厂面试辅导、及定制化求职/在职/管理/架构辅导;推荐专栏《10天学会使用asp.net编程AI大模型》,目前已完成所有内容。一顿烧烤不到的费用,让人能紧跟时代的浪潮。从普通网站,到公众号、小程序,再到AI大模型网站。干货满满。学成后可......
  • MLM掩码语言模型在实际应用中有哪些常见的挑战和解决方案
    关注我,持续分享逻辑思维&管理思维&面试题;可提供大厂面试辅导、及定制化求职/在职/管理/架构辅导;推荐专栏《10天学会使用asp.net编程AI大模型》,目前已完成所有内容。一顿烧烤不到的费用,让人能紧跟时代的浪潮。从普通网站,到公众号、小程序,再到AI大模型网站。干货满满。学成后可......
  • 如何评估分类任务的模型性能
    二分类&多分类任务的评估指标对比多分类任务和二分类任务的评估指标在概念上有一些相似性,但由于多分类任务涉及三个或更多类别,因此在评估方法和指标上存在一些差异:二分类任务的评估指标:准确率(Accuracy):正确预测的样本数占总样本数的比例。精确度(Precision):预测为......
  • __stdcall介绍
      __stdcall 是一种函数调用约定(CallingConvention),它在不同的操作系统和编程环境中有着不同的支持和实现方式,但主要是在Windows平台上被广泛使用。在Windows中,它指定了函数如何接收参数(通过栈传递,参数从右到左入栈)、如何返回值,以及谁负责清理栈(在这个约定中,是由被调用的......
  • 大模型agent开发之prompt提示词模板
    提示词工程的建模在大模型对话agent的开发中有着重要的地位,好的提示词模板可以辅助大模型做出更加准确的预测,得到更加准确的答案。本文使用langchain进行agnent开发,langchain中封装了很多工具和方法其中就包括不同的prompt模板,接下来本文将详细介绍几种不同风格的prompt模板的使用......