=Paper= {{Paper |id=Vol-2853/paper1 |storemode=property |title=Towards an Efficient Knowledge-based Recommendation System |pdfUrl=https://ceur-ws.org/Vol-2853/paper1.pdf |volume=Vol-2853 |authors=Houda El Bouhissi,Micipsa Adel,Anis Ketam,Abdel-Badeeh M. Salem |dblpUrl=https://dblp.org/rec/conf/intelitsis/BouhissiAKS21 }} ==Towards an Efficient Knowledge-based Recommendation System== https://ceur-ws.org/Vol-2853/paper1.pdf
Towards an Efficient Knowledge-based Recommendation
System
Houda El Bouhissia, Micipsa Adela, Anis Ketama and Abdel-Badeeh M. Salemb
a
     University of Bejaia, Bejaia, 06000, Algeria
b
     Ain Shams University, El-Khalyfa El-Mamoun Street Abbasya, Cairo , Eygpt


                 Abstract
                 With the emergence of the Internet, Recommendation Systems (RS) have emerged due to
                 their ability to manage a massive amount of information. RS plays a very important role in
                 guiding users' decisions and making their tasks easier. Additionally, food and its impact on
                 wellbeing, metabolism, and success at school, during sports, or at work are becoming
                 increasingly important. In this paper, we provide a systematic review of the most related food
                 RSs according to healthcare. Furthermore, we propose SIHATI, a new knowledge-based food
                 RS integrating machine learning techniques, that can be used to assist persons in finding
                 relevant food. In particular, we implement SIHATI, which we present its general idea in this
                 paper. Preliminary results indicate that integrating machine learning ML) techniques into the
                 RSs will provide efficient and accurate recommendations.

                 Keywords 1
                 Food recommendation, Healthcare, Machine learning, NLP, Ontology, Recommendation
                 System, user profile.

1. Introduction
    With the advent of the Internet and the huge amount of information created every day by various
organizations, social media, and users around the world, user needs have become difficult to address.
As a result, selecting the appropriate information from a large number of attributes by evaluating the
characteristics of attributes can quickly become tedious and time-consuming. This has led to the need
to design mechanisms that help users to gather their interests quickly.
    For this purpose, the RSs have arose as a remedy to this problem, it can deal with a massive
amount of information for guiding users’ choices and make their tasks easier.
    Moreover, RSs have taken more and more roles in our lives with the growth of YouTube,
Facebook, Twitter, Amazon, and online Web Services [1]. From suggesting articles that might attract
shoppers' to suggesting the best content to users according to their preferences. RSs are required today
on our everyday online journeys.
    RSs are software components whose purpose is to provide users with information that are related
to their interests by considering their interactions with their information space. These systems make
predictions for users to present them with only those elements by which they will be attracted. Thus,
with RSs, the Internet is no longer neutral, it is now adapted to everyone [2].
    Moreover, these systems aim to reduce the considerable amount of time spent by users for in
searching for their most interesting objects, and they also allow finding objects that the user likes but
not has necessarily searched.



IntelITSIS’2021: 2nd International Workshop on Intelligent Information Technologies and Systems of Information Security, March 24–26,
2021, Khmelnytskyi, Ukraine
EMAIL: houda.elbouhissi@gmail.com (Houda El Bouhissi); missi.adel7@gmail.com (Micipsa Adel); anisketam06@gmail.com (Anis
Ketam); abmsalem@yahoo.com (Abdel-Badeeh M. Salem)
ORCID: 0000-0003-3239-8255 (Houda El Bouhissi); 0000-0003-0268-6539 (Abdel-Badeeh M. Salem)
            © 2021 Copyright for this paper by its authors.
            Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0).
            CEUR Workshop Proceedings (CEUR-WS.org)
   In this context, adapted food and nutrition emerge as a new research field for providing
personalized food intake advice to individuals according to their health, physical, physiological data,
and further personal information. Additionally, these systems provide recommendations to optimize
nutrition, reduce weight, and prevent certain food-based illnesses.
   The paper focuses on developing an RS for daily meal plan recommendations and on presenting a
system that suggests diets for diverse persons with different types of diseases automatically, in
correspondence to their nutritional-awareness and their preferences.
   As far as we know, this proposal is a research effort on the following directions:
   •     The development of a food RS engine that integrates both nutritional, user preferences-related
   information and person health state.
   •     The design of a RS with knowledge explicit modeling, which represents all the needed
   knowledge to provide accurate recommendation.
   •     The use of feedback-based user profile information called “history” to generate speed
   efficient recommendations.
   •     A reasoning mechanism to infer information from the stored knowledge based on ML
   algorithms to deliver recommendations.
   The rest of the paper is organized as follows: Section 2 presents the background of the study which
covers overviews of the RSs, their types, and ML basics. Section 3 presents the most related studies
on Healthcare RSs surveys. Section 4 describes in detail the proposed approach. Section 5 reports the
results of the proposed methodology. Finally, Section 6 concludes the paper and outlines future
projects.

2. Theoretical background
   This section gives an idea of the literature scope, search methodology, search databases, various
search terms used, and elaborates on the different research methodologies adopted for conducting the
review study. We start by establishing an overview of RSs’ types. Then, we define the most important
concepts related to ML techniques since our approach integrates ML algorithms.

2.1     Recommendation systems
    Many companies such as Netflix, YouTube, and Amazon, use RSs to help their users to identify
the product that suits them best [1]. RSs have been studied in various fields such as the e-commerce,
tourism and many others.
    A RS is a set of algorithms that have a specific form of information filtering, that can provide
personalized recommendations within a data space, that aim to guide the user to interesting and useful
resources according to his needs, and to provide him with relevant objects according to his
preferences by filtering contents or items. Items can be movies, music, news, web pages, books,
videos, images, etc.
    In a general way, RS is a software tool and an intelligent system that provides the user with
suggestions on items or products that meet his needs or are simply likely to interest him. For example,
what movie to see, what book to buy, or even what music to listen to, these suggestions are based on
the individual's tastes by analyzing the browsing history, opinions, comments, and ratings given to
products and the behavior of other users [3].
    There are three main approaches [4]: Content-Based Filtering (CBF), Collaborative Filtering (CF),
and Hybrid Filtering (HF). All these approaches share the same approach which is to convert
estimations of a user’s preference for items into recommendations using explicit or implicit previous
ratings as expressions of preference.

2.1.1 Collaborative filtering
    CF is considered as the most popular and widespread method in RSs. In fact, it is the
oldest approach, and still the most commonly used today. This system depends on the
preferences expressed by other users on items, and it recommends to an active user the
items that other users with similar preferences have liked in the past.
    This method of recommendation is based on the idea that if users agree on the quality
of some items, they are probably going to agree on other items [5]. The references given by
other users are given in the form of real or integer numbers (such as the rating from 1 to 5
stars), so in reality, this system is divided into two steps, the first one is to predict the items
that other users have viewed or liked in the past, and the second one is to recommend this
item to the active user.

2.1.2 Content-based filtering
   In this approach, the RS [6] recommends items, which are similar to those that the user has liked
or viewed in the past, this method analyzes a set of item descriptions previously evaluated by the user
and builds a profile of the user's preferences based on these descriptions, then matches the attributes
of the user profile with the attributes of an item to make the recommendation. The similarity is
computed according to the characteristics associated with the compared items.

2.1.3 Hybrid filtering
   As its name suggests, hybrid filtering [7] is the combination of at least two methods of
recommendations (CBF and CF), to solve some of the problems encountered by systems with a single
approach, and therefore we will have the result of two or more recommendations, which makes a
recommendation closer to the user's needs.
   For example, the content-based recommendation and the collaborative recommendation are often
considered complementary. Hybrid approaches can be implemented by making predictions separately
and then combining them to avoid the cold start issue.

2.2     Machine Learning basics
  ML is a field of artificial intelligence whose goal is to automatize various tasks such as decision
making, pattern recognition, and many other areas, which used to require human intelligence.
  ML techniques can be divided into three categories, briefly described as follows [8]:

2.2.1 Supervised Learning
    In this approach, a set of input/output tuples is given. Based on this training set, a function is
learned, which maps input to output values. This function, called a hypothesis, is then applied to a test
set, to judge its predictive power and to improve its performance in predicting new unseen instances.
The learning method is called regression if the output is numeric. It is called classification if output
values can be seen as a finite set of categories.

2.2.2 Unsupervised Learning
   In this approach, a set of unlabeled instances is given. The main goal here is to find a model that
recognizes potential patterns in the dataset, which is called clustering. This method is often used to
identify classification categories, where no prior information on categories is available. Our approach
uses clustering an part of the process, we will detail this concept later.
2.2.3 Reinforcement Learning
    This category is based on the principle of learning by positive and/or negative feedback. It aims to
train a model to find the best chain of decisions (policy), solving a specific problem. Beneficial
decisions are rewarded whereas disadvantageous decisions are punished.

3. Literature survey
    Food RSs are relatively a recent domain whose state of the art has been studied in [9]
and [10]. The research challenges are related to collecting user information, gathering
nutritional information from foods and recipes, and detecting the change of eating
behaviors of both sick and non-sick people.
   This section gives the idea of the literature scope, search methodology, search databases, various
search terms used, and elaborates the different research methodologies adopted for conducting the
review study. Our review is inspired from the classification proposed by [9] which consists of four
category classes:

3.1     Food recommendation
   Lack of management and understanding of nutrition leads to poor ingredient selection and causes
foodborne illness among users. To warn users of these risks, nutritional RSs have been developed to
help users better manage their diets based on individual patient preferences and health status. The
authors in [11], proposed a RS which generates menus that better match the tastes and dietary
restrictions of patients, specifically diabetes patients. By applying the Clustering technique, this study
focuses on recommending recipes for a group of users restricted in terms of choice.
   [10] in their papers investigated the possibility of replacing recipes appreciated by a given user
with other similar recipes that are healthier concerning the user's medical condition, thus motivating
them to change their eating behavior as much as possible. For a better recommendation of recipe
substitutions, the authors used an ingredient network approach in which they used the data collected
from the allrecipe.com website.
   Unfortunately, in this approach, we may encounter conflicts in the user's profile parameters, which
are his preferences with his health conditions, which can lead to the patient's malnourishment and
cause him to be at risk of diseases.

3.2     Recommendation for health professionals
   In recent years, the amount of medical information has increased very rapidly, which can cause
great difficulty when searching for medication for patients. Especially concerned is finding the best
healthcare professionals to provide the most appropriate care [12]. The lack of services implemented
for the patient by health professionals leads us to create patient-doctor matching referral systems, in
which patients can find the doctors who are referred for them.
   Han et al. [13] proposed a system that recommends trusted doctors to patients in primary care
based on each patient's information. The authors explored the hybridization of Content-based Filtering
and Collaborative Filtering approaches to achieve such a system that takes into account both
individual patient information and their demographic data.

3.3     Drug recommendation
   Drug mismanagement and errors that can occur when prescribing a drug to a patient for a given
disease can be potentially life-threatening. Moreover, to prevent these kinds of risks, drug
recommendation systems have been developed, and implemented so that users and health
professionals can easily identify the right drugs for a specific disease, recommending the right drugs
for each type of disease.
   Using both clustering and collaborative filtering approaches, [14] proposed a computer-aided drug
recommendation based on online pharmacies and some social network services. This system makes it
possible to recommend online drugs that are reliable and effective for each patient according to his or
her needs and the symptoms of his or her illnesses.
   This type of system can be fatal and contains inconveniences that should not be taken lightly, for
example, if there is a lack of information or false or exaggerated information on the web, the patient
may buy and consume drugs that may not be intended for him, which can cause mortal risks.

3.4     Physical activity recommendations
   Suggestions for physical activity have become more important in the health field, as well physical
activity contributes greatly to a patient's good health. In general, this type of recommendation is
adapted to the user's state of health and encourages the user to do physical activities regularly and to
burn a certain amount of calories early in the day.
   The authors in [15], proposed recommendations for appropriate food and physical activities that
the user with diabetes can follow to be healthy. Using the ontology-based approach and semantic
technologies, based on the Pellet reasoning engine, this system proposes menu suggestions for a
healthy and balanced diet and takes into account the personal information of each patient to propose
the appropriate physical exercises.
   In [16], the authors developed a referral system that provides patients with physical activities
appropriate for each one's health status and localized position, based on sensory device data
collection. This type of recommendation is based on two approaches: context-based and knowledge-
based recommendation.
    Table 1 summarizes the main features of the approaches cited above. The table contains
six columns; each indicates a comparison criterion as follows:
   •     The column ‘C’ designates the category to which the approach belongs.
   •     The column ‘A’ designates the underlying approach.
   •     The column ‘DS’ indicates the data set used to generate the recommendations.
   •     The column ‘Output’ indicates the output of the approach, the appropriate recommendations.
   •     The column ‘T’ specifies the used techniques, what methods are used for recommendation.
   •     The column ‘Advantages’ introduces the main advantages of the approach.

Table 1
Most important approaches related to our work
         C            A                DS            Output              T                 Adv.
                                                                                 Prevent and cure
                                               Menus for                         foodborne illness
                                               patient's                         Understand dietary
                   [11]   kochbar.de           tastes and        Clustering      behavior and
                                               dietary                           recommend
Food                                           restrictions.                     appropriate diets to
recommendation                                                                   users.
                                               Generates
                                                                                 Motivate users to
                                               substitutes for
                                                                 Ingredient      change their eating
                   [10]   allrecipe.com        similar but
                                                                 network         behaviors or suggest
                                               healthier
                                                                                 healthier food choices
                                               recipes
                                                                                 The proposed
                          Database of          Family doctors    Collaborative
Health                                                                           confidence measure
                          anonymous            to patients in    filtering ,
professional       [13]                                                          improves the
                          transactions(2012-   the primary       content-based
recommendations                                                                  performance of the
                          2017)                care setting      filtering
                                                                                 model
                          Online pharmacies    Drugs            Clustering,     Help patients to find
Drug
                   [14]   and social network   according to     Collaborative   valid and reliable drugs
recommendation
                          services             client's needs   filtering       according to their needs
                                                                                 Offers menus with a
                                                                                 healthy and balanced
                                               Exercise and
                          Different user                        Ontologies,      diet.
                                               diet
                   [15]   domains                               Semantic         Takes into
                                               suggestions
                          Knowledge base                        technologies.    consideration the
                                               for diabetics
                                                                                 personal information
                                                                                 of each patient
                                                                                 Recommend
                                                                                 appropriate physical
                                                                Context-based
                          Data from sensory    Physical                          activities for each
                   [16]                                         Knowledge-
                          devices              activities                        patient, due to his or
                                                                based
                                                                                 her state of health and
                                                                                 localized position

   Generally, the RSs suffer from the cold start problem because users usually do not
provide adequate ratings to nutrition to enable collaborating filtering based
recommendation, which can lead to an issue called a cold start problem.
   Most of the profile-based approaches cited above have not suitably deal with this
concept which makes Conflicts in the user profile settings, for example, his preferences
with his health conditions.
   Our work is inspired from all the previews approaches, and aims to improve these works and
provides to provide a food fast and accurate RS. In this way, we propose a RS that mines contextual
information and personal information from user preferences and profiles from sensorized Internet of
Objects (IoT) devices, and recommends food and nutrition based on users’ preferences. The user
profile is built from the user’s nature, and evolves according to the events observed.

4. Proposed methodology
   To the best of our knowledge, in the literature, there doesn’t exist much previous work on applying
RS in food health. RSs for health nutrition are essentially required for helping persons to select the
food of their choice according to their health state and tastes.
   The use of effective recommendation techniques is very important to achieve a system that will
provide more accurate and efficient recommendations to the users.
   The RS we propose, applies the profile concept which is based on knowledge such as ontologies,
and provides better response time. The proposal intends to provide a platform where users find their
favorite food and its nutritional value. This is useful for anyone who is health-conscious or wants to
lose weight or patients with chronic diseases.
   This section is dedicated to presenting the global architecture proposed for implementing the
nutritional RS based on the preferences and nutritional information main components and the
characteristics of the ontology-based RS we are developing.
   This architecture is sketched in Figure 1 and is composed of various layers to process the
information. The pipeline begins at the user information layer and finishes in the final
recommendation generation. Our proposal is supported by a software tool called SIHATI (Arabic
word means my healthcare).
    SIHATI is a web-based RS that considers both healthy users and users with chronic
diseases, like diabetes, and hypertension. Based on the user health profile, preferences, and
contextual information, SIHATI provides individualized nutritional recommendations.
    To define the user's health profile, SIHATI submits to the user a series of medical
questions requiring the entry of different answers, including vital parameters data.
Figure 1: General System architecture

    The user's health profile is built by analyzing the answers given from time to time by
the user and by the information gathered by the sensorized IoT devices such as user’s
smartwatch, smart weight scale, blood sugar and blood pressure.
    The main innovative aspects of SIHATI are:
   •    The system provides individualized nutritional recommendations according to user-health
   profile collected through several medical questionnaires provided by nutrition specialists.
   •    The ability to profile not only healthy users but also patients affected by hypertension, and/or
   diabetes and can achieve high-quality health profiling using sensorized IoT devices.
   •    The system reduces time-consuming by using the history process, if the user information is
   provided by another user before, the system returns a quick response regarding the users’
   traceability.
   The recommendation process, as a whole, is modeled in a sequence diagram expressed in the
Unified Modeling Language (UML) standard and presented in Figure 2. First, the user sends the
request to the system to build the user profile.




Figure 2: SIHATI workflow
    The profile will be matched with other profiles (history) to discover the suitable recommendations
already made. If the profile is new, the recommendation engine discovers the suitable
recommendations. The responses are ranked before they are presented to the final user. In the end, the
top N recommendations are returned to the specific user.

4.1          Data collection
   Data collection is achieved at the information-gathering layer which is focused on capturing
contextual-information, user preferences, and all the nutrition-related relevant information associated
with the user.
   •     Nutrition data (ND) is gathered from various online food community websites 2 where users
   can upload and rate cooking recipes, the data is then stored in a NoSQL database (MangoDB) for
   further processing. We consider the following food item attributes: Food id, Name, Type, serving
   size, Calories, Protein, Carbohydrate, Sugar, Fat, with nutritional values measured in grams.
   •     User information (UI) is collected by two modes: explicit data which is based on what the
   user will fill in his profile (user responses) and implicit data collected from sensorized IoT devices.
   This information includes (see Table 2) physiological data such as user height and weight, heart
   rate, burned calories, and daily physical activity level. Considering sensorized IoT devices as an
   information source will allow us to obtain real data and make the recommendation more efficient.

Table 2
An excerpt of the User information
                      Information                                               Type
 Personal data (sex, age, marital status)                               Explicit information
 Physiological data such as user height and weight                      Explicit information
 Chronic diseases                                                       Explicit information
 Heart rate                                                             Implicit information
 Burned calories                                                        Implicit information

4.2          Data pre-processing
   The initial necessary steps for preparing the data to be used in the recommendation generation are
based on two goals:
   •     The construction of the user and food profiles;
   •     The definition of nutrition templates regarding the user’s health.
   ND dataset may contain blank and duplicate values that need to be resolved. These entities will be
removed for easier processing. Besides, the dataset encompasses various recipes, we consider only the
recipes that contain valid information on energy (in kJ and kcal), carbohydrates, proteins, and fat.

4.3          Data analysis
      We considered the datasets individually to gain insight that could help in developing our system.
      •    For the UI dataset, we create the user profile model based on the user ontology model.
      Ontology is the backbone of the semantic web. An ontology is a formal and explicit specification
      of a shared conceptualization. We will present in the next section why we use ontology and how it
      contributes to making our system fast and accurate.
         An ontology [17] consists of concepts namely entities, attributes, and properties. Ontologies
      have been used in many knowledge-based RSs and contribute to improving the quality of the
      results. The user profile ontology is created from an ontology template; as a result, each user will
      have an individual ontology with the same schema but may be different instances.

2
    Such as https://www.kochbar.de
        •    For the ND dataset, we analyze the gathered data with natural language processing techniques
        such as tokenization and we create a MongoDB3 NoSQL database using association rules.
           MongoDB is a document database, which means it stores data in JSON-like documents,
        MongoDB is the most popular database for modern apps and a lot of free tools are available to
        manage a MongoBD database.

4.4         Profiles’ dataset clustering
   In this step, we apply the clustering algorithm K-Means [18] for assembling user profiles
according to their common preferences. The purpose of this step is to reduce the profile’s space.
   K-mean clustering is an unsupervised learning algorithm of finding natural groups in the feature
space of input data which is well-liked for cluster inspection in data mining. It focuses on the
separation of N numbers of data into K number of clusters where each data belongs to the cluster with
proximate mean distance.
   As we all know, clustering is roughly divided into three steps: deal with the data at first, then
choose the appropriate distance function to measure the similarity between objects, and at last obtain
the groups.
   In K-means clustering technique, we choose K initial centroids, where K is the desired number of
clusters. Each point is then assigned to the cluster with nearest mean i.e. the centroid of the cluster.
Then we update the centroid of each cluster based on the points that are assigned to the cluster. We
repeat the process until there is no change in the cluster center (centroid).
   We use K-Means to gather users of similar interest into the same groups to avoid matching each
new user arriving on the site with all the users of the system and to obtain fast lists of similar users. It
is best to divide the data set into smaller groups, so that the calculation of similarity will be done
within groups of fewer users.
   The algorithm 1 presents the different steps of the clustering process.

Algorithm 1: User Profiles’ clustering

Algorithm : clustering users’ profiles ontologies
Input: users’ profiles ontologies
Output: k profiles’ clusters
 1 Initialize the cluster center
 2       Compute the distance between the users’ profiles using the Pearson similarity
         Allocate the data to the cluster whose interval from the cluster nucleus is minimum of the
3
         entire nucleus of the cluster
 4       Upgrade the nucleus of the cluster
    5    Compute the distance from each data point and newly acquire cluster nucleus
6        If there is new data go to step 3
7        Else go to step 7
8        Save the k profiles’ clusters
9        End


4.5         Profiles’ analysis
   As previously mentioned, at the end, we get a dataset that encompasses clustered user’s profiles
ontologies. When a new user reaches, we create a profile ontology which will be matched with the


3
    https://www.mongodb.com/
clustered ontologies using a semantic distance measure [18]. The most similar ontology is to find the
best suitable user for predicting the appropriate recommendations regarding traceability.
   The purpose of this step is to provide speed recommendations using traceability (history). Our
system can keep all running history for further processing.

4.6          Recommendation engine
   The recommendation engine is focused on receiving as an input the user profile information and
returning it as an output the recommended food.
   The Recommendation engine, mainly goes through 3 steps:
    • The nutritional context determination is focused on initially filtering out some foods
        that do not match the user profile and preferences (for example foods that are not
        appropriate for a diabetic patient).
    • Express food recommendation based on an optimization approach between user
        preferences and the nutrition object via Person’s similarity [19].

5. Experiment
    To investigate the problem this paper deals with, a set of experiments are conducted. All
experiments are implemented in Python 3 4.
    Python in general is a popular choice for machine learning purposes, it offers a broad range of ML
and NLP libraries. Many of those frameworks come with a high level of abstraction and allow a
simple and straightforward usage. Experiments were realized using libraries and frameworks such
that, numpy which is a python library used for numerical computation, pandas which is a python
library used to manipulate different format data such as text files and CSV files, matplotlib which
used to plot results.
    We build a user-friendly application with a minimum number of menus. The user only needs to
introduce his personal data and click on the recommendation button. For introducing the data gathered
from the sensorized IoT devices, we connect a device to the PC for this purpose.

6. Evaluation:
   We use the metrics Precision, Recall, and F-measure metrics for benchmarking the outcome of the
proposed model [20].
   The Precision metric (Equation 1) gives an insight on how exactly a model can predict class
membership. Therefore, it measures the quality of the classification results. It is defined by the
number of TPs divided by the sum of TPs and FPs.

                                                                  𝑇𝑇𝑇𝑇
                                      𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃 =                 .                       (1)
                                                             (𝑇𝑇𝑇𝑇 + 𝐹𝐹𝐹𝐹)

   However, the Recall metric (Equation 2) indicates how complete the model can predict class
membership and therefore covers the quantitative aspect of classification success. It is defined by the
fraction of items that are recommended from all relevant items. Also called sensitivity.

                                                     𝑇𝑇𝑇𝑇
                                         𝑅𝑅𝑅𝑅𝑅𝑅𝑅𝑅𝑅𝑅𝑅𝑅 =      ,                                     (2)
                                                 𝑇𝑇𝑇𝑇 + 𝐹𝐹𝐹𝐹
where TP – number of relevant nutrition recommended;
FN – number of relevant nutrition not recommended;
FP – number of irrelevant nutrition recommended.


4
    https://www.python.org/
    The F-measure metric is one of the most popular measures used for measuring cluster accuracy, it
is based on precision and recall value (Equation 3) and can be computed by the following formula:

                                                          𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃 ∗ 𝑅𝑅𝑅𝑅𝑅𝑅𝑅𝑅𝑅𝑅𝑅𝑅
                              𝐹𝐹 − 𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚 = 2 ∗                                     .    (3)
                                                          𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃𝑃 + 𝑅𝑅𝑅𝑅𝑅𝑅𝑅𝑅𝑅𝑅𝑅𝑅

   We perform a manual recommendation to serve as a comparison point for the recommendation
process, we select user’s profiles (user may be sick or not) and food objects.
   The F-Measure evaluation value is high when there is relevant information recommendation. Thus,
a proposed semantically clustered recommendation framework has a high accuracy than other existing
methods.
   Overall, the performance in terms of precision is 75%, and recall is 60%. When applying our
recommendation process to the considered recommendations, f-measure statistics show that the
recommendation process is efficient and accurate.
   It is clear that as the cluster size increases, the proposed system need less time than other
algorithms in responding to the query. The response time shows that the proposed system respond
faster than other existing systems.

7. Conclusion
   RSs are becoming essential in many industries and hence, have received more attention in recent
years. Moreover, Health RSs have emerged as tools to support patients and healthcare professionals to
make better health-related decisions.
   In this paper, we have introduced the basic notions required for a better understanding of RSs,
particularly in the nutritional domain. We followed that by highlighting the most important
approaches presented in the literature. Next, we present a novel knowledge-based recommendation
system for food recommendation. Our proposal is supported by a software tool called SIHATI which
provides efficient and accurate recommendations.
   Our paper has presented a food recommendation approach focused on generating daily
personalized meal plans for the users, according to their nutritional necessities and previous food
preferences using ontology matching and Kmeans algorithm.
   The shortcoming of our approach is the use of a single clustering algorithm and a semantic
distance which is relative to the used algorithm and gives different results.
   Further research could extend such model to improve the performance with additionally including
other features, such as the place of residence. Furthermore, the use of deep learning algorithms will
improve our approach remarkably.

References
    [1] D. Jannach, P. Resnick, A. Tuzhilin, and M. Zanker, Recommender systems-beyond matrix
        completion, Commun. ACM, vol. 59, no. 11, pp. 94–102, 2016, doi: 10.1145/2891406.
    [2] Ricci, Francesco & Rokach, Lior & Shapira, Bracha (2015), Recommender Systems:
        Introduction and Challenges. 10.1007/978-1-4899-7637-6_1.
    [3] D. Kotkov, S. Wang, J. Veijalainen, A survey of serendipity in recommender systems. Knowl
        Based Syst 111 (2016) 180–192.
    [4] J. Aguilar, P. Valdiviezo-Díaz, G. Riofrio, A general framework for intelligent recommender
        systems, Applied Computing and Informatics, Volume 13, Issue 2, 2017, pp. 147-160, ISSN
        2210-8327, https://doi.org/10.1016/j.aci.2016.08.002.
    [5] Ménard, Marc , Systèmes de recommandation de biens culturels. 10 (2014) 69–94.
        https://doi.org/10.3166/LCN.10.1.69.
    [6] Kanaujia M., P. K., Pandey, M., and Swarup Rautaray, S., A Framework for Development of
        Recommender System for Financial Data Analysis. International Journal of Information
        Engineering         and        Electronic     Business,       9(5)       (2017)      18–27.
        https://doi.org/10.5815/ijieeb.2017.05.03.
 [7] Çano, Erion, Hybrid Recommender Systems: A Systematic Literature Review. Intelligent
     Data Analysis. 21 (2017) 1487-1524. 10.3233/IDA-163209.
 [8] Ramzan, B., Bajwa, I.S., Jamil, N., Amin, R.U., Ramzan, S., Mirza, F., & Sarwar, N., An
     Intelligent Data Analysis for Recommendation Systems Using Machine Learning. Sci.
     Program., 2019, 5941096:1-5941096:20.
 [9] Tran, T.N.T., Felfernig, A., Trattner, C. et al., Recommender systems in the healthcare
     domain:      state-of-the-art   and     research    issues. J   Intell    Inf   Syst   (2020).
     https://doi.org/10.1007/s10844-020-00633-6.
[10] Elsweiler, D., Trattner, C., & Harvey, M. Exploiting food choice biases for healthier recipe
     recommendation. SIGIR 2017 - Proceedings of the 40th International ACM SIGIR
     Conference on Research and Development in Information Retrieval (2017) 575–584.
     https://doi.org/10.1145/3077136.3080826.
[11] Rokicki, M., Herder, E., & Demidova, E., What’s on my plate: Towards recommending
     recipe variations for diabetes patients. CEUR Workshop Proceedings (2015) 1388(i).
[12] Narducci, F., Mustoy, C., Polignano, M., De Gemmis, M., Lops, P., & Semeraro, G., A
     recommender system for connecting patients to the right doctors in the healthnet social
     network. WWW 2015 Companion - Proceedings of the 24th International Conference on
     World Wide Web (2015) 81–82. https://doi.org/10.1145/2740908.2742748.
[13] Han, Q., Ji, M., Martinez De Rituerto De Troya, I., Gaur, M., & Zejnilovic, L., A hybrid
     recommender system for patient-doctor matchmaking in primary care. Proceedings - 2018
     IEEE 5th International Conference on Data Science and Advanced Analytics, DSAA 2018
     (2019) 481–490. https://doi.org/10.1109/DSAA.2018.00062.
[14] Zhang, Y., Zhang, D., Hassan, M. M., Alamri, A., & Peng, L. CADRE: Cloud-Assisted Drug
     REcommendation Service for Online Pharmacies. Mobile Networks and Applications, 20(3)
     (2014) 348–355. https://doi.org/10.1007/s11036-014-0537-4.
[15] I. Faiz, H. Mukhtar, & S. Khan, An integrated approach of diet and exercise
     recommendations for diabetes patients. 2014 IEEE 16th International Conference on E-Health
     Networking,        Applications     and      Services     (Healthcom)       (2014)   537–542.
     https://doi.org/10.1109/HealthCom.2014.7001899.
[16] Ali, S. I., Amin, M. B., Kim, S., & Lee, S., A Hybrid Framework for a Comprehensive
     Physical Activity and Diet Recommendation System. In Lecture Notes in Computer Science
     (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in
     Bioinformatics): Vol. 10898 LNCS (2018) pp. 101–109. https://doi.org/10.1007/978-3-319-
     94523-1_9.
[17] Feng, Yang & Fan, Lidan, Ontology semantic integration based on convolutional neural
     network. Neural Computing and Applications (2019) 31. 10.1007/s00521-019-04043-w.
[18] A. Subasi, Clustering examples, in Practical Machine Learning for Data Analysis Using
     Python,      Academic      Press,    2020,     Pages     465-511,      ISBN    9780128213797,
     https://doi.org/10.1016/B978-0-12-821379-7.00007-2.
[19] El Bouhissi, H., Salem, A-B.M. and Tari, A. ‘Semantic enrichment of web services using
     linked open data’, Int. J. Web Engineering and Technology, Vol. 14, No. 4, pp.383–416
     (2019).
[20] Dharaneeshwaran, S. Nithya, A. Srinivasan and M. Senthilkumar, "Calculating the user-item
     similarity using Pearson's and cosine correlation," 2017 International Conference on Trends
     in Electronics and Informatics (ICEI), Tirunelveli, 2017, pp. 1000-1004, doi:
     10.1109/ICOEI.2017.8300858.