
Explore what natural language processing is and how it enables machines to understand, interpret, and manipulate human language. Contrast human natural language with programming language and its AI goals.
Explore how natural language processing powers real-world applications like text-to-speech, speech-to-text, chatbots, and machine translation, including Google Translate and voice search, leveraging tokenization to interpret spoken language.
Explore the most popular natural language processing libraries and packages, from sentiment analysis APIs to topic modeling and transformers, and learn their best use cases across NLP workflows.
Explore a simple nlp project workflow from data acquisition and fetching data via api or scraping to deployment, including data cleaning, preprocessing, tokenization, analysis, embedding, and model building.
Explore the key challenges in natural language processing, including unstructured data, testing strategies, language understanding and generation, speech recognition and translation, and body language cues.
Explore lexical, semantic, syntactic, referential, and reflective ambiguities in text, and see how natural language processing analyzes multiple interpretations using examples like bank and hit with a stick.
Explore installation and workspace setup for Python natural language processing tools, including Jupyter notebooks, Anaconda, Poetry, Transformers, BeautifulSoup, and Pandas, with cloud or local environment options.
Tools Used In This Section
Requests
Requests-HTML
Bs4
Wikipedia API
Newspaper3k
PyPDF2
Docx2txt
Python-Docx
pdfplumber
textract
etc
Master how to fetch data from websites with requests and parse html using Beautiful Soup to extract specific content and links for analysis in web scraping while respecting robots.txt.
Learn to fetch data from Wikipedia using the Python wikipedia package and the Wikipedia API, including searching, retrieving pages, summaries, content, references, and images.
Explore how to fetch textual data from multiple articles across websites, using a BBC example, fetch titles, categories, and download full articles, and organize them for NLP workflows.
Learn how to read and extract text from pdfs in Python using pyPDF2, including opening files, accessing pages, and closing the reader.
Compare three methods to extract text from PDFs using pdfplumber, and learn how to read specific pages to obtain clean text data for analysis.
Learn to fetch textual data by reading text from txt files, extracting text from documents, and sourcing data from websites via web scraping and APIs.
Explore text cleaning with pure Python using built-in string methods, including lower and upper case conversion, splitting and joining tokens, replacing patterns, and stripping whitespace for basic NLP preprocessing.
Learn practical text cleaning and preprocessing with Python strings by stripping whitespace, replacing special characters, converting to lowercase, splitting and joining lists, and using f-strings for formatting.
Tokenization forms the foundation of natural language processing, enabling vocabulary creation and word vectors for neural networks. It underpins preprocessing and NLP tasks like classification and summarisation.
Explore tokenization approaches in python NLP, including space-based methods, dictionary-based, and regular expression segmentation, plus word piece tokenization.
Explore tokenization in Python with pure Python and NLTK, comparing whitespace-based, dictionary-based, and rule-based approaches, including regular expressions and model-based segmentation for diverse languages.
Compare tokenization with spaCy and NLTK, exploring how to load language models, build an NLP pipeline, and examine token outputs, part-of-speech tagging, and dependency parsing.
Master tokenization in TensorFlow by normalizing text to lowercase, segmenting into tokens, encoding to numeric indices, handling out-of-vocabulary words, and applying padding for uniform sequences.
Explore stemming from scratch in python, transforming words to their root forms to improve information retrieval. Implement custom stemmers, test with rule-based logic and list comprehensions to handle endings.
Compare test analytics and natural language processing, then explore steps like syntactic analysis, semantic analysis, sentiment analysis, pragmatic analysis, and phonetic analysis to derive insights from speech, text, and images.
Learn to plot word frequency in Python by counting words with a dictionary and visualizing the most common terms with matplotlib, exploring textual data insights.
Analyze lexical complexity by applying readability formulas like automated readability index and readability measures, and assess lexical richness with type-token ratio to gauge how easy or complex a text reads.
Explore lexical richness and readability in Python by applying automated readability index and multiple indices such as Flesch and Coleman to compare texts, quantify diversity, and visualize results.
Explore stylometry as the study of writing style and its practical uses, including author attribution, plagiarism detection, and forensic linguistics, implemented with Python for text analysis.
Apply stylometry by counting word lengths to build a Mendenhall distribution from tokenized texts. Use Python to plot distributions for authorship attribution across biblical texts.
Apply stylometry to identify authors by word-length distribution, using side-by-side subplots to compare works from authors such as Moses, Paul, Luke, and Shakespeare.
Explore stylometry in python to verify authorship by comparing texts across works, testing hypotheses, and visualizing similarities using tools like Midlake and Redclaw.
Learn to convert unstructured text into numeric features by vectorizing words, using feature engineering methods like bag of words and skip-gram for nlp models.
Explore how bag of words converts text into binary or count vectors via tokenization. See how word order and permutation influence meaning and reveal limitations of this approach.
Build custom functions for one hot encoding matrix using numpy and pandas
Working with Prediction Based Word Vectors
To Read: https://kavita-ganesan.com/comparison-between-cbow-skipgram-subword/#.X2zqenUzZuQ
Explore the TextBlob library and its simple API for tokenization, sentiment analysis, and classification to perform common NLP tasks.
Install TextBlob and explore its tokenization features for natural language processing. Split text into words and sentences using the tokenization tools and test blocks.
Learn how to perform parts of speech tagging with TextBlob in Python, from installing the package to tagging sample text and exploring customizable tag outputs.
Learn Flair, an open-source NLP library, and its data and model components for tagging, embeddings, and text classification. It covers biomedical named-entity recognition and training custom models.
Explore Flair for natural language processing in Python, learn to create sentence and corpus objects, apply tokenization with whitespace or custom tokenizers, and inspect tokens.
Learn how flair enables sequence labeling and text annotation by tagging tokens with labels and values. Build annotated data for NLP models using topics, languages, and entities.
Learn how to perform named entity recognition with flair, including biomedical entities, multilingual models, loading a model, applying it to sentences, and exporting results as dictionaries.
Learn sentiment analysis with Flair by loading a pretrained sentiment classifier, categorizing text into two classes positive and negative, and obtaining a sentiment score.
Learn text classification with Flair by preparing datasets, creating corpora, embedding text, training and evaluating a classifier to distinguish offensive from non-offensive content.
Explore topic modeling in natural language processing to uncover hidden topics. Understand how documents and corpora, dictionaries, vectors, and bag-of-words representations enable unsupervised analysis.
Explore how to use gensim for topic modeling, covering dictionaries, corpora, and models. Learn to evaluate topics with coherence, measure similarity, and apply summarization tools in a simple workflow.
Explore topic modeling with gensim by building a simple workflow from raw text to tokens, dictionary, and bag-of-words, including stop-word removal and basic tokenization.
Explore topic modeling in NLP with Gensim by creating a dictionary from tokenized text, mapping tokens to IDs, and building a custom dictionary for corpus preparation.
Map documents to a bag of words with the dictionary. Show how frequencies yield human readable and machine readable formats for topic modeling with Gensim.
Explore applying gensim models to transform a bag-of-words into new word representations, notably using tf-idf, for topic modeling in NLP.
Explore topic modeling in NLP using the Gensim LDA model to identify hidden topics in text, transforming bag-of-words representations into topic distributions.
Explain text summarization as creating a concise subset from one or more documents that preserves the main idea, and distinguish extractive from obstructive summarization.
Explore abstractive summarization with transformers using a prebuilt Hugging Face model, installing and running a summarization pipeline on sample text such as Wikipedia content, and comparing results with different approaches.
Explore evaluating abstractive and extractive text summarization with Rouge, Bleu, precision, and recall, using transformer-based pipelines and pre-trained models.
Explore text visualization techniques in Python, including word clouds, word-frequency distributions, dispersion plots, named-entity recognition, and stylometry, using tf-idf and pos tagging.
Explore how to visualize word vectors using RASA's Whatlies, creating and plotting word embeddings, comparing vectors with scatter plots and cosine similarity to reveal relationships among words.
Do you know that there are over 7000 human languages in the world? Is it even possible to empower machines and computers to be able to understand and process these human languages? In this course we will be exploring the concept and tools for processing human (natural) language in python.
Hence if you are interested in Natural Language Processing Projects and are curious on how sentiment analysis,text classification,summarization,and several NLP task works? Then this course is for you.
Natural Language Processing is an exciting field of Data Science but there are a lot of things to learn to keep up. New concepts and tools are emerging every day. So how do you keep up ?
In this course on Awesome Natural Language Processing Tools In Python we will take you on a journey on over 15+ tools you need to know and be aware of when doing an NLP project in a format of a workflow.
Tools and technologies are always changing but workflows and systems remain for a long time hence we will be focusing on the workflow and the tools required for each. The course approaches Natural Language Processing via the perspective of using a workflow or simple NLP Project Life Cycle.
By the end of this exciting course you will be able to
Fetch Textual Data From most document(docx,txt,pdf,csv),website etc
Clean and Preprocess unstructured text data using several tools such as NeatText,Ftfy,Regex,etc
Understand how tokenization works and why tokenization is important in NLP
Perform stylometry in python to identify and verify authors
NLP with Spacy,TextBlob,Flair and NLTK
Learn how to do text classification with Machine Learning,Transformers, TextBlob ,Flair,etc
Build some awesome NLP apps using Streamlit
Perform Sentiment Analysis From Scratch and with Several NLP Packages
Build features from textual data- Word2Vec,FastText,Tfidf
And many more
This comprehensive course focuses on not just the various tools that are useful in each step of an End to End NLP project but also how they work and how to build simple functions from scratch for your task.
Join us as we explore the world of Natural Language Processing.
See you in the Course,Stay blessed.
Tips for getting through the course
Please write or code along with us do not just watch,this will enhance your understanding.
You can regulate the speed and audio of the video as you wish,preferably at -0.75x if the speed is too fast for you.
Suggested Prerequisites is understanding of Python
This course is NOT a 'Theoretical Introduction to NLP' nor 'Advanced Concepts in NLP' although we try our best to cover some concepts for the beginner and the pro. Rather it is about the tools used for NLP Project workflow.