torch.embedding 报错 IndexError: index out of range in self
文章目录
- 1. 报错
- 2. 原因
- 3. 解决方法
1. 报错
torch.embedding 报错:
IndexError: index out of range in self
2. 原因
首先看下正常情况:
import torch
import torch.nn.functional as Finputs = torch.tensor([[1, 2, 4, 5], [4, 3, 2, 9]])
embedding_matrix = torch.rand(10, 3)
print(embedding_matrix)
print(F.embedding(inputs, embedding_matrix))
输出:
tensor([[0.8832, 0.2487, 0.7640],[0.8973, 0.5747, 0.8496],[0.2269, 0.2961, 0.7951],[0.7736, 0.9914, 0.9448],[0.4134, 0.7143, 0.4455],[0.3482, 0.1837, 0.3179],[0.4071, 0.9485, 0.1735],[0.7494, 0.8119, 0.7899],[0.3922, 0.2944, 0.4924],[0.2391, 0.8299, 0.3299]])
tensor([[[0.8973, 0.5747, 0.8496],[0.2269, 0.2961, 0.7951],[0.4134, 0.7143, 0.4455],[0.3482, 0.1837, 0.3179]],[[0.4134, 0.7143, 0.4455],[0.7736, 0.9914, 0.9448],[0.2269, 0.2961, 0.7951],[0.2391, 0.8299, 0.3299]]])
在这里,embedding_matrix 是一个全量的权重表,需要根据 inputs 的列表来选择权重列表的第几行。
例如:inputs[0] = [1, 2, 4, 5],注意这里是从0开始的,那么依次选择 embedding_matrix 的第2行、第3行、第5行、第6行,则对应的列表组成为:
[[0.8973, 0.5747, 0.8496],
[0.2269, 0.2961, 0.7951],
[0.4134, 0.7143, 0.4455],
[0.3482, 0.1837, 0.3179]]
这就是输出的第一部分,对于inputs[1] = [4, 3, 2, 9] 同样如此。
到这里,应该就清楚了出现 IndexError: index out of range in self 报错的原因了。如果 inputs 中出现超过权重表长度的数,就会报错。
例如上面例子权重表有10行,所以 inputs 最大数应该为9,如果 inputs[1] = [4, 3, 2, 10],如下:
import torch
import torch.nn.functional as Finputs = torch.tensor([[1, 2, 4, 5], [4, 3, 2, 10]])
embedding_matrix = torch.rand(10, 3)
print(embedding_matrix)
print(F.embedding(inputs, embedding_matrix))
那么报错如下:

3. 解决方法
知道报错原因之后,那么需要弄清楚的就是 inputs 中为什么会出现超过 embedding_matrix 权重表长度的数,这里就需要具体分析了。
相关文章:
torch.embedding 报错 IndexError: index out of range in self
文章目录 1. 报错2. 原因3. 解决方法 1. 报错 torch.embedding 报错: IndexError: index out of range in self2. 原因 首先看下正常情况: import torch import torch.nn.functional as Finputs torch.tensor([[1, 2, 4, 5], [4, 3, 2, 9]]) embedd…...
rocky9虚拟机配置双网卡的详细过程
编辑虚拟机配置->添加->选择网络适配器->确认->打开虚拟机 1.ip add查看第二个网卡的名称,我这里是ens36 2.cd到网卡的配置文件目录 cd /etc/NetworkManager/system-connections/ ls3.复制一份网卡的配置文件并改名为ens36.nmconnection(根据自己的第…...
索引的介绍
目录 1.索引的介绍 1.1 什么是索引 1.2 为什么要使用索引 2.索引应该选择哪种数据结构 3.MYSQL中的页 3.1为什么要使用页 3.2页文件头和页文件尾 3.3 页主体 3.3页目录 3.4数据页头 4.B在MYSQL索引中的应用 4.1计算三层树高的B树可以存放多少条记录 5.索引分类 5.1 主…...
Web后端服务平台解析漏洞与修复、文件包含漏洞详解
免责申明 本文仅是用于学习检测自己搭建的Web后端服务平台解析漏洞、文件包含漏洞的相关原理,请勿用在非法途径上,若将其用于非法目的,所造成的一切后果由您自行承担,产生的一切风险和后果与笔者无关;本文开始前请认真详细学习《中华人民共和国网络安全法》及其所在国…...
树莓派介绍与可安装的操作系统
引言 自 2012 年问世以来,树莓派(Raspberry Pi) 已成为全球最受欢迎的微型单板计算机之一。最初,树莓派的目标是为学校和发展中国家的学生提供一个廉价的计算平台,以促进计算机科学教育。然而,凭借其低成本…...
Qt常用控件——QTextEdit
文章目录 QTextEdit核心属性和信号同步显示示例信号示例 QTextEdit核心属性和信号 QTextEdit表示多行输入框,是一个富文本和markdown编辑器,并且能在内存超出编辑框范围时自动提供滚动条。 QPlainTexEdit是纯文本,QTextEdit不仅表示纯文本&a…...
docker-compose 部署 flink [支持pyflink]
下载 flink 镜像 [rootlocalhost ~]# docker pull flink Using default tag: latest latest: Pulling from library/flink 762bedf4b1b7: Pull complete 95f9bd9906fa: Pull complete a880dee0d8e9: Pull complete 8c5deab9cbd6: Pull complete 56c142282fae: Pull comple…...
C++中string类的模拟实现
目录 1.string类的结构 2.默认成员函数 2.1.默认构造函数 2.2拷贝构造函数 2.3赋值运算符重载 2.4析构函数 3.迭代器(Iterators) 4.string类的空间操作(Capacity) 4.1size() 4.2capacity() 4.3clear() 4.4reserve() 5.元素访问(Element access) 6.string类的修…...
C++函数在库中的地址
本文讲述C如何直接调用动态库dll或者so中的函数。 首先我们准备一个被调用库,这个库里面有两个函数,分别是C98 与 C11 下的,名称是run2和run1。 被调用库 相关介绍请看之前的文章《函数指针与库之间的通信讲解》。 //dll_ex_im.h #ifndef…...
图像生成大模型imagen
要生成图像,可以使用深度学习模型,比如 OpenAI 的 DALLE、Google 的 Imagen 等。由于这些模型通常需要较大的计算资源和训练数据,下面是一些如何使用这些模型的基本步骤和方法。 使用预训练图像生成模型 选择模型: 常用的模型包括…...
Redis集群知识及实战
1. 为什么使用集群 在哨兵模式中,仍然只有一个Master节点。当并发写请求较大时,哨兵模式并不能缓解写压力。我们知道只有主节点才具有写能力,那如果在一个集群中,能够配置多个主节点,是不是就可以缓解写压力了呢&…...
数据报表轻松管理,强大“后台”不可少
在数据驱动的时代,制作一份高效、精准的数据报表成为企业管理和决策的重要手段。但要做好数据报表,不仅需要一款功能强大的报表工具,还必须有一个强有力的“后台”管理系统来支撑。那么,为什么报表工具需要一个管理后台࿱…...
简易CPU设计入门:本CPU项目的指令格式
在这一节里面,主要是理论知识,基本上不讲代码。不过,本项目的代码包,大家还是需要下载的。 本项目的代码包的下载方法,参考下面的链接所指示的文章。 下载本项目代码 本节,其实是要讲本项目CPU的指令集。…...
Datawhile 组队学习Tiny-universe Task01
Task01:LLama3模型讲解 仓库链接:GitHub - datawhalechina/tiny-universe: 《大模型白盒子构建指南》:一个全手搓的Tiny-Universe 参考博客:LLaMA的解读与其微调(含LLaMA 2):Alpaca-LoRA/Vicuna/BELLE/中文LLaMA/姜子…...
MCU与SOC的区别
自动驾驶中 MCU 与 SoC 的区别 在自动驾驶系统中,**MCU(微控制单元,Microcontroller Unit)和SoC(系统级芯片,System on Chip)**都是关键的电子元件,但它们在性能、功能和应用领域等…...
51单片机-DS18B20(温度传感器)AT24C02(存储芯片) IIC通信-实验2-温度实时监测(可设置阈值)
作者:王开心 座右铭:刻苦专研,百折不挠,千磨万击还坚韧,任尔东西南北风!干就完了!(可交流技术) 主要利用DS18B20芯片去采集温度,通过采集的温度能够自动保存…...
Vue2接入高德地图API实现搜索定位和点击获取经纬度及地址功能
目录 一、申请密钥 二、安装element-ui 三、安装高德地图依赖 四、完整代码 五、运行截图 一、申请密钥 登录高德开放平台,点击我的应用,先添加新应用,然后再添加Key。 如图所示填写对应的信息,系统就会自动生成。 二、安装…...
msvcp140.dll丢失如何解决?msvcp140.dll丢失的多种解决方法
在计算机使用过程中,我们经常会遇到一些错误提示,其中之一就是“msvcp140.dll丢失”。这个错误通常会导致某些应用程序无法正常运行,给用户带来很大的困扰。那么,当我们遇到msvcp140.dll丢失的情况时,应该如何解决呢&a…...
高效财税自动化软件如何提升企业财务工作的效率与准确性
在当今企业运营中,财务管理发挥着核心作用。它不仅涉及企业正常运转和市场决策,还是推动企业向高质量发展迈进的关键动力。面对激烈的市场竞争与科技革新的双重挑战,财务管理亟需进行持续的转型与提升,为企业高质量发展目标的实现…...
Leetcode 3286. Find a Safe Walk Through a Grid
Leetcode 3286. Find a Safe Walk Through a Grid 1. 解题思路2. 代码实现 题目链接:3286. Find a Safe Walk Through a Grid 1. 解题思路 这一题的话思路上就是一个宽度优先遍历,我们按照health进行排序进行宽度优先遍历,看看在health被消…...
3个实用技巧轻松解决ComfyUI-Custom-Scripts新手难题
3个实用技巧轻松解决ComfyUI-Custom-Scripts新手难题 【免费下载链接】ComfyUI-Custom-Scripts Enhancements & experiments for ComfyUI, mostly focusing on UI features 项目地址: https://gitcode.com/gh_mirrors/co/ComfyUI-Custom-Scripts ComfyUI-Custom-Scr…...
G-Helper华硕笔记本优化指南:告别臃肿控制软件,3步打造高效设备
G-Helper华硕笔记本优化指南:告别臃肿控制软件,3步打造高效设备 【免费下载链接】g-helper Lightweight, open-source control tool for ASUS laptops and ROG Ally. Manage performance modes, fans, GPU, battery, and RGB lighting across Zephyrus, …...
C# 异步编程在 AI 应用中的最佳实践
一、引言 AI 应用开发中的异步需求 在当今的人工智能应用开发领域,异步编程已经成为不可或缺的核心技术。当我们与 AI 大模型进行交互时,网络请求的延迟、流式响应的处理、并发调用多个模型——这些场景无不对程序的响应能力和吞吐量提出了极高要求。传统的同步编程模式在面…...
从零开始:Qwen3-ASR-1.7B环境搭建与Web服务启动教程
从零开始:Qwen3-ASR-1.7B环境搭建与Web服务启动教程 1. 环境准备与快速部署 1.1 硬件要求检查 在开始部署Qwen3-ASR-1.7B之前,请确保您的服务器满足以下最低硬件要求: GPU显存:≥6GB(推荐RTX 3060及以上࿰…...
告别黑苹果配置难题:零基础也能轻松上手的智能工具详解
告别黑苹果配置难题:零基础也能轻松上手的智能工具详解 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 你是否曾因黑苹果EFI配置的复杂流程…...
Fish Speech 1.5新手必看:一键部署,轻松实现文本转语音
Fish Speech 1.5新手必看:一键部署,轻松实现文本转语音 1. 认识Fish Speech 1.5 Fish Speech 1.5是由Fish Audio开源的新一代文本转语音(TTS)模型,它基于LLaMA架构与VQGAN声码器,支持零样本语音合成。这意…...
如何高效解密网易云音乐NCM文件?ncmdump工具全指南
如何高效解密网易云音乐NCM文件?ncmdump工具全指南 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 你是否遇到过下载的网易云音乐NCM文件无法在其他播放器中打开的问题?ncmdump作为一款专业的NCM格式解密工具…...
Spring Data JPA中常用的注解详解
文章目录Spring Data JPA 常用注解详解(实体映射篇)一、前言二、基础注解(必掌握)1. Entity2. Table3. Id4. GeneratedValue5. Column6. Basic7. Transient三、时间/枚举类型映射8. Temporal9. Enumerated四、嵌入式对象ÿ…...
Dunst多显示器支持终极指南:在不同屏幕间智能分配通知
Dunst多显示器支持终极指南:在不同屏幕间智能分配通知 【免费下载链接】dunst Lightweight and customizable notification daemon 项目地址: https://gitcode.com/gh_mirrors/du/dunst Dunst是一款轻量级且高度可定制的通知守护进程(notificatio…...
OpenClaw会议纪要助手:Qwen3-14b_int4_awq自动生成会议摘要
OpenClaw会议纪要助手:Qwen3-14b_int4_awq自动生成会议摘要 1. 为什么需要自动化会议纪要 每次开完会最头疼的就是整理会议纪要。作为技术负责人,我每周要参加至少5场会议,从需求评审到技术方案讨论,经常一场会下来精疲力尽&…...
