Skip to content

Evaluator Node

The Evaluator node automatically detects your model type and computes appropriate metrics. It also provides comprehensive model explainability with SHAP values, feature importance, and partial dependence plots.

PropertyValue
TypeAnalysis node
InputsTrained model (from Trainer)
OutputsMetrics, visualizations, explanations
Auto-detectClassification vs Regression

The Evaluator auto-detects model type and shows appropriate metrics in the Metrics tab.

MetricDescription
AccuracyPercentage of correct predictions
PrecisionTrue positives / (True positives + False positives)
RecallTrue positives / (True positives + False negatives)
F1 ScoreHarmonic mean of precision and recall
Confusion MatrixVisual heatmap of predictions vs actual

Metrics are displayed as a bar chart with values labeled.

Click the Explain button in the Metrics tab to generate explanations. The Evaluator provides three types of explainability:

Shows how much each feature contributes to model predictions by measuring accuracy drop when the feature is shuffled.

Visualization:

  • Horizontal bar chart
  • Error bars show ±standard deviation
  • Top 10 features displayed
  • Positive values = feature helps; negative = feature hurts

SHAP (SHapley Additive exPlanations) explains individual predictions by attributing contribution to each feature.

Smart Explainer Selection:

Model TypeExplainerSpeed
Random Forest, Gradient BoostingTreeExplainerFast
Linear/Logistic RegressionLinearExplainerFast
SVM, KNN, MLPKernelExplainerSlow (limited to 50 samples)

Beeswarm Chart:

  • Each dot = one sample
  • X-axis = SHAP value (impact on prediction)
  • Y-axis = Features (sorted by importance)
  • Color = Feature value (red=high, blue=low)
  • Class selector for multiclass classification

Shows how changing one feature affects predictions while holding others constant.

Features:

  • Line plot showing prediction vs feature value
  • ICE (Individual Conditional Expectation) lines for individual samples
  • Limited to 50 ICE lines for performance
  • Top 5 features selectable
  • For classification: shows probability per class

The Explain section shows:

  1. Progress bar — Three stages: Permutation → SHAP → PDP
  2. Feature Importance chart — Permutation-based importance
  3. SHAP Beeswarm — Impact distribution per feature
  4. Partial Dependence — Feature relationship plots
  5. Summary insights — Human-readable interpretation

The Evaluator generates natural language insights:

“Your model relies heavily on ‘petal_length’, which accounts for 45% of the prediction impact.”

“Your model’s predictions are primarily driven by 3 features: petal_length, petal_width, sepal_length, together accounting for 87% of the impact.”

Insights also flag potential issues:

  • High variance in importance scores (model instability)
  • Single feature dominance (potential data leakage)

All charts use ECharts for interactive visualization:

ChartLocationFeatures
Metrics Bar ChartMetrics tabSide-by-side comparison
Confusion MatrixMetrics tabHeatmap with counts
Feature ImportanceExplain sectionHorizontal bars with error
SHAP BeeswarmExplain sectionInteractive dots with tooltip
PDP Line ChartExplain sectionICE lines, class selector
DirectionNode Types
Input fromTrainer, Script (if it saves MODEL_FILE)
Output toModelExporter

Evaluation results persist to the database:

  • Metrics — Stored in run_metrics table with run ID
  • Explain data — Stored as JSON in metrics table
  • Historical access — View past runs via Runs tab

You can click on any past run to view its metrics and regenerate explanations.

The Evaluator requires these Python packages:

PackagePurpose
scikit-learnMetrics, permutation importance
shapSHAP value computation
pandas, numpyData handling

If SHAP is not installed, the Evaluator falls back to permutation importance only.

Install SHAP:

Terminal window
pip install shap

If installation fails (compilation error):

Terminal window
xcode-select --install # Install Xcode CLI tools first
pip install shap

For SVM, KNN, and MLP models, SHAP uses KernelExplainer which is slow. The system automatically limits to 50 samples. If still slow:

  • Use a tree-based model (Random Forest, Gradient Boosting)
  • Skip SHAP and use only permutation importance

For many classes, the matrix can be large. Focus on:

  • Diagonal values (correct predictions)
  • Off-diagonal clusters (common misclassifications)

Check that:

  • Target column is correctly specified
  • Data doesn’t have leakage (features correlated with target)
  • Train/test split is properly randomized