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

大语言模型中one-hot编码和embedding之间的区别?

1. 维度与稀疏性
One-Hot编码

定义:每个词被表示为一个高维稀疏向量,维度等于词汇表大小。例如,词汇表有10,000个词,每个词对应一个10,000维的向量,其中仅有一个位置为1(表示当前词),其余为0。
缺点:
维度灾难:词汇表越大,向量维度越高,导致存储和计算成本激增。
稀疏性:向量中大部分元素为0,难以有效利用数据中的统计规律。
Embedding

定义:将词映射到一个低维稠密向量(如300维),所有元素均为实数。
优点:
低维稠密:显著降低计算复杂度,适合深度学习模型。
可学习性:向量值通过训练动态调整,捕捉词之间的语义关系。
2. 语义信息
One-Hot编码

无语义关联:所有词向量相互正交(点积为0),无法表达词之间的相似性。例如,“猫”和“狗”的One-Hot向量无任何关联。
Embedding

语义捕捉:通过训练,语义或语法相似的词在向量空间中距离更近。例如,“猫”和“狗”的向量可能在高维空间中邻近。
上下文感知:在Transformer等模型中,Embedding可结合位置编码,动态适应不同上下文(如“苹果”在“水果”和“公司”中的不同含义)。
3. 计算效率
One-Hot编码

矩阵运算低效:与神经网络权重矩阵相乘时(如全连接层),需要处理高维稀疏矩阵,计算资源浪费严重。
Embedding

高效计算:通过查表(Lookup Table)直接获取低维向量,避免了高维矩阵乘法。例如,词汇表索引i直接映射到嵌入矩阵的第i行。
4. 参数数量
One-Hot编码

参数爆炸:若词汇表大小为V,模型输入层到第一隐藏层的权重矩阵尺寸为V × H(H为隐藏层大小),当V=10^5时,参数数量极大。
Embedding

参数可控:嵌入矩阵尺寸为V × D(D为嵌入维度,通常D=300),参数量远小于One-Hot方案。例如,V=10^5, D=300时仅需3千万参数。
5. 应用场景
One-Hot编码

传统机器学习(如逻辑回归、SVM)中的简单特征表示。
类别型数据预处理(如标签编码)。
Embedding

几乎所有深度学习模型(如RNN、CNN、Transformer)的标配。
支持迁移学习(如复用预训练的Word2Vec、BERT嵌入)。
直观对比示例
One-Hot:
猫 → [0, 0, 1, 0, …, 0](10,000维)
狗 → [0, 1, 0, 0, …, 0](10,000维)

Embedding:
猫 → [0.2, -0.5, 1.3, …, 0.7](300维)
狗 → [0.3, -0.4, 1.1, …, 0.6](300维)

总结
特性 One-Hot编码 Embedding
维度 高维稀疏(V维) 低维稠密(D维,D≪V)
语义信息 无 可捕捉语义和语法关系
计算效率 低(稀疏矩阵运算) 高(直接查表)
参数数量 巨大(V×H) 较小(V×D)
主要用途 传统机器学习、简单分类 深度学习、语义相关任务
在大语言模型中,Embedding因其高效性和语义表达能力成为主流,而One-Hot编码仅在某些特定场景(如输出层的概率分布)中保留符号意义。


http://www.kler.cn/a/553287.html

相关文章:

  • docker 安装 Rabbitmq 详解
  • linux使用
  • 【C语言】fwrite函数用法介绍
  • Kafka消息服务之Java工具类
  • 【组态PLC】基于博图V16和组态王六层双部电梯组态设计【含PLC组态源码 M008期】
  • 全新的Android UI框架Jetpack Compose
  • 深度学习在遥感影像分析中的应用:地物分类、目标识别、图像分割
  • Bigemap Pro如何设置经纬网出图网格设置
  • 玩机日记 10 群晖开启文件服务挂载到手机/电脑,测试传输性能
  • 用 Biome 替代 ESLint 和 Prettier
  • SpringBean生命周期的执行流程
  • Oracle 迁移到 PostgreSQL
  • Cloud之快照存储(Cloud Snapshot Storage)
  • 近地面无人机植被定量遥感与生理参数反演
  • Python基于机器学习的新闻文本分类系统(附源码,文档说明)
  • 迪威模型网:免费畅享 3D 打印盛宴,科技魅力与趣味创意并存
  • 【JavaEE进阶】MyBatis通过XML实现增删改查
  • 【从0做项目】Java搜索引擎(8) 停用词表 正则
  • 2015年下半年试题二:论软件系统架构风格
  • C++类与对象深度解析(一):从引用、内联函数到构造析构的编程实践