KfoldRankRLS - GlobalRankRLS with Kfold cross-validation regularization parameter selection

class rlscore.learner.global_rankrls.KfoldRankRLS(X, Y, folds, kernel='LinearKernel', basis_vectors=None, regparams=None, measure=None, save_predictions=False, **kwargs)

Bases: rlscore.predictor.predictor.PredictorInterface

RankRLS: Regularized least-squares ranking. Wrapper code for selecting the regularization parameter automatically with K-fold cross-validation.

Parameters:
X : {array-like, sparse matrix}, shape = [n_samples, n_features]

Data matrix

Y : {array-like}, shape = [n_samples] or [n_samples, n_labels]

Training set labels

kernel : {‘LinearKernel’, ‘GaussianKernel’, ‘PolynomialKernel’, ‘PrecomputedKernel’, …}

kernel function name, imported dynamically from rlscore.kernel

basis_vectors : {array-like, sparse matrix}, shape = [n_bvectors, n_features], optional

basis vectors (typically a randomly chosen subset of the training data)

regparams : {array-like}, shape = [grid_size] (optional)

regularization parameter values to be tested, default = [2^-15,…,2^15]

Other Parameters:
 
Typical kernel parameters include:
bias : float, optional

LinearKernel: the model is w*x + bias*w0, (default=1.0)

gamma : float, optional

GaussianKernel: k(xi,xj) = e^(-gamma*<xi-xj,xi-xj>) (default=1.0) PolynomialKernel: k(xi,xj) = (gamma * <xi, xj> + coef0)**degree (default=1.0)

coef0 : float, optional

PolynomialKernel: k(xi,xj) = (gamma * <xi, xj> + coef0)**degree (default=0.)

degree : int, optional

PolynomialKernel: k(xi,xj) = (gamma * <xi, xj> + coef0)**degree (default=2)

Notes

RankRLS algorithm is described in [1,2].

[1] Tapio Pahikkala, Evgeni Tsivtsivadze, Antti Airola, Jorma Boberg and Tapio Salakoski Learning to rank with pairwise regularized least-squares. In Thorsten Joachims, Hang Li, Tie-Yan Liu, and ChengXiang Zhai, editors, SIGIR 2007 Workshop on Learning to Rank for Information Retrieval, pages 27–33, 2007.

[2] Tapio Pahikkala, Evgeni Tsivtsivadze, Antti Airola, Jouni Jarvinen, and Jorma Boberg. An efficient algorithm for learning to rank from preference graphs. Machine Learning, 75(1):129-165, 2009.

Attributes:
predictor : {LinearPredictor, KernelPredictor}

trained predictor

cv_performances : array, shape = [grid_size]

K-fold performances for each grid point

cv_predictions : list of 1D or 2D arrays, shape = [grid_size, n_folds]

predictions for each fold, shapes [fold_size] or [fold_size, n_labels]

regparam : float

regparam from grid with best performance

predict(X)

Predicts outputs for new inputs

Parameters:
X : {array-like, sparse matrix}, shape = [n_samples, n_features]

input data matrix

Returns:
P : array, shape = [n_samples, n_tasks]

predictions