李沐动手学深度学习第四章-4.9.环境和分布偏移

我们从来没有想过数据最初从哪里来?以及我们计划最终如何处理模型的输出?

 根据测试集的精度衡量,模型表现得非常出色。 但是当数据分布突然改变时,模型在部署中会出现灾难性的失败。 

解决方案很简单(要求“正确”的数据),有些在技术上很困难(实施强化学习系统), 还有一些解决方案要求我们完全跳出统计预测,解决一些棘手的、与算法伦理应用有关的哲学问题。

1. 分布偏移的类型

考虑一个二元分类问题:区分狗和猫

 换言之,如果将来所有的“猫”现在都是狗,而我们以前所说的“狗”现在是猫。 而此时输入p(x)的分布没有任何改变, 那么我们就不可能将这种情景与分布完全没有变化的情景区分开。

幸运的是,在对未来我们的数据可能发生变化的一些限制性假设下, 有些算法可以检测这种偏移,甚至可以动态调整,提高原始分类器的精度。

1.1. 协变量偏移

这里我们假设:虽然输入的分布可能随时间而改变, 但标签函数(即条件分布P(y∣x))没有改变。 统计学家称之为协变量偏移(covariate shift), 因为这个问题是由于协变量(特征)分布的变化而产生的。

考虑一下区分猫和狗的问题:

 在测试时,

 训练集由真实照片组成,而测试集只包含卡通图片。 假设在一个与测试集的特征有着本质不同的数据集上进行训练, 如果没有方法来适应新的领域,可能会有麻烦。

1.2. 标签偏移

标签偏移(label shift)描述了与协变量偏移相反的问题。

这里我们假设标签边缘概率P(y)可以改变, 但是类别条件分布P(x∣y)在不同的领域之间保持不变。 当我们认为y导致x时,标签偏移是一个合理的假设。 例如,预测患者的疾病,我们可能根据症状来判断, 即使疾病的相对流行率随着时间的推移而变化。

1.3. 概念偏移

我们也可能会遇到概念偏移(concept shift): 当标签的定义发生变化时,就会出现这种问题。 这听起来很奇怪——一只猫就是一只猫,不是吗? 然而,其他类别会随着不同时间的用法而发生变化。(也就是一个词在不同时期表达的意思不同)

精神疾病的诊断标准、所谓的时髦、以及工作头衔等等,都是概念偏移的日常映射。 

事实证明,假如我们环游美国,根据所在的地理位置改变我们的数据来源, 我们会发现关于“软饮”名称的分布发生了相当大的概念偏移,

 如果我们要建立一个机器翻译系统, P(y∣x)的分布可能会因我们的位置不同而得到不同的翻译。 这个问题可能很难被发现。 所以,我们最好可以利用在时间或空间上逐渐发生偏移的知识

2. 分布偏移示例

2.1. 医学诊断

他们正在研究一种血液检测方法,主要针对一种影响老年男性的疾病, 并希望利用他们从病人身上采集的血液样本进行研究。 然而,从健康男性身上获取血样比从系统中已有的病人身上获取要困难得多。 作为补偿,这家初创公司向一所大学校园内的学生征集献血,作为开发测试的健康对照样本。

这可能是因为受试者在年龄、激素水平、体力活动、 饮食、饮酒以及其他许多与疾病无关的因素上存在差异。 这对检测疾病的分类器可能并不适用

2.2. 自动驾驶汽车

当美军第一次试图在森林中探测坦克时,也发生了类似的事情。 他们在没有坦克的情况下拍摄了森林的航拍照片,然后把坦克开进森林,拍摄了另一组照片。 使用这两组数据训练的分类器似乎工作得很好。 不幸的是,分类器仅仅学会了如何区分有阴影的树和没有阴影的树: 第一组照片是在清晨拍摄的,而第二组是在中午拍摄的。

2.3. 非平稳分布

典型例子:

  • 训练一个计算广告模型,但却没有经常更新(例如,一个2009年训练的模型不知道一个叫iPad的不知名新设备刚刚上市)。

  • 建立一个垃圾邮件过滤器,它能很好地检测到所有垃圾邮件。但是,垃圾邮件发送者们变得聪明起来,制造出新的信息,看起来不像我们以前见过的任何垃圾邮件。

  • 建立一个产品推荐系统,它在整个冬天都有效,但圣诞节过后很久还会继续推荐圣诞帽。

2.4. 更多轶事

  • 建立一个人脸检测器,它在所有基准测试中都能很好地工作,但是它在测试数据上失败了:有问题的例子是人脸充满了整个图像的特写镜头(训练集中没有这样的数据)。

  • 为美国市场建立了一个网络搜索引擎,并希望将其部署到英国。

  • 通过在一个大的数据集来训练图像分类器,其中每一个大类的数量在数据集近乎是平均的,比如1000个类别,每个类别由1000个图像表示。但是将该系统部署到真实世界中,照片的实际标签分布显然是不均匀的。

3. 分布偏移纠正

 在一些情况下,我们很幸运,不管协变量、标签或概念如何发生偏移,模型都能正常工作。 在另一些情况下,我们可以通过运用策略来应对这种偏移,从而做得更好。

3.1. 经验风险与实际风险

经验风险(empirical risk)是为了近似 真实风险(true risk), 整个训练数据上的平均损失,即从其真实分布p(x,y)中 抽取的所有数据的总体损失的期望值:

 

在实践中,我们通常无法获得总体数据,因此,经验风险最小化即在 (4.9.1)中最小化经验风险, 是一种实用的机器学习策略,希望能近似最小化真实风险。

3.2. 协变量偏移纠正

3.3. 标签偏移纠正

3.4. 概念偏移纠正

概念偏移很难用原则性的方式解决。 例如,在一个问题突然从“区分猫和狗”偏移为“区分白色和黑色动物”的情况下, 除了从零开始收集新标签和训练,别无妙方。 幸运的是,在实践中这种极端的偏移是罕见的。 相反,通常情况下,概念的变化总是缓慢的。 比如下面是一些例子:

  • 在计算广告中,新产品推出后,旧产品变得不那么受欢迎了。这意味着广告的分布和受欢迎程度是逐渐变化的,任何点击率预测器都需要随之逐渐变化。

  • 由于环境的磨损,交通摄像头的镜头会逐渐退化,影响摄像头的图像质量。

  • 新闻内容逐渐变化(即新新闻的出现)。

在这种情况下,我们可以使用与训练网络相同的方法,使其适应数据的变化。 换言之,我们使用新数据更新现有的网络权重,而不是从头开始训练。

4. 学习问题的分类法

4.1. 批量学习

批量学习(batch learning)中,我们可以访问一组训练特征和标签 {(x1,y1),…,(xn,yn)}, 我们使用这些特性和标签训练f(x)。 然后,我们部署此模型来对来自同一分布的新数据(x,y)进行评分。 例如,我们可以根据猫和狗的大量图片训练猫检测器。 一旦我们训练了它,我们就把它作为智能猫门计算视觉系统的一部分,来控制只允许猫进入。 然后这个系统会被安装在客户家中,基本再也不会更新。

4.2. 在线学习

更具体地说,我们首先观测到xi, 然后我们得出一个估计值f(xi), 只有当我们做到这一点后,我们才观测到yi。 然后根据我们的决定,我们会得到奖励或损失。 许多实际问题都属于这一类。

4.3. 老虎机

4.4. 控制

一个用户在新闻网站上的行为将取决于之前向她展示的内容(例如,大多数新闻她只阅读一次)。

控制理论(如PID的变体)也被用于自动调整超参数, 以获得更好的解构和重建质量,提高生成文本的多样性和生成图像的重建质量 [Shao et al., 2020]。

4.5. 强化学习

强化学习(reinforcement learning)强调如何基于环境而行动,以取得最大化的预期利益。 国际象棋、围棋、西洋双陆棋或星际争霸都是强化学习的应用实例。 再比如,为自动驾驶汽车制造一个控制器,或者以其他方式对自动驾驶汽车的驾驶方式做出反应 (例如,试图避开某物体,试图造成事故,或者试图与其合作)。

4.6. 考虑到环境

5. 机器学习中的公平、责任和透明度

最后,重要的是,当你部署机器学习系统时, 你不仅仅是在优化一个预测模型, 而你通常是在提供一个会被用来(部分或完全)进行自动化决策的工具。 这些技术系统可能会通过其进行的决定而影响到每个人的生活。

通常,在建模纠正过程中,模型的预测与训练数据耦合的各种机制都没有得到解释, 研究人员称之为“失控反馈循环”的现象。 此外,我们首先要注意我们是否解决了正确的问题。 比如,预测算法现在在信息传播中起着巨大的中介作用, 个人看到的新闻应该由他们喜欢的Facebook页面决定吗? 这些只是你在机器学习职业生涯中可能遇到的令人感到“压力山大”的道德困境中的一小部分。

6. 小结

  • 在许多情况下,训练集和测试集并不来自同一个分布。这就是所谓的分布偏移。

  • 真实风险是从真实分布中抽取的所有数据的总体损失的预期。然而,这个数据总体通常是无法获得的。经验风险是训练数据的平均损失,用于近似真实风险。在实践中,我们进行经验风险最小化。

  • 在相应的假设条件下,可以在测试时检测并纠正协变量偏移和标签偏移。在测试时,不考虑这种偏移可能会成为问题。

  • 在某些情况下,环境可能会记住自动操作并以令人惊讶的方式做出响应。在构建模型时,我们必须考虑到这种可能性,并继续监控实时系统,并对我们的模型和环境以意想不到的方式纠缠在一起的可能性持开放态度。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值