首页 > 解决方案 > 如何在特征值约束的情况下最大化 ML 模型输出预测?

问题描述

我们的团队开发了一个细粒度的个人客户级别 ML 模型,该模型可以预测给定数量的促销活动(电话、电子邮件、会议、印象等)产生的收入(因变量)和客户的少数分类细节(地址、指定、细分等)。 )。

一旦模型到位,我们应该给出“最佳”促销活动,在这些促销活动中,收入在个人层面最大化,并有一定的限制(比如整体促销支出低于一定金额等。我们对每个促销都有成本,所以基本上约束是像独立特征值的界限)。

目前,我们模拟了电话、电子邮件、会议、印象等所有可能的促销价值(类别变量不会因个人客户而改变),并通过模型预测为每个人获得最佳收入案例。

目前这种方法的问题是它是一种蛮力方法。我们有大约 100 万客户,模拟不同数量的促销条目(很多组合)最终会得到大量数据,并且预测本身需要大量时间。

鉴于这是一个简单的最大化问题,但具有 ML 模型预测输出(在我们的例子中为神经网络)作为给定输入特征的函数,我们正在寻找任何无需数据模拟即可解决此问题的优化器。它就像 excel 中的求解器函数,其中目标函数是 ML 模型预测。

一个简单的类比——加州房价是一个众所周知的 ML 回归问题。假设我们有一个完善的模型(非参数模型,比如神经网络),我们如何估计每个县的房价最高的最佳特征值(有一些约束)(想象数据具有县信息为好)没有明确模拟数据。

标签: pythonmachine-learningneural-networkregressionmathematical-optimization

解决方案


我鼓励您研究像 LIME 或 SHAP 这样的解决方案:

  1. https://github.com/slundberg/shap - 通过博弈论进行模型解释。
  2. https://github.com/marcotcr/lime - 通过本地可解释拟合进行模型解释。

推荐阅读