10 Learning to rank for generalizable search relevance

 

This chapter covers

  • An introduction to machine-learned ranking, also known as learning to rank (LTR)
  • How LTR differs from other machine learning methods
  • Training and deploying a ranking classifier
  • Feature engineering, judgment lists, and integrating machine-learned ranking models into a search engine
  • Validating an LTR model using a train/test split
  • Performance tradeoffs for LTR-based ranking models

It’s a random Tuesday. You review your search logs, and the searches range from the frustrated runner’s polar m430 running watch charger query to the worried hypochondriac’s weird bump on nose - cancer? to the curious cinephile’s william shatner first film. Even though these may be one-off queries, you know each user expects nothing less than amazing search results.

You feel hopeless. You know many query strings, by themselves, are distressingly rare. You have very little click data to know what’s relevant for these searches. Every day gets more challenging: trends, use cases, products, user interfaces, and even user terminology evolve. How can anyone hope to build search that amazes when users seem to constantly surprise us with new ways of searching?

10.1 What is LTR?

10.1.1 Moving beyond manual relevance tuning

10.1.2 Implementing LTR in the real world

10.2 Step 1: A judgment list, starting with the training data

10.3 Step 2: Feature logging and engineering

10.3.1 Storing features in a modern search engine

10.3.2 Logging features from our search engine corpus

10.4 Step 3: Transforming LTR to a traditional machine learning problem

10.4.1 SVMrank: Transforming ranking to binary classification

10.4.2 Transforming our LTR training task to binary classification

10.5 Step 4: Training (and testing!) the model

10.5.1 Turning a separating hyperplane’s vector into a scoring function

10.5.2 Taking the model for a test drive

10.5.3 Validating the model

10.6 Steps 5 and 6: Upload a model and search

10.7 Rinse and repeat

sitemap