Personal Cross-Site Movie Recommender System Implemented as Mozilla Firefox Add-On

Online stores or Web page bring information about a myriad of items such as books, CDs, restaurants or movies at the user’s fingertips. Although, the Web reduces the barrier to the information, the user is overwhelmed by the number of available items. Therefore, online stores provide recommender systems that aim to guide the user to relevant items. However, recommender systems are generally limited to the Web page’s content and the explicit or implicit ratings provided by the users on the particular Web page. User are lazy when it comes to repeat providing rating information to recommender systems on other Web pages. That is a typical lock-in situation based on high transaction costs such that people are addicted to one or at least a limited number of Web pages.

People are required to have an account on a particular Web page before being provided with interesting recommendations. People may have concerns about providing explicit or implicit ratings on items that may expose some delicate details about their privacy. But many rather small online stores do not even provide recommendations.

Thus, we need a recommender system that (1) recognizes items over various Web pages as the same and remembers the ratings for those, (2) applies algorithms to provide recommendations and (3) smoothly integrates the rating and recommendation functionality directly in the Web site. We found the basic infrastructure for such a recommender system in the Firefox Add-on API and WEKA, a common data mining library.
We formulated these requirements as a master thesis. We were very happy to engage Tobias, an excellent master student.

The described recommender system implemented as Firefox Add-on can be downloaded at s.e.a.l. group site.


Online stores and Web portals bring information about a myriad of items such as books, CDs, restaurants or movies at the user’s fingertips. Although, the Web reduces the barrier to the information, the user is overwhelmed by the number of available items. Therefore, recommender systems aim to guide the user to relevant items. Current recommender systems store user ratings on the server side. This way the scope of the recommendations is limited to this server only. In addition, the user entrusts the operator of the server with valuable information about his preferences.

In this thesis, we introduce our recommender system OMORE, a private, personal movie recommender, which learns the user model based on the user’s movie ratings. To preserve privacy, OMORE is implemented as a Mozilla Firefox add-on, which stores the user’s ratings and the learned user model locally at the client side. Although OMORE makes use of the movie features, which are provided by the different movie pages on the, Blockbuster, Netflix and Rotten Tomatoes.

Tobias Bannwart: “OMORE – Private, Personal Movie Recommendations implemented in a Mozilla Firefox Add-on“, ed. by Amancio Bouza, Gerald Reif and Harald C. Gall, University of Zurich, July 2009. (master thesis)


Probabilistic Partial User Model Similarity for Collaborative Filtering

Our current work on a probabilistic approach to compute partial user preference similarities was accepted and published at the 1st International Workshop on Inductive Reasoning and Machine Learning for the Semantic Web (IRMLeS) at the 6th European Semantic Web Conference (ESWC) 2009. The paper is available online at as volume 474. The presentation is available at the IRMLeS Web page.

The general idea is that people may share similar preferences only partially. For instance, a person may like Italian food like another person but not Chinese food. But the other person does like Chinese food. Traditional collaborative filtering computes global preference similarity and fail detect this relation. Our approach computes is able to compute partial preference similarities on the basis of hypothesized user preferences. The hypothesized user preferences are learned applying traditional machine learning algorithms. We could show, that our approach performs significantly better then traditional user-based collaborative filtering. Especially in cases where people have only few common rated items. The strength of our approach are the use of partial preference similarities and using hypothesized user preferences instead of item ratings that are always biased.

It was my first real presentation at a conference and it was a great success. I got very positive feedback on it. But I also noticed that a too fancy presentation may irritate some people. Well, I just had the new version of Keynote installed on my Mac and thus, I had to try out the new fancy features. This workshop was one of the most successful at the this year’s ESWC measured by number of participants. I also enjoyed the workshop dinner where I participated interesting discussion on artificial intelligence, data mining in practice, football and Shakespeare.

At the conference, I got in touch with some very interesting people. Especially at the very well organised poster session and after the conference dinner. Unfortunately, it was the last European Semantic Web Conference because the organizers decided to have the industry as main target. Thus, the abbreviation of ESWC stands now for the Extended Semantic Web Conference.


Recommender systems play an important role in supporting people getting items they like. One type of recommender systems is user-based collaborative filtering. The fundamental assumption of user-based collaborative filtering is that people who share similar preferences for common items behave similar in the future. The similarity of user preferences is computed globally on common rated items such that partial preference similarities might be missed. Consequently, valuable ratings of partially similar users are ignored. Furthermore, two users may even have similar preferences but the set of common rated items is too small to infer preference similarity. We propose first, an approach that computes user preference similarities based on learned user preference models and second, we propose a method to compute partial user preference similarities based on partial user model similarities. For users with few common rated items, we show that user similarity based on preferences significantly outperforms user similarity based on common rated items.


In the following, you can watch my paper presentation I gave at the IRMLeS workshop:

Presentation at the IRMLeS workshop


We include the papers on this page to ensure timely dissemination on a non-commercial basis. Copyright and all rights therein are maintained by the authors or by other copyright holders, notwithstanding that they have offered their works here electronically. It is understood that all persons copying this information will adhere to the terms and constraints invoked by the copyrights. These works may not be reposted without the explicit permission of the copyright holder.

Starting as PhD Student in the Area of Recommender Systems and Semantic Web Technologies

I’m starting my PhD in July. I’m associated with two research groups from the Department of Informatics at the University of Zurich. That are the Software Evolution and Architecture Lab (s.e.a.l.) headed by Prof. Harald C. Gall and the Dynamic and Distributed Information Systems (DDIS) headed by Prof. Bernstein. I’m lucky to start working on the hot topic of recommender systems. The overall goal of the joint work with an industry partner is the development of a web-based location recommender system. This project is partially supported by the CTI (commission of technology and innovation) because of its high potential use in different areas like tourism. The CTI is the national agency for innovation. The CTI supports the knowledge transfer between companies and universities to create innovation and not just inventions.

Well, I’m extremely happy and proud having this chance to promovate advised by excellent advisors even if I get payed less then I would get in the industry. But who cares about money, right?. What I looked for was a great challenge that only a PhD can provide.

Kick-Off Meeting of the Localina project

Kick-Off Meeting of the Localina project