Thursday, April 26, 2012

Git mergetool kdiff3 setting for Mac

[difftool "kdiff3"]
    path = /Applications/
    trustExitCode = false
    prompt = false
    tool = kdiff3
[mergetool "kdiff3"]
    path = /Applications/
    trustExitCode = false
    keepBackup = false
    tool = kdiff3

Wednesday, April 11, 2012

Tuesday, April 10, 2012

Monday, April 9, 2012

Collaborative Filtering Resources, Java

I was doing collaborative filtering based on a large dataset. However the performance is not making me feel happy, so I am gonna switch to some third party library.

Other than Apach Mashout Tast, there are a few other:

  • Cofi - The library is used as part of the RACOFI web site which is a live Music Recommender site.
  • CoFE - CoFE is short for "COllaborative Filtering Engine". CoFE was formerly known as CFEngine. CoFE will run as a server to generate recommendations for individual items, top-N recommendations over all items, or top-N recommendations limited to one item type. Recommendations are computed using a popular, well-tested nearest-neighbor algorithm (Pearson's algorithm). CoFE can be integrated with any system that supports Java. User data is stored in MySQL.
  • Taste - Taste is a flexible, fast collaborative filtering engine for Java. Taste provides a rich set of components from which you can construct a customized recommender system from a selection of algorithms. Taste supports both memory-based and item-based recommender systems, slope one recommenders, and a couple other experimental implementations. It does not currently support model-based recommenders.
  • Alkini Meme - Users express their tastes by assigning ratings to products. To model users so that they can be grouped together, Alkindi represents them geometrically as vectors in a high-dimensional space. The coordinate axes of this space correspond to products; the coordinates of the point representing a user are that user’s ratings of those products. Alkindi partitions its existing user base into clusters using “K-means”, a statistical algorithm that maximizes the geometric tightness of the clusters. Alkindi has developed a novel metric that smoothly integrates all available data. This helps alleviate the sparse data problem.
  • RACOFI - RACOFI (Rule-Applying Collaborative Filtering) ia multidimensional rating system. It has been used where users rate contemporary music in the five dimensions of impression, lyrics, music, originality, and production. The collaborative filtering algorithms STI Pearson, STIN2, and the Per Item Average algorithms are employed together with RuleML-based rules to recommend music objects that best match user queries. The music rating system has been on-line since August 2003 at
  • iRate - iRATE radio is a collaborative filtering system for music. You rate the tracks it downloads and the server uses your ratings and other people's to guess what you'll like.
  • SWAMI - SWAMI is a framework for running collaborative filtering algorithms and evaluating the effectiveness of those algorithms. It uses the EachMovie dataset, generously provided by Compaq.