首页 > 其他分享 >[NLP] One-Hot编码

[NLP] One-Hot编码

时间:2024-09-09 22:15:14浏览次数:10  
标签:NLP 词汇 独热 编码 词汇表 燃爆 Hot

1 One Hot 编码

1.1 定义

  • One-Hot编码,又称独热编码。从方法性质上讲,它是一种向量表示方法,属于自然语言处理领域中的词袋模型

独热编码方法使用N状态寄存器对N个状态进行编码,每个状态都有独立的寄存位;并且在任意时候,N为状态寄存器中都仅有一位有效状态,该位的状态值则表征了一枚特征数据

  • 由于一条1xN维的特征向量中的仅一位是有效位1,其它为无效位0的这种特质,决定了通过One-Hot编码得到的特征向量一定是离散稀疏的一维向量。

1.2 案例

举例阐述

  • 以2019年5月31日的一则报道的新闻内容中的两条句子 “方大特钢公司二号高炉煤气管道发生燃爆事故”,“事故中,一名员工死亡,九名员工受伤”作为一份语料库,经过分词后,得到词汇表vocabulary

vocabulary=[ “方大特钢”,”公司”,”二号”,”高炉”,”煤气”,”管道”,”发生”,”燃爆”,”事故”, ”中”,”一”,”名”,”员工”,”死亡”,”九”,”受伤” ]

可见词汇表表长为16。

  • 词汇表基础上进行one-hot编码,得到如下结果:
词汇及对应的One-Hot编码 词汇及对应的One-Hot编码
“方大特钢” = [1,0,0,0,0,0,0,0,0,0,0,0,0,0,0] “公司”=[0,1,0,0,0,0,0,0,0,0,0,0,0,0,0]
“二号”= [0,0,1,0,0,0,0,0,0,0,0,0,0,0,0] “高炉”= [0,0,0,1,0,0,0,0,0,0,0,0,0,0,0]
“煤气”= [0,0,0,0,1,0,0,0,0,0,0,0,0,0,0] “管道”=[0,0,0,0,0,1,0,0,0,0,0,0,0,0,0]
“发生”= [0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0] “燃爆”= [0,0,0,0,0,0,0,1,0,0,0,0,0,0,0]
“事故”= [0,0,0,0,0,0,0,0,1,0,0,0,0,0] “中”= [0,0,0,0,0,0,0,0,0,1,0,0,0,0,0]
“一”=[0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0] “名”=[0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0]
“员工”=[0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0] “死亡”=[0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0]
“九”=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1] “受伤”=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1]

那么,原新闻的两段文本可以分别向量表示为:

  • [1,1,1,1,1,1,1,1,1,0,0,0,0,0,0]
  • [0,0,0,0,0,0,0,0,1,1,1,1,1]
  • 词汇表足够大,则: 每句话、每段文本内容都可以用one-hot的词汇编码进行句子向量表示。

1.2 优缺点

优点

  • 其一,解决了文本分类等领域中不好直接处理文本数据、离散数据的问题;
  • 其二,在一定程度上,起到了扩充特征的作用。

缺点

然而,独热编码方法可不忽视的缺点也赫然存在:

  • 其一,“词汇鸿沟”现象。

独热编码假设了词汇词汇之间相互独立,却忽略了大多数情况下,词汇与词汇之间是相互联系、相互影响的,这种脱离了上下文语义的数学表示必然存在着“词汇鸿沟”这一问题,必然为后续的数据挖掘应用埋下隐患。

  • 其二,维数灾难

随着语料集的扩张,词汇表必然跟着扩张,而跟着随词汇表扩张同样的独热编码的维数大小过长,一定会在进行后续的运算上带来巨大的计算压力,尤其是在基于神经网络的需要海量训练与运算的深度学习领域。

标签:NLP,词汇,独热,编码,词汇表,燃爆,Hot
From: https://www.cnblogs.com/johnnyzen/p/18405391

相关文章

  • 编码规范&阅《数学之美》有感
    作为计算机专业的大学生在深入学习编写代码前,我认为应当了解一些大公司内部编码规范的核心要素,遵守这些编码规范不仅有助于提高代码质量,而且也是专业发展的必要条件。通过这些规范,可以更好地帮助自己打牢基础,养成良好的编程习惯,同时也为日后进入职场做准备,以适应不同公司的编程文......
  • Vue2 和 Vue3 的区别(设计理念、性能提升、编码方式以及特性)
    Vue2和Vue3是Vue.js框架的两个主要版本,虽然它们具有许多相似之处,但也有一些重要的区别。下面是Vue2和Vue3之间的一些区别:设计理念:Vue2采用的是基于对象的设计理念,通过使用OptionsAPI来组织组件的相关选项(data、methods、computed、watch等)。Vue3采用的是基于函数的设计理念......
  • Adobe Photoshop发展简史及下载
    AdobePhotoshop的发展史充满了创新和进化,从最初的简单图像处理程序发展为今天功能强大的全球顶尖图像编辑软件。以下是其详细的发展历程:相关软件【rjqjf.com】1.起源与早期开发(1987-1989年)1987年:ThomasKnoll,一位密歇根大学的博士生,开发了一个名为“Display”的程序,用于显......
  • 程序员一定会感兴趣的5个关于编码助手话题
    ......
  • adobephotoshop软件下载-最佳免费办公软件下载指南
    adobephotoshop软件下载-最佳免费办公软件下载指南AdobePhotoshop软件下载-最佳免费办公软件下载指南引言在当今数字化时代,图像处理和设计已经成为各行各业不可或缺的一部分。AdobePhotoshop作为全球最受欢迎的图像编辑软件,广泛应用于平面设计、摄影、网页设计、视频制作等领域......
  • STM32 TIM编码器接口测速(最详细的编码器接口笔记)
    编码器接口简单介绍方波的频率其实就代表了速度编码器接口测速原理TIM编码器测速本质上就是测频法,在指定时间内,对高电平信号进行计次编码器接口的设计逻辑就是,首先把A相和B项的所有边沿作为计数器的计数时钟,出现边沿信号的时候,就自增或者自减,如何判断自增还是自减?当出现......
  • 2025秋招NLP算法面试真题(十九)-大模型分布式训练题目
    分布式训练题目1.理论篇1.1训练大语言模型存在问题?计算资源需求**:**训练大型语言模型需要大量的计算资源,包括高端GPU、大量的内存和高速存储器。这可能限制了许多研究人员和组织的训练能力,因为这些资源通常很昂贵。数据需求**:**训练大型语言模型需要大规模的数......
  • 2025秋招NLP算法面试真题(十八)-大模型训练数据格式常见问题
    1.SFT(有监督微调)的数据集格式?对于大语言模型的训练中,SFT(SupervisedFine-Tuning)的数据集格式可以采用以下方式:输入数据:输入数据是一个文本序列,通常是一个句子或者一个段落。每个样本可以是一个字符串或者是一个tokenized的文本序列。标签数据:标签数据是与输入数据对应的......
  • 程序员一定会感兴趣的5个关于编码助手话题
    采访了一些人使用编码助手的感受,有代码高手,有知识达人,有希望维护世界和平的学者,有每天搬砖的牛马,总结几个让我印象深刻的描述话题:程序员也是灵感工作者:开发一个工程,从灵感萌芽到作品诞生,是一个复杂的系统工程,从技术创意的灵感一瞬,到高效的调研和方案整理,到团队分工和无缝协作......
  • PhotoZoom Pro 9真的可以图像无损放大可能吗?
     PhotoZoomPro9是一款非常精悍的图片无损放大,且放大不失真的图片处理软件。它是一款采用国际领先插值算法的新颖的、技术上具有革命性的对数码图片无损放大的工具。PhotoZoomPro9全新版本震撼来袭无损放大照片,无与伦比的画质效果。强大易用的软件界面, 清晰小图......