Giter VIP home page Giter VIP logo

tutorial_msrs's Introduction

Tutorial: Multi-Stakeholder Recommender Systems (MSRS)

Introduction


Recommender systems are able to produce a list of recommended items tailored to user preferences, while the end user is the only stakeholder in the system. However, there could be multiple stakeholders in several applications or domains, e.g., e-commerce, advertising, educations, dating, job seeking, and so forth. It is useful to produce the recommendations by balancing the needs of different stakeholders. This tutorial covers the introductions to multi-stakeholder recommender systems (MSRS), introduces multiple case studies, discusses the corresponding methods and challenges to develop MSRS. Particularly, a demo based on the MOEA framework will be given in the talk.

Demo


The demo shows case of utility-based multi-stakeholder recommendations by using an educational data as case study.

  • Setting: To simplify the problem, the demo performs a hold-out evaluation by using 70% as training and 30% as testing. Recommendation performance was evaluated based on F1 and NDCG over the top-N recommendations, while you can change the value of N in the configuration file "setting.conf". Items with rating > 3 are considered as "relevant" items in the top-N recommendations.
  • MOEA: In terms of the multi-objective optimizers (MOO), we use the library MOEA. We use the default learning parameters in MOEA. To further tune up the models, change the source codes by referring to the Beginner's guide to the MOEA Framework
  • Baselines: UBRec refers to the utility-based multi-criteria recommendation model which considers student preferences only. Rankp refers to the simple ranking based on the utility of items from the perspective of instructors or professors only. These baseline approaches will produce different objectives as shown at the end in the setting.conf
  • How to run: Change the setting in setting.conf, and run "java -jar UBMSRS.jar -c setting.conf" by using JRE 8 or above

Setting.conf


  • data.path: tell the demo where you data sets are. Make sure all necessary data are in the same folder.
  • expectation.learn: turn on to learn student expectations by using MOO. Otherwise, load student expectations
  • runbaseline: demo will run baseline approaches first, if it is turned on
  • expectation.filename: assign the file of student expectations you want to load
  • topN: assign the value of N for top-N recommendations
  • maxeval: assign the maximal number of evaluations in the MOO
  • maxf1, maxndcg, ...: these are the best performance from the baseline approaches. You do not need to change these values unless you found better baseline results

Data Sets


Data files and explanations

  • ratings_student.csv and ratings_instructor.csv are the raw rating data given by students and the instructor respectively
  • ratings_student_train.csv and ratings_student_test.csv are the splitted data by using 70% as training and 30% as testing
  • ratings_student_candidates.csv contains the pair of users and items, while the items are the candidate items to be recommended according to the train/test split. We have used the independent biased matrix factorization to predict the multi-criteria ratings in <App, Data, Ease> in this data.
  • expectations_student_learned_by_UBRec_NDCG_0.214.csv is the file of learned student expectations by using the baseline UBRec. The optimal NDCG is 0.214. You can also save a new one if you can learn better expectations.

We collected this educational data for multi-stakeholder recommendations, and the information of student identifications have been removed. If you reuse this data for the purpose of research, please cite the following papers.

  • Yong Zheng, Nastaran Ghane, and Milad Sabouri. "Personalized Educational Learning with Multi-Stakeholder Optimizations." Adjunct Proceedings of the ACM conference on User Modelling, Adaptation and Personalization (UMAP). ACM. 2019.
  • Yong Zheng. "Multi-Stakeholder Personalized Learning with Preference Corrections." Proceedings of the 18th IEEE International Conference on Advanced Learning Technologies (ICALT). IEEE. 2019.

Tutorials


We have tutorials at ACM RecSys 2019 and ACM CIKM 2019.

  • Yong Zheng. "Multi-Stakeholder Recommendations: Case Studies, Methods and Challenges", Proceedings of the 13th ACM Conference on Recommender Systems, Copenhagen, Denmark, September 19th, 2019
  • Muthusamy Chelliah, Yong Zheng, Sudeshna Sarkar, Vishal Kakkar. "Recommendation for Multi-Stakeholders and through Neural Review Mining", Proceedings of the 28th ACM International Conference on Information and Knowledge Management (CIKM), Beijing, China, Nov, 2019

tutorial_msrs's People

Contributors

irecsys avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.