Class PrototypicalPoolBasedActiveDyadRanker
- java.lang.Object
-
- ai.libs.jaicore.ml.ranking.dyad.learner.activelearning.ActiveDyadRanker
-
- ai.libs.jaicore.ml.ranking.dyad.learner.activelearning.ARandomlyInitializingDyadRanker
-
- ai.libs.jaicore.ml.ranking.dyad.learner.activelearning.PrototypicalPoolBasedActiveDyadRanker
-
public class PrototypicalPoolBasedActiveDyadRanker extends ARandomlyInitializingDyadRanker
A prototypical active dyad ranker based on the idea of uncertainty sampling. First a constant number of random queries is sampled at the beginning. Then the sampling strategy randomly selects a problem instance in each query step. Afterwards it selects those two alternatives for pairwise comparison, for which the difference of the skill values is minimal, as these are the pairs the Plackett Luce model is least certain about. This procedure is repeated a constant number of times to create a minibatch for updating the model.
-
-
Field Summary
-
Fields inherited from class ai.libs.jaicore.ml.ranking.dyad.learner.activelearning.ActiveDyadRanker
poolProvider, ranker
-
-
Constructor Summary
Constructors Constructor Description PrototypicalPoolBasedActiveDyadRanker(PLNetDyadRanker ranker, IDyadRankingPoolProvider poolProvider, int maxBatchSize, int lengthOfTopRankingToConsider, double ratioOfOldInstancesForMinibatch, int numberRandomQueriesAtStart, int seed)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidactivelyTrainWithOneInstance()intgetLengthOfTopRankingToConsider()doublegetRatioOfOldInstancesForMinibatch()voidsetLengthOfTopRankingToConsider(int lengthOfTopRankingToConsider)voidsetRatioOfOldInstancesForMinibatch(double ratioOfOldInstancesForMinibatch)-
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
-
-
-
-
Constructor Detail
-
PrototypicalPoolBasedActiveDyadRanker
public PrototypicalPoolBasedActiveDyadRanker(PLNetDyadRanker ranker, IDyadRankingPoolProvider poolProvider, int maxBatchSize, int lengthOfTopRankingToConsider, double ratioOfOldInstancesForMinibatch, int numberRandomQueriesAtStart, int seed)
-
-
Method Detail
-
activelyTrainWithOneInstance
public void activelyTrainWithOneInstance() throws org.api4.java.ai.ml.core.exception.TrainingException, java.lang.InterruptedException- Specified by:
activelyTrainWithOneInstancein classARandomlyInitializingDyadRanker- Throws:
org.api4.java.ai.ml.core.exception.TrainingExceptionjava.lang.InterruptedException
-
getRatioOfOldInstancesForMinibatch
public double getRatioOfOldInstancesForMinibatch()
-
setRatioOfOldInstancesForMinibatch
public void setRatioOfOldInstancesForMinibatch(double ratioOfOldInstancesForMinibatch)
-
getLengthOfTopRankingToConsider
public int getLengthOfTopRankingToConsider()
-
setLengthOfTopRankingToConsider
public void setLengthOfTopRankingToConsider(int lengthOfTopRankingToConsider)
-
-