当前位置: 首页 > news >正文

phpcms网站源码ui培训班多少钱

phpcms网站源码,ui培训班多少钱,wordpress主题 seo,腐女喜欢做的网站Word2Vec(Word to Vector)是 2013 年由 Google 团队提出的无监督词嵌入模型,是一种静态词嵌入技术,核心目标是将自然语言中的离散词汇映射为低维、稠密的实数向量(即 “词向量”),让向量空间的距…

Word2Vec(Word to Vector)是 2013 年由 Google 团队提出的无监督词嵌入模型,是一种静态词嵌入技术,核心目标是将自然语言中的离散词汇映射为低维、稠密的实数向量(即 “词向量”),让向量空间的距离和方向能够反映词汇的语义关联(如 “国王” 与 “女王” 的向量差近似 “男人” 与 “女人” 的向量差)。它解决了传统文本表示(如 One-Hot 编码)“维度灾难” 和 “语义孤立” 的问题,成为 现代自然语言处理(NLP)的基础技术之一。

核心背景:为什么需要 Word2Vec?

在 Word2Vec 出现前,主流的文本表示方法存在明显缺陷,无法捕捉语义信息:

  1. One-Hot 编码:将每个词表示为长度等于词汇表大小的向量,仅对应词的位置为 1,其余为 0。
    • 缺陷:维度极高(词汇表 10 万则向量长度 10 万)、稀疏性强,且无法体现词与词的语义关联(如 “猫” 和 “狗” 的向量点积为 0,无任何相似性)。
  2. Bag of Words(词袋模型):统计词在文本中的出现频率,忽略语序和语义。
    • 缺陷:同样无法捕捉语义,且 “重要” 和 “不重要” 的词权重无差异(需依赖 TF-IDF 优化,但仍无语义关联)。

Word2Vec 的核心突破是:用低维向量的 “数值关系” 刻画词汇的 “语义关系”,例如:

  • 向量计算:vec(国王) - vec(男人) + vec(女人) ≈ vec(女王) 式子变换一下可以这样理解:vec(国王) - vec(女王) ≈ vec(男人) - vec(女人)
  • 相似性:cos( vec(猫), vec(狗) ) 的值远大于 cos( vec(猫), vec(汽车) )

Word2Vec 算法的两大核心模型(落地的实现技术)

Word2Vec 并非单一模型,而是包含两种互补的无监督学习架构,二者均基于 “上下文与目标词的共现关系”(即 “通过周围词预测中心词,或通过中心词预测周围词”)构建语义关联。

1. CBOW 模型(Continuous Bag of Words,连续词袋模型)

核心思想:用 “上下文词” 预测 “中心词”
例如句子 “我 爱 自然 语言 处理”,若以 “自然” 为中心词,上下文窗口(假设窗口大小为 2)为 “爱” 和 “语言”,CBOW 的任务是:输入 “爱” 和 “语言” 的向量,输出 “自然” 的概率。

模型结构(3 层神经网络)

  • 输入层:上下文词的 One-Hot 向量(假设窗口大小为 2,共 2 个向量,每个长度为 V,V 为词汇表大小)。
  • 隐藏层:对输入的上下文词向量取平均(或求和),得到一个长度为 N 的向量(N 为词向量维度,通常取 50-300),此层无激活函数。
  • 输出层:Softmax 层,输出词汇表中每个词作为 “中心词” 的概率,目标是让真实中心词的概率最大。

特点

  • 小数据集更鲁棒:上下文词的平均操作能降低噪声影响。
  • 训练速度更快:每次输入多个上下文词,对高频词的处理更高效。

2. Skip-gram 模型(跳字模型)

核心思想:用 “中心词” 预测 “上下文词”
仍以句子 “我 爱 自然 语言 处理” 为例,以 “自然” 为中心词,上下文窗口为 2,Skip-gram 的任务是:输入 “自然” 的向量,输出 “爱” 和 “语言” 的概率。
模型结构(3 层神经网络)

  • 输入层:中心词的 One-Hot 向量(长度为 V)。
  • 隐藏层:将输入向量与权重矩阵(V×N)相乘,得到长度为 N 的词向量,无激活函数(此向量即为最终的词嵌入结果)。
  • 输出层:Softmax 层,输出词汇表中每个词作为 “上下文词” 的概率,目标是让真实上下文词的概率最大。

特点

  • 低频词更友好:能从少量低频词的共现中学习到更准确的语义(例如 “量子”“区块链” 等低频专业词)。
  • 语义捕捉更精准:在大数据集上表现优于 CBOW,是 Word2Vec 中更常用的架构。

两种模型对比

在这里插入图片描述

关键优化:解决 Softmax 计算瓶颈

Word2Vec 的原始模型(尤其是输出层的 Softmax)存在严重的计算瓶颈:
Softmax 的概率计算需遍历整个词汇表(P(w_i) = exp(z_i) / Σ_{j=1 to V} exp(z_j)),若词汇表大小 V=100 万,则每次预测需计算 100 万次指数和求和,训练效率极低。

为解决此问题,Word2Vec 引入了两种核心优化方法:

1. 负采样(Negative Sampling,NS)

核心思想:将 “多分类问题” 转化为 “二分类问题”

  • 原始任务:判断 “中心词与上下文词是否为真实共现对”(需区分 V 个词,多分类)。
  • 优化后任务:对1 个真实共现对(正样本)K 个随机采样的非共现对(负样本) ,训练模型区分 “正 / 负样本”(二分类)。

具体步骤

  1. 对当前中心词 w 和上下文词 c,标记为正样本((w,c) 是真实共现对)。
  2. 从词汇表中随机采样 K 个词(通常 K=5-20),确保这些词与 w 无共现关系,标记为负样本((w,c1), (w,c2), …, (w,cK))。
  3. 用 Sigmoid 函数替代 Softmax,计算每个样本的 “正例概率”,目标是让正样本概率接近 1,负样本概率接近 0。

优势

  • 计算量从 O (V) 降至 O (K),K 远小于 V(如 V=100 万,K=10),训练速度提升 10 万倍。
  • 负样本采样遵循 “高频词更易被采样” 的原则(用P(w) ∝ f(w)^0.75,f (w) 为词的频率),更符合真实语言规律。

2. 层次 Softmax(Hierarchical Softmax)

核心思想:用 “二叉树” 替代 “全连接 Softmax”
将词汇表中的所有词作为二叉树的叶子节点,每个非叶子节点代表一个二分类决策(左子树为 “0”,右子树为 “1”)。从根节点到叶子节点的路径,对应该词的 “概率计算路径”。

具体步骤

  1. 构建一棵哈夫曼树(Huffman Tree):高频词的路径更短,低频词的路径更长,减少整体计算量。
  2. 计算词 w 的概率时,无需遍历所有叶子节点,只需沿根节点到 w 的路径,计算每个非叶子节点的二分类概率(用 Sigmoid 函数),最终概率为路径上所有概率的乘积。

优势

  • 计算量从 O (V) 降至 O (logV)(哈夫曼树的深度为 log2V),适合高频词占比高的场景。
  • 无需采样负样本,避免负样本选择带来的误差。

四、训练过程与超参数

在这里插入图片描述
在这里插入图片描述

五、优缺点与应用场景

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

六、与其他词嵌入技术的对比

在这里插入图片描述

七、实践工具与代码示例

在这里插入图片描述
2. Gensim 实现 Word2Vec 示例

from gensim.models import Word2Vec
from gensim.utils import simple_preprocess# 1. 准备语料(需先分词,此处用simple_preprocess简单分词)
corpus = ["自然语言处理是人工智能的重要分支","Word2Vec是常用的词嵌入技术","深度学习在NLP领域有广泛应用","词向量可以捕捉词汇的语义关联"
]
# 分词:将每个句子拆分为词列表
sentences = [simple_preprocess(text, deacc=True) for text in corpus]
# 结果:[['自然语言处理', '是', '人工智能', '的', '重要', '分支'], ...]# 2. 训练Word2Vec模型
model = Word2Vec(sentences=sentences,    # 分词后的句子列表vector_size=100,        # 词向量维度window=5,               # 窗口大小min_count=1,            # 最小词频(此处语料小,设为1)workers=4,              # 并行训练的线程数sg=1,                   # 1=Skip-gram,0=CBOWnegative=5              # 负采样数量
)# 3. 模型应用
# 获取词向量
vec_nlp = model.wv["自然语言处理"]  # 输出:(100,)的numpy数组# 计算词相似度
sim = model.wv.similarity("自然语言处理", "NLP")  # 输出相似度值# 查找最相似的词
similar_words = model.wv.most_similar("人工智能", topn=3)  # 输出Top3相似词# 保存/加载模型
model.save("word2vec.model")
loaded_model = Word2Vec.load("word2vec.model")

总结

Word2Vec 通过 “局部共现 + 低维向量” 的核心思路,首次实现了 “语义可计算”,为现代 NLP 奠定了基础。尽管其静态词向量的缺陷被 ELMo、BERT 等动态模型弥补,但由于其速度快、轻量、易理解的特点,至今仍在中小规模数据集、低资源场景中广泛应用。理解 Word2Vec 的原理(CBOW/Skip-gram、负采样),是掌握更复杂预训练模型(如 BERT)的关键前提。

动态词嵌入技术 后续补充

http://www.dtcms.com/a/403074.html

相关文章:

  • Android Studio 导入 opencv
  • 在线网站做成appdede网站地图样式修改
  • 全新尚界H5凭借HUAWEI XMC数字底盘引擎技术,让湿滑路面也“稳”操胜券
  • iOS 26 性能测试实战,如何评估启动速度、CPUGPU 负载、帧率与系统资源适配(uni-app 与 iOS 原生应用性能方案)
  • 腾讯会议→微课操作
  • html原生表格,实现左侧列固定
  • Idea提高开发效率的快捷键最佳学习方式
  • 做网站一定需要icp么中国建设协会官网
  • Selenium使用教程
  • 多线程——单例模式
  • 镜头调焦的 调整的是焦距还是像距?
  • (四)React+.Net+Typescript全栈(错误处理)
  • @ant-design/icons-vue 打包成多格式库
  • 什么是营销型网站?杭州建设教育网站
  • C++开发环境(VSCode + CMake + gdb)
  • JAVA CodeX精选实用代码示例
  • 肥东网站建设南京医院网站建设
  • Qt 多线程解析
  • ZooKeeper与Kafka分布式:从基础原理到集群部署
  • 免费网站服务器安全软件下载wordpress权限设置方法
  • three.js射线拾取点击位置与屏幕坐标映射
  • AutoMQ × Ververica:打造云原生实时数据流最佳实践!
  • Laravel5.8 使用 snappyPDF 生成PDF文件
  • 自己做网站的图片手机芒果tv2016旧版
  • L4 vs L7 负载均衡:彻底理解、对比与实战指南
  • wordpress站群软件自己的网站怎么赚钱
  • 零知IDE——基于STM32F407VET6和MCP2515实现CAN通信与数据采集
  • 若依框架-Spring Boot
  • 全新 CloudPilot AI:嵌入 Kubernetes 的 SRE Agent,降本与韧性双提升!
  • 自建网站推广的最新发展wordpress同步到报价号