Book Image

Python Natural Language Processing

Book Image

Python Natural Language Processing

Overview of this book

This book starts off by laying the foundation for Natural Language Processing and why Python is one of the best options to build an NLP-based expert system with advantages such as Community support, availability of frameworks and so on. Later it gives you a better understanding of available free forms of corpus and different types of dataset. After this, you will know how to choose a dataset for natural language processing applications and find the right NLP techniques to process sentences in datasets and understand their structure. You will also learn how to tokenize different parts of sentences and ways to analyze them. During the course of the book, you will explore the semantic as well as syntactic analysis of text. You will understand how to solve various ambiguities in processing human language and will come across various scenarios while performing text analysis. You will learn the very basics of getting the environment ready for natural language processing, move on to the initial setup, and then quickly understand sentences and language parts. You will learn the power of Machine Learning and Deep Learning to extract information from text data. By the end of the book, you will have a clear understanding of natural language processing and will have worked on multiple examples that implement NLP in the real world.
Table of Contents (13 chapters)

Understanding basic applications

NLP is a sub-branch of AI. Concepts from NLP are used in the following expert systems:

  • Speech recognition system
  • Question answering system
  • Translation from one specific language to another specific language
  • Text summarization
  • Sentiment analysis
  • Template-based chatbots
  • Text classification
  • Topic segmentation

We will learn about most of the NLP concepts that are used in the preceding applications in the further chapters.

Understanding advanced applications

Advanced applications include the following:

  • Human robots who understand natural language commands and interact with humans in natural language.
  • Building a universal machine translation system is the long-term goal in the NLP domain because you could easily build a machine translation system which can convert one specific language to another specific language, but that system may not help you to translate other languages. With the help of deep learning, we can develop a universal machine translation system and Google recently announced that they are very close to achieving this goal. We will build our own machine translation system using deep learning in Chapter 9, Deep Learning for NLP and NLG Problems.
  • The NLP system, which generates the logical title for the given document is one of the advance applications. Also, with the help of deep learning, you can generate the title of document and perform summarization on top of that. This kind of application, you will see in Chapter 9, Deep Learning for NLP and NLG Problems.
  • The NLP system, which generates text for specific topics or for an image is also considered an advanced NLP application.
  • Advanced chatbots, which generate personalized text for humans and ignore mistakes in human writing is also a goal we are trying to achieve.
  • There are many other NLP applications, which you can see in Figure 1.5:
Figure 1.5: Applications In NLP domain