You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mahout.apache.org by Felipe Martins <fe...@yahoo.com.br> on 2011/03/21 14:46:55 UTC

Proposal - Idealize Recommendation Framework

Hi everybody,

First and foremost, thank you very much for reading this e-mail.
My name is Felipe and I’m master student at Federal University of Ouro Preto 
(www.ufop.br) in the field of Information Retrieval. There we have a lab called 
Idealize where several projects in that field are hosted. One of these projects 
is the reason for this e-mail.
 
We have developed a project in partnership with upLexis Technology 
(http://www.uplexis.com.br/) in the area of recommender systems. Our intention 
has been to develop recommendation applications following different approaches, 
for which we decided first to put some effort into creating a framework for 
general-purpose recommender systems. This framework was named Idealize 
Recommendation Framework (IRF) after lab’s name. IRF has benefited a lot from 
Mahout, mainly Taste, which has provided us a ground from where the 
collaborative filtering features of our systems have been developed. We have 
reused practically all recommendation methods provided by Taste and our 
applications have been achieving exciting results. So here goes a “thank you 
very much” for all of you involved in the Mahout Project.
 
However, we have been facing several demands that ask for other approaches to be 
used, and unfortunately, collaborative filtering is not suitable for all of 
them. For instance, we have demands for recommending news, people based on their 
physical traits, products by their metadata and so on. Nevertheless, new 
recommendation approaches needed to be considered. 

 
As already stated, departing from Mahout(Taste), we have devised IRF for 
general-purpose recommender systems, that means, IRF is intended to support 
recommendation applications based in any approach. IRF is both a conceptual and 
a software framework, and we have achieved remarkable reduced time-to-market for 
new applications developed on top of IRF as well as very good performance in 
production environment due to the following:
 
. IRF allows the notion of a process so that the required steps to create new 
applications are already well established;
. IRF devises a production model which improves overall performance in a very 
exciting way;
. IRF architecture allows a great deal of reuse;
 
Also, we are currently developing chart and report components to integrate with 
IRF, as well as tools for automatically deploy, an Eclipse plug-in to 
automatically create the hotspots for each sector (see attached file), and, of 
course, new methods and applications.

 
We have already developed several applications based on different approaches on 
top of IRF. We have content-based applications, usage-based applications and 
hybrid ones.
 
After being successful in developing and deploying recommender systems, we 
decided it would be great and fair to make IRF available so that the community 
could benefit from it, exactly the same way we benefited from open-source 
software to develop IRF.
 
As we make extensive use of Apache software (Mahout because of Taste and machine 
learning algorithms, Lucene, Hadoop and HBase to assist recommendation methods, 
Nutch and Tika to collect metadata from Web, Tomcat as the container holding the 
recommendation applications, Ant as a deploy tool, and even Struts and Tiles 
when we develop the front-end), nothing more natural than considering Apache the 
first place to make IRF available.
 
I’ve already exchanged some e-mails with Sean Owen, who kindly elucidated me 
about several issues regarding Apache projects and suggested me to send this 
e-mail in order to collect community’s impressions and insights. 

 
As IRF builds on Taste, we, at Idealize lab, guess it could maybe be contained 
within Mahout, as a Taste’s “brother”, for instance. 

 
We wrote a paper about IRF which was accepted by the 14th International ACM 
SIGSOFT Symposium on Component Based Software Engineering, which will take place 
in Boulder, Colorado, next June. The paper is attached so that you can have 
deeper access to the technical issues. 

 
Finally, we have a great team here at Idealize lab. All the members of our team 
are very excited about the possibilities with IRF and would become a very strong 
initial workforce.
 
I’d like to thank you all for reading this e-mail and say that we, at Idealize 
lab, are very hopeful about IRF and waiting to hear from you.
 
Best regards,
 
Felipe.