We stand with Ukraine

Natural Language Processing Gets Practical: Q&A with expert.ai

Expert.ai Team - 11 August 2020

A Practical Guide to Hybrid Natural Language Processing – Part 1

José Manuel Gómez Pérez, Ronald Denaux and Andrés García-Silva, all from the expert.ai Artificial Intelligence (AI) Research Lab in Madrid have just published “A Practical Guide to Hybrid Natural Language Processing.” The book, edited by Springer Nature, reflects the work that expert.ai’s researchers have been conducting over the past four years. The book is designed to be a reference on the possibilities offered by the intelligent use of current methods and tools in Natural Language Processing and Natural Language Understanding (NLP / NLU) as well as on the short- and long-term challenges that users face as these technologies continue to advance.

We sat down with one of the authors, José Manuel Gómez Pérez, expert.ai R&D & International Projects Director, to talk about the book. This is part one of the interview.

What is the focus of your book?

In the NLP / NLU community, there has always been a substantive debate between supporters of machine learning-based methods and those who advocate for a structured or symbolic knowledge-based approach. Some believe that the statistical approach is superficial and that it does not really understand the meaning of text. Others think that the symbolic approach is too rigid and that it requires a substantial investment of time to write ontologies and rule-based systems that cover all possible cases. In the end, both positions have some truth, but the real problem is that, by focusing on the limitations of one approach or the other, we run the risk of missing the unique opportunities that each of them has to offer.

How does the book address this problem?

“A Practical Guide to Hybrid Natural Language Processing” does not favor one approach. Instead, we wanted to address the problem of understanding natural language from the point of view of the enormous possibilities offered by the intelligent use of the methods and tools available today.

We exhaustively discuss the components necessary to build NLP / NLU systems that combine the power of knowledge graphs with modern neural approaches. In the book, we explain how to create contextual distributed representations; the book offers a clear treatment of word, sense and knowledge graph embeddings and it explains what they are and how to use language models and transformers. Finally, we show you how to evaluate the quality of the resulting systems. However, it is not an encyclopedia or a textbook that mandates a predetermined educational path.

What NLP / NLU topics does the book cover?

The book is organized into three main parts: symbolic and neural building blocks hybrid architectures to combine both, and real-world applications. In each of these parts, the chapters drill down into the topic, including experiments, examples and exercises on NLP tasks, as well as data in real-world domains and sectors.

We also include a large amount of executable code, which is explained step by step. As a bonus, you can download all the Jupyter notebooks included in the book from our GitHub repository[1] and run them on any computer or Google Colab and, if desired, contribute updates to our code.

What is the main point that you hope readers will take away?

From the technical and research perspective, the book offers a working methodology for solving NLP / NLU problems that naturally integrate symbolic approaches based on structured knowledge with neural approaches. We show not only that this is possible, but that it is also desirable for successfully solving many real-life problems, and we show the reader how to do it.

A key point that I think we have managed to capture in the book is the great relevance of language models and transformers, which has brought about a revolution in the discipline of NLP / NLU.

At the same time, the effort required to take the concepts and ideas from theory to practice has been a tremendous learning experience for us, and the book has provided us with a unique perspective for developing and structuring our research in a way that all of our readers can benefit from it.

How was the book developed?

The book represents nearly four years of research conducted in the expert.ai R&D lab, and the work is ongoing. In the last two years, the advances in the field have happened so quickly that the book is extremely topical today. In fact, there were times when we had to rethink entire sections to ensure that the material would be current and relevant at the time of publication.

We anticipate updating future editions to reflect our ongoing research and the developments taking shape across the NLP community. The book features contributions from more than a dozen international experts and is accompanied by a free tutorial[2] that we update constantly.

Who is this book designed for?

“A Practical Guide to Hybrid Natural Language Processing” is designed for practitioners with a background in Artificial Intelligence or structured knowledge who have long been following the tremendous success that statistical (today, neural) NLP approaches have achieved, and those who want to learn the latest techniques such as embeddings, language models or transformers.

The book is also aimed at practitioners who come from the NLP tradition based on statistical approaches who have experienced the problems associated with the scarcity or high-quality data when training a model. It’s also for those who have an interest in working with knowledge graphs for training models.

Finally, this book is for anyone who wants to build a tool for extracting information from text but are not interested in acquiring an advanced degree in AI nor have unlimited funding to invest in GPUs with which to train models to solve complicated language comprehension problems. Instead, we designed the book to be accessible and practical.

What are some practical applications that readers can come away with?

We have included several domain-specific problems that we use to illustrate the practical value of combining knowledge graphs with neural approaches for various NLP / NLU tasks. Among them, I would highlight two in particular. One is the detection and treatment of online disinformation and its diffusion. The other scenario is related to the analysis of information from scientific literature, such as articles or technical reports.

[1] https://github.com/hybridnlp/tutorial

[2] http://hybridnlp.expertsystemlab.com/tutorial/