
Explore the basics of natural language processing in Python using Google Colab, covering lemmatization, stemming, named entity recognition, dependency parsing, text summarization, and sentiment analysis.
Explore a basic introduction to natural language processing and its applications, including speech transcription, neural machine translation, chatbots, Q&A systems, and text summarization. Implement a chatbot simulation and sentiment analysis.
Learn natural language processing basics with spaCy, covering parts of speech, lemmatization vs stemming, named entity recognition, stopwords, dependency parsing, and word similarity.
Install the spaCy library in Google Colab, explore its language support, and enable NLP tasks such as named entity recognition, sentence segmentation, part of speech, dependency parsing, and text classification.
Explore parts of speech in natural language processing with spaCy, loading the English model to analyze tokens, tags, lemmatization, and named entities for sentence structure.
Explore the difference between lemmatization and stemming, compare base forms and roots using spacy and nltk's porter stemmer, and learn how lemmatization preserves meaning.
Learn how named entity recognition identifies and classifies entities such as people, locations, dates, and money in text, with examples like IBM, U.S., San Francisco, 2018, and $320 billion.
Explore stopwords in natural language processing and learn how removing common words like it improves sentiment classification, using spaCy stopword lists for English, French, and Portuguese.
Explore dependency parsing in natural language processing by identifying origin and destination in airline chatbot text, using spacey library to find relationships and ancestors between words.
Showcases dependency parsing to identify word relations for chatbots, extracting tasks like booking a table at a restaurant and a taxi to the hotel.
Visualize word dependencies through dependency parsing, highlighting parts of speech and the ancestors and children relations in the example sentence.
Implement a dependence parsing example and recap concepts using cities and actions identified by named entity recognition. Print locations and actions and illustrate how visit relates to stay through relations.
Explore word and sentence similarity using Spacy's glove-based representations, compare hello, hi, and or, and apply thresholds to detect similar phrases for data cleaning and error correction.
Implement the second word similarity example by comparing tokens such as cat, dog, horse, and person, computing pairwise similarities and applying a threshold.
Explore the basics of word tokenization in natural language processing, turning text into tokens and handling punctuation. Compare Python splits with spaCy or NLTK for accurate tokens and sentence boundaries.
Plan of attack introduces four nlp topics—summarization, search, representation, and similarity—focusing on web text extraction, word frequency, word clouds, tf-idf, cosine similarity, and a chatbot demo.
Load texts from the internet using goose three and spacy to extract and clean articles, enabling NLP experiments like named entity recognition, frequent words, and word clouds.
Learn how to apply named entity recognition with spaCy to extract and visualize person names from a Wikipedia article using the en_core_web_sm model.
Extract the most frequent words from a Wikipedia article to reveal hot topics for word clouds and text summarization, using the natural language toolkit to tokenize and preprocess.
Generate word clouds from cleaned text to visualize common words. Note how word clouds remove stopwords and punctuation, while Nltk may not, with preprocessing and frequency comparison.
Implement a pre-processing function to clean and normalize text, converting to lowercase, removing stopwords, numbers, and punctuation, and generating tokens with spaCy for NLP analysis.
Explore the intuition of a frequency-based text summarization algorithm, covering pre-processing, word frequency and weights, sentence tokenization, and scoring to select top sentences for the summary.
Apply a text summarization algorithm to reduce a ten page article to five pages by tokenizing sentences with the semi library, highlighting the best sentences.
Learn the keyword search technique in natural language processing using spaCy's matcher to locate keywords like artificial and computer in text, with left and right contextual tokens.
Learn how bag of words converts sentences into a numeric matrix by counting word occurrences, introducing a simple, first step to represent text for natural language processing tasks.
Implement the bag of words with sklearn's CountVectorizer to transform sentences into a word-count matrix and view feature names, noting 861 unique words and stopwords.
Explore tf-idf, a text representation that weighs terms using term frequency and inverse document frequency across documents, solving bag-of-words issues with normalization and document-wide weighting.
Implement tf-idf in google colab using sklearn's TfidfVectorizer, compare it to bag-of-words, inspect feature names and idf values, and understand why tf-idf weights words by importance.
Implement a chatbot by computing sentence similarity with tf-idf vectors and cosine similarity, converting sparse matrices to NumPy arrays, and testing against a Wikipedia article.
Simulate a chatbot using cosine similarity to match user greetings to predefined responses, tokenize input with split, normalize case, and return a random welcome message.
Develop a chatbot by implementing an answer function that preprocesses user input, applies tf-idf with cosine similarity, and returns the most relevant natural language processing sentence or a no-answer message.
Finish simulating a chat bot with a simple while loop that reads user input, delivers greetings, and answers questions about natural language processing.
Plan of attack outlines implementing sentiment analysis using a real Twitter data set, pre-processing and visualization, language detection with lltC, and nltk-based sentiment analysis.
Load and explore the Twitter dataset in Google Colab, install Spacey, and prepare the text and sentiment columns for a sentiment analysis study.
Prepare text data for sentiment analysis by separating texts from labels and creating train-test splits with train_test_split. The lecture shows sampling 3% of data and 80/20 splits, and notes pre-processing.
Preprocesses text data with spaCy by lowercasing, removing stopwords, punctuation, numbers, short tokens, and urls, and cleans user mentions for training and testing sets.
Generate a word cloud from the Twitter data set by concatenating all texts into a single string and visualize the most frequent terms.
Explore sentiment analysis with the NLTK Vader Lexicon to predict positive, negative, and neutral text without training, using polarity scores and a simple classifier, with examples.
Explore classification and decision trees through a bank loan dataset, using training dataset to build a tree that predicts risk based on income and credit history.
Apply sentiment analysis with tf-idf representation instead of the sentiment analyzer from Nltc, train a decision tree to classify sentences as negative or positive, and use lemmatization to reduce features.
Apply tf-idf to build and evaluate a decision tree classifier for sentiment analysis, training on 38,000 tweets, testing on 9,006, and interpreting 67% accuracy, confusion matrix, recall, and precision.
Train a custom sentiment analyzer with spaCy, building a two-class (positive and negative) classifier from a simple dataset and a text classification pipe.
This lecture trains a spaCy sentiment classifier with a neural network. It covers epochs, data shuffling, mini-batches, doc creation, annotations, and saving the model to disk.
Learn to load a trained spaCy 3 sentiment classifier, test it on positive and negative texts, and apply pre-processing like lowercasing to ensure accurate predictions.
Evaluate the spaCy sentiment classifier on the test data, compare accuracy with tf-idf, and review the classification report and confusion matrix. Learn to build a custom sentiment analyzer using spaCy.
Recap core natural language processing concepts in Python, including part of speech, lemmatization, stemming, named entity recognition, tokenization, and tf-idf, plus text extraction, summarization, and sentiment analysis with spaCy.
Explore online learning in artificial intelligence and data science with AI Expert Academy, offering access to courses, certificates, and monthly new content on topics like natural language processing.
The area of Natural Language Processing (NLP) is a subarea of Artificial Intelligence that aims to make computers capable of understanding human language, both written and spoken. Some examples of practical applications are: translators between languages, translation from text to speech or speech to text, chatbots, automatic question and answer systems (Q&A), automatic generation of descriptions for images, generation of subtitles in videos, classification of sentiments in sentences, among many others! Learning this area can be the key to bringing real solutions to present and future needs!
Based on that, this course was designed for those who want to grow or start a new career in Natural Language Processing, using the spaCy and NLTK (Natural Language Toolkit) libraries and the Python programming language! SpaCy was developed with the focus on use in production and real environments, so it is possible to create applications that process a lot of data. It can be used to extract information, understand natural language and even preprocess texts for later use in deep learning models.
The course is divided into three parts:
In the first one, you will learn the most basic natural language processing concepts, such as: part-of-speech, lemmatization, stemming, named entity recognition, stop words, dependency parsing, word and sentence similarity and tokenization
In the second part, you will learn more advanced topics, such as: preprocessing function, word cloud, text summarization, keyword search, bag of words, TF-IDF (Term Frequency - Inverse Document Frequency), and cosine similarity. We will also simulate a chatbot that can answer questions about any subject you want!
Finally, in the third and last part of the course, we will create a sentiment classifier using a real Twitter dataset! We will implement the classifier using NLTK, TF-IDF and also the spaCy library
This can be considered the first course in natural language processing, and after completing it, you can move on to more advanced materials. If you have never heard about natural language processing, this course is for you! At the end you will have the practical background to develop some simple projects and take more advanced courses. During the lectures, the code will be implemented step by step using Google Colab, which will ensure that you will have no problems with installations or configurations of software on your local machine.