--- 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/) [models](https://docs.coveo.com/en/1012/) to automatically filter and refine which [context](https://docs.coveo.com/en/1345/) 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/) 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