shap.maskers.Partition
- class shap.maskers.Partition(data, max_samples=100, clustering='correlation')[源代码]
这通过在给定的背景数据集上进行积分来掩盖表格特征。
与独立不同,分区尊重数据的层次结构。
- __init__(data, max_samples=100, clustering='correlation')[源代码]
使用给定的背景数据和聚类构建一个分区掩码器。
- 参数:
- 数据numpy.ndarray, pandas.DataFrame
用于遮罩的背景数据集。
- max_samples整数
从传递的背景数据中使用的最大样本数。如果数据超过 max_samples,则使用 shap.utils.sample 对数据集进行子采样。掩码器输出的样本数(用于积分)与背景数据集中的样本数匹配。这意味着较大的背景数据集会导致运行时间更长。通常,大约 1、10、100 或 1000 个背景样本是合理的选择。
- 聚类字符串或 numpy.ndarray
如果是一个字符串,那么这是用于创建特征聚类的距离度量。距离函数可以是任何有效的 scipy.spatial.distance.pdist 的 metric 参数。然而,我们建议在大多数情况下使用 ‘correlation’。完整的选项列表包括 braycurtis、canberra、chebyshev、cityblock、correlation、cosine、dice、euclidean、hamming、jaccard、jensenshannon、kulsinski、mahalanobis、matching、minkowski、rogerstanimoto、russellrao、seuclidean、sokalmichener、sokalsneath、sqeuclidean、yule。这些都是来自 scipy.spatial.distance.pdist 的 metric 参数的所有选项。如果是一个数组,那么这被认为是特征的聚类。
方法
__init__
(data[, max_samples, clustering])使用给定的背景数据和聚类构建一个分区掩码器。
invariants
(x)这将返回一个掩码,指示当我们对它们进行掩码处理时哪些特征发生了变化。
load
(in_file[, instantiate])从文件流加载一个表格掩码器。
save
(out_file)将表格掩码写入文件流。
- invariants(x)
这将返回一个掩码,指示当我们对它们进行掩码处理时哪些特征发生了变化。
这种可选的掩码方法允许解释器在所有将被掩码的特征都不变时,避免重新评估模型。
- classmethod load(in_file, instantiate=True)
从文件流加载一个表格掩码器。
- save(out_file)
将表格掩码写入文件流。