Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Hands-On Python Natural Language Processing

You're reading from   Hands-On Python Natural Language Processing Explore tools and techniques to analyze and process text with a view to building real-world NLP applications

Arrow left icon
Product type Paperback
Published in Jun 2020
Publisher Packt
ISBN-13 9781838989590
Length 316 pages
Edition 1st Edition
Languages
Tools
Arrow right icon
Authors (2):
Arrow left icon
Mayank Rasu Mayank Rasu
Author Profile Icon Mayank Rasu
Mayank Rasu
Aman Kedia Aman Kedia
Author Profile Icon Aman Kedia
Aman Kedia
Arrow right icon
View More author details
Toc

Table of Contents (16) Chapters Close

Preface 1. Section 1: Introduction
2. Understanding the Basics of NLP FREE CHAPTER 3. NLP Using Python 4. Section 2: Natural Language Representation and Mathematics
5. Building Your NLP Vocabulary 6. Transforming Text into Data Structures 7. Word Embeddings and Distance Measurements for Text 8. Exploring Sentence-, Document-, and Character-Level Embeddings 9. Section 3: NLP and Learning
10. Identifying Patterns in Text Using Machine Learning 11. From Human Neurons to Artificial Neurons for Understanding Text 12. Applying Convolutions to Text 13. Capturing Temporal Relationships in Text 14. State of the Art in NLP 15. Other Books You May Enjoy

Building a question classifier using neural networks

We have used a question classification dataset that is open sourced by the University of Illinois, Urbana Champaign. We will try and classify questions based on their text into one of the following six classes:

  • ABBREVIATION
  • ENTITY
  • DESCRIPTION
  • HUMAN
  • LOCATION
  • NUMERIC

More about the dataset can be found at https://cogcomp.seas.upenn.edu/Data/QA/QC/.

Go through the following steps to classify the questions based on their text:

  1. Import the basic libraries:
import nltk
nltk.download('stopwords')
nltk.download('wordnet')
from nltk.corpus import stopwords
from nltk.stem.porter import PorterStemmer
from nltk.stem.snowball import SnowballStemmer
from nltk.stem.wordnet import WordNetLemmatizer
import pandas as pd
import re
import numpy as np
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.preprocessing import LabelEncoder
  1. Now, we will read the dataset using the following code snippet:
train_data = open(...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image