Book Image

The Handbook of NLP with Gensim

By : Chris Kuo
Book Image

The Handbook of NLP with Gensim

By: Chris Kuo

Overview of this book

Navigating the terrain of NLP research and applying it practically can be a formidable task made easy with The Handbook of NLP with Gensim. This book demystifies NLP and equips you with hands-on strategies spanning healthcare, e-commerce, finance, and more to enable you to leverage Gensim in real-world scenarios. You’ll begin by exploring motives and techniques for extracting text information like bag-of-words, TF-IDF, and word embeddings. This book will then guide you on topic modeling using methods such as Latent Semantic Analysis (LSA) for dimensionality reduction and discovering latent semantic relationships in text data, Latent Dirichlet Allocation (LDA) for probabilistic topic modeling, and Ensemble LDA to enhance topic modeling stability and accuracy. Next, you’ll learn text summarization techniques with Word2Vec and Doc2Vec to build the modeling pipeline and optimize models using hyperparameters. As you get acquainted with practical applications in various industries, this book will inspire you to design innovative projects. Alongside topic modeling, you’ll also explore named entity handling and NER tools, modeling procedures, and tools for effective topic modeling applications. By the end of this book, you’ll have mastered the techniques essential to create applications with Gensim and integrate NLP into your business processes.
Table of Contents (24 chapters)
1
Part 1: NLP Basics
5
Part 2: Latent Semantic Analysis/Latent Semantic Indexing
9
Part 3: Word2Vec and Doc2Vec
12
Part 4: Topic Modeling with Latent Dirichlet Allocation
18
Part 5: Comparison and Applications

Experimenting with LDA modeling

The BoW data and TF-IDF data are two variants of data formation. The model built on BoW data will result in a different outcome from the model built on TF-IDF. We will build models on both variants.

A model built on BoW data

The basic syntax of LDA is easy. The required input parameter is corpus. We assign the BoW data to build the first model, as illustrated in the following code snippet:

from gensim.models import LdaModellda_bow = LdaModel(bow_corpus,
num_topics=10,
id2word = gensim_dictionary)

I’d like to review several important model inputs, as follows:

  • num_topics: This is the number of topics. In this experiment, we will just assign 10. We will learn how to determine the optimal number of topics in the Determining the optimal number of topics section.
  • random_state=None: This is helpful for reproducibility.
  • id2word: We assign our gensim_dictionary dictionary from our corpus. If we do not assign a dictionary, Gensim...