代理模型可以帮助解释中高复杂度的机器学习模型。它们是更简单的模型,可用于解释更复杂的模型。它们被假定为表示复杂模型的内部机制,不能完美地表示潜在的响应函数,也不能捕捉复杂的特征关系。它们帮助用户了解模型给出的预测输出的趋势,以及从一组自变量中选择的属性的变化。从过去的实际经验来看,当输入以特定方式变化时,用户将对模型输出有明确的期望。这些输入-输出关系在代理模型中被捕获。通过从代理模型生成的简单的输入输出关系图,您可以轻松地解释模型对特定范围内选定属性的响应。为了充分解释模型,您需要通过从模型的一组重要属性中选择一个或多个输入来训练多个代理模型。
训练代理模型是解释现有机器学习模型行为的最简单方法。要训练代理模型,您无需了解生产模型的任何信息,您可能会将其视为黑匣子。它有一个输入数据,当我们传递它时,我们得到一个输出。以下是训练代理模型的基本要求:
– 现有的机器学习模型。
– 现有模型可以处理的输入数据。这可以是来自生产环境的真实数据。
遵循以下步骤:
1. 将数据(自变量)传入黑盒模型,得到预测值。
2. 使用来自输入数据的自变量和来自黑盒的预测作为因变量来训练代理模型。
3. 计算代理模型的预测误差,并与黑盒的预测进行比较。误差越小,代理模型对黑匣子的解释就越好。
当我们得到一个具有可接受的预测误差的代理模型时,我们可以查看它的参数以了解哪些特征是重要的以及黑盒模型是如何工作的。由于代理模型仅根据黑盒模型的预测而不是真实结果进行训练,因此它们只能解释模型,而不能解释真实数据。
简单模型的全局可解释属性用于解释更复杂模型的全局属性。与全局代理模型一样,局部代理模型是复杂模型的简单模型,但它们仅针对某些有趣的数据行进行训练(例如,数据集中的最佳客户或根据一些模型的预测)。全局代理关心解释模型的整个逻辑,而局部代理只对理解受限于有限输入变量范围的预测感兴趣。
相关帖子DA内容精选
|