Chair of Artificial Intelligence and Machine Learning

Breadcrumb Navigation


Implementation of Plackett-Luce-based Methods for Dyad Ranking (Ba)

Topic for a bachelor's thesis

Short Description:

Label ranking is a specific type of preference learning problem, namely the problem of learning a model that maps instances to rankings over a finite set of predefined (choice) alternatives [1]. These alternatives are identified by their name or label while not being characterized in terms of any properties or attributes that could be potentially useful for learning. The dyad ranking problem is a generalization of the label ranking problem, where the instances and additionally also the alternatives are represented in terms of attributes. Here, the key notion of a dyad refers to a combination of an instance and an alternative attribute. In [2] a dyad ranking learner, called BilinPL, is proposed by (i) representing dyads in terms of a Kronecker product of the instance and label attributes and (ii) maximizing the likelihood-function of a bilinear Plackett-Luce model by means of the majorization-maximization algorithm. The bilinear Plackett-Luce is an extension of a statistical model used for label ranking taking the additional information of the alternatives into account. In a subsequent work [3] the bilinear Plackett-Luce model was combined with neural networks (feed-forward multi-layer perceptrons) in order to learn joint-feature representations for the dyads. This method, called PLNet, allows for learning a (highly nonlinear) joint feature representation of the dyads and shows promising empirical results.

While the original papers provide an implementation of the two approaches in Java and Matlab, there is only a rudimentary implementation available in Python. However, this is somewhat unsatisfactory since Python has now become a standard programming language in the field of machine learning, especially due to its popular scikit-learn package for machine learning applications [4]. Accordingly, it would be highly desirable to have both methods available in Python in a welldocumented package that is compatible with the scikit-learn API. Another goal would be to reproduce the results of the experimental studies in the original papers. Finally, in [3] a method for the visualization of dyad rankings is proposed, which is based on the technique of multidimensional unfolding [5]. Therefore, another goal of the thesis would be to implement this visualization method in the Python package as well.


Solid background in machine learning, especially supervised learning (e.g., classification, regression) and experimental evaluation, programming skills (Python).


Dr. Viktor Bengs, or Prof. Eyke Hüllermeier


  • [1] Y. Zhou, Y. Liu, J. Yang, X. He and L. Liu. A taxonomy of label ranking algorithms. Journal of Computers, vol. 9, no. 3 (2014): 557-565.
  • [2] D. Schäfer and E. Hüllermeier. Dyad ranking using a bilinear Plackett-Luce model. In Joint European Conference on Machine Learning and Knowledge Discovery in Databases: 235- 256, 2015.
  • [3] D. Schäfer and E. Hüllermeier. Dyad ranking using Plackett–Luce models based on joint feature representations. Machine Learning 107 (2018): 903-941.
  • [4] (visited on Dec. 2, 2022).
  • [5] I. Borg and P. Groenen. Modern multidimensional scaling: Theory and applications. New York: Springer, 2005.