Prediction Types
KumoRFM supports a variety of prediction types, organized into temporal tasks (which involve a future time horizon) and static tasks (which infer attributes without a time component).
Temporal Tasks (Forecast)
All temporal tasks predict future outcomes over a defined time horizon using historical data in relational tables. Every temporal prediction is defined by:
- Target: What is being predicted (an aggregation expression)
- Entity: Who the prediction is for (a table primary key)
- Horizon: When the prediction applies (a future time window)
The general PQL pattern for temporal tasks is:
where <start> and <end> define the future time window relative to “now”, and <unit> is the time granularity (e.g., days, hours, minutes).
Forecast: Regression
Predict a continuous numeric value for an entity over a future time horizon.
Use case: Demand forecasting, revenue prediction, quantity estimation.
Supported aggregations: SUM, AVG, COUNT, MAX, MIN
Output: Numeric value per entity. For quantile output, see Configuration.
Metrics: mae, mse, rmse, mape, smape, r2.
Forecast: Binary Classification
Predict whether an entity will or will not experience an event within a future time window. This is defined by applying a boolean condition to an aggregation expression.
Use case: Customer churn prediction, event occurrence prediction.
Supported aggregations: SUM, AVG, COUNT, MAX, MIN (with a boolean condition such as = 0, > 100)
The boolean condition (= 0, > 100, etc.) on the aggregation makes this a binary classification task.
Output: Boolean (True/False) and probability per entity.
Metrics: acc, auroc, auprc, ap, precision, recall, f1.
Forecast: Multi-Class Classification
Predict which class or state an entity will belong to at a future point in time. Use FIRST() to predict the first value that will occur in the window, or LAST() to predict the final value.
Use case: Tier migration, lifecycle stage prediction, feature engagement.
Supported aggregations: FIRST, LAST
Output: Class label and class probabilities per entity.
Metrics: acc, precision, recall, f1, mrr.
Recommendations
Predict a ranked list of items an entity is most likely to interact with over a future time window. Use LIST_DISTINCT() with RANK TOP N to get the top N recommended items.
Use case: Product recommendations, content ranking, next best action.
Supported aggregations: LIST_DISTINCT with RANK TOP N
Output: Ranked list of item IDs per entity.
Metrics: map@k, ndcg@k, mrr@k, precision@k, recall@k, f1@k, hit_ratio@k.
Multi-Horizon Regression (Forecasting)
Predict a numeric value for an entity across multiple future time steps. This produces a time series of predictions.
Use case: Multi-step demand forecasting, time series prediction.
Supported aggregations: SUM, AVG, COUNT, MAX, MIN
The FORECAST N TIMEFRAMES clause tells KumoRFM to produce N predictions, each separated by the time window specified in the aggregation (7 days in this example). So FORECAST 60 TIMEFRAMES with a 7-day window predicts out 60 × 7 = 420 days total.
Output: Time-indexed numeric values (one per horizon). For quantile output, see Configuration.
Metrics: mae, mse, rmse, mape, smape, r2.
Static Tasks
Static tasks infer latent or unknown entity attributes without modeling temporal evolution. There is no time horizon — the prediction is about the current state of the entity based on its attributes and relational context.
Every static prediction is defined by: Target × Entity (no horizon).
The general PQL pattern for static tasks is:
Static Regression
Infer a continuous numeric attribute of an entity.
Use case: Age estimation, price imputation, value scoring.
Supported target type: Numeric columns
Output: Numeric value per entity. For quantile output, see Configuration.
Metrics: mae, mse, rmse, mape, smape, r2.
Static Binary Classification
Infer whether an entity belongs to one of two classes based on its attributes.
Use case: Fraud detection, quality classification.
Supported target type: Boolean columns
Output: Boolean (True/False) and probability per entity.
Metrics: acc, auroc, auprc, ap, precision, recall, f1.
Static Multi-Class Classification
Infer which single class an entity belongs to from a set of possible classes.
Use case: Customer segmentation, category prediction.
Supported target type: Categorical columns
Output: Class label and class probabilities per entity.
Metrics: acc, precision, recall, f1, mrr.