A. Ritz
Langtech
Tychy, Poland
August 2020
accesstounderstanding@gmail.com
Teaching conversational English requires tools that support effective communication and are usable by both students and teachers alike. Research shows, that meaning-focused instruction is effective in developing a student’s oral skills, but to achieve high levels of linguistic and sociolinguistic competency, a student must also concentrate on form. A wide range of tools are, in fact, needed, to support conversation in the classroom. Artificial Intelligence (AI) can help with creating the necessary tools because numerous linguistic topics are under active investigation by the AI community. For instance, tools that focus on fluency, discrete grammar points, meaning, and communication style can already be constructed with existing technology. In addition to the breadth of tools required, classroom-based tools must work in real-time and be perceived as an essential part of the conversation. Something else AI can help with. The concept of real-time tools for exploring the English language is a first step towards developing such a set of tools. This paper describes the tools created so far, the AI technology that underlies their operation, and future real-time tools under development.
Real-time tools for teaching English, English language Instruction, Heuristic Approaches to Teaching, Computational Linguistics, Natural Language Processing, Artificial Intelligence.
This research started some time ago to develop tools to help with teaching conversational English. The main problem to be addressed was how can teachers discuss a multitude of topics with students and generate tests and vocabulary lists on the fly. After some deliberation, the idea of creating “real-time tools” for use in the classroom came to mind. Many of the tools developed are available on the web [1].
The real-time tools developed so far are based on state-of-the-art NLP algorithms that are available as Python libraries on the web. A good example of how these libraries are used can be found in [2]. While, current NLP tools suggest interesting new approaches to developing real-time tools, the author has found that more generic AI techniques are needed to make the learning experience more spontaneous and interesting. This later observation is the driving force behind the work described in this paper.
The approach to teaching English adopted for use with real-time tools emphasizes heuristic methods, which encourage the process of self-discovery for the learner. For heuristic methods to work, the language teacher needs to create a rich linguistic environment so that learners can activate their own intuitive heuristics and discover a language by themselves. This emphasis on language awareness dates back to the Bullock Committee report [3].
With the real-time tools created so far, users can explore numerous modern and historical texts, covering any imaginable topic. In addition, as the material can be explored at random, students do not get stuck-in-a-rut, and can discover intriguing language outside their experience and interests.
Heuristic approaches to teaching provide an ideal framework for using real-time tools to explore large volumes of language related material. The introduction of more sophisticated AI tools should further enhance the discovery of new language constructs and material interesting to both student and teacher alike.
So far, the real-time tools developed have focused on exploring sources of knowledge and literature such as Wikipedia, TED, and Project Gutenberg. Before going on to describe the AI technology driving these applications and ongoing research into new tools and techniques, the existing tools available are described.
The Wiki Tests tool allows you to create open cloze tests and generate vocabulary and collocation lists from Wikipedia articles as an aid to learning English. A test is created from an article which is selected at random from the search results related to the keywords typed in by the user.
There are about 60000 e-books available for download from the Project Gutenberg site (www.gutenberg.org). With this tool a user can search the titles and authors of these e-books and generate open cloze tests and vocabulary lists. When a search term is entered, all the e-books related to the search term are displayed along with a link to generate a random test from one of the paragraphs within the associated e-book. With this tool, the user can focus more on the content they are interested in.
The ATI (Access to Insight) tool consists of two parts. The first part provides a search interface to Theravada texts taken from the ATI website. The second part encourages users to further their knowledge of the English language by creating open cloze tests and vocabulary lists from the very same texts.
The original ATI website was created by John Bullitt in 1993. Firstly, as a FidoNet BBS and later as a website under the domain name accesstoinsight.org. At the end of 2013 Bullitt retired from actively managing the site and encouraged others to incorporate the material into their sites. The texts he collated together are an ideal resource for exploring concepts related to everyday life and the self.
The TED website hosts around 6000 videos which can be explored by language enthusiasts with the TED Tests tool. As is the case for Wikipedia articles, a test is created from a transcript which is selected at random from the search results related to the keywords typed in by a user. In this way, the user can watch a video and test themselves on the vocabulary afterwards.
To help the user find videos with a similar vocabulary, the tool lists 5 recommendations for each video on the TED site. This helps users to focus on the topics and vocabulary they are interested in.
The word browser helps the user explore the lexical relationships between the words contained within the WordNet lexical database of English [4]. WordNet groups nouns, verbs, adjectives, and adverbs into sets of synonyms (synsets). These synsets are linked by conceptual and lexical relations, which the user can visualize and explore [5]. There are a total of 117,659 synsets in WordNet 3.0, each expressing a distinct concept. Six types of relationship are found in WordNet.
Hypernyms (and Hyponyms)
Meronyms (and Holonyms)
Troponyms
Antonyms (and Synonyms)
Pertainyms
Coordinate Terms
WordNet Connect allows the user to display graphically the lexical relationship between any pair of words found in the WordNet database [6, 7]. For instance, the relationship between river and sea is displayed as follows:
river – watercourse – body of water – sea
This application helps students get a feel for the word categories within the English language and can also be used to create word relationship games.
Chatbots are, in fact, excellent tools for helping students discover the errors they make. Many learners miss out or use the wrong determiner, and then are surprised when the chatbot doesn’t understand them. The chatbot therefore encourages students to rewrite their response until the chatbot does make sense of what they are saying.
Everything appeared to be going well. With state-of-the-art NLP technology lots of material could be generated including tests, presentations and graphs displaying lexical relationships. But from the student's perspective, while all the generated material is interesting, volume and choice is a small part of the equation. More advanced AI is clearly needed. One student, a 12-year-old, summarized this very well. She said that the Chatbot is fun but very hard to talk to “because he just sits there waiting for me to say something”.
Most students surveyed wanted more inspiration from the real-time tools they used, which is probably why the chatbot was seen as being fun but a bit dull.
There are 3 research areas that drive the development of real-time tools:
Vector Semantics
Lexical Semantics
Tree Pattern Matching and Parsing
The original TED Tests recommendation engine was based on vector semantics [15], with no preprocessing. For each TED video, 5 recommendations were generated. While the recommendations were usable, something seemed to be missing and the recommendations chosen were not always very intuitive. To improve the recommendations, the use of word saliency was explored. That is, words that are unique to a particular article and related to a well-defined concept are given precedence [8]. Once this was done, the recommendations started to become more intuitive.
The lexical semantics from WordNet underlies both the word browser and WordNet Connect, and is well represented in most of the NLP toolkits available on the web.
Nearly all the real-time tools use pattern matching and parsers to extract the phrase structure from texts and respond to user input. To help with this a tree pattern matcher was developed which works on parse trees, nested lists and nested tuples. A version of the pattern matcher can be found on GitHub (popmatches). This version is used for implementing Finite State Machines. The pattern matcher was inspired by the POPLOG matcher [9]. POPLOG is a multi-language prototyping environment used for creating AI applications in the 80s.
Even when developing applications to help with teaching English, the level of AI needs to be as advanced as possible to make the tools interesting to students. So, rather than focus on developing algorithms for SVO etc., more advanced AI techniques are being explored for building real-time tools. The idea is to develop tools that are more interactive and can help the student explore all the available material by extracting concepts and information about style and language usage. This change of focus led to the exploration of research into Human Level AI, the Language of Thought and Cognitive Architectures.
Existing cognitive architectures are not very well documented and due to their complexity not really suited for building real-time tools currently [10]. The goal of this research is to explore the possibility of building something smaller. For instance, a good starting point is the research by Philip Johnson-Laird on procedural semantics [11]. This paper looks at the possibility of treating linguistic knowledge as code. In this formalism, when we attend to something or think, we build a program specifically for that purpose and execute it. Thus, each thought or piece of linguistic information – a word, phrase, or sentence – is a program which runs concurrently and contributes to achieving our goals.
Johnson Laird’s approach to building intelligent systems is consistent with there being a language of thought. That is, the English language is capable of supporting representation and processing in Human-level AI. The goal of this research is to build a system in which the syntax of the English language can be used to support semantics. Furthermore, all representations should be executable or support execution.
The goal of this research is to create a Reading Assistant (RA) that does not stop thinking and exploring the knowledge it has already acquired. The RA will be interactive so that the results of its deliberations can be communicated to others. The RA currently works with a database of Buddhist texts and can extract the main concepts of Buddhism, extend these concepts and generate new questions for further thought. It is envisaged that the RA will have the ability to help people explore text interactively, by discovering new concepts and questions to ask of the content.
The advanced AI techniques considered suggested that the following software components are needed to start building a small, scalable AI system. These components are already being utilized in the development of more interactive real-time tools.
The reading assistant under development has a persistent Semantic Memory (SM). The SM contains a dictionary and a triple store. Persistent data storage is provided by Python shelve (Python object persistence) though there are many other options. An interesting early article about the persistent storage of Python objects can be found in [12].
The triple store supports PROLOG style reasoning, which is provided by miniKanren [13], which is a Domain-Specific Language for logic programming. MiniKanren is an ideal choice for building small AI systems because it is designed to be easily modified and extended; extensions include Constraint Logic Programming, probabilistic logic programming, nominal logic programming, and tabling.
All representations are executable. For instance, a parse tree is an executable program, as are the rules the chatbot uses for responding to user input. Representing knowledge as code leads naturally to the system programming itself. For instance, while computing all the parse trees in a dataset, a file is created in which each TAG is defined as a procedure. If a new TAG is encountered then a procedure is created for the unknown TAG containing code associated with the types of words described by the TAG which are passed as the argument to the procedure. The code created analyses the text at many levels at the same time. For instance, at the sentence, phrase and word level.
Exception handling can become quite complex when extracting and analysing concepts within a passage of text or interacting with the user. To simplify the process, new ways of handling exceptions have been explored. The idea is to automatically generate procedures to analyse exceptions when current analysis fails and interact with the programmer so that appropriate code can be written considering existing rules within the system. This idea was inspired by Hall’s 1988 paper [14]. This approach can be quite refreshing and saves a lot of time. There are no error messages, just opportunities for machine/developer dialogue and the automatic generation of new rules from old.
Most research is now directed towards building a reading assistant to help people explore Theravada Buddhist texts. Because Theravada Buddhism has a consistent set of teachings, the main concepts of Buddhism can be discovered from a sufficiently large collection of Buddhist texts. So far, the reading assistant has processed a dataset of 272 Buddhist texts and produced a list of the main concepts of Theravada Buddhism. The top 3 concepts discovered are:
The four noble truths
The noble eightfold path
The end of suffering
As these concepts are what would be expected, the dataset would appear to be a good place to start and the reading assistant is on track towards helping people explore these texts. The reading assistant analysed the dataset with the tree pattern matcher mentioned earlier. The frequency of phrases is also considered.
My experience tells me that even when building simple applications for education, you can’t avoid confronting the difficult issues facing AI. This is a good thing because new ways of designing systems come to mind when challenged by the complexity of AI. Research into Procedural Semantics, Human-Level AI and the Language of Thought [15], is particularly interesting from the perspective of developing real-time tools for exploring the English language. The systems constructed based on such research are open to inspection, which makes it a lot easier to build small AI systems that can be evolved.
[1] Ritz, A. 2020. Real-time Tools for Teaching English [Computer Software]. http://www.realtimetools.co.uk/
[2] X. Schmitt, S. Kubler, J. Robert, M. Papadakis and Y. LeTraon, "A Replicable Comparison Study of NER Software: StanfordNLP, NLTK, OpenNLP, SpaCy, Gate," 2019 Sixth International Conference on Social Networks Analysis, Management and Security (SNAMS), Granada, Spain, 2019, pp. 338-343.
[3] The Bullock Committee report, Her Majesty's Stationery Office, London, 1975.
[4] George A. Miller (1995). WordNet: A Lexical Database for English. Communications of the ACM Vol. 38, No. 11: 39-41.
[5] Mariano Sigman and Guillermo A. Cecchi, "Global organization of the Wordnet lexicon", PNAS February 5, 2002 99 (3) 1742-1747
[6] Collins, C. “WordNet Explorer: Applying visualization principles to lexical semantics,” University of Toronto, Technical Report kmdi 2007-2, 2007.
[7] Fong, S. 2005. Wordnet Connect [Computer software]. http://elmo.sbs.arizona.edu/sandiway/wnconnect
[8] Zelikman, E., “Context is everything: Finding meaning statistically in semantic spaces”, preprint arXiv:1803.08493v5, 2018.
[9] Laventhol, J., “Programming in POP-11”, Blackwell Scientific Publications, Ltd. 108 Cowley Rd., Oxford OX4 IJF, United Kingdom.
[10] Kotseruba, I., Tsotsos, J.K. “40 years of cognitive architectures: core cognitive abilities and practical applications”. Artif Intell Rev 53, 17–94 (2020). https://doi.org/10.1007/s10462-018-9646-y
[11] Johnson-Laird, Philip N., “Procedural semantics”, Cognition 5 (3):189-214 (1977)
[12] Shprentz J. 1997, “Persistent Storage of Python Objects in Relational Databases”, In Proceedings of the 6th International Python Conference.
[13] William E. Byrd, Eric Holk, and Daniel P. Friedman. miniKanren, “Live and Untagged: Quine Generation via Relational Interpreters (Programming Pearl)”, in the Proceedings of the 2012 Workshop on Scheme and Functional Programming, Copenhagen, Denmark, 2012.
[14] Hall, R.J., “Learning by Failing to Explain: Using Partial Explanations to Learn in Incomplete or Intractable Domains”, Machine Learning 3:45 77. 1988
[15] Philip C. Jackson, Jr., "Toward Human-Level Artificial Intelligence", Courier Dover Publications, Nov 13, 2019.
[16] Katrin Erk, "Vector space models of word meaning and phrase meaning: a survey", July 30, 2012.