Class ConfidenceIntervalClusteringBasedActiveDyadRanker


  • public class ConfidenceIntervalClusteringBasedActiveDyadRanker
    extends ai.libs.jaicore.ml.ranking.dyad.learner.activelearning.ARandomlyInitializingDyadRanker
    A prototypical active dyad ranker based on clustering of pseudo confidence intervals. During the learning procedure, it keeps track over the standard deviation of the skill values predicted for a dyad. First a constant number of random queries is sampled at the beginning. Then the sampling strategy clusteres the skill values of all alternatives for each instance according to the lower and upper bounds of the confidence intervals of the skill for all corresponding dyads. Confidence intervals are given by [skill - std, skill + std] where skill denotes the skill and std denotes the empirical standard deviaition of the skill for a dyad. Afterwards, it picks one of the largest clusters and then selects the two dyads for which the confidence intervals overlap the most within the cluster for pairwise comparison, until a minibatch of constant size is filled.
    • Field Summary

      • Fields inherited from class ai.libs.jaicore.ml.ranking.dyad.learner.activelearning.ActiveDyadRanker

        poolProvider, ranker
    • Constructor Summary

      Constructors 
      Constructor Description
      ConfidenceIntervalClusteringBasedActiveDyadRanker​(ai.libs.jaicore.ml.ranking.dyad.learner.algorithm.PLNetDyadRanker ranker, ai.libs.jaicore.ml.ranking.dyad.learner.activelearning.IDyadRankingPoolProvider poolProvider, int seed, int numberRandomQueriesAtStart, int minibatchSize, weka.clusterers.Clusterer clusterer)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void activelyTrainWithOneInstance()  
      • Methods inherited from class ai.libs.jaicore.ml.ranking.dyad.learner.activelearning.ARandomlyInitializingDyadRanker

        activelyTrain, getDyadStats, getInstanceFeatures, getIteration, getMinibatchSize, getNumberRandomQueriesAtStart, getRandom, updateRanker
      • Methods inherited from class ai.libs.jaicore.ml.ranking.dyad.learner.activelearning.ActiveDyadRanker

        getPoolProvider, getRanker, setPoolProvider, setRanker
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ConfidenceIntervalClusteringBasedActiveDyadRanker

        public ConfidenceIntervalClusteringBasedActiveDyadRanker​(ai.libs.jaicore.ml.ranking.dyad.learner.algorithm.PLNetDyadRanker ranker,
                                                                 ai.libs.jaicore.ml.ranking.dyad.learner.activelearning.IDyadRankingPoolProvider poolProvider,
                                                                 int seed,
                                                                 int numberRandomQueriesAtStart,
                                                                 int minibatchSize,
                                                                 weka.clusterers.Clusterer clusterer)
    • Method Detail

      • activelyTrainWithOneInstance

        public void activelyTrainWithOneInstance()
                                          throws java.lang.InterruptedException
        Specified by:
        activelyTrainWithOneInstance in class ai.libs.jaicore.ml.ranking.dyad.learner.activelearning.ARandomlyInitializingDyadRanker
        Throws:
        java.lang.InterruptedException