介绍
假设您拥有一个已经合理的生产ML模型。您知道将相关和多样化的信号源添加到您的模型中是一种提升性能的确定方法,但查找实际提高性能的新功能可能是一种缓慢而繁琐的试用过程。
在搜索开始时,您可能会期望重用为其他项目开发的功能,或者您可能会选择原型您怀疑将使您的模型受益的新功能。在任何一种情况下,都可以有数数百到数千次潜在的新功能来探索,其中许多人对共同主题的略有变化。基本问题是,这不是清楚的,如果有的话,这些功能将实际上可以提高模型的性能。绝大多数新功能将部分(如果没有完全)在那里的特征。
您可能会尝试一次或小组中添加它们以评估单个影响,但这需要时间,并且很难以这种方式在不同的功能中揭示协同作用。
它也可以诱人地包括一下子的整个厨房水槽,最大化升力。假设它甚至可能训练具有太多功能的大型模型的模型遭受维度的诅咒,减少吞吐量,更高的服务成本,更低的可解释性和对特征漂移的弹性。令人困惑地,尝试从“厨房水槽”模型中的重试可能会产生反向直观的结果,因为Shap值和其他特征重要性得分依赖于一个特定培训的模型的细节,并且不考虑特征冗余。
最后,并非所有功能都适用于每种用例:在许多应用中,新功能必须在包含在生产模式中的商业和法律利益相关者通过审查。
动机
模型所有者在重新考虑功能时,模型所有者面临的实际挑战和摩擦导致一些常见的反模式:
- 功能蔓延:一旦将功能添加到模型中,它们很少被重新审视或删除,因此模型往往会随着时间的推移越来越累积
- 功能已冗余:因为将新功能的厨房水槽抛入模型时更简单,但许多新创建的功能将是冗余的,并且已经存在于现有功能
虽然功能蔓延和冗余可能不会显着影响各种模型在培训时的准确性,但它们在一个大型组织中推动了显着的直接和间接成本,其中许多团队各自拥有多种型号:
- 软站:由于特征漂移和上游数据管道中断,具有大量功能的模型更容易降低降级,并且这些昂贵的中断需要更长时间才能诊断和解决大量特征
- 增加成本:由于特征蔓延和冗余,维护,计算和服务功能的成本不会随着时间的推移而增长;在服务延迟与业务价值紧密相关的应用程序中,增加的特征计数可能导致尾随延迟上升,进入利润
如果有一个可扩展的自动化进程,可以解决优化模型特征中固有的摩擦和实际挑战,则我们可以在控制下带来功能蔓延,冗余及其相关成本。在优步AI,我们一直在开发一种方法,我们称之为最佳特征发现,该发现搜索了优步的最紧凑的功能集,对于给定的模型,均同时提高精度和减少特征计数。
背景
在讨论最佳特征发现的细节之前,我们希望在其建造的数学和软件技术上涵盖一些背景。在将这些概念连接到称为信息理论特征选择的机器学习的子领域之前,我们将首先简要概述信息理论和关键思想,如相关性和冗余。
信息理论
1948年,Claude Shannon引入了信息理论,其中数学地正式地形成了信息与不确定性(或概率)之间的联系。这个理论中的中央数量被称为熵:
熵是一种方法来量化关于传达每个结果所需的预期比特数量的随机变量结果的不确定性。在上面的公式中,p(X一世)是单一结果的概率X一世在......之外N可能的结果X。数量-log.2p(X一世)来自单一可能结果的信息,而熵h(X)是所有可能结果的预期信息X。
通过观察另一个随机变量y对大约一个随机变量x获得的信息量称为相互信息:
相互信息只是熵的差异:H(x)是观察Y之前关于x的不确定性的量,H(x | y)是鉴于我们对Y的观察到X的不确定性量。
相关性和冗余
从信息理论的角度来看,模型中的预测目标和特征都是随机变量,并且可以在比特中量化关于目标的一个或多个特征的信息量。
一个重要的概念是关联,衡量通过观察特征的值,我们预期的信息是多少信息。另一个重要的概念是冗余,衡量一个特征与另一个功能之间共享多少信息。
回到硬币翻转示例,可能有不同的方法来获取有关硬币偏差的信息。我们可以访问一个功能,即根据硬币的设计告诉我们头部的速率,或者我们可以构建历史上追踪头部和尾部数量的配置文件功能。这两种功能都同样相关的在那时,他们提供相同的信息,但观察两个功能并不能给我们更多信息而不是观察一个,因此它们是相互的多余的。
在信息理论的背景下,特征x和目标y之间的互信息表示相关性,即通过观察到该特征来减少目标的不确定性是多少?
Intuitively, when selecting features for a model, we want to prioritize features with the most relevance, however, in a world where most features are partly or wholly redundant with other features, ranking features by relevance alone won’t lead to the most compact subset of features.
两个特征之间的冗余xj和X.K.也可以使用相互信息量化:
如果X.j和X.K.完全独立并且根本不重叠,那么相互信息将等于0.随着x之间的冗余程度j和X.K.增加,相互信息增加,直到观察x的点j让您预测x的值K.确切地。
信息理论特征选择
信息理论特征选择是一种使用信息理论来对所有可能特征进行排名的方法,以便选择预测模型的小型-K子集。这些方法很有用,因为搜索所有可能的特征组合的集成是昂贵的。信息 - 理论特征选择方法产生近似数量的逐步贪婪的排名关联和冗余关于在前步骤中已选择的标签和功能。我们建议您对来自文献的不同方法的详细调查,但最着名的方法是MRMR(最大相关性,最低冗余)。MRMR的排名函数如下所示:
在特征选择的每个阶段,MRMR根据其相关性排列其余特征,通过与已经选择的功能的近似冗余度来惩罚。近似替换了在考虑的特征之间的成对冗余术语之和的联合冗余XK.和集合S.已经选择的功能。
MRMR和相关技术使得可以使用贪婪,逐步的功能选择来发现一个紧凑,不同的相关功能子集。要了解这项工作,假设最相关的功能有两个副本。选择一个副本后,剩余的副本将在下一阶段中的其他功能排名,因为它与已选择的副本完全重叠。如果没有这种惩罚,在考虑其他功能之前,贪婪的选择将选择最相关的功能的两个副本。
Michelangelo调色板:优步的功能商店
Uber的调色板功能商店是一个集中式的功能数据库,来自整个公司的各个团队众包;一站式商店,用于搜索和管理优步中的功能。
调色板举办数百个桌子,每个桌子最多有一千种不同的功能。它授予工程师和数据科学家访问丰富的功能池,使得在团队中更容易创建和分享功能,并以生产规模的实时管道摄取特征。
X-ray:数据仓库的相互信息
X射线是Uber AI开发的信息 - 理论数据挖掘工具。设计用于水平可扩展性,X射线迅速发现并定量数据集中的信号,可以提供有关感兴趣结果的信息,例如机器学习标签或商业KPI。它建立在Apache Spark之上,以利用Spark的分布式计算框架和与Hive等数据仓库技术的无缝集成。
X-ray最初用于数据探索应用程序,例如在服务器日志中揭示软件中断的根本原因,但今年X-Ray团队通过添加信息 - 理论特征选择API来扩展其功能。此新API旨在提供优步提供灵活且可扩展的功能选择功能,可以与调色板功能存储的增长保持速度,并将内部功能选择工具整合到共同的平台解决方案中。
ML MADERS可以使用X射线自动识别与其模型相关的调色板功能存储中的现有功能,从而避免需要构建新功能。相反,X射线有助于整合模型中使用的任何功能,在调色板中具有现有功能与现有功能重叠(冗余)。
最佳特色发现
方法
最佳特点发现是一个自动化的过程,可以帮助客户团队找到一个紧凑,表现功能为他们的监督学习问题设置。我们在多个项目上应用了此过程,并观察到了很大的结果:我们能够在保留甚至提高模型的准确性时减少50%的总特征计数。
最佳特征发现使用两个单独的自动化工作流:特征排名和特征修剪。将特色发现分为两种工作流程为数据科学家提供了使理智检查的机会泄漏或在灌浆之前和在修剪之前潜在的合规性问题。
特征排名
- 特征排名以基线数据集启动,包含模型现有功能和标签的所有数据集。
- 基线数据集与调色板商店中的所有其他适用功能加入,通常将功能总数增加到成千上万的成千上万。此步骤还可以配置为根据需要将某些功能或表排除在调色板中。
- 最后,我们运行X射线特征选择引擎,以产生大量的候选功能。
特色修剪
通过数据科学家排名和验证特征后,竞争模型具有不同数量的顶部K候选特征,并且在验证精度方面选择了最佳的模型。
案例分析
以下是我们最近在我们的一个企业关键型号之一进行的实验。问题是二进制分类问题,基线模型是一个具有75个功能的随机林。应用最佳特征发现过程,我们首先使用功能存储中的额外2k +功能加入原始数据集,然后应用了最小冗余最大相关性(MRMR)算法,以给定预测目标的前100个功能。在获取模型 - 不可知的特征排名后,我们去培训模型并迭代地修剪所选功能的数量。
有趣的是,如情节所示,我们能够达到明显更高的性能,而且还将特征的数量减少一半。新的37个功能包括来自原始组的15个,由X射线从调色板功能商店新引入22。一个较小的功能集具有较低的工程复杂性,较少的依赖性,较低的储存成本和服务等待时间等优点。
我们认为增益背后有多种原因。一个是X射线能够识别具有来自大型候选池的预测力的特征。其次,由于MRMR能够惩罚功能的冗余,因此整个过程消除了杂散的特征,从而将模型保存过量。
未来的工作
本工作的未来扩展包括将调色板功能存储中的冗余功能整合到常见的功能集中,自动功能工程和转换,支持嵌入式和结构化数据,以及改进的信息理论特征选择算法超出了超出了所用的成对近似的信息 - 理论特征选择算法MRMR。
如果您发现在大规模的ML系统令人兴奋的令人兴奋的情况下,优步AI是招聘!!
Apache®,Apache Spark和Spark是注册商标或商标Apache软件基础在美国和/或其他国家。使用这些标记暗示apache软件基础的认可。
Fennfoot的“卫星菜肴”用CC BY-SA 2.0获得许可。要查看本许可证的副本,请访问https://creativeCommons.org/licenses/by-sa/2.0/
参考
[1] C. e. Shannon,“沟通的数学理论”贝尔系统技术期刊,卷。27,不。3,PP。379-423,1948年7月,DOI:10.1002 / J.1538-7305.1948.TB01338.x。
[2]棕色,G.,Pocock,A.,Zhao,M.-J.,&Luján,M.(2012)。条件可能性最大化:信息理论特征选择的统一框架。机床学习研究学报:JMLR雷竞技是骗人的那13.(2),27-66。










