diff --git a/docs/docs/index.xml b/docs/docs/index.xml index 79fe456a3..74f67d05c 100644 --- a/docs/docs/index.xml +++ b/docs/docs/index.xml @@ -149,6 +149,7 @@
  • Structural SVM tools for solving assignment problems
  • Structural SVM tools for object detection in images
  • Structural SVM tools for labeling nodes in graphs
  • +
  • A large-scale SVM-Rank implementation
  • An online kernel RLS regression algorithm
  • An online SVM classification algorithm
  • An online kernelized centroid estimator/novelty detector and diff --git a/docs/docs/ml.xml b/docs/docs/ml.xml index 47896f231..527003d4b 100644 --- a/docs/docs/ml.xml +++ b/docs/docs/ml.xml @@ -13,7 +13,7 @@ This page documents all the machine learning algorithms present in the library. In particular, there are algorithms for performing classification, regression, clustering, sequence labeling, assignment learning, - graph segmentation, object detection, anomaly detection, + rank learning, graph segmentation, object detection, anomaly detection, and feature ranking, as well as algorithms for doing more specialized computations.

    @@ -116,6 +116,7 @@ Davis E. King. cross_validate_sequence_labeler cross_validate_assignment_trainer cross_validate_graph_labeling_trainer + cross_validate_ranking_trainer test_binary_decision_function test_multiclass_decision_function test_regression_function @@ -165,6 +167,7 @@ Davis E. King. compute_mean_squared_distance kernel_matrix sparse vectors + ranking_pair + is_ranking_problem + count_ranking_inversions @@ -337,6 +343,20 @@ Davis E. King. dlib/svm/ranking_tools_abstract.h + + This object is used to contain a ranking example. Therefore, ranking_pair + objects are used to represent training examples for learning-to-rank tasks, + such as those used by the svm_rank_trainer. + + + + + + kernel_matrix dlib/svm.h @@ -350,6 +370,34 @@ Davis E. King. dlib/svm/ranking_tools_abstract.h + + This function takes a set of training data for a learning-to-rank problem + and reports back if it could possibly be a well formed problem. + + + + + + + + count_ranking_inversions + dlib/svm.h + dlib/svm/ranking_tools_abstract.h + + Given two sets of objects, X and Y, and an ordering relationship defined + between their elements, this function counts how many times we see an element + in the set Y ordered before an element in the set X. Additionally, this + routine executes efficiently in O(n*log(n)) time via the use of quick sort. + + + + @@ -1092,6 +1140,28 @@ Davis E. King. dlib/svm/svm_rank_trainer_abstract.h + + This object represents a tool for training a ranking support vector machine + using linear kernels. In particular, this object is a tool for training + the Ranking SVM described in the paper: +
    + Optimizing Search Engines using Clickthrough Data by Thorsten Joachims +
    + Finally, note that the implementation of this object is done using the +
    oca optimizer and + count_ranking_inversions method. + This means that it runs in O(n*log(n)) time, making it suitable for use + with large datasets. + + + + @@ -2229,6 +2299,20 @@ Davis E. King. dlib/svm/ranking_tools_abstract.h + + Performs k-fold cross validation on a user supplied ranking trainer object such + as the svm_rank_trainer + and returns the fraction of ranking pairs ordered correctly. + + + + @@ -2274,6 +2358,19 @@ Davis E. King. dlib/svm/ranking_tools_abstract.h + + Tests a decision_function's ability to correctly + rank a dataset and returns the resulting ranking accuracy. + + + + diff --git a/docs/docs/term_index.xml b/docs/docs/term_index.xml index 6d89701b4..143314753 100644 --- a/docs/docs/term_index.xml +++ b/docs/docs/term_index.xml @@ -250,6 +250,7 @@ + @@ -278,6 +279,12 @@ + + + + + +