Natural Language Processing with Machine Learning in Python
What you'll learn
- Fundamentals of Natural Language Processing
- Tokenization, Stemming and Lemmatization
- Named Entity Recognition and Part of Speech Tagging
- Count Vectorzation and TF-IDF Vectorization
- Improving performance with N-grams
- How to use NLTK, SpaCy and Scikit-Learn to solve NLP Problems
- Data Cleansing and Text Pre-Processing
- Sentiment Analysis using Machine Learning in Python
- Text Classification using Machine Learning in Python
- Integrating with Twitter APIs
- No. Only some coding experience with any programming language
- You don't need any prior knowledge on NLP or Python
This course is carefully designed for you to learn the fundamentals of Natural Language Processing and then to advance gradually and to solve complex NLP problems using Machine Learning. Everything taught in this course is completely hands on. So you will be able to learn things by doing them yourself.
You don't need prior experience in Natural Language Processing, Machine Learning or even Python. But you should be comfortable with programming, and should be familiar with at least one programming language. Python is by far one of the best programming language to work on Machine Learning problems and it applies here as well. If you're new to Python, don't worry, I'll explain what you need to know, just before using it.
In this course, we use Google Colab to run our code. So, you don't have to install or configure anything in your machine. It doesn't matter what's your OS or hardware spec, as long as you have access to the Internet. But if you're interested, the same code can be run on Jupyter Notebook, installed in your machine.
First we will explore the basic concepts of Natural Language Processing, such as tokenization, stemming and lemmatization using NLTK. You will learn more than one way to get these things done, so you can understand the pros and cons of different approaches. Then we will study some pre-processing techniques for removing stop-words, whitespaces, punctuations, symbols, new lines, etc.
Next we will move to SpaCy - a state of the art NLP library heavily used in the industry. We will explore the NLP pipeline, and more advanced concepts such as Named Entity Recognition and Syntactic Dependencies. These techniques allow your code to automatically understand concepts like money, time, companies, products, locations, and many more simply by analysing the text information.
There we will cover Part-of-Speech tagging as well, where your code will be able to automatically assign words in text to their appropriate part of speech, such as nouns, verbs, adverbs and adjectives, an essential part of building intelligent language systems.
After that, you will learn how to transform text into a format where the computer can understand. This process is called vectorization. There're more than one way to do this, and you will learn the two most common mechanisms. Count vectorization and TF-IDF vectorization.
Next, we will move to Text Classification, where we will start using Machine Learning for Natural Language Processing. We will build a fully functioning model to classify IMDb movie reviews. There you will learn how to perform data cleansing, pre-processing, feature engineering, model training and testing. We will try out few different machine learning algorithms from the scikit-learn library, such as Logistic Regression, Naive Bayes and Linear SVC, and we will explore how to improve the performance on each case. You will be able to use the learnings from this section to address real world NLP problems, such as review classifications or spam detection.
Then we will move to one of the most demanding areas of Natural Language Processing, which is Sentiment Analysis. First we will explore how to use some built-in sentiment analysis tools such as TextBlob and VADER. Then we will start building our own Sentiment Analyzer using Logistic Regression and Naive Bayes. There we will go through all the steps required to build a sentiment analyser from the scratch, including pre-processing, feature engineering, training and testing.
Finally we will complete this course by learning how to integrate Twitter's APIs to pull Twitter data. Twitter is by far the strongest social media when it comes to text data. Some investors, banks and hedge funds are already using Twitter data to understand the market sentiment. So why not learn how to use this valuable resource, as the data source for your NLP problem.
Natural Language Processing is becoming one of the highly demanding skillset in the technology industry, and this course will help you to start your NLP journey.
What are you waiting for? Start your journey to become an expert in NLP today!
All of this comes with a 30 day money back garuantee, so you can try the course risk free.
I will see you inside the course.
Who this course is for:
- Developers who are getting into Machine Learning and Data Science
- Machine Learning Engineers interested to explore NLP domain
- Students who are interested to learn NLP
- Anyone interested in solving NLP problems
My name is Priyanka. I'm a Principal Software Engineer by profession, and actively contribute in the domains of Software Development, Data Science and Machine Learning.
I started my career as a Software Engineer, and have been in the industry for more than 15 years. I've gained a massive technical and cultural experience by working for few billion dollar technology companies based in US, UK and Japan.
I have a Bachelors Degree in Engineering, and a Masters Degree in Computer Science. If not coding, I prefer to spend my time to teach others what I know. I also work as a visiting lecturer at couple of universities, sharing my knowledge and experience with the academia.
Hope you'll learn something valuable out of my courses at Udemy and more importantly, use it only for the betterment of mankind.