In this blog post we’ll walk through some of the ways we are using machine learning to understand our users individual style, which we call a Style Profile, to recommend more personalized products and outfits.
When we first started building each user’s Style Profile, we quickly realized how tricky quantifying fashion can be. It’s intangible, means different things for different people and even when most people might own the same black shirt, they might wear it in completely different ways. Luckily, Polyvore is uniquely positioned to understand personal style through our users rich interactions on Polyvore, including:
- Global factors: occasions, trends, seasonality and other contextual information
- Catalog data: rich and high-quality metadata of products from our retail partners
- Product data: product likes and dislikes, collections of products, products viewed and search queries
- Shopper behavioral data: impressions, likes, outbound clicks while they are interacting with products, sets and other curated content
- Community data: Our global community has generated billions of data points that helps us understand the relationship between retail products. Every time a user creates a set, they are implying that those products go together and share the same style.
From a technology standpoint, a user’s Style Profile can be represented with a vector in a high-dimensional space and the component for each dimension, indicating the strength of their preference in a particular aspect or a combination of multiple aspects in fashion. The following is a simplified representation of two users’ style profile on combinations of color, category, material and brand:
|Figure 1: Style profiles|
- Style Space Definition: a high dimensional space where any point represents the style of a user or product that is subject to constraints that points with similar style should be closer to each other than those with different tastes.
- Style Vector Definition: the coordinates in the Style Space denote the taste vector for that particular user or product.