I am interested in a framework for learning the similarity of different input representations based on some common context. I have looked into word2vec, SVD and other recommender systems, which does more or less what I want. I want to know if anyone here has any experience or resources on a more generalized version of this, where I am able to feed in representations on different objects, and learn how similar they are.

For example: Say we have some customers we are sending different advertisements to, and I would like to create a system to map offers to customers. I am thinking in the lines of creating a customer representation, and a representation of the offers, and feeding them in parallel to a neural network that has a label of whether they acted on the advertisement or not. The idea is that I should be able to locate the best offer for any customer given these representations.

I have looked into siamese networks and word2vec, both are close to what I want. The problem differs slightly in that for the siamese networks, there are identical parallel networks, which I don't want because my inputs are not equivalent. Word2vec type methodology is also close, but I would want a model to process the inputs on "both sides". A combination of the two, is kind of what I am looking for.

If anyone has any resources on a similar problem statement, I would be very interested in it.



1 Answer 1


You could use a collaborative filtering approach, ie. train a network that learns your customer and offer embeddings in a latent space.
You could randomly initialize a customer embedding matrix (no_of_customers, dimensions_c) and an offer embedding matrix (no_of_offers, dimensions_o).

Your training data would be each click, a customer index, offer index, and a binary variable (0,1) which would be used to lookup the embedding vectors. Then you could concat these vectors and use them as input to a fully-connected layer, or any other architecture you wish to use.

  • $\begingroup$ Thanks, I have tried this as well with some success using a bpr ranking-loss. $\endgroup$ Jul 17, 2019 at 15:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.