独热编码和词向量的简单理解

news2024/11/22 6:18:04

把单词用向量表示,是把深度神经网络语言模型引入自然语言处理领域的一个核心技术。想要让机器理解单词,就必须要把它变成一串数字(向量)。下面介绍的 One-Hot Encoding(One-Hot 编码)和 Word Embedding (词嵌入)和就是把单词变成向量的两类方法。

one-hot encoding

one-hot representation把每个词表示为一个长向量。这个向量的维度是词表大小,向量中只有一个维度的值为1,其余维度为0,这个维度就代表了当前的词。
例如:
苹果 [0,0,0,1,0,0,0,0,0,……]
one-hot representation相当于给每个词分配一个id,对于独热表示的向量,如果采用余弦相似度计算向量间的相似度,可以明显的发现任意两者向量的相似度结果都为 0,即任意二者都不相关,也就是说独热表示无法解决词之间的相似性问题。另外,one-hot representation将会导致特征空间非常大,但也带来一个好处,就是在高维空间中,很多应用任务线性可分。


word embedding

word embedding指的是将词转化成一种分布式表示,又称词向量。深度学习应用在自然语言处理当中的时候,基本都会通过词向量的方式将one-hot编码的向量,转换为词向量。词向量就是用一个向量来表示一个单词,可以理解为神经网络语言模型的副产品。

假设有一个词的独热编码w1[1,0,0,0],w1*Q = c1, c1就是新的词向量(one-hot也是一种向量的表示)。Embedding = 参数矩阵 × One-hot向量

word embedding 将 one-hot encoding 的向量映射到一个新的空间,embedding可以把序号映射成低维稠密向量,比one-hot的高维稀疏向量要好。

优点:

  1. 词之间存在相似关系:
    是词之间存在“距离”概念,这对很多自然语言处理的任务非常有帮助。
  2. 包含更多信息:
    词向量能够包含更多信息,并且每一维都有特定的含义。在采用one-hot特征时,可以对特征向量进行删减,词向量则不能。

说到embedding就不得不说说word2vector(一种神经网络语言模型,主要用来得到词向量)了,word2vector做法即为embedding的过程,这个可以扩展到推荐中的item2vector 。word2vec:

1.可以看作是多分类任务

2.浅层神经网络

3.数据构造模式:cbow、skip-gram模式

在这里插入图片描述



参考:

https://blog.csdn.net/mawenqi0729/article/details/80698350

https://blog.csdn.net/yunxiu988622/article/details/105816731

https://blog.csdn.net/Alex_81D/article/details/114287498

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

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

相关文章

【LittleXi】2023 ICPC ECfinal 出线 官方数据 民间预测

【LittleXi】2023 ICPC ECfinal 出线 官方数据 民间预测 说明: 参考去年、前年上海大学,设置210出线队伍 对6场区域赛(不含港澳)走Z字,每个学校最多三支队伍出线 字符串问题,可能会有几个名额失真,比如南…

【unity】【WebRTC】从0开始创建一个Unity远程媒体流app-设置输入设备

【项目源码】 包括本篇需要的脚本都打包在项目源码中,可以通过下面链接下载: 【背景】 目前我们能投射到远端浏览器(或者任何其它Peer)的媒体流只有默认的MainCamera画面,其实我们还可以通过配置输入来传输操作输入信息,比如键鼠等。 【追加input processing组件】 …

PyCharm控制台堆栈乱码问题解决

目录 1、问题描述2、问题原因3、问题解决 1、问题描述 PyCharm环境都已经配置成了UTF-8编码,控制台打印中文也不会出现乱码,但报错堆栈信息中如果有中文会出现中文乱码: 这种该怎么解决呢? 2、问题原因 未将PyCharm编码环境与项目…

Redis - 主从集群下的主从复制原理

主从复制过程 数据同步演变过程 sync 同步 Redis 2.8 版本之前,首次通信成功后, slave 会向 master 发送 sync 数据同步请求。然后 master 就会将其所有数据全部发送给 slave ,由 slave 保存到其本地的持久化文件中。这个过 程…

10个前端开发不容错过的工具网站

作为开发人员,我们经常寻找合适的工具和资源来帮助日常开发工作。但是很多好用的工具网站尤其是国外的网站很多人都错过了。 这里我整理了一份包含 10 个网站的列表,这些网站或许可以帮助到作为前端开发者的你。 1、MDN Web 文档 MDN文档无疑是 Web 开…

Echarts Y轴自定义设置图片

如图Y轴有文字和图片,1-3的图片不同,后面的是特定的css 样式;实现代码 yAxis: {type: category,inverse: true,boundaryGap: false,axisTick: { show: false }, // 是否展示标记点axisLine: { show: false },axisLabel: {// 坐标轴的标签// f…

C++ Qt开发:CheckBox多选框组件

Qt 是一个跨平台C图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍CheckBox单行输入框组件的常用方法及灵活运用…

京东数据平台有哪些-怎么获取京东数据-京东竞品数据分析工具

如今,许多在线上经营的电商品牌方都着手于去做竞品分析,毕竟竞品分析对品牌的品牌运营及品牌战略决策来说有多种好处,包括但不限于:了解市场需求,把握市场竞争格局;了解竞品推广及营销策略;了解…

【Linux】探索Linux进程优先级 | 环境变量 |本地变量 | 内建命令

最近,我发现了一个超级强大的人工智能学习网站。它以通俗易懂的方式呈现复杂的概念,而且内容风趣幽默。我觉得它对大家可能会有所帮助,所以我在此分享。点击这里跳转到网站。 目录 一、进程优先级1.1优先级VS权限1.2为什么要有进程优先级&am…

低成本物联网安全芯片ACL16_S 系列,可应用物联网认证、 SIM、防抄板和设备认证等产品上

ACL16_S 芯片是针对物联网认证、 SIM、防抄板和设备认证需求推出的高安全芯片。芯片采用 32 位 ARMCortex™-M0 系列内核,片内集成多种安全密码模块,包括 RSA/ECC DES/TDES、 SHA-1/-256、 AES-128/-192/-256 等国际安全算法,支持真随机数发…

AtCoder Beginner Contest 332 A~F

A.Online Shopping(计算) 题意: 需要购买 N N N种物品,第 i i i种物品的价格为 P i P_i Pi​,且第 i i i件物品需买 Q i Q_i Qi​件。 商店满 S S S元包邮,不满则需支付 K K K元邮费,问需支付多少钱。 分析&#x…

『 Linux 』进程地址空间存在的意义

文章目录 前言🦕🦖 防止进程对物理内存的非法(危险)访问🦖 进程管理模块与内存管理模块的解耦合🦖 实现进程间的独立性 前言🦕 在文章『 Linux 』进程地址空间概念中提到了进程地址空间的部分概念; 这部分概念主要围绕…

设计模式—观察者模式

观察者模式(Observer Pattern)是一种行为型设计模式,它定义了一种一对多的依赖关系,使得当一个对象的状态发生变化时,所有依赖于它的对象都会得到通知并自动更新。 在观察者模式中,有两个核心角色&#xf…

vue-如何实现带参数跳转页面

文/朱季谦 在vue框架的前端页面上,若要实现页面之间的带参数跳转,可参考以下实现过程: 例如,点击截图中的“查看试卷”,可实现带参跳转到相应的试卷页面,该功能类似查看试卷的详情页面: 假如以…

C#多线程总结

目录 前言 一、异步线程 使用async和await关键字 基于委托实现 二、同步线程 三、Thread线程 开启线程 设置线程优先级 Thread拓展封装 四、ThreadPool线程池 常规使用 设置线程数 线程等待 Thread和ThreadPool比较 通过线程池做一些扩展(定时器类&am…

解析视频美颜SDK的算法:美肤、滤镜与实时处理

如今,美颜技术在视频处理中扮演着关键的角色,为用户提供更加精致的视觉体验。本文将深入探讨视频美颜SDK的算法,聚焦于美肤、滤镜与实时处理等方面,揭示背后的科技奥秘。 一、美肤算法的魅力 视频美颜的一个核心功能就是美肤&am…

被央视报道过的AIGC产品-贝塔创作(BetaCreator)使用指南

产品地址:betacreator.com 真人图 人台图 商品图 商品变色 建议使用浅色服装进行变色,效果更好 如果没有浅色服装,可以先把服装颜色变为白色

redis-学习笔记(Jedis 前置知识)

自定义的 Redis 客户端 咱们可以实现编写出一个自定义的 Redis 客户端 因为 Redis 公开了自己使用的自定义协议 ---- RESP 协议清楚了, 那么通信数据格式就清除了, 就能完成各层次之间的数据传输, 就能开发服务器和客户端 RESP — Redis 的 序列化 协议 特点: 简单好实现快读进…

App防止恶意截屏功能的方法:iOS、Android和鸿蒙系统的实现方案

防止应用被截图是一个比较常见的需求,主要是出于安全考虑。下面将分别为iOS(苹果系统)、Android(安卓系统)及HarmonyOS(鸿蒙系统)提供防止截屏的方法和示例代码。 在企业内部使用的应用中&…

python学习:浅拷贝与深拷贝详解

copy 一、 & is二、浅拷贝 & 深拷贝(一)、浅拷贝(二)、深拷贝 三、问题 一、’ ’ & ‘is’ ’ 和is是python对象比较常用的两种方式,简单来说,‘ ‘操作符比较对象之间的值是否相等,如 a b 而’is’操作符比较的是对象的身份标识是否相等,即它们是否是同一个…