How can I create new funny pictures?

How can I create a pictures recommendation system?

  • I have an app which provides wallpapers to users. They can choose the picture they like. To make the system more clever, the user can "like" the picture if they love this picture. So how can I create a pictures recommendation system? I only have the "like data". I plan to give tags to all the pictures. Then we will recommend the tags that the user likes. Am I right? Are there better ideas?

  • Answer:

    This is a classic collaborative filtering problem. You have so-called "implicit" data, as likes, and not ratings. That's fine. You do not even need tags; the likes can be enough. Although I would strongly encourage you to use clicks as weak "likes". You will have much more click data and will mine a lot of value from it, and I suspect you will not have much like data at first. As to how to architect it, that is a very big question. At small scale, I might refer you to the parts of Apache Mahout that are not distributed -- the org.apache.mahout.cf.taste package, describe in Mahout in Action. This is an easy way to make a small embedded recommender in Java. If you mean to architect for large scale, my best answer is to point you to my follow-up project, Oryx. It is more complex, but exactly suited to your implicit data use case, and does not need Hadoop either. The architecture is discussed briefly too: https://github.com/cloudera/oryx

Sean Owen at Quora Visit the source

Was this solution helpful to you?

Other answers

You can tweak the algorithm to allow the users to apply the wallpaper to there home screen, and then judge a picture by the no of times it has been used by the users as wallpaper. Because i think there is a lot of difference between liking a picture and setting it as a wallpaper. A pictures does not wants to keep all the pictures that he likes as wall paper. I hope that helps.

Harsh Gupta

Related Q & A:

Just Added Q & A:

Find solution

For every problem there is a solution! Proved by Solucija.

  • Got an issue and looking for advice?

  • Ask Solucija to search every corner of the Web for help.

  • Get workable solutions and helpful tips in a moment.

Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.