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

Transformer的前世今生 day02(神经网络语言模型、词向量)

神经网络语言模型

  • 使用神经网络的方法,去完成语言模型的两个问题,下图为两层感知机的神经网络语言模型:
    在这里插入图片描述
  • 假设词典V内有五个词:“判断”、“这个”、“词”、“的”、“词性”,且要输出P(w_next | “判断”、“这个”、“词”、“的”)的概率,即要解决哪一个词放在这句话后面的概率最大的问题。
  • 输入为:W1、W2、W3、W4(前四个单词的独热编码),分别乘随机矩阵,再将结果拼接起来得到C,如下:
    在这里插入图片描述
  • 再经过两层隐藏层,最后通过一个softmax函数,得到输出结果为词库中所有词,分别填在这个位置的概率。得出最大概率的就是最后一个词“词性”,如下:
    在这里插入图片描述

词向量

  • 用一个向量表示一个单词,独热编码也属于词向量,但是独热编码有两个缺点:尺寸大,不好计算相似度。
  • 但是词向量通过随机矩阵Q可以解决这两个缺点。
  • 获得词向量的过程如下:
    在这里插入图片描述
  • 假设c1的计算过程如下:
    在这里插入图片描述
  • 由于之前我们拿独热编码来表示单词,但是我们将独热编码乘Q(随机矩阵)得到的一个向量,也可以表示这个单词
  • 且由于我们的Q矩阵是一个参数,可以学习,即随着模型训练的越来越好,通过Q得到的向量也就越能准确的代表这个单词。
  • 同时我们可以通过矩阵Q来控制输出向量的大小
  • 如上图,c1就是“判断”这个词的词向量
  • 同时,由于两个词的独热编码之间不好计算相似度(有很多0),如采用余弦相似度,结果也为0。但是我们转换成词向量后,结果不再是0,那么就可以一定程度上描述两个词之间的相似度,例如下图:
    在这里插入图片描述

以下为预备知识

单层感知机

  • 单层感知机是一个线性模型,可以用下图来表示:输入经过全连接层(可以有一层或多层,但是多层线性函数最后可以看作是一层线性函数)得到输出,即Y=Wx+b
    在这里插入图片描述
  • 线性层 / 全连接层 / 稠密层:最好叫他为全连接层,因为有时层内会包含非线性函数
  • 假设输入有n个,输出有m个,则w、b、y的个数如下:
    在这里插入图片描述

多层感知机

  • 多层感知机使用了隐藏层和激活函数,是非线性模型
    • 隐藏层是对于输出层来说的,只有最后一层全连接层对于输出层是可见的,且最后一层的全连接层一般不带激活函数,所以其他全连接层叫隐藏层
    • 激活函数是放在隐藏层中,用来拟合非线性的,常用的激活函数是Sigmoid,Tanh,ReLU,下图为有一层隐藏层的多层感知机:
      请添加图片描述

独热编码

  • 目的是让计算机认识单词
  • 用矩阵的形式,存储所有单词。且在矩阵中,每一个元素都代表一个单词,这就要求矩阵的行列等于单词数,如下图:
    在这里插入图片描述
  • 独热编码有两个缺点:
    • 矩阵的尺寸很容易过大,因为他需要行列等于单词数
    • 相似单词之间的独热编码没有任何关联,通常使用余弦相似度来计算文本之间的相似度,但是现实世界中相似单词之间是有关联的

参考文献

  1. 05 神经网络语言模型(独热编码+词向量的起源)

相关文章:

Transformer的前世今生 day02(神经网络语言模型、词向量)

神经网络语言模型 使用神经网络的方法,去完成语言模型的两个问题,下图为两层感知机的神经网络语言模型: 假设词典V内有五个词:“判断”、“这个”、“词”、“的”、“词性”,且要输出P(w_next | “判断”、“这个”、…...

【Linux】多线程编程基础

💻文章目录 📄前言🌺linux线程基础线程的概念线程的优缺点线程与进程的区别 线程的创建 🌻linux线程冲突概念互斥锁函数介绍加锁的缺点 📓总结 📄前言 无论你是否为程序员,相信多线程这个词汇应…...

【地图】腾讯地图 - InfoWindow 自定义信息窗口内容时,内容 html 嵌套混乱问题

目录 需求描述问题问题代码页面展示 解决原因解决办法解决代码页面展示 代码汇总注 需求描述 腾讯地图上画点位,点击点位展示弹框信息 问题 问题代码 // 打开弹框 openInfoWindow(position, content) {this.infoWindow new TMap.InfoWindow({map: this.map,posit…...

Vue3、element-plus和Vue2、elementUI的一些转换

插槽 Vue3<template #default"scope"></template> <template #footer></template>Vue2<template slot-scope"scope"></template> <template slot"footer"></template>JS定义 Vue3 <script…...

Go语言gin框架中加载html/css/js等静态资源

Gin框架没有内置静态文件服务&#xff0c;但可以使用gin.Static或gin.StaticFS中间件来提供静态文件服务。 效果图如下&#xff1a; 一、gin 框架加载 Html 模板文件的方法 方式1&#xff1a;加载单个或多个html文件&#xff0c;需要指明具体文件名 r.LoadHTMLFiles("vie…...

#鸿蒙生态创新中心#揭幕仪式在深圳湾科技生态园举行

3 月 19 日&#xff0c;#鸿蒙生态创新中心#揭幕仪式在深圳湾科技生态园举行。 现场&#xff0c;深圳市南山区人民政府副区长李志娜发布《2024 年南山区支持鸿蒙原生应用发展首批政策措施清单》&#xff0c;从加强鸿蒙原生应用供给能力、推动鸿蒙原生应用产业集聚、完善鸿蒙原生…...

flask 继续学习

group_by group_by是一种在数据库查询或数据处理中常用的操作&#xff0c;它用于将数据按照指定的列进行分组。通过group_by操作&#xff0c;可以将数据集按照某个列的值进行分类&#xff0c;然后对每个分类进行聚合计算或其他操作。 在SQL语言中&#xff0c;group_by通常与聚…...

DockerFile遇到的坑

CMD 命令的坑 dockerfile 中的 CMD 命令在docker run -it 不会执行 CMD 命令。 FROM golang WORKDIR / COPY . ./All-in-one CMD ["/bin/sh","-c","touch /kkk.txt && ls -la"] RUN echo alias ll"ls -la" > ~/.bashrc(不…...

并网型风光储微电网日前优化调度(MATLAB实现)

考虑了光伏发电、风力发电、电池储能和负荷需求等因素&#xff0c;与主网相连不考虑向主网售电情况。 % 微电网日前优化调度示例代码% 定义时间步长&#xff08;例如&#xff0c;每小时&#xff09; time_steps 24;% 生成模拟数据&#xff1a;光伏发电量&#xff0c;风力发电…...

MATLAB环境下基于振动信号的轴承状态监测和故障诊断

故障预测与健康管理PHM分为故障预测和健康管理与维修两部分&#xff0c;PHM首先借助传感器采集关键零部件的运行状态数据&#xff0c;如振动信号、温度图像、电流电压信号、声音信号及油液分析等&#xff0c;提取设备的运行监测指标&#xff0c;进而实现对设备关键零部件运行状…...

流畅的 Python 第二版(GPT 重译)(十二)

第五部分&#xff1a;元编程 第二十二章&#xff1a;动态属性和属性 属性的关键重要性在于&#xff0c;它们的存在使得将公共数据属性作为类的公共接口的一部分完全安全且确实可取。 Martelli、Ravenscroft 和 Holden&#xff0c;“为什么属性很重要” 在 Python 中&#xff0…...

【Python 48小时速成 2】关键字

文章目录 01. and &#xff1a;逻辑运算符&#xff0c;表示逻辑与操作。02. exec &#xff1a;内置函数&#xff0c;用于执行存储在字符串或文件中的 Python 代码。03. not &#xff1a;逻辑运算符&#xff0c;表示逻辑非操作。04. assert &#xff1a;断言语句&#xff0c;用于…...

小程序socket 全局代码

在微信小程序中&#xff0c;为了实现在整个应用范围内共享一个WebSocket连接&#xff0c;通常会将WebSocket的创建、打开、关闭以及消息收发等功能封装在一个全局模块中&#xff0c;然后在各个需要使用WebSocket功能的页面中引入并调用这个模块的方法。以下是一个简化的全局Web…...

数据挖掘|数据集成|基于Python的数据集成关键问题处理

数据挖掘|数据集成|基于Python的数据集成关键问题处理 1. 实体识别2. 数据冗余与相关性分析3. 去除重复记录4. 数据值冲突的检测与处理5. 基于Python的数据集成5.1 merge()方法5.2 Concat()方法 数据集成是把来自多个数据库或文件等不同数据源的数据整合成一致的数据存储。其中…...

Linux-网络层IP协议、链路层以太网协议解析

目录 网络层&#xff1a;IP协议地址管理路由选择 链路层 网络层&#xff1a; 网络层&#xff1a;负责地址管理与路由选择 — IP协议&#xff0c;地址管理&#xff0c;路由选择 IP协议 数据格式&#xff1a; 4位协议版本&#xff1a;4-ipv4协议版本 4位首部长度&#xff1a;以…...

后端开发辅助

maven仓库手动添加jar命令 mvn install:install-file -DfileD:\\spire.xls-4.6.5.jar -DgroupIde-iceblue -DartifactIdspire.xls -Dversion4.6.5 -Dpackagingjaroracle调用存储过程示例 DECLAREPO_ERRCODE VARCHAR2(100);PO_ERRMSG VARCHAR2(100);BEGIN-- Call the procedure…...

插件电阻的工艺结构原理及选型参数总结

🏡《总目录》 目录 1,概述2,工作原理3,结构特点3.1,引脚设计3.2,电阻体3.3,封装4,工艺流程4.1,材料准备4.2,电阻体制作4.3,引脚焊接4.4,绝缘处理4.5,测试与筛选4.6,包装与存储...

视频私有云,HDMI/AV多硬件设备终端接入,SFU/MCU视频会议交互方案。

在视频业务深入的过程中越来越多的硬件设备接入视频交互的视频会议中远程交互&#xff0c;有的是视频采集&#xff0c;有的是医疗影像等资料&#xff0c;都需要在终端承显&#xff0c;这就需要我们的设备终端能多设备&#xff0c;多协议接入&#xff0c;设备接入如下。 1&#…...

mac os 配置两个github账号

1. 清空git全局配置的username和email git config --global --unset user.name git config --global --unset user.emailgit config --list 可以查看是否清空了 2. 定义两个标识符,这两个标识符以后会被用来代替“github.com”来使用。 假设两个账号的邮箱地址分别是a@gmai…...

【SpringBoot】登录校验之会话技术、统一拦截技术

真正的登录功能应该是&#xff1a; 登陆后才能访问后端系统页面&#xff0c;不登陆则跳转登陆页面进行登陆。 当我们没有设置登录校验&#xff0c;可以直接通过修改地址栏直接进入管理系统内部&#xff0c;跳过登录页。而后端系统的增删改查功能&#xff0c;没有添加判断用户是…...

【NX二次开发】字符串操作-截取文件名

//确保路径格式为\\形式char *q strrchr(p, \\;) 1;...

别只盯着算法!手把手教你为STM32MP157人脸识别项目搭建Qt图形界面

从算法到产品&#xff1a;STM32MP157人脸识别项目的Qt界面实战指南 当你在STM32MP157上成功跑通OpenCV人脸识别算法后&#xff0c;是否发现这离真正的产品化还有段距离&#xff1f;一个没有友好界面的嵌入式AI项目&#xff0c;就像没有方向盘的跑车——性能再强也难以驾驭。本文…...

大棚检测系统

视频演示01—项目简介系统功能多参数环境监测&#xff1a;实时采集空气温度、湿度、光照强度、CO₂浓度、土壤湿度。本地显示&#xff1a;通过 0.96 英寸 OLED 屏幕直观显示各项数据。无线传输&#xff1a;通过 HC-04/05 蓝牙模块将数据发送至手机或上位机&#xff08;支持简单…...

GLM-4.1V-9B-Base惊艳效果:古诗词配图理解、AI绘画作品风格反推分析

GLM-4.1V-9B-Base惊艳效果&#xff1a;古诗词配图理解、AI绘画作品风格反推分析 1. 视觉多模态理解新标杆 GLM-4.1V-9B-Base是智谱最新开源的视觉多模态理解模型&#xff0c;在中文视觉理解领域展现出令人惊艳的能力。不同于常见的纯文本大模型&#xff0c;这款模型专精于图像…...

Kimi-VL-A3B-Thinking入门必看:2.8B激活参数MoE多模态模型部署详解

Kimi-VL-A3B-Thinking入门必看&#xff1a;2.8B激活参数MoE多模态模型部署详解 1. 模型简介 Kimi-VL-A3B-Thinking是一款高效的开源混合专家&#xff08;MoE&#xff09;视觉语言模型&#xff0c;在多模态推理领域表现出色。这个模型最吸引人的特点是它仅激活2.8B参数就能实现…...

Git-RSCLIP模型训练全流程:从数据准备到模型评估

Git-RSCLIP模型训练全流程&#xff1a;从数据准备到模型评估 1. 引言 如果你对多模态AI感兴趣&#xff0c;想要亲手训练一个能够理解图像和文本关系的模型&#xff0c;那么Git-RSCLIP绝对是个不错的起点。这个基于改进CLIP架构的模型&#xff0c;通过对比学习让计算机学会理解…...

Visio图表高效转EPS:完整步骤与常见问题解析

1. Visio转EPS的必备工具与前期准备 第一次把Visio图表转成EPS格式时&#xff0c;我对着论文投稿系统里的格式要求发愁了半天。作为科研狗必备技能&#xff0c;这个转换其实比你想象的简单得多。先说说需要准备的软件组合&#xff1a;Visio本身&#xff08;2013及以上版本更稳…...

VibeVoice部署全攻略:基于Python的快速集成,支持多语言音色

VibeVoice部署全攻略&#xff1a;基于Python的快速集成&#xff0c;支持多语言音色 1. 项目概述与技术优势 VibeVoice是微软开源的一款轻量级实时语音合成系统&#xff0c;基于VibeVoice-Realtime-0.5B模型构建。这个项目最吸引人的特点是它能在300毫秒内完成首次音频输出&am…...

仅限前500名技术决策者获取:2026奇点大会《大模型工具调用成熟度评估矩阵》(含9维打分表+自测链接)

第一章&#xff1a;2026奇点智能技术大会&#xff1a;大模型工具调用 2026奇点智能技术大会(https://ml-summit.org) 工具调用范式的根本性演进 在2026奇点智能技术大会上&#xff0c;大模型工具调用&#xff08;Tool Use&#xff09;已从早期的提示工程驱动&#xff0c;跃迁…...

MySQL锁机制:从全局锁到行级锁的深度解读赡

如果有多个供应商&#xff0c;你也可以使用 [[CC-Switch]] 来可视化管理这些API key&#xff0c;以及claude code 的skills。 # 多平台安装指令 curl -fsSL https://claude.ai/install.sh | bash ## Claude Code 配置 GLM Coding Plan curl -O "https://cdn.bigmodel.cn/i…...