Skip to main content
Represents custom features derived from multiple columns using clustering analysis. Multivariate features combine multiple numeric columns into a single derived feature using k-means clustering algorithms. This enables monitoring of multivariate drift and detecting unusual combinations that might not be apparent when monitoring columns individually. The feature type is automatically set to CustomFeatureType.FROM_COLUMNS and uses clustering to group similar combinations of column values for drift detection.

Examples

Creating a user behavior multivariate feature:
behavior_feature = Multivariate(
    name="user_engagement_cluster",
    columns=["page_views", "session_duration", "clicks"],
    n_clusters=8,
    monitor_components=True
)
Creating a system performance multivariate feature:
perf_feature = Multivariate(
    name="system_health",
    columns=["cpu_usage", "memory_usage", "response_time"],
    n_clusters=5,
    monitor_components=False
)

type

n_clusters

centroids

columns

monitor_components

classmethod validate_columns()

Returns

List[str]

classmethod validate_n_clusters()

Returns

int

model_config

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].