首页 百问百答 帖子详情
为什么要onehot编码
收藏
快速回复
百问百答 问答学习资料 188 1
为什么要onehot编码
收藏
快速回复
百问百答 问答学习资料 188 1

使用onehot编码可以解决分类问题中的标签之间的距离问题。举个例子,假设有三个完全独立的类别,比如:胡桃:1,刻晴:2,心海:3。如果我们只赋予他们这种数值的标签,那么将导致胡桃与刻晴之间的距离<胡桃到心海之间的距离,这是有问题的,另外如果我们平均两个分类为1和3的模型,最后得到的结果却是刻晴,这也是有问题的,平均的结果应该是胡桃与心海五五开。这时我们使用onehot编码就不会出现这种问题,例如:胡桃:(1,0,0),刻晴:(0,1,0),心海:(0,0,1),这样他们三者彼此到彼此的距离都是一致的,而且这种onehot编码也更适宜于交叉熵损失函数。

onehot编码的一个缺陷就是,它使得标签中的所有类别彼此之间距离或相似度都是一致的,因此,在自然语言处理中,我们还要把单词做一下word2vec做一下编码,使得语义相近的词,他们的编码向量也比较一致。在视觉模型分类中,一般使用onehot即可,因为我们的类别数不会像单词那么多。

0
收藏
回复
全部评论(1)
时间顺序
半夜穷醒了
#2 回复于2023-12

https://aistudio.baidu.com/projectdetail/7198463?contributionType=1  谁能帮忙做一下这个实验

0
回复
在@后输入用户全名并按空格结束,可艾特全站任一用户