0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

简要解释one hot编码这一机器学习中极为常见的技术

zhKF_jqr_AI 来源:未知 作者:李倩 2018-06-30 09:47 次阅读

编者按:数据科学家Rakshith Vasudev简要解释了one hot编码这一机器学习中极为常见的技术。

图片来源:imgur

你可能在有关机器学习的很多文档、文章、论文中接触到“one hot编码”这一术语。本文将科普这一概念,介绍one hot编码到底是什么。

一句话概括:one hot编码是将类别变量转换为机器学习算法易于利用的一种形式的过程。

通过例子可能更容易理解这个概念。

假设我们有一个迷你数据集:

其中,类别值是分配给数据集中条目的数值编号。比如,如果我们在数据集中新加入一个公司,那么我们会给这家公司一个新类别值4。当独特的条目增加时,类别值将成比例增加。

在上面的表格中,类别值从1开始,更符合日常生活中的习惯。实际项目中,类别值从0开始(因为大多数计算机系统计数),所以,如果有N个类别,类别值为0至N-1.

sklear的LabelEncoder可以帮我们完成这一类别值分配工作。

现在让我们继续讨论one hot编码,将以上数据集one hot编码后,我们得到的表示如下:

在我们继续之前,你可以想一下为什么不直接提供标签编码给模型训练就够了?为什么需要one hot编码?

标签编码的问题是它假定类别值越高,该类别更好。“等等,什么!”

让我解释一下:根据标签编码的类别值,我们的迷你数据集中VW > Acura > Honda。比方说,假设模型内部计算平均值(神经网络中有大量加权平均运算),那么1 + 3 = 4,4 / 2 = 2. 这意味着:VW和Honda平均一下是Acura。毫无疑问,这是一个糟糕的方案。该模型的预测会有大量误差。

我们使用one hot编码器对类别进行“二进制化”操作,然后将其作为模型训练的特征,原因正在于此。

当然,如果我们在设计网络的时候考虑到这点,对标签编码的类别值进行特别处理,那就没问题。不过,在大多数情况下,使用one hot编码是一个更简单直接的方案。

另外,如果原本的标签编码是有序的,那one hot编码就不合适了——会丢失顺序信息

最后,我们用一个例子总结下本文:

假设“花”的特征可能的取值为daffodil(水仙)、lily(百合)、rose(玫瑰)。one hot编码将其转换为三个特征:is_daffodil、is_lily、is_rose,这些特征都是二进制的。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 编码器
    +关注

    关注

    41

    文章

    3338

    浏览量

    131251
  • 机器学习
    +关注

    关注

    66

    文章

    8061

    浏览量

    130440
  • 数据集
    +关注

    关注

    4

    文章

    1174

    浏览量

    24285

原文标题:什么是one hot编码?为什么要使用one hot编码?

文章出处:【微信号:jqr_AI,微信公众号:论智】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    如何通过XGBoost解释机器学习

    本文为大家介绍用XGBoost解释机器学习。 这是一个故事,关于错误地解释机器学习模型的危险以及
    发表于 10-12 11:48 1559次阅读
    如何通过XGBoost<b class='flag-5'>解释</b><b class='flag-5'>机器</b><b class='flag-5'>学习</b>

    FPGA技术与数字系统设计基础,学习这一门必看

    FPGA技术与数字系统设计基础,学习这一门这个是必须要看的,资料里面详细介绍了fpga,赶紧来下载学习吧,想要更多资料可以在下面扣1哦,免费
    发表于 05-26 15:52

    基于深度学习技术的智能机器

    ——工业机器人的智能化程度要求也越来越高,采用深度学习技术为工业机器人赋能是目前各大厂商的统认知。本文结合实际案例,
    发表于 05-31 09:36

    解释机器学习——打开机器学习黑匣子

    【资源下载】《可解释机器学习》,打开机器学习黑匣子
    发表于 05-20 14:16

    机器学习的相关资料下载

    应用与其他更简单的机器学习应用的区别在于它们采用二维输入格式。在众多机器学习应用中极为常用的神经网络是深度神经网络 (DNN)。这类神经网络
    发表于 12-14 07:03

    HOT-51-一个学习板的原理图

    HOT-51,一个学习板的原理图
    发表于 02-07 21:06 6次下载

    机器学习应用中的常见问题分类问题你了解多少

    分类问题是机器学习应用中的常见问题,而二分类问题是其中的典型,例如垃圾邮件的识别。本文基于UCI机器学习数据库中的银行营销数据集,从对数据集
    的头像 发表于 03-29 16:40 1.5w次阅读
    <b class='flag-5'>机器</b><b class='flag-5'>学习</b>应用中的<b class='flag-5'>常见</b>问题分类问题你了解多少

    详谈机器学习的决策树模型

    决策树模型是白盒模型的一种,其预测结果可以由人来解释。我们把机器学习模型的这一特性称为可解释性,但并不是所有的
    的头像 发表于 07-06 09:49 3077次阅读
    详谈<b class='flag-5'>机器</b><b class='flag-5'>学习</b>的决策树模型

    《计算机研究与发展》—机器学习的可解释

    机器学习的可解释性 来源:《计算机研究与发展》,作者陈珂锐等 摘 要 近年来,机器学习发展迅速,尤其是深度
    发表于 01-25 08:35 797次阅读
    《计算机研究与发展》—<b class='flag-5'>机器</b><b class='flag-5'>学习</b>的可<b class='flag-5'>解释</b>性

    关于机器学习模型的六大可解释技术

    本文介绍目前常见的几种可以提高机器学习模型的可解释性的技术
    的头像 发表于 02-26 17:20 1846次阅读
    关于<b class='flag-5'>机器</b><b class='flag-5'>学习</b>模型的六大可<b class='flag-5'>解释</b>性<b class='flag-5'>技术</b>

    机器学习模型的可解释性算法详解

    本文介绍目前常见的几种可以提高机器学习模型的可解释性的技术,包括它们的相对优点和缺点。
    的头像 发表于 02-16 16:21 4008次阅读
    <b class='flag-5'>机器</b><b class='flag-5'>学习</b>模型的可<b class='flag-5'>解释</b>性算法详解

    解释机器学习

    解释机器学习
    发表于 06-17 14:41 1次下载

    可以提高机器学习模型的可解释技术

    本文介绍目前常见的几种可以提高机器学习模型的可解释性的技术,包括它们的相对优点和缺点。
    的头像 发表于 02-08 14:08 869次阅读

    编码器在伺服的作用与常见伺服编码

    伺服编码器是工业机器技术核心伺服电机的必配,对于伺服电机性能乃至机器人性能的作用极为关键。
    的头像 发表于 05-25 11:35 2591次阅读
    <b class='flag-5'>编码</b>器在伺服的作用与<b class='flag-5'>常见</b>伺服<b class='flag-5'>编码</b>器

    什么是特征工程?机器学习的特征工程详解解读

    One-hot 编码对于用机器学习模型能够理解的简单数字数据替换分类数据很有用。
    发表于 12-28 17:14 132次阅读
    什么是特征工程?<b class='flag-5'>机器</b><b class='flag-5'>学习</b>的特征工程详解解读