Natural Language Processing

The Structure of WH-Questions

Written by on May 23, 2021 in Natural Language Processing, Programming, Prolog with 0 Comments
The Structure of WH-Questions

WH-Questions are questions that begin with the following words: – Who (“Who came here yesterday?”) – What (“What is the goal of this project?”) – When (“When can I visit my parents?”) – Where (“Where did he go?”) – Why (“Why is everyone running away?”) – Which (“Which is the book you recommend?”) – How […]

Continue Reading

Implementing iLexicon using LiteDB

Written by on March 28, 2021 in Natural Language Processing, Programming, Prolog with 0 Comments
Implementing iLexicon using LiteDB

iLexicon is an “intelligent” dictionary that can be used to build Natural Language applications. I have two implementations, one in Lisp and another in Prolog. Both implementations are memory-based, in order to speed up performance. I have written several articles referencing it, for example see this.   LiteDB is a NoSQL database for .NET. I […]

Continue Reading

Template-based Text Generation – Part 2

Written by on October 11, 2020 in LISP, Natural Language Processing, Programming with 0 Comments
Template-based Text Generation – Part 2

In my previous article, I showed how “iLangGen” framework facilitates text generation using templates. I talked about the various “patterns” that can be used in a template. However, in that article, I did not go into the details of the “Embedded Template” pattern. That is the focus of today’s article. Embedded Template This pattern allows […]

Continue Reading

Template-Based Text Generation

Written by on September 28, 2020 in LISP, Natural Language Processing, Programming with 0 Comments
Template-Based Text Generation

I had written earlier about natural language generation using my iLangGen framework. I used a “template” text file which was instantiated dynamically based on predefined “grammars” and external data. The sample application I show-cased demonstrated its utility and versatility. Today I would like to touch upon a few other “pattern” elements that can be embedded in […]

Continue Reading

Mathematica: Using TextCases to Extract Information from Natural Language Text 

Written by on September 13, 2020 in Mathematica, Natural Language Processing, Programming with 0 Comments
Mathematica: Using TextCases to Extract Information from Natural Language Text 

Extracting meaningful information from unstructured, human readable text is a hot topic of research today and has important applications in many domains. I have written a few blogs related to this topic, for example, see this and this. In today’s article, I would like to show how Mathematica can be a great help when working with […]

Continue Reading

Automatically Converting Active Voice to Passive Voice and Vice Versa

Written by on February 16, 2020 in Natural Language Processing, Programming, Prolog with 0 Comments
Automatically Converting Active Voice to Passive Voice and Vice Versa

The iLexicon system can handle active/passive voice conversion of fairly complex English sentences. I gave examples of the underlying verb conjugation mechanism in this article and this one. Today, I am going to give examples of the conversion of complete sentences. Here is an example of active to passive voice conversion: The above is a snapshot […]

Continue Reading

Verb Conjugations in Passive Voice

Written by on February 2, 2020 in Natural Language Processing, Prolog with 0 Comments
Verb Conjugations in Passive Voice

In my earlier article, I showed how the iLexicon system can generate verb conjugations based on <Verb, Tense, Person, Number> quadruple. For the 16 tense forms discussed in that article, the verb conjugations were generated in “active” voice.  We all know that “transitive” verbs can be expressed in both “active” and “passive” voice. For example, […]

Continue Reading

Experimenting with Text Simplification

Written by on January 19, 2020 in Natural Language Processing with 0 Comments

After my last book review, I decided to check out a few websites that claim to simplify English text and/or help compute the measure of readability. In today’s post, I am sharing the results of my experiment. www.simplish.org This site has some interesting functionality. It does spelling check, grammar check, text simplification, and can even […]

Continue Reading

Book Review – Automatic Text Simplification

Written by on January 2, 2020 in Book Review, Natural Language Processing with 0 Comments
Book Review – Automatic Text Simplification

Title: Automatic Text Simplification Author: Horacio Saggino Publisher: Morgan & Claypool Publishers Year: 2017 Automatic Text Simplification is an active area of research in NLP and has been going on for over 20 years. The idea is to transform a given text T1 into text T2 such that T2 is easier to read and understand […]

Continue Reading

Using Definite Clause Grammars (DCG) for Information Extraction

Written by on December 8, 2019 in Natural Language Processing, Programming, Prolog with 0 Comments
Using Definite Clause Grammars (DCG) for Information Extraction

In the previous article, I showed how we can use ATNs for extracting key information from natural language text. I also pointed out in that article that Definite Clause Grammars (DCG) are a more compact formalism for doing this. That will be the focus of today’s article. For a nice introduction to DCG, read this. […]

Continue Reading

Top