Building Recommender Systems in Java
Duration: 5 Days
Course Background
This course focuses on the theory and practice of implementing recommender systems in Java. It is aimed at Java developers who will be embarking on their first recommender application project, or those who wish to evaluate approaches to developing recommender systems in Java. Starting from basic recommender implementations the implementation of more complex recommender systems using java recommender frameworks such as Lenskit and Duine, as well Mahout and Java will be explored. The jHEPWork framework for scientific data analysis and its use in developing recommender systems will also be explored.
Course Prerequisites and Target Audience
Attendees are assumed to be reasonably experienced Java programmers and to have a basic knowledge of statistics, relational databases and SQL.
Course Outline
- Reommender systems - Brief History and Overview
- Commercial and Social Aspects of Recommender Systems
- Recommender Systems - Basic Concepts
- Mastering Java Data Analysis
- jHepWork - an overview
- Scripting languages supported by jHepWork
- Statistical and scientific data analysis using jHepWork
- Apache Mahout
- History and overview
- Machine learning capabilities of Mahout
- Extending Mahout with Java
- Collaborative Recommendation
- User Based Nearest Neighbour Recommendation
- Item Based Nearest Neighbour Recommendation
- Ratings - Types and Scales
- Model based apparoaches
- Pre-processing based approaches
- Implementing a simple recommender using Java and Mahout
- Content Based Recommendation
- Content representation and content similarity
- Similarity-based retrieval
- Advanced text retrieval methods
- Implementing a simple content based recommender system using k-means clustering and Mahout
- Knowledge Representation and Reasoning based Recommenders
- Constraint based recommenders
- Case based recommenders
- Java Recommender Frameworks - Examples and Case Studies
- Lenskit
- Mahout based
- Semantic web and ontology based
- Recommenders - Advanced Topics
- Hybrid recommender systems
- Explainers and recommender systems
- Recommender System Evaluation
- Attacks on Recommender Systems and Defences against such attacks
- Psychology of Online Consumer Decision Making
- Semantic Web and Ontology base filtering
- Extracting Ontologies from the Web
- Context Aware Recommendations