
If Natural Language Processing (NLP) isn't really your forte, Natural Language Processing Fundamentals will make sure you get off to a steady start in the realm of NLP. This comprehensive guide will show you how to effectively use Python libraries and NLP concepts to solve various problems.
Follow this link to download the code bundle of this course:
https://github.com/TrainingByPackt/Natural-Language-Processing-Fundamentals-eLearning
In this lesson, you will learn about the basics of natural language processing and various preprocessing steps that are required to clean and analyze the data. Let us cover the following topics:
Introduction to NLP
Various Steps in NLP
Now, let us understand what NLP, its history, and text analytics is.
Now, let us discuss the various preprocessing tasks in detail and demonstrate them with an exercise. In this video, we’ll cover:
Tokenization
PoS Tagging
Stop Word Removal
Text Normalization
Spelling Correction
This video discusses a few more preprocessing tasks in NLP and includes the following subtopics:
Stemming
Lemmatization
NER
Word Sense Disambiguation
Kick Starting an NLP Project
Let us now summarize our learning from this lesson.
This lesson emphasizes on basic feature extraction methods in detail and also visualize text with the help of word clouds and other visualization techniques.
To deal with data effectively, we need to understand the various forms in which it exists. Let's first understand the types of data that exist. There are two main ways to categorize data, by structure and by content, as explained in this video.
Data cleaning is the art of extracting meaningful portions from data by eliminating unnecessary details. To perform data cleaning, let us use the most common methods such as tokenization and stemming. In this video, we’ll cover:
Tokenization
Types of Tokenizers
Through this video, we’ll see how data cleaning is done thought stemming. In this video, we’ll cover:
Stemming
Lemmatization
Language Translation
Stop Word Removal
When dealing with texts, we extract both general and specific features. Sometimes, individual words constituting texts do not affect some features directly, such as the language of the text and the total number of words. These features can be referred to as general features. Specific features include bag of words, and TF-IDF representations of texts. Let's understand these in this video.
Feature engineering is a method for extracting new features from existing features. These new features are extracted as they tend to effectively explain variability in data. One application of feature engineering could be to calculate how similar different pieces of text are. There are various ways of calculating the similarity between two texts. The most popular methods are cosine similarity and Jaccard similarity. Let's learn about each of them:
Let us now summarize our learning from this lesson.
In this lesson, you will learn about the various types of machine learning algorithms and develop classifiers with their help.
Machine learning refers to the process of comprehending the patterns present in a dataset. In this video, we’ll cover:
Unsupervised Learning
Supervised Learning
Classification
In this video, we’ll continue exploring machine learning. We’ll cover the following:
Regression
Random Forest
GBM and XG-Boost
Sampling
A text classifier is a machine learning model that can discriminate between texts based on their content. In this video, we’ll be developing a text classifier.
A pipeline refers to a structure that allows a streamlined flow of air, water, or something similar. In this context, pipeline has a similar meaning. It helps to streamline various stages of an NLP project. In this video, you will learn how to build pipelines for NLP projects.
In this video, we’ll have a look at how to save and load models.
Let us now summarize our learning from this lesson.
In this lesson, you will learn how to collect data from different file formats.
In this video, you will learn about collecting data by scraping web pages and then processing it.
We have just learned how to extract tag-based information from an HTML file. Now, through this video, let us focus on fetching content from web pages.
Now that we have learned how to fetch data from online sources and analyze it in various ways. In this video, let us discuss dealing with semi-structured data.
Let us now summarize our learning from this lesson.
In this lesson, you will learn about different topic modeling algorithms and how we can use them to perform topic modeling on any dataset.
In this video, we will cover the following subtopics:
Discovering Themes
Exploratory Data Analysis
Document Clustering
Dimensionality Reduction
Historical Analysis
Bag of Words
In this video, we will cover two topic modeling algorithms, namely LSA and LDA.
We have performed topic modeling with the help of LDA. Now, let us focus on topic fingerprinting.
Let us now summarize our learning from this lesson.
In this lesson, you will learn about the various ways in which text can be summarized and generated.
Automated text summarization is the process of using natural language processing (NLP) tools to produce concise versions of text that preserve all the key information present in the original content. In this video, we will look at some of the benefits provided by automated text summarization.
We will discuss each aspect of text summarization in detail in this video.
TextRank is a popular algorithm for extractive text summarization. It works on the principle of ranking pages based on the total number of other pages referring to a given page. Let us look at how this algorithm works along with a demonstration.
Now, let us understand how to summarize text using different methods such as using the Gensim library and using word frequency. This video also covers how to generate text using Markov chains.
Let us now summarize our learning from this lesson.
In this lesson, you will be learning about various encoding techniques using which a text can be represented as vector.
In this video, we will look at how text can be represented as vectors, and how vectors can be composed to represent complex speech.
The process of converting data into a specified format is called encoding. Let us now look at the different types of encoding that are required to convert text into vectors.
In this video, we will focus on concepts such as embeddings and word embeddings. We will learn about the Word2Vec algorithm, which is used to train word vectors. We’ll also look at document vectors and their uses.
Let us now summarize our learning from this lesson.
This lesson explains the concepts of sentiment analysis and how to use it to detect various sentiments in the data.
Let us now see what sentiment analysis is. This video is all about sentiment analysis and covers the growth, types, and applications of sentiment analysis.
There are a lot of tools capable of analyzing sentiment. Each tool has its advantages and disadvantages. We will look at each of them in detail through this video.
TextBlob is a Python library used for NLP with a simple API. It is probably the easiest way to begin with sentiment analysis and other text analytic areas in Python. In this video, we will perform a demonstration to get a better understanding of how TextBlob is used in sentiment analysis.
Sentiment analysis is a type of text classification. Sentiment analysis models are usually trained using supervised datasets. In this video, we will look at how to load data for sentiment analysis through a short demonstration.
The end product of any sentiment analysis project is a sentiment model. In this video, we will solve an exercise to get a better understanding of training a sentiment model.
Let us now summarize our learning from this lesson.
If NLP hasn't been your forte, Natural Language Processing Fundamentals will make sure you set off to a steady start. This comprehensive guide will show you how to effectively use Python libraries and NLP concepts to solve various problems.
You'll be introduced to natural language processing and its applications through examples and exercises. This will be followed by an introduction to the initial stages of solving a problem, which includes problem definition, getting text data, and preparing it for modeling. With exposure to concepts like advanced natural language processing algorithms and visualization techniques, you'll learn how to create applications that can extract information from unstructured data and present it as impactful visuals. Although you will continue to learn NLP-based techniques, the focus will gradually shift to developing useful applications. In these sections, you'll understand how to apply NLP techniques to answer questions as can be used in chatbots.
By the end of this course, you'll be able to accomplish a varied range of assignments ranging from identifying the most suitable type of NLP task for solving a problem to using a tool like spacy or gensim for performing sentiment analysis. The course will easily equip you with the knowledge you need to build applications that interpret human language.
About the Author
Dwight Gunning is a data scientist at FINRA, a financial services regulator in the US. He has extensive experience in Python-based machine learning and hands-on experience with the most popular NLP tools such as NLTK, gensim, and spacy.
Sohom Ghosh is a passionate data detective with expertise in Natural Language Processing. He has publications in several international conferences and journals.
Anthony Ng has spent almost 10 years in the education sector covering topics such as algorithmic trading, financial data analytics, investment, and portfolio management and more. He has worked in various financial institutions and has assisted Quantopian to conduct Algorithmic Trading Workshops in Singapore since 2016. He has also presented in QuantCon Singapore 2016 and 2017. He is passionate about finance, data science and Python and enjoys researching, teaching and sharing knowledge. He holds a Master of Science in Financial Engineering from NUS Singapore and MBA and Bcom from Otago University.