自然语言处理NLP - 第8章 词向量与神经网络:从手工特征到学习表示

8.1 One-hot表示为什么不够

词表有10000个词时,One-hot为每个词创建10000维向量,只有对应位置为1,其余为0。它能唯一标识词,却不能自然表达"电梯"和"升降设备"的相近关系。词表越大,表示越稀疏。

Embedding把离散ID映射为较低维的稠密向量,向量值通过学习获得。每个坐标通常不能直接解释成"紧急程度"或"设备类型";语义分布在多维组合中,不是一本逐维写好含义的词典。

8.2 Word2Vec的核心直觉

如果两个词经常出现在类似上下文中,它们可能具有相似的用法。CBOW利用周围词预测中心词,Skip-gram利用中心词预测周围词。通过这类训练目标,模型学习到可用于相似度等任务的词表示。

静态词向量通常为一个词提供一份表示,所以"苹果"的水果义和品牌义会混在一起。上下文化模型则根据当前句子生成表示,让同一个Token在不同语境中得到不同向量。

8.3 神经网络怎样做文本分类

一种简单结构是:Token ID进入Embedding层,得到一串向量;对向量做平均池化,得到句子向量;经过线性层和Softmax,输出类别分布。训练时根据正确类别计算损失,让各层参数共同调整。

平均池化容易丢失顺序,例如"不是坏了"和"坏了"可能较难区分。更复杂模型的价值之一,就是更好地表示上下文、组合关系和位置,而不只是扩大向量维数。

8.4 CNN、RNN、LSTM和GRU

文本CNN用局部窗口捕捉短语模式,有点像自动学习的N-gram特征提取器。RNN按顺序读取Token,用隐藏状态传递历史信息;长序列中,训练可能受到梯度消失或爆炸等问题影响。

LSTM和GRU通过门控机制控制信息的保留、更新与遗忘,缓解普通RNN的长期依赖困难,但不能保证任意远距离的信息都被完好保留。序列步骤之间的依赖也会限制训练并行程度。

8.5 Seq2Seq与注意力的出现

Seq2Seq用编码器表示输入,再由解码器生成输出,例如把中文翻译成英文。早期结构若把整个输入压进单个固定向量,长句信息容易受限。注意力让解码器在生成不同位置时,能够重新访问输入的不同部分。

把注意力想成"每一步给相关内容不同权重"是一个有用起点,但不要把它等同于人类专注。权重是根据训练目标学出的数值,并不自动等于因果解释。

8.6 本章检查点

词向量与句向量有什么区别?前者表示词或Token,后者表示整段文本。不能随便把某个模型的第一个Token向量当作高质量检索向量;需要符合该模型的训练方式、池化方式及使用约定。

相关推荐
视觉小萌新16 小时前
AI Class 3 · Chapter 1:变量、字符串、list/dict、if/for(python学习-小白版-有经验可跳过)
python·学习·list
小豆庄16 小时前
本地视频打码:多模型检测、帧间追踪与18种模糊的选型
opencv·目标检测·ai·自然语言处理·音视频·视频
yyyang8819 小时前
蓝牙系统整体架构详解
学习·信息与通信
Linux-lucky19 小时前
46-Linux学习之旅之LVS负载均衡与keepalived高可用
linux·运维·学习·ubuntu·负载均衡·lvs
程序猿编码21 小时前
解决 LLM 算力浪费,一套统一 KV 管理层实现缓存复用
人工智能·神经网络·机器学习·缓存·llm·大模型推理
金色光环21 小时前
【DSP学习】C2000_ADC中断_笔记
笔记·学习
Дерек的学习记录21 小时前
Unreal Engine 5:第三人称运动系统和人物动画
开发语言·学习·ue5
zhangrelay21 小时前
mrpt杂乱笔记-26-10-31
笔记·学习
衡石科技1 天前
让多轮问数保持口径一致:Data Agent 的上下文、偏好与学习开关
人工智能·学习·安全
東隅已逝,桑榆非晚1 天前
算法2. 双指针法-复写零
c++·笔记·学习·算法