This document discusses machine learning algorithms for ranking problems. It introduces supervised learning to rank methods including pointwise, pairwise and listwise approaches. Pointwise methods predict relevance scores independently but don't consider order. Pairwise approaches consider relative order but have high computational costs. Listwise methods aim to optimize entire orderings but have complexity issues. Practical challenges include defining objective metrics, generating training labels, and handling new items with limited data. Semi-supervised learning and matrix factorization can help address labeling problems.