Natural Language Processing 4 All ( NLP 4 A ll): A New Online Platform for Teaching and Learning NLP Concepts (2021)

Abstract: Natural Language Processing offers new insights into language data across almost all disciplines and domains, and allows us to corroborate and/or challenge existing knowledge. The primary hurdles to widening participation in and use of these new research tools are, first, a lack of coding skills in students across K-16, and in the population at large, and second, a lack of knowledge of how NLP-methods can be used to answer questions of disciplinary interest outside of linguistics and/or computer science. To broaden participation in NLP and improve NLP-literacy, we introduced a new tool web-based tool called Natural Language Processing 4 All (NLP4All). The intended purpose of NLP4All is to help teachers facilitate learning with and about NLP, by providing easy-to-use interfaces to NLP-methods, data, and analyses, making it possible for non- and novice-programmers to learn NLP concepts interactively.

## introduction an emerging body of work has explored ways of lowering the threshold for people to work with ai and ml-technologies, specifically in educational contexts. much of this work has focused on making ai "explainable" @xcite by visualizing the underlying math, or visualizing how machines make decisions. however, nlp has been largely absent from these efforts so far. to address this gap, we developed a new educational tool called natu-rallanguageprocessing4all (nlp4all), which allows teachers to interactively introduce applications of statistical nlp to students without any coding skills. nlp4all foot_0 is a web-based interface for teaching and learning nlp concepts, designed with flexibility and accessibility in mind. it is an open source application built in python on top of the flask framework, and can therefore be easily extended with existing python-based nlp-and mlpackages. the first prototype of nlp4all is designed to work with tweets only, but we are currently expanding to be able to work with any kind of text, bringing nlp tools to a wider array of disciplines and student populations. we first present the design of the tool and its current capabilities, and then briefly describe two different real-world settings in which we have used nlp4all. ## design nlp4all is an interactive tool which is designed to supplement classroom modules introducing nlp or machine learning concepts for non-specialists. the platform facilitates hands-on experimentation with nlp applications using real data, without requiring students to do any programming. nlp4all provides two different user types: teachers and students. whereas teachers can see data from all students and can create new projects, students' activities are more limited in the system. the system is organized into user groups, projects, and analyses. to better describe how the system, we will briefly outline how each of these work. ## example: teaching text classification with nlp4all the initial version of nlp4all features interactive tools for a curriculum module on text classification with naïve bayes and logistic regression models. in this section, we walk through an example of how nlp4all could be used in the classroom to introduce naïve bayes text classification using a corpus of posts from the twitter accounts of joe biden and bernie sanders collected in the run-up to the 2020 democratic primaries. upon logging in, students see a landing page which lists all projects that the student is currently part of, as determined by the instructor (fig. 3 ). ## comparison to prior work we have found two systems that are similar to nlp4all in certain ways, though also different in others. gate @xcite is a combined java api and graphical interface that makes it easy to create nlp pipelines without writing all code from scratch. while it was originally made for researchers, it has also been used in teaching contexts @xcite because it makes it easy for novice programmers to implement more sophis-ticated nlp methods than they could do on their own. however, presumably because gate was made for researchers, it is not made for classroom contexts, and does not offer interfaces on data that would be useful for teachers during the teaching situation. @xcite present a web interface that lets novices process text with common models and methods like nltk's pos tagger and grammar parser. the web interface lets novices combine these models when processing text and visualizes output. however, similar to gate, this interface does not provide views on data that are relevant to the teaching context. additionally, the modules are black boxed to the students and do not provide any information on how the models work, how they are trained, or how they make predictions. ## conclusion at present, nlp4all provides support for teaching the following technical topics, without requiring any programming on the part of teachers or students: with a grant received in spring 2021, the platform will be extended to support new learning modules on tf-idf, vector-based representations of texts, topic modeling, and word embeddings.