lime-explainer

SkillMedia

LIME-based local explanation skill for individual predictions across tabular, text, and image data.

Instructions available. Your AI can read the instructions. Execution depends on the setup they require.

Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.

Then ask your AI: use the lime-explainer skill

What this skill tells your AI

The instructions your AI receives, as published by a5c-ai/babysitter in library/specializations/data-science-ml/skills/lime-explainer/SKILL.md and read by ahel’s review.

Overview

LIME-based local explanation skill for individual predictions across tabular, text, and image data using Local Interpretable Model-agnostic Explanations.

Capabilities

  • Tabular data explanations
  • Text classification explanations
  • Image classification explanations
  • Submodular pick for representative samples
  • Custom distance metrics
  • Kernel width tuning
  • Feature discretization
  • Local surrogate model analysis

Target Processes

  • Model Interpretability and Explainability Analysis
  • Model Evaluation and Validation Framework

Tools and Libraries

  • LIME
  • scikit-learn
  • numpy
  • PIL/Pillow (for images)

Input Schema

{
  "type": "object",
  "required": ["modelPath", "dataType", "instancePath"],
  "properties": {
    "modelPath": {
      "type": "string",
      "description": "Path to the trained model or prediction function"
    },
    "dataType": {
      "type": "string",
      "enum": ["tabular", "text", "image"],
      "description": "Type of data to explain"
    },
    "instancePath": {
      "type": "string",
      "description": "Path to instance(s) to explain"
    },
    "tabularConfig": {
      "type": "object",
      "properties": {
        "trainingDataPath": { "type": "string" },
        "featureNames": { "type": "array", "items": { "type": "string" } },
        "categoricalFeatures": { "type": "array", "items": { "type": "integer" } },
        "classNames": { "type": "array", "items": { "type": "string" } }
      }
    },
    "textConfig": {
      "type": "object",
      "properties": {
        "classNames": { "type": "array", "items": { "type": "string" } },
        "splitExpression": { "type": "string" }
      }
    },
    "imageConfig": {
      "type": "object",
      "properties": {
        "segmenter": { "type": "string", "enum": ["quickshift", "slic", "felzenszwalb"] },
        "hideColor": { "type": "string" },
        "numSamples": { "type": "integer" }
      }
    },
    "explainerConfig": {
      "type": "object",
      "properties": {
        "numFeatures": { "type": "integer" },
        "numSamples": { "type": "integer" },
        "kernelWidth": { "type": "number" }
      }
    }
  }
}

Output Schema

{
  "type": "object",
  "required": ["status", "explanations"],
  "properties": {
    "status": {
      "type": "string",
      "enum": ["success", "error"]
    },
    "explanations": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "instanceId": { "type": "string" },
          "predictedClass": { "type": "string" },
          "predictionProbability": { "type": "number" },
          "features": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "feature": { "type": "string" },
                "weight": { "type": "number" },
                "contribution": { "type": "string" }
              }
            }
          },
          "localAccuracy": { "type": "number" }
        }
      }
    },
    "visualizations": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "instanceId": { "type": "string" },
          "plotPath": { "type": "string" }
        }
      }
    }
  }
}

Usage Example

{
  kind: 'skill',
  title: 'Generate LIME explanations for predictions',
  skill: {
    name: 'lime-explainer',
    context: {
      modelPath: 'models/classifier.pkl',
      dataType: 'tabular',
      instancePath: 'data/instances_to_explain.csv',
      tabularConfig: {
        trainingDataPath: 'data/train.csv',
        featureNames: ['age', 'income', 'credit_score'],
        categoricalFeatures: [0, 2],
        classNames: ['reject', 'approve']
      },
      explainerConfig: {
        numFeatures: 10,
        numSamples: 5000
      }
    }
  }
}

Signals

GitHub stars
2k
Forks
112
Last commit
Sep 2026
Advanced
Item type
skill
Key
lime-explainer
Source
github.com/a5c-ai/babysitter