1
$\begingroup$

Next week I'm going to begin prototyping a recommendation engine for work. I've implemented/completed the Netflix Challenge in Java before (for college) but have no real idea what to use for a production/enterprise level recommendation engine. Taking into consideration everything from a standalone programming language to things like Apache Mahout and Neo4j, does anyone have any advice on how to proceed?

$\endgroup$
1
  • $\begingroup$ This is fairly broad, and generally questions asking for recommended tools are off topic on StackExchange. I'd suggest stating more about the nature of your requirements and asking specific questions about tools if possible, to get more specific and useful responses. $\endgroup$
    – Sean Owen
    Oct 4 '14 at 10:15
0
$\begingroup$

If you merely want to scale up a simple collaborative filter (low rank matrix factorization), I'd suggest looking at graphlab. Another graph-based (or should I say Giraph?) solution is Okapi. Spark's MLLib is another option (details), and it also supports implicit feedback out of the box. Mahout's behind the curve today; I wouldn't bother with it until it is migrated to Spark.

If you want to do something that the libraries don't do, say with regularization, you'll have to roll your own solution in your general purpose programming language of choice. It's not hard to get a prototype running, but you might run into scale problems in production; that's why I recommended solutions that scale easily.

There are also black box recommender systems from commercial vendors but I have no experience with those.

$\endgroup$
1
$\begingroup$

I am developing a recommendation engine for stack overflow (personal project). Check it on http://recommender.im .

It is still a working in progress, but I have a quite functional website working. I am putting there most of the code I used through python notebooks.

Basically I used:
- Frontend: angularJS
- Website backend: flask + scikit-learn
- machine learning and data preparation: python, pandas, scikit-learn

I really like python for data science as the community and libraries are really good.

$\endgroup$
1
  • $\begingroup$ I really like your engine, it gave me great recommendations for related topics. Well done. $\endgroup$
    – uspowpow
    Oct 10 '14 at 17:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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