Natural Language Processing with Java - Second Edition: Advanced machine learning and neural networks for building NLP applications

Richard M. Reese, AshishSingh Bhatia



Explore various approaches to organize and extract useful text from unstructured data using Java

Key Features

  • Discover hidden data in text using Java, Deep Learning and NLP
  • Find patterns and gain interesting insights from data using this easy-to-use book
  • Get up and running with NLP using this example-rich guide

Book Description

Natural language processing allows taking any sentence and identify patterns, special names, company names, and such parts. This book will teach how to perform language analysis with the help of amazing libraries in Java and get insights from this analysis.

You will start off with understanding how natural language processing works and various concepts in it. Followed by this, you will learn about important tools and libraries in Java for NLP such as CoreNLP, OpenNLP, Neuroph, Mallet etc. After this, you will directly dive into performing natural language processing on different inputs and tasks such as tokenization, model training, parts of speech, parsing trees, and more. you will learn about statistical machine translation, summarization, dialog systems, complex searches, supervised and unsupervised NLP, and more. Also, you will learn about neural networks, LSTM, CNN and various trained models for bringing high performance in your NLP applications.

What you will learn

  • Understand the basic NLP tasks and how they relate to each other
  • Discover and use the available tokenization engines
  • Apply search techniques to find people and things within a document
  • Construct solutions to identify parts of speech within sentences
  • Use parsers to extract relationships between elements of a document
  • Identify topics in a set of documents
  • Explore topic modeling from a document

Who This Book Is For

This book appeals to data analysts, data scientist, machine learning engineers who are looking to extract information from language using Java. Previous experience with Java and statistics is expected.