Towards Cognitive Recommender Systems

: Intelligence is the ability to learn from experience and use domain experts’ knowledge to adapt to new situations. In this context, an intelligent Recommender System should be able to learn from domain experts’ knowledge and experience, as it is vital to know the domain that the items will be recommended. Traditionally, Recommender Systems have been recognized as playlist generators for video/music services (e.g., Netﬂix and Spotify), e-commerce product recommenders (e.g., Amazon and eBay)

• data-driven-which enables leveraging Artificial Intelligence and Machine Learning technologies to contextualize the Big Data generated on Open, Private and Social platforms/systems to improve the accuracy of recommendations [14]. The goal is to facilitate the use of content and collaborative filtering, and focus on the shift from statistical modeling to deep learning-based modeling (Deep Learning Recommendation Models) to improve correlations between features and attributes to generate better predictions; • knowledge-driven-which enables mimicking the knowledge of domain experts using crowdsourcing techniques [15]. The goal is to leverage techniques such as reinforcement learning [16] to strengthen desirable and accurate recommendations and minimize or eliminate undesirable recommendations; and • cognition-driven-which enables understanding the users' personality and analyze their behaviour and attitude over time. The goal is to improve recommendation performance with cognitive science and Neural Magic by leveraging neural embedding frameworks, include our previous work, Personality2Vec [17], to design mechanisms for personalized task recommendation.
We present a framework to employ users' cognitive aspects, knowledge management, and analytics in Cognitive Recommender Systems to intelligently assess and proactively adapt the recommendations based on the results of cognitive analytics and continuous learning from the actions taken. We present a motivating scenario in finance industry and argue that existing Recommender Systems-(i) may not be able to predict the ratings or preferences a customer would give to a product (e.g., loan, deposit, or trust service); and (ii) do not support data capture and analytics around customers' cognitive activities and using it to provide intelligent and time-aware recommendations. (ii) data-driven [14]: which enables leveraging Artificial Intelligence and Machine Learning technologies to understand the Big Data generated on Open, Private and Social platforms/systems to improve the accuracy of recommendations; and (iii) cognition-driven [17]: which enables understanding the end-users personality and Analyze their behaviour and attitude over time.
Cognitive Recommender Systems can be used in various scenarios such as Understanding the Customer Journey, improving government services, Personalizing Teaching and Learning, personalizing the advertisements in elections and more. The rest of the paper is organized as follows-in Section 2 we provide the background and related work. We present a general framework for Cognitive Recommender Systems in Section 3. In Section 4, we present evaluation results before concluding the paper with remarks for future directions in Section 5.

Background and Related Work
Research in the era of Recommender Systems (RSs) has its roots in information retrieval [18], forecasting theories [19], user option modeling in business [20] and cognitive science [21]. In the mid-1990s, Recommender Systems appeared as an independent research domain [4]. The main goal of Recommender Systems is to understand users' preferences and interests by analyzing their behavior As is clear from Figure 2, we categorize the existing Recommender Systems in seven main classes along with their subcategories, which in this section we discuss them in details.

Classic Recommender Systems
Classic RSs can be roughly classified into two main categories-(i) Single-domain recommenders, which recommend items belonging to a single domain, and (ii) Cross-domain recommenders, which aim to exploit knowledge from a source domain to perform or improve recommendations in a target domain. Although there is no consensus definition of the domain in the literature, this term can be referred to the types of items which can share similar characteristics such as movies or books [22].

Single-Domain Recommenders
The majority of RSs belong to the single-domain recommenders category, which recommends items related to a single domain. For instance, Netflix (https://www.netflix.com/) suggests movies and TV series and Last.fm (https://www.last.fm/) offers recommendations for songs and music albums. Single-domain Recommender Systems can be divided into four main categories-(i) Content-based: they use the past preferred items' descriptions for recommendation process; (ii) Collaborative Filtering: they look in like-minded people to predict users' preferences; (iii) Demographic-based: they identify demographic features of users; and (IV) Hybrid: they combine some of the previous methods in a single model.

Content-based.
This category of RSs have their roots in information retrieval [23]. In this category, a RS learns to recommend items, which its content are similar to those liked by the users in the past. Content-based approaches mostly rely on analyzing items' contents and users' profiles in order to recommend items that are matched with users' interest. One of the most common methods in this class is Term Frequency/Inverse Document Frequency (TF-IDF), which is a well-known measure in information retrieval [18].
Collaborative Filtering-based (CF). The pure CF RSs have a better performance compared to content-based approaches since they can make a recommendation regardless of the content of user/item despite content-based approaches which highly depend on the descriptions of users and items for making a prediction [24]. The core principle behind these techniques is that among all users in Online Social Networks (OSNs), those who have similar tastes in the past are more likely to share similar interests in the future. CF methods can be generally categorized into two main classes: memory-based and model-based approaches. Memory-based approaches are also known as Neighbourhood-based, since it looks for the best neighbourhood users who share similar interest [1]. This similarity can be computed either between users (i.e., user-based) or items (i.e., item-based).
User-based CF approaches predict users' ratings on an unseen item using similarity metrics such as the Pearson correlation or the cosine similarity [25]. The item-based CF approaches recommend items which are similar to those that users have preferred them before. In contrast to memory-based algorithms, model-based methods try to learn users' preferences by a user-item matrix. Matrix Factorization (MF) as one of the most popular methods in this class shows superior performance compared to the memory-based approaches, which factorizes user-item interaction matrix in latent features of the rating [2].
Demographic-based. "Demographic information can be used to identify the types of users that like a certain object" [26]. This type of RSs employ users' demographic features, for example, age, nationality, gender and level of education to categorize users and make a better recommendation. If we take age as an example, a set of users who are under 20 years old may have a similar interests on specific items. Social information also can be considered as demographic features, like followers, followed, and posts from OSNs to completely discover users' preferences and model their behaviours in order to find a set of services or products for them which is fitting to their needs and interests. For instance, METIS, as a product recommender system, considers users' public profiles to find their demographic features and analyzes their tweets to figure out their updated purchase intents [27]. METIS measures the similarity between extracted demographic information and products' features and then a list of appropriate products is recommended to users in order to increase the accuracy of product recommendation.
Hybrid-based. This kind of RSs is a combination of CF -based and content-based approaches in order to increase the accuracy of RSs and to take advantage of both methods, simultaneously. These methods can be combined in different ways. For instance, Fab detects similar users for a CF based approach with exploiting the content of users' profiles [28]; or the PTV system employs content-based techniques to analyze information about TV programs, and then, find users who have the same preferences on TV shows. Next, it employs both content-based and CF algorithms for recommendation [29].

Cross-Domain Recommenders
Based on how the knowledge is exploited from the source domain, cross-domain RSs can be classified into two different classes-(i) Aggregating knowledge-based, and (ii) Transferring knowledge-based.
Aggregating Knowledge-Based. In this line of research, the knowledge can be obtained from source domains in three different ways merging user preferences, mediating user modelling data, and combining recommendations in order to make or improve recommendations in a target domain. Among the mentioned approaches, merging user preferences is one of the widely used methods in cross-domain recommenders. Enriching sparse users' preferences data with integrated data from other domains can improve the recommendations even with existence of cold-start and sparsity conditions [30,31]. The work proposed by Berkovsky et al. [32] is one of the pioneering models in recommendation systems that relies on mediating user modelling data to show the benefit of this technique in improving the recommendation accuracy. Integrating the most similar neighbours can be considered as a type of mediating user modelling to show the performance of recommendation compared with the single-domain RSs [33]. In combining recommendations, the recommendations are combined with their associated weights from the different single domains. The weights are computed based on how important is the recommendation from that source domain to the target domain [34].
Transferring knowledge-based. This category can be classified into three main classes, such as linking domains, sharing latent features and transferring rating patterns. Linking domains-based approaches try to link domains where they share in common items' attributes. For instance, there may be a connection between comedy movies and humorous books. Though they come from different domains, they may share semantic features [22]. Chung et al. [35] propose a cross-domain RS in which they filter the items attributes that are in common between the source and target domain to make a more accurate recommendation. Their work is among one of the earliest RSs which fall in this category. Latent factor models are one of the widely adopted approaches in collaborative filtering, where the users and items attributes are very sparse [36]. In cross-domain recommendation, transferring the latent features between domains can be done adaptively and collectively. In order to overcome the data sparsity problem in the target domain, an approach is proposed by Pan et al. [37] to adaptively utilize user and item information from the source domain to perform a singular value decomposition (SVD)-based recommendation model in the target domain. While in collectively-based approaches, latent features are learned simultaneously through a single objective function including both domains [38]. Except for mentioned approaches, a different line of research exploits users' rating patterns and assumes that in close domains a sample of users may share similar preferences for a set of items. The work proposed by Berkovsky et al. uses association rules to discover the pattern of a set of commonly rated items in a group of similar users. Then, they integrate these rules into their CF method to make a better recommendation [22].

Sequential Recommenders
In contrast to the classic RSs, sequential Recommender Systems take a sequence of user-item interactions as the input and predict a set of next interacted user-item through modelling the sequential dependencies [5]. From the technical point of view, we categorize the existing sequential RSs into two main classes: Model-free and Model-based.

Model-Free Approaches
As it is clear by the name, Model-free approaches do not involve complex mathematical models. Model-free approaches are borrowed from the early 1990s to early 2010s studies. Data mining techniques, for example, pattern mining and association rule mining can be considered as the two most popular methods in this category. Model-free approaches can be divided into two groups of approaches as follows: Pattern/Rule-based Approaches. The main idea behind this type of approaches is to discover the pattern of customers' shopping basket (e.g., items which are frequently purchased together) to help find the best next interested items [39,40]. Discovered patterns can be used in a CF method in order to deal with some special cases, such as data sparsity problem, improving the robustness of a RS model or personalize recommendations [41].
Sequential Pattern-Based Approaches This type of model-free approaches are frequency-based only and try to understand the pattern of relations between frequent items. One of the examples of this type of sequential pattern-based recommenders is to assign a weight to a sequence of items according to its level of importance among the past sequences for a specific user to make recommendations more personalized [42].

Model-Based Approaches
From the early 2010s, researchers start to develop model-based approaches. These approaches are mainly performed based on statistics and machine learning techniques [5]. Different from the model-free sequential recommenders, model-based approaches can deal with an ordered and complex sequence of items. Current methods in this category can be divided into three main classes-Markov Chain-based models, factorization-based models, and neural network-based models.
Markov Chain-Based Models. Markov Chains model has been known as a straightforward technique to model the transitions over user-item interactions in a sequence. Based on the specific technique used, Markov chain-based RSs can be divided into basic Markov Chain-based approaches and latent Markov embedding-based approaches. The former refers to the situation where the transition probability of every state is computed only based on the previous state. Following that, auxiliary information, for example, context features, can be used to enrich the Markov Chain model and improve the recommendation accuracy [43]. Moreover, in one work [44], the authors combined a mixed order Markov Chains with the Web content information to have a more accurate Web-recommendation. They formed a hybrid web-recommendation system in which they used Markov-based methods to model users' Web browsing behavior and combined it with content-based filtering models to extract contents from the links that users have visited online. While the basic Markov Chain-based approaches can only model the simple and basic dependencies between the states, the latent Markov embedding-based approaches are able to capture the complex relationships between the states as the transition probabilities are calculated based on the Euclidean distance of embedded Markov Chains [45].
Factorization-Based Models. Matrix factorization or tensor factorization is the most widely used techniques in recommendation systems, which map users and items into latent spaces [46]. In sequential RSs, the matrix or tensor is constituted of interactions rather than the ratings [3]. For instance, FPMC is built based on the combination of matrix factorization and Markov chains to predict the next action [47].
Neural Network-Based Models. These classes of approaches have attracted researchers due to the great capability of neural networks in modelling complex relations between items and users. Basically, with respect to the number of incorporated layers, neural network-based models can be divided into Shallow network and Deep network. The shallow network transfers items to a low-dimensional space inspired by the great success of some embedding technique in Natural Language Processing (NLP) such as word embedding [48].
In recent years, we have witnessed the tremendous success of the deep learning in solving many complex tasks in a wide range of applications such as speech and face recognition, NLP tasks and recommendation problem [49]. Typically, deep neural network-based approaches can be exploited either through basic deep neural networks or some advanced models. Recurrent Neural Networks (RNNs) [50] Convolution Neural Networks (CNNs) [51] and Graph Neural Networks (GNNs) [52] are the dominant approaches in basic deep neural networks. Although the mentioned approaches can model complex users and items relations, they may face some challenges. CNN-based approaches may lose some information due to the max-pooling operation and they may be limited in capturing long-term dependencies due to the restriction on sizes of the filters. While RNN-based models assume that there is a strict order between items in a sequence and this may generate false dependencies. To deal with the problem of basic neural networks, some advanced models are utilized, such as-(a) attention mechanism: which is a well-known technique in SRs due to its great capability to focus on selective parts Wang et al. [53] (b) memory-network: captures the users and items interactions through incorporating an external memory matrix [8]; and (c) mixture-models: combines different models which can perform better for its particular task to improve the whole system in modelling sequential dependencies [54].

Context-Aware Recommenders
There are different definitions of context in various domains such as computer science, information retrieval, cognitive science, linguistics, philosophy, social science, and psychology [55]. According to the Oxford advanced learner's dictionary, context is "a situation in which something happens and that helps you to understand it" [56], and based on the Webster's dictionary "context is a situation in which something happens: the group of conditions that exist where and when something happens" [57]. From the computer science point of view, context is defined as "everything" that "affects the computation except the explicit input and output" [58]. The concept of context is introduced in the computer science field in the late 1980s [59], and Schilit et al. [60] is one of the pioneering in introducing context-awareness in computing in 1994. Among the different aspects that can be considered as the context in Recommender Systems, time, location and social relations have been shown the great success in the literature [61]. Time is defined as "a non-spatial continuum that is measured in terms of events that succeed one another from past, through present to future" or "the measured or measurable period during which an action, process, or condition exists or continues" [57]. Time is another dimension of context which can help the system to track the evolution process of users' preferences over a period of time. Hence, time-aware RSs attract more attention from researchers. Reference [62] considers morning and evening as a time of day factor and workday and weekend as a time of year for having an understanding of users' preferences for a particular period of time. Nowadays, due to the widespread use of social networks such as Google+, Facebook, YouTube, Twitter, Amazon, and Flickr, we are bombarded with too many information. This huge amount of generated information from Online Social Networks (OSNs) can be useful in many applications including RSs. Social-aware RSs can benefit from these data in different aspects, such as the social properties of users, social ties, communities, friendship, social contents. For instance, the strong social ties which can be calculated by some factors such as intimacy, emotional intensity, and amount of time, can be incorporated into the RSs [63].

Auxiliary Information-Based Recommender
Increase the amount of generated data in each second, new recommendation scenarios start to emerge that use new information which goes beyond the user-item matrix, called Auxiliary information-based recommenders [64]. Generally, this information falls into two categories according to the source of information: users and items-based, and interaction-based.

Users and Items-Based
There are a variety of sources of auxiliary information about users and items that can be used in addition to the user-item matrix. Two of the popular side information sources are user attributes (e.g., age, gender) and item attributes (e.g., content, category) [65][66][67]. We categorize this class of approaches to the two subclass of social networks and user-contributed information as they attract more attention among all types of source information.
(i) Social networks. The emergence of social networks resulted in generating a wide range of research disciplines in the past years. Users in OSNs either directly or indirectly are connected to each other and make social relationships. A relationship like "following" between two users in OSNs, Twitter for instance, can be a good example of direct relationship [68]. While the friendship request in Facebook is an example of an indirect relationship that uses symmetric user-user graph/matrix [69]. This type of social information can be used in RSs to enhance their accuracy.
(ii) User-contributed information. This type of information has became another rich source of side information, which can be adopted to make a better recommendation. User-contributed information is significantly adopted in the literature, which can be divided into tags, geo-tags, multimedia content, and free-text reviews and comments.
Tags. They are short textual labels that users assign to items, which can describe item properties [70]. Since this source of information is beneficial for RSs, there is a separate line of research which is known as tag-based RSs [71].
Geo-tags. This is an explicit latitude and longitude coordinates which can provide the location information for RSs. Geo-tags of a shared photo can be used to trace the location of the users. Hence, RSs begin to use this kind of information to facilitate location recommendation [72].
Multimedia Content. Since the introduction of Web 2.0 technology, users are able to share their content such as video, text and image. Exploiting the shared contents on OSNs can create an opportunity to find what type of items a user is interested in. Using techniques such as image processing, NLP and object detection can contribute to exploit more information and make personalized recommendations to the users [73].
Reviews and Comments. Users-generated comments/reviews can be an important source of additional information. The semantic and sentiment analysis of these information can help RSs to better analyse users' profile and learn their preferences [67].

Interaction-Based
This type of information refers to a set of associated information that comes along with the items that a user directly interacted with such as time of purchasing items [74], the location where a mobile application is downloaded [75] and so forth.

Cognitive-Based Recommenders
Cognitive computing is a field of study of brain-inspired mechanisms and systems [76]. There are different definitions for cognitive computing and there is no commonly accepted definition despite extensive research in this domain [77]. Some studies defined cognitive computing as "a collection of emerging technologies inspired by the biological processing of information in the nervous systems, human reasoning, decision making, and natural selection" [78]. Furthermore, it is also defined as "an emerging paradigm of intelligent computing methodologies and systems based on cognitive informatics that implements computational intelligence by autonomous inferences and perceptions mimicking the mechanisms of the brain" [78]. Cognitive computing can be used in cloud computing [79], natural language processing [80], emotional cognitive systems with speech and facial expression [81] and big data and machine learning era [82]. Discovering meaningful patterns from users' social behaviours can play a vital role in helping RSs to find the interesting items (e.g, music, job, link, hotel and etc.) to suggest to users before even they start looking for them. The main purpose of the cognitive recommenders is to inspire the human brain which consists of two main different dimensions, that is, explicit behavioural pattern and implicit behavioural pattern, for gathering and linking data across domains and assist users' decision-making process.
Explicit Behavioural Pattern. We categorize methods in this class based on the type of information that they used in their model. (i) Text-based methods that can use posts, comments, and reviews and the context of them to enrich their recommender engines. For instance, ZIANI et al. [83] use customers' reviews to apply sentiment analysis technique and extract some useful features such as emotionalism, reflexivity and addressing to help users with their decision making process. (ii) Location-based approaches such as SPETA can provide tourists with more services and suggestions as it can use the knowledge of a user's current location, preferences, and the history of past locations [84]. Traveller is another location-based method that can recommend holidays packages and tours [85]. There are more models, Entrée for instance, which employ location features to recommend restaurants [86]. (iii) Action-based such as liking, Rating, Voting can be used in this class of methods. In like/dislike systems, users explicitly express their opinion about the specific items by classifying them as "interesting" or "not interesting", "relevant" or "not relevant" or as "like" or "dislike" [87]. Rating scale also scale is another feature which is typically numeric, Amazon bookstore for instance, provide readers to rate the books on a five-point scale to help them with their next interested items. (iiii) Feature-based methods which use features such as age, gender and profile can make a better recommendation. Although there are some studies which incorporate user and item profiles into some of the current methods such as Reference [88] and Reference [26], there may need to be more complex and advanced profiling like data mining rules [89], and signatures [90]. Implicit Behavioural Pattern. Approaches belong to this category can be roughly categorized into three main classes. The first class uses social-based features such as personality, trust and attitudes. For instance, APAR as a personality-based RSs can implicitly detect users' personality types and integrate it into a matrix factorization model [91]. Trust-based methods is the second line of implicit cognitive RS. Trust which is defined as a context-dependent factor, can help RS to select a small and the best neighbourhood for a user [92]. The third type of methods is Action-based where RSs try to take a look at some features such as users' browsing history, clicked items and time spent on a specific page in order to make a smart recommendation [93].

Crowdsourcing Recommenders
"A crowdsourcing paradigm facilitates outsourcing tasks to a pool of workers distributed around the world" [94]. While there is a vast amount of posted tasks each second, it is an important task to find the best users which are suitable for this task and satisfy them with good rewards. Crowdsourcing is incorporated into various domains, in e-commerce for instance, a hybrid approach is used to build a customer profile and then a genetic algorithm is applied to weight the features. In addition, this powerful paradigm can be used in other applications such as tourism [95], news [96] and task recommendations [97].

Domain-Specific Recommenders
The explosive growth in the amount of available information has created a potential challenge of curating and analyzing the information in order to find a valuable and useful insight. The process of curating the information and prepare them for analytics is important as the driven knowledge can be a vital asset for organizations and governments [14]. This knowledge may refer to a set of facts, information, and insights which are extracted and curated from raw data [98]. The domain knowledge can play an important role as it can help to better understand, categorize, contextualize and analyze the information in a particular domain. In our previous work, we introduced Intelligent Knowledge Lakes [15] to facilitate linking Artificial Intelligence (AI) and Data Analytics; to enable AIenabled applications to learn from the domain knowledge (e.g., in retail, finance, tourism, health, etc.) and use this knowledge to automate business processes and develop cognitive assistance for facilitating the knowledge intensive processes or generating new rules for future business analytics. For example, in the finance industry, a multi-investment RS (PB-ADVISOR [99]) has been proposed to characterize the semantic features of the investments to recommend a various set of products. The results of PB-ADVISOR are confirmed by the expert in the finance sector which shows the capability of RSs to make the right choice for customers.

Summary of the Related Work
In Section 2, we surveyed and summarized previously published studies in Recommender Systems to help readers understand our method's contributions to the field in this context. Figure 2 illustrates an overview of Recommender Systems' related work, that we have covered, from classic to context-aware, domain specific and sequential RSs. We discussed the current limitations of the state of the art approaches in Recommender Systems, and highlighted the need for a new type of RS that can learn to understand the user behavior, take various aspects of business domain into consideration, and learn from domain experts' knowledge and experience, as it is vital to know the domain (e.g., retail, finance, health, education) that the items will be recommended.
In the next section, we will present a general framework for a new type of data-driven (i.e., to enable leveraging Artificial Intelligence and Machine Learning technologies to contextualize the Big Data generated on Open, Private and Social platforms/systems to improve the accuracy of recommendations), knowledge-driven (i.e., to enable mimicking the knowledge of domain experts using crowdsourcing techniques), and cognition-driven (i.e., enables understanding the users' personality and analyze their behaviour and attitude over time) Recommender Systems. The data-driven component will facilitate the use of content and collaborative filtering, and focus on the shift from statistical modeling to deep learning-based modeling (Deep Learning Recommendation Models) to improve correlations between features and attributes to generate better predictions. The knowledge-driven component will enable learning from knowledge worker's experience and use domain experts' knowledge to adapt to new situations. The cognition-driven component will improve recommendation performance with cognitive science and Neural Magic by leveraging neural embedding frameworks. Figure 3 illustrates a general framework for cognitive RSs. In the following, we explain the main elements of the framework: data-driven, knowledge-driven, and cognition-driven.

Data-Driven: Curation Services
The continuous improvement in connectivity, storage and data processing capabilities allow access to a data deluge from the big data, that is, the data generated on various islands of data, from social (e.g., on Twitter and Facebook) and Internet of Things (e.g., CCTVs and smart cars) to private (e.g., personal and business data) and open (e.g., news and Websites) data islands [14,98]. One of the main challenges in understanding big data is the data curation process, that is, to transform raw data into actionable insights.
At this level we organize the big data (generated on private business/personal, open and social data islands) in a data lake [100] (i.e., a centralized repository that supports various data capture and management technologies that facilitate dealing with a collection of independently-managed datasets, from relational to NoSQL). We provide a set of data curation services to turn the raw private/open/social data into a contextualize data and knowledge. The data curation services, leveraging AI and ML technologies, for extracting, classifying, linking, merging, enriching, sampling, and the summarization of data and knowledge. This will enable us to automatically add features (such as extracting keyword, part of speech, and named entities such as Persons, Locations, Organizations), enrich the extracted features (by linking them to external knowledge sources such as Wikidata or WordNet to provide synonyms and stems, or use learning techniques such as word2vec, entity2vec, or grapch2vec to find similar keywords or items), discovering similarity among the extracted information items, such as calculating similarity between string and numbers; and sorting and categorizing data into various types, forms or any other distinct class.
In particular, the data curation services will facilitate the following tasks: (i) Data Cleaning-to amend or remove data in a database that is incorrect, incomplete, improperly formatted or duplicated; (ii) Data Integration-to combines data from multiple sources and deal with schema integration, detecting and resolving data value conflicts, and removing duplicates and redundant data; (iii) Data Transformation-to smooth the noisy data, summarize, generalize, or normalize the data scale falls within a small, specified range; and (iv) Adding Value-to support extraction, enrichment, annotation, linking (to domain knowledge, and other external Knowledge Bases) and summarization tasks.
The contextualized data lake (i.e., Knowledge Lake) will facilitate the content and context analytics for the RSs, as it contains virtually inexhaustible amounts of both data and contextualized data that is readily made available anytime to anyone authorized to perform analytical activities. In this context, a Knowledge Lake will provide the foundation for content and context-aware recommendations by automatically curating the raw data in the Data Lake and to prepare them for deriving insights. Figure 4 illustrates the Knowledge Lake Architecture.

Knowledge-Driven: Intelligent Knowledge Lakes
Intelligence is the ability to learn from experience and use domain experts' knowledge to adapt to new situations. In this context, an intelligent Recommender System should be able to learn from domain experts' knowledge and experience, as it is vital to know the domain (e.g., retail, finance, health, education) that the items will be recommended. To achieve this goal, a cognitive recommender system would benefit from the domain knowledge (i.e., the knowledge of a specific, specialized discipline or field) as well as the crowdsourcing techniques.

Domain Knowledge
As discussed in Section 3.1, Knowledge Lakes are used to facilitate the content and context analytics for the RSs, as they contain virtually inexhaustible amounts of both data and contextualized data that is readily made available anytime to anyone authorized to perform analytical activities. Intelligent Knowledge Lakes [15] to facilitate linking Artificial Intelligence (AI) and Data Analytics, to enable learning from domain expert's experience, and use this knowledge to annotate the contextualized information stored in a knowledge lake. The goal is to enable RSs to learn from contextualized data and use them to develop cognitive assistance for RSs' users for: facilitating the recommendation processes and learning from the users' cognition over time (by generating new rules for future predictions). Accordingly, Intelligent Knowledge Lakes can help RSs to understand the big data, use it in a smart way, and feed it into its (Intelligence) engine. One of the main challenges to build an Intelligent Knowledge Lake is to mimic the knowledge of domain experts using techniques such as feedback, surveys, and interviews; to build a domain-specific Knowledge Base. A Knowledge Base (KB) typically consists of a set of concepts organized into a taxonomy, instances for each concept, and relationships among the concepts.
As an example, a domain knowledge can be a crucial source of data when optimizing a Recommender System when personalizing digital government services, that is, to decide what a user sees. It should be highlighted that, this would different from customization, where the user decides what they want to see. In building a domain knowledge, we need to capture all important entities, relationships, and events that are happening in real time in the specialized discipline or field, such as health, education, retail and financial domain. For example, to construct a domain-specific Knowledge Base in banking, the Concepts may include products (e.g., accounts, cards, checks, loans, etc.), customers (e.g., Personal, Business, Government, etc.), processes (e.g., sales, customer service, risk management, debt management, product management, campaign management), analytics (Customer Analytics, Credit Card Analytics, Loan Analytics, Economy Analytics, etc.), and more. The instances of such concepts would be, for example, the list of customers (instances of the concept Customer) or different Fraud detection operations (instances of the concept Process, e.g., operations such as data analysis algorithms to detect patterns and anomalies). To identify the instances, it is also important to consider the entities related to those concepts and instances. For example, fraud detection can be applied to several entities such as credit cards or insurance. In this context, connected entities will form a (Knowledge) graph including financial transactions, location, devices used, initiated sessions and authentication systems.

Crowdsourcing
Crowdsourcing, that is, the process of obtaining information or input into a task by enlisting the services of a large number of people (paid or unpaid) via cloud-based platforms [13], has the potential to bring solution to two main challenges in RSs:

•
Cold-start problem-existing work has been suggesting a user-item rating matrix and users/items information such as user profiles and item contents. However, this information are primarily biased and it will be challenging to identify reliable item neighbors relevant to the cold-start items. In this context, Crowdsourcing has the potential to bring the knowledge of the crowd for new items recommendations. As illustrated in Figure 3, in our proposed approach there are two feedback loops to the crowdsourcing platforms: (i) Data Curation Services Feedback Loop, at this level the Data Curation Services benefits from annotating and enriching the extracted information items from the crowd workers. In particular, we leverage Crowdsourcing techniques to mimic the domain expert knowledge using feedback, surveys, interviews and more, to build a domain specific knowledge base and use that knowledge to improve correlations between  Figure 5. Leveraging crowdsourcing to deal with biases and the cold-start problem.
features and attributes to generate better predictions. An interesting motivating scenario, would be in risk-aware Recommender Systems, where it would be important to understand the risk level of the customer's situation (e.g., during the COVID-19 pandemic (https://en.wikipedia. org/wiki/COVID-19_pandemic)), where it may be dangerous to recommend items the user may not desire in her current situation if the risk level is high. Accordingly, the aim of a Cognitive Recommender System is to use rules together with techniques such as learning and crowdsourcing to strengthen desirable and accurate recommendations and minimize or eliminate undesirable recommendations; (ii) Personality2vec Analysis Feedback Loop, at this level we will leverage the knowledge of the crowd to understand changes in user's behaviour and feedback, such as ratings and clicks, as well as detecting information about environment changes, such as changes in location and time, while the user is travelling.

•
Bias and Variance-Given that the features and related data used for training recommendations generated by algorithms and gathered by humans, biases may get into data preparation and training phases. This is mainly because the big data generated on a large scale, never-ending, and ever-changing. To address this challenge we leverage our previous work [101,102] which combines the crowdsourcing techniques and link them back to rule-based systems to generate feedback loops that can be adopted over-time to deal with Biases (i.e., the simplifying assumptions made by the model to make the target function easier to approximate) and Variance (i.e., the amount that the estimate of the target function will change given different training data). Figure 5 illustrates how we leveraging crowdsourcing to deal with biases and the cold-start problem. To construct a domain mediated model, we use Amazon Mechanical Turk (Amazon Mechanical Turk is a crowdsourcing website for businesses to hire remotely located "crowdworkers" to perform discrete on-demand tasks that computers are currently unable to do. It is operated under Amazon Web Services (https://www.mturk.com/).) to construct a set of crowd microtasks, to manage the two feedback loops in our proposed model (Figure 3). The main goal is to support the ongoing quality requirements, by developing a set of microtasks (i.e., a short, independent, self-contained request for a piece of work such as rating, opinion, comment, idea, and advice, to be completed.) sent to domain experts, who can quickly write a set of rules that capture obvious patterns, correcting learning mistakes, or covering cases that learning cannot handle.

Cognition-Driven: Personality2Vec
One of the main shortcomings of existing RSs is that they are not able to identify similar users based on their cognitive thinking and activities. For example, in retail or finance sector, if a RS would be able to find similarity between a new user and an existing user, then there would be opportunities to predict the user needs from product sales and upgrade point of views. Examples include identifying similar-students in education domain, patients in health domain, or similar customers in a finance sector. In this context, it would be important to understand the various dimensions for the student, patient, or the customer. Let us focus on customers' dimensions in a banking scenario. In this scenario, the similarity between two customers can be discovered from various dimensions such as demography, health, social activities, and/or engagements, as illustrated in Figure 6. To enable identifying similar customers, we leverage our previous works, Personality2Vec [17] and Graph-based OLAP analytics [103,104] to automatically identify and match similar users (e.g., based on various dimensions illustrated in Figure 6). We introduce a graph-based data model. The nodes in the graph represent customers (and their domain-specific dimensions illustrated in Figure 6) as well as the products. We use mathematical embedding from a space with a dimension per feature to a continuous vector space which can be mapped to classes of cognitive activities in a specific domains such as retail, finance, health, and education. For example, in the finance industry scenario, the classes would be banks (e.g., Central, Retail, Commercial, Shadow, Investment, and Cooperative organizations), customers (e.g., Individuals, Partnership Firms, Limited Liability Companies, or Trusts), services (e.g., Loans, Overdraft, and Consultancy), products (e.g., Current/Savings/Credit accounts, Debit/Credit cards, Checks), and/or insights (fraud detection, money laundering). The edges in the graph will be relationships among the nodes as well as the above-mentioned classes. Following we present some examples of such relationships: which specifies that at timestamp T1 the customers wealth and assets analysis shows a healthy sign. This can be done through an automatic trigger for Wealth-assets analysis (see the demography category in Figure 6) when the customer applies for a loan. which specifies that at timestamp T1 the customer has a valid health insurance. This can be done through an automatic trigger for health analysis (see the category health in Figure 6) when the customer applies for a loan. which specifies that at timestamp T1 the customer has a valid credit card with no background issue (e.g., late payments, fraudulent card applications, or skimming). This can be done through an automatic trigger for a credit check process (see the ontology in Figure 6) when the customer applies for a loan.  which specifies that at timestamp T1 the customers' social activities does not include any risks such as radicalization, money laundering or child pornography. This can be done through an automatic trigger for a social activity check process ( Figure 6) when the customer applies for a loan. Figure 7 illustrates a snapshot of a user's personality graph. The next step, will be to facilitate the classification of the personality graph, to enable matching similar customers. At this stage, we leverage the graph2vec [105] neural embedding framework to identify and group similar personality graphs. The advantage of the graph2vec approach is that the model will learn graph embeddings in a completely unsupervised manner that is, class labels of personality graphs are not required for learning their embeddings. In particular, we view the entire personality graphs (of all users) as a document (similar to the word2vec [106] neural network) and the rooted subgraphs around every node in the graph as words that compose the document and extend document embedding neural networks to learn representations of entire graphs. Afterward, using the time-aware neural embedding framework presented in Personality2Vec [17], and taking into consideration the uses' dimensions presented in Figure 6, we construct a personality Graph (pGraph) model for each customer in the RS. The pGraph is time-aware and includes all the activities (e.g., payment patterns, transactions context and content, geographical changes in payments, products purchases and updates, and more. This will enable the cognitive RSs to find similar customers, better understand their requirements and needs, and providing more intelligent and time-aware recommendations. For example, considering the COVID-19 pandemic (https://en.wikipedia.org/wiki/COVID-19_ pandemic), a bank may need to understand the likely impact of COVID-19 (https://en.wikipedia.org/ wiki/Coronavirus_disease_2019) on the finance sector and its customers. In this context, identifying similar customers would be vital for organizations and provide insights for credit management (e.g., which consumers and businesses may not be able to make loan payments) and revenue compression (e.g., which customers may be affected by rate cuts as well as a collapse in demand). This, in turn, will also enable organizations to focus on the quality of their business processes, such as customer service and advice provision (e.g., restrictions on personal interactions will push customers toward digital channels for service and sales), operating model adjustments, cost control and innovation (e.g., misaligned revenues and cost will require finance sectors to improve operational flexibility and rethink short-term priorities). We should highlight that, Figure 6 specifically demonstrates the dimensions that can be used as features in the neural embedding framework (i.e., personalit2vec). As illustrated in this figure, dimensions such as Transactions and Loans can help us extract features to identify customers with financial risks. As another example, dimension such as Social Activities or Health Records can help us extract features to identify customers with psychological risks or safety risks. Accordingly, our proposed model will enable analysts to use different features for different goals, as for example risk assessment process could be a subjective task and highly relied on the knowledge of the business analysts.

Experimental Settings and Analysis
In this paper, we proposed a vision and a framework for a Cognitive RS that enables leveraging the knowledge of domain experts, benefits from crowdsourcing systems, uses the curated content and context of big data (generated on private, social, open and IoT data islands), and facilitates the user experience and KYC (Know Your Customer) Analytics (i.e., the discovery, interpretation, and communication of meaningful patterns in customers data, which can be understood as the connection between all new customers on-boarded at an organization and for existing customers on a periodic basis, as well as effective decision making within an organization) by constructing a time-aware personality graph.
We have discussed that, the three main Dimensions of a Cognitive RS include: (i) knowledge-driven: which enables mimicking the knowledge of domain experts using crowdsourcing techniques and building domain specific Knowledge Bases (KBs); (ii) data-driven: which enables leveraging AI and ML technologies to curate and contextualize the data; and (iii) cognition-driven: which enables understanding the end-users personality and Analyze their behaviour and attitude over time. In our previous work, we have evaluated the feasibility and performance of the Personality2Vec technique, data curation Services, and the knowledge-driven approach (i.e., intelligent knowledge lakes [14,17,98,107]).
In this paper, we focus on evaluating the effects of enabling the analysis of personality aspects in RSs. We use a set of Amazon reviewer's dataset [108,109] and explain how we curate the reviews (e.g., by leveraging curations services to extract keywords, phrases and topics) and then link them to external knowledge services such as LIWC (https://liwc.wpengine.com/) to detect users' personality types. We will then discuss the results of our experiment to demonstrate the effect of integrating the personality factor into a RSs.

Users' Personality Acquisition
Personality as "consistent behavior pattern and interpersonal processes originating within the individual" [110], which can be detected either explicitly by filling a questionnaire or implicitly through observing users' behavioral patterns. According to psychologists, personality can introduce a person's "patterns of thought, emotion, and behavior" [111]. Among all traits, we select Five Factor Model (FFM) which is a well-known personality model. FFM can describe people personality into five main factors as follows [112]: • "Openness to Experience: creative, open-minded, curious, reflective, and not conventional". • "Agreeableness: cooperative, trusting, generous, helpful, nurturing, not aggressive or cold". • "Extroversion: assertive, amicable, outgoing, sociable, active, not reserved or shy". • "Conscientiousness: preserving, organized, and responsible". • "Neuroticism (Emotional Stability): relaxed, self-confident, not moody, easily upset, or easily stressed".
In this experiment, we detect users' personality types implicitly through analyzing their provided textual contents. It is shown by psychologists that people with similar personality types tend to share similar interests. If we take movies domain as an example, due to its strong relations with users' preferences, the Openness personality type users may prefer to watch comedy and fantasy genre of movies, while Neurotic personality type users are more likely to watch romantic movies [113]. Therefore, we select a movie-related subset of the Amazon dataset to test our model. This dataset contains a huge amount of reviews that mining them can help us to better understand users' behaviours. Since people may differ in their selected words because of their personality characteristics, we first collect all users' reviews and then feed them to Linguistic Inquiry and Word Count (LIWC), which is a popular text-analysis tool. LIWC can categorize the words related to more than 88 psychological. LIWC is able to find the percentages of words related to each of which 88 categories like positive emotions, cognitive process, and social processes. Next, based on the relation of each of extracted category from LIWC and FFM personality traits, we employ a linear regression model to compute the score of each user's personality type, named PerSc, as follows: where in Equation (1), A, B, and C are the LIWC categories, and α, β, and γ are their corresponding weights.

Dataset
We test our proposed model on the Amazon dataset, which has been widely used in RSs [108,109]. Amazon dataset provides a wide range of useful information (e.g., ratings, reviews), which consists of 2000 of users, 1500 items, 86,690 reviews, 7219 number ratings, 3.6113 average number of rates per user, 0.2166 average number of rates per item and user ratings density is 0.0024. Figure 8 is a sample of this data set, where reviewerID is the id of the reviewer, for example, A2SUAM1J3GNN3B, asin is an id of the product, for example, 0000013714, reviewerName is a name of the reviewer, helpful denotes the helpfulness rating of the review, for example, 2/3, reviewText is the text of the review, overall is the given rating to the product, summary is a summary of the review, unixReviewTime is the time of the review (unix time), and reviewTime is the time of the review (raw) (http://jmcauley.ucsd.edu/ data/amazon/). This information can be an important source of knowledge that need to be extracted for a different purpose. According to the strong relations between a person's personality type and her/his choices of video, we select a subset of Amazon dataset, Instantvideos, to work on and leave other domains for our future works. Furthermore, we select users who leave more than three reviews in this dataset in order to have a better analysis of their provided content.

Evaluation Metrics
We use two standard metrics to measure and compare the performance of our proposed approach with the various RS models: Mean Absolute Error (MAE) and Root Mean Square Error (RMSE), which are defined through Equation (2). The smaller MAE and RMSE demonstrate a better recommendation accuracy; where R ui and R ui are the real and estimated ratings values, respectively, and R test is the total number of ratings in the test dataset. In order to show the performance of cognitive RSs compared to the traditional recommenders, we compare our proposed approach with three following categories of recommenders: (i) Classic collaborative filtering which only considers user-item matrix such as SVD++ [36], UserMean and ItemMean, measuring the mean of all ratings that a user has given to items and the mean of all ratings that an item has been given by users, respectively, and Random method which randomly assigns rated values; (ii) Auxiliary information-based recommender such as CTR [114] which is the state-of-the-art model, using topic modeling to combine the contents of documents with traditional collaborative filtering in order to recommend scientific articles; and (iii) Intelligent-based RS which only discover users' personality type explicitly by providing a questionnaire to the users, which is overwhelming and a time-consuming task (e.g., TWIN Recommender System [115]).

Performance Analysis and Comparison
In this section, we compare the performance of our proposed method with other approaches regarding RMSE and MAE. As is shown in Figure 9, we use different sets of the training data size (60%, 70%, 80%, and 90%). According to Figure 9, while we increase the amount of trained data we will have better accuracy for all methods. All approaches reach to their best performance in both metrics when training data size is 90%. Therefore, in order to have a fair comparison, we consider the results of models when they train 90% training size. Our proposed model achieves the best performance in terms of both RMSE and MAE compared to all baselines. While SVD++ performs better compared to the approaches in the first category, as UserMean and ItemMean simply compute the mean rating values of users and items, respectively. However, the recommendation performance of UserMean is higher than that of ItemMean, as the average number of ratings per user is more than the average number of ratings per item, in this dataset. CTR performs better than SVD++ by 11% and 14% in terms of MAE and RMSE, respectively. This can explain by using the extra information in CTR. In the third category of approaches, TWIN suppresses Hu, since Hu mostly depends on the ratings information which may suffer from data sparsity problem. In the end, our model reaches the best performance compared to all other methods. In addition, our model outperforms the recommendation performance of CTR by 39%, 42% and TWIN by 11%, 31% in terms of MAE and RMSE, respectively.

Conclusions and Future Work
In this paper, we presented a vision and a general framework for Cognitive RSs, that is, a new type of knowledge-driven, data-driven and cognition-driven RSs, where users' cognitive aspects, knowledge management, and analytics are employed to intelligently assess and proactively adapt the recommendations based on the results of cognitive analytics and continuous learning from the actions taken. Although recommender systems (RSs) have been well studied and broadly applied, a cognitive-based RS is a relative emerging area in RSs. We introduce a set of challenges in this domain which may open a collection of future research directions: • A future direction in context-aware recommendations would be to build users' personality graph for different contexts, such as time, location, health and education. Considering this important factor into account may result in enhancing the accuracy of RSs, since users usually make different decisions in different situations. • A future direction in Cross-domain recommendations would be to build the users' personality graph in the source domain and then make a recommendation in the target domain. This is important as in related domains such as movies and books, users' behaviour may be similar. This can help us to not only improve the recommendation performance but also deal with the cold-start problem when new user joins a system and there is a lack of available information about him/her. • Time-aware Cognitive RSs is another opening research domain. The main goal of cognitive RSs is to use state-of-the-art models and techniques to be able to understand human's behaviour and make smart recommendations. However, in real-world scenarios, users' behaviours may change over time. Hence, detecting changes in users' activities and behaviours may open the door to various potential research directions.

•
Group-aware Cognitive RSs can be another interesting future work. In this context, relating users' personality graphs may discover similar interests and thus helping to overcome data sparsity problem in RSs.

•
Another interesting line of work would be a Multi-step interactive Cognitive RS. Usually, the users' decision-making process may contain multiple steps rather than just one step. Interact with users through a feedback loop at each step can help RSs to fully understand the users' needs and interests.
• Another future work direction would focus on using gamification techniques (e.g., BitLife (https: //bitlife-life-simulator.fandom.com/)) to learn from the RS users' activities as well as decision making (how they choose the best next steps in specific situations) and enable the Cognitive RS to think and learn like a human, led to more humanized recommendations.