one-hot实现的几种方式

方式一:最简单的方式,可以一行代码搞定

import numpy as np
import torch'one-hot使用方法:最简单'
num_classes = 10
arr = [1, 3, 4, 5]
one_hots = np.eye(num_classes)[arr]
print(one_hots)arr1 = torch.LongTensor(arr)
print(arr1)
one_hots = torch.eye(num_classes)[arr]
print(one_hots)arr2 = np.array(arr)
print(arr2)
one_hots = np.eye(num_classes)[arr]
print(one_hots)

方式二

'one-hot使用方法二:'
one_hot = np.zeros([len(arr2), num_classes])
for i, j in enumerate(arr):one_hot[i][int(j)] = 1
print(one_hot)

方式三

'one-hot使用方式三:'
# one_hot = torch.zeros((len(arr1), num_classes)).scatter_(dim=1, index=arr1[:, None], value=1)
num_classes = 10
y = torch.tensor([1, 3, 4, 5])
one_hot = torch.zeros(y.shape[0], num_classes).scatter_(1, y.reshape(-1, 1), 1)
print(one_hot)

方式四:白嫖的方式【最爽】

from torch.nn.functional import one_hot'pytorch创造one_hot'
num_classes = 10
y = torch.tensor([1, 3, 4, 5])
one_hot = torch.zeros(y.shape[0], num_classes).scatter_(1, y.reshape(-1, 1), 1)
one_hot = one_hot.scatter_(y) print(one_hot)

[one-hot]one-hot实现的几种方式相关推荐

  1. 继承WebMvcConfigurer 和 WebMvcConfigurerAdapter类依然CORS报错? springboot 两种方式稳定解决跨域问题

    继承WebMvcConfigurer 和 WebMvcConfigurerAdapter类依然CORS报错???springboot 两种方式稳定解决跨域问题! 之前我写了一篇文章,来解决CORS报错 ...

  2. 远程控制virtual box虚拟机系统的三种方式

    远程控制virtual box虚拟机系统的三种方式[阅读时间:5分钟] 1.使用现有的远程控制软件 2.使用SSH连接 3.使用远程桌面控制虚拟机系统 对于把虚拟机安装在寝室笔记本的人来说,能够远程控 ...

  3. 命令行运行Python脚本时传入参数的三种方式

    三种常用的方式 如果在运行python脚本时需要传入一些参数,例如gpus与batch_size,可以使用如下三种方式. python script.py 0,1,2 10 python script ...

  4. 周一02.3运行python程序的两种方式

    一.运行python程序的两种方式 方法一:交互式:                      优点:输入一行代码立刻返回结果                       缺点:无法永久保存代码 方法 ...

  5. sass文件编译的三种方式【舒】

    [舒:]sass文件编译的三种方式 方式一: 1.webstorm打开evtGulp项目或者mcake-activity项目 2.中,开启gulp->default/develop,启动watc ...

  6. 实验四:使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用

    贺邦+原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 实验目的: 使用库函数 ...

  7. java多线程w3c_Java创建多线程的三种方式

    前言 这篇文章主要讲述线程的概念.组成.Java创建多线程的三种方式以及线程的类型. 线程概念 线程和进程的区别 **进程:**正在运行的程序,例如:你打开 的qq音乐.exe程序,其由PCB(进程控 ...

  8. bd2和mysql语法区别,经验:在MySQL数据库中,这4种方式可以避免重复的插入数据!...

    最常见的方式就是为字段设置主键或唯一索引,当插入重复数据时,抛出错误,程序终止,但这会给后续处理带来麻烦,因此需要对插入语句做特殊处理,尽量避开或忽略异常,下面我简单介绍一下,感兴趣的朋友可以尝试一下 ...

  9. mysql 执行cmd,mysql命令行中执行sql的几种方式总结

    1.直接输入sql执行 MySQL> select now(); +---------------------+ | now() | +---------------------+ | 2013 ...

  10. vue 函数 路由跳转_vue中通过路由跳转的三种方式

    router-view 实现路由内容的地方,引入组件时写到需要引入的地方 需要注意的是,使用vue-router控制路由则必须router-view作为容器. 通过路由跳转的三种方式 1.router ...

最新文章

  1. 硬核!15张图解Redis为什么这么快
  2. shell 字符串操作(长度,查找,替换)详解
  3. 《浪潮之巅》读书笔记汇总
  4. 交换机、路由器启动过程详述
  5. hadoop学习;datajoin;chain签名;combine()
  6. java自制缓冲池_java String 缓冲池概念的举例说明
  7. python怎么转到下一行_Python转到下一行并保存/编辑内容
  8. 【bzoj2406】矩阵 二分+有上下界可行流
  9. css 波纹扩散效果
  10. silverlight 二级导航
  11. 计算机wps如何排序,wps怎么排序【解答方案】
  12. UVALive 4725 Airport(二分)
  13. Web系统集成OCS在线状态功能
  14. Win 10 安装 Maven 与 Maven 知识点扫盲
  15. oracle 定时器调用存储过程
  16. python一对一参数_Python数值操作1
  17. Windows与网络基础-15-本地安全策略
  18. VSCode使用TSLlint校验TS代码
  19. mysql判断用户名和密码是否正确_怎样分别判断用户名和密码是否正确
  20. 智密-腾讯云直播 MLVB 插件优化教程:六步提升拉流速度+降低直播延迟

热门文章

  1. LeetCode题解(0657):根据操作列表判断机器人是否能回到原点(Python)
  2. 镁光闪存颗粒对照表_内存颗粒版本判断方法和编号解析(三星、美光、海力士)...
  3. 模拟低通原型滤波器的MATLAB设计
  4. Zookeeper的领导者选举机制解析
  5. 练习《learn Python3 the hard way》(Zed Shaw)ex25无法导入模块
  6. 三阶实对称矩阵含重根的快速还原秒杀法
  7. 文件的“打开”和“关闭”
  8. 深入理解pdf.js,PDFObject, iframe 三种方式来打开PDF文件的区别
  9. 数据库管理员个人简历模板(数据库简历模板)
  10. 转载 MAR、MDR以及ROM、RAM的区别和联系