Journal of Robotics, Networking and Artificial Life

Volume 5, Issue 3, December 2018, Pages 204 - 207

A Recipe Decision Support System Using Knowledge Information and Agent

Authors
Keita Saito1, Taro Asada2, Yasunari Yoshitomi2, *, Ryota Kato2, Masayoshi Tabuse2
1Food IT System Division, JFE Systems, Inc., Sumida-ku, Tokyo 130-0012, Japan
2Graduate School of Life and Environmental Sciences, Kyoto Prefectural University, Sakyo-ku, Kyoto 606-8522, Japan
*Corresponding author. Email: yoshitomi@kpu.ac.jp
Corresponding Author
Yasunari Yoshitomi
Received 22 May 2018, Accepted 21 November 2018, Available Online 1 December 2018.
DOI
10.2991/jrnal.2018.5.3.13How to use a DOI?
Keywords
Recipe recommendation; collaborative filtering; impression word; MMDAgent
Abstract

We report on the development of a recipe recommendation system using collaborative filtering and impression words. As a user interface (UI), we adopted MikuMikuDanceAgent (MMDAgent). In our system, the first recommendation process using collaborative filtering is terminated based on the previously decided condition, after which the second recommendation process identifies the recipe that is most similar to past successful recommendations from recipes that have not been recommended thus far. As a final step, one recipe is selected from all successfully recommended recipes.

Copyright
© 2018 The Authors. Published by Atlantis Press SARL.
Open Access
This is an open access article under the CC BY-NC license (http://creativecommons.org/licences/by-nc/4.0/).

1. INTRODUCTION

It is sometimes bothersome to decide upon a recipe for meals because there are frequently numerous choices available. Therefore, a support system that recommends a new recipe every day could be beneficial. In this study, we developed and evaluated a new system that can be used to narrow down recipe choices to a final recommendation. In the current study, we have adopted MikuMikuDanceAgent (MMDAgent) [1] as a user interface (UI). In this study, we propose a system that narrows down recipe choices to a final recommendation using a method that considers yesterday’s dinner recipe.

2. RECIPE RECOMMENDATION METHOD USING COLLABORATIVE FILTERING

The recipe recommendation method [2] proposed in our current study is based on collaborative filtering, and is, in turn, based on our previously reported music recommendation method [3]. That method is explained briefly below.

We began by preparing a database composed of recipes that had been already been subjectively scored at five-levels with “5” being the most appealing to “1” being the least appealing. We then transformed the subjective scores of “1–3” and “4–5” into “0” and “1”, respectively. Those scores (“0” or “1”) are expressed as “evaluation scores” below.

3. RECIPE RECOMMENDATION METHOD USING IMPRESSION WORDS

Our recipe recommendation method also uses impression words [2]. In this study, 10 impression words pairs (Table 1) extracted from “Sizzle Word Report 2014” [4] were used. The method explained briefly below is also based on our previously reported music recommendation method [3].

Good flavor Refreshing flavor
Mellow Spicy
Sweet Gentle
Addicted Not addicted
Rich Crispy
Juicy Scratchy
Warm Cool
Melty Chewy
Seasonal limited Not seasonal limited
Authentic Not authentic
Table 1

Impression word pairs

Each recipe prepared in advance was assigned one of seven score levels ranging from “−3” to “+3” by participating test subjects who used those impression word pairs. We then transformed these subjective scores to a three-level scale (“−3” to “−2” as “−1”, “−1” to “+1” as “0” and “+2” to “+3” as “+1”). These scores are expressed as “impression evaluation scores” below.

When a recipe not recommended to a user has the same values except “0” as that for at least one recommended recipe having a high evaluation by the user on the three-level score for at least five impression words, the recipe is treated as having a positive evaluation by the user. In contrast, when a recipe not recommended to the user has the same scores (disregarding “0”) as that for another recipe just recommended to the user and having a negative evaluation by the user on the three-level score for at least seven impression words, the recipe is treated as having a negative evaluation by the user.

4. RECIPE RECOMMENDATION USING THE COLLABORATIVE FILTERING AND IMPRESSION WORDS

Figure 1 shows a flowchart of the proposed system, which combines collaborative filtering and impression words based on the authors’ recipe recommendation method [2]. The system recommends recipes stored in the database to the user. Both the recommendation process using collaborative filtering and impression words are terminated when the number of recommended recipes reaches the pre-set upper limit (K). In our proposed system, the recommendation process using collaborative filtering is terminated when there is no users in the user reference list that show the exact same evaluation for the recommended recipe as the user up to that point. The recommendation process then continues by identifying the most similar recipe, from the viewpoints of three-level scores (disregarding “0”) based on impression words, to that successfully recommended among recipes not yet recommended. Just before concluding the recommendation process, the user database is updated with subjective evaluations of the recipe by adding the viewpoints of users the recipe by adding the viewpoints of users recommending the recipe.

Figure 1

Recipe recommendation using collaborative filtering and impression words. ARDB, set of all recipe in database; RCL, set of recipe in recommendation list; AUSE, set of all users with subjective estimation; UL, set of user in reference user list; NRR, number of recommended recipe; UEC, set of user(s) who estimate(s) recommended recipe Rr contrary to user u; RSNPRIW, set of recipe having similarity to at least one recipe in ARDBPRL¯ on impression words; PRL, set of recipe having 3.5 or higher than 3.5 of score given by user u in ARDBRCL¯; RSRIW, set of recipe having similarity to recommended recipe Rr on impression words

5. PROPOSED SYSTEM

In this section, we propose a system that narrows down recipe choices to a final recommendation using a method that considers yesterday’s dinner recipe in addition to the recommendation method discussed in Section 4. First, recipes in recipe groups that are similar to the recipe that user selected the day before are recommended by using the method described in Section 4. Next, recipes in recipe groups that differ from previous day’s selection are also recommended by using the method described in Section 4. As in the impression word recommendation, the judgment of a recipe whose impressions are similar to yesterday’s dinner recipe is based whether the “impression evaluation score” coincides with five or more of the impression word pairs of 10 items. Figure 2 shows a recipe recommendation flowchart that considers yesterday’s dinner. The flowchart of “System CI” in Figure 2 is described in Figure 1.

Figure 2

Recipe recommendation considering yesterday’s dinner. ARDB, set of all recipe in database; RY, recipe of yesterday’s dinner; RSY, recipe similar to yesterday’s dinner; RAW, set of recipe for user u to want to eat; RHE, the recipe with highest estimation by all user in UL among RAW; UL, set of user in reference user list

6. PERFORMANCE EVALUATIONS

6.1. Conditions

From a total of 49 recipes that exclude side dishes, soups, and arranged dishes, a main course dish that one or more user designated as “I have never tried” were extracted from the 293 entries in the “Rakuten recipe” [5] category for use in our evaluation. The impression words selected were four pairs of “taste expression”, four pairs of “texture expression”, and two pairs of “situation expression” extracted from the “Sizzle Word Report 2014” [4]. Synonyms and antonyms were judged in the Weblio dictionary [6]. Similar expressions in the “expression” rankings are grouped together and chosen via the following procedure:

  • Step 1: The top 10 words satisfying the condition that their antonyms are within the top 25 words are chosen in each ranking.

  • Step 2: The words that ranked within the top 10 and their antonyms within the same ranking are chosen.

  • Step 3: The words ranked within the top 10 are chosen under the restriction that their antonyms are out of ranking.

  • Step 4: Processing repeats for words ranking below the top 10.

The proposed system recommends a recipe to 10 new participating users who were not among the 12 users who entered evaluations into the database. K was set to 15, and experiments were conducted under the following two conditions:

  • Recommendation accuracy = Number of recipes to which the user replied, “I want to try”/Number of recommended recipes.

  • Final recommendation accuracy = Number of users that recommended the recipe that the user most wants to try/Number of users.

Our experiment was performed on a Dell Inspiron 7559 personal computer (PC) equipped with Intel Core i7-6700HQ 2.60 GHz central processing unit and 8.0 GB of random access memory. The Microsoft Windows 10 Professional operating system (OS) was installed on the PC and Microsoft Visual C++ 6.0 and Microsoft Visual C++ 2010 were used as the development languages.

6.2. Results and Discussions

Figure 3 shows a sample recommendation for a new user, while Figure 4 shows the recommendation accuracy of 10 new users. The mean value of the proposed system’s recommendation accuracy was 33.0%, while that of the random recommendation was 21.4%. The value of the final recommendation accuracy of the proposed system was 50.0%, while that of the random recommendation was estimated as lower than 21.4%.

Figure 3

Sample new user recommendation

Figure 4

Accuracy recommendations of 10 new users

The mean value (33.0%) of the proposed system’s recommendation accuracy was lower than that (71.1%) by our previously reported system [2]. From this result, it is thought that a user’s favorite recipes focused in our previously reported system [2] were not necessarily those that he or she wants to try, so it will be necessary to change the subjective recipe scoring system used in the this study to consider recipes the user wants to experience in the future. Since the accuracy value of our proposed system’s final recommendation exceeds the value of random selection, it can be said that our proposed system has proven to be effective.

We then conducted a questionnaire survey of 10 user participants regarding the recommendations produced by our system. The four categories below were evaluated:

  1. (1)

    Speaking ease of user to UI.

  2. (2)

    Time needed to produce recommendation.

  3. (3)

    Naturalness of UI output as utterance.

  4. (4)

    Dish display necessity.

For the category (1) results, one participant reported that the UI was “very easy to talk to”, three participants said it was “somewhat easy to talk to”, five said that “talking was normal”, and one said it was “slightly hard to talk to”. It should be noted here that no participant said the UI was “Hard to talk to”. For the category (2) results, no participants reported that time required to output a recommendation was “too short”, “somewhat short”, or “too long”. Instead, seven participants said the time was “as expected,” and three participants said it was “slightly excessive”. For the category (3) results, one participant said the UI’s utterances were “very natural”, five said they were “somewhat natural”, one called them “appropriate”, three called them “slightly unnatural”. It should be noted here that no participant said the UI utterances were “too unnatural”. For the category (4) result, seven participants said visual displays were “necessary”, two participants said they were “somewhat necessary”, and one was “undecided”. No participant said the displays were “slightly unnecessary” or “unnecessary”.

7. CONCLUSION

In this paper, we proposed a recipe recommendation system that combines collaborative filtering and impression words and is based on our previously reported system [2]. We showed that our proposed system is more effective than random recommendations and that it has the ability to narrow down potential recipes to a single choice.

Authors Introduction

Mr. Keita Saito

He received his B.S. and M.S. degrees from Kyoto Prefectural University in 2016, 2018, respectively. He works at the Food IT System Division of JFE Systems, Inc.

Dr. Yasunari Yoshitomi

He received his B.E., M.E. and Ph.D. degrees from Kyoto University in 1980, 1982 and 1991, respectively. He works as a Professor at the Graduate School of Life and Environmental Sciences of Kyoto Prefectural University. His specialties are applied mathematics and physics, informatics environment, intelligent informatics. IEEE, HIS, ORSJ, IPSJ, IEICE, SSJ, JMTA and IIEEJ member.

Dr. Masayoshi Tabuse

He received his M.S. and Ph.D. degrees from Kobe University in 1985 and 1988 respectively. From June 1992 to March 2003, he had worked in Miyazaki University. Since April 2003, he has been in Kyoto Prefectural University. He works as a Professor at the Graduate School of Life and Environmental Sciences of Kyoto Prefectural University. His current research interests are machine learning, computer vision and natural language processing. IPSJ, IEICE and RSJ member.

Dr. Taro Asada

He received his B.S., M.S., and Ph.D. degrees from Kyoto Prefectural University in 2002, 2004 and 2010, respectively. He works as an Associate Professor at the Graduate School of Life and Environmental Sciences of Kyoto Prefectural University. His current research interests are human interface and image processing. HIS, IIEEJ member.

Dr. Ryota Kato

He received his B.S., M.S., and Ph.D. degrees from Kyoto Prefectural University in 2009, 2011 and 2017, respectively. He works as a Researcher at the Graduate School of Life and Environmental Sciences of Kyoto Prefectural University. His specialty is information communication system. HIS member.

REFERENCES

[1] MMDAgent, available from: http://www.mmdagent.jp/ (accessed 25 July 2016).
[2]K Saito, T Asada, Y Yoshitomi, R Kato, and M Tabuse, A recipe recommendation system using knowledge information and agent, in Proceedings of the Human Interface Symposium (2016) (Japan, Tokyo, 2016), pp. 51-54. (in Japanese).
[4]Sizzle Word Report, 2014. available from: http://www.bmft.jp/pdf/services/kotoba14.pdf (accessed 25 July 2016).
[5] Rakuten Recipe, available from: http://recipe.rakuten.co.jp/category/.
[6]Weblio Dictionary. available from: http://thesaurus.weblio.jp/ (accessed 25 July 2016).
Journal
Journal of Robotics, Networking and Artificial Life
Volume-Issue
5 - 3
Pages
204 - 207
Publication Date
2018/12/01
ISSN (Online)
2352-6386
ISSN (Print)
2405-9021
DOI
10.2991/jrnal.2018.5.3.13How to use a DOI?
Copyright
© 2018 The Authors. Published by Atlantis Press SARL.
Open Access
This is an open access article under the CC BY-NC license (http://creativecommons.org/licences/by-nc/4.0/).

Cite this article

TY  - JOUR
AU  - Keita Saito
AU  - Taro Asada
AU  - Yasunari Yoshitomi
AU  - Ryota Kato
AU  - Masayoshi Tabuse
PY  - 2018
DA  - 2018/12/01
TI  - A Recipe Decision Support System Using Knowledge Information and Agent
JO  - Journal of Robotics, Networking and Artificial Life
SP  - 204
EP  - 207
VL  - 5
IS  - 3
SN  - 2352-6386
UR  - https://doi.org/10.2991/jrnal.2018.5.3.13
DO  - 10.2991/jrnal.2018.5.3.13
ID  - Saito2018
ER  -