Construction of a Cooking Ontology
from Cooking Recipes and Patents
Abstract
Hidetsugu Nanba

Toshiyuki Takezawa

Hiroshima City University

Hiroshima City University

3-4-1 Ozukahigashi, Asaminamiku 3-4-1 Ozukahigashi,
Hiroshima, 731-3194 JAPANAsaminamiku

nanba@hiroshima-cu.ac.jp

Hiroshima, 731-3194 JAPANtakezawa@hiroshima-cu.ac.jp

Yoko Doi
Hiroshima City University

Kazutoshi Sumiya
3-4-1 Ozukahigashi, Asaminamiku University of Hyogo
Hiroshima, 731-3194 JAPAN

1-1-12 Shinzaike-honcho,

doi@ls.info.hiroshima-cu.ac.jp

Himeji,

Miho Tsujita
Hiroshima City University

Hyogo 670-0092 JAPANsumiya@shse.u-hyogo.ac.jp

3-4-1 Ozukahigashi, Asaminamiku
Hiroshima, 731-3194 JAPANtsujita@ls.info.hiroshima-cu.ac.jp

A cooking ontology is an indispensable language
resource for the language processing of cooking recipes.
We have constructed a cooking ontology by means ofpattern matching, statistical natural language
processing techniques, and manual steps to identify
hyponymy, synonymy, attributes, and meronymy.

Author Keywords
Cooking Ontology; Cooking Recipe; Hyponymy;
Synonymy; Attribute; Meronymy
Recipe; Ontology; Predicate Argument Structure
Analysis

ACM Classification Keywords
H.3.1 Content Analysis and Indexing

Introduction
Permission to make digital or hard copies of part or all 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. Copyrights
for third-party components of this work must be honored. For all otheruses, contact the Owner/Author.
Copyright is held by the owner/author(s).
UbiComp '14, Sep 13-17 2014, Seattle, WA, USA
ACM 978-1-4503-3047-3/14/09.
http://dx.doi.org/10.1145/2638728.2641328

There has been a recent increase in research work
focusing on cooking recipes, including recommendation[7], summarization [8], and predicate-argument
structure analysis [5], has been increasing. However,different terms are used in different recipes,
particularly in user-generated recipe-sharing sites, eventhough these terms often refer to the same thing.
Moreover, anaphora and ellipsis resolution is often
required, which can make it difficult to process recipes
correctly. We have therefore constructed a cooking
ontology that can be used in a variety of language
processing tasks as a linguistic resource.

In general, an ontology is organized as a hierarchy ofconcepts involving relationships such as synonymy andmeronymy. Various methods for constructing ontologies
from text databases have been proposed for a varietyof natural language processing fields [1, 2, 3, 4]. By
applying these techniques to a cooking recipe database,
we can construct a cooking ontology. In addition to arecipe database, we have used a patent database.
Patent applicants tend to describe various matters
explicitly to avoid patent-infringement lawsuits, eventhough they may refer to common-sense concepts. This
indicates that we can expect to find common knowledge
about cooking matters in patent documents.
The remainder of this paper is organized as follows.
Section 2 describes related work. Section 3 explains themethod for constructing a cooking ontology. Section 4reports on an experiment, and discusses the results.
We present some conclusions in Section 5.

contains an ingredient image, synonyms, apronunciation guide, notes, and substitutes. Our
cooking ontology covers not only synonyms andhyponymy but also meronymy and attributes of thevarious terms. “Taaable” is another widely used cooking
ontology, which contains meronymy and hyponymy. It
also covers various languages, such as English, French,
German, and Spanish. However, this ontology does not
focus on Japanese, and also does not cover some
ingredients, which are commonly used in Japanese food.
Our cooking ontology focuses on Japanese cooking
recipes, and covers ingredients for Japanese food.
Natural Language Processing Focusing on Cooking
Recipes
Yamakata et al. [8] proposed a method that creates atypical cooking procedure from multiple recipes by
converting each recipe into recipe trees and byintegrating them. Then, they extract features of each
recipe by comparing with the typical one.

Related WorkIn this section, we describe some related studies on“construction of a cooking thesaurus,” “natural
language processing for cooking recipes,” and“extraction of various relations between terms.”
Cooking Ontology
Several cooking ontologies, such as “Cook’s Thesaurus1”
and “Taaable2,” have been developed. “Cook’s
Thesaurus” is an English cooking encyclopedia thatcovers thousands of ingredients and kitchen tools. This
thesaurus comprises 17 categories, each of which1

http://www.foodsubs.com/

2

http://wikitaaable.loria.fr/index.php/Main_Page

Tachibana et al. [6] focused on various modifiers in thetitles of recipes that point to the characteristics of therecipes, such as “kid-friendly” and “simple.” They
analyzed the reasons for these modifiers being used in
the recipe titles. For example, soymilk, which ispreferred by many children, can be used instead ofgarlic and milk as an ingredient in carbonara, which is
why the modifier “kid-friendly” was used in the title. To
identify this as the reason, it would be necessary tocompare this recipe with other carbonara recipes,
extracting the similarities and differences between
them. For such purposes, our cooking ontology cancontribute to improving the Tachibana’s method,
because different terms are often used in different
recipes, even though they refer to the same thing.

Automatic Construction of an Ontology from Text
Databases
Several methods for constructing an ontology from text
databases have been proposed. Hearst [2] proposed amethod for extracting hyponymy from text databases
using a set of patterns. For example, “cabbage,”“radish,” “eggplant,” and “cucumber” are extracted ashyponyms of “vegetable” from the following sentence,using the pattern “NP0 such as {NP1, NP2, (and/or)}*NPn.”
Furthermore, the method of this specificembodiment can be used to dry vegetables such as
cabbage, radish, eggplants and cucumber, whichwere difficult to dry with prior art methods
Here, NPx stands for a noun phrase. We apply thismethod to Japanese patents to extract hyponymy.
Chung [1] proposed a method for extracting synonyms
based on a recipe data structure. From the observationthat the main ingredient is usually written first in theingredient list of a recipe, he assumed that this first
ingredient is strongly related to the category to which
the recipe belongs. They confirmed experimentally that
his method for calculating relation scores between
ingredients and category names using the ingredientposition was effective for collecting synonyms from arecipe database. We use this method to extract
synonyms.
Although, we confirmed the effectiveness of Chung’s
method via the experiment described in Section 4, we
found that Chung’s method was insufficient forcollecting all synonyms. Furthermore, the method could
not collect verb synonyms. To overcome this weakness,

we examined another approach. Lin [4] and Lee [3]proposed distributional similarity methods forcalculating the similarity between terms. They focusedon the contexts in which terms are used, defining thesimilarity between two terms as the amount of
information contained in the commonality of the terms
divided by the amount of information in their contexts.
We apply this method to a cooking recipe database,collecting related terms as candidates for synonyms ofa given term.

Construction of a Cooking Ontology
In this section, we describe our cooking ontology, which
comprises synonyms, hyponymy, meronymy, andattribute relations of terms in a cooking domain. We
give an overview of our ontology, with examples, andexplain the procedure used for its construction.
Overview of Our Cooking Ontology
The structure of our cooking ontology is shown in
Figure 1. Our ontology employs a two-level hierarchy.
The top level comprises the following seven categories.
l
l
l
l
l
l
l

Ingredient - seafood
Ingredient - meat
Ingredient - vegetable
Ingredient - otherCondiment
Kitchen tool
Movement

Among these categories, “Movement” is a category
involving verbs, while the others involve nouns. Eachcategory contains several entry words. For example, in
Figure 1, “Ingredient-seafood category” comprises
several entry words such as “squid” and “shrimp.” Foreach entry, several related terms are classified into
three categories: “synonymy,” “meronymy,” and“attribute.”

Step 1. Determination of Entry Words
We determined entry words via the following two
substeps.
(Step 1-1) Collecting candidate words from patents(Step 1-2) Selecting entry words manually
In Step 1-1, we applied Hearst’s method [2] to patents3,
and collected candidates for entry words. For thefollowing five categories, we prepared seed words thatwere synonyms of each category name, and thencollected hyponyms using the pattern “NP0 ((、|や)NPn)* (等|など)の[seed word]” ([seed word] such as
NP0 ((,|and|or) NPn)*).
lIngredient – seafood
魚類(fish)，魚介類(fish)，海産物(sea product)，水産物(fishery product)l

Ingredient – meat
肉類(meat)，食肉(edible meat)，食肉類(ediblemeat)，原料肉(ingredient meat)l

Ingredient – vegetable
野菜(vegetable)，果菜類(fruit vegetable)，野菜類(vegetable)，果菜物(fruit vegetable)，農産物

Figure 1. Structure of our cooking ontology.

Procedure for Constructing the Cooking Ontology
The procedure for constructing the cooking ontology
comprises the following three steps.
(Step 1) Determination of entry words(Step 2) Collection of synonyms for each entry word
(Step 3) Collection of meronymous words andattributes for each entry word
We now describe these steps in detail.

l

l

3

(agricultural products)
Condiment
調味料(condiment)，香辛料(spice)，薬味(condiment)，スパイス類(spice)
Kitchen tool

We used those unexamined Japanese patent applications over
19 years (1993-2011) to which any of the International PatentClassification codes A23L (foods, foodstuffs, or non-alcoholic
beverages), A47J (kitchen equipment), or H05B (electricheating, electric lighting) were assigned.

調理器具(kitchen tool)，調理容器(cooking
container)，調理器(cooking device)，調理具(cooking tool)，調理道具(cooking utensil)

We selected ingredient words that do not belong to any of
the categories “Ingredient - seafood”, “Ingredient - meat”,
and “Ingredient - vegetable” as entry words in the“Ingredient – other” category. Most of the words in thiscategory are processed foods, such as cheese andpasta.

For example, when we collected candidate words forthe “Ingredient - seafood” category, we foundsentences that contained patterns such as “(NP0 ((、|や)NPn)*)などの魚類” (fish such as ((,|and|or) NPn)*)) or“(NP0 ((、|や)NPn)*)等の水産物” (fishery product such as

For entry words in the “Movement” category, we manually
selected verbs appear frequently in the Rakuten recipe
database4.

((,|and|or) NPn)*)). We then extracted noun phrases(NP0 and NPn), such as “イカ” (squid) or “エビ” (shrimp),
as candidates for entry words in the “Ingredient –seafood” category.

Step 2. Collection of Synonyms for Each Entry Word
The procedure of collecting synonyms for each entry
word comprises the following two substeps.

Although Hearst’s pattern-based method is useful forcollecting hyponyms from texts, there are several cases
where inappropriate words are mistakenly extracted. In
the following sentence, “食用” (edible use) and “鑑賞用”(Step 2-1) Collecting candidates for synonyms.
(Step 2-2) Identifying synonyms manually.

(ornamental purpose) are mistakenly extracted as
candidates for the “Ingredient - seafood” category.

In Step 2-1, we used the following three methods.
(Method 1) Using words that were deleted in the processof determining representative words in Step 1-2(Method 2) Chung’s method [1](Method 3) Distributional similarity method [3, 4]

食用や観賞用等の魚介類をいう。
(This indicates fish for edible use and for ornamental
purposes)
We therefore delete such inappropriate words manuallyfrom the candidate list in Step 1-2. From among theremaining candidates, we statistically determined one
representative word for each group of synonyms. As an
example, for the three candidates “サケ” (salmon), “鮭”(salmon), and “さけ” (salmon), we manually selected “サケ”

We have already described Methods 1 and 2. Here, we
explain Method 3. As we explained in the section on
related work, the basic idea of distributional similarity is tocalculate the similarity between two words in terms of
their context words. Our algorithm is as follows.

as the representative word, because the frequency of thephrase “サケ(など|等)の魚介類” (fish such as a salmon) is
greater than those of “鮭(など|等)の魚介類” (fish such as asalmon) and “さけ(など|等)の魚介類” (fish such as a1.

salmon).

4

Analyze the dependency structures of all sentencesin the Rakuten recipe database, which contains about

http://recipe.rakuten.co.jp/

2.

3.
4.
5.
6.

440,000 recipes, using the Japanese parser
CaboCha5
Extract <noun phrase><verb> pairs that havedependency relations from the dependency trees
obtained in Step 1
Count the frequencies of each <nounphrase><verb> pair
Collect verbs and their tf*idf scores for each nounphrase, creating indices for each noun phrase
Calculate the similarities between two indices fornoun phrases using the cosine distanceObtain a list of synonymous noun phrases

In addition to collecting verbs for each noun phrase in
Step 4 of the algorithm, we collected noun phrases foreach verb similarly, obtaining a list of synonymous verbs.
In Step 2-2, we selected synonyms from the candidates
obtained using the three methods. The characteristics ofthese methods are summarized in Table 1. We checked all
candidates collected by Methods 1 and 2, because thenumbers of candidates were small. The candidates
collected by Method 3 were checked in order of similarity
to each other as much as possible.

Reliability

Number ofcandidates

Method 1

Fully reliable

Very small

Highlyreliable
Moderately
reliable

Small

Targetcategory
All(Deleted words
in Step 1-2)

Method 2(Chung)
Method 3(distributional
similarity)

Very large

Except for“Movement”
All

Table 1. Characteristics of the three methods used forcollecting synonyms.

Step 3. Collection of Meronymous Words and Attributes
for Each Entry Word
In this step, we collected meronymous words andattributes for each entry word using the following two
substeps.
(Step 3-1) Collecting candidates of meronymous words
and attributes.
(Step 3-2) Identifying whether each candidate ismeronymy or attribute.
In Step 3-1, we collected candidates from texts using thepattern “[entry word]の NP0.” For example, if we apply
the pattern “サケの(NP0)” ((NP0) of salmon) to thepatent database, we can obtain “色” (color), “頭” (head),or “フライ” (fry) as candidates for meronymous words
and attributes.

5

https://code.google.com/p/cabocha/

We identified manually whether each candidate was ameronymous word, an attribute, or an inappropriate
word. In the above example for “サケ” (salmon), “色”(color), “頭” (head), and “フライ” (fry) are identified as

an attribute, a meronymous word, and an inappropriate
word, respectively.
Here, for more efficient identification in Step 3-2, we
propose several methods to rerank the candidates foreach entry word. In general, most attributes of an
ingredient are also attribute of other ingredients. For
example, “色” (color) and “鮮度” (freshness) are attributesof most meats, fishes, and vegetables. Therefore, if wewere to collect pairs of NP1 using the pattern “NP0 の NP1”
(NP1 of NP0) from texts and rerank candidates for eachentry word in terms of the frequencies of each NP1, we
would expect to find the correct attributes quickly. On
the other hand, in the pattern “NP0 の NP1” (NP1 of NP0),
the probabilities that attributes appear in NP0 are
considered smaller than in NP1. Therefore, if we were tocollect pairs of NP0 using the pattern “NP0 の NP1” (NP1 of
NP0) from texts and rerank candidates for each entry
word in terms of the frequencies of each NP0, we would
expect that attributes would be ranked lower, which will
be efficient for the identification of meronymous words.

Experiments
In this section, we report on some statistics andexperimental results.
Determination of Entry Words
In Table 2, we show the numbers of entry words thatwere collected using the method mentioned in theprevious section.

Category

Number of entry words

Ingredient - seafood

61

Ingredient - meat

6

Ingredient - vegetable

122

Ingredient - other55

Condiment

51

Kitchen tool48

Movement

131

Total

474

Table 2. The number of entry words for each category.

Collection of Synonyms for Each Entry word
In Table 3, we show the numbers of synonyms for eachcategory together with the number of synonyms foreach entry word.
Category

The number of synonyms(per each entry word)

Ingredient - seafood453 ( 7.4)

Ingredient - meat

383 (63.8)

Ingredient - vegetable

947 ( 7.8)

Ingredient - other732 (13.3)

Condiment

909 (17.8)

Kitchen tool

643 (13.4)

Movement

956 ( 7.3)

Total

5,023 (10.6)

Table 3. The number of synonyms for each category.

Collection of Meronymous Words and Attributes for
Each Entry Word
CORRECT DATA SET
For some entry words, which were randomly selected in
the “Ingredient - seafood” category, we collected 453
candidates of meronymous words and attributes using
the pattern “[an entry word]の NP0” from the patents.

l(NP1 of NP0) from the Rakuten recipe database.
EVALUATION METHOD
Collecting all meronymous terms and attributes are
required for constructing a comprehensive ontology.
Therefore, we compared the effectiveness of the above
methods by precision at 100% recall (when allmeronymous terms and attributes are collected). For
the calculation of precision, we made use of trec_eval6,
which is an evaluation tool developed for the Text
Retrieval Conference (TREC).

Then we identified manually whether each candidate
was a meronymous word, an attribute, or an
inappropriate word. The results are shown in Table 4.
We use this data for our experiment.
Attribute
146

Meronymous
word
144

Other

Total
163

Recipe NP1: Reranking candidates in terms of thefrequencies of each NP1 in the pattern “NP0 の NP1”

Experimental Results
Experimental results for collecting meronymous words
and attributes are given in Tables 5 and 6, respectively.

453

Table 4. The number of manually identified words for theexperiment of identifying meronymous word and attribute.

Methods
Patent NP0
Patent NP1
Recipe NP0
Recipe NP1

Alternatives
For confirming the effectiveness of the reranking
approach mentioned in Step 3, we examined thefollowing four methods.

Precision
0.452
0.493
0.411
0.452

Table 5. Evaluation results of collecting attributes.

l

Patent NP0: Reranking candidates in terms of thefrequencies of each NP0 in the pattern “NP0 の NP1”

Methods
Patent NP0
Patent NP1
Recipe NP0
Recipe NP1(NP1 of NP0) from patent applications.
l

Patent NP1: Reranking candidates in terms of thefrequencies of each NP1 in the pattern “NP0 の NP1”
(NP1 of NP0) from patent applications.

l

Table 6. Evaluation results of collecting meronymous words.

Recipe NP0: Reranking candidates in terms of thefrequencies of each NP0 in the pattern “NP0 の NP1”
(NP1 of NP0) from the Rakuten recipe database.

Precision
0.222
0.201
0.257
0.215

6

http://trec.nist.gov/trec_eval/From the results, we can see that “Patent NP0” obtained
the highest precision in collecting attributes, while “Recipe
NP1” was the highest in collecting meronymous words.
Discussion
It is generally considered that the number of attributes isless than that of meronymous words. For example, “色”(color) and “鮮度” (freshness) are attributes of mostvegetables, meat, and fish, while there are nomeronymous words commonly used for vegetable, meat,and fish. Therefore, we expected that the frequencies of
attributes are relatively larger than those of meronymous
words, and that we could collect attributes efficiently by“Patent NP1.” Actually, “Patent NP1” was superior to others
for collecting attributes. To confirm this, we checked top
ten words collected by “Patent NP1,” which are shown in
Table 7. In this table, “◯” and “☓” indicate that ahuman judge identified each word as “correct” and“incorrect”, respectively. From the table, we can findthat some meronymous words were still contained in top
ten words. For improving precision of “Patent NP1” forcollecting attributes, using “Recipe NP0” might be useful.
As can be seen from Table 6, “Recipe NP0” obtained thebest performance, and this indicates that meronymous
words frequently appear as NP0 in a pattern “NP0 の NP1”
(NP1 of NP0) rather than NP1. Therefore, if we degrade thevalue of frequency of NP1 words collected by “Patent NP1”
according to the frequency of NP0 words collected by“Recipe NP0.”

Candidates

Attribute

場合 (case)
表面 (surface)
間 (while)
量 (amount)
状態 (condition)
水 (water)
上面

☓
☓
☓
◯
◯
☓
☓

(upper surface)
種類 (kind)
部分 (part)
面 (side)◯☓☓Meronymous
words
☓
◯
☓
☓
☓
☓
◯
☓
◯
◯

Table 7. Top ten words collected by “Patent NP1.”

Conclusion
In this work, we constructed a cooking ontology thatcomprises 474 entry words, 5,023 synonyms, 1,512
attributes, and 2,429 meronymous words, using several
statistical natural language techniques. We have now
published this ontology on the Web(http://www.ls.info.hiroshimacu.ac.jp/cooking/ontology.html).

Acknowledgement
The Rakuten recipe database was provided by Rakuten
Data Release from the Rakuten, Inc.

References[1] Chung, Y. Finding food entity relationships using
user-generated data in recipe service. Proc. 21st ACM
International Conference on Information andKnowledge Management (CIKM2012) (2012) 26112614.

[2] Hearst, M.A. Automatic acquisition of hyponyms
from large text corpora. Proc. 14th International
Conference on Computational Linguistics (1992) 539545.
[3] Lee, L. Measures of distributional similarity. Proc.
37th Annual Meeting of the Association for
Computational Linguistics on Computational Linguistics(1999) 25-32.
[4] Lin, D. Automatic retrieval and clustering of similarwords. Proc. COLING/ACL 1998 (1998) 768-774.
[5] Mori, S., Maeta, H., Yamakata, Y., and Sasada, T.
Flow graph corpus from recipe texts. Proc. 9th
Language Resources and Evaluation Conference (LREC2014) (2014).
[6] Tachibana, A., Wakamiya, S., Nanba, H., andSumiya, K. Extraction of naming concepts based on

modifiers in recipe titles. Proc. International
MultiConference of Engineers and Computer Scientists
2014 (IMECS 2014) (2014)[7] Ueda, M., Takahara, M. and Nakajima, S. User’s
food preference extraction for cooking recipe
recommendation. Proc. 2nd Workshop on Semantic
Personalized Information Management: Retrieval andRecommendation (2011) 98-105.
[8] Yamakata, Y., Imahori, S., Sugiyama, Y., Mori, S.,
and Tanaka, K. Feature extraction and summarizationof recipes using flow graph. Proc. 5th International
Conference in Social Informatics, LNCS 8238 (2013)
241-254.