Automatic Generation of English Lesson Materials for
Native Speakers of Japanese
Jason Ginsburg
University of Aizu
Tsuruga, Ikki-machi, Aizu-Wakamatsu City
Fukushima, Japan, 965-8580

jginsbur@gmail.com
ABSTRACTThis paper describes a computer program, a Lesson Material Builder, that is designed to automatically generate editable lesson materials for teaching English to speakers ofJapanese. This program has two functions, a) an Exercise
Creator, and b) a Vocabulary Quiz Creator. The Exercise
Creator automatically creates an editable reading exercise
document, from an input text, in which target vocabulary
words are highlighted and deﬁnitions in Japanese are provided. Taking a reading exercise, of the sort produced by the
Exercise Creator, the Vocabulary Quiz Creator can create
vocabulary quizzes that require students to match vocabulary words with their deﬁnitions.

Categories and Subject Descriptors
K.3.1 [Computer Uses in Education]: Computer-assisted
instruction (CAI)

General Terms
Human Factors, Design, Theory

Keywords
English language teaching, reading, vocabulary

1. INTRODUCTION
Creating lesson materials for English language classes, or forany subject, can be time consuming. An instructor, if developing his/her own materials, must determine what typesof materials are appropriate for the target students, whattypes of materials to create, how to create these materials,
how to incorporate these materials into a lesson, etc. Whendeveloping lesson materials, there are diﬀerent skills thatan instructor can choose to focus on. Crucially, vocabulary
skills are necessary - it is necessary for a student to understand most of the vocabulary words that he/she encountersin a foreign language in order to understand what he/she is
exposed to. Reading English text requires the ability to understand the vocabulary words in the text. To this end, one

Permission to make digital or hard copies of all or part of this work forpersonal or classroom use is granted without fee provided that copies are
not made or distributed for profit or commercial advantage and that copies
bear this notice and the full citation on the first page. To copy otherwise, torepublish, to post on servers or to redistribute to lists, requires prior specificpermission and/or a fee.
HCCE ’12, March 8–13, 2012, Aizu-Wakamatsu, Fukushima, Japan.
Copyright 2012 ACM 978-1-4503-1191-5 ...$10.00.

could create a reading exercise in which target vocabulary
words are highlighted and deﬁnitions are provided. It may
also be desirable to give students vocabulary quizzes thattest students’ understanding of target vocabulary words, aswell as motivate students to study. In this paper, we describe
software, a Lesson Material Builder, that aids in the development of English language lesson materials of this sort.
The Lesson Material Builder is designed to help teachers ofEnglish create lesson materials for Japanese speaking students. This software does not replace the teacher - rather, it
can be used to create lesson materials and quizzes that canbe created from materials of the instructors’ choosing andthat can be edited as necessary. The user (e.g., an English
instructor) chooses reading passages that are appropriate
for the target students and creates lesson materials fromthese texts. Crucially, this software can help instructors
create high quality lesson materials in a shorter amount oftime than would normally be required, thus giving instructors more time to focus on teaching and evaluating students’work.
The core functions of this Lesson Material Builder are a) an
Exercise Creator and b) a Vocabulary Quiz Creator. The
Exercise Creator is fed a text document, from which it generates an editable output ﬁle in which target vocabulary items
are highlighted and deﬁnitions are provided. This document
can be used for helping English language learners read English. The Vocabulary Quiz Creator function is fed a document that lists vocabulary items and their deﬁnitions andthen automatically creates quizzes that require students tomatch vocabulary words with their deﬁnitions. In this paper, we explain how this Lesson Material Builder works andwe give some examples of its uses.

2.

MATERIALS

This application was created in Python and uses the materials listed in Table 1. We created a unigram frequency list
from a downloaded version of the entire Wikipedia corpus.1
Then we created a list of all unigram types and the frequency(number of occurrences) of each type. This list is used to
extract target vocabulary items from texts. We used a list
1
This was downloaded from http://en.wikipedia.org/
wiki/Wikipedia:Database_download#English-language_
Wikipedia on September 6, 2010 and consists of all “articles,
templates, image descriptions and primary meta-pages” of
Wikipedia. After cleaning tags, via a Python script, this
corpus has a size of 1,003,961,037 tokens.

Table 1: Materials
Material
Size (Types) Function
Unigram frequency 68,711,145
Determine target
list (fromvocabulary
Wikipedia)
terms
List of570
Eliminatestop words
stop words
Gene 95
57,350
ProvideEnglish-Japansedeﬁnitions
dictionary

dictionary (see Table 1). If a deﬁnition is not found, and if
the word is capitalized, then it is eliminated (this serves the
purpose of eliminating some names). Any remaining words
are considered to be vocabulary items. Vocabulary items are
stored and indexed. In the output ﬁle, each vocabulary item
is printed out in bold text, with a preceding number. Afterthe text, a list of all vocabulary items is given. Vocabulary
items are preceded by the same numbers that precede thevocabulary items as they appear in the text, thus enablinga user to ﬁnd the word in the text, and see how it is used incontext. Each vocabulary item is followed by its deﬁnition,
if a deﬁnition occurs in the dictionary.

of stop words, which we obtained from the Natural Language Toolkit [1]. This list is used to exclude stop words
when extracting target vocabulary terms. We also used theGene 95 English-Japanese dictionary2 to extract Japanesedeﬁnitions for vocabulary terms. We next explain how ourprogram works, and how it incorporates these materials intoit.

3. EXERCISE CREATOR
The primary component of this software is the Exercise Creator function, which automatically creates editable lesson
materials from text documents. The user loads in a document in LATEX format. The program extracts target vocabulary words, ﬁnds their Japanese deﬁnitions, and thenproduces an output ﬁle in LATEX format in which vocabulary words are highlighted and deﬁnitions are given. A user
can then edit this output document.
Initially, the user creates a ﬁle in LATEX. The user can simply
cut and paste a document (e.g., an online article) into a.tex ﬁle and edit it as necessary. The ﬁle is loaded into theLesson Material Builder. Then an output ﬁle in which target
vocabulary words are selected and deﬁnitions are provided
is produced. See Figure 1 for a screenshot of a portion of
the output ﬁle.3
Once a text is input into the Lesson Material Builder, theuser can implement a “Make Exercise” function. This element of the software works as follows. The input text istokenized. For each word, the program then does the following. If the word is in the stop words list (see Table 1) or if itconsists only of punctuation (e.g., symbols such as ‘.’, ‘;’,‘?’,etc.), that word is not selected as a vocabulary item. If theword is still available (i.e., it is not a stop word or punctuation), then the program makes use of the unigram frequency
list (see Table 1). The program extracts the top 500 mostfrequent non-stop-word unigrams in the unigram frequency
list. If the target word is not in this list, then it is selected
as a potential vocabulary word. Note that this cutoﬀ of 500
is designed to exclude some of the most frequent English
words, which students are likely to know. This cutoﬀ canbe altered; for example, the cutoﬀ number can be increased,
thereby resulting in extraction of fewer vocabulary terms.
This may be useful for more advanced level students. If aword still is not eliminated, then there is a search for a deﬁnition of the extracted word in the Gene 95 English-Japanese

Figure 1: Portion of output exercise

Deﬁnitions are extracted in the following manner. If a target
vocabulary word corresponds exactly to an entry in the dictionary, then the deﬁnition is extracted. If no entry is found,then two methods are used to check for a deﬁnition. First,
the target word is, via a simple algorithm, stemmed; for example, “walked” becomes ‘walk’. Then there is a search forthe root form of the word; if found, then the relevant deﬁnition is extracted. If an entry still is not found, then there
is another search, this time for any dictionary entries thatare close in form to the vocabulary word. If no deﬁnition isfound, then no deﬁnition is provided in the output ﬁle.
Consider the following text, an excerpt from a Wikipedia
ﬁle on New York City.4
Located on a large natural harbor on the Atlantic
coast of the Northeastern United States, NewYork City consists of ﬁve boroughs: The Bronx,
Brooklyn, Manhattan, Queens, and Staten Island. With a 2010 United States Census population of 8,175,133 distributed over a land areaof just 305 square miles (790 km2), New York2

http://www.namazu.org/∼tsuchiya/sdic/data/gene.html
The output ﬁle is in .tex format. The screenshot is of the.pdf version of the output. See the following discussion.
34

http://en.wikipedia.org/wiki/New_York_City

is the most densely populated major city in the
United States. As many as 800 languages are
spoken in New York, making it the most linguistically diverse city in the world. The New
York City Metropolitan Area’s population is theUnited States’ largest, estimated at 18.9 million
people distributed over 6,720 square miles (17,400km2), and is also part of the most populous combined statistical area in the United States, containing 22.2 million people as of 2009 Census estimates.
This text is fed through the Exercise Creator. The program
searches through the text, ﬁnds target vocabulary items andtheir deﬁnitions, and a vocabulary list, consisting of vocabulary words and their deﬁnitions, is produced following thetext. The resulting paragraph and a portion of the resulting vocabulary list are shown in Figure 1, which consists ofscreenshots of the .pdf ﬁle version of relevant portions of theoutput.5

Word

Table 2: Definitions
Deﬁnition(21) natural(27) boroughs(28) bronx(29) queens
In Figure 1, note that target vocabulary words are labeledand deﬁnitions are generally provided. Consider the word
‘harbor’, which is labeled as (22). This word is extracted because it is not a stop word and it is not in the list of the mostfrequent 500 non-stop-words in the unigram frequency list.
This word is found as an entry in the dictionary. Thus, thisword is tagged in the ﬁle, it is printed out in the vocabulary
list below the text, and its extracted deﬁnition is provided.
The deﬁnition is the entire extracted deﬁnition. Next, consider the word ‘boroughs’ (27). The singular version ‘borough’ appears in the dictionary, but the plural version doesnot. To extract the deﬁnition, the program ﬁrst searches for‘boroughs’. When this is not found, this word is stemmed
to ‘borough’, which matches an entry in the dictionary. The
name ‘Brooklyn’, which appears in this paragraph does notoccur in the vocabulary list. This is because it is identiﬁed
as a name - it is not an entry in the dictionary, and it iscapitalized. This contrasts with ‘Bronx’ (28), which just so
happens to be in the dictionary, and thus, it is extracted.
Table 2 lists some vocabulary words from the above paragraph on New York City, together with their extracted definitions and the ‘best’ deﬁnition, where the best deﬁnitionrefers to the deﬁnition that corresponds to the appropriate
word sense that corresponds to how the word is used in the
text. Note that (21) ‘natural’ is provided with many deﬁnitions. Of these, the best one that corresponds to its use
in the text is 自然な shizenna ‘natural in nature’. Someof the deﬁnitions, such as 生まれつきの umaretsukino ‘frombirth’ are not appropriate given the context. With respect
to (27) ‘boroughs’, the program only ﬁnds one deﬁnition 自治町村 jichichouson ‘borough’ and this deﬁnition turns out
to be appropriate. Interestingly, a deﬁnition is found for(28) ‘Bronx’, even though this is the name of a location.
The deﬁnition provided, which describes that this is one of
the 5 boroughs of New York City, is correct. A problem,
however, arises for (29) ‘queens’, the name of a borough in
New York. The program ﬁnds deﬁnitions that refer to afemale monarch. None of these deﬁnitions are appropriate.
The program extracts (39) ‘linguistically’, but no deﬁnition5

Due to lack of space, we do not show the entire output ﬁle.

1. 生まれつきの,(人の態度などが), 気どらない, 自然な, 飾らない,2.
ありのままの, 自然の,加工しない, 野生の, うってつけの物 [人], ぴったりの物 [人], 本質, 原始状態,3. 自然, 天然,
全宇宙, 性質, 気質, 本
位の, 本当の, 先天的な自治町村
(the 〜) ブロンクス(New York 市の 5 つの
区の一つ)

Best
Deﬁnition
自然な自治町村(the 〜) ブ
ロンクス(NewYork 市の 5 つの区の一つ)

女王として君臨する,
王妃, 女王, 女帝, 皇后,
クイーンにする(39) linguisticallyis found in the dictionary. Editing of the deﬁnitions in the
output ﬁle is thus necessary.
The Exercise Creator function is useful in that it aids inthe process of developing target lesson materials for helping students with their reading skills. A human can takea text passage, ﬁnd target vocabulary items, look up thedeﬁnitions and then produce a document of the sort thatis output by this program. However, this process is time
consuming. This software makes this process much faster.
This application automatically determines target vocabulary items. Deﬁnitions are automatically extracted and an
editable LATEX document is produced. A user who has basic
skills in using LATEX can then edit this output document.
Certain vocabulary items that have been selected automatically by the program can be eliminated from the list of
vocabulary items, if necessary - for example, the students
may already know the item. Deﬁnitions, as noted above,
must be edited. When appropriate deﬁnitions or no deﬁnitions are provided for target vocabulary items, the user
can manually look up the word and ﬁnd a suitable deﬁnition. However, in cases of input documents such as the one
presented in this paper, most deﬁnitions are provided automatically. In the sample output document discussed here
(see Figure 1 for a portion of this document), 114 vocabulary items were selected and deﬁnitions were found for all
but 7 of these items. Of words for which deﬁnitions were
found, in our opinion, there were 8 words for which certain
problems arise (deﬁnitions are incorrect, etc.): ‘referred’,‘queens’, ‘Staten’, ‘Dutch’, ‘surrounds’, ‘wall’, ‘lower’, and‘capitalization’.6 While editing these deﬁnitions takes time,
6
Deﬁnitions are found for ‘referred’, but they do not correspond to the use in the text. The deﬁnitions for ‘queens’refer to a monarch, and not to the place in New York. Definitions are given for ‘Staten’ and ‘Dutch’ but they do notrefer to the proper noun uses, as in ‘Staten Island’ and init takes much less time than manually looking up deﬁnitions for all vocabulary words. Also, the user does not haveto spend much to any time (depending on the accuracy ofthe output, target students, etc.) determining which words
to provide deﬁnitions for, since words are automatically selected by the program.

4. QUIZ CREATOR
Another function of this program is that it can be used toautomatically create vocabulary quizzes from reading lesson
materials. Speciﬁcally, the user loads in a ﬁle that corresponds to the type of ﬁle that is created by the Exercise
Creator function (see Figure 1 above) - a document containing text in which vocabulary words are selected and deﬁnitions are provided.
The quizzes are created in the following manner. The user
loads in the .tex source ﬁle. In this case, we loaded in anedited version of the ﬁle output by the Exercise Creator (aportion of the unedited output ﬁle is shown in Figure 1).
Then the user selects a “Make Quiz” option. The program
loads in the ﬁle and extracts all of the vocabulary words.
Then the user chooses the number of vocabulary words touse for the quiz. The user can also choose not to use certain
vocabulary words, if desired. Then the program automatically produces a quiz. A portion of the output quiz is shownin Figure 2. In this case, there are 100 possible vocabulary
words and the user has chosen to make a quiz with 25 ofthese. The program chooses 25 of the vocabulary words.
The original text is printed to the quiz, with the 25 vocabulary words in bold and numbered. The text is provided sothat students can see the words in context. The program
creates a table at the bottom of the text. The list contains
the vocabulary words in one column and 25 randomized definitions in an adjacent column. Students have to match thevocabulary words with their deﬁnitions. In addition to creating a .pdf version of the quiz, the program also creates aversion for use with the course management system Moodle(http://moodle.org/). This quiz is automatically created in
Moodle XML format, which, when loaded into Moodle, produces an online quiz (see Figure 2). While looking at the
paper quiz, students can enter their answers in the Moodle
quiz, and the quizzes are automatically graded by Moodle.
This Quiz Creator has the following advantages. First, it
automatically creates quizzes, thus saving the teacher time.
Second, it creates quizzes by randomly selecting vocabulary
items (the user determines how many), and thus it can beused to create many diﬀerent quizzes. This can be usefulwhen teaching diﬀerent sections of the same class. The
teacher can give each section of the same class the samelesson materials to study, but each section can be given adiﬀerent quiz. Another advantage of this software is that
relating to the Netherlands. Deﬁnitions for ‘surrounds’ are
not appropriate; the extracted deﬁnitions refer to the verbal usage of this word, but this word is used as a noun in
the text. An appropriate deﬁnition for ‘wall’ is given, but‘wall’ occurs in the name ‘Wall Street’, so it may be betterto indicate ‘Wall Street’ as a vocabulary term than ‘wall’alone. Deﬁnitions are extracted for ‘lower’ but they do notcorrespond to its use in the place name ‘Lower Manhattan’.
The deﬁnition that is extracted for ‘capitalization’ refers to
its use with respect to capital letters, and not the ﬁnancial
use which appears in the text.

it can be used to create a version of the quiz that can begiven using Moodle. If students input their answers into
Moodle, then their quizzes can be automatically graded by
Moodle. Automatic grading for vocabulary quizzes of thissort is easy to implement on a computer since there is only
1 correct answer per quiz item (that is, if the quiz item does
not have any ﬂaws) and there is no actual need to read andcomprehend English for grading. Automatic grading saves
the teacher time. Instead of spending time with the tedious
job of grading vocabulary quizzes, the teacher can focus onother tasks.

5.

CONCLUSION

In this paper we have discussed a Lesson Material Builderthat can be used to create editable lesson materials and tocreate vocabulary quizzes. This is a work in progress andthere are numerous ways in which this application could be
improved. The Exercise Creator function extracts vocabulary words and provides deﬁnitions. Currently, the program
simply provides deﬁnitions, from a text dictionary, for each
word, if a deﬁnition is available. This function, while useful, would be more useful if it were able to automaticallyprovide appropriate deﬁnitions for words (e.g., instead ofgiving all deﬁnitions for a vocabulary item, it would provide the deﬁnition that corresponds to the appropriate word
sense). Furthermore, the application extracts vocabularyterms that are unigrams; the ability to identify and deﬁne
multi-word expressions would be useful. Development towards these goals could be achieved via incorporation ofword-sense-disambituation, named entity recognition, andpart-of-speech tagging functionalities. The Vocabulary Quizfunction currently only creates quizzes that require students
to match vocabulary words with their deﬁnitions. This function could be improved to create other types of vocabulary
quizzes.
Lastly, while the Lesson Material Builder is designed to serveas an aid to English language teachers who are teaching tostudents who speak Japanese as a native language, this typeof application could be adapted for other teaching situations.
It could be designed for speakers of a native language otherthan Japanese. This is fairly easy to implement, if an available dictionary for that language can be found. It could also
be redesigned to provide deﬁnitions in English - this might
be ideal in an English language class in a country where
English is spoken, since oftentimes these classes have students who speak a diverse range of native languages. Lastly,
the methods discussed here are not necessarily limited toteaching English. This sort of application could be designed
for teaching languages other than English, as well as fordesigning lesson materials for other non-language academic
subjects.

6.

REFERENCES[1] S. Bird, E. Klein, and E. Loper. Natural language
processing with Python. O’Reilly, Sebastopol, CA, 2009.

Figure 2: Portion of output quiz: .pdf fileFigure 3: Portion of Moodle Quiz