See https://elasticsearch-learning-to-rank.readthedocs.io/en/latest/core-concepts.html
The basic steps here are
- create an elasticsearch featureset that calculates scores for the different search signals in a mediasearch query (T271806)
- run every query for which we have "good" data, and gather the scores into a format that can be used to train a model
- train a model using the gathered scores (see https://elasticsearch-learning-to-rank.readthedocs.io/en/latest/training-models.html) - probably this will need to be done by the search team
- add a new profile to mediasearch that uses the trained model in a rescore query (see T274670), and test it (see T271801)
