Data Science: Natural Language Processing (NLP) in Python

Data Science: Natural Language Processing (NLP) in Python

English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 10 Hours | 2.56 GB

Applications: decrypting ciphers, spam detection, sentiment analysis, article spinners, and latent semantic analysis.

In this course you will build MULTIPLE practical systems using natural language processing, or NLP – the branch of machine learning and data science that deals with text and speech. This course is not part of my deep learning series, so it doesn’t contain any hard math – just straight up coding in Python. All the materials for this course are FREE.

After a brief discussion about what NLP is and what it can do, we will begin building very useful stuff. The first thing we’ll build is a cipher decryption algorithm. These have applications in warfare and espionage. We will learn how to build and apply several useful NLP tools in this section, namely, character-level language models (using the Markov principle), and genetic algorithms.

The second project, where we begin to use more traditional “machine learning”, is to build a spam detector. You likely get very little spam these days, compared to say, the early 2000s, because of systems like these.

Next we’ll build a model for sentiment analysis in Python. This is something that allows us to assign a score to a block of text that tells us how positive or negative it is. People have used sentiment analysis on Twitter to predict the stock market.

We’ll go over some practical tools and techniques like the NLTK (natural language toolkit) library and latent semantic analysis or LSA.

Finally, we end the course by building an article spinner. This is a very hard problem and even the most popular products out there these days don’t get it right. These lectures are designed to just get you started and to give you ideas for how you might improve on them yourself. Once mastered, you can use it as an SEO, or search engine optimization tool. Internet marketers everywhere will love you if you can do this for them!

This course focuses on “how to build and understand”, not just “how to use”. Anyone can learn to use an API in 15 minutes after reading some documentation. It’s not about “remembering facts”, it’s about “seeing for yourself” via experimentation. It will teach you how to visualize what’s happening in the model internally. If you want more than just a superficial look at machine learning models, this course is for you.

What you’ll learn

  • Write your own cipher decryption algorithm using genetic algorithms and language modeling with Markov models
  • Write your own spam detection code in Python
  • Write your own sentiment analysis code in Python
  • Perform latent semantic analysis or latent semantic indexing in Python
  • Have an idea of how to write your own article spinner in Python
Table of Contents

Natural Language Processing – What is it used for
1 Introduction and Outline
2 Why Learn NLP
3 The Central Message of this Course (Big Picture Perspective)

Course Preparation
4 How to Succeed in this Course
5 Where to get the code and data
6 How to Open Files for Windows Users

Machine Learning Basics Review
7 Machine Learning Section Introduction
8 What is Classification
9 Classification in Code
10 What is Regression
11 Regression in Code
12 What is a Feature Vector
13 Machine Learning is Nothing but Geometry
14 All Data is the Same
15 Comparing Different Machine Learning Models
16 Machine Learning and Deep Learning Future Topics
17 Section Summary

Decrypting Ciphers
18 Section Introduction
19 Ciphers
20 Language Models
21 Genetic Algorithms
22 Code Preparation
23 Code pt 1
24 Code pt 2
25 Code pt 3
26 Code pt 4
27 Code pt 5
28 Code pt 6
29 Section Conclusion
30 Link to Cipher Notebook

Build your own spam detector
31 Build your own spam detector – description of data
32 Build your own spam detector using Naive Bayes and AdaBoost – the code
33 Key Takeaway from Spam Detection Exercise
34 Naive Bayes Concepts
35 AdaBoost Concepts
36 Other types of features
37 Spam Detection FAQ (Remedial #1)
38 What is a Vector (Remedial #2)
39 SMS Spam Example
40 SMS Spam in Code
41 Suggestion Box

Build your own sentiment analyzer
42 Description of Sentiment Analyzer
43 Logistic Regression Review
44 Preprocessing Tokenization
45 Preprocessing Tokens to Vectors
46 Sentiment Analysis in Python using Logistic Regression
47 Sentiment Analysis Extension
48 How to Improve Sentiment Analysis & FAQ

NLTK Exploration
49 NLTK Exploration POS Tagging
50 NLTK Exploration Stemming and Lemmatization
51 NLTK Exploration Named Entity Recognition
52 Want more NLTK

Latent Semantic Analysis
53 Latent Semantic Analysis – What does it do
54 SVD – The underlying math behind LSA
55 Latent Semantic Analysis in Python
56 What is Latent Semantic Analysis Used For
57 Extending LSA

Write your own article spinner
58 Article Spinning Introduction and Markov Models
59 Trigram Model
60 More about Language Models
61 Precode Exercises
62 Writing an article spinner in Python
63 Article Spinner Extension Exercises

How to learn more about NLP
64 What we didn’t talk about

Setting Up Your Environment (FAQ by Student Request)
65 Windows-Focused Environment Setup 2018
66 How to install Numpy, Scipy, Matplotlib, Pandas, IPython, Theano, and TensorFlow

Extra Help With Python Coding for Beginners (FAQ by Student Request)
67 How to Code by Yourself (part 1)
68 How to Code by Yourself (part 2)
69 Proof that using Jupyter Notebook is the same as not using it
70 Python 2 vs Python 3

Effective Learning Strategies for Machine Learning (FAQ by Student Request)
71 How to Succeed in this Course (Long Version)
72 Is this for Beginners or Experts Academic or Practical Fast or slow-paced
73 Machine Learning and AI Prerequisite Roadmap (pt 1)
74 Machine Learning and AI Prerequisite Roadmap (pt 2)

Appendix FAQ Finale
75 What is the Appendix
76 BONUS Where to get discount coupons and FREE deep learning material