What-If Tool:无代码探索机器学习模型行为

FreeGuideOnline 最新 2026-06-27

python

在 Colab 中执行以下代码

!pip install witwidget import witwidget from witwidget.notebook import WitWidget, WitConfigBuilder


如果你已经在本地安装了 TensorFlow 2.x,可直接通过 TensorBoard 调用 WIT插件:

```shell
pip install tensorboard-plugin-wit

启动 TensorBoard 后,在“What-If Tool”选项卡中即可使用。

准备模型与数据

WIT 支持 TensorFlow、XGBoost、Scikit-learn 等多种模型。你需要提供一个可调用的推理函数(Python 函数),该函数接受一个批次的样本特征并返回预测分数。对于分类模型,通常返回各类别的概率;对于回归模型,返回预测值。

例如,加载一个已训练的 TensorFlow 模型并创建推理函数:

import tensorflow as tf
model = tf.keras.models.load_model('my_model.h5')

def predict_fn(examples):
    # examples 是 list of dict,每个 dict 是特征名到特征值的映射
    # 需要转换成模型可接受的格式,例如 numpy 数组
    import numpy as np
    features = np.array([[ex['feature1'], ex['feature2']] for ex in examples])
    preds = model.predict(features)
    return preds.tolist()  # 返回列表

数据集则需提供为与推理函数输入格式一致的 list of dict,并附带标签列(可选),用于性能分析。

快速上手:从数据探索到假设分析

加载工具面板

使用 WitConfigBuilder 配置数据、模型和调整项,然后实例化 WitWidget 即可在 Notebook 中内嵌交互面板:

config = WitConfigBuilder(data_samples).set_model_type('classification') \
        .set_inference_predict_fn(predict_fn) \
        .set_label_vocab(['class_0', 'class_1']) \
        .set_target_feature('label')  # 如有标签
WitWidget(config, height=800)