Model / apply · All operations

Score with a model

Score or predict with a trained model.

Status

In arcform

Not built yet

arcform does not do this yet. Its place on the roadmap

Shape of the result
a model or file and a table in, the table out with columns added
Level
needs a DuckDB extension

Variants

Apply a saved preprocessing step

Apply a stored transformation or feature set to new data so it matches the training data.

Predict a value or class for each row

Run a trained model over rows and append its prediction, class probabilities or score.

Turn confidences into predictions

Derive or adjust crisp predictions from confidence columns, such as by a threshold.

What other tools call it

Meridian's classification; an independent blind rating agreed on 86.2% of 312 rows (exact class, version 2).

Alteryx Designer (6)
  • Append Clusterread 2026-09-27

    Append cluster assignments from a K-Centroids solution to a data stream

  • DataRobot Predictread 2026-09-27

    Score data with a model built in DataRobot

  • Predict on new data with a model built in Alteryx Machine Learning

  • Predictread 2026-09-27

    Predict on new data with a pipeline model built by the machine-learning tools

  • Scoreread 2026-09-27

    Apply a trained R model to new data to estimate the target or class probabilities

  • Survival Scoreread 2026-09-27

    Score relative risk and restricted mean survival time from a Cox model

Azure Data Factory (1)
KNIME Analytics Platform (31)
mlpack (7)
RapidMiner Studio (12)
  • Apply association rules to rows, adding columns for the conclusions that fire

  • Apply association rules to rows and return which rules matched each row in detail

  • Apply Feature Setread 2026-09-27

    Apply a stored feature set to new data, selecting and generating the same columns

  • Apply Modelread 2026-09-27

    Apply a trained model (prediction or preprocessing) to a table

  • Apply a document model (LDA or dictionary sentiment) to a collection of documents

  • Apply Thresholdread 2026-09-27

    Turn confidences into crisp predictions using a threshold object

  • Cost-Sensitive Scoringread 2026-09-27

    Wrap a model so its predictions minimise expected misclassification cost from a cost matrix

  • Create Thresholdread 2026-09-27

    Define a confidence threshold for two-class prediction, to be used by Apply Threshold

  • Set predictions to missing where the confidence is below a minimum

  • Generate Predictionread 2026-09-27

    Create a prediction column from existing confidence columns

  • Add columns for the top-ranked classes and their confidences for each row

  • Random Forest Encoderread 2026-09-27

    Apply a random forest and return each tree's positive-class confidence as new columns

Tableau Prep (1)
  • Predictionread 2026-09-27

    Score rows with an Einstein Discovery model; adds outcome, top predictors, top improvements

Talend (5)
  • tClassifyread 2026-09-27

    Predict the class of each row with a trained classifier model; removed in favour of tPredict

  • tClassifySVMread 2026-09-27

    Predict the class of each row with a model from tSVMModel; removed in favour of tPredict

  • tPredictread 2026-09-27

    Score rows with a trained classification, clustering or regression model

  • tPredictClusterread 2026-09-27

    Assign each row to a cluster with a trained clustering model; removed in favour of tPredict

  • tRecommendread 2026-09-27

    Recommend products to known users with the recommender model from tALSModel

Yggdrasil Decision Forests (8)
  • C++ API: serving.hread 2026-09-27

    Headers to load or save a model and run batched inference through a fast engine

  • Go portread 2026-09-27

    Inference-only Go library; README limits it to binary-classification boosted trees

  • YDF-TFread 2026-09-27

    TensorFlow custom-op package that runs YDF models exported to TensorFlow

  • predictread 2026-09-27

    Apply a model directory to a typed-path dataset and write predictions to a file

  • predictread 2026-09-27

    Score a dataset with the model and return predictions as an array

  • predict_classread 2026-09-27

    Return the most likely class per row for a classification model

  • predict_leavesread 2026-09-27

    Return the index of the active leaf in every tree for each row

  • ydf-inference (npm)read 2026-09-27

    WebAssembly package that loads a zipped model and predicts on a dictionary of arrays

Background

In traditional machine learning, inference is the process of making predictions by applying a trained model to unlabelled examples.[1] In RapidMiner, a model trained by one operator can be applied to another data set, usually to predict on unseen data or to apply a preprocessing model.[2] In DuckDB's mlpack extension, a fitted model is stored as JSON in a table and then used to predict from a table of new predictor values.[3]

When to use it

In scikit-learn, an inductive method builds a model of some data that can then be applied to new instances, and most of its estimators are inductive, with predict or transform methods.[4] In scikit-learn, a transductive method, such as manifold.TSNE or neighbors.LocalOutlierFactor, is designed to model a specific dataset but not to apply that model to unseen data.[4] Reach for scoring when a model is meant to outlive its training data and answer for rows it has never seen; a method that only describes the rows it was fitted on leaves nothing to score with. (Meridian's view)

In RapidMiner, the data a model is applied to must have the same number, order, type and role of attributes as the data the model was trained on.[2] In scikit-learn, model files saved with pickle, joblib or cloudpickle all use Python's pickle protocol, and loading one can execute arbitrary code.[5] In scikit-learn's model persistence, a pickle file should never be loaded from an untrusted source.[5] Keep each stored model with the columns and library versions it was trained under, check new rows against that record before scoring them, and load models only from sources you trust. (Meridian's view)

Training-serving skew is the difference between a model's performance during training and the same model's performance during serving.[1] Score new rows through exactly the preprocessing the training rows went through, saved with the model, since a step re-derived from the new rows is one more place for training and serving to drift apart. (Meridian's view)

In binary classification, a classification threshold is a number between 0 and 1 that converts the raw output of a logistic regression model into the positive or the negative class.[1] A classification threshold is a value a human chooses, not a value chosen by model training.[1] RapidMiner's Drop Uncertain Predictions operator sets a prediction to missing where its confidence is less than a specified minimum confidence.[6] Choose and record a threshold as a decision of its own, because a model's scores alone do not say how much a wrong positive costs against a wrong negative. (Meridian's view)

The method

In scikit-learn, predict makes a prediction for each sample, and in a classifier or regressor the prediction is in the same target space used in fitting.[4] In scikit-learn, predict_proba returns probability estimates for each class, and for binary and multiclass predictions each row should add to 1.[4] In RapidMiner, applying a prediction model adds new attributes such as prediction(Label) and confidence(Value), while applying a preprocessing model updates the existing data.[2] RapidMiner's Apply Threshold operator maps a soft prediction to crisp values: if the confidence for the second class is greater than the threshold, that class is predicted, otherwise the other.[7]

Batch inference is the process of inferring predictions on multiple unlabelled examples divided into smaller subsets, called batches.[1] Offline inference, also called static inference, generates a batch of predictions and caches them, so applications read the cache rather than rerunning the model.[1] Online inference generates predictions on demand, running the model when an application requests a prediction.[1]

The Data Mining Group (DMG), an independent, vendor-led consortium, hosts the working groups that develop the Predictive Model Markup Language (PMML).[8] With PMML, a model developed on one system with one application can be deployed on another system with another application by transmitting an XML configuration file.[8] A PMML document is an XML document with a root element of type PMML, and one or more mining models can be contained in a PMML document.[9] For scikit-learn models, the Open Neural Network Exchange (ONNX) format suits persisting a model to get predictions without loading the Python object itself.[5] The ONNX runtime does not require Python, which suits a lean serving environment, but not all scikit-learn models are supported by ONNX.[5]

Compared with the alternatives

In scikit-learn, the score method evaluates an estimator's predictions on a given dataset and returns a single numerical score.[4] Scoring rows and scoring a model share a word but are different jobs: the first adds a value to each row, the second measures how good those values are. (Meridian's view) Inference has a somewhat different meaning in statistics from its meaning in machine learning.[1]