ELMo——Embeddings from Language Models原理速学

参考视频:词向量 | ELMO | 原理简介+代码简析_哔哩哔哩_bilibili

研究背景

传统的词向量表示:一个单词对应一个固定的向量,尽管一个单词可能存在多个含义

解决方案

  1. 一个词拥有多个词向量表示
  1. 利用subword信息
  1. 基于语境的向量表示 (ELMo)

什么是语言模型?

用来计算一个句子序列是不是一个拥有真正语句含义的概率。

  1. 前向语言模型

计算当前词语对前面词语依赖关系:先计算t1出现的概率 * t1出现前提下t2出现的概率 * ...

  1. 后向语言模型
  1. 双向语言模型(ELMo) = 前向 + 后向

LSTM

LSTM(Long Short-Term Memory) 是一种特殊的循环神经网络(RNN) ,由Hochreiter & Schmidhuber于1997年提出,专门用于解决传统RNN的长期依赖问题(即难以学习远距离时序信息的问题)。

前向LSTM

初始token e1 -->LSTM--->隐藏的输出向量(LSTM中)-->分类层---> 第二个token t2

初始token e2 + 前一个LSTM中的隐藏输出向量 --> LSTM ---> 分类层 ---> 第三个token t3

后向LSTM

双向Bi-directional LSTM

ELMo

使用的是两层Bi-LSTM

输入token e1 + 两层LSTM中的隐层向量(每一层因为是双向也有两个隐藏向量)= 5 个向量表示

相当于一个词语 = 2*层数 + 1 个向量表示。

具体用的哪一个表示?

EMLo用的加权和的方式,综合所有层的向量,给每个向量赋予不同的权重。

底层更多蕴含句法上的特征信息;顶层蕴含更多语义信息。

ELMo局限性

  1. 基于LSTM架构导致:
  • 计算复杂度高:ELMo使用双向LSTM(长短期记忆网络)作为基础架构,LSTM的序列依赖性导致训练和推理速度较慢,尤其是在处理长文本时。
  • 并行化困难:LSTM需要按时间步顺序计算,当前输入依赖上一时刻的输出,无法像Transformer那样充分利用GPU的并行计算能力,训练效率较低。
  1. ELMo对上下文信息仅使用的简单拼接

ELMo的双向上下文信息是通过独立的前向LSTM和反向LSTM输出的直接拼接(concat)实现的,而非真正的交互式融合。这导致:

  • 前向和反向LSTM的训练过程完全独立,无法在每一层动态交互(如BERT的Self-Attention可以同时关注前后文)。
  • 上下文信息的整合是静态的(预训练后固定),无法根据具体任务动态调整权重。
  1. 分层权重固定

ELMo对不同层LSTM的输出进行线性加权,但这些权重在预训练后固定,微调时仅能调整全局缩放因子,灵活性不足。

相关推荐
北京耐用通信9 分钟前
全域适配工业场景耐达讯自动化Modbus TCP 转 PROFIBUS 网关轻松实现以太网与现场总线互通
网络·人工智能·网络协议·自动化·信息与通信
火山引擎开发者社区12 分钟前
TRAE × 火山引擎 Supabase:为你的 AI 应用装上“数据引擎”
人工智能
小a彤40 分钟前
GE 在 CANN 五层架构中的位置
人工智能·深度学习·transformer
前端若水1 小时前
会话管理:创建、切换、删除对话历史
前端·人工智能·python·react.js
Upsy-Daisy1 小时前
AI Agent 项目学习笔记(八):Tool Calling 工具调用机制总览
人工智能·笔记·学习
企学宝1 小时前
企学宝5月专题课程丨《OpenClaw AI 智能体实战营:从零基础部署到全场景自动化落地》
人工智能·ai·企业培训
冬奇Lab2 小时前
让 AI Agent 更可靠:Harness Engineering 与多 Agent 系统工程实践
人工智能·llm·agent
放下华子我只抽RuiKe52 小时前
React 从入门到生产(四):自定义 Hook
前端·javascript·人工智能·深度学习·react.js·自然语言处理·前端框架
想你依然心痛2 小时前
HarmonyOS 6(API 23)实战:基于悬浮导航、沉浸光感与HMAF的“文思智脑“——PC端AI智能体沉浸式智能写作工作台
人工智能·ar·harmonyos·ai写作
冬奇Lab2 小时前
一天一个开源项目(第108篇):Andrej Karpathy Skills - 用一个 CLAUDE.md 文件修复 LLM 编码的四个顽疾
人工智能·开源·资讯