牛津大学xDeepMind 自然语言处理(1)

牛津大学xDeepMind 自然语言处理 Natural Language Processing

词向量与词汇语义学 Word Vectors and Lexical Semantics
  1. 词语表示的基本问题与分布语义思想
    1. 传统词语表示(如独热向量)存在稀疏、正交、语义弱的问题,无法表达语义相似性。
    2. 分布语义核心思想:“观其伴而知其词”,即基于词语的上下文 / 使用场景生成稠密向量表示,主要方法分为基于计数、基于预测和基于任务三类。
  2. 基于计数的方法
    1. 核心流程:定义上下文词汇基C和窗口大小w,统计在语料库中,每个目标词的每个实例左右w个词范围内,上下文词汇基的出现次数,基于这些计数,形成目标词的向量表示。
    2. 相似性度量:常用内积或余弦相似度(余弦对范数不敏感,更优)。
    3. 优化:需区分信息量高的计数和高频噪声,常用 TF-IDF、PMI 等归一化方法,但存在上下文基选择等问题。
  3. 神经嵌入模型
    1. 通用思路:收集词语实例及其上下文,定义可微的分数函数和损失,通过优化得到嵌入矩阵 E。
    2. 典型模型:
      1. C&W 模型(conv+MLP):通过卷积和 MLP 处理句子嵌入,用干扰句和铰链损失训练,能捕捉相邻表示信息,但模型深、训练成本高。
      2. CBoW 模型(Transform+softmax):将上下文词嵌入相加后投影到词汇表,用 softmax 和负对数似然训练,全线性、速度快,有负采样等变体。
      3. Skip-gram 模型(Transform+softmax):用目标词预测上下文词,嵌入目标词后投影,效率高,需在效率和上下文结构化之间权衡。
  4. 神经模型与基于计数模型的比较
    1. 核心思想一致,Word2Vec 等价于基于计数模型的 PMI 矩阵分解。
    2. 经适当超参数优化后,两者性能相当。
  5. 神经方法的优势
    1. 易于学习,支持高度并行(小批量、GPU、分布式训练)。
    2. 可预测上下文的离散(如词性)和连续(如图像)特征,避免计数方法的稀疏性问题。
  6. 词表示的评估
    1. 内在评估:通过 WordSim-353、SimLex-999 等数据集测相似度,词语类比任务(如 “女王 = 国王 - 男人 + 女人”),以及嵌入可视化(T-SNE投影、最近邻)等。
    2. 外在评估:判断嵌入是否能提升其他任务(如分类、情感分析)的性能。
  7. 基于任务的嵌入学习
    1. 核心:将嵌入矩阵 E 作为神经网络参数,与网络其他参数联合训练(可从头学或预训练后微调),使嵌入适应任务需求。
    2. 典型应用:
      1. BoW 分类器:将词向量叠加作为特征,用于情感分析、文档分类等,但无法处理歧义、多义性,语义较浅。
      2. 双语特征学习:通过最大化对齐句子对的相似度(用噪声对比边际损失避免退化),使嵌入反映高层意义,提升跨语言表示能力。
    3. 局限性:任务嵌入仅捕捉任务相关信息,可能缺乏通用语义,可通过多任务学习或预训练 + 任务投影缓解,但存在挑战。
  8. 总结
    1. 词向量是文本神经网络的核心输入,可单独训练、在任务中训练或结合两者。
    2. 迁移学习中,重用预训练词向量适用于数据少或词汇覆盖低的场景;数据充足时,任务内训练嵌入更优,但可重用性降低。
RNN和语言建模
  1. 语言模型基础

    1. 定义:语言模型为词序列分配概率,满足所有可能序列的概率和为 1,可用于比较词序合理性(如翻译、语音识别)。
    2. 核心分解:基于链式法则将联合概率分解为条件概率的乘积,即p(w1,...wN)=∏n=1Np(wn∣w1,...,wn−1)p(w_1,...w_N)=∏^N_{n=1}p(w_n|w_1,...,w_{n-1})p(w1,...wN)=n=1Np(wnw1,...,wn1),核心是学习 “给定历史预测下一词” 的条件分布。
    3. 评估指标:交叉熵(衡量编码文本所需比特数)和困惑度(衡量模型对每个词的惊讶程度,perplexity=2cross−entropyperplexity=2^{cross-entropy}perplexity=2crossentropy)。
    4. 数据注意事项:需区分训练集(过去)和测试集(未来),避免数据泄露;常用数据集包括 Penn Treebank、Billion Word Corpus,WikiText 更优。
  2. 基于计数的 n-gram 语言模型

    1. 马尔可夫假设:用前k-1个词近似历史(k 阶马尔可夫模型),如 2-gram 模型假设p(w1,...,wn)≈p(w1)p(w2∣w1)p(w3∣w2)×...×p(wn∣wn−1)p(w_1,...,w_n)≈p(w_1)p(w_2|w_1)p(w_3|w_2)×...×p(w_n|w_{n-1})p(w1,...,wn)p(w1)p(w2w1)p(w3w2)×...×p(wnwn1)
    2. 概率估计:最大似然估计通过计数计算,如 3-gram 概率p(w3∣w1,w2)=count(w1,w2,w3)/count(w1,w2)p(w_3|w_1,w_2)=count(w_1,w_2,w_3)/count(w_1,w_2)p(w3w1,w2)=count(w1,w2,w3)/count(w1,w2)
    3. 平滑与回退:解决稀疏性问题,如线性插值p(wn∣wn−2,wn−1)=λ3p(wn∣wn−2,wn−1)+λ2p(wn∣wn−1)+λ1p(wn)p(w_n|w_{n-2},w_{n-1})=λ_3p(w_n|w_{n-2},w_{n-1})+λ_2p(w_n|w_{n-1})+λ_1p(w_n)p(wnwn2,wn1)=λ3p(wnwn2,wn1)+λ2p(wnwn1)+λ1p(wn)λ3+λ2+λ1=1λ_3+λ_2+λ_1 = 1λ3+λ2+λ1=1Kneser-Ney 是常用高级方法。
    4. 优缺点:可扩展性强、训练快,但无法捕捉长依赖和语义相似性(如 “cat” 与 “dog”)。
  3. 神经 n-gram 语言模型

    1. 模型结构:用前馈网络处理固定 n-gram 历史(如 trigram 的wn−2,wn−1w_{n-2},w_{n-1}wn2,wn1),通过嵌入层将独热向量转为稠密向量,经隐藏层后用 softmax 输出下一词概率。
    2. 训练:以交叉熵为损失,通过反向传播优化参数,各时间步梯度独立可并行计算。
    3. 优缺点:对未见过的 n-gram 泛化更好,但对已见过的 n-gram 性能略差;模型参数规模小于传统 n-gram,但仍受限于固定 n-gram 长度,无法捕捉长距离依赖,且参数随 n-gram 大小增加而增长。
  4. 循环神经网络语言模型(RNN LM)

    1. 模型结构:抛弃固定 n-gram 历史,通过隐藏状态hn=g(V[xn;hn−1]+c)h_n=g(V[x_n;h_{n-1}]+c)hn=g(V[xn;hn1]+c)压缩整个历史,用y^n=Whn+b\hat{y}_n=Wh_n+by^n=Whn+b和 softmax 输出下一词概率,实现对任意长度历史的建模。
    2. 训练:通过时间反向传播(BPTT)计算梯度,需考虑各时间步梯度的依赖关系;截断时间反向传播(TBPTT)通过固定时间步截断依赖,提高计算效率。
    3. 复杂度与批处理:BPTT 计算量与序列长度线性相关,TBPTT 为常数;批处理在 GPU 上可加速矩阵运算,但序列长度不一致时效率较低。
    4. 优缺点:能表示无限依赖,参数规模不随依赖长度增长(但随隐藏层容量增加);但难以学习长距离依赖,且隐藏层扩大会导致计算和内存成本二次增长。
  5. 偏差与方差权衡

    1. n-gram 模型:偏差高(固定历史近似)但方差低(依赖高频计数)。
    2. RNN 模型:大幅降低偏差(捕捉全历史),但可能增加方差,需通过优化平衡。
  6. 长距离依赖与梯度问题

    1. 核心挑战:简单 RNN 理论上可表示长距离依赖,但实际中因循环权重VhV_hVh的重复乘法导致梯度消失(特征值 <1)或爆炸(特征值> 1),无法有效学习长距离关联。
    2. 非线性影响:激活函数(如 tanh、sigmoid)的导数进一步缩小梯度,加剧问题。
  7. 门控循环网络(LSTM 与 GRU)

    1. LSTM:通过输入门(ini_nin)、遗忘门(fnf_nfn)、输出门(ono_non)和细胞状态cnc_ncn控制信息流动,细胞状态通过加法更新(减轻梯度衰减),隐藏状态hnh_nhn由输出门调制,有效捕捉长依赖。
    2. GRU:简化 LSTM 结构,合并输入门和遗忘门为更新门(znz_nzn),新增重置门(rnr_nrn)控制历史信息的使用,参数更少,计算效率更高。
    3. 优缺点:门控机制显著缓解梯度问题,是神经机器翻译、语音识别等任务的关键;但参数和计算量多于普通 RNN,每个参数的记忆容量较低。
  8. 深度循环神经网络 Deep RNN LMs

    1. 扩展方式:通过增加网络深度(空间维度)或时间维度深度提升表示能力,避免单纯扩大隐藏层导致的二次成本增长。
    2. 典型结构:多层 RNN(空间深度)和循环高速公路网络(时间深度,类似 GRU 的深度单元),在语言建模中表现优异。
  9. 大词汇量处理

    1. 核心瓶颈:softmax 计算p^n=softmax(Whn+b)\hat{p}_n=softmax(Wh_n+b)p^n=softmax(Whn+b)的成本随词汇量VVV线性增长,成为效率瓶颈。
    2. 解决方案:
      1. 短列表与混合模型:高频词用神经 LM,低频词用 n-gram,但损失泛化能力。
      2. 采样与近似梯度:噪声对比估计(NCE)将问题转为二分类,重要性采样(IS)用多分类,降低训练成本但不影响测试。
      3. 词汇分解:一级分类(如布朗聚类)加速V\sqrt{V}V,树结构分解(如二叉树)加速logVlogVlogV,平衡计算效率与性能。
    3. 子词建模:以字符或语素为单位,消除未登录词,捕捉形态特征,但序列更长且依赖距离更远。
  10. 正则化

    Dropout:仅应用于非循环连接,避免循环掩码导致的信息丢失;

    贝叶斯 Dropout 通过绑定循环掩码并在评估时采样,增强泛化。

  11. 总结与核心观点

    1. 长距离依赖:门控网络(LSTM/GRU)是解决梯度问题、捕捉长依赖的主流方案。
    2. 模型扩展:深度 RNN 在空间 / 时间维度扩展,以线性成本提升容量;大词汇量通过分解或采样优化 softmax 效率。
    3. 权衡关系:语言建模需平衡偏差与方差(n-gram vs RNN)、性能与效率(模型容量 vs 计算成本)、泛化与针对性(通用表示 vs 任务适配)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/93644.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/93644.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

StarRocks数据库集群的完整部署流程

目录 依赖环境 下载安装包 部署FE 部署BE 搭建集群 停止集群 依赖环境 详见&#xff1a;StarRocks 部署&#xff1a;依赖环境-CSDN博客 下载安装包 在官方网站下载安装包&#xff1a;StarRocks 部署FE 创建元数据目录。 mkdir -p <meta_dir> 修改 FE 配置文件 f…

简单的 VSCode 设置

以下是我使用的vscode设置。虽然有些主观&#xff0c;但很实用。1 主题。我放弃了那些炫酷的主题。我选择了Tokyo Night (Storm)。理由是&#xff1a;它平静、赏心悦目&#xff0c;并且与代码形成了美丽的对比&#xff0c;却又不显得刺眼。2. 字体。我切换到了 JetBrains Mono …

Rust 条件语句

Rust 条件语句 在编程语言中&#xff0c;条件语句是程序流程控制的重要组成部分。Rust 作为一种系统编程语言&#xff0c;其条件语句的设计简洁而强大。本文将详细介绍 Rust 中的条件语句&#xff0c;包括其语法、用法以及一些高级特性。 1. 基本条件语句 Rust 中的基本条件语句…

【Java EE进阶 --- SpringBoot】初识Spring(创建SpringBoot项目)

乐观学习&#xff0c;乐观生活&#xff0c;才能不断前进啊&#xff01;&#xff01;&#xff01; 我的主页&#xff1a;optimistic_chen 我的专栏&#xff1a;c语言 &#xff0c;Java, Java EE初阶&#xff0c; Java数据结构 欢迎大家访问~ 创作不易&#xff0c;大佬们点赞鼓励…

脑潜在进展:基于潜扩散模型的三维脑磁共振成像个体时空疾病进展研究|文献速递-深度学习人工智能医疗图像

Title题目Brain Latent Progression: Individual-based spatiotemporal diseaseprogression on 3D Brain MRIs via latent diffusion脑潜在进展&#xff1a;基于潜扩散模型的三维脑磁共振成像个体时空疾病进展研究01文献速递介绍神经退行性疾病是现代医疗保健领域最紧迫的挑战之…

专题:2025AI技术应用与发展报告|附600+份报告PDF、数据仪表盘汇总下载

原文链接&#xff1a;https://tecdat.cn/?p43632 当企业管理者看着后台65%的任务被AI自动分配&#xff0c;却仍在为下周的营销方案熬夜改稿时&#xff0c;一个现实的矛盾浮出水面&#xff1a;AI到底能帮企业做什么&#xff1f; 2025年&#xff0c;算法研发投入占企业AI预算的…

【笔记】扩散模型(一一):Stable Diffusion XL 理论与实现

论文链接&#xff1a;SDXL: Improving Latent Diffusion Models for High-Resolution Image Synthesis 官方实现&#xff1a;Stability-AI/generative-models 非官方实现&#xff1a;huggingface/diffusers Stable Diffusion XL (SDXL) 是 Stablility AI 对 Stable Diffusion 进…

学习安卓APP开发,10年磨一剑,b4a/Android Studio

学习安卓APP开发 记得上次学APP都是在2016年前了&#xff0c;一晃就过去了10年。 当时用ANDROID studio打开一个空项目和编绎分别用了300秒&#xff0c;一下就用了10分钟。 后来买了一台一万多的电脑&#xff0c;CPU换成了I5 8600K 4.2GHZ*6核&#xff0c;再加上M2固态硬盘。 编…

调试技巧(vs2022 C语言)

调试之前首先要保证我们的脑袋是清晰的&#xff0c;我们调试的过程主要是看代码有没有按照我们的想法去运行调试最常使用的几个快捷键F5启动调试&#xff0c;经常用来直接跳到下一个断点处&#xff08;F5通常和F9配合使用&#xff0c;打了断点按F5程序可以直接运行到断点处&…

MySQL深度理解-Innodb底层原理

1.MySQL的内部组件结构大体来说&#xff0c;MySQL可以分为Server层和存储引擎层两部分。2.Server层Server层主要包括连接器、查询缓存、分析器、优化器和执行器等&#xff0c;涵盖MySQL的大多数核心服务功能&#xff0c;以及所有的内置函数&#xff08;如日期、时间、数据和加密…

QFtp在切换目录、上传文件、下载文件、删除文件等一系列操作时,如何按照预期操作指令顺序执行

FTP服务初始化时&#xff0c;考虑到重连、以及commandFinished信号信号执行完成置m_bCmdFinished 为true; void ICore::connectFtpServer() {if(g_pFile nullptr){g_pFile new QFile;}if(g_pFtp){g_pFtp->state();g_pFtp->abort();g_pFtp->deleteLater();g_pFtp n…

JavaSE高级-02

文章目录1. 多线程1.1 创建线程的三种方式多线程的创建方式一&#xff1a;继承Thread类多线程的创建方式二&#xff1a;实现Runnable接口多线程的创建方式三&#xff1a;实现Callable接口三种线程的创建方式对比Thread的常用方法1.2 线程安全线程同步方式一&#xff1a;同步代码…

从舒适度提升到能耗降低再到安全保障,楼宇自控作用关键

在现代建筑的发展历程中&#xff0c;楼宇自动化控制系统&#xff08;BAS&#xff09;已从单纯的设备管理工具演变为集舒适度优化、能耗控制与安全保障于一体的核心技术。随着物联网和人工智能的深度应用&#xff0c;楼宇自控系统正以数据为纽带&#xff0c;重构人与建筑的关系。…

图像分类精度评价的方法——误差矩阵、总体精度、用户精度、生产者精度、Kappa 系数

本文详细介绍 “图像分类精度评价的方法”。 图像分类后&#xff0c;需要评估分类结果的准确性&#xff0c;以判断分类器的性能和结果的可靠性。 常涉及到下面几个概念&#xff08;指标&#xff09; 误差矩阵、总体精度、用户精度、生产者精度和 Kappa 系数。1. 误差矩阵&#…

【科普向-第一篇】数字钥匙生态全景:手机厂商、车厂与协议之争

目录 一、协议标准之争&#xff1a;谁制定规则&#xff0c;谁掌控入口 1.1 ICCE&#xff1a;中国车企主导的自主防线 1.2 ICCOA&#xff1a;手机厂商的生态突围 1.3 CCC&#xff1a;国际巨头的高端壁垒 1.4 协议对比 二、底层技术路线&#xff1a;成本与安全的博弈 2.1B…

dockerfile及docker常用操作

1: docker 编写 Dockerfile 是用于构建 Docker 镜像的文本文件&#xff0c;包含一系列指令和参数&#xff0c;用于定义镜像的构建过程 以下是关键要点&#xff1a; 一、基本结构 ‌FROM‌&#xff1a;必须作为第一条指令&#xff0c;指定基础镜像&#xff08;如 FROM python:3.…

[vibe coding-lovable]lovable是不是ai界的复制忍者卡卡西?

在火影忍者的世界里&#xff0c;卡卡西也被称为复制忍者&#xff0c;因为大部分忍术都可以被其Copy! 截图提示:实现这个效果 -> 发给Lovalbe -> 生成的的效果如下&#xff0c;虽然不是1比1还原&#xff0c;但是这个效果也很惊艳。 这个交互设计&#xff0c;这个UI效果&am…

技术赋能安全:智慧工地构建城市建设新防线

城市建设的热潮中&#xff0c;工地安全始终是关乎生命与发展的核心议题。江西新余火灾等事故的沉痛教训&#xff0c;暴露了传统工地监管的诸多短板——流动焊机“行踪难觅”&#xff0c;无证动火作业屡禁不止&#xff0c;每一次监管缺位都可能引发灾难性后果。如今&#xff0c;…

Sublime Text 代码编辑器(Mac中文)

原文地址&#xff1a;Sublime Text Mac 代码编辑器 sublime text Mac一款轻量级的文本编辑器&#xff0c;拥有丰富的功能和插件。 它支持多种编程语言&#xff0c;包括C、Java、Python、Ruby等&#xff0c;可以帮助程序员快速编写代码。 Sublime Text的界面简洁、美观&#…

如何制定项目时间线,合理预计?

制定一份现实可行且行之有效的项目时间线&#xff0c;是一个系统性的分解、估算与排序过程&#xff0c;而非简单的日期罗列。核心步骤包括&#xff1a;明确项目范围与可交付成果、利用工作分解结构&#xff08;WBS&#xff09;进行任务拆解、科学估算各项任务的持续时间、识别并…