机器学习中的7种数据偏见
作者 | Hengtee Lim
翻译 | Katie,责编 | 晋兆雨
出品 | AI科技大本营
头图 | 付费下载于视觉中国
机器学习中的数据偏差是一种错误,其中数据集的某些元素比其他元素具有更大的权重和或表示。有偏见的数据集不能准确地表示模型的用例,从而导致结果偏斜,准确性水平低和分析错误。
通常,用于机器学习项目的训练数据必须代表现实世界。这很重要,因为这些数据是机器学习如何完成其工作的方式。数据偏差可能会发生在从人类报告和选择偏差到算法和解释偏差的一系列区域中。下图是仅在数据收集和注释阶段可能出现的各种偏差的一个很好的示例。
解决机器学习项目中的数据偏差意味着首先确定它在哪里。只有在知道存在偏见的地方之后,你才可以采取必要的措施来纠正它,无论是解决数据不足还是改善注释过程的问题。考虑到这一点,请务必对数据的范围,质量和处理保持警惕,以免产生偏差。这不仅影响模型的准确性,而且还会涉及道德,公平和包容性问题。
下面,我列出了机器学习中最常见的7种数据偏见类型,以帮助你分析和了解其发生的位置以及你可以采取的措施。
(如果你需要有关机器学习项目的数据收集和数据标签的更多信息,请在阅读本文的其余部分之前,这里有一个链接,可详细了解有关机器学习的训练数据。)
数据偏差的类型
尽管并不详尽,但此列表包含了该领域中数据偏见的常见示例,以及其发生位置的示例。
样本偏差:当数据集不能反映模型将在其中运行的环境的实际情况时,就会发生样本偏差。这样的一个例子是某些主要在白人图像上训练的面部识别系统。这些模型对妇女和不同种族的人的准确度要低得多。此偏差的另一个名称是选择偏差。
排除偏差:排除偏差在数据预处理阶段最常见。通常,这是删除不重要的有价值数据的情况。但是,由于某些信息的系统排除,它也可能发生。例如,假设你有一个在美国和加拿大的客户销售数据集。98%的客户来自美国,因此你选择删除不相关的位置数据。但是,这意味着你的模型将不会因为加拿大客户的消费增加两倍多这一事实而受到影响。
测量偏差:当为训练而收集的数据与现实世界中收集的数据不同时,或者当错误的测量结果导致数据失真时,就会发生这种偏差。这种偏差的一个很好的例子出现在图像识别数据集中,其中训练数据是用一种类型的照相机收集的,而生产数据是用另一种照相机收集的。在项目的数据标记阶段,由于注释不一致也会导致测量偏差。
召回偏差:这是一种测量偏差,在项目的数据标记阶段很常见。当你不一致地标记相似类型的数据时,就会产生召回偏差。这导致较低的精度。例如,假设你有一个团队将电话的图像标记为损坏,部分损坏或未损坏。如果有人将一张图像标记为已损坏,但将相似的图像标记为部分已损坏,则你的数据将不一致。
观察者偏差:也称为确认偏差,观察者偏差是看到你期望在数据中看到或想要看到的结果的效果。当研究人员在有意识或无意识的情况下对自己的研究有主观想法进入项目时,可能会发生这种情况。当标签制作者让主观思想控制他们的标签制作习惯,从而导致数据不准确时,你也可以看到这一点。
种族偏见:尽管不是传统意义上的数据偏见,但由于其在AI技术中的盛行,因此仍然值得一提。当数据偏向特定人群时,就会发生种族偏见。在面部识别和自动语音识别技术中可以看到这一点,该技术无法像白种人那样准确地识别有色人种。Google的Inclusive Images竞赛提供了很好的例子说明了这种情况的发生。
关联偏差:当机器学习模型的数据加强和/或乘以文化偏差时,就会发生这种偏差。你的数据集可能包含一组工作,其中所有男性都是医生,所有女性都是护士。这并不意味着女人不能当医生,男人不能当护士。但是,就你的机器学习模型而言,不存在女医生和男护士。社交偏见最出名的是造成性别偏见,这在“挖掘人工智能”研究中可见。
如何避免机器学习项目中的数据偏差?
防止机器学习项目中的数据偏差是一个持续的过程。尽管有时很难知道数据或模型何时出现偏差,但是你可以采取许多步骤来帮助防止偏差或及早发现偏差。尽管远非详尽的清单,但以下要点为思考机器学习项目的数据偏差提供了入门级指南。
尽你所能,事先研究用户。请注意你的一般用例和潜在异常值。
确保你的数据科学家和数据标签团队是多元化的。
尽可能合并来自多个来源的输入以确保数据多样性。
为数据标签创建黄金标准。黄金标准是一组数据,可以反映任务的理想标记数据。它使你能够测量团队的注释的准确性。
为数据标签期望制定明确的准则,以便数据标签保持一致。
对于可能会出现数据准确性偏差的任何项目,请使用多次通过注释。例如,情感分析,内容审核和意图识别。
寻求具有领域专业知识的人员的帮助,以查看你收集和/或注释的数据。团队外部的人可能会看到团队忽略的偏见。
定期分析你的数据。跟踪错误和问题区域,以便您快速响应并解决它们。在决定删除或保留它们之前,请仔细分析数据点。
使偏差测试成为开发周期的一部分。Google,IBM和Microsoft都发布了工具和指南,以帮助分析许多不同数据类型的偏差。
如果你想更深入地了解偏见的产生方式,偏见对机器学习模型的影响以及过去在自动化技术中的偏见,我建议你参考玛格丽特·米切尔(Margaret Mitchell)的“人工智能的视野和语言偏见”演示(链接:
https://web.stanford.edu/class/archive/cs/cs224n/cs224n.1194/slides/cs224n-2019-lecture19-bias.pdf?ref=hackernoon.com)。
总结
请务必注意任何数据项目在机器学习中的潜在偏见。通过尽早安装正确的系统并保持数据收集,标记和实施的最顶层,你可以在出现问题之前就注意到它,或者在出现问题时对其进行响应。
原文链接:https://hackernoon.com/7-types-of-data-bias-in-machine-learning-ubl3t3w
本文由AI科技大本营翻译,转载请注明出处
更多精彩推荐
AI 隐身术,能让物体在视频中消失的魔法
程序员奶爸用树莓派制作婴儿监护仪:哭声自动通知,还能分析何时喂奶
强化学习:10种真实的奖励与惩罚应用
全球数百万台 Mac 疑似因 Big Sur 更新险酿计算灾难,苹果官方回应来了!
大神们都是如何在时间序列中进行特征提取的?看完就懂了!
机器学习中的7种数据偏见相关推荐
- (POST请求中的三种数据请求格式.application/x-www-form-urlencoded和multipart/form-data和application/json)
(POST请求中的三种数据请求格式.application/x-www-form-urlencoded和multipart/form-data和application/json) applicatio ...
- Android中的5种数据存储方式
Android中的5种数据存储方式 Android中的5种数据存储方式 数据存储在开发中是使用最频繁的,在这里主要介绍Android平台中实现数据存储的5种方式,分别是: 1 使用SharedPref ...
- Hibernate中的三种数据持久状态和缓存机制
Java三大框架之--Hibernate中的三种数据持久状态和缓存机制 Hibernate中的三种状态 瞬时状态:刚创建的对象还没有被Session持久化.缓存中不存在这个对象的数据并且数据库中没 ...
- PG中的几种数据类型转换方式
PG中的几种数据类型转换方式 1.通过格式化函数进行转换 函数 返回类型 描述 示例 to_char(timestamp,text) text 把时间戳转换成字符串 to_char(current_t ...
- 通读《C++ primer plus》— C++中的5种数据类型转换方式
通读<C++ primer plus>-记录一 C++中的5种数据类型转换方式 1.始化和赋值时转换 比如 int a=1; long b=2147483647; a=b; 上面的代码并不 ...
- 一文介绍机器学习中的三种特征选择方法
作者 | luanhz 来源 | 小数志 导读 机器学习中的一个经典理论是:数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限.也正因如此,特征工程在机器学习流程中占有着重要地位.广义的特征 ...
- 独家 | 机器学习中的四种分类任务(附代码)
作者:Jason Brownlee 翻译:陈丹 校对:杨毅远 全文约4400字,建议阅读18分钟 本文为大家介绍了机器学习中常见的四种分类任务.分别是二分类.多类别分类.多标签分类.不平衡分类,并提供 ...
- 【机器学习】图解机器学习中的 12 种交叉验证技术
今天我给大家盘点下机器学习中所使用的交叉验证器都有哪些,用最直观的图解方式来帮助大家理解他们是如何工作的. 数据集说明 数据集来源于kaggle M5 Forecasting - Accuracy[1 ...
- 真香啊,机器学习中这3种交叉验证方法要掌握
交叉验证是机器学习中常用的一种策略,其核心是对数据集进行划分,本文介绍sklearn中的3种交叉验证时划分数据集的方法: KFold StratifiedKFold GroupKFold 这里来举例说 ...
最新文章
- Deep Non-Line-of-Sight Reconstruction:深度非视域重建
- 福布斯:2018年将改变世界的九股科技大趋势
- CG CTF WEB 伪装者
- 使用上下文属性将C ++对象嵌入QML
- [Swift]最强UIButton解析 | #selector()绑定点击事件
- 50张非常精美的Apple主题桌面壁纸(上篇)
- MySQL流浪记(七)—— MySQL删除表数据
- org.springframework.mail.MailAuthenticationException: Authentication failed 解决方案
- 编写10ms延时的子程序c语言,求解!!!用汇编语言编写延时程序问题!!!!...
- C++中用TinyXML对XML文件进行解析
- php 清除opcache缓存的方法
- 递归算法教学设计java,递归算法数字游戏教学软件的设计|java递归算法经典实例...
- BP神经网络算法基本原理,bp神经网络的算法步骤
- python 角度变弧度_弧度制和角度值怎么转换?
- VMWare安装Deepin系统
- 数据分析师的工作职责是什么?
- Java 数学三角函数正弦、余弦、正切以及反正弦、反余弦、反正切函数的使用
- 教育问题案例研究(张奎明)
- 读书百客:《十一月四日风雨大作》评赏
- android-keystool
热门文章
- puppet yum模块、配置仓储、mount模块
- PXE全自动安装操作系统--centos7.3学习笔记
- 修改360浏览器 标题栏 显示的文字
- JavaSript模块化 AMD CMD 详解.....
- MAC安装OpenXenManager管理Xenserver
- 让你的输入框使用Google云语音输入技术
- IIS 7.5 + FastCGI + PHP + Drupal 7 + Oracle
- js的全部替换函数replaceAll
- 医院数据中心机房建设资料汇总(31篇)
- linux系统目录结构介绍