这么高大上的名字,顾名思义,就是在编码中只有一个1,其他是0。
眼熟吧。在Pyton神经网络编程这本书中,已经见过了。神经网络的输出中,用1000000000代表0,用01000000000代表1,以此类推,用0000000001代表9。
tf.one_hot()函数是将input转化为one-hot类型数据输出,相当于将多个数值联合放在一起作为多个相同类型的向量,可用于表示各自的概率分布,通常用于分类任务中作为最后的FC层的输出,有时翻译成“独热”编码。
tensorflow的help中相关说明如下:
one_hot(indices, depth, on_value=None, off_value=None, axis=None, dtype=None, name=None)
indices表示输入的多个数值,通常是矩阵形式;depth表示输出的尺寸。
由于one-hot类型数据长度为depth位,其中只用一位数字表示原输入数据,这里的on_value就是这个数字,默认值为1,one-hot数据的其他位用off_value表示,默认值为0。
tf.one_hot()函数规定输入的元素indices从0开始,最大的元素值不能超过(depth - 1),因此能够表示(depth + 1)个单位的输入。若输入的元素值超出范围,输出的编码均为 [0, 0 … 0, 0]。
indices = 0 对应的输出是[1, 0 … 0, 0], indices = 1 对应的输出是[0, 1 … 0, 0], 依次类推,最大可能值的输出是[0, 0 … 0, 1]。
代码示例如下:

    import tensorflow as tfimport numpy as npt=[0,1,2,3,4]#onehot编码数据必须是整形#indices, depth, on_value=None, off_value=None, axis=None, dtype=Noneindices=tdepth=5#不能小于t的长度sess=tf.Session()on_value=1#默认是1,也可以设置为其他值,比如9off_value=0#默认是0,也可以设置为其他数值,比如2axis=0#默认是0,纵轴方向编码,0是纵轴,1是横轴,类似于相互转置oh1=tf.one_hot(t,depth=depth,axis=axis)oh2=tf.one_hot(t,depth=depth,axis=axis,on_value=9,off_value=2)print(sess.run(oh1))print(sess.run(oh2))

输出结果点击链接

什么是onehot编码相关推荐

  1. R语言使用xgboost构建回归模型:vtreat包为xgboost回归模型进行数据预处理(缺失值填充、缺失值标识、离散变量独热onehot编码)、构建出生体重的xgboost模型回归模型

    R语言使用xgboost构建回归模型:vtreat包为xgboost回归模型进行数据预处理(缺失值填充.缺失值标识.离散变量独热onehot编码).构建出生体重的xgboost模型回归模型 目录

  2. Verilog中状态机编码方式的选择:二进制编码(Binary)、格雷码(Gray-code)编码、独热码(One-hot)编码

    一般的,在Verilog中最常用的编码方式有二进制编码(Binary).格雷码(Gray-code)编码.独热码(One-hot)编码. 二进制码和格雷码是压缩状态编码. 若使用格雷编码,则相邻状态转 ...

  3. python numpy数组和one-hot编码相互转换

    a=[0,0,1,0,1,0,1]result=[] for i, x in enumerate(a):if x==1:result.append(i)print(result) python num ...

  4. 实现对文本的简单one-hot编码

    one-hot编码是将标记转换为向量的最常用.最基本方法.下面分别讲讲字符级的one-hot编码和单词级的one-hot编码. 单词级的one-hot编码 import numpy as npsamp ...

  5. 【小代码讲解】独热编码(One-Hot编码)

    独热编码(One-Hot编码) 独热编码介绍 独热编码表示 独热编码实现 使用sklearn 不使用sklearn 独热编码介绍 在机器学习中,标签的处理总是需要进行独热编码的处理,因为独热编码有以下 ...

  6. 01_什么是one-hot编码、one-hot编码过程详解、为什么需要one-hot编码?one-hot编码的优缺点、使用sklearn中的API举例

    以下资料来自:网络+最后的整合 https://www.cnblogs.com/shuaishuaidefeizhu/p/11269257.html https://www.cntofu.com/bo ...

  7. pandas使用get_dummies进行one-hot编码

    官网:http://pandas.pydata.org/pandas-docs/stable/generated/pandas.get_dummies.html pandas.get_dummies( ...

  8. 机器学习中为什么使用one-hot编码

    one-hot编码把分类数据转化为二进制格式,供机器学习使用. 转载于:https://www.cnblogs.com/xin-qing3/p/11447489.html

  9. 机器学习——One-Hot编码

    1 致谢 感谢网友NateHuang的帮助, 原文链接如下: https://www.imooc.com/article/35900 2 前言 今天在动物多分类~在赵老师给的原始代码中,动物图片的标签 ...

  10. 单词字符的one-hot编码

    单词字符的one-hot编码 one-hot编码是将标记转换为向量的最常用.最基本的方法. 1.单词级的one-hot编码 #单词级的one-hot编码 import numpy as np samp ...

最新文章

  1. IIS 7启用static JSON文件能POST方法
  2. Django (auth模块、User对象、用户认证、线上-用户认证)
  3. DLL的高级操作技术——Windows核心编程学习手札之二十
  4. 矩阵乘法的四种理解方式
  5. Linux目录/bin、/sbin、/usr/bin、/usr/sbin的区别
  6. oracle xe 最大连接数,解决Oracle XE报错ORA-12516(Oracle回话数超出限制)
  7. chcon和semanage fcontext的坑
  8. Spring的线程安全
  9. 视觉SLAM——ceres非线性最小二乘求解器
  10. 优秀的人都有一个共同点
  11. 婆媳关系不好首先就有一个斤斤计较的婆婆
  12. exec调用oracle,exec 和 call 用法详解
  13. bootstrap $(“#xxx“).bootstrapTable(‘getData‘)值不对
  14. AtCoder从小白到大神的进阶攻略
  15. 静默安装oracle11g单实例-腾讯云
  16. 电脑自带的应用商店连接不到服务器,win10应用商店无法连接服务器最佳解决方法...
  17. 移动apn接入点哪个快_51物联卡:使用物联网卡时为什么总要让你设置APN?
  18. 时间统计法--柳比歇夫
  19. python 恶搞(仿粽子写的)
  20. 修改global.func.php,DZ论坛核心代码分析-核心文件global.func.php篇

热门文章

  1. htc m7 android 6.0,HTC升级Android 6.0名单曝光 M7无缘或被淘汰
  2. javascript案例24——班级成绩求和、求平均值
  3. linux bash sed指令 sed命令(正则表达式替换)替换/etc/selinux/config参数(SELINUX=enforcing -->SELINUX=permissive)
  4. java gearman_gearman服务连接php java
  5. ccf 智能运维 裴丹_裴丹:智能运维算法需要工业界
  6. MGS-H2系列1207万像素9.7帧1英寸全局曝光GIGE千兆网工业相机
  7. Android 高仿QQ 登陆界面
  8. JAVA找门的第三天(Git配置,Editplus运行java程序)~~~
  9. 去除数组中的重复元素
  10. 数组中某个元素相同的去重_几种去除数组中重复元素的方法、数组去重