Named entity recognition is the task of categorizing text into entities, such as people, locations, and dates. For example, for the sentence, On April 30, 1789, George Washington was inaugurated as the first president of the United States
, this sentence may be tagged with the following entities:
Image from Zach Monge
You might be thinking, okay exactly how is this useful? Well, there are many potential uses of named entity recognition, but one is being able to make a database easily searchable. You might be thinking, why would I need to tag entities to make a database easily searchable? Can’t I just use a simple dictionary lookup to exactly match terms? Well, yes, you can, but this is far from ideal and just to show you how ineffective searches can be without named entity recognition, let’s walk through a real life example.
Recently I was ordering food at my local grocery store, Weis Markets, and was trying to add to my cart Perdue frozen chicken fingers. So I typed into the search bar:
Image taken by Zach Monge From Weis Markets
To my disappointment, my search did not yield any results:
Image taken by Zach Monge From Weis Markets
At first I thought they may have been out of stock, but after searching for several other items, I kept getting no results. After awhile, I started to suspect that Weis’s search engine was only able to find search terms that almost exactly matched the product label (Note: I do not actually know the machinery behind Weis’s search engine). So I looked up on Google what the chicken fingers I wanted were exactly called and I realized they are called chicken tenders not fingers (of course!). So I typed perdue chicken tenders
into the search box and it worked! I was then successfully able to add the chicken fingers to my cart.
#machine-learning #named-entity-recognition #data-science #search-engine-marketing #nlp #deep learning