4.2 The Case Study: Information Recommendation
4.2.1 The advisor
Bridge and Ricci (Bridge & Ricci 2007) introduced a new kind of conversational recommendation called Information Recommendation (IR). IR helps a user identify a suitable product, whose features are represented by Boolean variables, to purchase or consume. IR may be regarded as an instance of a kind of system in which the user repeatedly edits and resubmits a query, that she chooses from a set of po- tential queries suggested by the system, until she finds a product that she wants (Ricci et al. 2006, McSherry 2005). The potential queries are selected with regards
4.2. The Case Study: Information Recommendation
to the user’s preferences that are collected from the user when she edits and sub- mits queries. These potential queries are meant to best match the user’s preferences which are induced from the user’s selected query each time she has to select a query among those suggested by the system. The possible queries that the system may suggest to the user can be too large to be efficiently checked by the user. The user might select a query that results in a combination of features which is not included in any product in the database as not all queries are satisfiable. Then, the system will show only the satisfiable queries to ensure the user deals with available features combinations only. In fact, a query is said to be satisfiable if and only if there exists a product in the database which has all the boolean features in the query; otherwise, it is unsatisfiable. The user is not assumed to know the satisfiable queries beforehand.
The advice given to the user in each step of the dialogue can remain large enough to confuse the user and make the selection task more difficult. The RSs should reduce the number of queries shown to the user without losing the focus on the relevance the advice should have regarding the user’s preferences. Then, these preferences have to be collected by the advisor during the interaction with the user. The system then infers preference relations from the user’s previous contribution to the dialogue, such as her earlier queries. The system might, for instance, infer that the combina- tion of features in the chosen query is more preferred than all the combinations of features that represent the non chosen queries. Having these preferences stored in a kind of user model, constructed dynamically and progressively updated as the di- alogue continues, the system starts to be able to determine whether certain queries dominate others, to rank the next possible queries, and to suggest to the user those that are compatible with her preferences and compatible with the available products. Let us suppose a user wants to book a hotel for a one-week holiday. She may want to be supported by an automated advisor. A “single-shot” RS will propose a set of products to the user once and for all. The system would have obtained the user’s preferences either by capturing her feedback or looking for users’ profiles that are considered similar to the user’s profile. The user’s preferences can for instance be obtained by a computationally intense offline phase that induces the user’s pref- erences based on their opinions on items (Levandoski et al. 2012). Accordingly, the system looks for suitable items in the database and proposes to the user a set of rec- ommendations. If the user is not satisfied then she can quit or send another request to the system. The system’s response to the second request will be treated by the system independently from the system’s answer to first request (see Figure 4.1).
However, this is not always the case as the user may not be willing or able to reveal all her preferences about products as she may not be very familiar with the available products (i.e., hotels) and their characteristics (e.g., piece of equipment in the hotel room). Her preferences would then be constructed while interacting with
the system.
A conversational RS engages the user in a dialogue during which the user is allowed to elaborate her requirements about the hotel she would like. A dialogue may be extended over several steps. During each step, the user supplies feedback on the items recommended by the system. This feedback will guide the selection of the set of items the system proposes in the next step. The dialogue comes to its end when the user is satisfied or terminates voluntarily the dialogue or there are no suitable items to be recommended. As a conversational RS, the advisor presented in (Bridge & Ricci 2007) suggests items, which are queries in this case (see Section 4.2.2 and 4.2.3) that help the user to efficiently search for products, which are hotels in the actual system. During each step of the dialogue when the user selects one query pro- posed by the advisor, the system will observe the chosen query and infer constraints about the user’s model of preferences. Then constraints between two combinations of features will be added to a dynamic user model that the system constructs pro- gressively. These constraints help the advisor deduce preference relations between queries and enable it to construct a ranking of these queries, rather than products. Then, the advisor delivers only optimal queries, regarding the user’s preferences, to the user in the next step of the dialogue.
The advisor in IR gives freedom and flexibility to the user regarding the queries the user can perform at each step of the dialogue. This will steer the user smoothly towards the target.
After looking at the database, the advisor will propose queries that deal only with combinations of features available (i.e., included in at least one product in the database). The system will propose queries that lead to combinations of features that are included in at least one product in the database. This will dissuade the user from trying to request a combination of features in vain. Thus, the user will realize that she can satisfy a desire for other features. Consequently, the user may not give up and requests a hotel with features B and C (declared available by the system). Next, having seen the available queries, the user may want to replace one feature C by two other features D and E. The system observes the user’s selection, learns and proposes more queries to encourage the user to target the most convenient hotel regarding her preferences, a part of which was learnt during the interaction.
We suggest for IR a reasoning framework where a set of models of the user is assumed, each with an associated preference ordering, along with a satisfaction re- lation between models and statements of constraints on preferences expressed in an appropriate language. Within this framework, given a set of constraints, the system infers that one product is preferred to another if this preference holds for all models satisfying the constraints. As the dialogue proceeds, the user’s new actions reveal more constraints on her preference ordering. This can narrow the set of models of
4.2. The Case Study: Information Recommendation
the user. We describe this framework in more detail in Section 4.3. Two instances of this framework were developed and presented in Section 4.4 and Section 4.5.