独热编码和自然数编码

自然数编码

总结就是用0-n来表示,
比如:
国籍特征:[‘中国’, ‘美国’, ‘法国’]
性别特征:[ ‘男’,‘女’]
分别用0表示中国的男生,1表示中国的女生,2表示美国的男生,3表示美国的女生,4表示法国的男生,5表示法国的女生。

独热编码

独热编码即 One-Hot 编码,又称一位有效编码,其方法是使用N位状态寄存器来对N个状态进行编码,每个状态都有它独立的寄存器位,并且在任意时候,其中只有一位有效。
这里有两个特征:
国籍特征:[‘中国’, ‘美国’, ‘法国’]
性别特征:[ ‘男’,‘女’]
表示一名中国的女生,One-Hot 编码为:[10001]
表示一名法国的男生,One-Hot 编码为:[00110]

使用独热编码效果最好的是验证码识别:
在这里插入图片描述
在这里插入图片描述
验证码中分别有大写字母,小写字母以及数字组成,总共为62个符号,如果使用自然数编码的话,那么进行四位验证码的分类识别的话,神经网络的输出层为62的四次方,而使用独热编码的话则输出层为62*4。两种方法对比使用,会发现独热编码效果极好。

在pytorch中,可以使用自带的torch.nn.functional.one_hot

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

<编程路上>

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值