将标签进行One-hot编码
在利用机器学习或者深度学习解决分类问题时,我们需要将标签进行编码,有时也需要将离散的自变量进行分类编码,特别是做神经网络或回归预测时,对离散的自变量也进行One-hot编码扩维是一种很好办法,例如我们预测租房市场单个房源的价钱时,假设装修程度是影响其价格的因素,有豪装、精装、中装、简装四种,如果我们将其视为一个变量X1不同的值,即分别编码维1,2,3,4,那么做神经网络预测时给予这一个变量权重,就不是很合适,除非事先知道这四种对价格影响的排序,否则不能给予很好的权重,此时应该对其扩维,成为X1、X2、X3、X4,对应的豪装=[1,0,0,0]、精装=[0,1,0,0]...以此类推。如果视为一个变量,则豪装=[1]、精装=[2]...以此类推,这样的算法做分类预测或者回归预测是不合适的。此时我们需要对离散的自变量X或者标签Y进行One-hot编码。
本文采用Python在Liunx环境下,安装Anaconda3的环境下,进行编程实现,值得一提的是Anaconda3包含了numpy、pandas、sklearn等科学计算、数据分析、机器学习包,也可以在再次基础上安装tensorflow框架进行深度神经网络研究。假设有一组样本的标签y=[0,1,2,3,1,2,0,1],我们将其进行One-hot编码,则代码实现如下
from sklearn.preprocessing import OneHotEncoder
import numpy as np
y=np.array([0,1,2,3,1,2,0,1])
ohe = OneHotEncoder()
ohe.fit([[0],[1],[2],[3]])
print(ohe.transform(y.reshape(-1,1)).toarray())
我们会看到输出结果为
/home/ubuntu/anaconda3/bin/python /home/ubuntu/PycharmProjects/Testpycharm/liyang2.py
[[1. 0. 0. 0.]
[0. 1. 0. 0.]
[0. 0. 1. 0.]
[0. 0. 0. 1.]
[0. 1. 0. 0.]
[0. 0. 1. 0.]
[1. 0. 0. 0.]
[0. 1. 0. 0.]]
Process finished with exit code 0
将标签进行One-hot编码相关推荐
- Emoji表情转为自定义标签格式,Unicode编码等
Emoji表情转为自定义标签格式,Unicode编码等 https://github.com/ChurchTao/emoji-js 先上源代码,有问题提个issue ,有用的点个star~ 相信大家 ...
- Scikit-learn数据预处理分类变量编码之多标签二值化
Scikit-learn数据预处理分类变量编码之多标签二值化 1 声明 本文的数据来自网络,部分代码也有所参照,这里做了注释和延伸,旨在技术交流,如有冒犯之处请联系博主及时处理. 2 名义变量多标签二 ...
- 深度学习--TensorFlow(7)拟合(过拟合处理)(数据增强、提前停止训练、dropout、正则化、标签平滑)
目录 拟合 1.拟合情况 2.抵抗过拟合方法 过拟合处理(防止过拟合): 一.数据增强 1.设置图像生成器 2.载入图片 3.图像转三维数据 4.三维转四维 5.生成图片(用图像生成器) 代码 二.提 ...
- accp8.0html作业,Accp8.0HTML标签
第一章 1.HTML超文本标记语言 2.网页 3.网页头部 4.网页标题 5.网页主体 6.DOCTYPE声明3种级别: (1)Strict 严格类型 (2)Transitional过渡类型 (3)F ...
- 【小代码讲解】独热编码(One-Hot编码)
独热编码(One-Hot编码) 独热编码介绍 独热编码表示 独热编码实现 使用sklearn 不使用sklearn 独热编码介绍 在机器学习中,标签的处理总是需要进行独热编码的处理,因为独热编码有以下 ...
- 关于字符编码,你所需要知道的(ASCII,Unicode,Utf-8,GB2312…)
字符编码的问题看似很小,经常被技术人员忽视,但是很容易导致一些莫名其妙的问题.这里总结了一下字符编码的一些普及性的知识,希望对大家有所帮助. 还是得从ASCII码说起 说到字符编码,不得不说ASCII ...
- 关于字符编码,你所需要知道的
起源 字符编码的问题看似很小,经常被技术人员忽视,但是很容易导致一些莫名其妙的问题.这里总结了一下字符编码的一些普及性的知识,希望对大家有所帮助. 还是得从ASCII码说起 说到字符编码,不得不说AS ...
- 【caffe-Windows】以mnist为例的hdf5单标签处理——matlab实现
前言 主要是想尝试看一下多标签的caffe是如何进行输入输出的,但是目前还未找到基于原始caffe做多标签输入的代码,大部分都是基于源码做了一部分修改实现多标签分类,caffe官网倒是有一个多标签的P ...
- 【转】关于字符编码,你所需要知道的
字符编码的问题看似很小,经常被技术人员忽视,但是很容易导致一些莫名其妙的问题.这里总结了一下字符编码的一些普及性的知识,希望对大家有所帮助. 还是得从ASCII码说起 说到字符编码,不得不说ASCII ...
最新文章
- nodejs ld linux.so,请教大神,如何在独立虚拟主机上配置node.js开发环境?
- 练习 MongoDB 操作 —— 分片篇(五)
- day3:编码,基本数据类型操作,字符串的操作
- 利用iframe实现ajax 跨域通信的解决方案
- 阿里巴巴机器学习系列课程
- 在c语言中函数的定义变量的值为,变量定义(C语言中变量的声明和定义)
- PL/SQL表---table()函数用法
- 美国顶尖大学的博士是怎样练成的?
- java 下载后删除,在服务器端生成文件后,下载后并删除,改了后发现文件变成空白解决思路...
- 上新啦!OpenMMLab全面更新!
- MySQL复习值代码知识点(1)
- 在Eclipse上安装pydev开发工具
- 《大道至简》第一章读后感(java伪代码)
- 解决tsc.exe 已退出 代码为 1
- 手机号码检测开通微信方法
- Dynamics 365 IFD设置反向代理后无法跳转登录页的解决方法
- 手机轻松远程投屏,用Windows电脑一次看5个抖音账号!
- python对excel添加新的一行_python 实现在Excel末尾增加新行
- 解决华擎J3455主板DSM兼容性问题
- MD5绕过(强弱类型比较)