section-engineering-education / engineering-education

“Section's Engineering Education (EngEd) Program is dedicated to offering a unique quality community experience for computer science university students."
Apache License 2.0
363 stars 889 forks source link

How to create an NLP application with Flair #3129

Closed BRIAN721 closed 2 years ago

BRIAN721 commented 2 years ago

Proposed title of article

How to create an NLP application with Flair

Introduction paragraph (2-3 paragraphs):

Flair is a simple natural language processing (NLP) library developed and open-sourced by Zalando Research, Flair's framework builds directly on PyTorch. Flair will help us to to build a text classification app based on user inputs. Flair allows you to apply our state-of-the-art natural language processing (NLP) models to your text, such as named entity recognition (NER), part-of-speech tagging (PoS), special support for biomedical data, sense disambiguation and classification, with support for a rapidly growing number of languages. Flair has the folowing capabilitie: A text embedding library. Flair has simple interfaces that allow you to use and combine different word and document embeddings. So in this tutorial we will start with the basic about flair, then we will build our text classification app using flair, the app will be able to classify a give text as either offensive or not.

Key takeaways:

  1. Getting started with flair basic.
  2. Installing flair into our machines.
  3. Preparing our dataset.
  4. Word embeddings with flair.
  5. Training our Model.
  6. Making Predictions.

References:

Please list links to any published content/research that you intend to use to support/guide this article.

Templates to use as guides

hectorkambow commented 2 years ago

@BRIAN721 Good afternoon and thank you for submitting your topic suggestion. Your topic form has been entered into our queue and should be reviewed (for approval) as soon as a content moderator is finished reviewing the ones in the queue before it.

lalith1403 commented 2 years ago

Hello @BRIAN721. This is an exciting topic. Can you provide more information on how the content proposed is unique and does not cover the same material as the documentation? This will allow us to explore opportunities to better understand the scope of the topic proposed.

BRIAN721 commented 2 years ago

Hello @lalith1403, I believe Flair is a great tool for Natural Language Processing, but in my opinion, i feel like it's not fully explored by many developers.. So in this tutorial, I try to change that in the following ways.

BRIAN721 commented 2 years ago
  1. I try to explain the core concepts that are the building block for this Flair such as Building Corpus and Creating Label Dictionary and Text Embedding. These core concepts will help a beginner to grasp the concepts before we begin to build a custom.
  2. We shall build a custom model from scratch. We shall start from the data-processing and manipulation using Flair.
  3. We shall build a Text Classification model that can be used to classify if a sentence is offensive or not.
  4. This custom model is what makes it unique since a reader can easily follow from the beginning till the end where we have our model.
  5. The model we are building is very useful since it can be applied to social media applications to filter offensive feeds hence can reduce cyberbullying Thanks @lalith1403
lalith1403 commented 2 years ago

This is an exciting article. Thanks for the detailed explanation. Topic approved :)