Markus Weimer, Alexandros Karatzoglou and Marcel Bruch

Abstract

Code recommender systems ease the use and learning of software frameworks and libraries by recommending calls based on already present code. Typically, code recommender tools have been based on rather simple rule based systems while many of the recent advances in Recommender Systems and Collaborative Filtering have been largely focused on rating data. While many of these advances can be incorporated in the code recommendation setting this problem also brings considerable challenges of its own. In this paper, we extend state-of-the-art collaborative filtering technology, namely Maximum Margin Matrix Factorization (MMMF) to this interesting application domain and show how to deal with the challenges posed by this problem. To this end, we introduce two new loss functions to the MMMF model. While we focus on code recommendation in this paper, our contributions and the methodology we propose can be of use in almost any collaborative setting that can be represented as a binary interaction matrix. We evaluate the algorithm on real data drawn from the Eclipse Open Source Project. The results show a significant improvement over current rule-based approaches.

Download PDF

BibTeX

@inproceedings{Weimer:2009, 
  author = {Markus Weimer and Alexandros Karatzoglou and Marcel Bruch}, 
  Booktitle = {RecSys '09: Proceedings of the 2009 ACM conference on Recommender systems}, 
  Title = {Maximum Margin Code Recommendation}, 
  Year = {2009}, 
}