Industry

Media/publishing

Use case

User-generated content tagging

Result

10x images tagged, time saved

StyleMePretty.com is a premier online destination for wedding inspiration, garnering over 25 million views a month. It began in 2005 as a blog featuring gorgeous, style-savvy, real weddings. Now, Stylemepretty is making the leap from wedding blog to wedding platform with features like image search, portfolios, vendors, and resources for weddings.

Tait Larsontait is the fearless founder and technical guru of stylemepretty.com and runs development, operations, and all things technical. His background is in Computer Science with an undergraduate degree from Vanderbilt and a masters from Stanford (NBD!).

Challenge

With over 2.5 million images, including tens of thousands of user submissions every day, Stylemepretty needed a way to handle the constant flow of inbound images. But, there are two major challenges with understanding and organizing user generated content:
1. HIGH VOLUMES: How do you know what you’re getting from user-generated content?

Stylemepretty receives six hundred weddings a week from professional photographers, wedding vendors, and brides, with anywhere from 150 to 250 photos per wedding! Some of the images they receive have captions, but most come with no information or unreliable metadata attached. At such volumes, it’s nearly impossible to go manually through each image and categorize it appropriately.

2. VALUE EXTRACTION: Once you know what the content is, what do you do with it?

Once you have an understanding of your content, you need to put your knowledge into action. For Stylemepretty, that meant finding a way to organize and curate relevant photos to their users across all their marketing channels, not just their website.

“Using Clarifai’s visual recognition solution, we’re now able to collect and analyze 10x as many images as we did using manual tagging. Clarifai scales with us as we grow, so the returns will be even higher in the future.” – Tait Larson, founder of Stylemepretty.com

Solution

Stylemepretty uses Clarifai’s visual recognition solution to scale their business from a wedding blog to a wedding platform.

When a user uploads an image to Stylemepretty’s platform, Clarifai automatically applies relevant tags to the image. Not only does this save time and resources, it also allows Stylemepretty to scale its content operations and improve its visual search solution.

In a week, Stylemepretty receives around 600 weddings and 100,000 images from wedding vendors. Out of all the user submissions, they are able to publish about 50 weddings or 10,000 images with manual tagging. With Clarifai, Stylemepretty is able to tag the full 100,000 uploads to build a bigger, better visual search solution in the weddings space. Automatic tagging is also a building block to increase editorial capacity.

Implementation

Getting smarter together

Stylemepretty uses two layers of review for user-generated content – Clarifai does the initial tagging and then passes the results onto a human curator to vet. The human curator classifies tags as relevant or not relevant, which then feeds back into Clarifai’s algorithm. Because of this feedback loop, Clarifai’s accuracy and results are constantly improving to fit Stylemepretty’s unique needs.

“Clarifai is a way for man and machine to work together to achieve the best results.”

Enhancing a multi-channel content strategy

With automated tagging from Clarifai, Stylemepretty has the opportunity to collect a lot more images and curate on top of them. A deeper understanding of their content allows Stylemepretty to enhance search curation by returning more relevant results to visitors, and also help their human editors develop more content supported by better visuals.

“Clarifai has allowed us to explore our own data very well and push it to other channels like social media.”

But, a publisher’s website isn’t the only channel they have to feed with great content. Stylemepretty also maintains popular Instagram, Facebook, Twitter, YouTube, Tumblr, and Pinterest accounts. In order to find the right content for each of these social media channels, Stylemepretty uses Clarifai to explore their collection of images and choose exactly the right image for the right campaign:

Quick and easy implementation

Stylemepretty’s founder, Tait Larson, implemented Clarifai for its accuracy, flexibility, and affordability after exploring several different machine learning options.

He evaluated out-of-the-box solutions like the Alchemy API and found them to be “nowhere near accurate.” He also looked at Amazon’s Mechanical Turk but found it to be very expensive for his desired workflow – three to five times as expensive as Clarifai – with limited capabilities.

“There are a lot of hidden costs associated with implementing a machine learning pipeline. I was looking for a clean API like Clarifai that would give me a flexible solution with the accuracy and specificity that we needed out-of-the-box, and where we would avoid technical debt.”

With a team of four developers, Tait wrote the initial PHP for both Clarifai’s feedback API and the regular API. He and his team also built an internal tool that provided a user interface for their needs. It took only a couple hours of developer time to get Stylemepretty.com up and running with Clarifai!

DIY with Clarifai

Now that you’ve been inspired by Stylemepretty’s solution, it’s time to build your own. Clarifai’s core model includes tags for over 11,000 concepts you can apply to your business. All it takes is three simple lines of code – sign up for a developer API account to get started for free!

Once you’ve signed up for a developer account, head over to Applications and make a new one.  Make sure you nab that Client ID and Client Secret:

image03

Now, head over to https://github.com/clarifai/clarifai-nodejs. There, you’ll find our Node.js client, which makes this process even easierTo set up your environment, download the clarifai node.js file and stick it in your project.

Boo yah. You’re set up. Now head over to your Node project and just require the Clarifai client:

var Clarifai = require('./YOUR_PATH_HERE/clarifai_node.js');

Remember that Client ID and Client Secret you nabbed earlier? We’re gonna use those now. You can either paste them in this function directly, or save them in an environment variable.

Clarifai.initAPI('YOUR_CLIENT_ID', 'YOUR_CLIENT_SECRET');

Now for the fun part. You can easily tag an image with just 3 lines of code:

var imageURL = 'MY_IMAGE_URL';
var ourId = 'my great image'; // any string that identifies the image to your system
Clarifai.tagURL(imageURL, ourId, handler); // “handler” is your basic error handler function

You’re all set! Now you can easily make like Yelp and tag and sort your images to your heart’s desire. If you’d like to see a more in-depth example, check out clarifai_sample.js in the GitHub repo.