Multi-modal dialog for browsing large visual catalogs using exploration-exploitation paradigm in a joint embedding space

01/28/2019 ∙ by Arkabandhu Chowdhury, et al. ∙ ibm Rensselaer Polytechnic Institute Rice University 0

We present a multi-modal dialog system to assist online shoppers in visually browsing through large catalogs. Visual browsing is different from visual search in that it allows the user to explore the wide range of products in a catalog, beyond the exact search matches. We focus on a slightly asymmetric version of the complete multi-modal dialog where the system can understand both text and image queries but responds only in images. We formulate our problem of "showing k best images to a user" based on the dialog context so far, as sampling from a Gaussian Mixture Model in a high dimensional joint multi-modal embedding space, that embed both the text and the image queries. Our system remembers the context of the dialog and uses an exploration-exploitation paradigm to assist in visual browsing. We train and evaluate the system on a multi-modal dialog dataset that we generate from large catalog data. Our experiments are promising and show that the agent is capable of learning and can display relevant results with an average cosine similarity of 0.85 to the ground truth. Our preliminary human evaluation also corroborates the fact that such a multi-modal dialog system for visual browsing is well-received and is capable of engaging human users.



There are no comments yet.


page 1

page 7

page 8

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

When a customer visits a physical retail store, she has the option to quickly visually browse through a large number of products. In most cases, she has the option to engage in a one-on-one conversation with a human agent in the store who can assist the customer to find what she is looking for. For example, the customer may say “Show me blue dresses” and the agent can respond by displaying blue dresses. If the customer points to a particular dress and says “Show me more like this”, the agent not only shows products that are exactly similar to the chosen product, but also shows a few samples that he thinks the customer may like, allowing the customer to explore the catalog better and refine her preferences. The human agent understands and remembers the customer’s requirements, learns her likes and dislikes and pro-actively makes recommendations in an exploration-exploitation framework, which in turn allows the customer to know about the range of products in the store quickly and also refine her preferences efficiently.

Figure 1: Visual browsing through multi-modal dialog.

In contrast, an online customer does not have much flexibility to quickly visually browse through large catalogs in an exploration-exploitation setup. More often than not, a customer rarely goes beyond the first 2-3 pages of search results returned by the search engine. Also, search engines mostly restrict search results to exact matches to the search query, without any exploration. Since online catalogs are huge there is a significant fraction of products which never surface on the the first page of the search results unless the user is specifically searching for it or it is being promoted by the retailer. In this paper, we present a system to assist customers in visually browsing through large catalogs in an exploration-exploitation setup using multi-modal dialog that allows the customer to search better, refine her preferences and at the same time ensure that the customer gets to see a large part of the catalog. Figure 1 shows an example of our proposed system. The key aspects of our system are:

  • Visual browsing is different from visual search: Online visual browsing is different from visual search in that it allows the user to explore the catalog beyond the exact search results, thus capturing the concept of exploration-exploitation. When an online customer expresses her preference in the form of an image click, it is difficult to exactly verbalize what the user wants. For example in the second round of the dialog given in Figure 1, when the customer clicks on the third blue dress in the first row, does the customer want dresses similar in design to the one clicked? Or does the customer want only blue dresses, irrespective of the design? Is the customer willing to explore tops that are not blue? In this example, the agent not only shows blue dresses in response to the user click, but also explores and shows a red long top, a blue top and a short, and a couple of dresses that are not blue, but similar to the clicked dress in design. The advantages of visual browsing are: (1) it allows for easier navigation through large product catalogs, and (2) it provides the user the capability to sample from the whole catalog based on the exploration-exploitation paradigm. Such a system allows for a more interactive online shopping experience, while providing an opportunity to quickly browse through representative products of the catalog.

  • Multi-modal dialog: The user can express his/her preference or query in natural language text or image click, while the agent responds only in images. This is a slightly asymmetric version of a complete multi-modal dialog. In order for the agent to respond to both text and image queries, it needs to learn a joint embedding space that maps both types of queries to a common space.

  • Context: The agent has to understand not only the current query, but also remember previous rounds of the dialog. For example in the third round of dialog in Figure 1, although the user query is “Show me only sleeveless”, the agent remembers that the user had queried for dresses in the first round and had clicked on a blue dress in the second round of the dialog and hence only displays sleeveless dresses in various shades of blue.

The first challenge in building such an intelligent and interactive system is the absence of any existing multi-modal dataset. In this paper, we first build a multi-modal dialog dataset from large product catalogs, as described in Section 3. We then propose the architecture of a model that can learn how to respond to multi-modal queries based on user context and the exploration-exploitation paradigm, as described in Section 4. We train our agent and evaluate its performance on our multi-modal dialog dataset with promising results.

2 Related Work

Several recent works have focused on the intersection of computer vision and natural language, in the development of conversational agents, two-player games, visual question-answering, image captioning etc. Some relevant works include

[2], where the authors train an AI agent to hold meaningful conversation with a human about an image. Given an image, a dialog history and a question, the agent comes up with a meaningful reply in natural language. In [4], H. de Vries et al. introduced the two-player “Guess What?!” game, where the task is to guess a particular object in an image. Das et al. [3]

use deep reinforcement learning to develop a co-operative image guessing game between two AI agents, the Q-Bot and the A-Bot. The goal for both the bots is to steer the dialog in a way that leads the Q-Bot to quickly guess the image that is being referred to from the line-up of images.

While research in multi-modal dialog is gaining traction, the domain of online shopping is yet to tap into its full potential. E-commerce leaders like Amazon and Netflix extensively use recommender systems. Starting with content based and collaborative filtering, recommender systems are now focusing on matrix factorization, multi-armed bandits, and methods for blending recommendations [10]. For online shopping, visual search is very common and recent advances in computer vision have made significant contributions to this field [7, 9, 12, 17]. Going beyond visual search, Laenen et al. [11] present a multi-modal product retrieval method that leverages both text and image queries. They present a model that learns the cross-modal representations and ranks images based on their relevance to a given query. Teo et al. [16] proposed a system of visual browsing on e-commerce platforms using image clicks by adaptive personalization and incorporating concepts of exploration-exploitation. They used a Bayesian regression model, a sub-modular diversification framework and personalized category preferences.

In contrast to existing literature for online product recommendation and visual search/ visual browsing, we propose a framework of multi-modal dialog to assist online customers in visual browsing through product catalogs. The system would be capable of remembering context, correlating text and image queries to a common representation space and go beyond “exact matches” to allow for the user to explore the catalog quickly. To the best of our knowledge, there is no existing work that unifies all these concepts to provide a one-stop intelligent agent that can mimic an in-store retail experience.

3 Dataset Creation

To the best of our knowledge, there is no existing dataset of multi-modal dialog for visual browsing of large catalogs. A primary reason is that online visual browsing is still not deployed in large scale and still not widely used on e-commerce websites. It is also difficult to collect real-world multi-modal data that mimics in-store retail experience in an on-line shopping framework.

Figure 2: The image of a typical product in the catalog and some associated attributes and attribute values.

In order to create the dataset, we crawled 71905 unique products (consisting of apparel, footwear, and accessories) from a fashion e-commerce site. For each product, we crawled the main product image together with available meta-data including category, name, description and various attribute values. Figure 2 shoes a typical product in the catalog, with the image and some of the available meta-data information.

Since there can be a multitude of product category types, attributes and attribute values, we standardize them by building a fashion specific vocabulary. Each category has certain attributes and each attribute can take some specified set of values. Table 1 shows a snippet of our vocabulary and some sample tokens of categories (e.g. shoes), attribute names (e.g. color) and possible attribute values (e.g. red, blue, etc.). Some attributes are common to all categories (e.g. color), while some attributes are specific to only certain categories (e.g. attribute sleeves is applicable for categories tops, shirts, dresses and not for category shoes). The data has a total of 130 categories, 17 attribute types, and 501 unique attribute values, resulting in a vocabulary size of 648.

Attribute Count Sample values
Gender 2 men, women
Category 130 shoes, dresses, trousers, shirts …
Color 46 sky blue, peach, red, violet …
Material 65 leather, cotton, jute, silk …
Pattern 17 woven design, floral, embellished, checkered …
Brand 160 John Players, Reebok, 109F, Adidas …
Table 1: Fashion specific vocabulary built by standardizing product categories, attributes and attribute values.

In our initial experiments, we select a subset of the entire product catalog, focusing only on categories related to men and women footwear, giving a total product count of 3500. We generate around 5K multi-modal dialog sessions on this dataset by a context dependent probabilistic finite state automaton, as illustrated in Figure 3. A sample dialog starts at the start node and continues by a random walk through the different nodes in the graph until it hits the end

node. The edge weights denote the various transition probabilities between the nodes.

Figure 3: Multi-modal dialog dataset creation by probabilistic finite state automaton.

To get the dialog started, at the start node, we transition to one of the three nodes – gender query, category query, gender category query. It may be noted that although the user can express her choices both in terms of text or image clicks, the starting query is always a text query, which is generated by randomly sampling a term from the fashion vocabulary. The gender query node generates queries only related to gender, while the category query node generates queries related to different categories (e.g. running shoes, formal shoes, sandals, etc.) and the gender category query generates queries about gender specific categories (e.g. men’s running shoes). The products with their attributes are indexed into an elastic search [6], to facilitate their retrieving from the catalog. The images corresponding to the top 6 results are shown to the user.

From gender query, category query or gender category query node, the dialog can transition to either the attribute query node, or the image click node. The attribute query node generates text queries related to specific attributes. At every round of the dialog, we maintain the context, in terms of gender, category name and attributes queried. Based on the context and the current search query, we retrieve results to display to the user. The image click node corresponds to the user clicking on any one of the displayed images in the current state of the dialog. An image-click query is simulated as a random selection of one of the 6 images shown in the previous round of the dialog. The ‘exploration-exploitation’ paradigm is implemented in response to an image click query. The response to the image click query should include (a) some results which are very similar to the clicked image in terms of image features, and (b) some results which are somewhat different but only to the extent where the user may be interested, pertaining to the current query and the context.

In order to extract image features, we use the pre-trained VGG16 [15] architecture and use the FC7 layer to represent the image features. We use a probabilistically generated number , where , to display the

K-Nearest Neighbors (KNN) results and

results based on hierarchical clustering, as shown in Figure

4. We choose hierarchical clustering in order to capture the hierarchical structure of products in a fashion catalog. The KNN results are meant to exploit the catalog for closest image results and the clustering results are meant to explore the catalog. In the hierarchical clustering, the cluster size is chosen probabilistically, such that is times the maximum distance in the KNN results. This value is experimentally seen to give an optimum clustering to explore the catalog without drastically deviating from the clicked image. As the number of dialog rounds increases, increases, thereby focusing more and more on the user preference, with less exploration.

Figure 4: Hierarchical clustering to retrieve results corresponding to image-click query, by taking into account the exploration exploitation paradigm.

From the attribute query node and the image click query node, the dialog can proceed to the end node with certain probability.

In generating the simulated dialog dataset, we particularly focus on the following features:
Context dependent state transition: The transition from one node to another depends on context. For example, if we are in the gender query node and the category name is not yet available in the context, then we try to get the category in the current context by transitioning to the category query node or to the image click node.
Context switches: We allow for context switches in the dialog. This is a more realistic scenario in which the user is free to switch context. Context switches are shown as dotted lines in Figure 3. Any time there is a context switch, the gender and category in the current context is reset to the new values.
Exploitation-exploration: We explicitly include exploration in the image-click query mode, as described above. The rationale behind this is that fashion shopping is highly serendipitous and we leave some room to the user to explore other parts of the catalog.

4 Proposed Method

An intelligent agent should be capable of assisting customers without having real-time access to the meta-data information in the product catalog. It should be capable of responding to unstructured or natural language conversations or even images provided by the user not present in the catalog. Although our current set-up only allows for the user to express her preference from the existing product catalog, our vision is to extend the capabilities of the agent to respond to images that are not present in the catalog and fed in externally by the user. Thus, it is essential for the agent to comprehend multi-modal queries and learn to sample judiciously from large catalogs to assist the customers.

The first step for the agent in achieving this objective is to learn a common representation of images and their text descriptions in a high-dimensional joint embedding space. We use the Correlational Neural Network (CorrNet)

[1] (described in Section 4.2

) and pre-train the model with our catalog data. Once the agent learns to map an input query onto this high dimensional vector space, it has to learn how to respond to the query by showing relevant products. We model this behavior of the agent as sampling from this joint embedding space by a Gaussian Mixture Model (GMM). However, sampling is a non-differentiable operation, and cannot be used in a neural network based model that uses back-propagation. We navigate this problem by modeling the sampling operation using some re-parameterization techniques, as discussed in Section

4.3. The following sections describe the complete model in more detail.

4.1 Query encoding:

For image encoding, we use the pre-trained VGGNet-16 [15]Convolutional Neural Network. The 4096 dimensional representation obtained from the FC7 layer of VGGNet-16 form our encoded image representation . Each word in the text query is encoded using the 300 dimensional representation obtained from Word2Vec [13]. The entire text query containing multiple words is then represented using the Continuous Bag of Words (CBOW) model [13], where we average the Word2Vec encoding over all the words in the query, and this representation forms our encoded text representation . The text/image query is then passed on to the pre-trained CorrNet model to be encoded into the joint embedding space.

4.2 Common Representation Learning using CorrNet

The Correlational Neural Network architecture consists of an input layer, a hidden layer, and an output layer. We pre-train this network using all the products in the catalog. One view of the input Z is the encoded frontal image representation and the other view is the encoded text description of the product formed from the attributes color, gender and all synonymous category names. We choose these attributes among all the available meta-data information because these features are the most representative in describing a product.

The hidden layer computes an encoded representation of dimension , from the input Z as below: H(Z) = f(W I_e + V T_e + b) where , and . The function

can be any non-linear activation function, like

sigmoid or tanh. We use the sigmoid activation function here. In our experiments, we consider the hidden layer dimension . The output layer reconstructs Z

from the hidden representation by computing: Z’=g([W’H(Z),V’H(Z)]+b’) where

, and . Function is a sigmoid activation function. In order to learn the parameters of the system, we minimize the following objective function, as detailed in [1]: J(θ) = ∑_i=1^N L(Z_i,g(H(Z_i))) +L(Z_i,g(H(X_i)))+L(Z_i,g(H(Y_i))) -λcorr(H(X),X(Y)

= ∑i=1N(H(Xi)-¯H(X))(H(Yi)-¯H(Y)∑i=1N(H(Xi)-¯H(X))2i=1N(H(Yi)-¯H(Y))2

where is the reconstruction error, is the scaling parameter used to determine the relative weight of the correlation term with respect to the reconstruction errors, is the mean vector for the hidden representations of the first view and is the mean vector for the hidden representations of the second view.

In essence, the objective function given in Equation 4.2
(i) minimizes the self and cross reconstruction error, and
(ii) maximizes the correlation between the hidden representations of the two views. This ensures that the dimensional hidden representation of text and image descriptions of the same product are very similar.

After the CorrNet is trained, we use the weights to project the input image or text query into the dimensional space of the hidden layer, which is the joint embedding space and we call it the CorrNet space.

4.3 Sampling from a Gaussian Mixture Model

While showing the nearest neighbors of the current user query in the CorrNet space can provide useful recommendations, it neither captures the context of the multi-modal dialog, nor implements the exploration-exploitation paradigm. Therefore, we train the model to sample from a GMM in a way that the samples generated by the model are similar to the ground truth image recommendations for the same set of dialog rounds. We choose a Mixture of Gaussians instead of a single Gaussian with the idea that each Gaussian would be centered around certain features of the product catalog and the sampling operation would be learned in a way that the exploration-exploitation paradigm and the context are both captured by the model.

The model learns in a supervised framework, trying to show results that mimic the rule-based multi-modal dialog dataset results. The cosine similarity is a measure of similarity between two non-zero vectors, and since our objective is to maximize the similarity between the model generated results and ground truth results in the dataset, our objective function is the negative of the mean cosine similarity of the model generated images and the dataset images over a batch of input dialog rounds. Mathematically, the objective function is:

J_m(θ’)=- 1N∑_s=1^N_b 1(Nd)2∑_j=1^N_d∑_i=1^N_d yi⋅^yj——yi—— ⋅——^yj—— where is a sample of the batch, is the batch-size and is the number of images displayed, is the model generated image and is the dataset image response to some query in the dialog. Since for each round of the dialog, the model and the ground truth dataset both contain images, we can form a matrix of cosine similarities. For each sample, we take the mean cosine similarity from this matrix and then further consider the mean over the entire batch as our loss. As the ground truth image recommendations already take care of the exploration-exploitation paradigm, when the model learns to minimize the objective function 4.3, it also learns to sample while taking care of the exploration-exploitation paradigm.

Now, sampling is a discrete operation and is non-differentiable. Hence we cannot back-propagate through a node that has a sampling operation. To overcome this problem, we use a re-parameterization technique that is commonly used in Variational Auto-encoders. A sample from a Gaussian distribution with a mean

and covariance can be expressed as . Using the re-parameterization technique, we can express as , where and . So, we can now say that is a function that takes parameters . is an input to the network. While back-propagation, we compute partial derivatives w.r.t and only. The model learns the and for each Gaussian, as a function of the input queries and we explain this in more detail in Section 4.4.

Since the model learns to sample from a GMM, it should not only learn how to sample from a Gaussian distribution, but also learn how to select which Gaussian to sample from. A GMM has a pdf: . Sampling from the GMM involves the following two steps:
1. Sample from the categorical distribution parameterized by vector , with such that .
2. Sample

from normal distribution parameterized by

and .

Now, again, sampling from a categorical distribution is non-differentiable and we use the Gumbel Softmax function [8] to overcome this problem. Sampling from a categorical distribution with class probabilities can be expressed as: z=one_hot(iargmax[g_i+logπ_i]) where is the gumbel noise. Since is not differentiable, in the Gumbel Softmax technique, we use as a continuous approximation of as below:

w_i = exp((log(πi)+gi)/τ)∑j=1Cexp((log(πj)+gj)/τ)

where C is the number of classes in the categorical distribution. In our case, is the number of Gaussians () in the GMM and is a hyper-parameter of the system. is called the temperature parameter that gives a control as to how closely the samples from the Gumbel-Softmax distribution would approximate the categorical distribution. When is very close to 0, the softmax becomes an argmax. We experiment over different values of and observe that gives the best results.

The next section explains how each of the individual operations described in Section 4 thus far, are combined to form the complete model.

4.4 The Complete Model

Input : Current query (text/ image click), contextual window size , Number of Gaussians , pre-trained CorrNet weights , Gumbel temperature , Gumbel noise , Batch size , Number of displayed image in each dialog round , Learning rate .
Output : Learned model parameters
1 if  then
2      Find text encoding as described in Section 4.1
3 end if
4else if  then
5      Find image encoding as described in Section 4.1
6 end if
7Project onto the CorrNet space using to get dimensional representation , as described in Section 4.2.
8 Compute .
9 The mean of each Gaussian in the GMM is computed as , where and are learned by the model and activation function.

The variance of each Gaussian is computed as

, where is learned by the model, but independent of .
11 Compute probability of selecting each Gaussian from the GMM as , where and are learned by the model and activation function.
12 Convert sampling to a differentiable operation by the Gumbel Softmax operation as: .
13 Express sampling from GMM as: , where .
14 Compute the objective function as: , where is the corresponding ground truth product representation.
15 Learn the model parameters by iteratively minimizing , on the training data set.
16 Use the leaned parameters for generating results on the test data set.
Algorithm 1 Algorithm for visual browsing by the agent.
Figure 5: Schematic overview of the complete model as detailed in Algorithm 1.

A multi-modal dialog in the dataset can have varying number of rounds of dialog, depending on the transitions in the finite state automaton in Figure 3. In order to keep the context in perspective, at any time instant, the model has to consider the current user query as well as the previous queries. But, how many queries should it consider to be perform optimally? It may consider all the queries in the dialog till the current query, or it may only consider the last queries. For example, in Figure 5, we show 3 rounds of dialog, where the current query is a user click and the previous two queries are text queries. Thus, in this case, the contextual window-size , but the model can also deal with variable window-sized context, where the algorithm allows for tuning as a hyper-parameter. Each encoded text and image query ( and ) in is passed through the pre-trained CorrNet to give corresponding vectors in the CorrNet space, and the mean of these CorrNet space representations form , which is the input to subsequent parts of the network. The model takes this input and learns to sample from a Mixture of Gaussians. The number of Gaussians () is a hyper-parameter of the model. The mean of each Gaussian in the GMM, is a function of . The probability of selecting the Gaussians in the GMM, is also a function of . This means that the model has to learn to weigh the Gaussians based on the current and the previous queries, thus capturing the context in the dialog. The weights are computed from by Equation 4.3 and ultimately, sampling from the GMM can be written in the form:

where .

Figure 5 and Algorithm 1 show the complete model for visual browsing using Multi-Modal Dialog.

5 Experimental Results

The first contribution in this paper is the development of a multi-modal dialog dataset for visual browsing. Figure 6 shows four rounds of dialog in an example session, consisting of user queries (text/image click) and our simulated dataset recommendations, generated as described in Section 3.

Figure 6: Four rounds of dialog and the corresponding recommendations as generated by our simulated dataset.

Learning appropriate common representations of text and images for a product is a crucial for the complete model. After training the CorrNet model, we tested it by comparing CorrNet space representations of text descriptions with nearest CorrNet space image representations. By plotting the nearest image representations of a given text query, we find that the representations in the joint embedding space are very similar. Figure 7 shows this cross-referencing in the CorrNet space for two different text representations.

Figure 7: Images with closest CorrNet space representations to the given text representation in the CorrNet space.
Figure 8: Ground truth results from the dataset and the model generated recommendations, considering a contextual window size . Top: Dialog session with only text queries. Middle: Dialog session with only image click queries. Bottom : Dialog session with multi-modal queries.

For training the complete model, we used 70% of the simulated dialog dataset as our training data. The hyper-parameter , which is the dimension of CorrNet space was fixed at 200 for all our experiments. We studied the performance of the algorithm with the change of hyper-parameters, the learning rate , the temperature parameter in Equation 4.3, the contextual window size , and the number of Gaussians in the GMM. It is seen that a value of 1.0, an value of 0.1 and an value of 3 give optimum performance. The performance of the algorithm dwindles when the contextual window size becomes too large, or when we have too many Gaussians . This can be explained by the fact that the model finds it difficult to learn effectively when too much dialog history is taken into account. This can be attributed to the relatively simple method of encoding the text descriptions and the simple averaging technique to account for the context. We believe that including a more advanced method like LSTM can help build the “memory” of the model more efficiently and effectively. Nevertheless, with simple encoding schemes and context-building, our results are quite promising. Figure 8 shows 3 examples of the ground truth results from our simulated dataset and the generated results by our model, when . In our experiments, we achieve an average cosine similarity of 0.85 with the ground truth on the test data set.

Human Evaluation Since, to the best of our knowledge, there exists no similar multi-modal dialog system to assist in visual browsing, it is difficult to make a direct performance comparison with any existing system. However, since the motivation of this work is to assist online customers in visual browsing, it is important to get an idea of what human users think of this system. Therefore, in order to evaluate the acceptance and performance of this multi-modal visual browsing system to human users, we conducted a preliminary user study with 13 individuals, who were undergraduate and graduate students in the age group of 23 – 31 years. In the user study, the participants were presented a demo version of our system where they could interact with the agent to visually browse through the shoes catalog. The participants were also presented with a system that randomly sampled products from the catalog in response to any image click or text query. The participants were free to conduct as many trial runs of either system (random sampling/ our multi-modal dialog system) as they wanted. The number of trails per participant and the number of dialog rounds per trial for each user was logged by the system. After the interaction with the system, each participant was given a questionnaire, where in addition to their age and gender, they were asked the following questions:

  • In how many trials were you happy with the recommendations? (All of the trials, most of the trials, about half of the trials,rarely, none of the trials)

  • Do you think this kind of a recommending system can improve your online shopping experience? (Strongly agree, somewhat agree, neutral, somewhat disagree, strongly disagree)

  • How much do you agree, our system works better than a random baseline? (Strongly agree, somewhat agree, neutral, somewhat disagree, strongly disagree)

  • Overall on a scale of 1 to 10 (10 being the highest), how much will you rate our system?

In order to evaluate the system, we used the number of trials and the number of dialog rounds per trial as quantitative metrics to capture the acceptance and engagement of the users. We evaluated the user engagement and acceptance in comparison to the random baseline system. The more the number of dialog rounds in a trial, the more the level of user engagement with the system. The number of trials by a participant is indicative of user acceptance of the system, and it suggests the user’s interest as they test the system more with different starting queries. It can be taken as a proxy for an online customer coming back to re-use the system more than once.

The mean number of dialog rounds in one trial of the random sampling system was 2.8 and the mean number of rounds in one trial of our system was 4. 14.28% of the participants conducted the random sampling experiment twice, while 46% of the participants ran multiple trials (2 or 3) of our multi-modal dialog system. This shows that users interacted and got engaged to our system more than the random baseline and wanted to run several trials with different starting queries. The post study feedback of our system was unanimously positive. 100% of the users strongly agreed that our system presents more meaningful results than a random recommender, and 100% of the users agreed that such an interactive AI system for visual browsing can improve our online shopping experience. On a scale of 1 to 10 (10 being the highest), 66.7% users rated our system as 8, and 33.3% users gave a rating of 9. The preliminary human evaluation is promising and shows that such a multi-modal dialog system to assist visual browsing would be well-received by the online shopping community.

6 Conclusion

In this paper, we presented a simulated dataset of multi-modal dialogs that mimic visual browsing by a user in an online shopping environment. Using this dataset, we developed an AI agent to mimic a human agent that can remember context, understand both natural language and images, and adhere to the exploration-exploitation paradigm to assist in visual browsing. Our preliminary experiments show promising results of achieving an average cosine similarity of 0.85 between model generated results and ground truth results on the test dataset. The human evaluation study laid the foundation to the fact that such a multi-modal dialog system would be well-received by online customers, once deployed, and would be capable of engaging the customers to a greater extent than a random baseline.

We are currently in the process of developing a larger scale dataset of multi-modal dialog using the entire range of products (all 71905 products covering apparel, footwear and accessories) in our catalog. We are also working on developing a more involved human evaluation system on this larger dataset, by allowing users to interact with our model via a web portal, and also by comparing the performance with simple KNN based methods.

We want to develop and test more involved algorithms on this dataset including a more robust approach of “context” or “memory” using a sequential model like LSTM [5]

. We also plan to extend our algorithm from the supervised learning framework to a reinforcement learning framework, where the agent can get feedback on the results. However, building a reward function for the results for this system is challenging since the goal is subjective as opposed to, say, an Atari game where we have a well defined scoring system.

In this work, we pre-trained the CorrNet architecture to learn the joint multi-modal representation. However, this architecture cannot learn disentangled representations of the different attributes associated with a product. For example, learning disentangled representations for the important attributes like color, pattern, material etc., within a particular view and correlate them appropriately with corresponding attributes from the other view, could significantly improve the performance of visual browsing. We want to include the architecture suggested in [14], in an end-to-end learning module, integrated with LSTM and reinforcement learning. Finally, incorporating user information and likes and dislikes can significantly improve visual browsing results, as the recommendation can be tailored to particular customers.


  • [1] S. Chandar, M. M. Khapra, H. Larochelle, and B. Ravindran. Correlational neural networks. Neural computation, 2016.
  • [2] A. Das, S. Kottur, K. Gupta, A. Singh, D. Yadav, J. M. Moura, D. Parikh, and D. Batra. Visual dialog. In

    Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition

    , volume 2, 2017.
  • [3] A. Das, S. Kottur, J. M. Moura, S. Lee, and D. Batra. Learning Cooperative Visual Dialog Agents with Deep Reinforcement Learning. arXiv preprint arXiv:1703.06585, 2017.
  • [4] H. De Vries, F. Strub, S. Chandar, O. Pietquin, H. Larochelle, and A. C. Courville. GuessWhat?! Visual object discovery through multi-modal dialogue. In CVPR, volume 1, page 3, 2017.
  • [5] F. A. Gers, J. Schmidhuber, and F. Cummins. Learning to forget: Continual prediction with lstm. 1999.
  • [6] C. Gormley and Z. Tong. Elasticsearch: The Definitive Guide: A Distributed Real-Time Search and Analytics Engine. O’Reilly Media, Inc., 2015.
  • [7] M. Hadi Kiapour, X. Han, S. Lazebnik, A. C. Berg, and T. L. Berg. Where to buy it: Matching street clothing photos in online shops. In Proceedings of the IEEE international conference on computer vision, pages 3343–3351, 2015.
  • [8] E. Jang, S. Gu, and B. Poole. Categorical reparameterization with Gumbel-Softmax. arXiv preprint arXiv:1611.01144, 2016.
  • [9] Y. Jing, D. Liu, D. Kislyuk, A. Zhai, J. Xu, J. Donahue, and S. Tavel. Visual search at pinterest. In Proceedings of the 21th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pages 1889–1898. ACM, 2015.
  • [10] G. Karypis. Recent advances in recommender systems: Sets, local models, coverage, and errors. In Companion of the The Web Conference 2018 on The Web Conference 2018, pages 1369–1369. International World Wide Web Conferences Steering Committee, 2018.
  • [11] K. Laenen, S. Zoghbi, and M.-F. Moens. Web search of fashion items with multimodal querying. In Proceedings of the Eleventh ACM International Conference on Web Search and Data Mining, pages 342–350. ACM, 2018.
  • [12] D. Manandhar, K. H. Yap, M. Bastan, and Z. Heng. Brand-aware fashion clothing search using cnn feature encoding and re-ranking. In Circuits and Systems (ISCAS), 2018 IEEE International Symposium on, pages 1–5. IEEE, 2018.
  • [13] T. Mikolov, K. Chen, G. Corrado, and J. Dean. Efficient estimation of word representations in vector space. arXiv preprint arXiv:1301.3781, 2013.
  • [14] A. Saha, M. Nawhal, M. M. Khapra, and V. C. Raykar. Learning disentangled multimodal representations for the fashion domain. In 2018 IEEE Winter Conference on Applications of Computer Vision (WACV), pages 557–566. IEEE, 2018.
  • [15] K. Simonyan and A. Zisserman. Very deep convolutional networks for large-scale image recognition. arXiv preprint arXiv:1409.1556, 2014.
  • [16] C. H. Teo, H. Nassif, D. Hill, S. Srinivasan, M. Goodman, V. Mohan, and S. Vishwanathan. Adaptive, personalized diversity for visual discovery. In Proceedings of the 10th ACM Conference on Recommender Systems, pages 35–38. ACM, 2016.
  • [17] F. Yang, A. Kale, Y. Bubnov, L. Stein, Q. Wang, H. Kiapour, and R. Piramuthu. Visual search at ebay. In Proceedings of the 23rd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pages 2101–2110. ACM, 2017.