Hello guys!
So I'm quite excited to start the NLP series that is natural language processing for Machine learning.
In this video we are going to see the entire roadmap like how you should go ahead and prepare for natural
language processing and NLP is an amazing domain, amazing tech part.
With respect to machine learning or deep learning.
Lot of research is basically happening in natural language processing itself.
So let me go ahead and let me just share my screen and uh, let me go ahead and let me explain about
the roadmap, like how you should basically go ahead with the preparation.
So, uh, to begin with, uh, till now, probably if, you know, machine learning.
Okay, so in machine learning you have actually seen.
Right, we solve two different kind of problems.
One is supervised that is supervised.
And the other one that we basically solve is something called as unsupervised machine learning.
Now in most of the supervised machine learning use cases where we specifically solve two different kind
of problem statements like classification and regression.
Right.
In all these problem statement.
Right.
What we have seen is that let's say if we have some specific set of features like F1, F2, F3, f4,
like this, it can be any number of features.
This features are usually called as independent features.
Right.
So if I probably talk about this, these are my input features.
Or I can also say this as my independent features.
Independent features.
Right.
And similarly I also have my output feature which is my dependent feature.
Right.
Which is my dependent feature.
So what is our aim in a supervised machine learning model is that with respect to this features, we
obviously will be having lot of data points in the output.
It can be a classification problem or a regression problem.
And over here I may have continuous values or I may have uh classified points like ones and zeros.
It can be binary.
It can be multi-class.
Okay.
So let's say if I have this kind of data points over here, what is our main aim.
We usually create a model okay.
We usually create a model.
And we train the model with this data.
Right.
So we basically create a model.
And we train this particular model with this specific data set.
Right.
With this specific data set then our model will be able to make or it will be capable to make some predictions
whenever I give this kind of input data.
Now in machine learning specifically, if I talk about this features right now, F1 can be a continuous
features, F2 can basically be a categorical features, and it can also be different types of features
over here.
And during this particular scenario, let's say that some of our features are completely made up of
text.
Let's say one basic example that I really want to give is about spam classification.
Let's say this is my example over here.
Spam classification.
Now in spam classification, what all features we may have, we may have let's say, uh, my main aim
is to basically detect whether a email that comes to me is a spam or not spam.
Okay, so let's say that this is a classification problem that I really want to solve.
Now in this scenario, some of the features that I may have, one feature is that I may have something
called as email subject.
Okay.
I may have the next feature as email body.
And my output feature is basically whether this mail is spam or ham.
Ham basically means not spam.
So let's say over here, I'll give you one example.
Let's say the email subject is like billionaire.
So here you can see that it is a completely a text right email body.
It can be like you won a lottery of okay, I'm just giving you an example.
You won a lottery of billion dollar.
And I think you get this kind of emails right now, obviously, when you get this email, uh, in real
world scenario, we will be classifying this particular points and this will basically be a spam.
So I'll put a category as one.
Or I can also put it as spam itself.
Now here one thing that you can notice over here is that whenever in our input features we have, we
have a continuous variable and we have a categorical variables.
And obviously we have different different techniques to convert this categorical variables into continuous
values.
Right.
Uh, they are techniques like one hot encoding.
They are techniques like uh target encoding, ordinal encoding.
All those techniques are there which we basically do it in feature engineering.
But let's say that if my entire data is a text or a sentence like this, right?
In this particular scenario, I will definitely it will not be that easy for a model to understand,
right?
Obviously, because the model cannot understand human language, right?
Right.
Now I have written in English tomorrow it can be in Chinese, the day after tomorrow it can be in some
other languages.
So model is not directly capable of understanding this particular text.
So what should we do in this particular scenario.
So we have techniques.
We have techniques where we can convert this all text into some meaningful vectors.
Meaningful vectors.
Now what are vectors.
Vectors are just like numbers only.
But understand those vectors represent some meaningful information with respect to this particular text,
okay.
And whenever your input data is in form of text or sentences, we basically use something called as
natural language processing so that we'll be able to process this particular data, and we'll be able
to make the model understand to solve use cases like spam classification.
Right.
So this is the entire context behind NLP and why it is so much popular.
Because nowadays you see lot of examples.
Alexa.
Right.
I think many people use Alexa.
Many people use Google Home, right?
Many people use some automated device like let's say the AC is running right?
And you say, hey, switch off the AC, switch on the AC.
How that particular machine is able to understand that it is all because of natural language processing.
Google is extensively doing some amazing research with respect to NLP, and they're coming up with some
amazing things.
Yes, we will be learning, uh, both with respect to machine learning and as we go will also try to
learn with respect to deep learning.
But just try to understand.
In this video we are going to understand the roadmap, like how we should go ahead and prepare with
respect to the NLP.
So again I'm going to write the roadmap of NLP okay.
And again we are also going to use different different libraries.
I will just going to draw a pyramid kind of structure and we will go in the bottom to top approach okay.
So let's go ahead and let's try to understand what should be the roadmap of NLP initially to begin with.
Initially to begin with I'm just going to create a small block.
Okay.
To begin with, this first block is basically initially you need to know one programming language.
So let's say that I am going to probably go ahead with Python programming language.
Super important right.
With the help of Python programming language will obviously be able to solve lot of use cases of NLP.
But when I go to step one.
So this is basically the step one.
The step one is nothing, but it is basically called as text pre-processing.
And this text pre-processing initially will start with some basic things like whenever we have this
kind of text data, what are the text pre-processing things we need to do, how we can basically clean
that particular text data.
All those things will basically come in text pre-processing.
Okay.
The techniques that we are probably going to apply in this is like tokenization.
Tokenization is a concept wherein you convert a paragraph into a sentence, a sentence into a word's
different, different things.
We are also going to learn techniques like lemmatization.
We are going to learn techniques like stemming.
We are also going to introduce to words like something called as stopwords.
All these things will basically become covering in the text pre-processing part one.
So this is basically the step one.
Okay.
So I'm just going to write this as step one.
Super important.
And initially we'll be starting with this okay.
And again uh the entire detailed syllabus.
Obviously I'm going to make video by video to make you understand each and everything.
But on the thousand feet overview, I'm just giving you this.
There are a lot of topics inside this which we really need to be familiar with.
Now coming to the second one.
Okay.
So the second one, we basically say it as text pre-processing.
Step two okay.
So again this is also a text pre-processing technique.
But we little bit we we try to increase the complexity of it and it tries to solve more problems.
So here in the text pre-processing tool here we focus on converting the text data into vectors.
So here I'm just going to write it down.
This is my step two.
Here I'll write.
Or I can basically text pre-processing part two.
Here we are going to learn topics like bag of words okay TF-IDF.
We're also going to learn things like unigrams bigrams.
There are a lot of concepts like this which we are going to cover it again.
This is again a text pre-processing technique.
But again understand what is the main aim.
The main aim is basically to convert or let me just write like this.
Step one and step two.
Instead of writing like this, I will just write it in a simpler way.
Okay, so here I am.
We are basically focusing on cleaning the text, right?
Cleaning the inputs.
Cleaning the input.
In this particular step, we are trying to focus on converting our input text to vectors.
And this is a super important step, because this vector should be able to make sure that the context
of the statement should be able to get captured, right.
So at the end of the day, in NLP, with whatever techniques right now it is there like a Transformers,
births are there, which is quite advanced techniques.
If you are able to convert this input text into some meaningful vectors, you will be able to solve
those particular use case in a better manner, right?
So this is basically the second step where we focus on uh, converting the input text into vectors.
Still, there are more advanced techniques of text preprocessing, which I will go with the third step.
And here we focus on.
Here I'm just going to write it as text pre-processing.
With respect to part three.
Okay.
And here what all things we basically focus on, we use more advanced techniques which is like word
two vec word two vec.
Average word two vec.
And this is also a technique to convert the input text into vectors.
Now you may be thinking Krish in the second step.
Also you have written the same thing.
In the third step also you have written same thing.
Yes, guys, understand as we go from the second step to the third step, this conversion of the input
text to vectors, it is better than the approach that we basically use in B or w that is bag of words
TF-IDF unigram bigrams.
Right?
But as a learner we really need to know all this particular steps.
Right now.
Over here we focus more on techniques like word two vec and average word two vec.
Here the word two vec and average word two vec is again a kind of a deep learning technique.
But we will try to learn this and will try to understand how it basically happens.
Okay.
Now coming to the next step that we focus on right.
If we continue understanding the entire roadmap here, we also focus on understanding RNN, LSTM, RNN,
GRU okay?
G are you on now again?
Guys, this is a deep learning technique which is basically used for handling or solving text related
use cases like spam classification, text summarization, and many more things.
So again over here, these are some neural networks you should be familiar with in the roadmap before,
uh, basically when we enter into the deep learning part, this is super important to understand.
And again, uh, as I said, this is a part of deep learning technique.
Okay.
But since I'm writing about the roadmap, I really need to mention about all those things.
Now coming to the next one, uh, there is also a technique which is called as word embedding.
Okay.
So this is an also an amazing way to convert input text into vectors internally if I talk about.
So this particular text pre-processing it also uses techniques like word embedding okay.
So this is also a technique.
But this technique is basically called as word embeddings.
And word embeddings internally uses some amount of word two vec.
But we can train our own word embedding techniques.
Okay.
So again uh this is a technique of converting input text into vectors.
Now similarly we have techniques like transformers and birds also.
So coming to the next one this is basically transformer.
Again this is an advanced technique.
I just really wanted to mention all these things to you so that you will be able to understand.
But so if you really want to become a pro, you really need to go with this particular pattern and try
to complete till birth and try to see the application of that.
But as we go up from bottom to top, the accuracy of the model keeps on increasing.
Because.
And remember one more thing the size of the model also increases, right?
Which whichever machine learning models or deep learning models that you are probably trying to create
to solve the NLP use cases, it will keep on increasing as you go towards Transformer and Bert.
Now initially, as I said, we are going to learn with respect to NLP, with respect to Machine learning
and NLP for machine learning.
So what all things we are going to focus on, we are going to focus on these three things first and
then we'll start deep learning.
We will probably focus on this three.
Okay so here I'm just going to write this important thing.
Is that all the this three steps will be the part of machine learning.
And now when I say machine learning we will be using libraries like NLTK.
And there are also libraries like Spacy, which will actually help us to do perform all the tasks which
is available over here in the bottom three.
Right.
But we'll focus on one library called that is called as NLTK.
So suppose if you know NLTK, I think learning space is also very much easy.
In the case of deep learning we will usually go with libraries like TensorFlow or PyTorch.
So both libraries are quite amazing with respect to this.
As you know, TensorFlow is now an open source.
PyTorch is an open source.
TensorFlow has been created by Google.
PyTorch has been created by Facebook.
Right?
But at the end of the day, what is the main aim?
Your input data is in the form of text data, and you basically have to perform some amazing kind of
text preprocessing where you convert the input text data into vectors and you are able to solve amazing
use cases of NLP using both machine learning and deep learning.
And this is a brief idea about the entire roadmap, uh, like how we are going to prepare.
In the next video, I'm going to discuss about some of the amazing use cases, what all things we can
basically do with the help of NLP.
Right?
So all those things will be covering in the upcoming video.
So yes, I will see you all in the next video.
Thank you.