---
title: User context selection algorithm
slug: '2825'
canonical_url: https://docs.coveo.com/en/2825/
collection: leverage-machine-learning
source_format: adoc
---
# User context selection algorithm

The user context selection algorithm enables [Coveo Machine Learning (Coveo ML)](https://docs.coveo.com/en/188.md) [models](https://docs.coveo.com/en/1012.md) to automatically filter and refine which [context](https://docs.coveo.com/en/1345.md) keys to use or ignore when building ML models.
The user context selection algorithm uses a wide variety of factors to determine whether to use a [dimension](https://docs.coveo.com/en/258.md) to personalize suggestions or recommendations.

The following are examples of tests that the user context selection algorithm carries out to determine whether to blocklist a context key:

* Check whether the data contains many long strings of text which might not be intended/suitable for classification
* Check whether the data is empty
* Check whether the data contains too many unique values
* Check whether the data contains only a single value
* Check whether the data is considered irrelevant according to some ML/Statistical tests