Book Image

Natural Language Processing with Java - Second Edition

By : Richard M. Reese
Book Image

Natural Language Processing with Java - Second Edition

By: Richard M. Reese

Overview of this book

Natural Language Processing (NLP) allows you to take any sentence and identify patterns, special names, company names, and more. The second edition of Natural Language Processing with Java teaches you how to perform language analysis with the help of Java libraries, while constantly gaining insights from the outcomes. You’ll start by understanding how NLP and its various concepts work. Having got to grips with the basics, you’ll explore important tools and libraries in Java for NLP, such as CoreNLP, OpenNLP, Neuroph, and Mallet. You’ll then start performing NLP on different inputs and tasks, such as tokenization, model training, parts-of-speech and parsing trees. You’ll learn about statistical machine translation, summarization, dialog systems, complex searches, supervised and unsupervised NLP, and more. By the end of this book, you’ll have learned more about NLP, neural networks, and various other trained models in Java for enhancing the performance of NLP applications.
Table of Contents (19 chapters)
Title Page
Dedication
Packt Upsell
Contributors
Preface
Index

Understanding the SBD rules of LingPipe's HeuristicSentenceModel class


There are other rules that can be used to perform SBD. LingPipe's HeuristicSentenceModel class uses a series of token rules to perform SBD. We will present them here, as they provide insight into what rules can be useful.

This class uses three sets of tokens and two flags to assist in the process:

  • Possible stops: This is a set of tokens that can be the last token of a sentence
  • Impossible penultimates: These tokens cannot be the second to last token in a sentence
  • Impossible starts: This is a set of tokens that cannot be used to start a sentence
  • Balance parentheses: This flag indicates that a sentence should not be terminated until all matching parentheses are matched in that sentence
  • Force final boundary: This specifies that the final token in an input stream should be treated as a sentence terminator, even if it is not a possible stop

Balance parentheses include () and []. However, this rule will fail if the text is malformed...