Hugging Face is a platform that offers tools and pre-trained models for various Natural Language Processing (NLP) and Natural Language Understanding (NLU) tasks. In our previous article, A Warm Embrace: Exploring Hugging Face, we dove into the basics of this platform and its open-source library that features implementations of many state-of-the-art transformer architectures. This post enhances the Hugging Face documentation by providing emerging data scientists with a single, connected view of various Hugging Face tools for a specific task. Specifically, this article explains how to piece together multiple Hugging Face capabilities to fine-tune an existing language model for named entity recognition (“NER”).
In this section, we briefly look at two foundational concepts essential for building our model. As a reminder, we covered Hugging Face basics in A Warm Embrace: Exploring Hugging Face.
- Named Entity Recognition
- Model Fine-tuning
In the sections below, it’s assumed you have some knowledge of model development and the associated concepts — however, if anything is unclear feel free to reach out!
Named Entity Recognition
Named Entity Recognition (“NER”) is a common natural language processing task of identifying and categorizing relevant information, or entities, into one of many predefined (named) groups. NER models can be trained on a variety of entities. Some of the most common ones are:
- Names
- Organizations
- Dates
- Places & Locations
In the image below, I manually tagged a couple of different named entities in a sample sentence. In the context of machine learning and NLP, NER is the process of automating this categorization process through models.
NER models can enable a variety of tasks including but not limited to, information retrieval, content summarization, content recommendation and machine translation.