Recommendation Generation Justified for Information Access Assistance Service (IAAS): Study of Architectural Approaches and Post-Hoc Algorithm ()
1. Introduction
In order to facilitate the access to the information contained in information systems, recommendation systems have been developed; these systems use the actions of users realized on the system to filter information. These recommendation systems have undergone a high evolution and have allowed the implementation of several approaches, such as: the content-based filtering approach, the collaborative filtering approach, the hybrid approach, the demographic approach and the social approach etc. [1]. All these approaches have been proposed in order to produce relevant recommendations to users. As for the collaborative filtering approach, the system uses the ratings of similar users to provide them recommendations [1]. With this approach, several algorithms allowing to provide more accurate recommendations to the user have been developed, for instance IAAS.
IAAS, Information Access Assistance Service is an example of collaborative filtering recommendation system. This system aims to be applied in several domains, such as videos, audios, images and documents. It uses the notion of voting as a technique for evaluating items. This vote is carried out by the user after having taken note of the document. This user estimates that the document is important for one or more other users, and it materializes it through a notice [2]-[5]. In IAAS [3], a user’s notice is evidenced by the documentary unit, the user’s group and the weight of the recommendation.
All recommendation approaches have produced algorithms to provide more accurate recommendations to the user. However, the accuracy of the recommendation and its acceptance improves when the user is able to understand the limitations and benefits that provide the recommendation. Otherwise, the user must receive the recommendation with the reasoning behind it [6] [7]. Thanks to these observations and to the evolution of recommendation systems which is to improve the interface through the justification of recommendations, the notion of justification has been introduced in recommendation systems. There are several styles of justifications: keyword justification, influence based justification, content based justification, users reviews justification and comparative justification etc. [6] [8] [9]. The justified recommendation gives credibility to the recommendation system.
We note that IAAS does not provide a justification for the recommendations generated. That is why, the justification of recommendations in IAAS must be considered in order to improve the accuracy and acceptability of recommendations. But how to generate a justified recommendation from the notices? What type of justification style and architecture should be used?
So we’re going to see through this study how to justify the recommendations with the IAAS algorithm, Algorithm 1. To achieve this, we will conduct related work on the justification and architecture approaches used in recommendation systems. Then, we will make a comparative table of approaches and architectures. Finally, we will position ourselves and propose an architecture for IAAS. This article is organized as follows:
Related work on IAAS, approaches and architecture for justification of recommendation;
Comparative study of approaches and architectures for justifications of recommendations;
Positioning for justification in IAAS;
Recommendation justification architecture in IAAS.
2. Related Work
2.1. Information Access Assistance Service (IAAS)
In the IAAS recommendation system, the users appreciate the different documentary units during their consultation and this appreciation is carried out by giving a grade to the documentary unit. Thus, a user gives his notice (A) which is a grade “a” ranging from 1 to 10, on a documentary unit (UD) and a given group (G). Hence for [2] [3], the notice is defined by the following triplet A = (UD, G, a).
The system collects all these relevance notices and proceeds implicitly to the calculation and ranking of the relevant items for the user. As each documentary unit can receive several relevance notices, the notion of recommendation weight Pk(UDiGj) has been proposed by [2]-[4]. The calculation allows to give a weight to each item to be recommended. As a group of users can receive the recommendation of the same document through several users, the total weight is calculated from the following formula [2]-[4]:
Pk(UDiGj) = sum(UDi, Gj, a) (1)
In the case of a document that has no relevance notice by a user its recommendation weight pk is zero [2]-[4].
Pk(UDiGj) = 0 (2)
In IAAS, a user’s connection to the system is analyzed as a request to transmit recommendations. The recommendation transmitted to a user contains all the documents recommended to his group.
For each user group, after calculating the recommendation weight for each item, IAAS orders the list of documents based on the relevance value. The relevance value is expressed by the following formula [2]:
Relevance Pi,j = ln(1+ Pk(UDiGj))(3)
The documents are ordered according to the decreasing values of Pi,j and then reordered several times according to the users’ profile to be personalized to each user of the group.
The notion of profile is very fundamental in IAAS. Indeed, in order to personalize the recommendations to the users, [2]-[4] have implemented the user profile and the document profile. These profiles are schemas that can be consulted in the works of [2] [3] [5].
2.2. Justification Approaches
We present in this part of our work, the summary of the work already done on the approaches of justification in the systems of recommendations.
2.2.1. Approach Feature-Weighted Nearest Biclusters (FWNB)
The FWNB approach is built around four elements that are user group creation, keyword weighting, neighborhood formation, and recommendation and justification generation [6].
Creation of user groups: it is based on the formation of user and item biclusters. The formation of these biclusters is done thanks to the similarity between users and items they have already evaluated. This bicluster formation is done automatically using the xMotif algorithm [10].
Weight of keywords: The objective of [6] in constructing keyword weights is to find the distinct keywords that best describe the users’ preferences. For this purpose, [6] used the similarity matrix between keywords and users. The weight of keyword f for a user u is calculated as follows:
(4)
(5)
|U|: total number of users and UF(f): number of users in which the keyword f appears at least once.
FF(u,f)=P(u,f) is the correlation between the user and the keyword f.
Using the keyword user correlation matrix R_B (u,f), they generate the keyword weight matrix W_B from the formula W(u,f) [6].
Neighborhood formation: This is the identification phase of the items and keywords to be recommended. All the items contained in the biclusters are candidates for recommendation as well as the keywords. Thus, we determine the item and the justification for each user through the calculation of similarity between the user and his bicluster:
sim(u,b) = (1 − a) · simI(u,b)+ a · simF(u,b) (6)
simI(u,b): similarity between the user and his item; a[0, 1]; simF(u,b): similarity between the user and keyword
Recommendation and justification generation: the generation of the item to be recommended as well as the corresponding keyword is done by simultaneous identification of the items in the neighborhood of the bicluster of a user u who:
are all preferred by other users according to the scores of the R_B matrix
contain the significant keywords of the matrix W_B.
The generated recommendation is the form, “item X is recommended to you because it contains the keyword f that you have already evaluated in item Y”.
2.2.2. Approach of Cataldo et al.
[9] was interested in building an effective justification designed on the basis of the distinctive and relevant terms for the item starting from the users’ reviews. For him, the effective justification must include the relevant and distinctive terms of the items that are discussed in the reviews. The approach of [9] is structured as follows: terms extraction, terms ranking, sentences filtering and the text summarization.
Feature extraction: The first step is to identify the features that deserve to be included in the final justification. Thus the strategy of [9] takes as input a set of reviews
and produces a set of 4-tuples
. To extract the terms of the critics, [9] used the Kullback-Leibler divergence [11], which is a non-symmetric measure of the difference between two distributions to construct an algorithm.
Ranking the extracted terms: [9] proceeded to calculate the score of the extracted terms by the following formula:
(7)
At the end, the terms are ranked in descending order and the K-first ones are labeled as main terms.
Sentence filtering: After the identification of the terms, we proceed to a sentence filtering with the objective of filtering out the sentences that are considered not necessary in the final justification. To do this, we divide the criticisms
into sentences si1, ...., sim. Then we check if the sentences respect in particular the criteria of content of the extracted terms. A top k of sentences are selected.
Text summarization: the summary highlights the main contents of the item’s reviews and maximizes both the coverage and the diversity of the justification while avoiding redundancy. The approach in [9] combines centroid-based text summarization [12], which has the advantage of being unsupervised, with a pre-trained neural language model, such as Word2Vec [13].
[8] is an extension on the generation of justification of recommendations combining the text summary and the analysis of sentiments cited by [9]. Indeed, in [9], the problem addressed is the implementation of a methodology for justifying recommendations in natural language by extracting aspects, classifying aspects, extracting sentences and summarizing texts. The justification for the recommendation submitted to the user is then the summary of reviews from other users and containing the item characteristics.
In [8], the same author went to the implementation of this methodology. The review found that the justification for recommendations based on summaries of user feedback provided relevant justification. Moreover, for him the justification with long sentences is even better than short sentences.
2.2.3. Approach of Jianmo et al.
The generation of justifications for recommendations in [14] is done using a pipeline to identify candidate terms for justification and to form the users and item profiles from a corpus of reviews. The candidate terms are the reviews that the user had previously written. [14] constructs a dataset containing the custom’s reviews for each user. The construction of the pipeline starts with the annotation of the reviews, then the classification of the annotated terms using the calculation of the distance between the selected terms and ends with the extraction of the justifications and the construction of the user and item profiles. Thus, for each user u we build the pipeline using the reference justifications D = (fd1; ...; dlr) consisting only of the justifications that the user had written.
Then we have the user profile composed of A = (a1; ... ; aK), we carry the most relevant ones and in the same way we build the items profile. For a user u and an item i as well as their reference justifications Du and Di, and the user profile Au and Ai of the item; we predict the justifications Ju;i = (w1;w2;...;wt) that explain why the item i is important for the user u. [14] identifies the terms or phrases using [15] and linguistic analysis. After identification, [14] uses the BERT [16] method for automatic classification of justifications and uses Fine-grained Aspect Extraction [17] for the extraction and the profile construction. The approach of [14] uses two models in its approach which are: Reference-based Seq2Seq Model and Aspect Conditional Masked Language Model. The experimentation has shown that the former produces high quality justifications and the latter produces diverse justifications.
2.2.4. Approach of Arpit et al.
The explanation-based recommendation is a new approach that unifies recommendation and explanation. The recommendation is modeled as a path finding problem in the item-item similarity graph [18].
Once a chain has been constructed for each candidate item, the top-n chains are iteratively selected based on their total coverage of the candidate item terms and their dissimilarities with other top-n chains. The approach of [18] is built on the generation of explanation chains and the evaluation of this chain.
Generation of explanation chains:
(8)
Evaluation of explanation chains:
(9)
Then comes the selection of items to be presented to the user. The technique of [18] does not compute separately the selection of items and justifications.
2.2.5. Approach of Or Biran et al.
[19] proposes an automatic prediction method using machine learning to produce simple, short, quality natural language justifications; through the use of application domain critics [11]. This approach has a message prediction structure and architecture.
[19] uses the Semantic Template Typed (STT) message structure which is a small semantic network of typed entity slots and relationships for prediction. A set of STTs have been created for each justification domain and use specific STTs to a domain, as well as template sets, from text corpora for words extraction.
The template construction architecture of [19] consists of term selection and characterization, computation of certain quantities if any, and justification planning.
2.2.6. Approach of Namyong et al.
[20] raised the issue of using user data and items to generate the justification for the various and more concise recommendations. And to do that, he solves it in graph form. [20] to be developed J-RECS and J-RECS can be used with any kind of recommendation algorithm. J-RECS is a post-hoc framework that integrates justifications. J-RECS does not use labeled data but rather is guided by a set of principles to characterize the desired justifications. In post-hoc approaches the recommendations are first sent to the user and then the corresponding justification. The recommendation and justification are not sent to the user at the same time.
In this approach you can recommend any item. The approach of [20] uses the user’s past actions (item details, item keywords, item notices) to recommend a new item from his environment or not. This is the similarity calculation between the attributes of the items already evaluated and the new item. For the generation of the recommendation, [21] put in place an item graph and justification.
Item Graph: the data to construct the graph is the set of items evaluated or not. A link is established between items or keywords etc. if they share the same attributes (Figure 1) [20].
Justification: when an item enters the environment based on its information, the system establishes links with the information of the items already evaluated by the user. And since the items already evaluated contain justifications corresponding easily, the system selects the appropriate justification for the item. For example, the rationale for the recommendation of director James Cameron’s film may be: “We recommend this movie directed by James Cameron, who made movies that are similar to other movies you watched.” And later, this can be improved with user comments after watching this movie: “Check out this user review, which closely reflects your preference, and explains why you should consider buying this item” (Figure 1) [20].
Figure 1. Recommended item and justified [20].
2.2.7. Approach of Mauro et al.
[21] worked on the issue of apartment reservation. For him the most important elements in the booking must take into account the properties of the apartments but also the perception of previous customers of the interaction with the staff who manages the houses. To automate the perception of past customers [21] proposed the generation of summaries of previous consumers’ opinions on suggested articles. Once the user logs on to the systems, they can choose the relevant items. Then he has the detailed information of each item [21].
The Blueprint system models the different steps of a person in contact with the system, taking into account their explicit and implicit actions. In this case the physical interaction actions are when the user makes a reservation and his confirmation by his presence. Employee actions can be home availability check, customer records etc. [21].
2.3. Related Work on the Architectures
2.3.1. Architecture of MoviExplain
Here we have an architecture consisting of four main parts (recommendation explorer, database, web explorer, web site), each part of which contains several components. The website consists of the guideline explanation system, the search engine and the evaluation system. The guideline explorer groups together the moviExplain algorithm, similar characteristics and similarity assessment. In Figure 2, the recommendation explanation system in MoviExplain is feature-based. To do this, MoviExplain builds the feature profile for each user. Finally, MoviEplain generates the recommendation plus the rationale which is the characteristic that has influenced the recommendation. This is the most important feature in the user profile (Figure 2) [22].
2.3.2. Knowledge-Desire-Intention (KDI) Framework
[23] implemented a framework architecture to generate personalized knowledge recommendations while justifying them in the Social Internet of Things (SIoT). This technique uses user preferences and feedback to build an indexed knowledge
Figure 2. Architecture of MoviExplain [22].
base. To generate the KDI recommendation, three modules are used: the knowledge module, the desire module and the decision-making module.
KDI makes a recommendation of knowledge while justifying it. This justification is obtained by calculating and classifying justifications, and the high value justification.
KDI uses the desire module which is itself enriched by the knowledge module to generate the recommendations of the justified knowledge. In Figure 3, KDI’s recommendation system uses a hierarchical level of belief in the handling of justified recommendations.
2.3.3. Architecture of Mauro et al.
The architecture of [21] in Figure 4, offers two main levels such as user actions and dimensions evaluation. The dimensions assessment is mapped and divided into two parts as shown in the figure below (Figure 4). The first two lines are the parts of the dimension assessments, and the last line is the user actions. During the interaction with the hotel website the user leaves suggestions which are used to enrich the justification of the recommendations in the near future.
2.3.4. Architecture of Arpit et al.
From a set of items with explanations for them, [18] constructs the rationale for recommending the items. Thus, starting from the items preferred by the users, [18] proposes a chain of explanations of these items already evaluated to extract the candidate items that have the best explanations. This architecture shows the icons of the movies and the keywords that accompany them. In Figure 5, we have the items already evaluated by the user as well as the candidate item waiting to be recommended in case of correlation of the keywords with the needs of this user.
Figure 3. Architecture of KDI [23].
Figure 4. Recommendation justification architecture [21].
Figure 5. Recommendation justification architecture [21].
2.3.5. Architecture of Namyong et al.
[20] proposes a graph model. Qu is the set of items evaluated by the system user and R is the set of items to recommend. All items, attributes, keywords and comments etc. are then modeled by a graph whose each node contains the item, attribute, keyword and comment etc. The red nodes in this modeling are the elements selected for the justified recommendation like in Figure 6. The establishment of a link between the nodes means a similarity between these elements.
Figure 6. Recommendation justification architecture [20].
3. Comparative Study of Approaches and Architectures for Justification of Recommendations
The table below summarizes the work already done in the area of justifications in recommender systems. The automatic summarization method column was realized after consulting [24].
3.1. Comparative Table of Approaches to Justification of Recommendations
The automatic summary method column was completed after consultation with [24].
In Table 1, our analysis is conducted based on the IAAS literature review, the definition of recommendation justification in IAAS and the summary table of justification approaches. As in IAAS users give their notices on the documents so they must provide their reviews at the same time. Also, the fundamental concept in IAAS is that the user gives a weight to each item that is used to manage and filter documents. So, it is better that we use these same weights to add to the user reviews that will be used as justification filtering strategy. As filtering mechanisms for existing evidence from the table, only [6] uses the weight of reviews and of the frequencies to filter the justification but does not use user reviews as justification. [6] cannot be used in our case. Among the approaches studied, [19] applies only in expert systems whereas IAAS is a non-expert system, and therefore this strategy is not of interest to us in this work. [18] cannot be used because the keywords written on the items are used to filter and order the list of recommendations to justify. The approaches of [6] [20] [21] and [14] use the evidence already assessed by users to automatically generate new justified recommendations using the
Table 1. Summarizes the work already done in the area of justifications in recommendation systems.
rchitectures |
Architecture parts |
Justificative sentences |
Purpose of the Recommendation |
Is the recommendation accompanied by justificative sentences? |
MoviExplain [22] |
Recommendation Explorer Database Web Explorer Website |
Item Profile User Feature Profiles Movie profiles Profile of rated films |
Justification for recommended movies |
Yes |
KDI [23] |
Knowledge Module Desire module Decision making module |
Users Preference |
Justification for Recommended IOT Knowledge |
Yes |
Mauro et al. [21] |
Dimensions to evaluate User actions |
Users suggestions |
Justification for recommended apartment reservations |
Yes |
Arpit et al. [18] |
Icons Keywords |
Users Preference |
Justification for Recommended Movies and Books |
No |
Namyong et al. [20] |
Items Actors Reviews Keywords Etc |
Item already rated |
Justification for all recommended items |
Yes |
numerical approach and learning based methods as a text summary tool. So these approaches are not appropriate. The approach of [9] seems to have a very similarity because for [9], the reviews are entered by the users and the system collects all the reviews and then proceeds to process it separately and personalizes the recommendations. Only that in [9] the reviews are not accompanied by weight and does not use notice. We also have the summary method which is focused on statistical calculations which will be used in the case of IAAS since our reviews will carry weights. The test domain of [9] is different from that of IAAS because, [9] is used in the domain of cinema while IAAS is used on the documents, videos, audios and images. We will then do a comparative study of the justifications of recommendations.
Based on our previous analyses (see subsection 3.5.1), we chose external data sources, namely comments, to justify recommendations for the SAAI. The appropriate justification style is the generation of a summary based on the comments. Indeed, comments offer an advantage in the case of the SAAI because users can simultaneously provide the reason for their opinions. This is also very practical for items that lack keywords, such as audio and video files.
3.2. Analysis of Approaches
We have summarized Figure 7 based on the input data and the justification style shown in Figure 8. Figure 8 demonstrates that we have both internal and external data for the item as the source for justification. Furthermore, we have generated text as justification containing internal data from the item, or a summary of user comments.
Figure 7. Comparison of some justification approaches in recommender systems.
Figure 8. Sources and style of justification for recommendations.
3.3. Table of Comparison of Recommendation Justification Architectures
Figure 9 summarizes the architectures mentioned in our article. We have identified criteria for parts of the architecture, supporting sentences, the subject of recommendation to better identify our problem.
Figure 9. Comparison of some recommendations justification architectures.
From the table we can say that the different parts of the architecture are not the same so changes depending on each recommendation algorithm. Therefore, the source of the recommendation justification words and the purpose of the recommendation are not the same. It is also noted that items recommended to users are accompanied by supporting phrases, except [18] which uses the keywords that are entered on the items as a justification. From what precede, we can conclude that it does not have a single architecture for all recommendation justification algorithms. But also, justification is not necessarily the justificatives sentences. Otherwise, recommendation justification architecture is built according to user needs, context of use, environment of use (apartment reservation in hotels, knowledge extraction in IOT etc.), items and approaches of recommendations etc.
From the related work on IAAS we can say that: the IAAS recommendation system does not generate a recommendation with justification phrases [2]. To address this issue, we will first define a justification architecture for IAAS. Since there is no single architecture for all algorithms, we have defined in section 5 an architecture specific to IAAS. The design of this architecture must necessarily take into account the context of use and the IAAS algorithm [3].
4. Positioning for Justification in IAAS
The recommendation is justified, the algorithm uses the opinions, the algorithm uses justified opinions and the algorithm uses weights are important criteria for the realization of the IAAS algorithm. The comparison of these criteria with the justification approaches studied is important for the justification of recommendation in IAAS. The data in Table 2 are obtained from the literature review.
Table 2. Approaches to justifying recommendations compared to notice used in IAAS.
Algorithms |
Is the recommendation justified? |
Is the algorithm used a notice? |
Is the algorithm used a justified notice? |
Is the algorithm used a weight? |
FWNB [6] |
Yes |
No |
No |
Yes |
Cataldo et al. [8] [9] |
Yes |
No |
No |
No |
Arpit et al. [18] |
Yes |
No |
No |
No |
Jianmo et al. [14] |
Yes |
No |
No |
No |
Or biran et al. [19] |
Yes |
No |
No |
No |
Namyong et al. [20] |
Yes |
No |
No |
Yes |
Mauro et al. [21] |
Yes |
No |
No |
No |
IAAS [2] |
No |
Yes |
No |
Yes |
We note that only the IAAS algorithm uses the notices and these notices are not justified. Only [5] and [20] use the weight in their algorithm. Apart from IAAS, all other algorithms justify their recommendation. From the above, we ask the following question: how can we justify the recommendations in the form of sentences from the notices? To achieve this, we will add reviews to each notice.
Based on this comparison, we are going to set up a new approach of recommendation justification which will take into account the notices of users. Instead of a notice being a triplet as proposed by [2], it must be a quadruplet to take the justifications written by the users. Thus, for the justification in IAAS a notice is now a quadruplet noted A = (DU, G, J, a) where J represents the justification. This message is sent to IAAS for processing as shown in Figure 7. This study does not question what is done on IAAS but aims to improve it by adding the justification. We will work on keeping the item selection technique and similarly we will develop a module for the processing of justifications.
5. Architecture of Recommendation Justification in IAAS
Figure 10 below expresses the idea of how the recommendation justification in IAAS that we want to implement works. The diagram shows three main entities which are the users, the workstation and the IAAS.
Figure 10. Description of the recommendation justification in IAAS.
Users give their notices on the documents and at the same time note the justification of its notice which is sent to IAAS for processing. In IAAS, we have separated the processing of the filtering of the documentary units and the justifications because the justifications are only texts that we want to process whereas the mechanism of filtering of the documents already developed in [2] is a manipulation of the numbers. After the separate processing of document and credential selections we collect them and then customize them to each user as [2] provides. Once a user logs in, the system returns his recommendations and it is still possible for him to make a new recommendation. In case a user recommends the same document to the same user group, the system uses the ranking already obtained to make a new readapatation of recommendation. This means that the recommendation is dynamic and therefore evolves with time. As a result, the justification for the recommendation changes with new notices.
The processing of the users reviews is as follows:
1) Reviews collection: this is the step of collecting all reviews;
2) Reviews extraction: this is the step of ranking and extracting relevant reviews collected in 1);
3) Reviews summarization: this is the last step and it consists of summarizing the relevant reviews extracted in 2) {since one can have redundant sentences}.
The method for selecting Documentary Units (DUs) is found in [3].
6. Post-Hoc Algorithm of IAAS for the Justification
In the post-hoc architecture of the SAAI that we proposed in the previous section (section 3.8), it is important to demonstrate how we retrieve all the information after processing at each branch level. Once the user submits a review, the system selects the items and then processes them according to the SAAI recommendation algorithm. Next, it selects the comments and then performs the necessary filtering. The item filtering process was addressed by Kabore et al. [6] [10]; we simply use this filtering algorithm for filtering items at each recommendation level (see section 2.6).
The comment processing is the task we will address in the next chapter, but in the meantime, let’s present the algorithm that reassembles the items and comments after processing, as shown in architecture in Figure 9.
7. Conclusion
We have conducted a literature review on IAAS, approaches and recommendation justification architecture. This allowed us to conduct a comparative study in the form of a table of architectures and approaches for justifying recommendations. This comparison allowed for the implementation of the justification architecture for IAAS and the use of the text summary justification style as the justification style in IAAS. It also made it possible to understand that we must implement a justification algorithm for recommendation using the notices of users. In the light of the foregoing, we have taken the view that the notices in IAAS will henceforth be a quadruplet (A = (DU, G, J, a) where J represents the justification) instead of a triplet as [2] had proposed. This article contributed to the improvement of the relevance of the recommendation in IAAS. However, we can improve our work by adding other approaches. And this is noted as a deficiency. As perspectives, we will produce the corresponding algorithm and then implement it with documentary units, such as documents, videos, audios and images etc.