Skip to main content
Search

Entity Extraction for Product Searches

Radu Gheorghe Radu Gheorghe on

What is Entity Extraction?

Entity extraction is, in the context of search, the process of figuring out which fields a query should target, as opposed to always hitting all fields. The reason we may want to involve entity extraction in search is to improve precision. For example: how do we tell that, when the user typed in Apple iPhone, the intent was to run company:Apple AND product:iPhone? And not bring back phone stickers in the shape of an apple?

Where do I start?

During Activate 2018, we had a presentation designed to answer this question. For example, if you’re using Solr already to serve your product searches, you can use Text Tagger to perform dictionary-based entity extraction. We also wrote a Solr Text Tagger tutorial. If you’re using Elasticsearch instead of Solr, you may be interested in our Elasticsearch for Product Searches online training.

Outside Solr/Elasticsearch, we mentioned three technologies that can help:

Next steps

Entity extraction is not the only thing that you may want to add on top of your keyword search in order to improve relevance. As we showed in our Activate presentation, there are at least two other important pieces:

Video and slides

The blog posts mentioned above are detailed tutorials on how to deal with entity extraction, query expansion, and re-ranking. But if you’re in a hurry, check out our presentation from Activate 2018. Warning: It’s packed with demos!

You can find the slides here:

And finally, feel free to play with the demo entity extraction code.

Final words

If you want to improve product search on top of Elasticsearch, don’t forget to have a look at our 2-hour use case class Elasticsearch for Product Searches Online Training, you can join our upcoming classes. Or, if you’re into search relevancy, please join us: we’re hiring worldwide. If you need entity extraction, relevancy tuning, or any other help with your search infrastructure, please reach out, because we provide: