NumPy中把索引数组转成one-hot编码
问题现象
训练分类模型时,标签经常以「类别下标」的形式给出,比如[1, 0, 3]表示三个样本分别属于第 1、0、3 类。但损失函数通常要求标签是 one-hot 形式。转换过程看着简单,动手却常出错。
现象一:用循环逐行赋值写了十几行代码,数据量一大就跑得极慢,几万条标签要等半天。
现象二:用np.eye(n)[a]的思路取出来,结果形状不对:输入是一维数组时得到的是二维结果没问题,但输入本身是二维批次时,输出维度多了一层,送进模型就报维度不匹配。
现象三:硬编码了类别数(比如写死 10),一旦某个批次的标签没覆盖到全部类别,或者换了个类别数不同的数据集,代码立刻失效甚至越界报错。
现象四:在 TensorFlow 或 PyTorch 里想做同样的事,用np.eye生成的数组 dtype 默认是 float64,与模型的 float32 不兼容,出现类型转换告警或显存占用翻倍。
现象五:标签里出现了-1(表示忽略该样本),直接用-1做下标会触发「负索引」语义,不但不报错,还会在最后一列偷偷置 1,污染训练目标。
原因分析
要理解正确写法,先看清两件事:花式索引的规则与广播机制。
花式索引指的是用数组做下标。当用两个等长的一维数组分别作为行下标和列下标时,NumPy 会把它们配对:(row[0], c
相关新闻
SQL递归CTE优化:高效解数独的性能提升方案
1. 问题背景与SQL解数独的挑战数独作为一种经典的逻辑游戏,其求解算法一直是编程爱好者热衷的挑战。程宁先生采用SQL实现数独求解的方案,展现了数据库语言在非传统领域的强大能力。这种解法的核心在于利用SQL的集合操作和递归查询特性,模拟人…
矩阵在CG与CV中的双重角色与应用差异
1. CG与CV中的矩阵世界观当我在游戏引擎中第一次用矩阵实现角色位移时,突然意识到这个数学工具在计算机图形学(CG)和计算机视觉(CV)中扮演着截然不同的角色。就像同一把瑞士军刀,在CG里它是创造世界的画笔,在CV中却成了解码现实的密码本。关键…
Python读写Excel实战:openpyxl/pandas双链路与避坑
简介:这是一份围绕 Python 操作 Excel 的代码示例包,面向需要做数据读取、清洗、报表输出或自动化办公的初、中级开发者。压缩包内含 4 个 .py 文件,整体约 6KB,均为可直接参考的脚本示例,分别对应基础读取、数值内容处…
最新新闻
RDMA技术浅析(四)
一、关于wq今天聊聊rdma的重要的wq的概念。在 RDMA(Remote Direct Memory Access)和 Mellanox MLX5 网卡驱动架构中,WQ 是 Work Queue(工作队列)的缩写。它是软件(应用程序或驱动)与硬件网卡…
星愿池·官网正式上线了
【星愿池官网一览】 想找个能带娃一起坚持的打卡App,应用市场里翻了半天:介绍图看了一堆、评论区翻了又翻,还是没弄明白它到底怎么玩、适不适合自己家? 下载了怕踩雷,不下载又心痒。差的从来不是App,是一…
QEMU宿主机基础信息采集脚本COLT_CMDB_linux_QEMU.sh
COLT_CMDB_linux_QEMU.sh #!/bin/bash #QEMU 宿主机基础信息采集脚本 #IT_BEGIN #IT_TYPE1 #普通指标 #IT SYSTEM_qemu_IP|ip #IT SYSTEM_qemu_APIversion|APIversion #IT SYSTEM_qemu_CPUNum|CPUNum #IT SYSTEM_qemu_Architecture|Architecture #IT SYSTEM_qemu_CoreVersion|C…
端子镀锡、镀金、镀银怎么选?厚度、插拔次数与成本的三条判据
镀锡=默认选项,成本最低、可焊性最好,按 ASTM B545 A 级锡层 ≥2.5m;短板是插拔寿命与氧化;镀金=为"低接触电阻 抗氧化 多次插拔",但必须同时写厚度和区域——闪金 0.05~0.1m 只防氧…
HMI只能靠厂家组态软件?EXOR用Docker把开源生态搬进现场
大家好,我是宏集科技鲁工,给大家分享不一样的工业物联网信息!一、问题客户在做一个定制化项目,除了常规的画面显示和设备操控,还希望在HMI里跑一些开源应用,比如数据采集转发、可视化看板、轻量算法。评估了…
AI 自动化逆向(三十五)假设空间枚举的完备性是假设出来的
AI 自动化逆向(三十五)假设空间枚举的完备性是假设出来的 本文是「AI 自动化逆向」系列第 35 篇。上一篇:自建指令缓存:把分钟级查询压到秒级;下一篇预告:先找不加密的部分。 前言 从这一篇起进入整卷最敏…
日新闻
NCP1342高频准谐振反激控制器:从设计约束到验收的完整方案
简介:NCP1342 高频准谐振反激控制器应用介绍译文文档,面向电源设计工程师、硬件研发人员及开关电源学习者,帮助读者跨越英文原版资料的语言门槛,系统理解这款高集成度 QR Flyback 控制器的设计要点。文档围绕芯片核心特性展开&…
NCP1342准谐振反激电源设计:从选型到验收的全流程解析
简介:这份文档面向电源设计工程师与开关电源学习者,系统梳理NCP1342高频准谐振反激控制器的应用要点,帮助读者快速理解这款高集成度离线电源变换器控制芯片的工作机制与设计方法。内容涵盖芯片核心特性、引脚功能定义、电气特性参数表、最大额…
Web系统自动登出机制设计与实现全解析
1. 系统自动登出机制的设计初衷在各类Web应用和后台管理系统中,自动登出功能早已成为标配。这个看似简单的功能背后,实际上涉及用户安全、资源管理和体验优化的多重考量。作为从业十多年的老开发,我见过太多因为登出逻辑设计不当导致的安全事…
周新闻
全国计算机二级C语言真题PDF高效刷题指南
简介:这份PDF是全国计算机二级C语言考试的试题与答案解析,专为备考二级C语言的考生准备。内容涵盖C语言特点与设计理念、程序基本组成单位、main函数执行流程、函数嵌套调用规则、标识符命名规范、整型实型字符型数据类型、八进制十六进制数合法形式、运…
requests+BeautifulSoup:爬虫抓取h1标题的入门实战指南
简介:一份以实战为导向的Python爬虫入门资源,面向具备基本编程基础、希望快速掌握网络数据抓取的初学者,可解决从零编写简单爬虫的常见困惑。实例以requests库发送HTTP请求、BeautifulSoup解析HTML文档,完整演示从网页中提取 标题…
递推最小二乘参数辨识MATLAB编程:二阶系统与渐消记忆实现
简介:这是一篇面向控制系统、信号处理与机器学习等领域学习者的最小二乘参数辨识程序说明文档。资源共包含一个docx格式文档,压缩包大小七十八KB,内容围绕递推最小二乘算法和渐消记忆最小二乘算法展开:先构造一个极点位于单位圆内…
月新闻
我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频
/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证
/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …
2026 大模型集体涨价:用 Python 做企业 Token 成本测算与选型避坑(附配置)
/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …